summaryrefslogtreecommitdiffstats
path: root/Godeps
diff options
context:
space:
mode:
author=Corey Hulen <corey@hulen.com>2015-11-23 15:53:48 -0800
committer=Corey Hulen <corey@hulen.com>2015-11-23 15:53:48 -0800
commit4f4cd5e63573da4d6edcc7d4213afaca67c19f88 (patch)
treecefbc7af53629d97644ca2f6b2369e9d879f0101 /Godeps
parentf8a3c9a14edca6df0647d89cf225f2470cbe025c (diff)
downloadchat-4f4cd5e63573da4d6edcc7d4213afaca67c19f88.tar.gz
chat-4f4cd5e63573da4d6edcc7d4213afaca67c19f88.tar.bz2
chat-4f4cd5e63573da4d6edcc7d4213afaca67c19f88.zip
upgrading libs
Diffstat (limited to 'Godeps')
-rw-r--r--Godeps/Godeps.json91
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/00changelog.ibin57 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/branch1
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/cache/branch2-served2
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/cache/rbc-names-v11
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/cache/rbc-revs-v1bin1032 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/dirstatebin1504 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/hgrc14
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/requires4
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/00changelog.ibin38699 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/00manifest.ibin34583 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_a_u_t_h_o_r_s.ibin717 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_c_o_n_t_r_i_b_u_t_o_r_s.ibin1275 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_l_i_c_e_n_s_e.ibin700 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_makefile.ibin659 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_r_e_a_d_m_e.ibin690 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/cmd/print-glyph-points/main.c.ibin2250 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/freetype/main.go.ibin4678 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/gamma/main.go.ibin3404 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/raster/main.go.ibin3872 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/round/main.go.ibin3414 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/truetype/main.go.ibin1990 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/_makefile.ibin754 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/freetype.go.ibin13159 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/freetype__test.go.ibin888 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/_makefile.ibin1039 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/geom.go.ibin9573 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/paint.go.ibin8201 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/raster.go.ibin10019 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/stroke.go.ibin5124 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/_makefile.ibin764 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/glyph.go.ibin18054 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/hint.go.ibin28460 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/hint__test.go.ibin5988 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/opcodes.go.ibin8306 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/truetype.go.ibin14375 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/truetype__test.go.ibin12970 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/lib/codereview/codereview.cfg.ibin216 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/licenses/ftl.txt.ibin2927 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/licenses/gpl.txt.ibin6900 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/_c_o_p_y_i_n_g.ibin1125 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/_r_e_a_d_m_e.ibin779 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luximr.ttf.ibin33514 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luximr.ttx.ibin74067 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxirr.ttf.ibin42509 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxirr.ttx.ibin90843 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr-12pt-sans-hinting.txt.ibin20786 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr-12pt-with-hinting.txt.ibin19002 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr.ttf.ibin32867 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr.ttx.ibin71714 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/_c_o_p_y_i_n_g.ibin1192 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/_r_e_a_d_m_e.ibin691 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luximr.ttf.ibin33592 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luximr.ttx.ibin74271 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxirr.ttf.ibin42583 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxirr.ttx.ibin91046 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr-12pt-sans-hinting.txt.ibin44295 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr-12pt-with-hinting.txt.ibin40027 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr.ttf.ibin32947 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr.ttx.ibin71907 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/make-other-hinting-txts.sh.ibin942 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/~2ehgignore.ibin510 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/~2ehgtags.ibin114 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/fncache52
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/phaseroots0
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/undobin1683 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/undo.backupfilesbin29 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/undo.phaseroots0
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.bookmarks0
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.branch1
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.desc3
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.dirstate0
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hgignore35
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/.hgtags1
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/AUTHORS17
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/CONTRIBUTORS35
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/LICENSE12
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/README22
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/cmd/print-glyph-points/main.c87
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/example/freetype/main.go143
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/example/gamma/main.go79
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/example/raster/main.go178
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/example/round/main.go96
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/example/truetype/main.go73
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/freetype.go349
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/freetype_test.go59
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/geom.go280
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/paint.go292
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/raster.go579
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/stroke.go466
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/glyph.go530
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/hint.go1764
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/hint_test.go673
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/opcodes.go289
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/truetype.go554
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/truetype_test.go366
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/lib/codereview/codereview.cfg1
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/licenses/ftl.txt169
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/licenses/gpl.txt340
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/COPYING42
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/README13
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luximr.ttfbin71784 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luximr.ttx24616
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxirr.ttfbin88732 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxirr.ttx30264
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr-12pt-sans-hinting.txt392
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr-12pt-with-hinting.txt392
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr.ttfbin67548 -> 0 bytes
-rw-r--r--Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr.ttx22503
-rwxr-xr-xGodeps/_workspace/src/code.google.com/p/freetype-go/testdata/make-other-hinting-txts.sh34
-rw-r--r--Godeps/_workspace/src/code.google.com/p/log4go/examples/ConsoleLogWriter_Manual.go2
-rw-r--r--Godeps/_workspace/src/code.google.com/p/log4go/examples/FileLogWriter_Manual.go2
-rw-r--r--Godeps/_workspace/src/code.google.com/p/log4go/examples/SocketLogWriter_Manual.go2
-rw-r--r--Godeps/_workspace/src/code.google.com/p/log4go/examples/XMLConfigurationExample.go2
-rw-r--r--Godeps/_workspace/src/github.com/anachronistic/apns/client_mock.go2
-rw-r--r--Godeps/_workspace/src/github.com/anachronistic/apns/client_mock_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/README.md11
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/helper_test.go34
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/helpers_test.go123
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/interfaces.go7
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/listener.go49
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/server.go277
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/server_test.go273
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/static.go35
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/test_helpers/certs.go29
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/test_helpers/conn.go13
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/test_helpers/listener.go34
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/test_helpers/temp_file.go27
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/test_helpers/wait_group.go33
-rw-r--r--Godeps/_workspace/src/github.com/braintree/manners/transition_test.go54
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/bypass.go151
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/bypasssafe.go37
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/common.go341
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/common_test.go298
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/config.go297
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/doc.go202
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dump.go509
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dump_test.go1042
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dumpcgo_test.go98
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dumpnocgo_test.go26
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/example_test.go226
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/format.go419
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/format_test.go1558
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/internal_test.go87
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/internalunsafe_test.go101
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/spew.go148
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/spew_test.go309
-rw-r--r--Godeps/_workspace/src/github.com/davecgh/go-spew/spew/testdata/dumpcgo.go82
-rw-r--r--Godeps/_workspace/src/github.com/disintegration/imaging/README.md38
-rw-r--r--Godeps/_workspace/src/github.com/disintegration/imaging/adjust_test.go504
-rw-r--r--Godeps/_workspace/src/github.com/disintegration/imaging/effects_test.go128
-rw-r--r--Godeps/_workspace/src/github.com/disintegration/imaging/helpers.go24
-rw-r--r--Godeps/_workspace/src/github.com/disintegration/imaging/helpers_test.go361
-rw-r--r--Godeps/_workspace/src/github.com/disintegration/imaging/resize.go43
-rw-r--r--Godeps/_workspace/src/github.com/disintegration/imaging/resize_test.go455
-rw-r--r--Godeps/_workspace/src/github.com/disintegration/imaging/tools_test.go605
-rw-r--r--Godeps/_workspace/src/github.com/disintegration/imaging/transform_test.go261
-rw-r--r--Godeps/_workspace/src/github.com/disintegration/imaging/utils_test.go61
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/internal/redistest/testdb.go5
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/redis/conn.go182
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/redis/conn_test.go163
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/redis/pool.go14
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/redis/pool_test.go96
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/redis/pubsub_test.go22
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/redis/reply.go37
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/redis/reply_test.go29
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/redis/scan.go92
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/redis/scan_test.go64
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/redis/script_test.go5
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/redis/test_test.go157
-rw-r--r--Godeps/_workspace/src/github.com/garyburd/redigo/redis/zpop_example_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/.travis.yml35
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/Makefile6
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/README.md119
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/column.go83
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/db.go619
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/dialect.go641
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_mysql.go171
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_oracle.go146
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_postgres.go147
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_sqlite.go119
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_sqlserver.go152
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/errors.go14
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/gorp.go1678
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/gorp_test.go243
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/hooks.go49
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/index.go56
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/lockerror.go63
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/logging.go44
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/nulltypes.go58
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/select.go351
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/table.go247
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/table_bindings.go317
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/test_all.sh28
-rw-r--r--Godeps/_workspace/src/github.com/go-gorp/gorp/transaction.go193
-rw-r--r--Godeps/_workspace/src/github.com/go-sql-driver/mysql/AUTHORS4
-rw-r--r--Godeps/_workspace/src/github.com/go-sql-driver/mysql/README.md14
-rw-r--r--Godeps/_workspace/src/github.com/go-sql-driver/mysql/connection.go33
-rw-r--r--Godeps/_workspace/src/github.com/go-sql-driver/mysql/driver.go9
-rw-r--r--Godeps/_workspace/src/github.com/go-sql-driver/mysql/driver_test.go24
-rw-r--r--Godeps/_workspace/src/github.com/go-sql-driver/mysql/errors.go20
-rw-r--r--Godeps/_workspace/src/github.com/go-sql-driver/mysql/infile.go32
-rw-r--r--Godeps/_workspace/src/github.com/go-sql-driver/mysql/packets.go56
-rw-r--r--Godeps/_workspace/src/github.com/go-sql-driver/mysql/rows.go6
-rw-r--r--Godeps/_workspace/src/github.com/go-sql-driver/mysql/statement.go7
-rw-r--r--Godeps/_workspace/src/github.com/go-sql-driver/mysql/utils.go14
-rw-r--r--Godeps/_workspace/src/github.com/go-sql-driver/mysql/utils_test.go26
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/aws/attempt_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/aws/aws.go41
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/aws/aws_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/aws/client_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/aws/regions.go11
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/aws/sign_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/s3/export_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/s3/multi.go32
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/s3/multi_test.go6
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/s3/s3.go8
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/s3/s3_test.go4
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/s3/s3i_test.go4
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/s3/s3t_test.go6
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/s3/s3test/server.go6
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/s3/sign.go45
-rw-r--r--Godeps/_workspace/src/github.com/goamz/goamz/s3/sign_test.go4
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/AUTHORS1
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/CONTRIBUTORS1
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/example/drawer/main.go6
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/example/freetype/main.go4
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/example/gamma/main.go4
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/example/raster/main.go4
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/example/round/main.go4
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/example/truetype/main.go6
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/freetype.go8
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/raster/geom.go2
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/raster/raster.go2
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/raster/stroke.go2
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/truetype/face.go6
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/truetype/face_test.go4
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/truetype/glyph.go4
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/truetype/hint.go2
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/truetype/hint_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/truetype/truetype.go167
-rw-r--r--Godeps/_workspace/src/github.com/golang/freetype/truetype/truetype_test.go27
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/context/.travis.yml5
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/mux/.travis.yml15
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/mux/README.md232
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/mux/doc.go19
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/mux/mux.go124
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/mux/mux_test.go324
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/mux/old_test.go6
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/mux/regexp.go79
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/mux/route.go46
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/README.md2
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/client.go246
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/client_server_test.go93
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/client_test.go1
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/conn.go48
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/conn_test.go44
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/doc.go13
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/examples/autobahn/server.go2
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/examples/chat/README.md1
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/examples/chat/conn.go8
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/examples/command/README.md19
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/examples/command/home.html96
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/examples/command/main.go188
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/examples/echo/README.md17
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/examples/echo/client.go55
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/examples/echo/server.go132
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/examples/filewatch/main.go2
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/json.go4
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/json_test.go4
-rw-r--r--Godeps/_workspace/src/github.com/gorilla/websocket/server.go3
-rw-r--r--Godeps/_workspace/src/github.com/lib/pq/.travis.yml1
-rw-r--r--Godeps/_workspace/src/github.com/lib/pq/bench_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/lib/pq/buf.go3
-rw-r--r--Godeps/_workspace/src/github.com/lib/pq/conn.go14
-rw-r--r--Godeps/_workspace/src/github.com/lib/pq/copy.go9
-rw-r--r--Godeps/_workspace/src/github.com/lib/pq/encode.go2
-rw-r--r--Godeps/_workspace/src/github.com/lib/pq/encode_test.go12
-rw-r--r--Godeps/_workspace/src/github.com/lib/pq/hstore/hstore_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/lib/pq/oid/gen.go2
-rw-r--r--Godeps/_workspace/src/github.com/mssola/user_agent/bot.go5
-rw-r--r--Godeps/_workspace/src/github.com/mssola/user_agent/browser.go5
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/CONTRIBUTORS1
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/LICENSE (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/LICENSE)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/dce.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/dce.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/doc.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/doc.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/hash.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/hash.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/json.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/json.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/json_test.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/json_test.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/node.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/node.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/seq_test.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/seq_test.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/sql.go40
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/sql_test.go53
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/time.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/time.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/util.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/util.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/uuid.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/uuid.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/uuid_test.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/uuid_test.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/version1.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/version1.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pborman/uuid/version4.go (renamed from Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/version4.go)0
-rw-r--r--Godeps/_workspace/src/github.com/pmezard/go-difflib/difflib/difflib.go758
-rw-r--r--Godeps/_workspace/src/github.com/pmezard/go-difflib/difflib/difflib_test.go352
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/corrupt/huge_tag_exif.jpgbin0 -> 65536 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/corrupt/infinite_loop_exif.jpgbin0 -> 3738 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/corrupt/max_uint32_exif.jpgbin0 -> 65536 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/example_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/exif.go4
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/exif_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/regen_regress.go4
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/sample1.jpgbin0 -> 80603 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2004-01-11-22-45-15-sep-2004-01-11-22-45-15a.jpgbin0 -> 4586 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-08-03-16-29-38-sep-2006-08-03-16-29-38a.jpgbin0 -> 9735 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-11-11-19-17-56-sep-2006-11-11-19-17-56a.jpgbin0 -> 35406 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-12-10-23-58-20-sep-2006-12-10-23-58-20a.jpgbin0 -> 8711 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-12-17-07-09-14-sep-2006-12-17-07-09-14a.jpgbin0 -> 38252 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-12-21-15-55-26-sep-2006-12-21-15-55-26a.jpgbin0 -> 16072 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-01-01-12-00-00-sep-2007-01-01-12-00-00a.jpgbin0 -> 17301 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-01-17-21-49-44-sep-2007-01-17-21-49-44a.jpgbin0 -> 7999 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-02-02-18-13-29-sep-2007-02-02-18-13-29a.jpgbin0 -> 39915 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-02-17-02-21-sep-2007-05-02-17-02-21a.jpgbin0 -> 11783 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-12-08-19-07-sep-2007-05-12-08-19-07a.jpgbin0 -> 35771 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-26-04-49-45-sep-2007-05-26-04-49-45a.jpgbin0 -> 35406 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-30-14-28-01-sep-2007-05-30-14-28-01a.jpgbin0 -> 35406 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-06-06-16-15-25-sep-2007-06-06-16-15-25a.jpgbin0 -> 35406 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-06-26-10-13-04-sep-2007-06-26-10-13-04a.jpgbin0 -> 7615 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-07-13-17-02-30-sep-2007-07-13-17-02-30a.jpgbin0 -> 21719 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-08-15-14-42-46-sep-2007-08-15-14-42-46a.jpgbin0 -> 11549 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-08-24-02-40-42-sep-2007-08-24-02-40-42a.jpgbin0 -> 7687 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-11-07-11-40-44-sep-2007-11-07-11-40-44a.jpgbin0 -> 11223 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-06-02-10-03-57-sep-2008-06-02-10-03-57a.jpgbin0 -> 9745 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-06-06-13-29-29-sep-2008-06-06-13-29-29a.jpgbin0 -> 11783 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-06-17-01-21-30-sep-2008-06-17-01-21-30a.jpgbin0 -> 14564 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-09-02-17-43-48-sep-2008-09-02-17-43-48a.jpgbin0 -> 5406 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-03-26-09-23-20-sep-2009-03-26-09-23-20a.jpgbin0 -> 10759 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-04-11-03-01-38-sep-2009-04-11-03-01-38a.jpgbin0 -> 43374 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-04-23-07-21-35-sep-2009-04-23-07-21-35a.jpgbin0 -> 37208 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-06-11-19-23-18-sep-2009-06-11-19-23-18a.jpgbin0 -> 7791 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-06-20-07-59-05-sep-2009-06-20-07-59-05a.jpgbin0 -> 13618 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-08-05-08-11-31-sep-2009-08-05-08-11-31a.jpgbin0 -> 9919 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2010-06-08-04-44-24-sep-2010-06-08-04-44-24a.jpgbin0 -> 10939 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2010-06-20-20-07-39-sep-2010-06-20-20-07-39a.jpgbin0 -> 8551 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2010-09-02-08-43-02-sep-2010-09-02-08-43-02a.jpgbin0 -> 19534 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-01-24-22-06-02-sep-2011-01-24-22-06-02a.jpgbin0 -> 29003 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-03-07-09-28-03-sep-2011-03-07-09-28-03a.jpgbin0 -> 10529 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-05-07-13-02-49-sep-2011-05-07-13-02-49a.jpgbin0 -> 23743 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-08-07-19-22-57-sep-2011-08-07-19-22-57a.jpgbin0 -> 9936 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-10-28-17-50-18-sep-2011-10-28-17-50-18a.jpgbin0 -> 7487 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-10-28-18-25-43-sep-2011-10-28-18-25-43.jpgbin0 -> 7433 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-11-18-15-38-34-sep-Photo11181538.jpgbin0 -> 12885 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-06-02-10-12-28-sep-2012-06-02-10-12-28.jpgbin0 -> 32165 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-09-21-22-07-34-sep-2012-09-21-22-07-34.jpgbin0 -> 10247 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-12-19-21-38-40-sep-temple_square1.jpgbin0 -> 39182 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-12-21-11-15-19-sep-IMG_0001.jpgbin0 -> 25269 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2013-02-05-23-12-09-sep-DSCI0001.jpgbin0 -> 10854 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2099-08-12-19-59-29-sep-2099-08-12-19-59-29a.jpgbin0 -> 37491 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2216-11-15-11-46-51-sep-2216-11-15-11-46-51a.jpgbin0 -> 23011 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/FailedHash-NoDate-sep-remembory.jpgbin0 -> 935 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f1-exif.jpgbin0 -> 992 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f2-exif.jpgbin0 -> 994 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f3-exif.jpgbin0 -> 992 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f4-exif.jpgbin0 -> 994 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f5-exif.jpgbin0 -> 980 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f6-exif.jpgbin0 -> 982 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f7-exif.jpgbin0 -> 980 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f8-exif.jpgbin0 -> 982 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/geodegrees_as_string.jpgbin0 -> 22420 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/has-lens-info.jpgbin0 -> 22493 bytes
-rw-r--r--Godeps/_workspace/src/github.com/rwcarlsen/goexif/tiff/sample1.tifbin0 -> 18382 bytes
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/objx/accessors_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/objx/conversions_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/objx/fixture_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/objx/map_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/objx/mutations_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/objx/security_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/objx/simple_example_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/objx/tests_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/objx/type_specific_codegen_test.go2
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/objx/value.go43
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/objx/value_test.go65
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions.go226
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions_test.go302
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/testify/assert/doc.go111
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/testify/assert/forward_assertions.go27
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/testify/assert/forward_assertions_test.go100
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/testify/assert/http_assertions.go48
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/testify/mock/mock.go280
-rw-r--r--Godeps/_workspace/src/github.com/stretchr/testify/mock/mock_test.go414
-rw-r--r--Godeps/_workspace/src/golang.org/x/crypto/bcrypt/base64.go (renamed from Godeps/_workspace/src/code.google.com/p/go.crypto/bcrypt/base64.go)0
-rw-r--r--Godeps/_workspace/src/golang.org/x/crypto/bcrypt/bcrypt.go (renamed from Godeps/_workspace/src/code.google.com/p/go.crypto/bcrypt/bcrypt.go)2
-rw-r--r--Godeps/_workspace/src/golang.org/x/crypto/bcrypt/bcrypt_test.go (renamed from Godeps/_workspace/src/code.google.com/p/go.crypto/bcrypt/bcrypt_test.go)0
-rw-r--r--Godeps/_workspace/src/golang.org/x/image/font/basicfont/basicfont.go2
-rw-r--r--Godeps/_workspace/src/golang.org/x/image/font/basicfont/gen.go6
-rw-r--r--Godeps/_workspace/src/golang.org/x/image/font/font.go2
-rw-r--r--Godeps/_workspace/src/golang.org/x/image/font/plan9font/example_test.go6
-rw-r--r--Godeps/_workspace/src/golang.org/x/image/font/plan9font/plan9font.go4
-rw-r--r--Godeps/_workspace/src/golang.org/x/image/tiff/buffer_test.go36
-rw-r--r--Godeps/_workspace/src/golang.org/x/image/tiff/reader.go2
-rw-r--r--Godeps/_workspace/src/golang.org/x/image/tiff/reader_test.go377
-rw-r--r--Godeps/_workspace/src/golang.org/x/image/tiff/writer_test.go95
-rw-r--r--Godeps/_workspace/src/gopkg.in/fsnotify.v1/.travis.yml9
-rw-r--r--Godeps/_workspace/src/gopkg.in/fsnotify.v1/AUTHORS7
-rw-r--r--Godeps/_workspace/src/gopkg.in/fsnotify.v1/CHANGELOG.md11
-rw-r--r--Godeps/_workspace/src/gopkg.in/fsnotify.v1/NotUsed.xcworkspace0
-rw-r--r--Godeps/_workspace/src/gopkg.in/fsnotify.v1/README.md13
-rw-r--r--Godeps/_workspace/src/gopkg.in/fsnotify.v1/circle.yml26
-rw-r--r--Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify.go26
-rw-r--r--Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify_poller.go2
-rw-r--r--Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify_test.go57
-rw-r--r--Godeps/_workspace/src/gopkg.in/fsnotify.v1/integration_test.go48
-rw-r--r--Godeps/_workspace/src/gopkg.in/fsnotify.v1/kqueue.go48
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/.gitignore (renamed from Godeps/_workspace/src/github.com/throttled/throttled/.gitignore)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/.travis.yml (renamed from Godeps/_workspace/src/github.com/throttled/throttled/.travis.yml)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/LICENSE (renamed from Godeps/_workspace/src/github.com/throttled/throttled/LICENSE)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/README.md (renamed from Godeps/_workspace/src/github.com/throttled/throttled/README.md)10
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/common_test.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/common_test.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/delayer.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/delayer.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/delayer_test.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/delayer_test.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/doc.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/doc.go)4
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/README.md (renamed from Godeps/_workspace/src/github.com/throttled/throttled/examples/README.md)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/custom/main.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/examples/custom/main.go)2
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/interval-many/main.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/examples/interval-many/main.go)2
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/interval-vary/main.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/examples/interval-vary/main.go)2
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/interval-vary/siege-urls (renamed from Godeps/_workspace/src/github.com/throttled/throttled/examples/interval-vary/siege-urls)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/interval/main.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/examples/interval/main.go)2
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/memstats/main.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/examples/memstats/main.go)2
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/memstats/test-file (renamed from Godeps/_workspace/src/github.com/throttled/throttled/examples/memstats/test-file)bin65536 -> 65536 bytes
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/rate-limit/main.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/examples/rate-limit/main.go)6
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/interval.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/interval.go)2
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/interval_test.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/interval_test.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/memstats.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/memstats.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/memstats_test.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/memstats_test.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/misc/pre-commit (renamed from Godeps/_workspace/src/github.com/throttled/throttled/misc/pre-commit)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/rate.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/rate.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/rate_test.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/rate_test.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/store.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/doc.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/store/doc.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/mem.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/store/mem.go)4
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/mem_test.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/store/mem_test.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/redis.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/store/redis.go)4
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/redis_test.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/store/redis_test.go)2
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/throttler.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/throttler.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/varyby.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/varyby.go)0
-rw-r--r--Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/varyby_test.go (renamed from Godeps/_workspace/src/github.com/throttled/throttled/varyby_test.go)0
442 files changed, 18483 insertions, 89534 deletions
diff --git a/Godeps/Godeps.json b/Godeps/Godeps.json
index 7c80558c4..0ec79e0a6 100644
--- a/Godeps/Godeps.json
+++ b/Godeps/Godeps.json
@@ -1,18 +1,8 @@
{
"ImportPath": "github.com/mattermost/platform",
- "GoVersion": "go1.4.2",
+ "GoVersion": "go1.5.1",
"Deps": [
{
- "ImportPath": "code.google.com/p/go-uuid/uuid",
- "Comment": "null-15",
- "Rev": "35bc42037350f0078e3c974c6ea690f1926603ab"
- },
- {
- "ImportPath": "code.google.com/p/go.crypto/bcrypt",
- "Comment": "null-236",
- "Rev": "69e2a90ed92d03812364aeb947b7068dc42e561e"
- },
- {
"ImportPath": "code.google.com/p/log4go",
"Comment": "go.weekly.2012-02-22-1",
"Rev": "c3294304d93f48a37d3bed1d382882a9c2989f99"
@@ -23,43 +13,47 @@
},
{
"ImportPath": "github.com/braintree/manners",
- "Comment": "0.3.1-2-g5280e25",
- "Rev": "5280e250f2795914acbeb2bf3b55dd5a2d1fba52"
+ "Comment": "0.4.0-9-g3fdfada",
+ "Rev": "3fdfadabc96863ceec055bd73ab1e80324e72706"
+ },
+ {
+ "ImportPath": "github.com/davecgh/go-spew/spew",
+ "Rev": "5215b55f46b2b919f50a1df0eaa5886afe4e3b3d"
},
{
"ImportPath": "github.com/disintegration/imaging",
- "Rev": "493653de80c32beeae336f3a3a3a125e7603459b"
+ "Rev": "546cb3c5137b3f1232e123a26aa033aade6b3066"
},
{
"ImportPath": "github.com/garyburd/redigo/internal",
- "Rev": "a47585eaae68b1d14b02940d2af1b9194f3caa9c"
+ "Rev": "6ece6e0a09f28cc399b21550cbf37ab39ba63cce"
},
{
"ImportPath": "github.com/garyburd/redigo/redis",
- "Rev": "a47585eaae68b1d14b02940d2af1b9194f3caa9c"
+ "Rev": "6ece6e0a09f28cc399b21550cbf37ab39ba63cce"
},
{
"ImportPath": "github.com/go-gorp/gorp",
- "Comment": "v1.7-65-g3c15f67",
- "Rev": "3c15f6739b94dc357e2797a7297a2853ec79f4fa"
+ "Comment": "v1.7-146-gc391a3d",
+ "Rev": "c391a3da75cf2003f4bf4763d0b5755c4500aef1"
},
{
"ImportPath": "github.com/go-sql-driver/mysql",
- "Comment": "v1.2-97-g0cc29e9",
- "Rev": "0cc29e9fe8e25c2c58cf47bcab566e029bbaa88b"
+ "Comment": "v1.2-125-gd512f20",
+ "Rev": "d512f204a577a4ab037a1816604c48c9c13210be"
},
{
"ImportPath": "github.com/goamz/goamz/aws",
- "Rev": "ad637a587dd8314770a1084481dd7b5d4fa1232f"
+ "Rev": "be371d06631a6ea076cccefc6654fa5c29be074d"
},
{
"ImportPath": "github.com/goamz/goamz/s3",
- "Rev": "ad637a587dd8314770a1084481dd7b5d4fa1232f"
+ "Rev": "be371d06631a6ea076cccefc6654fa5c29be074d"
},
{
"ImportPath": "github.com/golang/freetype",
- "Comment": "release-116-g41fa49a",
- "Rev": "41fa49aa5b23cc7c4082c9aaaf2da41e195602d9"
+ "Comment": "release-120-gf29eb11",
+ "Rev": "f29eb116deb328d02ee5c573f02d442ca67d5532"
},
{
"ImportPath": "github.com/golang/groupcache/lru",
@@ -67,25 +61,33 @@
},
{
"ImportPath": "github.com/gorilla/context",
- "Rev": "215affda49addc4c8ef7e2534915df2c8c35c6cd"
+ "Rev": "1c83b3eabd45b6d76072b66b746c20815fb2872d"
},
{
"ImportPath": "github.com/gorilla/mux",
- "Rev": "94903de8c98a68d8b4483c529b26a5d146e386a2"
+ "Rev": "9c068cf16d982f8bd444b8c352acbeec34c4fe5b"
},
{
"ImportPath": "github.com/gorilla/websocket",
- "Rev": "6fd0f867fef40c540fa05c59f86396de10a632a6"
+ "Rev": "361d4c0ffd78338ebe0a9e6320cdbe115d7dc026"
},
{
"ImportPath": "github.com/lib/pq",
- "Comment": "go1.0-cutoff-56-gdc50b6a",
- "Rev": "dc50b6ad2d3ee836442cf3389009c7cd1e64bb43"
+ "Comment": "go1.0-cutoff-61-g83c4f41",
+ "Rev": "83c4f410d0aed80a0f44bac6a576a7f2435791f3"
},
{
"ImportPath": "github.com/mssola/user_agent",
- "Comment": "v0.4.1-4-ga163d6a",
- "Rev": "a163d6a569f1cd264d2f8b2bf3c5d04ace5995eb"
+ "Comment": "v0.4.1-5-g783ec61",
+ "Rev": "783ec61292aee3fc2f442ce740aa491e4849b794"
+ },
+ {
+ "ImportPath": "github.com/pborman/uuid",
+ "Rev": "cccd189d45f7ac3368a0d127efb7f4d08ae0b655"
+ },
+ {
+ "ImportPath": "github.com/pmezard/go-difflib/difflib",
+ "Rev": "d8ed2627bdf02c080bf22230dbb337003b7aba2d"
},
{
"ImportPath": "github.com/rwcarlsen/goexif/exif",
@@ -97,27 +99,29 @@
},
{
"ImportPath": "github.com/stretchr/objx",
- "Rev": "cbeaeb16a013161a98496fad62933b1d21786672"
+ "Rev": "1a9d0bb9f541897e62256577b352fdbc1fb4fd94"
},
{
"ImportPath": "github.com/stretchr/testify/assert",
- "Rev": "dab07ac62d4905d3e48d17dc549c684ac3b7c15a"
+ "Comment": "v1.0-83-gd797d25",
+ "Rev": "d797d25e0fa6d53be3b1a216d24e868d6a1912ef"
},
{
"ImportPath": "github.com/stretchr/testify/mock",
- "Rev": "dab07ac62d4905d3e48d17dc549c684ac3b7c15a"
- },
- {
- "ImportPath": "github.com/throttled/throttled",
- "Rev": "fe4c91d601f05354c8a7feba917ab9d3b634f68d"
+ "Comment": "v1.0-83-gd797d25",
+ "Rev": "d797d25e0fa6d53be3b1a216d24e868d6a1912ef"
},
{
"ImportPath": "github.com/vaughan0/go-ini",
"Rev": "a98ad7ee00ec53921f08832bc06ecf7fd600e6a1"
},
{
+ "ImportPath": "golang.org/x/crypto/bcrypt",
+ "Rev": "beef0f4390813b96e8e68fd78570396d0f4751fc"
+ },
+ {
"ImportPath": "golang.org/x/crypto/blowfish",
- "Rev": "74f810a0152f4c50a16195f6b9ff44afc35594e8"
+ "Rev": "beef0f4390813b96e8e68fd78570396d0f4751fc"
},
{
"ImportPath": "golang.org/x/image/bmp",
@@ -137,8 +141,13 @@
},
{
"ImportPath": "gopkg.in/fsnotify.v1",
- "Comment": "v1.2.0",
- "Rev": "96c060f6a6b7e0d6f75fddd10efeaca3e5d1bcb0"
+ "Comment": "v1.2.5",
+ "Rev": "2cdd39bd6129c6a49c74fb07fb9d77ba1271c572"
+ },
+ {
+ "ImportPath": "gopkg.in/throttled/throttled.v1",
+ "Comment": "v1.0.0",
+ "Rev": "74e328a1af88a9b54f9eca1397d74ad98572a6df"
}
]
}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/00changelog.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/00changelog.i
deleted file mode 100644
index d3a831105..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/00changelog.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/branch b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/branch
deleted file mode 100644
index 4ad96d515..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/branch
+++ /dev/null
@@ -1 +0,0 @@
-default
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/cache/branch2-served b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/cache/branch2-served
deleted file mode 100644
index 6174932c9..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/cache/branch2-served
+++ /dev/null
@@ -1,2 +0,0 @@
-46c3056cafbb4da11c4087a892c7d2bfa4224a8f 128
-46c3056cafbb4da11c4087a892c7d2bfa4224a8f o default
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/cache/rbc-names-v1 b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/cache/rbc-names-v1
deleted file mode 100644
index 331d858ce..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/cache/rbc-names-v1
+++ /dev/null
@@ -1 +0,0 @@
-default \ No newline at end of file
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/cache/rbc-revs-v1 b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/cache/rbc-revs-v1
deleted file mode 100644
index 64a5a8919..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/cache/rbc-revs-v1
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/dirstate b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/dirstate
deleted file mode 100644
index 287a04c00..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/dirstate
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/hgrc b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/hgrc
deleted file mode 100644
index 80ecd0d07..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/hgrc
+++ /dev/null
@@ -1,14 +0,0 @@
-# example repository config (see "hg help config" for more info)
-[paths]
-default = https://code.google.com/p/freetype-go/
-
-# path aliases to other clones of this repo in URLs or filesystem paths
-# (see "hg help config.paths" for more info)
-#
-# default-push = ssh://jdoe@example.net/hg/jdoes-fork
-# my-fork = ssh://jdoe@example.net/hg/jdoes-fork
-# my-clone = /home/jdoe/jdoes-clone
-
-[ui]
-# name and email (local to this repository, optional), e.g.
-# username = Jane Doe <jdoe@example.com>
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/requires b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/requires
deleted file mode 100644
index f634f664b..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/requires
+++ /dev/null
@@ -1,4 +0,0 @@
-dotencode
-fncache
-revlogv1
-store
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/00changelog.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/00changelog.i
deleted file mode 100644
index 34de69c66..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/00changelog.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/00manifest.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/00manifest.i
deleted file mode 100644
index 15c762eb9..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/00manifest.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_a_u_t_h_o_r_s.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_a_u_t_h_o_r_s.i
deleted file mode 100644
index d858d830d..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_a_u_t_h_o_r_s.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_c_o_n_t_r_i_b_u_t_o_r_s.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_c_o_n_t_r_i_b_u_t_o_r_s.i
deleted file mode 100644
index 1f846fcef..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_c_o_n_t_r_i_b_u_t_o_r_s.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_l_i_c_e_n_s_e.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_l_i_c_e_n_s_e.i
deleted file mode 100644
index 05755354f..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_l_i_c_e_n_s_e.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_makefile.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_makefile.i
deleted file mode 100644
index e8e036fbd..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_makefile.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_r_e_a_d_m_e.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_r_e_a_d_m_e.i
deleted file mode 100644
index 4a603beb9..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/_r_e_a_d_m_e.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/cmd/print-glyph-points/main.c.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/cmd/print-glyph-points/main.c.i
deleted file mode 100644
index 13c63587e..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/cmd/print-glyph-points/main.c.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/freetype/main.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/freetype/main.go.i
deleted file mode 100644
index d2584c152..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/freetype/main.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/gamma/main.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/gamma/main.go.i
deleted file mode 100644
index eac5254a2..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/gamma/main.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/raster/main.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/raster/main.go.i
deleted file mode 100644
index 4d01e34c8..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/raster/main.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/round/main.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/round/main.go.i
deleted file mode 100644
index 299fdaa53..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/round/main.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/truetype/main.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/truetype/main.go.i
deleted file mode 100644
index 46e52a81a..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/example/truetype/main.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/_makefile.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/_makefile.i
deleted file mode 100644
index 70234dfce..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/_makefile.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/freetype.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/freetype.go.i
deleted file mode 100644
index 6fb8e7dc0..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/freetype.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/freetype__test.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/freetype__test.go.i
deleted file mode 100644
index dd8ab50a1..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/freetype__test.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/_makefile.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/_makefile.i
deleted file mode 100644
index 24004c15c..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/_makefile.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/geom.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/geom.go.i
deleted file mode 100644
index 4ca1d55a4..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/geom.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/paint.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/paint.go.i
deleted file mode 100644
index cf08d5b30..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/paint.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/raster.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/raster.go.i
deleted file mode 100644
index 8f53ce4a2..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/raster.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/stroke.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/stroke.go.i
deleted file mode 100644
index 68f043976..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/raster/stroke.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/_makefile.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/_makefile.i
deleted file mode 100644
index 69e150e47..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/_makefile.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/glyph.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/glyph.go.i
deleted file mode 100644
index ab82aa808..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/glyph.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/hint.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/hint.go.i
deleted file mode 100644
index 5a3604467..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/hint.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/hint__test.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/hint__test.go.i
deleted file mode 100644
index 641156043..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/hint__test.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/opcodes.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/opcodes.go.i
deleted file mode 100644
index 545ed292d..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/opcodes.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/truetype.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/truetype.go.i
deleted file mode 100644
index bc5767490..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/truetype.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/truetype__test.go.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/truetype__test.go.i
deleted file mode 100644
index 081d0e081..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/freetype/truetype/truetype__test.go.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/lib/codereview/codereview.cfg.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/lib/codereview/codereview.cfg.i
deleted file mode 100644
index b54d8298c..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/lib/codereview/codereview.cfg.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/licenses/ftl.txt.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/licenses/ftl.txt.i
deleted file mode 100644
index a7e008de0..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/licenses/ftl.txt.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/licenses/gpl.txt.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/licenses/gpl.txt.i
deleted file mode 100644
index b93cd7a36..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/licenses/gpl.txt.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/_c_o_p_y_i_n_g.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/_c_o_p_y_i_n_g.i
deleted file mode 100644
index d9b475a61..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/_c_o_p_y_i_n_g.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/_r_e_a_d_m_e.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/_r_e_a_d_m_e.i
deleted file mode 100644
index 21fc2a4c0..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/_r_e_a_d_m_e.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luximr.ttf.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luximr.ttf.i
deleted file mode 100644
index 5bc4dcd90..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luximr.ttf.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luximr.ttx.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luximr.ttx.i
deleted file mode 100644
index 65810f58c..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luximr.ttx.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxirr.ttf.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxirr.ttf.i
deleted file mode 100644
index df299bfa9..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxirr.ttf.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxirr.ttx.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxirr.ttx.i
deleted file mode 100644
index 2608a88fd..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxirr.ttx.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr-12pt-sans-hinting.txt.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr-12pt-sans-hinting.txt.i
deleted file mode 100644
index d5f1c5b5e..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr-12pt-sans-hinting.txt.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr-12pt-with-hinting.txt.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr-12pt-with-hinting.txt.i
deleted file mode 100644
index 36a010557..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr-12pt-with-hinting.txt.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr.ttf.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr.ttf.i
deleted file mode 100644
index 9ac471847..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr.ttf.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr.ttx.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr.ttx.i
deleted file mode 100644
index a8b16ae34..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/luxi-fonts/luxisr.ttx.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/_c_o_p_y_i_n_g.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/_c_o_p_y_i_n_g.i
deleted file mode 100644
index 00af38223..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/_c_o_p_y_i_n_g.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/_r_e_a_d_m_e.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/_r_e_a_d_m_e.i
deleted file mode 100644
index 5130dccb7..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/_r_e_a_d_m_e.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luximr.ttf.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luximr.ttf.i
deleted file mode 100644
index 00d6fdfd0..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luximr.ttf.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luximr.ttx.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luximr.ttx.i
deleted file mode 100644
index 72aa2de8e..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luximr.ttx.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxirr.ttf.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxirr.ttf.i
deleted file mode 100644
index f69ff25c8..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxirr.ttf.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxirr.ttx.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxirr.ttx.i
deleted file mode 100644
index 69c7d2055..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxirr.ttx.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr-12pt-sans-hinting.txt.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr-12pt-sans-hinting.txt.i
deleted file mode 100644
index 8233fd6bf..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr-12pt-sans-hinting.txt.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr-12pt-with-hinting.txt.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr-12pt-with-hinting.txt.i
deleted file mode 100644
index 882e45367..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr-12pt-with-hinting.txt.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr.ttf.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr.ttf.i
deleted file mode 100644
index cc452cabb..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr.ttf.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr.ttx.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr.ttx.i
deleted file mode 100644
index 0f78316c3..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/luxisr.ttx.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/make-other-hinting-txts.sh.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/make-other-hinting-txts.sh.i
deleted file mode 100644
index 617ff0123..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/testdata/make-other-hinting-txts.sh.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/~2ehgignore.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/~2ehgignore.i
deleted file mode 100644
index cf67e9d7a..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/~2ehgignore.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/~2ehgtags.i b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/~2ehgtags.i
deleted file mode 100644
index 51d867337..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/data/~2ehgtags.i
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/fncache b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/fncache
deleted file mode 100644
index d139235fa..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/fncache
+++ /dev/null
@@ -1,52 +0,0 @@
-data/testdata/luxisr.ttf.i
-data/testdata/luximr.ttx.i
-data/freetype/raster/geom.go.i
-data/AUTHORS.i
-data/CONTRIBUTORS.i
-data/freetype/truetype/Makefile.i
-data/testdata/luxisr-12pt-with-hinting.txt.i
-data/luxi-fonts/luxisr-12pt-sans-hinting.txt.i
-data/example/freetype/main.go.i
-data/luxi-fonts/luxirr.ttf.i
-data/testdata/COPYING.i
-data/example/gamma/main.go.i
-data/freetype/Makefile.i
-data/testdata/luxirr.ttx.i
-data/freetype/freetype_test.go.i
-data/example/truetype/main.go.i
-data/Makefile.i
-data/freetype/freetype.go.i
-data/luxi-fonts/luximr.ttx.i
-data/example/round/main.go.i
-data/freetype/raster/paint.go.i
-data/luxi-fonts/luximr.ttf.i
-data/luxi-fonts/luxisr.ttx.i
-data/example/raster/main.go.i
-data/lib/codereview/codereview.cfg.i
-data/testdata/luximr.ttf.i
-data/luxi-fonts/README.i
-data/testdata/luxisr.ttx.i
-data/luxi-fonts/luxisr-12pt-with-hinting.txt.i
-data/freetype/truetype/hint_test.go.i
-data/testdata/make-other-hinting-txts.sh.i
-data/luxi-fonts/COPYING.i
-data/licenses/ftl.txt.i
-data/freetype/truetype/opcodes.go.i
-data/.hgignore.i
-data/freetype/truetype/truetype.go.i
-data/testdata/luxirr.ttf.i
-data/freetype/truetype/truetype_test.go.i
-data/LICENSE.i
-data/freetype/raster/stroke.go.i
-data/luxi-fonts/luxirr.ttx.i
-data/licenses/gpl.txt.i
-data/freetype/raster/raster.go.i
-data/freetype/truetype/hint.go.i
-data/testdata/luxisr-12pt-sans-hinting.txt.i
-data/.hgtags.i
-data/README.i
-data/freetype/raster/Makefile.i
-data/testdata/README.i
-data/luxi-fonts/luxisr.ttf.i
-data/cmd/print-glyph-points/main.c.i
-data/freetype/truetype/glyph.go.i
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/phaseroots b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/phaseroots
deleted file mode 100644
index e69de29bb..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/phaseroots
+++ /dev/null
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/undo b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/undo
deleted file mode 100644
index 02a42df5e..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/undo
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/undo.backupfiles b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/undo.backupfiles
deleted file mode 100644
index ce173ce78..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/undo.backupfiles
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/undo.phaseroots b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/undo.phaseroots
deleted file mode 100644
index e69de29bb..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/store/undo.phaseroots
+++ /dev/null
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.bookmarks b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.bookmarks
deleted file mode 100644
index e69de29bb..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.bookmarks
+++ /dev/null
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.branch b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.branch
deleted file mode 100644
index 331d858ce..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.branch
+++ /dev/null
@@ -1 +0,0 @@
-default \ No newline at end of file
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.desc b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.desc
deleted file mode 100644
index be91031a1..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.desc
+++ /dev/null
@@ -1,3 +0,0 @@
-0
-pull
-https://code.google.com/p/freetype-go/
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.dirstate b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.dirstate
deleted file mode 100644
index e69de29bb..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hg/undo.dirstate
+++ /dev/null
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hgignore b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hgignore
deleted file mode 100644
index 111fafbcd..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hgignore
+++ /dev/null
@@ -1,35 +0,0 @@
-syntax:glob
-.DS_Store
-.git
-.gitignore
-*.[568ao]
-*.a[568o]
-*.so
-*.pyc
-._*
-.nfs.*
-[568a].out
-*~
-*.orig
-*.rej
-*.exe
-.*.swp
-core
-*.cgo*.go
-*.cgo*.c
-_cgo_*
-_obj
-_test
-_testmain.go
-build.out
-test.out
-goinstall.log
-last-change
-VERSION.cache
-out.png
-
-syntax:regexp
-^bin/
-^pkg/
-^src/cmd/(.*)/6?\1$
-^.*/core.[0-9]*$
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hgtags b/Godeps/_workspace/src/code.google.com/p/freetype-go/.hgtags
deleted file mode 100644
index 243c80deb..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/.hgtags
+++ /dev/null
@@ -1 +0,0 @@
-96d0c07904d187405d9f34a3654ce06b0238f31d release
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/AUTHORS b/Godeps/_workspace/src/code.google.com/p/freetype-go/AUTHORS
deleted file mode 100644
index 5d8b8a6b7..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/AUTHORS
+++ /dev/null
@@ -1,17 +0,0 @@
-# This is the official list of Freetype-Go authors for copyright purposes.
-# This file is distinct from the CONTRIBUTORS files.
-# See the latter for an explanation.
-#
-# Freetype-Go is derived from Freetype, which is written in C. The latter
-# is copyright 1996-2010 David Turner, Robert Wilhelm, and Werner Lemberg.
-
-# Names should be added to this file as
-# Name or Organization <email address>
-# The email address is not required for organizations.
-
-# Please keep the list sorted.
-
-Google Inc.
-Jeff R. Allen <jra@nella.org>
-Rémy Oudompheng <oudomphe@phare.normalesup.org>
-Roger Peppe <rogpeppe@gmail.com>
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/CONTRIBUTORS b/Godeps/_workspace/src/code.google.com/p/freetype-go/CONTRIBUTORS
deleted file mode 100644
index 32cb6753b..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/CONTRIBUTORS
+++ /dev/null
@@ -1,35 +0,0 @@
-# This is the official list of people who can contribute
-# (and typically have contributed) code to the Freetype-Go repository.
-# The AUTHORS file lists the copyright holders; this file
-# lists people. For example, Google employees are listed here
-# but not in AUTHORS, because Google holds the copyright.
-#
-# The submission process automatically checks to make sure
-# that people submitting code are listed in this file (by email address).
-#
-# Names should be added to this file only after verifying that
-# the individual or the individual's organization has agreed to
-# the appropriate Contributor License Agreement, found here:
-#
-# http://code.google.com/legal/individual-cla-v1.0.html
-# http://code.google.com/legal/corporate-cla-v1.0.html
-#
-# The agreement for individuals can be filled out on the web.
-#
-# When adding J Random Contributor's name to this file,
-# either J's name or J's organization's name should be
-# added to the AUTHORS file, depending on whether the
-# individual or corporate CLA was used.
-
-# Names should be added to this file like so:
-# Name <email address>
-
-# Please keep the list sorted.
-
-Andrew Gerrand <adg@golang.org>
-Jeff R. Allen <jra@nella.org> <jeff.allen@gmail.com>
-Nigel Tao <nigeltao@golang.org>
-Rémy Oudompheng <oudomphe@phare.normalesup.org> <remyoudompheng@gmail.com>
-Rob Pike <r@golang.org>
-Roger Peppe <rogpeppe@gmail.com>
-Russ Cox <rsc@golang.org>
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/LICENSE b/Godeps/_workspace/src/code.google.com/p/freetype-go/LICENSE
deleted file mode 100644
index e854ba5db..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/LICENSE
+++ /dev/null
@@ -1,12 +0,0 @@
-Use of the Freetype-Go software is subject to your choice of exactly one of
-the following two licenses:
- * The FreeType License, which is similar to the original BSD license with
- an advertising clause, or
- * The GNU General Public License (GPL), version 2 or later.
-
-The text of these licenses are available in the licenses/ftl.txt and the
-licenses/gpl.txt files respectively. They are also available at
-http://freetype.sourceforge.net/license.html
-
-The Luxi fonts in the testdata directory are licensed separately. See the
-testdata/COPYING file for details.
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/README b/Godeps/_workspace/src/code.google.com/p/freetype-go/README
deleted file mode 100644
index 90fefd5f6..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/README
+++ /dev/null
@@ -1,22 +0,0 @@
-This is a port of the Freetype font rasterizer (www.freetype.org) to the Go
-programming language (golang.org).
-
-To download and install from source:
-$ go get code.google.com/p/freetype-go/freetype
-
-It is an incomplete port:
- * It only supports TrueType fonts, and not Type 1 fonts nor bitmap fonts.
- * It only supports the Unicode encoding.
-
-There are also some implementation differences:
- * It uses a 24.8 fixed point co-ordinate system everywhere internally,
- as opposed to the original Freetype's mix of 26.6 (or 10.6 for 16-bit
- systems) in some places, and 24.8 in the "smooth" rasterizer.
-
-Freetype-Go is derived from Freetype, which is written in C. Freetype is
-copyright 1996-2010 David Turner, Robert Wilhelm, and Werner Lemberg.
-Freetype-Go is copyright The Freetype-Go Authors, who are listed in the
-AUTHORS file.
-
-The Freetype-Go homepage is http://code.google.com/p/freetype-go/
-
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/cmd/print-glyph-points/main.c b/Godeps/_workspace/src/code.google.com/p/freetype-go/cmd/print-glyph-points/main.c
deleted file mode 100644
index 6e821e892..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/cmd/print-glyph-points/main.c
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
-gcc main.c -I/usr/include/freetype2 -lfreetype && ./a.out 12 ../../testdata/luxisr.ttf with_hinting
-*/
-
-#include <stdio.h>
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-void usage(char** argv) {
- fprintf(stderr, "usage: %s font_size font_file [with_hinting|sans_hinting]\n", argv[0]);
-}
-
-int main(int argc, char** argv) {
- FT_Error error;
- FT_Library library;
- FT_Face face;
- FT_Glyph_Metrics* m;
- FT_Outline* o;
- FT_Int major, minor, patch;
- int i, j, font_size, no_hinting;
-
- if (argc != 4) {
- usage(argv);
- return 1;
- }
- font_size = atoi(argv[1]);
- if (font_size <= 0) {
- fprintf(stderr, "invalid font_size\n");
- usage(argv);
- return 1;
- }
- if (!strcmp(argv[3], "with_hinting")) {
- no_hinting = 0;
- } else if (!strcmp(argv[3], "sans_hinting")) {
- no_hinting = 1;
- } else {
- fprintf(stderr, "neither \"with_hinting\" nor \"sans_hinting\"\n");
- usage(argv);
- return 1;
- };
- error = FT_Init_FreeType(&library);
- if (error) {
- fprintf(stderr, "FT_Init_FreeType: error #%d\n", error);
- return 1;
- }
- FT_Library_Version(library, &major, &minor, &patch);
- printf("freetype version %d.%d.%d\n", major, minor, patch);
- error = FT_New_Face(library, argv[2], 0, &face);
- if (error) {
- fprintf(stderr, "FT_New_Face: error #%d\n", error);
- return 1;
- }
- error = FT_Set_Char_Size(face, 0, font_size*64, 0, 0);
- if (error) {
- fprintf(stderr, "FT_Set_Char_Size: error #%d\n", error);
- return 1;
- }
- for (i = 0; i < face->num_glyphs; i++) {
- error = FT_Load_Glyph(face, i, no_hinting ? FT_LOAD_NO_HINTING : FT_LOAD_DEFAULT);
- if (error) {
- fprintf(stderr, "FT_Load_Glyph: glyph %d: error #%d\n", i, error);
- return 1;
- }
- if (face->glyph->format != FT_GLYPH_FORMAT_OUTLINE) {
- fprintf(stderr, "glyph format for glyph %d is not FT_GLYPH_FORMAT_OUTLINE\n", i);
- return 1;
- }
- m = &face->glyph->metrics;
- /* Print what Go calls the AdvanceWidth, and then: XMin, YMin, XMax, YMax. */
- printf("%ld %ld %ld %ld %ld;",
- m->horiAdvance,
- m->horiBearingX,
- m->horiBearingY - m->height,
- m->horiBearingX + m->width,
- m->horiBearingY);
- /* Print the glyph points. */
- o = &face->glyph->outline;
- for (j = 0; j < o->n_points; j++) {
- if (j != 0) {
- printf(", ");
- }
- printf("%ld %ld %d", o->points[j].x, o->points[j].y, o->tags[j] & 0x01);
- }
- printf("\n");
- }
- return 0;
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/example/freetype/main.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/example/freetype/main.go
deleted file mode 100644
index 83b8c3e5e..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/example/freetype/main.go
+++ /dev/null
@@ -1,143 +0,0 @@
-// Copyright 2010 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package main
-
-import (
- "bufio"
- "flag"
- "fmt"
- "image"
- "image/color"
- "image/draw"
- "image/png"
- "io/ioutil"
- "log"
- "os"
-
- "code.google.com/p/freetype-go/freetype"
-)
-
-var (
- dpi = flag.Float64("dpi", 72, "screen resolution in Dots Per Inch")
- fontfile = flag.String("fontfile", "../../testdata/luxisr.ttf", "filename of the ttf font")
- hinting = flag.String("hinting", "none", "none | full")
- size = flag.Float64("size", 12, "font size in points")
- spacing = flag.Float64("spacing", 1.5, "line spacing (e.g. 2 means double spaced)")
- wonb = flag.Bool("whiteonblack", false, "white text on a black background")
-)
-
-var text = []string{
- "’Twas brillig, and the slithy toves",
- "Did gyre and gimble in the wabe;",
- "All mimsy were the borogoves,",
- "And the mome raths outgrabe.",
- "",
- "“Beware the Jabberwock, my son!",
- "The jaws that bite, the claws that catch!",
- "Beware the Jubjub bird, and shun",
- "The frumious Bandersnatch!”",
- "",
- "He took his vorpal sword in hand:",
- "Long time the manxome foe he sought—",
- "So rested he by the Tumtum tree,",
- "And stood awhile in thought.",
- "",
- "And as in uffish thought he stood,",
- "The Jabberwock, with eyes of flame,",
- "Came whiffling through the tulgey wood,",
- "And burbled as it came!",
- "",
- "One, two! One, two! and through and through",
- "The vorpal blade went snicker-snack!",
- "He left it dead, and with its head",
- "He went galumphing back.",
- "",
- "“And hast thou slain the Jabberwock?",
- "Come to my arms, my beamish boy!",
- "O frabjous day! Callooh! Callay!”",
- "He chortled in his joy.",
- "",
- "’Twas brillig, and the slithy toves",
- "Did gyre and gimble in the wabe;",
- "All mimsy were the borogoves,",
- "And the mome raths outgrabe.",
-}
-
-func main() {
- flag.Parse()
-
- // Read the font data.
- fontBytes, err := ioutil.ReadFile(*fontfile)
- if err != nil {
- log.Println(err)
- return
- }
- font, err := freetype.ParseFont(fontBytes)
- if err != nil {
- log.Println(err)
- return
- }
-
- // Initialize the context.
- fg, bg := image.Black, image.White
- ruler := color.RGBA{0xdd, 0xdd, 0xdd, 0xff}
- if *wonb {
- fg, bg = image.White, image.Black
- ruler = color.RGBA{0x22, 0x22, 0x22, 0xff}
- }
- rgba := image.NewRGBA(image.Rect(0, 0, 640, 480))
- draw.Draw(rgba, rgba.Bounds(), bg, image.ZP, draw.Src)
- c := freetype.NewContext()
- c.SetDPI(*dpi)
- c.SetFont(font)
- c.SetFontSize(*size)
- c.SetClip(rgba.Bounds())
- c.SetDst(rgba)
- c.SetSrc(fg)
- switch *hinting {
- default:
- c.SetHinting(freetype.NoHinting)
- case "full":
- c.SetHinting(freetype.FullHinting)
- }
-
- // Draw the guidelines.
- for i := 0; i < 200; i++ {
- rgba.Set(10, 10+i, ruler)
- rgba.Set(10+i, 10, ruler)
- }
-
- // Draw the text.
- pt := freetype.Pt(10, 10+int(c.PointToFix32(*size)>>8))
- for _, s := range text {
- _, err = c.DrawString(s, pt)
- if err != nil {
- log.Println(err)
- return
- }
- pt.Y += c.PointToFix32(*size * *spacing)
- }
-
- // Save that RGBA image to disk.
- f, err := os.Create("out.png")
- if err != nil {
- log.Println(err)
- os.Exit(1)
- }
- defer f.Close()
- b := bufio.NewWriter(f)
- err = png.Encode(b, rgba)
- if err != nil {
- log.Println(err)
- os.Exit(1)
- }
- err = b.Flush()
- if err != nil {
- log.Println(err)
- os.Exit(1)
- }
- fmt.Println("Wrote out.png OK.")
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/example/gamma/main.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/example/gamma/main.go
deleted file mode 100644
index 4bf7e3309..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/example/gamma/main.go
+++ /dev/null
@@ -1,79 +0,0 @@
-// Copyright 2010 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package main
-
-import (
- "bufio"
- "fmt"
- "image"
- "image/draw"
- "image/png"
- "log"
- "os"
-
- "code.google.com/p/freetype-go/freetype/raster"
-)
-
-func p(x, y int) raster.Point {
- return raster.Point{
- X: raster.Fix32(x * 256),
- Y: raster.Fix32(y * 256),
- }
-}
-
-func main() {
- // Draw a rounded corner that is one pixel wide.
- r := raster.NewRasterizer(50, 50)
- r.Start(p(5, 5))
- r.Add1(p(5, 25))
- r.Add2(p(5, 45), p(25, 45))
- r.Add1(p(45, 45))
- r.Add1(p(45, 44))
- r.Add1(p(26, 44))
- r.Add2(p(6, 44), p(6, 24))
- r.Add1(p(6, 5))
- r.Add1(p(5, 5))
-
- // Rasterize that curve multiple times at different gammas.
- const (
- w = 600
- h = 200
- )
- rgba := image.NewRGBA(image.Rect(0, 0, w, h))
- draw.Draw(rgba, image.Rect(0, 0, w, h/2), image.Black, image.ZP, draw.Src)
- draw.Draw(rgba, image.Rect(0, h/2, w, h), image.White, image.ZP, draw.Src)
- mask := image.NewAlpha(image.Rect(0, 0, 50, 50))
- painter := raster.NewAlphaSrcPainter(mask)
- gammas := []float64{1.0 / 10.0, 1.0 / 3.0, 1.0 / 2.0, 2.0 / 3.0, 4.0 / 5.0, 1.0, 5.0 / 4.0, 3.0 / 2.0, 2.0, 3.0, 10.0}
- for i, g := range gammas {
- draw.Draw(mask, mask.Bounds(), image.Transparent, image.ZP, draw.Src)
- r.Rasterize(raster.NewGammaCorrectionPainter(painter, g))
- x, y := 50*i+25, 25
- draw.DrawMask(rgba, image.Rect(x, y, x+50, y+50), image.White, image.ZP, mask, image.ZP, draw.Over)
- y += 100
- draw.DrawMask(rgba, image.Rect(x, y, x+50, y+50), image.Black, image.ZP, mask, image.ZP, draw.Over)
- }
-
- // Save that RGBA image to disk.
- f, err := os.Create("out.png")
- if err != nil {
- log.Println(err)
- os.Exit(1)
- }
- defer f.Close()
- b := bufio.NewWriter(f)
- err = png.Encode(b, rgba)
- if err != nil {
- log.Println(err)
- os.Exit(1)
- }
- err = b.Flush()
- if err != nil {
- log.Println(err)
- os.Exit(1)
- }
- fmt.Println("Wrote out.png OK.")
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/example/raster/main.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/example/raster/main.go
deleted file mode 100644
index 5e6c9815d..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/example/raster/main.go
+++ /dev/null
@@ -1,178 +0,0 @@
-// Copyright 2010 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package main
-
-import (
- "bufio"
- "fmt"
- "image"
- "image/color"
- "image/draw"
- "image/png"
- "log"
- "os"
-
- "code.google.com/p/freetype-go/freetype/raster"
-)
-
-type node struct {
- x, y, degree int
-}
-
-// These contours "outside" and "inside" are from the `A' glyph from the Droid
-// Serif Regular font.
-
-var outside = []node{
- node{414, 489, 1},
- node{336, 274, 2},
- node{327, 250, 0},
- node{322, 226, 2},
- node{317, 203, 0},
- node{317, 186, 2},
- node{317, 134, 0},
- node{350, 110, 2},
- node{384, 86, 0},
- node{453, 86, 1},
- node{500, 86, 1},
- node{500, 0, 1},
- node{0, 0, 1},
- node{0, 86, 1},
- node{39, 86, 2},
- node{69, 86, 0},
- node{90, 92, 2},
- node{111, 99, 0},
- node{128, 117, 2},
- node{145, 135, 0},
- node{160, 166, 2},
- node{176, 197, 0},
- node{195, 246, 1},
- node{649, 1462, 1},
- node{809, 1462, 1},
- node{1272, 195, 2},
- node{1284, 163, 0},
- node{1296, 142, 2},
- node{1309, 121, 0},
- node{1326, 108, 2},
- node{1343, 96, 0},
- node{1365, 91, 2},
- node{1387, 86, 0},
- node{1417, 86, 1},
- node{1444, 86, 1},
- node{1444, 0, 1},
- node{881, 0, 1},
- node{881, 86, 1},
- node{928, 86, 2},
- node{1051, 86, 0},
- node{1051, 184, 2},
- node{1051, 201, 0},
- node{1046, 219, 2},
- node{1042, 237, 0},
- node{1034, 260, 1},
- node{952, 489, 1},
- node{414, 489, -1},
-}
-
-var inside = []node{
- node{686, 1274, 1},
- node{453, 592, 1},
- node{915, 592, 1},
- node{686, 1274, -1},
-}
-
-func p(n node) raster.Point {
- x, y := 20+n.x/4, 380-n.y/4
- return raster.Point{
- X: raster.Fix32(x * 256),
- Y: raster.Fix32(y * 256),
- }
-}
-
-func contour(r *raster.Rasterizer, ns []node) {
- if len(ns) == 0 {
- return
- }
- i := 0
- r.Start(p(ns[i]))
- for {
- switch ns[i].degree {
- case -1:
- // -1 signifies end-of-contour.
- return
- case 1:
- i += 1
- r.Add1(p(ns[i]))
- case 2:
- i += 2
- r.Add2(p(ns[i-1]), p(ns[i]))
- default:
- panic("bad degree")
- }
- }
-}
-
-func showNodes(m *image.RGBA, ns []node) {
- for _, n := range ns {
- p := p(n)
- x, y := int(p.X)/256, int(p.Y)/256
- if !(image.Point{x, y}).In(m.Bounds()) {
- continue
- }
- var c color.Color
- switch n.degree {
- case 0:
- c = color.RGBA{0, 255, 255, 255}
- case 1:
- c = color.RGBA{255, 0, 0, 255}
- case 2:
- c = color.RGBA{255, 0, 0, 255}
- }
- if c != nil {
- m.Set(x, y, c)
- }
- }
-}
-
-func main() {
- // Rasterize the contours to a mask image.
- const (
- w = 400
- h = 400
- )
- r := raster.NewRasterizer(w, h)
- contour(r, outside)
- contour(r, inside)
- mask := image.NewAlpha(image.Rect(0, 0, w, h))
- p := raster.NewAlphaSrcPainter(mask)
- r.Rasterize(p)
-
- // Draw the mask image (in gray) onto an RGBA image.
- rgba := image.NewRGBA(image.Rect(0, 0, w, h))
- gray := image.NewUniform(color.Alpha{0x1f})
- draw.Draw(rgba, rgba.Bounds(), image.Black, image.ZP, draw.Src)
- draw.DrawMask(rgba, rgba.Bounds(), gray, image.ZP, mask, image.ZP, draw.Over)
- showNodes(rgba, outside)
- showNodes(rgba, inside)
-
- // Save that RGBA image to disk.
- f, err := os.Create("out.png")
- if err != nil {
- log.Println(err)
- os.Exit(1)
- }
- defer f.Close()
- b := bufio.NewWriter(f)
- err = png.Encode(b, rgba)
- if err != nil {
- log.Println(err)
- os.Exit(1)
- }
- err = b.Flush()
- if err != nil {
- log.Println(err)
- os.Exit(1)
- }
- fmt.Println("Wrote out.png OK.")
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/example/round/main.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/example/round/main.go
deleted file mode 100644
index e2435f9a2..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/example/round/main.go
+++ /dev/null
@@ -1,96 +0,0 @@
-// Copyright 2010 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-// This program visualizes the quadratic approximation to the circle, used to
-// implement round joins when stroking paths. The approximation is used in the
-// stroking code for arcs between 0 and 45 degrees, but is visualized here
-// between 0 and 90 degrees. The discrepancy between the approximation and the
-// true circle is clearly visible at angles above 65 degrees.
-package main
-
-import (
- "bufio"
- "fmt"
- "image"
- "image/color"
- "image/draw"
- "image/png"
- "log"
- "math"
- "os"
-
- "code.google.com/p/freetype-go/freetype/raster"
-)
-
-func main() {
- const (
- n = 17
- r = 256 * 80
- )
- s := raster.Fix32(r * math.Sqrt(2) / 2)
- t := raster.Fix32(r * math.Tan(math.Pi/8))
-
- m := image.NewRGBA(image.Rect(0, 0, 800, 600))
- draw.Draw(m, m.Bounds(), image.NewUniform(color.RGBA{63, 63, 63, 255}), image.ZP, draw.Src)
- mp := raster.NewRGBAPainter(m)
- mp.SetColor(image.Black)
- z := raster.NewRasterizer(800, 600)
-
- for i := 0; i < n; i++ {
- cx := raster.Fix32(25600 + 51200*(i%4))
- cy := raster.Fix32(2560 + 32000*(i/4))
- c := raster.Point{X: cx, Y: cy}
- theta := math.Pi * (0.5 + 0.5*float64(i)/(n-1))
- dx := raster.Fix32(r * math.Cos(theta))
- dy := raster.Fix32(r * math.Sin(theta))
- d := raster.Point{X: dx, Y: dy}
- // Draw a quarter-circle approximated by two quadratic segments,
- // with each segment spanning 45 degrees.
- z.Start(c)
- z.Add1(c.Add(raster.Point{X: r, Y: 0}))
- z.Add2(c.Add(raster.Point{X: r, Y: t}), c.Add(raster.Point{X: s, Y: s}))
- z.Add2(c.Add(raster.Point{X: t, Y: r}), c.Add(raster.Point{X: 0, Y: r}))
- // Add another quadratic segment whose angle ranges between 0 and 90 degrees.
- // For an explanation of the magic constants 22, 150, 181 and 256, read the
- // comments in the freetype/raster package.
- dot := 256 * d.Dot(raster.Point{X: 0, Y: r}) / (r * r)
- multiple := raster.Fix32(150 - 22*(dot-181)/(256-181))
- z.Add2(c.Add(raster.Point{X: dx, Y: r + dy}.Mul(multiple)), c.Add(d))
- // Close the curve.
- z.Add1(c)
- }
- z.Rasterize(mp)
-
- for i := 0; i < n; i++ {
- cx := raster.Fix32(25600 + 51200*(i%4))
- cy := raster.Fix32(2560 + 32000*(i/4))
- for j := 0; j < n; j++ {
- theta := math.Pi * float64(j) / (n - 1)
- dx := raster.Fix32(r * math.Cos(theta))
- dy := raster.Fix32(r * math.Sin(theta))
- m.Set(int((cx+dx)/256), int((cy+dy)/256), color.RGBA{255, 255, 0, 255})
- }
- }
-
- // Save that RGBA image to disk.
- f, err := os.Create("out.png")
- if err != nil {
- log.Println(err)
- os.Exit(1)
- }
- defer f.Close()
- b := bufio.NewWriter(f)
- err = png.Encode(b, m)
- if err != nil {
- log.Println(err)
- os.Exit(1)
- }
- err = b.Flush()
- if err != nil {
- log.Println(err)
- os.Exit(1)
- }
- fmt.Println("Wrote out.png OK.")
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/example/truetype/main.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/example/truetype/main.go
deleted file mode 100644
index 747694b61..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/example/truetype/main.go
+++ /dev/null
@@ -1,73 +0,0 @@
-// Copyright 2010 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package main
-
-import (
- "flag"
- "fmt"
- "io/ioutil"
- "log"
-
- "code.google.com/p/freetype-go/freetype/truetype"
-)
-
-var fontfile = flag.String("fontfile", "../../testdata/luxisr.ttf", "filename of the ttf font")
-
-func printBounds(b truetype.Bounds) {
- fmt.Printf("XMin:%d YMin:%d XMax:%d YMax:%d\n", b.XMin, b.YMin, b.XMax, b.YMax)
-}
-
-func printGlyph(g *truetype.GlyphBuf) {
- printBounds(g.B)
- fmt.Print("Points:\n---\n")
- e := 0
- for i, p := range g.Point {
- fmt.Printf("%4d, %4d", p.X, p.Y)
- if p.Flags&0x01 != 0 {
- fmt.Print(" on\n")
- } else {
- fmt.Print(" off\n")
- }
- if i+1 == int(g.End[e]) {
- fmt.Print("---\n")
- e++
- }
- }
-}
-
-func main() {
- flag.Parse()
- fmt.Printf("Loading fontfile %q\n", *fontfile)
- b, err := ioutil.ReadFile(*fontfile)
- if err != nil {
- log.Println(err)
- return
- }
- font, err := truetype.Parse(b)
- if err != nil {
- log.Println(err)
- return
- }
- fupe := font.FUnitsPerEm()
- printBounds(font.Bounds(fupe))
- fmt.Printf("FUnitsPerEm:%d\n\n", fupe)
-
- c0, c1 := 'A', 'V'
-
- i0 := font.Index(c0)
- hm := font.HMetric(fupe, i0)
- g := truetype.NewGlyphBuf()
- err = g.Load(font, fupe, i0, truetype.NoHinting)
- if err != nil {
- log.Println(err)
- return
- }
- fmt.Printf("'%c' glyph\n", c0)
- fmt.Printf("AdvanceWidth:%d LeftSideBearing:%d\n", hm.AdvanceWidth, hm.LeftSideBearing)
- printGlyph(g)
- i1 := font.Index(c1)
- fmt.Printf("\n'%c', '%c' Kerning:%d\n", c0, c1, font.Kerning(fupe, i0, i1))
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/freetype.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/freetype.go
deleted file mode 100644
index f53efd4ff..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/freetype.go
+++ /dev/null
@@ -1,349 +0,0 @@
-// Copyright 2010 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-// The freetype package provides a convenient API to draw text onto an image.
-// Use the freetype/raster and freetype/truetype packages for lower level
-// control over rasterization and TrueType parsing.
-package freetype
-
-import (
- "errors"
- "image"
- "image/draw"
-
- "code.google.com/p/freetype-go/freetype/raster"
- "code.google.com/p/freetype-go/freetype/truetype"
-)
-
-// These constants determine the size of the glyph cache. The cache is keyed
-// primarily by the glyph index modulo nGlyphs, and secondarily by sub-pixel
-// position for the mask image. Sub-pixel positions are quantized to
-// nXFractions possible values in both the x and y directions.
-const (
- nGlyphs = 256
- nXFractions = 4
- nYFractions = 1
-)
-
-// An entry in the glyph cache is keyed explicitly by the glyph index and
-// implicitly by the quantized x and y fractional offset. It maps to a mask
-// image and an offset.
-type cacheEntry struct {
- valid bool
- glyph truetype.Index
- advanceWidth raster.Fix32
- mask *image.Alpha
- offset image.Point
-}
-
-// ParseFont just calls the Parse function from the freetype/truetype package.
-// It is provided here so that code that imports this package doesn't need
-// to also include the freetype/truetype package.
-func ParseFont(b []byte) (*truetype.Font, error) {
- return truetype.Parse(b)
-}
-
-// Pt converts from a co-ordinate pair measured in pixels to a raster.Point
-// co-ordinate pair measured in raster.Fix32 units.
-func Pt(x, y int) raster.Point {
- return raster.Point{
- X: raster.Fix32(x << 8),
- Y: raster.Fix32(y << 8),
- }
-}
-
-// Hinting is the policy for snapping a glyph's contours to pixel boundaries.
-type Hinting int32
-
-const (
- // NoHinting means to not perform any hinting.
- NoHinting = Hinting(truetype.NoHinting)
- // FullHinting means to use the font's hinting instructions.
- FullHinting = Hinting(truetype.FullHinting)
-)
-
-// A Context holds the state for drawing text in a given font and size.
-type Context struct {
- r *raster.Rasterizer
- font *truetype.Font
- glyphBuf *truetype.GlyphBuf
- // clip is the clip rectangle for drawing.
- clip image.Rectangle
- // dst and src are the destination and source images for drawing.
- dst draw.Image
- src image.Image
- // fontSize and dpi are used to calculate scale. scale is the number of
- // 26.6 fixed point units in 1 em. hinting is the hinting policy.
- fontSize, dpi float64
- scale int32
- hinting Hinting
- // cache is the glyph cache.
- cache [nGlyphs * nXFractions * nYFractions]cacheEntry
-}
-
-// PointToFix32 converts the given number of points (as in ``a 12 point font'')
-// into fixed point units.
-func (c *Context) PointToFix32(x float64) raster.Fix32 {
- return raster.Fix32(x * float64(c.dpi) * (256.0 / 72.0))
-}
-
-// drawContour draws the given closed contour with the given offset.
-func (c *Context) drawContour(ps []truetype.Point, dx, dy raster.Fix32) {
- if len(ps) == 0 {
- return
- }
-
- // The low bit of each point's Flags value is whether the point is on the
- // curve. Truetype fonts only have quadratic Bézier curves, not cubics.
- // Thus, two consecutive off-curve points imply an on-curve point in the
- // middle of those two.
- //
- // See http://chanae.walon.org/pub/ttf/ttf_glyphs.htm for more details.
-
- // ps[0] is a truetype.Point measured in FUnits and positive Y going
- // upwards. start is the same thing measured in fixed point units and
- // positive Y going downwards, and offset by (dx, dy).
- start := raster.Point{
- X: dx + raster.Fix32(ps[0].X<<2),
- Y: dy - raster.Fix32(ps[0].Y<<2),
- }
- others := []truetype.Point(nil)
- if ps[0].Flags&0x01 != 0 {
- others = ps[1:]
- } else {
- last := raster.Point{
- X: dx + raster.Fix32(ps[len(ps)-1].X<<2),
- Y: dy - raster.Fix32(ps[len(ps)-1].Y<<2),
- }
- if ps[len(ps)-1].Flags&0x01 != 0 {
- start = last
- others = ps[:len(ps)-1]
- } else {
- start = raster.Point{
- X: (start.X + last.X) / 2,
- Y: (start.Y + last.Y) / 2,
- }
- others = ps
- }
- }
- c.r.Start(start)
- q0, on0 := start, true
- for _, p := range others {
- q := raster.Point{
- X: dx + raster.Fix32(p.X<<2),
- Y: dy - raster.Fix32(p.Y<<2),
- }
- on := p.Flags&0x01 != 0
- if on {
- if on0 {
- c.r.Add1(q)
- } else {
- c.r.Add2(q0, q)
- }
- } else {
- if on0 {
- // No-op.
- } else {
- mid := raster.Point{
- X: (q0.X + q.X) / 2,
- Y: (q0.Y + q.Y) / 2,
- }
- c.r.Add2(q0, mid)
- }
- }
- q0, on0 = q, on
- }
- // Close the curve.
- if on0 {
- c.r.Add1(start)
- } else {
- c.r.Add2(q0, start)
- }
-}
-
-// rasterize returns the advance width, glyph mask and integer-pixel offset
-// to render the given glyph at the given sub-pixel offsets.
-// The 24.8 fixed point arguments fx and fy must be in the range [0, 1).
-func (c *Context) rasterize(glyph truetype.Index, fx, fy raster.Fix32) (
- raster.Fix32, *image.Alpha, image.Point, error) {
-
- if err := c.glyphBuf.Load(c.font, c.scale, glyph, truetype.Hinting(c.hinting)); err != nil {
- return 0, nil, image.Point{}, err
- }
- // Calculate the integer-pixel bounds for the glyph.
- xmin := int(fx+raster.Fix32(c.glyphBuf.B.XMin<<2)) >> 8
- ymin := int(fy-raster.Fix32(c.glyphBuf.B.YMax<<2)) >> 8
- xmax := int(fx+raster.Fix32(c.glyphBuf.B.XMax<<2)+0xff) >> 8
- ymax := int(fy-raster.Fix32(c.glyphBuf.B.YMin<<2)+0xff) >> 8
- if xmin > xmax || ymin > ymax {
- return 0, nil, image.Point{}, errors.New("freetype: negative sized glyph")
- }
- // A TrueType's glyph's nodes can have negative co-ordinates, but the
- // rasterizer clips anything left of x=0 or above y=0. xmin and ymin
- // are the pixel offsets, based on the font's FUnit metrics, that let
- // a negative co-ordinate in TrueType space be non-negative in
- // rasterizer space. xmin and ymin are typically <= 0.
- fx += raster.Fix32(-xmin << 8)
- fy += raster.Fix32(-ymin << 8)
- // Rasterize the glyph's vectors.
- c.r.Clear()
- e0 := 0
- for _, e1 := range c.glyphBuf.End {
- c.drawContour(c.glyphBuf.Point[e0:e1], fx, fy)
- e0 = e1
- }
- a := image.NewAlpha(image.Rect(0, 0, xmax-xmin, ymax-ymin))
- c.r.Rasterize(raster.NewAlphaSrcPainter(a))
- return raster.Fix32(c.glyphBuf.AdvanceWidth << 2), a, image.Point{xmin, ymin}, nil
-}
-
-// glyph returns the advance width, glyph mask and integer-pixel offset to
-// render the given glyph at the given sub-pixel point. It is a cache for the
-// rasterize method. Unlike rasterize, p's co-ordinates do not have to be in
-// the range [0, 1).
-func (c *Context) glyph(glyph truetype.Index, p raster.Point) (
- raster.Fix32, *image.Alpha, image.Point, error) {
-
- // Split p.X and p.Y into their integer and fractional parts.
- ix, fx := int(p.X>>8), p.X&0xff
- iy, fy := int(p.Y>>8), p.Y&0xff
- // Calculate the index t into the cache array.
- tg := int(glyph) % nGlyphs
- tx := int(fx) / (256 / nXFractions)
- ty := int(fy) / (256 / nYFractions)
- t := ((tg*nXFractions)+tx)*nYFractions + ty
- // Check for a cache hit.
- if e := c.cache[t]; e.valid && e.glyph == glyph {
- return e.advanceWidth, e.mask, e.offset.Add(image.Point{ix, iy}), nil
- }
- // Rasterize the glyph and put the result into the cache.
- advanceWidth, mask, offset, err := c.rasterize(glyph, fx, fy)
- if err != nil {
- return 0, nil, image.Point{}, err
- }
- c.cache[t] = cacheEntry{true, glyph, advanceWidth, mask, offset}
- return advanceWidth, mask, offset.Add(image.Point{ix, iy}), nil
-}
-
-// DrawString draws s at p and returns p advanced by the text extent. The text
-// is placed so that the left edge of the em square of the first character of s
-// and the baseline intersect at p. The majority of the affected pixels will be
-// above and to the right of the point, but some may be below or to the left.
-// For example, drawing a string that starts with a 'J' in an italic font may
-// affect pixels below and left of the point.
-// p is a raster.Point and can therefore represent sub-pixel positions.
-func (c *Context) DrawString(s string, p raster.Point) (raster.Point, error) {
- if c.font == nil {
- return raster.Point{}, errors.New("freetype: DrawText called with a nil font")
- }
- prev, hasPrev := truetype.Index(0), false
- for _, rune := range s {
- index := c.font.Index(rune)
- if hasPrev {
- kern := raster.Fix32(c.font.Kerning(c.scale, prev, index)) << 2
- if c.hinting != NoHinting {
- kern = (kern + 128) &^ 255
- }
- p.X += kern
- }
- advanceWidth, mask, offset, err := c.glyph(index, p)
- if err != nil {
- return raster.Point{}, err
- }
- p.X += advanceWidth
- glyphRect := mask.Bounds().Add(offset)
- dr := c.clip.Intersect(glyphRect)
- if !dr.Empty() {
- mp := image.Point{0, dr.Min.Y - glyphRect.Min.Y}
- draw.DrawMask(c.dst, dr, c.src, image.ZP, mask, mp, draw.Over)
- }
- prev, hasPrev = index, true
- }
- return p, nil
-}
-
-// recalc recalculates scale and bounds values from the font size, screen
-// resolution and font metrics, and invalidates the glyph cache.
-func (c *Context) recalc() {
- c.scale = int32(c.fontSize * c.dpi * (64.0 / 72.0))
- if c.font == nil {
- c.r.SetBounds(0, 0)
- } else {
- // Set the rasterizer's bounds to be big enough to handle the largest glyph.
- b := c.font.Bounds(c.scale)
- xmin := +int(b.XMin) >> 6
- ymin := -int(b.YMax) >> 6
- xmax := +int(b.XMax+63) >> 6
- ymax := -int(b.YMin-63) >> 6
- c.r.SetBounds(xmax-xmin, ymax-ymin)
- }
- for i := range c.cache {
- c.cache[i] = cacheEntry{}
- }
-}
-
-// SetDPI sets the screen resolution in dots per inch.
-func (c *Context) SetDPI(dpi float64) {
- if c.dpi == dpi {
- return
- }
- c.dpi = dpi
- c.recalc()
-}
-
-// SetFont sets the font used to draw text.
-func (c *Context) SetFont(font *truetype.Font) {
- if c.font == font {
- return
- }
- c.font = font
- c.recalc()
-}
-
-// SetFontSize sets the font size in points (as in ``a 12 point font'').
-func (c *Context) SetFontSize(fontSize float64) {
- if c.fontSize == fontSize {
- return
- }
- c.fontSize = fontSize
- c.recalc()
-}
-
-// SetHinting sets the hinting policy.
-func (c *Context) SetHinting(hinting Hinting) {
- c.hinting = hinting
- for i := range c.cache {
- c.cache[i] = cacheEntry{}
- }
-}
-
-// SetDst sets the destination image for draw operations.
-func (c *Context) SetDst(dst draw.Image) {
- c.dst = dst
-}
-
-// SetSrc sets the source image for draw operations. This is typically an
-// image.Uniform.
-func (c *Context) SetSrc(src image.Image) {
- c.src = src
-}
-
-// SetClip sets the clip rectangle for drawing.
-func (c *Context) SetClip(clip image.Rectangle) {
- c.clip = clip
-}
-
-// TODO(nigeltao): implement Context.SetGamma.
-
-// NewContext creates a new Context.
-func NewContext() *Context {
- return &Context{
- r: raster.NewRasterizer(0, 0),
- glyphBuf: truetype.NewGlyphBuf(),
- fontSize: 12,
- dpi: 72,
- scale: 12 << 6,
- }
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/freetype_test.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/freetype_test.go
deleted file mode 100644
index 39f56b36d..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/freetype_test.go
+++ /dev/null
@@ -1,59 +0,0 @@
-// Copyright 2012 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package freetype
-
-import (
- "image"
- "image/draw"
- "io/ioutil"
- "runtime"
- "strings"
- "testing"
-)
-
-func BenchmarkDrawString(b *testing.B) {
- data, err := ioutil.ReadFile("../licenses/gpl.txt")
- if err != nil {
- b.Fatal(err)
- }
- lines := strings.Split(string(data), "\n")
-
- data, err = ioutil.ReadFile("../testdata/luxisr.ttf")
- if err != nil {
- b.Fatal(err)
- }
- font, err := ParseFont(data)
- if err != nil {
- b.Fatal(err)
- }
-
- dst := image.NewRGBA(image.Rect(0, 0, 800, 600))
- draw.Draw(dst, dst.Bounds(), image.White, image.ZP, draw.Src)
-
- c := NewContext()
- c.SetDst(dst)
- c.SetClip(dst.Bounds())
- c.SetSrc(image.Black)
- c.SetFont(font)
-
- var ms runtime.MemStats
- runtime.ReadMemStats(&ms)
- mallocs := ms.Mallocs
-
- b.ResetTimer()
- for i := 0; i < b.N; i++ {
- for j, line := range lines {
- _, err := c.DrawString(line, Pt(0, (j*16)%600))
- if err != nil {
- b.Fatal(err)
- }
- }
- }
- b.StopTimer()
- runtime.ReadMemStats(&ms)
- mallocs = ms.Mallocs - mallocs
- b.Logf("%d iterations, %d mallocs per iteration\n", b.N, int(mallocs)/b.N)
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/geom.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/geom.go
deleted file mode 100644
index 63c86e6ab..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/geom.go
+++ /dev/null
@@ -1,280 +0,0 @@
-// Copyright 2010 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package raster
-
-import (
- "fmt"
- "math"
-)
-
-// A Fix32 is a 24.8 fixed point number.
-type Fix32 int32
-
-// A Fix64 is a 48.16 fixed point number.
-type Fix64 int64
-
-// String returns a human-readable representation of a 24.8 fixed point number.
-// For example, the number one-and-a-quarter becomes "1:064".
-func (x Fix32) String() string {
- if x < 0 {
- x = -x
- return fmt.Sprintf("-%d:%03d", int32(x/256), int32(x%256))
- }
- return fmt.Sprintf("%d:%03d", int32(x/256), int32(x%256))
-}
-
-// String returns a human-readable representation of a 48.16 fixed point number.
-// For example, the number one-and-a-quarter becomes "1:16384".
-func (x Fix64) String() string {
- if x < 0 {
- x = -x
- return fmt.Sprintf("-%d:%05d", int64(x/65536), int64(x%65536))
- }
- return fmt.Sprintf("%d:%05d", int64(x/65536), int64(x%65536))
-}
-
-// maxAbs returns the maximum of abs(a) and abs(b).
-func maxAbs(a, b Fix32) Fix32 {
- if a < 0 {
- a = -a
- }
- if b < 0 {
- b = -b
- }
- if a < b {
- return b
- }
- return a
-}
-
-// A Point represents a two-dimensional point or vector, in 24.8 fixed point
-// format.
-type Point struct {
- X, Y Fix32
-}
-
-// String returns a human-readable representation of a Point.
-func (p Point) String() string {
- return "(" + p.X.String() + ", " + p.Y.String() + ")"
-}
-
-// Add returns the vector p + q.
-func (p Point) Add(q Point) Point {
- return Point{p.X + q.X, p.Y + q.Y}
-}
-
-// Sub returns the vector p - q.
-func (p Point) Sub(q Point) Point {
- return Point{p.X - q.X, p.Y - q.Y}
-}
-
-// Mul returns the vector k * p.
-func (p Point) Mul(k Fix32) Point {
- return Point{p.X * k / 256, p.Y * k / 256}
-}
-
-// Neg returns the vector -p, or equivalently p rotated by 180 degrees.
-func (p Point) Neg() Point {
- return Point{-p.X, -p.Y}
-}
-
-// Dot returns the dot product p·q.
-func (p Point) Dot(q Point) Fix64 {
- px, py := int64(p.X), int64(p.Y)
- qx, qy := int64(q.X), int64(q.Y)
- return Fix64(px*qx + py*qy)
-}
-
-// Len returns the length of the vector p.
-func (p Point) Len() Fix32 {
- // TODO(nigeltao): use fixed point math.
- x := float64(p.X)
- y := float64(p.Y)
- return Fix32(math.Sqrt(x*x + y*y))
-}
-
-// Norm returns the vector p normalized to the given length, or the zero Point
-// if p is degenerate.
-func (p Point) Norm(length Fix32) Point {
- d := p.Len()
- if d == 0 {
- return Point{}
- }
- s, t := int64(length), int64(d)
- x := int64(p.X) * s / t
- y := int64(p.Y) * s / t
- return Point{Fix32(x), Fix32(y)}
-}
-
-// Rot45CW returns the vector p rotated clockwise by 45 degrees.
-// Note that the Y-axis grows downwards, so {1, 0}.Rot45CW is {1/√2, 1/√2}.
-func (p Point) Rot45CW() Point {
- // 181/256 is approximately 1/√2, or sin(π/4).
- px, py := int64(p.X), int64(p.Y)
- qx := (+px - py) * 181 / 256
- qy := (+px + py) * 181 / 256
- return Point{Fix32(qx), Fix32(qy)}
-}
-
-// Rot90CW returns the vector p rotated clockwise by 90 degrees.
-// Note that the Y-axis grows downwards, so {1, 0}.Rot90CW is {0, 1}.
-func (p Point) Rot90CW() Point {
- return Point{-p.Y, p.X}
-}
-
-// Rot135CW returns the vector p rotated clockwise by 135 degrees.
-// Note that the Y-axis grows downwards, so {1, 0}.Rot135CW is {-1/√2, 1/√2}.
-func (p Point) Rot135CW() Point {
- // 181/256 is approximately 1/√2, or sin(π/4).
- px, py := int64(p.X), int64(p.Y)
- qx := (-px - py) * 181 / 256
- qy := (+px - py) * 181 / 256
- return Point{Fix32(qx), Fix32(qy)}
-}
-
-// Rot45CCW returns the vector p rotated counter-clockwise by 45 degrees.
-// Note that the Y-axis grows downwards, so {1, 0}.Rot45CCW is {1/√2, -1/√2}.
-func (p Point) Rot45CCW() Point {
- // 181/256 is approximately 1/√2, or sin(π/4).
- px, py := int64(p.X), int64(p.Y)
- qx := (+px + py) * 181 / 256
- qy := (-px + py) * 181 / 256
- return Point{Fix32(qx), Fix32(qy)}
-}
-
-// Rot90CCW returns the vector p rotated counter-clockwise by 90 degrees.
-// Note that the Y-axis grows downwards, so {1, 0}.Rot90CCW is {0, -1}.
-func (p Point) Rot90CCW() Point {
- return Point{p.Y, -p.X}
-}
-
-// Rot135CCW returns the vector p rotated counter-clockwise by 135 degrees.
-// Note that the Y-axis grows downwards, so {1, 0}.Rot135CCW is {-1/√2, -1/√2}.
-func (p Point) Rot135CCW() Point {
- // 181/256 is approximately 1/√2, or sin(π/4).
- px, py := int64(p.X), int64(p.Y)
- qx := (-px + py) * 181 / 256
- qy := (-px - py) * 181 / 256
- return Point{Fix32(qx), Fix32(qy)}
-}
-
-// An Adder accumulates points on a curve.
-type Adder interface {
- // Start starts a new curve at the given point.
- Start(a Point)
- // Add1 adds a linear segment to the current curve.
- Add1(b Point)
- // Add2 adds a quadratic segment to the current curve.
- Add2(b, c Point)
- // Add3 adds a cubic segment to the current curve.
- Add3(b, c, d Point)
-}
-
-// A Path is a sequence of curves, and a curve is a start point followed by a
-// sequence of linear, quadratic or cubic segments.
-type Path []Fix32
-
-// String returns a human-readable representation of a Path.
-func (p Path) String() string {
- s := ""
- for i := 0; i < len(p); {
- if i != 0 {
- s += " "
- }
- switch p[i] {
- case 0:
- s += "S0" + fmt.Sprint([]Fix32(p[i+1:i+3]))
- i += 4
- case 1:
- s += "A1" + fmt.Sprint([]Fix32(p[i+1:i+3]))
- i += 4
- case 2:
- s += "A2" + fmt.Sprint([]Fix32(p[i+1:i+5]))
- i += 6
- case 3:
- s += "A3" + fmt.Sprint([]Fix32(p[i+1:i+7]))
- i += 8
- default:
- panic("freetype/raster: bad path")
- }
- }
- return s
-}
-
-// Clear cancels any previous calls to p.Start or p.AddXxx.
-func (p *Path) Clear() {
- *p = (*p)[:0]
-}
-
-// Start starts a new curve at the given point.
-func (p *Path) Start(a Point) {
- *p = append(*p, 0, a.X, a.Y, 0)
-}
-
-// Add1 adds a linear segment to the current curve.
-func (p *Path) Add1(b Point) {
- *p = append(*p, 1, b.X, b.Y, 1)
-}
-
-// Add2 adds a quadratic segment to the current curve.
-func (p *Path) Add2(b, c Point) {
- *p = append(*p, 2, b.X, b.Y, c.X, c.Y, 2)
-}
-
-// Add3 adds a cubic segment to the current curve.
-func (p *Path) Add3(b, c, d Point) {
- *p = append(*p, 3, b.X, b.Y, c.X, c.Y, d.X, d.Y, 3)
-}
-
-// AddPath adds the Path q to p.
-func (p *Path) AddPath(q Path) {
- *p = append(*p, q...)
-}
-
-// AddStroke adds a stroked Path.
-func (p *Path) AddStroke(q Path, width Fix32, cr Capper, jr Joiner) {
- Stroke(p, q, width, cr, jr)
-}
-
-// firstPoint returns the first point in a non-empty Path.
-func (p Path) firstPoint() Point {
- return Point{p[1], p[2]}
-}
-
-// lastPoint returns the last point in a non-empty Path.
-func (p Path) lastPoint() Point {
- return Point{p[len(p)-3], p[len(p)-2]}
-}
-
-// addPathReversed adds q reversed to p.
-// For example, if q consists of a linear segment from A to B followed by a
-// quadratic segment from B to C to D, then the values of q looks like:
-// index: 01234567890123
-// value: 0AA01BB12CCDD2
-// So, when adding q backwards to p, we want to Add2(C, B) followed by Add1(A).
-func addPathReversed(p Adder, q Path) {
- if len(q) == 0 {
- return
- }
- i := len(q) - 1
- for {
- switch q[i] {
- case 0:
- return
- case 1:
- i -= 4
- p.Add1(Point{q[i-2], q[i-1]})
- case 2:
- i -= 6
- p.Add2(Point{q[i+2], q[i+3]}, Point{q[i-2], q[i-1]})
- case 3:
- i -= 8
- p.Add3(Point{q[i+4], q[i+5]}, Point{q[i+2], q[i+3]}, Point{q[i-2], q[i-1]})
- default:
- panic("freetype/raster: bad path")
- }
- }
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/paint.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/paint.go
deleted file mode 100644
index 13cccc192..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/paint.go
+++ /dev/null
@@ -1,292 +0,0 @@
-// Copyright 2010 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package raster
-
-import (
- "image"
- "image/color"
- "image/draw"
- "math"
-)
-
-// A Span is a horizontal segment of pixels with constant alpha. X0 is an
-// inclusive bound and X1 is exclusive, the same as for slices. A fully
-// opaque Span has A == 1<<32 - 1.
-type Span struct {
- Y, X0, X1 int
- A uint32
-}
-
-// A Painter knows how to paint a batch of Spans. Rasterization may involve
-// Painting multiple batches, and done will be true for the final batch.
-// The Spans' Y values are monotonically increasing during a rasterization.
-// Paint may use all of ss as scratch space during the call.
-type Painter interface {
- Paint(ss []Span, done bool)
-}
-
-// The PainterFunc type adapts an ordinary function to the Painter interface.
-type PainterFunc func(ss []Span, done bool)
-
-// Paint just delegates the call to f.
-func (f PainterFunc) Paint(ss []Span, done bool) { f(ss, done) }
-
-// An AlphaOverPainter is a Painter that paints Spans onto an image.Alpha
-// using the Over Porter-Duff composition operator.
-type AlphaOverPainter struct {
- Image *image.Alpha
-}
-
-// Paint satisfies the Painter interface by painting ss onto an image.Alpha.
-func (r AlphaOverPainter) Paint(ss []Span, done bool) {
- b := r.Image.Bounds()
- for _, s := range ss {
- if s.Y < b.Min.Y {
- continue
- }
- if s.Y >= b.Max.Y {
- return
- }
- if s.X0 < b.Min.X {
- s.X0 = b.Min.X
- }
- if s.X1 > b.Max.X {
- s.X1 = b.Max.X
- }
- if s.X0 >= s.X1 {
- continue
- }
- base := (s.Y-r.Image.Rect.Min.Y)*r.Image.Stride - r.Image.Rect.Min.X
- p := r.Image.Pix[base+s.X0 : base+s.X1]
- a := int(s.A >> 24)
- for i, c := range p {
- v := int(c)
- p[i] = uint8((v*255 + (255-v)*a) / 255)
- }
- }
-}
-
-// NewAlphaOverPainter creates a new AlphaOverPainter for the given image.
-func NewAlphaOverPainter(m *image.Alpha) AlphaOverPainter {
- return AlphaOverPainter{m}
-}
-
-// An AlphaSrcPainter is a Painter that paints Spans onto an image.Alpha
-// using the Src Porter-Duff composition operator.
-type AlphaSrcPainter struct {
- Image *image.Alpha
-}
-
-// Paint satisfies the Painter interface by painting ss onto an image.Alpha.
-func (r AlphaSrcPainter) Paint(ss []Span, done bool) {
- b := r.Image.Bounds()
- for _, s := range ss {
- if s.Y < b.Min.Y {
- continue
- }
- if s.Y >= b.Max.Y {
- return
- }
- if s.X0 < b.Min.X {
- s.X0 = b.Min.X
- }
- if s.X1 > b.Max.X {
- s.X1 = b.Max.X
- }
- if s.X0 >= s.X1 {
- continue
- }
- base := (s.Y-r.Image.Rect.Min.Y)*r.Image.Stride - r.Image.Rect.Min.X
- p := r.Image.Pix[base+s.X0 : base+s.X1]
- color := uint8(s.A >> 24)
- for i := range p {
- p[i] = color
- }
- }
-}
-
-// NewAlphaSrcPainter creates a new AlphaSrcPainter for the given image.
-func NewAlphaSrcPainter(m *image.Alpha) AlphaSrcPainter {
- return AlphaSrcPainter{m}
-}
-
-type RGBAPainter struct {
- // The image to compose onto.
- Image *image.RGBA
- // The Porter-Duff composition operator.
- Op draw.Op
- // The 16-bit color to paint the spans.
- cr, cg, cb, ca uint32
-}
-
-// Paint satisfies the Painter interface by painting ss onto an image.RGBA.
-func (r *RGBAPainter) Paint(ss []Span, done bool) {
- b := r.Image.Bounds()
- for _, s := range ss {
- if s.Y < b.Min.Y {
- continue
- }
- if s.Y >= b.Max.Y {
- return
- }
- if s.X0 < b.Min.X {
- s.X0 = b.Min.X
- }
- if s.X1 > b.Max.X {
- s.X1 = b.Max.X
- }
- if s.X0 >= s.X1 {
- continue
- }
- // This code is similar to drawGlyphOver in $GOROOT/src/pkg/image/draw/draw.go.
- ma := s.A >> 16
- const m = 1<<16 - 1
- i0 := (s.Y-r.Image.Rect.Min.Y)*r.Image.Stride + (s.X0-r.Image.Rect.Min.X)*4
- i1 := i0 + (s.X1-s.X0)*4
- if r.Op == draw.Over {
- for i := i0; i < i1; i += 4 {
- dr := uint32(r.Image.Pix[i+0])
- dg := uint32(r.Image.Pix[i+1])
- db := uint32(r.Image.Pix[i+2])
- da := uint32(r.Image.Pix[i+3])
- a := (m - (r.ca * ma / m)) * 0x101
- r.Image.Pix[i+0] = uint8((dr*a + r.cr*ma) / m >> 8)
- r.Image.Pix[i+1] = uint8((dg*a + r.cg*ma) / m >> 8)
- r.Image.Pix[i+2] = uint8((db*a + r.cb*ma) / m >> 8)
- r.Image.Pix[i+3] = uint8((da*a + r.ca*ma) / m >> 8)
- }
- } else {
- for i := i0; i < i1; i += 4 {
- r.Image.Pix[i+0] = uint8(r.cr * ma / m >> 8)
- r.Image.Pix[i+1] = uint8(r.cg * ma / m >> 8)
- r.Image.Pix[i+2] = uint8(r.cb * ma / m >> 8)
- r.Image.Pix[i+3] = uint8(r.ca * ma / m >> 8)
- }
- }
- }
-}
-
-// SetColor sets the color to paint the spans.
-func (r *RGBAPainter) SetColor(c color.Color) {
- r.cr, r.cg, r.cb, r.ca = c.RGBA()
-}
-
-// NewRGBAPainter creates a new RGBAPainter for the given image.
-func NewRGBAPainter(m *image.RGBA) *RGBAPainter {
- return &RGBAPainter{Image: m}
-}
-
-// A MonochromePainter wraps another Painter, quantizing each Span's alpha to
-// be either fully opaque or fully transparent.
-type MonochromePainter struct {
- Painter Painter
- y, x0, x1 int
-}
-
-// Paint delegates to the wrapped Painter after quantizing each Span's alpha
-// value and merging adjacent fully opaque Spans.
-func (m *MonochromePainter) Paint(ss []Span, done bool) {
- // We compact the ss slice, discarding any Spans whose alpha quantizes to zero.
- j := 0
- for _, s := range ss {
- if s.A >= 1<<31 {
- if m.y == s.Y && m.x1 == s.X0 {
- m.x1 = s.X1
- } else {
- ss[j] = Span{m.y, m.x0, m.x1, 1<<32 - 1}
- j++
- m.y, m.x0, m.x1 = s.Y, s.X0, s.X1
- }
- }
- }
- if done {
- // Flush the accumulated Span.
- finalSpan := Span{m.y, m.x0, m.x1, 1<<32 - 1}
- if j < len(ss) {
- ss[j] = finalSpan
- j++
- m.Painter.Paint(ss[:j], true)
- } else if j == len(ss) {
- m.Painter.Paint(ss, false)
- if cap(ss) > 0 {
- ss = ss[:1]
- } else {
- ss = make([]Span, 1)
- }
- ss[0] = finalSpan
- m.Painter.Paint(ss, true)
- } else {
- panic("unreachable")
- }
- // Reset the accumulator, so that this Painter can be re-used.
- m.y, m.x0, m.x1 = 0, 0, 0
- } else {
- m.Painter.Paint(ss[:j], false)
- }
-}
-
-// NewMonochromePainter creates a new MonochromePainter that wraps the given
-// Painter.
-func NewMonochromePainter(p Painter) *MonochromePainter {
- return &MonochromePainter{Painter: p}
-}
-
-// A GammaCorrectionPainter wraps another Painter, performing gamma-correction
-// on each Span's alpha value.
-type GammaCorrectionPainter struct {
- // The wrapped Painter.
- Painter Painter
- // Precomputed alpha values for linear interpolation, with fully opaque == 1<<16-1.
- a [256]uint16
- // Whether gamma correction is a no-op.
- gammaIsOne bool
-}
-
-// Paint delegates to the wrapped Painter after performing gamma-correction
-// on each Span.
-func (g *GammaCorrectionPainter) Paint(ss []Span, done bool) {
- if !g.gammaIsOne {
- const (
- M = 0x1010101 // 255*M == 1<<32-1
- N = 0x8080 // N = M>>9, and N < 1<<16-1
- )
- for i, s := range ss {
- if s.A == 0 || s.A == 1<<32-1 {
- continue
- }
- p, q := s.A/M, (s.A%M)>>9
- // The resultant alpha is a linear interpolation of g.a[p] and g.a[p+1].
- a := uint32(g.a[p])*(N-q) + uint32(g.a[p+1])*q
- a = (a + N/2) / N
- // Convert the alpha from 16-bit (which is g.a's range) to 32-bit.
- a |= a << 16
- ss[i].A = a
- }
- }
- g.Painter.Paint(ss, done)
-}
-
-// SetGamma sets the gamma value.
-func (g *GammaCorrectionPainter) SetGamma(gamma float64) {
- if gamma == 1.0 {
- g.gammaIsOne = true
- return
- }
- g.gammaIsOne = false
- for i := 0; i < 256; i++ {
- a := float64(i) / 0xff
- a = math.Pow(a, gamma)
- g.a[i] = uint16(0xffff * a)
- }
-}
-
-// NewGammaCorrectionPainter creates a new GammaCorrectionPainter that wraps
-// the given Painter.
-func NewGammaCorrectionPainter(p Painter, gamma float64) *GammaCorrectionPainter {
- g := &GammaCorrectionPainter{Painter: p}
- g.SetGamma(gamma)
- return g
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/raster.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/raster.go
deleted file mode 100644
index 45af7eaa2..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/raster.go
+++ /dev/null
@@ -1,579 +0,0 @@
-// Copyright 2010 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-// The raster package provides an anti-aliasing 2-D rasterizer.
-//
-// It is part of the larger Freetype-Go suite of font-related packages,
-// but the raster package is not specific to font rasterization, and can
-// be used standalone without any other Freetype-Go package.
-//
-// Rasterization is done by the same area/coverage accumulation algorithm
-// as the Freetype "smooth" module, and the Anti-Grain Geometry library.
-// A description of the area/coverage algorithm is at
-// http://projects.tuxee.net/cl-vectors/section-the-cl-aa-algorithm
-package raster
-
-import (
- "strconv"
-)
-
-// A cell is part of a linked list (for a given yi co-ordinate) of accumulated
-// area/coverage for the pixel at (xi, yi).
-type cell struct {
- xi int
- area, cover int
- next int
-}
-
-type Rasterizer struct {
- // If false, the default behavior is to use the even-odd winding fill
- // rule during Rasterize.
- UseNonZeroWinding bool
- // An offset (in pixels) to the painted spans.
- Dx, Dy int
-
- // The width of the Rasterizer. The height is implicit in len(cellIndex).
- width int
- // splitScaleN is the scaling factor used to determine how many times
- // to decompose a quadratic or cubic segment into a linear approximation.
- splitScale2, splitScale3 int
-
- // The current pen position.
- a Point
- // The current cell and its area/coverage being accumulated.
- xi, yi int
- area, cover int
-
- // Saved cells.
- cell []cell
- // Linked list of cells, one per row.
- cellIndex []int
- // Buffers.
- cellBuf [256]cell
- cellIndexBuf [64]int
- spanBuf [64]Span
-}
-
-// findCell returns the index in r.cell for the cell corresponding to
-// (r.xi, r.yi). The cell is created if necessary.
-func (r *Rasterizer) findCell() int {
- if r.yi < 0 || r.yi >= len(r.cellIndex) {
- return -1
- }
- xi := r.xi
- if xi < 0 {
- xi = -1
- } else if xi > r.width {
- xi = r.width
- }
- i, prev := r.cellIndex[r.yi], -1
- for i != -1 && r.cell[i].xi <= xi {
- if r.cell[i].xi == xi {
- return i
- }
- i, prev = r.cell[i].next, i
- }
- c := len(r.cell)
- if c == cap(r.cell) {
- buf := make([]cell, c, 4*c)
- copy(buf, r.cell)
- r.cell = buf[0 : c+1]
- } else {
- r.cell = r.cell[0 : c+1]
- }
- r.cell[c] = cell{xi, 0, 0, i}
- if prev == -1 {
- r.cellIndex[r.yi] = c
- } else {
- r.cell[prev].next = c
- }
- return c
-}
-
-// saveCell saves any accumulated r.area/r.cover for (r.xi, r.yi).
-func (r *Rasterizer) saveCell() {
- if r.area != 0 || r.cover != 0 {
- i := r.findCell()
- if i != -1 {
- r.cell[i].area += r.area
- r.cell[i].cover += r.cover
- }
- r.area = 0
- r.cover = 0
- }
-}
-
-// setCell sets the (xi, yi) cell that r is accumulating area/coverage for.
-func (r *Rasterizer) setCell(xi, yi int) {
- if r.xi != xi || r.yi != yi {
- r.saveCell()
- r.xi, r.yi = xi, yi
- }
-}
-
-// scan accumulates area/coverage for the yi'th scanline, going from
-// x0 to x1 in the horizontal direction (in 24.8 fixed point co-ordinates)
-// and from y0f to y1f fractional vertical units within that scanline.
-func (r *Rasterizer) scan(yi int, x0, y0f, x1, y1f Fix32) {
- // Break the 24.8 fixed point X co-ordinates into integral and fractional parts.
- x0i := int(x0) / 256
- x0f := x0 - Fix32(256*x0i)
- x1i := int(x1) / 256
- x1f := x1 - Fix32(256*x1i)
-
- // A perfectly horizontal scan.
- if y0f == y1f {
- r.setCell(x1i, yi)
- return
- }
- dx, dy := x1-x0, y1f-y0f
- // A single cell scan.
- if x0i == x1i {
- r.area += int((x0f + x1f) * dy)
- r.cover += int(dy)
- return
- }
- // There are at least two cells. Apart from the first and last cells,
- // all intermediate cells go through the full width of the cell,
- // or 256 units in 24.8 fixed point format.
- var (
- p, q, edge0, edge1 Fix32
- xiDelta int
- )
- if dx > 0 {
- p, q = (256-x0f)*dy, dx
- edge0, edge1, xiDelta = 0, 256, 1
- } else {
- p, q = x0f*dy, -dx
- edge0, edge1, xiDelta = 256, 0, -1
- }
- yDelta, yRem := p/q, p%q
- if yRem < 0 {
- yDelta -= 1
- yRem += q
- }
- // Do the first cell.
- xi, y := x0i, y0f
- r.area += int((x0f + edge1) * yDelta)
- r.cover += int(yDelta)
- xi, y = xi+xiDelta, y+yDelta
- r.setCell(xi, yi)
- if xi != x1i {
- // Do all the intermediate cells.
- p = 256 * (y1f - y + yDelta)
- fullDelta, fullRem := p/q, p%q
- if fullRem < 0 {
- fullDelta -= 1
- fullRem += q
- }
- yRem -= q
- for xi != x1i {
- yDelta = fullDelta
- yRem += fullRem
- if yRem >= 0 {
- yDelta += 1
- yRem -= q
- }
- r.area += int(256 * yDelta)
- r.cover += int(yDelta)
- xi, y = xi+xiDelta, y+yDelta
- r.setCell(xi, yi)
- }
- }
- // Do the last cell.
- yDelta = y1f - y
- r.area += int((edge0 + x1f) * yDelta)
- r.cover += int(yDelta)
-}
-
-// Start starts a new curve at the given point.
-func (r *Rasterizer) Start(a Point) {
- r.setCell(int(a.X/256), int(a.Y/256))
- r.a = a
-}
-
-// Add1 adds a linear segment to the current curve.
-func (r *Rasterizer) Add1(b Point) {
- x0, y0 := r.a.X, r.a.Y
- x1, y1 := b.X, b.Y
- dx, dy := x1-x0, y1-y0
- // Break the 24.8 fixed point Y co-ordinates into integral and fractional parts.
- y0i := int(y0) / 256
- y0f := y0 - Fix32(256*y0i)
- y1i := int(y1) / 256
- y1f := y1 - Fix32(256*y1i)
-
- if y0i == y1i {
- // There is only one scanline.
- r.scan(y0i, x0, y0f, x1, y1f)
-
- } else if dx == 0 {
- // This is a vertical line segment. We avoid calling r.scan and instead
- // manipulate r.area and r.cover directly.
- var (
- edge0, edge1 Fix32
- yiDelta int
- )
- if dy > 0 {
- edge0, edge1, yiDelta = 0, 256, 1
- } else {
- edge0, edge1, yiDelta = 256, 0, -1
- }
- x0i, yi := int(x0)/256, y0i
- x0fTimes2 := (int(x0) - (256 * x0i)) * 2
- // Do the first pixel.
- dcover := int(edge1 - y0f)
- darea := int(x0fTimes2 * dcover)
- r.area += darea
- r.cover += dcover
- yi += yiDelta
- r.setCell(x0i, yi)
- // Do all the intermediate pixels.
- dcover = int(edge1 - edge0)
- darea = int(x0fTimes2 * dcover)
- for yi != y1i {
- r.area += darea
- r.cover += dcover
- yi += yiDelta
- r.setCell(x0i, yi)
- }
- // Do the last pixel.
- dcover = int(y1f - edge0)
- darea = int(x0fTimes2 * dcover)
- r.area += darea
- r.cover += dcover
-
- } else {
- // There are at least two scanlines. Apart from the first and last scanlines,
- // all intermediate scanlines go through the full height of the row, or 256
- // units in 24.8 fixed point format.
- var (
- p, q, edge0, edge1 Fix32
- yiDelta int
- )
- if dy > 0 {
- p, q = (256-y0f)*dx, dy
- edge0, edge1, yiDelta = 0, 256, 1
- } else {
- p, q = y0f*dx, -dy
- edge0, edge1, yiDelta = 256, 0, -1
- }
- xDelta, xRem := p/q, p%q
- if xRem < 0 {
- xDelta -= 1
- xRem += q
- }
- // Do the first scanline.
- x, yi := x0, y0i
- r.scan(yi, x, y0f, x+xDelta, edge1)
- x, yi = x+xDelta, yi+yiDelta
- r.setCell(int(x)/256, yi)
- if yi != y1i {
- // Do all the intermediate scanlines.
- p = 256 * dx
- fullDelta, fullRem := p/q, p%q
- if fullRem < 0 {
- fullDelta -= 1
- fullRem += q
- }
- xRem -= q
- for yi != y1i {
- xDelta = fullDelta
- xRem += fullRem
- if xRem >= 0 {
- xDelta += 1
- xRem -= q
- }
- r.scan(yi, x, edge0, x+xDelta, edge1)
- x, yi = x+xDelta, yi+yiDelta
- r.setCell(int(x)/256, yi)
- }
- }
- // Do the last scanline.
- r.scan(yi, x, edge0, x1, y1f)
- }
- // The next lineTo starts from b.
- r.a = b
-}
-
-// Add2 adds a quadratic segment to the current curve.
-func (r *Rasterizer) Add2(b, c Point) {
- // Calculate nSplit (the number of recursive decompositions) based on how `curvy' it is.
- // Specifically, how much the middle point b deviates from (a+c)/2.
- dev := maxAbs(r.a.X-2*b.X+c.X, r.a.Y-2*b.Y+c.Y) / Fix32(r.splitScale2)
- nsplit := 0
- for dev > 0 {
- dev /= 4
- nsplit++
- }
- // dev is 32-bit, and nsplit++ every time we shift off 2 bits, so maxNsplit is 16.
- const maxNsplit = 16
- if nsplit > maxNsplit {
- panic("freetype/raster: Add2 nsplit too large: " + strconv.Itoa(nsplit))
- }
- // Recursively decompose the curve nSplit levels deep.
- var (
- pStack [2*maxNsplit + 3]Point
- sStack [maxNsplit + 1]int
- i int
- )
- sStack[0] = nsplit
- pStack[0] = c
- pStack[1] = b
- pStack[2] = r.a
- for i >= 0 {
- s := sStack[i]
- p := pStack[2*i:]
- if s > 0 {
- // Split the quadratic curve p[:3] into an equivalent set of two shorter curves:
- // p[:3] and p[2:5]. The new p[4] is the old p[2], and p[0] is unchanged.
- mx := p[1].X
- p[4].X = p[2].X
- p[3].X = (p[4].X + mx) / 2
- p[1].X = (p[0].X + mx) / 2
- p[2].X = (p[1].X + p[3].X) / 2
- my := p[1].Y
- p[4].Y = p[2].Y
- p[3].Y = (p[4].Y + my) / 2
- p[1].Y = (p[0].Y + my) / 2
- p[2].Y = (p[1].Y + p[3].Y) / 2
- // The two shorter curves have one less split to do.
- sStack[i] = s - 1
- sStack[i+1] = s - 1
- i++
- } else {
- // Replace the level-0 quadratic with a two-linear-piece approximation.
- midx := (p[0].X + 2*p[1].X + p[2].X) / 4
- midy := (p[0].Y + 2*p[1].Y + p[2].Y) / 4
- r.Add1(Point{midx, midy})
- r.Add1(p[0])
- i--
- }
- }
-}
-
-// Add3 adds a cubic segment to the current curve.
-func (r *Rasterizer) Add3(b, c, d Point) {
- // Calculate nSplit (the number of recursive decompositions) based on how `curvy' it is.
- dev2 := maxAbs(r.a.X-3*(b.X+c.X)+d.X, r.a.Y-3*(b.Y+c.Y)+d.Y) / Fix32(r.splitScale2)
- dev3 := maxAbs(r.a.X-2*b.X+d.X, r.a.Y-2*b.Y+d.Y) / Fix32(r.splitScale3)
- nsplit := 0
- for dev2 > 0 || dev3 > 0 {
- dev2 /= 8
- dev3 /= 4
- nsplit++
- }
- // devN is 32-bit, and nsplit++ every time we shift off 2 bits, so maxNsplit is 16.
- const maxNsplit = 16
- if nsplit > maxNsplit {
- panic("freetype/raster: Add3 nsplit too large: " + strconv.Itoa(nsplit))
- }
- // Recursively decompose the curve nSplit levels deep.
- var (
- pStack [3*maxNsplit + 4]Point
- sStack [maxNsplit + 1]int
- i int
- )
- sStack[0] = nsplit
- pStack[0] = d
- pStack[1] = c
- pStack[2] = b
- pStack[3] = r.a
- for i >= 0 {
- s := sStack[i]
- p := pStack[3*i:]
- if s > 0 {
- // Split the cubic curve p[:4] into an equivalent set of two shorter curves:
- // p[:4] and p[3:7]. The new p[6] is the old p[3], and p[0] is unchanged.
- m01x := (p[0].X + p[1].X) / 2
- m12x := (p[1].X + p[2].X) / 2
- m23x := (p[2].X + p[3].X) / 2
- p[6].X = p[3].X
- p[5].X = m23x
- p[1].X = m01x
- p[2].X = (m01x + m12x) / 2
- p[4].X = (m12x + m23x) / 2
- p[3].X = (p[2].X + p[4].X) / 2
- m01y := (p[0].Y + p[1].Y) / 2
- m12y := (p[1].Y + p[2].Y) / 2
- m23y := (p[2].Y + p[3].Y) / 2
- p[6].Y = p[3].Y
- p[5].Y = m23y
- p[1].Y = m01y
- p[2].Y = (m01y + m12y) / 2
- p[4].Y = (m12y + m23y) / 2
- p[3].Y = (p[2].Y + p[4].Y) / 2
- // The two shorter curves have one less split to do.
- sStack[i] = s - 1
- sStack[i+1] = s - 1
- i++
- } else {
- // Replace the level-0 cubic with a two-linear-piece approximation.
- midx := (p[0].X + 3*(p[1].X+p[2].X) + p[3].X) / 8
- midy := (p[0].Y + 3*(p[1].Y+p[2].Y) + p[3].Y) / 8
- r.Add1(Point{midx, midy})
- r.Add1(p[0])
- i--
- }
- }
-}
-
-// AddPath adds the given Path.
-func (r *Rasterizer) AddPath(p Path) {
- for i := 0; i < len(p); {
- switch p[i] {
- case 0:
- r.Start(Point{p[i+1], p[i+2]})
- i += 4
- case 1:
- r.Add1(Point{p[i+1], p[i+2]})
- i += 4
- case 2:
- r.Add2(Point{p[i+1], p[i+2]}, Point{p[i+3], p[i+4]})
- i += 6
- case 3:
- r.Add3(Point{p[i+1], p[i+2]}, Point{p[i+3], p[i+4]}, Point{p[i+5], p[i+6]})
- i += 8
- default:
- panic("freetype/raster: bad path")
- }
- }
-}
-
-// AddStroke adds a stroked Path.
-func (r *Rasterizer) AddStroke(q Path, width Fix32, cr Capper, jr Joiner) {
- Stroke(r, q, width, cr, jr)
-}
-
-// Converts an area value to a uint32 alpha value. A completely filled pixel
-// corresponds to an area of 256*256*2, and an alpha of 1<<32-1. The
-// conversion of area values greater than this depends on the winding rule:
-// even-odd or non-zero.
-func (r *Rasterizer) areaToAlpha(area int) uint32 {
- // The C Freetype implementation (version 2.3.12) does "alpha := area>>1" without
- // the +1. Round-to-nearest gives a more symmetric result than round-down.
- // The C implementation also returns 8-bit alpha, not 32-bit alpha.
- a := (area + 1) >> 1
- if a < 0 {
- a = -a
- }
- alpha := uint32(a)
- if r.UseNonZeroWinding {
- if alpha > 0xffff {
- alpha = 0xffff
- }
- } else {
- alpha &= 0x1ffff
- if alpha > 0x10000 {
- alpha = 0x20000 - alpha
- } else if alpha == 0x10000 {
- alpha = 0x0ffff
- }
- }
- alpha |= alpha << 16
- return alpha
-}
-
-// Rasterize converts r's accumulated curves into Spans for p. The Spans
-// passed to p are non-overlapping, and sorted by Y and then X. They all
-// have non-zero width (and 0 <= X0 < X1 <= r.width) and non-zero A, except
-// for the final Span, which has Y, X0, X1 and A all equal to zero.
-func (r *Rasterizer) Rasterize(p Painter) {
- r.saveCell()
- s := 0
- for yi := 0; yi < len(r.cellIndex); yi++ {
- xi, cover := 0, 0
- for c := r.cellIndex[yi]; c != -1; c = r.cell[c].next {
- if cover != 0 && r.cell[c].xi > xi {
- alpha := r.areaToAlpha(cover * 256 * 2)
- if alpha != 0 {
- xi0, xi1 := xi, r.cell[c].xi
- if xi0 < 0 {
- xi0 = 0
- }
- if xi1 >= r.width {
- xi1 = r.width
- }
- if xi0 < xi1 {
- r.spanBuf[s] = Span{yi + r.Dy, xi0 + r.Dx, xi1 + r.Dx, alpha}
- s++
- }
- }
- }
- cover += r.cell[c].cover
- alpha := r.areaToAlpha(cover*256*2 - r.cell[c].area)
- xi = r.cell[c].xi + 1
- if alpha != 0 {
- xi0, xi1 := r.cell[c].xi, xi
- if xi0 < 0 {
- xi0 = 0
- }
- if xi1 >= r.width {
- xi1 = r.width
- }
- if xi0 < xi1 {
- r.spanBuf[s] = Span{yi + r.Dy, xi0 + r.Dx, xi1 + r.Dx, alpha}
- s++
- }
- }
- if s > len(r.spanBuf)-2 {
- p.Paint(r.spanBuf[:s], false)
- s = 0
- }
- }
- }
- p.Paint(r.spanBuf[:s], true)
-}
-
-// Clear cancels any previous calls to r.Start or r.AddXxx.
-func (r *Rasterizer) Clear() {
- r.a = Point{}
- r.xi = 0
- r.yi = 0
- r.area = 0
- r.cover = 0
- r.cell = r.cell[:0]
- for i := 0; i < len(r.cellIndex); i++ {
- r.cellIndex[i] = -1
- }
-}
-
-// SetBounds sets the maximum width and height of the rasterized image and
-// calls Clear. The width and height are in pixels, not Fix32 units.
-func (r *Rasterizer) SetBounds(width, height int) {
- if width < 0 {
- width = 0
- }
- if height < 0 {
- height = 0
- }
- // Use the same ssN heuristic as the C Freetype implementation.
- // The C implementation uses the values 32, 16, but those are in
- // 26.6 fixed point units, and we use 24.8 fixed point everywhere.
- ss2, ss3 := 128, 64
- if width > 24 || height > 24 {
- ss2, ss3 = 2*ss2, 2*ss3
- if width > 120 || height > 120 {
- ss2, ss3 = 2*ss2, 2*ss3
- }
- }
- r.width = width
- r.splitScale2 = ss2
- r.splitScale3 = ss3
- r.cell = r.cellBuf[:0]
- if height > len(r.cellIndexBuf) {
- r.cellIndex = make([]int, height)
- } else {
- r.cellIndex = r.cellIndexBuf[:height]
- }
- r.Clear()
-}
-
-// NewRasterizer creates a new Rasterizer with the given bounds.
-func NewRasterizer(width, height int) *Rasterizer {
- r := new(Rasterizer)
- r.SetBounds(width, height)
- return r
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/stroke.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/stroke.go
deleted file mode 100644
index d49b1cee9..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/raster/stroke.go
+++ /dev/null
@@ -1,466 +0,0 @@
-// Copyright 2010 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package raster
-
-// Two points are considered practically equal if the square of the distance
-// between them is less than one quarter (i.e. 16384 / 65536 in Fix64).
-const epsilon = 16384
-
-// A Capper signifies how to begin or end a stroked path.
-type Capper interface {
- // Cap adds a cap to p given a pivot point and the normal vector of a
- // terminal segment. The normal's length is half of the stroke width.
- Cap(p Adder, halfWidth Fix32, pivot, n1 Point)
-}
-
-// The CapperFunc type adapts an ordinary function to be a Capper.
-type CapperFunc func(Adder, Fix32, Point, Point)
-
-func (f CapperFunc) Cap(p Adder, halfWidth Fix32, pivot, n1 Point) {
- f(p, halfWidth, pivot, n1)
-}
-
-// A Joiner signifies how to join interior nodes of a stroked path.
-type Joiner interface {
- // Join adds a join to the two sides of a stroked path given a pivot
- // point and the normal vectors of the trailing and leading segments.
- // Both normals have length equal to half of the stroke width.
- Join(lhs, rhs Adder, halfWidth Fix32, pivot, n0, n1 Point)
-}
-
-// The JoinerFunc type adapts an ordinary function to be a Joiner.
-type JoinerFunc func(lhs, rhs Adder, halfWidth Fix32, pivot, n0, n1 Point)
-
-func (f JoinerFunc) Join(lhs, rhs Adder, halfWidth Fix32, pivot, n0, n1 Point) {
- f(lhs, rhs, halfWidth, pivot, n0, n1)
-}
-
-// RoundCapper adds round caps to a stroked path.
-var RoundCapper Capper = CapperFunc(roundCapper)
-
-func roundCapper(p Adder, halfWidth Fix32, pivot, n1 Point) {
- // The cubic Bézier approximation to a circle involves the magic number
- // (√2 - 1) * 4/3, which is approximately 141/256.
- const k = 141
- e := n1.Rot90CCW()
- side := pivot.Add(e)
- start, end := pivot.Sub(n1), pivot.Add(n1)
- d, e := n1.Mul(k), e.Mul(k)
- p.Add3(start.Add(e), side.Sub(d), side)
- p.Add3(side.Add(d), end.Add(e), end)
-}
-
-// ButtCapper adds butt caps to a stroked path.
-var ButtCapper Capper = CapperFunc(buttCapper)
-
-func buttCapper(p Adder, halfWidth Fix32, pivot, n1 Point) {
- p.Add1(pivot.Add(n1))
-}
-
-// SquareCapper adds square caps to a stroked path.
-var SquareCapper Capper = CapperFunc(squareCapper)
-
-func squareCapper(p Adder, halfWidth Fix32, pivot, n1 Point) {
- e := n1.Rot90CCW()
- side := pivot.Add(e)
- p.Add1(side.Sub(n1))
- p.Add1(side.Add(n1))
- p.Add1(pivot.Add(n1))
-}
-
-// RoundJoiner adds round joins to a stroked path.
-var RoundJoiner Joiner = JoinerFunc(roundJoiner)
-
-func roundJoiner(lhs, rhs Adder, haflWidth Fix32, pivot, n0, n1 Point) {
- dot := n0.Rot90CW().Dot(n1)
- if dot >= 0 {
- addArc(lhs, pivot, n0, n1)
- rhs.Add1(pivot.Sub(n1))
- } else {
- lhs.Add1(pivot.Add(n1))
- addArc(rhs, pivot, n0.Neg(), n1.Neg())
- }
-}
-
-// BevelJoiner adds bevel joins to a stroked path.
-var BevelJoiner Joiner = JoinerFunc(bevelJoiner)
-
-func bevelJoiner(lhs, rhs Adder, haflWidth Fix32, pivot, n0, n1 Point) {
- lhs.Add1(pivot.Add(n1))
- rhs.Add1(pivot.Sub(n1))
-}
-
-// addArc adds a circular arc from pivot+n0 to pivot+n1 to p. The shorter of
-// the two possible arcs is taken, i.e. the one spanning <= 180 degrees.
-// The two vectors n0 and n1 must be of equal length.
-func addArc(p Adder, pivot, n0, n1 Point) {
- // r2 is the square of the length of n0.
- r2 := n0.Dot(n0)
- if r2 < epsilon {
- // The arc radius is so small that we collapse to a straight line.
- p.Add1(pivot.Add(n1))
- return
- }
- // We approximate the arc by 0, 1, 2 or 3 45-degree quadratic segments plus
- // a final quadratic segment from s to n1. Each 45-degree segment has control
- // points {1, 0}, {1, tan(π/8)} and {1/√2, 1/√2} suitably scaled, rotated and
- // translated. tan(π/8) is approximately 106/256.
- const tpo8 = 106
- var s Point
- // We determine which octant the angle between n0 and n1 is in via three dot products.
- // m0, m1 and m2 are n0 rotated clockwise by 45, 90 and 135 degrees.
- m0 := n0.Rot45CW()
- m1 := n0.Rot90CW()
- m2 := m0.Rot90CW()
- if m1.Dot(n1) >= 0 {
- if n0.Dot(n1) >= 0 {
- if m2.Dot(n1) <= 0 {
- // n1 is between 0 and 45 degrees clockwise of n0.
- s = n0
- } else {
- // n1 is between 45 and 90 degrees clockwise of n0.
- p.Add2(pivot.Add(n0).Add(m1.Mul(tpo8)), pivot.Add(m0))
- s = m0
- }
- } else {
- pm1, n0t := pivot.Add(m1), n0.Mul(tpo8)
- p.Add2(pivot.Add(n0).Add(m1.Mul(tpo8)), pivot.Add(m0))
- p.Add2(pm1.Add(n0t), pm1)
- if m0.Dot(n1) >= 0 {
- // n1 is between 90 and 135 degrees clockwise of n0.
- s = m1
- } else {
- // n1 is between 135 and 180 degrees clockwise of n0.
- p.Add2(pm1.Sub(n0t), pivot.Add(m2))
- s = m2
- }
- }
- } else {
- if n0.Dot(n1) >= 0 {
- if m0.Dot(n1) >= 0 {
- // n1 is between 0 and 45 degrees counter-clockwise of n0.
- s = n0
- } else {
- // n1 is between 45 and 90 degrees counter-clockwise of n0.
- p.Add2(pivot.Add(n0).Sub(m1.Mul(tpo8)), pivot.Sub(m2))
- s = m2.Neg()
- }
- } else {
- pm1, n0t := pivot.Sub(m1), n0.Mul(tpo8)
- p.Add2(pivot.Add(n0).Sub(m1.Mul(tpo8)), pivot.Sub(m2))
- p.Add2(pm1.Add(n0t), pm1)
- if m2.Dot(n1) <= 0 {
- // n1 is between 90 and 135 degrees counter-clockwise of n0.
- s = m1.Neg()
- } else {
- // n1 is between 135 and 180 degrees counter-clockwise of n0.
- p.Add2(pm1.Sub(n0t), pivot.Sub(m0))
- s = m0.Neg()
- }
- }
- }
- // The final quadratic segment has two endpoints s and n1 and the middle
- // control point is a multiple of s.Add(n1), i.e. it is on the angle bisector
- // of those two points. The multiple ranges between 128/256 and 150/256 as
- // the angle between s and n1 ranges between 0 and 45 degrees.
- // When the angle is 0 degrees (i.e. s and n1 are coincident) then s.Add(n1)
- // is twice s and so the middle control point of the degenerate quadratic
- // segment should be half s.Add(n1), and half = 128/256.
- // When the angle is 45 degrees then 150/256 is the ratio of the lengths of
- // the two vectors {1, tan(π/8)} and {1 + 1/√2, 1/√2}.
- // d is the normalized dot product between s and n1. Since the angle ranges
- // between 0 and 45 degrees then d ranges between 256/256 and 181/256.
- d := 256 * s.Dot(n1) / r2
- multiple := Fix32(150 - 22*(d-181)/(256-181))
- p.Add2(pivot.Add(s.Add(n1).Mul(multiple)), pivot.Add(n1))
-}
-
-// midpoint returns the midpoint of two Points.
-func midpoint(a, b Point) Point {
- return Point{(a.X + b.X) / 2, (a.Y + b.Y) / 2}
-}
-
-// angleGreaterThan45 returns whether the angle between two vectors is more
-// than 45 degrees.
-func angleGreaterThan45(v0, v1 Point) bool {
- v := v0.Rot45CCW()
- return v.Dot(v1) < 0 || v.Rot90CW().Dot(v1) < 0
-}
-
-// interpolate returns the point (1-t)*a + t*b.
-func interpolate(a, b Point, t Fix64) Point {
- s := 65536 - t
- x := s*Fix64(a.X) + t*Fix64(b.X)
- y := s*Fix64(a.Y) + t*Fix64(b.Y)
- return Point{Fix32(x >> 16), Fix32(y >> 16)}
-}
-
-// curviest2 returns the value of t for which the quadratic parametric curve
-// (1-t)²*a + 2*t*(1-t).b + t²*c has maximum curvature.
-//
-// The curvature of the parametric curve f(t) = (x(t), y(t)) is
-// |x′y″-y′x″| / (x′²+y′²)^(3/2).
-//
-// Let d = b-a and e = c-2*b+a, so that f′(t) = 2*d+2*e*t and f″(t) = 2*e.
-// The curvature's numerator is (2*dx+2*ex*t)*(2*ey)-(2*dy+2*ey*t)*(2*ex),
-// which simplifies to 4*dx*ey-4*dy*ex, which is constant with respect to t.
-//
-// Thus, curvature is extreme where the denominator is extreme, i.e. where
-// (x′²+y′²) is extreme. The first order condition is that
-// 2*x′*x″+2*y′*y″ = 0, or (dx+ex*t)*ex + (dy+ey*t)*ey = 0.
-// Solving for t gives t = -(dx*ex+dy*ey) / (ex*ex+ey*ey).
-func curviest2(a, b, c Point) Fix64 {
- dx := int64(b.X - a.X)
- dy := int64(b.Y - a.Y)
- ex := int64(c.X - 2*b.X + a.X)
- ey := int64(c.Y - 2*b.Y + a.Y)
- if ex == 0 && ey == 0 {
- return 32768
- }
- return Fix64(-65536 * (dx*ex + dy*ey) / (ex*ex + ey*ey))
-}
-
-// A stroker holds state for stroking a path.
-type stroker struct {
- // p is the destination that records the stroked path.
- p Adder
- // u is the half-width of the stroke.
- u Fix32
- // cr and jr specify how to end and connect path segments.
- cr Capper
- jr Joiner
- // r is the reverse path. Stroking a path involves constructing two
- // parallel paths 2*u apart. The first path is added immediately to p,
- // the second path is accumulated in r and eventually added in reverse.
- r Path
- // a is the most recent segment point. anorm is the segment normal of
- // length u at that point.
- a, anorm Point
-}
-
-// addNonCurvy2 adds a quadratic segment to the stroker, where the segment
-// defined by (k.a, b, c) achieves maximum curvature at either k.a or c.
-func (k *stroker) addNonCurvy2(b, c Point) {
- // We repeatedly divide the segment at its middle until it is straight
- // enough to approximate the stroke by just translating the control points.
- // ds and ps are stacks of depths and points. t is the top of the stack.
- const maxDepth = 5
- var (
- ds [maxDepth + 1]int
- ps [2*maxDepth + 3]Point
- t int
- )
- // Initially the ps stack has one quadratic segment of depth zero.
- ds[0] = 0
- ps[2] = k.a
- ps[1] = b
- ps[0] = c
- anorm := k.anorm
- var cnorm Point
-
- for {
- depth := ds[t]
- a := ps[2*t+2]
- b := ps[2*t+1]
- c := ps[2*t+0]
- ab := b.Sub(a)
- bc := c.Sub(b)
- abIsSmall := ab.Dot(ab) < Fix64(1<<16)
- bcIsSmall := bc.Dot(bc) < Fix64(1<<16)
- if abIsSmall && bcIsSmall {
- // Approximate the segment by a circular arc.
- cnorm = bc.Norm(k.u).Rot90CCW()
- mac := midpoint(a, c)
- addArc(k.p, mac, anorm, cnorm)
- addArc(&k.r, mac, anorm.Neg(), cnorm.Neg())
- } else if depth < maxDepth && angleGreaterThan45(ab, bc) {
- // Divide the segment in two and push both halves on the stack.
- mab := midpoint(a, b)
- mbc := midpoint(b, c)
- t++
- ds[t+0] = depth + 1
- ds[t-1] = depth + 1
- ps[2*t+2] = a
- ps[2*t+1] = mab
- ps[2*t+0] = midpoint(mab, mbc)
- ps[2*t-1] = mbc
- continue
- } else {
- // Translate the control points.
- bnorm := c.Sub(a).Norm(k.u).Rot90CCW()
- cnorm = bc.Norm(k.u).Rot90CCW()
- k.p.Add2(b.Add(bnorm), c.Add(cnorm))
- k.r.Add2(b.Sub(bnorm), c.Sub(cnorm))
- }
- if t == 0 {
- k.a, k.anorm = c, cnorm
- return
- }
- t--
- anorm = cnorm
- }
- panic("unreachable")
-}
-
-// Add1 adds a linear segment to the stroker.
-func (k *stroker) Add1(b Point) {
- bnorm := b.Sub(k.a).Norm(k.u).Rot90CCW()
- if len(k.r) == 0 {
- k.p.Start(k.a.Add(bnorm))
- k.r.Start(k.a.Sub(bnorm))
- } else {
- k.jr.Join(k.p, &k.r, k.u, k.a, k.anorm, bnorm)
- }
- k.p.Add1(b.Add(bnorm))
- k.r.Add1(b.Sub(bnorm))
- k.a, k.anorm = b, bnorm
-}
-
-// Add2 adds a quadratic segment to the stroker.
-func (k *stroker) Add2(b, c Point) {
- ab := b.Sub(k.a)
- bc := c.Sub(b)
- abnorm := ab.Norm(k.u).Rot90CCW()
- if len(k.r) == 0 {
- k.p.Start(k.a.Add(abnorm))
- k.r.Start(k.a.Sub(abnorm))
- } else {
- k.jr.Join(k.p, &k.r, k.u, k.a, k.anorm, abnorm)
- }
-
- // Approximate nearly-degenerate quadratics by linear segments.
- abIsSmall := ab.Dot(ab) < epsilon
- bcIsSmall := bc.Dot(bc) < epsilon
- if abIsSmall || bcIsSmall {
- acnorm := c.Sub(k.a).Norm(k.u).Rot90CCW()
- k.p.Add1(c.Add(acnorm))
- k.r.Add1(c.Sub(acnorm))
- k.a, k.anorm = c, acnorm
- return
- }
-
- // The quadratic segment (k.a, b, c) has a point of maximum curvature.
- // If this occurs at an end point, we process the segment as a whole.
- t := curviest2(k.a, b, c)
- if t <= 0 || t >= 65536 {
- k.addNonCurvy2(b, c)
- return
- }
-
- // Otherwise, we perform a de Casteljau decomposition at the point of
- // maximum curvature and process the two straighter parts.
- mab := interpolate(k.a, b, t)
- mbc := interpolate(b, c, t)
- mabc := interpolate(mab, mbc, t)
-
- // If the vectors ab and bc are close to being in opposite directions,
- // then the decomposition can become unstable, so we approximate the
- // quadratic segment by two linear segments joined by an arc.
- bcnorm := bc.Norm(k.u).Rot90CCW()
- if abnorm.Dot(bcnorm) < -Fix64(k.u)*Fix64(k.u)*2047/2048 {
- pArc := abnorm.Dot(bc) < 0
-
- k.p.Add1(mabc.Add(abnorm))
- if pArc {
- z := abnorm.Rot90CW()
- addArc(k.p, mabc, abnorm, z)
- addArc(k.p, mabc, z, bcnorm)
- }
- k.p.Add1(mabc.Add(bcnorm))
- k.p.Add1(c.Add(bcnorm))
-
- k.r.Add1(mabc.Sub(abnorm))
- if !pArc {
- z := abnorm.Rot90CW()
- addArc(&k.r, mabc, abnorm.Neg(), z)
- addArc(&k.r, mabc, z, bcnorm.Neg())
- }
- k.r.Add1(mabc.Sub(bcnorm))
- k.r.Add1(c.Sub(bcnorm))
-
- k.a, k.anorm = c, bcnorm
- return
- }
-
- // Process the decomposed parts.
- k.addNonCurvy2(mab, mabc)
- k.addNonCurvy2(mbc, c)
-}
-
-// Add3 adds a cubic segment to the stroker.
-func (k *stroker) Add3(b, c, d Point) {
- panic("freetype/raster: stroke unimplemented for cubic segments")
-}
-
-// stroke adds the stroked Path q to p, where q consists of exactly one curve.
-func (k *stroker) stroke(q Path) {
- // Stroking is implemented by deriving two paths each k.u apart from q.
- // The left-hand-side path is added immediately to k.p; the right-hand-side
- // path is accumulated in k.r. Once we've finished adding the LHS to k.p,
- // we add the RHS in reverse order.
- k.r = make(Path, 0, len(q))
- k.a = Point{q[1], q[2]}
- for i := 4; i < len(q); {
- switch q[i] {
- case 1:
- k.Add1(Point{q[i+1], q[i+2]})
- i += 4
- case 2:
- k.Add2(Point{q[i+1], q[i+2]}, Point{q[i+3], q[i+4]})
- i += 6
- case 3:
- k.Add3(Point{q[i+1], q[i+2]}, Point{q[i+3], q[i+4]}, Point{q[i+5], q[i+6]})
- i += 8
- default:
- panic("freetype/raster: bad path")
- }
- }
- if len(k.r) == 0 {
- return
- }
- // TODO(nigeltao): if q is a closed curve then we should join the first and
- // last segments instead of capping them.
- k.cr.Cap(k.p, k.u, q.lastPoint(), k.anorm.Neg())
- addPathReversed(k.p, k.r)
- pivot := q.firstPoint()
- k.cr.Cap(k.p, k.u, pivot, pivot.Sub(Point{k.r[1], k.r[2]}))
-}
-
-// Stroke adds q stroked with the given width to p. The result is typically
-// self-intersecting and should be rasterized with UseNonZeroWinding.
-// cr and jr may be nil, which defaults to a RoundCapper or RoundJoiner.
-func Stroke(p Adder, q Path, width Fix32, cr Capper, jr Joiner) {
- if len(q) == 0 {
- return
- }
- if cr == nil {
- cr = RoundCapper
- }
- if jr == nil {
- jr = RoundJoiner
- }
- if q[0] != 0 {
- panic("freetype/raster: bad path")
- }
- s := stroker{p: p, u: width / 2, cr: cr, jr: jr}
- i := 0
- for j := 4; j < len(q); {
- switch q[j] {
- case 0:
- s.stroke(q[i:j])
- i, j = j, j+4
- case 1:
- j += 4
- case 2:
- j += 6
- case 3:
- j += 8
- default:
- panic("freetype/raster: bad path")
- }
- }
- s.stroke(q[i:])
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/glyph.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/glyph.go
deleted file mode 100644
index b5f327851..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/glyph.go
+++ /dev/null
@@ -1,530 +0,0 @@
-// Copyright 2010 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package truetype
-
-// Hinting is the policy for snapping a glyph's contours to pixel boundaries.
-type Hinting int32
-
-const (
- // NoHinting means to not perform any hinting.
- NoHinting Hinting = iota
- // FullHinting means to use the font's hinting instructions.
- FullHinting
-
- // TODO: implement VerticalHinting.
-)
-
-// A Point is a co-ordinate pair plus whether it is ``on'' a contour or an
-// ``off'' control point.
-type Point struct {
- X, Y int32
- // The Flags' LSB means whether or not this Point is ``on'' the contour.
- // Other bits are reserved for internal use.
- Flags uint32
-}
-
-// A GlyphBuf holds a glyph's contours. A GlyphBuf can be re-used to load a
-// series of glyphs from a Font.
-type GlyphBuf struct {
- // AdvanceWidth is the glyph's advance width.
- AdvanceWidth int32
- // B is the glyph's bounding box.
- B Bounds
- // Point contains all Points from all contours of the glyph. If
- // hinting was used to load a glyph then Unhinted contains those
- // Points before they were hinted, and InFontUnits contains those
- // Points before they were hinted and scaled.
- Point, Unhinted, InFontUnits []Point
- // End is the point indexes of the end point of each countour. The
- // length of End is the number of contours in the glyph. The i'th
- // contour consists of points Point[End[i-1]:End[i]], where End[-1]
- // is interpreted to mean zero.
- End []int
-
- font *Font
- scale int32
- hinting Hinting
- hinter hinter
- // phantomPoints are the co-ordinates of the synthetic phantom points
- // used for hinting and bounding box calculations.
- phantomPoints [4]Point
- // pp1x is the X co-ordinate of the first phantom point. The '1' is
- // using 1-based indexing; pp1x is almost always phantomPoints[0].X.
- // TODO: eliminate this and consistently use phantomPoints[0].X.
- pp1x int32
- // metricsSet is whether the glyph's metrics have been set yet. For a
- // compound glyph, a sub-glyph may override the outer glyph's metrics.
- metricsSet bool
- // tmp is a scratch buffer.
- tmp []Point
-}
-
-// Flags for decoding a glyph's contours. These flags are documented at
-// http://developer.apple.com/fonts/TTRefMan/RM06/Chap6glyf.html.
-const (
- flagOnCurve = 1 << iota
- flagXShortVector
- flagYShortVector
- flagRepeat
- flagPositiveXShortVector
- flagPositiveYShortVector
-
- // The remaining flags are for internal use.
- flagTouchedX
- flagTouchedY
-)
-
-// The same flag bits (0x10 and 0x20) are overloaded to have two meanings,
-// dependent on the value of the flag{X,Y}ShortVector bits.
-const (
- flagThisXIsSame = flagPositiveXShortVector
- flagThisYIsSame = flagPositiveYShortVector
-)
-
-// Load loads a glyph's contours from a Font, overwriting any previously
-// loaded contours for this GlyphBuf. scale is the number of 26.6 fixed point
-// units in 1 em, i is the glyph index, and h is the hinting policy.
-func (g *GlyphBuf) Load(f *Font, scale int32, i Index, h Hinting) error {
- g.Point = g.Point[:0]
- g.Unhinted = g.Unhinted[:0]
- g.InFontUnits = g.InFontUnits[:0]
- g.End = g.End[:0]
- g.font = f
- g.hinting = h
- g.scale = scale
- g.pp1x = 0
- g.phantomPoints = [4]Point{}
- g.metricsSet = false
-
- if h != NoHinting {
- if err := g.hinter.init(f, scale); err != nil {
- return err
- }
- }
- if err := g.load(0, i, true); err != nil {
- return err
- }
- // TODO: this selection of either g.pp1x or g.phantomPoints[0].X isn't ideal,
- // and should be cleaned up once we have all the testScaling tests passing,
- // plus additional tests for Freetype-Go's bounding boxes matching C Freetype's.
- pp1x := g.pp1x
- if h != NoHinting {
- pp1x = g.phantomPoints[0].X
- }
- if pp1x != 0 {
- for i := range g.Point {
- g.Point[i].X -= pp1x
- }
- }
-
- advanceWidth := g.phantomPoints[1].X - g.phantomPoints[0].X
- if h != NoHinting {
- if len(f.hdmx) >= 8 {
- if n := u32(f.hdmx, 4); n > 3+uint32(i) {
- for hdmx := f.hdmx[8:]; uint32(len(hdmx)) >= n; hdmx = hdmx[n:] {
- if int32(hdmx[0]) == scale>>6 {
- advanceWidth = int32(hdmx[2+i]) << 6
- break
- }
- }
- }
- }
- advanceWidth = (advanceWidth + 32) &^ 63
- }
- g.AdvanceWidth = advanceWidth
-
- // Set g.B to the 'control box', which is the bounding box of the Bézier
- // curves' control points. This is easier to calculate, no smaller than
- // and often equal to the tightest possible bounding box of the curves
- // themselves. This approach is what C Freetype does. We can't just scale
- // the nominal bounding box in the glyf data as the hinting process and
- // phantom point adjustment may move points outside of that box.
- if len(g.Point) == 0 {
- g.B = Bounds{}
- } else {
- p := g.Point[0]
- g.B.XMin = p.X
- g.B.XMax = p.X
- g.B.YMin = p.Y
- g.B.YMax = p.Y
- for _, p := range g.Point[1:] {
- if g.B.XMin > p.X {
- g.B.XMin = p.X
- } else if g.B.XMax < p.X {
- g.B.XMax = p.X
- }
- if g.B.YMin > p.Y {
- g.B.YMin = p.Y
- } else if g.B.YMax < p.Y {
- g.B.YMax = p.Y
- }
- }
- // Snap the box to the grid, if hinting is on.
- if h != NoHinting {
- g.B.XMin &^= 63
- g.B.YMin &^= 63
- g.B.XMax += 63
- g.B.XMax &^= 63
- g.B.YMax += 63
- g.B.YMax &^= 63
- }
- }
- return nil
-}
-
-func (g *GlyphBuf) load(recursion int32, i Index, useMyMetrics bool) (err error) {
- // The recursion limit here is arbitrary, but defends against malformed glyphs.
- if recursion >= 32 {
- return UnsupportedError("excessive compound glyph recursion")
- }
- // Find the relevant slice of g.font.glyf.
- var g0, g1 uint32
- if g.font.locaOffsetFormat == locaOffsetFormatShort {
- g0 = 2 * uint32(u16(g.font.loca, 2*int(i)))
- g1 = 2 * uint32(u16(g.font.loca, 2*int(i)+2))
- } else {
- g0 = u32(g.font.loca, 4*int(i))
- g1 = u32(g.font.loca, 4*int(i)+4)
- }
-
- // Decode the contour count and nominal bounding box, from the first
- // 10 bytes of the glyf data. boundsYMin and boundsXMax, at offsets 4
- // and 6, are unused.
- glyf, ne, boundsXMin, boundsYMax := []byte(nil), 0, int32(0), int32(0)
- if g0+10 <= g1 {
- glyf = g.font.glyf[g0:g1]
- ne = int(int16(u16(glyf, 0)))
- boundsXMin = int32(int16(u16(glyf, 2)))
- boundsYMax = int32(int16(u16(glyf, 8)))
- }
-
- // Create the phantom points.
- uhm, pp1x := g.font.unscaledHMetric(i), int32(0)
- uvm := g.font.unscaledVMetric(i, boundsYMax)
- g.phantomPoints = [4]Point{
- {X: boundsXMin - uhm.LeftSideBearing},
- {X: boundsXMin - uhm.LeftSideBearing + uhm.AdvanceWidth},
- {X: uhm.AdvanceWidth / 2, Y: boundsYMax + uvm.TopSideBearing},
- {X: uhm.AdvanceWidth / 2, Y: boundsYMax + uvm.TopSideBearing - uvm.AdvanceHeight},
- }
- if len(glyf) == 0 {
- g.addPhantomsAndScale(len(g.Point), len(g.Point), true, true)
- copy(g.phantomPoints[:], g.Point[len(g.Point)-4:])
- g.Point = g.Point[:len(g.Point)-4]
- return nil
- }
-
- // Load and hint the contours.
- if ne < 0 {
- if ne != -1 {
- // http://developer.apple.com/fonts/TTRefMan/RM06/Chap6glyf.html says that
- // "the values -2, -3, and so forth, are reserved for future use."
- return UnsupportedError("negative number of contours")
- }
- pp1x = g.font.scale(g.scale * (boundsXMin - uhm.LeftSideBearing))
- if err := g.loadCompound(recursion, uhm, i, glyf, useMyMetrics); err != nil {
- return err
- }
- } else {
- np0, ne0 := len(g.Point), len(g.End)
- program := g.loadSimple(glyf, ne)
- g.addPhantomsAndScale(np0, np0, true, true)
- pp1x = g.Point[len(g.Point)-4].X
- if g.hinting != NoHinting {
- if len(program) != 0 {
- err := g.hinter.run(
- program,
- g.Point[np0:],
- g.Unhinted[np0:],
- g.InFontUnits[np0:],
- g.End[ne0:],
- )
- if err != nil {
- return err
- }
- }
- // Drop the four phantom points.
- g.InFontUnits = g.InFontUnits[:len(g.InFontUnits)-4]
- g.Unhinted = g.Unhinted[:len(g.Unhinted)-4]
- }
- if useMyMetrics {
- copy(g.phantomPoints[:], g.Point[len(g.Point)-4:])
- }
- g.Point = g.Point[:len(g.Point)-4]
- if np0 != 0 {
- // The hinting program expects the []End values to be indexed relative
- // to the inner glyph, not the outer glyph, so we delay adding np0 until
- // after the hinting program (if any) has run.
- for i := ne0; i < len(g.End); i++ {
- g.End[i] += np0
- }
- }
- }
- if useMyMetrics && !g.metricsSet {
- g.metricsSet = true
- g.pp1x = pp1x
- }
- return nil
-}
-
-// loadOffset is the initial offset for loadSimple and loadCompound. The first
-// 10 bytes are the number of contours and the bounding box.
-const loadOffset = 10
-
-func (g *GlyphBuf) loadSimple(glyf []byte, ne int) (program []byte) {
- offset := loadOffset
- for i := 0; i < ne; i++ {
- g.End = append(g.End, 1+int(u16(glyf, offset)))
- offset += 2
- }
-
- // Note the TrueType hinting instructions.
- instrLen := int(u16(glyf, offset))
- offset += 2
- program = glyf[offset : offset+instrLen]
- offset += instrLen
-
- np0 := len(g.Point)
- np1 := np0 + int(g.End[len(g.End)-1])
-
- // Decode the flags.
- for i := np0; i < np1; {
- c := uint32(glyf[offset])
- offset++
- g.Point = append(g.Point, Point{Flags: c})
- i++
- if c&flagRepeat != 0 {
- count := glyf[offset]
- offset++
- for ; count > 0; count-- {
- g.Point = append(g.Point, Point{Flags: c})
- i++
- }
- }
- }
-
- // Decode the co-ordinates.
- var x int16
- for i := np0; i < np1; i++ {
- f := g.Point[i].Flags
- if f&flagXShortVector != 0 {
- dx := int16(glyf[offset])
- offset++
- if f&flagPositiveXShortVector == 0 {
- x -= dx
- } else {
- x += dx
- }
- } else if f&flagThisXIsSame == 0 {
- x += int16(u16(glyf, offset))
- offset += 2
- }
- g.Point[i].X = int32(x)
- }
- var y int16
- for i := np0; i < np1; i++ {
- f := g.Point[i].Flags
- if f&flagYShortVector != 0 {
- dy := int16(glyf[offset])
- offset++
- if f&flagPositiveYShortVector == 0 {
- y -= dy
- } else {
- y += dy
- }
- } else if f&flagThisYIsSame == 0 {
- y += int16(u16(glyf, offset))
- offset += 2
- }
- g.Point[i].Y = int32(y)
- }
-
- return program
-}
-
-func (g *GlyphBuf) loadCompound(recursion int32, uhm HMetric, i Index,
- glyf []byte, useMyMetrics bool) error {
-
- // Flags for decoding a compound glyph. These flags are documented at
- // http://developer.apple.com/fonts/TTRefMan/RM06/Chap6glyf.html.
- const (
- flagArg1And2AreWords = 1 << iota
- flagArgsAreXYValues
- flagRoundXYToGrid
- flagWeHaveAScale
- flagUnused
- flagMoreComponents
- flagWeHaveAnXAndYScale
- flagWeHaveATwoByTwo
- flagWeHaveInstructions
- flagUseMyMetrics
- flagOverlapCompound
- )
- np0, ne0 := len(g.Point), len(g.End)
- offset := loadOffset
- for {
- flags := u16(glyf, offset)
- component := Index(u16(glyf, offset+2))
- dx, dy, transform, hasTransform := int32(0), int32(0), [4]int32{}, false
- if flags&flagArg1And2AreWords != 0 {
- dx = int32(int16(u16(glyf, offset+4)))
- dy = int32(int16(u16(glyf, offset+6)))
- offset += 8
- } else {
- dx = int32(int16(int8(glyf[offset+4])))
- dy = int32(int16(int8(glyf[offset+5])))
- offset += 6
- }
- if flags&flagArgsAreXYValues == 0 {
- return UnsupportedError("compound glyph transform vector")
- }
- if flags&(flagWeHaveAScale|flagWeHaveAnXAndYScale|flagWeHaveATwoByTwo) != 0 {
- hasTransform = true
- switch {
- case flags&flagWeHaveAScale != 0:
- transform[0] = int32(int16(u16(glyf, offset+0)))
- transform[3] = transform[0]
- offset += 2
- case flags&flagWeHaveAnXAndYScale != 0:
- transform[0] = int32(int16(u16(glyf, offset+0)))
- transform[3] = int32(int16(u16(glyf, offset+2)))
- offset += 4
- case flags&flagWeHaveATwoByTwo != 0:
- transform[0] = int32(int16(u16(glyf, offset+0)))
- transform[1] = int32(int16(u16(glyf, offset+2)))
- transform[2] = int32(int16(u16(glyf, offset+4)))
- transform[3] = int32(int16(u16(glyf, offset+6)))
- offset += 8
- }
- }
- savedPP := g.phantomPoints
- np0 := len(g.Point)
- componentUMM := useMyMetrics && (flags&flagUseMyMetrics != 0)
- if err := g.load(recursion+1, component, componentUMM); err != nil {
- return err
- }
- if flags&flagUseMyMetrics == 0 {
- g.phantomPoints = savedPP
- }
- if hasTransform {
- for j := np0; j < len(g.Point); j++ {
- p := &g.Point[j]
- newX := int32((int64(p.X)*int64(transform[0])+1<<13)>>14) +
- int32((int64(p.Y)*int64(transform[2])+1<<13)>>14)
- newY := int32((int64(p.X)*int64(transform[1])+1<<13)>>14) +
- int32((int64(p.Y)*int64(transform[3])+1<<13)>>14)
- p.X, p.Y = newX, newY
- }
- }
- dx = g.font.scale(g.scale * dx)
- dy = g.font.scale(g.scale * dy)
- if flags&flagRoundXYToGrid != 0 {
- dx = (dx + 32) &^ 63
- dy = (dy + 32) &^ 63
- }
- for j := np0; j < len(g.Point); j++ {
- p := &g.Point[j]
- p.X += dx
- p.Y += dy
- }
- // TODO: also adjust g.InFontUnits and g.Unhinted?
- if flags&flagMoreComponents == 0 {
- break
- }
- }
-
- instrLen := 0
- if g.hinting != NoHinting && offset+2 <= len(glyf) {
- instrLen = int(u16(glyf, offset))
- offset += 2
- }
-
- g.addPhantomsAndScale(np0, len(g.Point), false, instrLen > 0)
- points, ends := g.Point[np0:], g.End[ne0:]
- g.Point = g.Point[:len(g.Point)-4]
- for j := range points {
- points[j].Flags &^= flagTouchedX | flagTouchedY
- }
-
- if instrLen == 0 {
- if !g.metricsSet {
- copy(g.phantomPoints[:], points[len(points)-4:])
- }
- return nil
- }
-
- // Hint the compound glyph.
- program := glyf[offset : offset+instrLen]
- // Temporarily adjust the ends to be relative to this compound glyph.
- if np0 != 0 {
- for i := range ends {
- ends[i] -= np0
- }
- }
- // Hinting instructions of a composite glyph completely refer to the
- // (already) hinted subglyphs.
- g.tmp = append(g.tmp[:0], points...)
- if err := g.hinter.run(program, points, g.tmp, g.tmp, ends); err != nil {
- return err
- }
- if np0 != 0 {
- for i := range ends {
- ends[i] += np0
- }
- }
- if !g.metricsSet {
- copy(g.phantomPoints[:], points[len(points)-4:])
- }
- return nil
-}
-
-func (g *GlyphBuf) addPhantomsAndScale(np0, np1 int, simple, adjust bool) {
- // Add the four phantom points.
- g.Point = append(g.Point, g.phantomPoints[:]...)
- // Scale the points.
- if simple && g.hinting != NoHinting {
- g.InFontUnits = append(g.InFontUnits, g.Point[np1:]...)
- }
- for i := np1; i < len(g.Point); i++ {
- p := &g.Point[i]
- p.X = g.font.scale(g.scale * p.X)
- p.Y = g.font.scale(g.scale * p.Y)
- }
- if g.hinting == NoHinting {
- return
- }
- // Round the 1st phantom point to the grid, shifting all other points equally.
- // Note that "all other points" starts from np0, not np1.
- // TODO: delete this adjustment and the np0/np1 distinction, when
- // we update the compatibility tests to C Freetype 2.5.3.
- // See http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=05c786d990390a7ca18e62962641dac740bacb06
- if adjust {
- pp1x := g.Point[len(g.Point)-4].X
- if dx := ((pp1x + 32) &^ 63) - pp1x; dx != 0 {
- for i := np0; i < len(g.Point); i++ {
- g.Point[i].X += dx
- }
- }
- }
- if simple {
- g.Unhinted = append(g.Unhinted, g.Point[np1:]...)
- }
- // Round the 2nd and 4th phantom point to the grid.
- p := &g.Point[len(g.Point)-3]
- p.X = (p.X + 32) &^ 63
- p = &g.Point[len(g.Point)-1]
- p.Y = (p.Y + 32) &^ 63
-}
-
-// TODO: is this necessary? The zero-valued GlyphBuf is perfectly usable.
-
-// NewGlyphBuf returns a newly allocated GlyphBuf.
-func NewGlyphBuf() *GlyphBuf {
- return &GlyphBuf{
- Point: make([]Point, 0, 256),
- End: make([]int, 0, 32),
- }
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/hint.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/hint.go
deleted file mode 100644
index 26c631436..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/hint.go
+++ /dev/null
@@ -1,1764 +0,0 @@
-// Copyright 2012 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package truetype
-
-// This file implements a Truetype bytecode interpreter.
-// The opcodes are described at https://developer.apple.com/fonts/TTRefMan/RM05/Chap5.html
-
-import (
- "errors"
- "math"
-)
-
-const (
- twilightZone = 0
- glyphZone = 1
- numZone = 2
-)
-
-type pointType uint32
-
-const (
- current pointType = 0
- unhinted pointType = 1
- inFontUnits pointType = 2
- numPointType = 3
-)
-
-// callStackEntry is a bytecode call stack entry.
-type callStackEntry struct {
- program []byte
- pc int
- loopCount int32
-}
-
-// hinter implements bytecode hinting. A hinter can be re-used to hint a series
-// of glyphs from a Font.
-type hinter struct {
- stack, store []int32
-
- // functions is a map from function number to bytecode.
- functions map[int32][]byte
-
- // font and scale are the font and scale last used for this hinter.
- // Changing the font will require running the new font's fpgm bytecode.
- // Changing either will require running the font's prep bytecode.
- font *Font
- scale int32
-
- // gs and defaultGS are the current and default graphics state. The
- // default graphics state is the global default graphics state after
- // the font's fpgm and prep programs have been run.
- gs, defaultGS graphicsState
-
- // points and ends are the twilight zone's points, glyph's points
- // and glyph's contour boundaries.
- points [numZone][numPointType][]Point
- ends []int
-
- // scaledCVT is the lazily initialized scaled Control Value Table.
- scaledCVTInitialized bool
- scaledCVT []f26dot6
-}
-
-// graphicsState is described at https://developer.apple.com/fonts/TTRefMan/RM04/Chap4.html
-type graphicsState struct {
- // Projection vector, freedom vector and dual projection vector.
- pv, fv, dv [2]f2dot14
- // Reference points and zone pointers.
- rp, zp [3]int32
- // Control Value / Single Width Cut-In.
- controlValueCutIn, singleWidthCutIn, singleWidth f26dot6
- // Delta base / shift.
- deltaBase, deltaShift int32
- // Minimum distance.
- minDist f26dot6
- // Loop count.
- loop int32
- // Rounding policy.
- roundPeriod, roundPhase, roundThreshold f26dot6
- roundSuper45 bool
- // Auto-flip.
- autoFlip bool
-}
-
-var globalDefaultGS = graphicsState{
- pv: [2]f2dot14{0x4000, 0}, // Unit vector along the X axis.
- fv: [2]f2dot14{0x4000, 0},
- dv: [2]f2dot14{0x4000, 0},
- zp: [3]int32{1, 1, 1},
- controlValueCutIn: (17 << 6) / 16, // 17/16 as an f26dot6.
- deltaBase: 9,
- deltaShift: 3,
- minDist: 1 << 6, // 1 as an f26dot6.
- loop: 1,
- roundPeriod: 1 << 6, // 1 as an f26dot6.
- roundThreshold: 1 << 5, // 1/2 as an f26dot6.
- roundSuper45: false,
- autoFlip: true,
-}
-
-func resetTwilightPoints(f *Font, p []Point) []Point {
- if n := int(f.maxTwilightPoints) + 4; n <= cap(p) {
- p = p[:n]
- for i := range p {
- p[i] = Point{}
- }
- } else {
- p = make([]Point, n)
- }
- return p
-}
-
-func (h *hinter) init(f *Font, scale int32) error {
- h.points[twilightZone][0] = resetTwilightPoints(f, h.points[twilightZone][0])
- h.points[twilightZone][1] = resetTwilightPoints(f, h.points[twilightZone][1])
- h.points[twilightZone][2] = resetTwilightPoints(f, h.points[twilightZone][2])
-
- rescale := h.scale != scale
- if h.font != f {
- h.font, rescale = f, true
- if h.functions == nil {
- h.functions = make(map[int32][]byte)
- } else {
- for k := range h.functions {
- delete(h.functions, k)
- }
- }
-
- if x := int(f.maxStackElements); x > len(h.stack) {
- x += 255
- x &^= 255
- h.stack = make([]int32, x)
- }
- if x := int(f.maxStorage); x > len(h.store) {
- x += 15
- x &^= 15
- h.store = make([]int32, x)
- }
- if len(f.fpgm) != 0 {
- if err := h.run(f.fpgm, nil, nil, nil, nil); err != nil {
- return err
- }
- }
- }
-
- if rescale {
- h.scale = scale
- h.scaledCVTInitialized = false
-
- h.defaultGS = globalDefaultGS
-
- if len(f.prep) != 0 {
- if err := h.run(f.prep, nil, nil, nil, nil); err != nil {
- return err
- }
- h.defaultGS = h.gs
- // The MS rasterizer doesn't allow the following graphics state
- // variables to be modified by the CVT program.
- h.defaultGS.pv = globalDefaultGS.pv
- h.defaultGS.fv = globalDefaultGS.fv
- h.defaultGS.dv = globalDefaultGS.dv
- h.defaultGS.rp = globalDefaultGS.rp
- h.defaultGS.zp = globalDefaultGS.zp
- h.defaultGS.loop = globalDefaultGS.loop
- }
- }
- return nil
-}
-
-func (h *hinter) run(program []byte, pCurrent, pUnhinted, pInFontUnits []Point, ends []int) error {
- h.gs = h.defaultGS
- h.points[glyphZone][current] = pCurrent
- h.points[glyphZone][unhinted] = pUnhinted
- h.points[glyphZone][inFontUnits] = pInFontUnits
- h.ends = ends
-
- if len(program) > 50000 {
- return errors.New("truetype: hinting: too many instructions")
- }
- var (
- steps, pc, top int
- opcode uint8
-
- callStack [32]callStackEntry
- callStackTop int
- )
-
- for 0 <= pc && pc < len(program) {
- steps++
- if steps == 100000 {
- return errors.New("truetype: hinting: too many steps")
- }
- opcode = program[pc]
- if top < int(popCount[opcode]) {
- return errors.New("truetype: hinting: stack underflow")
- }
- switch opcode {
-
- case opSVTCA0:
- h.gs.pv = [2]f2dot14{0, 0x4000}
- h.gs.fv = [2]f2dot14{0, 0x4000}
- h.gs.dv = [2]f2dot14{0, 0x4000}
-
- case opSVTCA1:
- h.gs.pv = [2]f2dot14{0x4000, 0}
- h.gs.fv = [2]f2dot14{0x4000, 0}
- h.gs.dv = [2]f2dot14{0x4000, 0}
-
- case opSPVTCA0:
- h.gs.pv = [2]f2dot14{0, 0x4000}
- h.gs.dv = [2]f2dot14{0, 0x4000}
-
- case opSPVTCA1:
- h.gs.pv = [2]f2dot14{0x4000, 0}
- h.gs.dv = [2]f2dot14{0x4000, 0}
-
- case opSFVTCA0:
- h.gs.fv = [2]f2dot14{0, 0x4000}
-
- case opSFVTCA1:
- h.gs.fv = [2]f2dot14{0x4000, 0}
-
- case opSPVTL0, opSPVTL1, opSFVTL0, opSFVTL1:
- top -= 2
- p1 := h.point(0, current, h.stack[top+0])
- p2 := h.point(0, current, h.stack[top+1])
- if p1 == nil || p2 == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- dx := f2dot14(p1.X - p2.X)
- dy := f2dot14(p1.Y - p2.Y)
- if dx == 0 && dy == 0 {
- dx = 0x4000
- } else if opcode&1 != 0 {
- // Counter-clockwise rotation.
- dx, dy = -dy, dx
- }
- v := normalize(dx, dy)
- if opcode < opSFVTL0 {
- h.gs.pv = v
- h.gs.dv = v
- } else {
- h.gs.fv = v
- }
-
- case opSPVFS:
- top -= 2
- h.gs.pv = normalize(f2dot14(h.stack[top]), f2dot14(h.stack[top+1]))
- h.gs.dv = h.gs.pv
-
- case opSFVFS:
- top -= 2
- h.gs.fv = normalize(f2dot14(h.stack[top]), f2dot14(h.stack[top+1]))
-
- case opGPV:
- if top+1 >= len(h.stack) {
- return errors.New("truetype: hinting: stack overflow")
- }
- h.stack[top+0] = int32(h.gs.pv[0])
- h.stack[top+1] = int32(h.gs.pv[1])
- top += 2
-
- case opGFV:
- if top+1 >= len(h.stack) {
- return errors.New("truetype: hinting: stack overflow")
- }
- h.stack[top+0] = int32(h.gs.fv[0])
- h.stack[top+1] = int32(h.gs.fv[1])
- top += 2
-
- case opSFVTPV:
- h.gs.fv = h.gs.pv
-
- case opISECT:
- top -= 5
- p := h.point(2, current, h.stack[top+0])
- a0 := h.point(1, current, h.stack[top+1])
- a1 := h.point(1, current, h.stack[top+2])
- b0 := h.point(0, current, h.stack[top+3])
- b1 := h.point(0, current, h.stack[top+4])
- if p == nil || a0 == nil || a1 == nil || b0 == nil || b1 == nil {
- return errors.New("truetype: hinting: point out of range")
- }
-
- dbx := b1.X - b0.X
- dby := b1.Y - b0.Y
- dax := a1.X - a0.X
- day := a1.Y - a0.Y
- dx := b0.X - a0.X
- dy := b0.Y - a0.Y
- discriminant := mulDiv(int64(dax), int64(-dby), 0x40) +
- mulDiv(int64(day), int64(dbx), 0x40)
- dotProduct := mulDiv(int64(dax), int64(dbx), 0x40) +
- mulDiv(int64(day), int64(dby), 0x40)
- // The discriminant above is actually a cross product of vectors
- // da and db. Together with the dot product, they can be used as
- // surrogates for sine and cosine of the angle between the vectors.
- // Indeed,
- // dotproduct = |da||db|cos(angle)
- // discriminant = |da||db|sin(angle)
- // We use these equations to reject grazing intersections by
- // thresholding abs(tan(angle)) at 1/19, corresponding to 3 degrees.
- absDisc, absDotP := discriminant, dotProduct
- if absDisc < 0 {
- absDisc = -absDisc
- }
- if absDotP < 0 {
- absDotP = -absDotP
- }
- if 19*absDisc > absDotP {
- val := mulDiv(int64(dx), int64(-dby), 0x40) +
- mulDiv(int64(dy), int64(dbx), 0x40)
- rx := mulDiv(val, int64(dax), discriminant)
- ry := mulDiv(val, int64(day), discriminant)
- p.X = a0.X + int32(rx)
- p.Y = a0.Y + int32(ry)
- } else {
- p.X = (a0.X + a1.X + b0.X + b1.X) / 4
- p.Y = (a0.Y + a1.Y + b0.Y + b1.Y) / 4
- }
- p.Flags |= flagTouchedX | flagTouchedY
-
- case opSRP0, opSRP1, opSRP2:
- top--
- h.gs.rp[opcode-opSRP0] = h.stack[top]
-
- case opSZP0, opSZP1, opSZP2:
- top--
- h.gs.zp[opcode-opSZP0] = h.stack[top]
-
- case opSZPS:
- top--
- h.gs.zp[0] = h.stack[top]
- h.gs.zp[1] = h.stack[top]
- h.gs.zp[2] = h.stack[top]
-
- case opSLOOP:
- top--
- if h.stack[top] <= 0 {
- return errors.New("truetype: hinting: invalid data")
- }
- h.gs.loop = h.stack[top]
-
- case opRTG:
- h.gs.roundPeriod = 1 << 6
- h.gs.roundPhase = 0
- h.gs.roundThreshold = 1 << 5
- h.gs.roundSuper45 = false
-
- case opRTHG:
- h.gs.roundPeriod = 1 << 6
- h.gs.roundPhase = 1 << 5
- h.gs.roundThreshold = 1 << 5
- h.gs.roundSuper45 = false
-
- case opSMD:
- top--
- h.gs.minDist = f26dot6(h.stack[top])
-
- case opELSE:
- opcode = 1
- goto ifelse
-
- case opJMPR:
- top--
- pc += int(h.stack[top])
- continue
-
- case opSCVTCI:
- top--
- h.gs.controlValueCutIn = f26dot6(h.stack[top])
-
- case opSSWCI:
- top--
- h.gs.singleWidthCutIn = f26dot6(h.stack[top])
-
- case opSSW:
- top--
- h.gs.singleWidth = f26dot6(h.font.scale(h.scale * h.stack[top]))
-
- case opDUP:
- if top >= len(h.stack) {
- return errors.New("truetype: hinting: stack overflow")
- }
- h.stack[top] = h.stack[top-1]
- top++
-
- case opPOP:
- top--
-
- case opCLEAR:
- top = 0
-
- case opSWAP:
- h.stack[top-1], h.stack[top-2] = h.stack[top-2], h.stack[top-1]
-
- case opDEPTH:
- if top >= len(h.stack) {
- return errors.New("truetype: hinting: stack overflow")
- }
- h.stack[top] = int32(top)
- top++
-
- case opCINDEX, opMINDEX:
- x := int(h.stack[top-1])
- if x <= 0 || x >= top {
- return errors.New("truetype: hinting: invalid data")
- }
- h.stack[top-1] = h.stack[top-1-x]
- if opcode == opMINDEX {
- copy(h.stack[top-1-x:top-1], h.stack[top-x:top])
- top--
- }
-
- case opALIGNPTS:
- top -= 2
- p := h.point(1, current, h.stack[top])
- q := h.point(0, current, h.stack[top+1])
- if p == nil || q == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- d := dotProduct(f26dot6(q.X-p.X), f26dot6(q.Y-p.Y), h.gs.pv) / 2
- h.move(p, +d, true)
- h.move(q, -d, true)
-
- case opUTP:
- top--
- p := h.point(0, current, h.stack[top])
- if p == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- p.Flags &^= flagTouchedX | flagTouchedY
-
- case opLOOPCALL, opCALL:
- if callStackTop >= len(callStack) {
- return errors.New("truetype: hinting: call stack overflow")
- }
- top--
- f, ok := h.functions[h.stack[top]]
- if !ok {
- return errors.New("truetype: hinting: undefined function")
- }
- callStack[callStackTop] = callStackEntry{program, pc, 1}
- if opcode == opLOOPCALL {
- top--
- if h.stack[top] == 0 {
- break
- }
- callStack[callStackTop].loopCount = h.stack[top]
- }
- callStackTop++
- program, pc = f, 0
- continue
-
- case opFDEF:
- // Save all bytecode up until the next ENDF.
- startPC := pc + 1
- fdefloop:
- for {
- pc++
- if pc >= len(program) {
- return errors.New("truetype: hinting: unbalanced FDEF")
- }
- switch program[pc] {
- case opFDEF:
- return errors.New("truetype: hinting: nested FDEF")
- case opENDF:
- top--
- h.functions[h.stack[top]] = program[startPC : pc+1]
- break fdefloop
- default:
- var ok bool
- pc, ok = skipInstructionPayload(program, pc)
- if !ok {
- return errors.New("truetype: hinting: unbalanced FDEF")
- }
- }
- }
-
- case opENDF:
- if callStackTop == 0 {
- return errors.New("truetype: hinting: call stack underflow")
- }
- callStackTop--
- callStack[callStackTop].loopCount--
- if callStack[callStackTop].loopCount != 0 {
- callStackTop++
- pc = 0
- continue
- }
- program, pc = callStack[callStackTop].program, callStack[callStackTop].pc
-
- case opMDAP0, opMDAP1:
- top--
- i := h.stack[top]
- p := h.point(0, current, i)
- if p == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- distance := f26dot6(0)
- if opcode == opMDAP1 {
- distance = dotProduct(f26dot6(p.X), f26dot6(p.Y), h.gs.pv)
- // TODO: metrics compensation.
- distance = h.round(distance) - distance
- }
- h.move(p, distance, true)
- h.gs.rp[0] = i
- h.gs.rp[1] = i
-
- case opIUP0, opIUP1:
- iupY, mask := opcode == opIUP0, uint32(flagTouchedX)
- if iupY {
- mask = flagTouchedY
- }
- prevEnd := 0
- for _, end := range h.ends {
- for i := prevEnd; i < end; i++ {
- for i < end && h.points[glyphZone][current][i].Flags&mask == 0 {
- i++
- }
- if i == end {
- break
- }
- firstTouched, curTouched := i, i
- i++
- for ; i < end; i++ {
- if h.points[glyphZone][current][i].Flags&mask != 0 {
- h.iupInterp(iupY, curTouched+1, i-1, curTouched, i)
- curTouched = i
- }
- }
- if curTouched == firstTouched {
- h.iupShift(iupY, prevEnd, end, curTouched)
- } else {
- h.iupInterp(iupY, curTouched+1, end-1, curTouched, firstTouched)
- if firstTouched > 0 {
- h.iupInterp(iupY, prevEnd, firstTouched-1, curTouched, firstTouched)
- }
- }
- }
- prevEnd = end
- }
-
- case opSHP0, opSHP1:
- if top < int(h.gs.loop) {
- return errors.New("truetype: hinting: stack underflow")
- }
- _, _, d, ok := h.displacement(opcode&1 == 0)
- if !ok {
- return errors.New("truetype: hinting: point out of range")
- }
- for ; h.gs.loop != 0; h.gs.loop-- {
- top--
- p := h.point(2, current, h.stack[top])
- if p == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- h.move(p, d, true)
- }
- h.gs.loop = 1
-
- case opSHC0, opSHC1:
- top--
- zonePointer, i, d, ok := h.displacement(opcode&1 == 0)
- if !ok {
- return errors.New("truetype: hinting: point out of range")
- }
- if h.gs.zp[2] == 0 {
- // TODO: implement this when we have a glyph that does this.
- return errors.New("hinting: unimplemented SHC instruction")
- }
- contour := h.stack[top]
- if contour < 0 || len(ends) <= int(contour) {
- return errors.New("truetype: hinting: contour out of range")
- }
- j0, j1 := int32(0), int32(h.ends[contour])
- if contour > 0 {
- j0 = int32(h.ends[contour-1])
- }
- move := h.gs.zp[zonePointer] != h.gs.zp[2]
- for j := j0; j < j1; j++ {
- if move || j != i {
- h.move(h.point(2, current, j), d, true)
- }
- }
-
- case opSHZ0, opSHZ1:
- top--
- zonePointer, i, d, ok := h.displacement(opcode&1 == 0)
- if !ok {
- return errors.New("truetype: hinting: point out of range")
- }
-
- // As per C Freetype, SHZ doesn't move the phantom points, or mark
- // the points as touched.
- limit := int32(len(h.points[h.gs.zp[2]][current]))
- if h.gs.zp[2] == glyphZone {
- limit -= 4
- }
- for j := int32(0); j < limit; j++ {
- if i != j || h.gs.zp[zonePointer] != h.gs.zp[2] {
- h.move(h.point(2, current, j), d, false)
- }
- }
-
- case opSHPIX:
- top--
- d := f26dot6(h.stack[top])
- if top < int(h.gs.loop) {
- return errors.New("truetype: hinting: stack underflow")
- }
- for ; h.gs.loop != 0; h.gs.loop-- {
- top--
- p := h.point(2, current, h.stack[top])
- if p == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- h.move(p, d, true)
- }
- h.gs.loop = 1
-
- case opIP:
- if top < int(h.gs.loop) {
- return errors.New("truetype: hinting: stack underflow")
- }
- pointType := inFontUnits
- twilight := h.gs.zp[0] == 0 || h.gs.zp[1] == 0 || h.gs.zp[2] == 0
- if twilight {
- pointType = unhinted
- }
- p := h.point(1, pointType, h.gs.rp[2])
- oldP := h.point(0, pointType, h.gs.rp[1])
- oldRange := dotProduct(f26dot6(p.X-oldP.X), f26dot6(p.Y-oldP.Y), h.gs.dv)
-
- p = h.point(1, current, h.gs.rp[2])
- curP := h.point(0, current, h.gs.rp[1])
- curRange := dotProduct(f26dot6(p.X-curP.X), f26dot6(p.Y-curP.Y), h.gs.pv)
- for ; h.gs.loop != 0; h.gs.loop-- {
- top--
- i := h.stack[top]
- p = h.point(2, pointType, i)
- oldDist := dotProduct(f26dot6(p.X-oldP.X), f26dot6(p.Y-oldP.Y), h.gs.dv)
- p = h.point(2, current, i)
- curDist := dotProduct(f26dot6(p.X-curP.X), f26dot6(p.Y-curP.Y), h.gs.pv)
- newDist := f26dot6(0)
- if oldDist != 0 {
- if oldRange != 0 {
- newDist = f26dot6(mulDiv(int64(oldDist), int64(curRange), int64(oldRange)))
- } else {
- newDist = -oldDist
- }
- }
- h.move(p, newDist-curDist, true)
- }
- h.gs.loop = 1
-
- case opMSIRP0, opMSIRP1:
- top -= 2
- i := h.stack[top]
- distance := f26dot6(h.stack[top+1])
-
- // TODO: special case h.gs.zp[1] == 0 in C Freetype.
- ref := h.point(0, current, h.gs.rp[0])
- p := h.point(1, current, i)
- if ref == nil || p == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- curDist := dotProduct(f26dot6(p.X-ref.X), f26dot6(p.Y-ref.Y), h.gs.pv)
-
- // Set-RP0 bit.
- if opcode == opMSIRP1 {
- h.gs.rp[0] = i
- }
- h.gs.rp[1] = h.gs.rp[0]
- h.gs.rp[2] = i
-
- // Move the point.
- h.move(p, distance-curDist, true)
-
- case opALIGNRP:
- if top < int(h.gs.loop) {
- return errors.New("truetype: hinting: stack underflow")
- }
- ref := h.point(0, current, h.gs.rp[0])
- if ref == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- for ; h.gs.loop != 0; h.gs.loop-- {
- top--
- p := h.point(1, current, h.stack[top])
- if p == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- h.move(p, -dotProduct(f26dot6(p.X-ref.X), f26dot6(p.Y-ref.Y), h.gs.pv), true)
- }
- h.gs.loop = 1
-
- case opRTDG:
- h.gs.roundPeriod = 1 << 5
- h.gs.roundPhase = 0
- h.gs.roundThreshold = 1 << 4
- h.gs.roundSuper45 = false
-
- case opMIAP0, opMIAP1:
- top -= 2
- i := h.stack[top]
- distance := h.getScaledCVT(h.stack[top+1])
- if h.gs.zp[0] == 0 {
- p := h.point(0, unhinted, i)
- q := h.point(0, current, i)
- p.X = int32((int64(distance) * int64(h.gs.fv[0])) >> 14)
- p.Y = int32((int64(distance) * int64(h.gs.fv[1])) >> 14)
- *q = *p
- }
- p := h.point(0, current, i)
- oldDist := dotProduct(f26dot6(p.X), f26dot6(p.Y), h.gs.pv)
- if opcode == opMIAP1 {
- if (distance - oldDist).abs() > h.gs.controlValueCutIn {
- distance = oldDist
- }
- // TODO: metrics compensation.
- distance = h.round(distance)
- }
- h.move(p, distance-oldDist, true)
- h.gs.rp[0] = i
- h.gs.rp[1] = i
-
- case opNPUSHB:
- opcode = 0
- goto push
-
- case opNPUSHW:
- opcode = 0x80
- goto push
-
- case opWS:
- top -= 2
- i := int(h.stack[top])
- if i < 0 || len(h.store) <= i {
- return errors.New("truetype: hinting: invalid data")
- }
- h.store[i] = h.stack[top+1]
-
- case opRS:
- i := int(h.stack[top-1])
- if i < 0 || len(h.store) <= i {
- return errors.New("truetype: hinting: invalid data")
- }
- h.stack[top-1] = h.store[i]
-
- case opWCVTP:
- top -= 2
- h.setScaledCVT(h.stack[top], f26dot6(h.stack[top+1]))
-
- case opRCVT:
- h.stack[top-1] = int32(h.getScaledCVT(h.stack[top-1]))
-
- case opGC0, opGC1:
- i := h.stack[top-1]
- if opcode == opGC0 {
- p := h.point(2, current, i)
- h.stack[top-1] = int32(dotProduct(f26dot6(p.X), f26dot6(p.Y), h.gs.pv))
- } else {
- p := h.point(2, unhinted, i)
- // Using dv as per C Freetype.
- h.stack[top-1] = int32(dotProduct(f26dot6(p.X), f26dot6(p.Y), h.gs.dv))
- }
-
- case opSCFS:
- top -= 2
- i := h.stack[top]
- p := h.point(2, current, i)
- if p == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- c := dotProduct(f26dot6(p.X), f26dot6(p.Y), h.gs.pv)
- h.move(p, f26dot6(h.stack[top+1])-c, true)
- if h.gs.zp[2] != 0 {
- break
- }
- q := h.point(2, unhinted, i)
- if q == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- q.X = p.X
- q.Y = p.Y
-
- case opMD0, opMD1:
- top--
- pt, v, scale := pointType(0), [2]f2dot14{}, false
- if opcode == opMD0 {
- pt = current
- v = h.gs.pv
- } else if h.gs.zp[0] == 0 || h.gs.zp[1] == 0 {
- pt = unhinted
- v = h.gs.dv
- } else {
- pt = inFontUnits
- v = h.gs.dv
- scale = true
- }
- p := h.point(0, pt, h.stack[top-1])
- q := h.point(1, pt, h.stack[top])
- if p == nil || q == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- d := int32(dotProduct(f26dot6(p.X-q.X), f26dot6(p.Y-q.Y), v))
- if scale {
- d = int32(int64(d*h.scale) / int64(h.font.fUnitsPerEm))
- }
- h.stack[top-1] = d
-
- case opMPPEM, opMPS:
- if top >= len(h.stack) {
- return errors.New("truetype: hinting: stack overflow")
- }
- // For MPS, point size should be irrelevant; we return the PPEM.
- h.stack[top] = h.scale >> 6
- top++
-
- case opFLIPON, opFLIPOFF:
- h.gs.autoFlip = opcode == opFLIPON
-
- case opDEBUG:
- // No-op.
-
- case opLT:
- top--
- h.stack[top-1] = bool2int32(h.stack[top-1] < h.stack[top])
-
- case opLTEQ:
- top--
- h.stack[top-1] = bool2int32(h.stack[top-1] <= h.stack[top])
-
- case opGT:
- top--
- h.stack[top-1] = bool2int32(h.stack[top-1] > h.stack[top])
-
- case opGTEQ:
- top--
- h.stack[top-1] = bool2int32(h.stack[top-1] >= h.stack[top])
-
- case opEQ:
- top--
- h.stack[top-1] = bool2int32(h.stack[top-1] == h.stack[top])
-
- case opNEQ:
- top--
- h.stack[top-1] = bool2int32(h.stack[top-1] != h.stack[top])
-
- case opODD, opEVEN:
- i := h.round(f26dot6(h.stack[top-1])) >> 6
- h.stack[top-1] = int32(i&1) ^ int32(opcode-opODD)
-
- case opIF:
- top--
- if h.stack[top] == 0 {
- opcode = 0
- goto ifelse
- }
-
- case opEIF:
- // No-op.
-
- case opAND:
- top--
- h.stack[top-1] = bool2int32(h.stack[top-1] != 0 && h.stack[top] != 0)
-
- case opOR:
- top--
- h.stack[top-1] = bool2int32(h.stack[top-1]|h.stack[top] != 0)
-
- case opNOT:
- h.stack[top-1] = bool2int32(h.stack[top-1] == 0)
-
- case opDELTAP1:
- goto delta
-
- case opSDB:
- top--
- h.gs.deltaBase = h.stack[top]
-
- case opSDS:
- top--
- h.gs.deltaShift = h.stack[top]
-
- case opADD:
- top--
- h.stack[top-1] += h.stack[top]
-
- case opSUB:
- top--
- h.stack[top-1] -= h.stack[top]
-
- case opDIV:
- top--
- if h.stack[top] == 0 {
- return errors.New("truetype: hinting: division by zero")
- }
- h.stack[top-1] = int32(f26dot6(h.stack[top-1]).div(f26dot6(h.stack[top])))
-
- case opMUL:
- top--
- h.stack[top-1] = int32(f26dot6(h.stack[top-1]).mul(f26dot6(h.stack[top])))
-
- case opABS:
- if h.stack[top-1] < 0 {
- h.stack[top-1] = -h.stack[top-1]
- }
-
- case opNEG:
- h.stack[top-1] = -h.stack[top-1]
-
- case opFLOOR:
- h.stack[top-1] &^= 63
-
- case opCEILING:
- h.stack[top-1] += 63
- h.stack[top-1] &^= 63
-
- case opROUND00, opROUND01, opROUND10, opROUND11:
- // The four flavors of opROUND are equivalent. See the comment below on
- // opNROUND for the rationale.
- h.stack[top-1] = int32(h.round(f26dot6(h.stack[top-1])))
-
- case opNROUND00, opNROUND01, opNROUND10, opNROUND11:
- // No-op. The spec says to add one of four "compensations for the engine
- // characteristics", to cater for things like "different dot-size printers".
- // https://developer.apple.com/fonts/TTRefMan/RM02/Chap2.html#engine_compensation
- // This code does not implement engine compensation, as we don't expect to
- // be used to output on dot-matrix printers.
-
- case opWCVTF:
- top -= 2
- h.setScaledCVT(h.stack[top], f26dot6(h.font.scale(h.scale*h.stack[top+1])))
-
- case opDELTAP2, opDELTAP3, opDELTAC1, opDELTAC2, opDELTAC3:
- goto delta
-
- case opSROUND, opS45ROUND:
- top--
- switch (h.stack[top] >> 6) & 0x03 {
- case 0:
- h.gs.roundPeriod = 1 << 5
- case 1, 3:
- h.gs.roundPeriod = 1 << 6
- case 2:
- h.gs.roundPeriod = 1 << 7
- }
- h.gs.roundSuper45 = opcode == opS45ROUND
- if h.gs.roundSuper45 {
- // The spec says to multiply by √2, but the C Freetype code says 1/√2.
- // We go with 1/√2.
- h.gs.roundPeriod *= 46341
- h.gs.roundPeriod /= 65536
- }
- h.gs.roundPhase = h.gs.roundPeriod * f26dot6((h.stack[top]>>4)&0x03) / 4
- if x := h.stack[top] & 0x0f; x != 0 {
- h.gs.roundThreshold = h.gs.roundPeriod * f26dot6(x-4) / 8
- } else {
- h.gs.roundThreshold = h.gs.roundPeriod - 1
- }
-
- case opJROT:
- top -= 2
- if h.stack[top+1] != 0 {
- pc += int(h.stack[top])
- continue
- }
-
- case opJROF:
- top -= 2
- if h.stack[top+1] == 0 {
- pc += int(h.stack[top])
- continue
- }
-
- case opROFF:
- h.gs.roundPeriod = 0
- h.gs.roundPhase = 0
- h.gs.roundThreshold = 0
- h.gs.roundSuper45 = false
-
- case opRUTG:
- h.gs.roundPeriod = 1 << 6
- h.gs.roundPhase = 0
- h.gs.roundThreshold = 1<<6 - 1
- h.gs.roundSuper45 = false
-
- case opRDTG:
- h.gs.roundPeriod = 1 << 6
- h.gs.roundPhase = 0
- h.gs.roundThreshold = 0
- h.gs.roundSuper45 = false
-
- case opSANGW, opAA:
- // These ops are "anachronistic" and no longer used.
- top--
-
- case opFLIPPT:
- if top < int(h.gs.loop) {
- return errors.New("truetype: hinting: stack underflow")
- }
- points := h.points[glyphZone][current]
- for ; h.gs.loop != 0; h.gs.loop-- {
- top--
- i := h.stack[top]
- if i < 0 || len(points) <= int(i) {
- return errors.New("truetype: hinting: point out of range")
- }
- points[i].Flags ^= flagOnCurve
- }
- h.gs.loop = 1
-
- case opFLIPRGON, opFLIPRGOFF:
- top -= 2
- i, j, points := h.stack[top], h.stack[top+1], h.points[glyphZone][current]
- if i < 0 || len(points) <= int(i) || j < 0 || len(points) <= int(j) {
- return errors.New("truetype: hinting: point out of range")
- }
- for ; i <= j; i++ {
- if opcode == opFLIPRGON {
- points[i].Flags |= flagOnCurve
- } else {
- points[i].Flags &^= flagOnCurve
- }
- }
-
- case opSCANCTRL:
- // We do not support dropout control, as we always rasterize grayscale glyphs.
- top--
-
- case opSDPVTL0, opSDPVTL1:
- top -= 2
- for i := 0; i < 2; i++ {
- pt := unhinted
- if i != 0 {
- pt = current
- }
- p := h.point(1, pt, h.stack[top])
- q := h.point(2, pt, h.stack[top+1])
- if p == nil || q == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- dx := f2dot14(p.X - q.X)
- dy := f2dot14(p.Y - q.Y)
- if dx == 0 && dy == 0 {
- dx = 0x4000
- } else if opcode&1 != 0 {
- // Counter-clockwise rotation.
- dx, dy = -dy, dx
- }
- if i == 0 {
- h.gs.dv = normalize(dx, dy)
- } else {
- h.gs.pv = normalize(dx, dy)
- }
- }
-
- case opGETINFO:
- res := int32(0)
- if h.stack[top-1]&(1<<0) != 0 {
- // Set the engine version. We hard-code this to 35, the same as
- // the C freetype code, which says that "Version~35 corresponds
- // to MS rasterizer v.1.7 as used e.g. in Windows~98".
- res |= 35
- }
- if h.stack[top-1]&(1<<5) != 0 {
- // Set that we support grayscale.
- res |= 1 << 12
- }
- // We set no other bits, as we do not support rotated or stretched glyphs.
- h.stack[top-1] = res
-
- case opIDEF:
- // IDEF is for ancient versions of the bytecode interpreter, and is no longer used.
- return errors.New("truetype: hinting: unsupported IDEF instruction")
-
- case opROLL:
- h.stack[top-1], h.stack[top-3], h.stack[top-2] =
- h.stack[top-3], h.stack[top-2], h.stack[top-1]
-
- case opMAX:
- top--
- if h.stack[top-1] < h.stack[top] {
- h.stack[top-1] = h.stack[top]
- }
-
- case opMIN:
- top--
- if h.stack[top-1] > h.stack[top] {
- h.stack[top-1] = h.stack[top]
- }
-
- case opSCANTYPE:
- // We do not support dropout control, as we always rasterize grayscale glyphs.
- top--
-
- case opINSTCTRL:
- // TODO: support instruction execution control? It seems rare, and even when
- // nominally used (e.g. Source Sans Pro), it seems conditional on extreme or
- // unusual rasterization conditions. For example, the code snippet at
- // https://developer.apple.com/fonts/TTRefMan/RM05/Chap5.html#INSTCTRL
- // uses INSTCTRL when grid-fitting a rotated or stretched glyph, but
- // freetype-go does not support rotated or stretched glyphs.
- top -= 2
-
- default:
- if opcode < opPUSHB000 {
- return errors.New("truetype: hinting: unrecognized instruction")
- }
-
- if opcode < opMDRP00000 {
- // PUSHxxxx opcode.
-
- if opcode < opPUSHW000 {
- opcode -= opPUSHB000 - 1
- } else {
- opcode -= opPUSHW000 - 1 - 0x80
- }
- goto push
- }
-
- if opcode < opMIRP00000 {
- // MDRPxxxxx opcode.
-
- top--
- i := h.stack[top]
- ref := h.point(0, current, h.gs.rp[0])
- p := h.point(1, current, i)
- if ref == nil || p == nil {
- return errors.New("truetype: hinting: point out of range")
- }
-
- oldDist := f26dot6(0)
- if h.gs.zp[0] == 0 || h.gs.zp[1] == 0 {
- p0 := h.point(1, unhinted, i)
- p1 := h.point(0, unhinted, h.gs.rp[0])
- oldDist = dotProduct(f26dot6(p0.X-p1.X), f26dot6(p0.Y-p1.Y), h.gs.dv)
- } else {
- p0 := h.point(1, inFontUnits, i)
- p1 := h.point(0, inFontUnits, h.gs.rp[0])
- oldDist = dotProduct(f26dot6(p0.X-p1.X), f26dot6(p0.Y-p1.Y), h.gs.dv)
- oldDist = f26dot6(h.font.scale(h.scale * int32(oldDist)))
- }
-
- // Single-width cut-in test.
- if x := (oldDist - h.gs.singleWidth).abs(); x < h.gs.singleWidthCutIn {
- if oldDist >= 0 {
- oldDist = +h.gs.singleWidth
- } else {
- oldDist = -h.gs.singleWidth
- }
- }
-
- // Rounding bit.
- // TODO: metrics compensation.
- distance := oldDist
- if opcode&0x04 != 0 {
- distance = h.round(oldDist)
- }
-
- // Minimum distance bit.
- if opcode&0x08 != 0 {
- if oldDist >= 0 {
- if distance < h.gs.minDist {
- distance = h.gs.minDist
- }
- } else {
- if distance > -h.gs.minDist {
- distance = -h.gs.minDist
- }
- }
- }
-
- // Set-RP0 bit.
- h.gs.rp[1] = h.gs.rp[0]
- h.gs.rp[2] = i
- if opcode&0x10 != 0 {
- h.gs.rp[0] = i
- }
-
- // Move the point.
- oldDist = dotProduct(f26dot6(p.X-ref.X), f26dot6(p.Y-ref.Y), h.gs.pv)
- h.move(p, distance-oldDist, true)
-
- } else {
- // MIRPxxxxx opcode.
-
- top -= 2
- i := h.stack[top]
- cvtDist := h.getScaledCVT(h.stack[top+1])
- if (cvtDist - h.gs.singleWidth).abs() < h.gs.singleWidthCutIn {
- if cvtDist >= 0 {
- cvtDist = +h.gs.singleWidth
- } else {
- cvtDist = -h.gs.singleWidth
- }
- }
-
- if h.gs.zp[1] == 0 {
- // TODO: implement once we have a .ttf file that triggers
- // this, so that we can step through C's freetype.
- return errors.New("truetype: hinting: unimplemented twilight point adjustment")
- }
-
- ref := h.point(0, unhinted, h.gs.rp[0])
- p := h.point(1, unhinted, i)
- if ref == nil || p == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- oldDist := dotProduct(f26dot6(p.X-ref.X), f26dot6(p.Y-ref.Y), h.gs.dv)
-
- ref = h.point(0, current, h.gs.rp[0])
- p = h.point(1, current, i)
- if ref == nil || p == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- curDist := dotProduct(f26dot6(p.X-ref.X), f26dot6(p.Y-ref.Y), h.gs.pv)
-
- if h.gs.autoFlip && oldDist^cvtDist < 0 {
- cvtDist = -cvtDist
- }
-
- // Rounding bit.
- // TODO: metrics compensation.
- distance := cvtDist
- if opcode&0x04 != 0 {
- // The CVT value is only used if close enough to oldDist.
- if (h.gs.zp[0] == h.gs.zp[1]) &&
- ((cvtDist - oldDist).abs() > h.gs.controlValueCutIn) {
-
- distance = oldDist
- }
- distance = h.round(distance)
- }
-
- // Minimum distance bit.
- if opcode&0x08 != 0 {
- if oldDist >= 0 {
- if distance < h.gs.minDist {
- distance = h.gs.minDist
- }
- } else {
- if distance > -h.gs.minDist {
- distance = -h.gs.minDist
- }
- }
- }
-
- // Set-RP0 bit.
- h.gs.rp[1] = h.gs.rp[0]
- h.gs.rp[2] = i
- if opcode&0x10 != 0 {
- h.gs.rp[0] = i
- }
-
- // Move the point.
- h.move(p, distance-curDist, true)
- }
- }
- pc++
- continue
-
- ifelse:
- // Skip past bytecode until the next ELSE (if opcode == 0) or the
- // next EIF (for all opcodes). Opcode == 0 means that we have come
- // from an IF. Opcode == 1 means that we have come from an ELSE.
- {
- ifelseloop:
- for depth := 0; ; {
- pc++
- if pc >= len(program) {
- return errors.New("truetype: hinting: unbalanced IF or ELSE")
- }
- switch program[pc] {
- case opIF:
- depth++
- case opELSE:
- if depth == 0 && opcode == 0 {
- break ifelseloop
- }
- case opEIF:
- depth--
- if depth < 0 {
- break ifelseloop
- }
- default:
- var ok bool
- pc, ok = skipInstructionPayload(program, pc)
- if !ok {
- return errors.New("truetype: hinting: unbalanced IF or ELSE")
- }
- }
- }
- pc++
- continue
- }
-
- push:
- // Push n elements from the program to the stack, where n is the low 7 bits of
- // opcode. If the low 7 bits are zero, then n is the next byte from the program.
- // The high bit being 0 means that the elements are zero-extended bytes.
- // The high bit being 1 means that the elements are sign-extended words.
- {
- width := 1
- if opcode&0x80 != 0 {
- opcode &^= 0x80
- width = 2
- }
- if opcode == 0 {
- pc++
- if pc >= len(program) {
- return errors.New("truetype: hinting: insufficient data")
- }
- opcode = program[pc]
- }
- pc++
- if top+int(opcode) > len(h.stack) {
- return errors.New("truetype: hinting: stack overflow")
- }
- if pc+width*int(opcode) > len(program) {
- return errors.New("truetype: hinting: insufficient data")
- }
- for ; opcode > 0; opcode-- {
- if width == 1 {
- h.stack[top] = int32(program[pc])
- } else {
- h.stack[top] = int32(int8(program[pc]))<<8 | int32(program[pc+1])
- }
- top++
- pc += width
- }
- continue
- }
-
- delta:
- {
- if opcode >= opDELTAC1 && !h.scaledCVTInitialized {
- h.initializeScaledCVT()
- }
- top--
- n := h.stack[top]
- if int32(top) < 2*n {
- return errors.New("truetype: hinting: stack underflow")
- }
- for ; n > 0; n-- {
- top -= 2
- b := h.stack[top]
- c := (b & 0xf0) >> 4
- switch opcode {
- case opDELTAP2, opDELTAC2:
- c += 16
- case opDELTAP3, opDELTAC3:
- c += 32
- }
- c += h.gs.deltaBase
- if ppem := (h.scale + 1<<5) >> 6; ppem != c {
- continue
- }
- b = (b & 0x0f) - 8
- if b >= 0 {
- b++
- }
- b = b * 64 / (1 << uint32(h.gs.deltaShift))
- if opcode >= opDELTAC1 {
- a := h.stack[top+1]
- if a < 0 || len(h.scaledCVT) <= int(a) {
- return errors.New("truetype: hinting: index out of range")
- }
- h.scaledCVT[a] += f26dot6(b)
- } else {
- p := h.point(0, current, h.stack[top+1])
- if p == nil {
- return errors.New("truetype: hinting: point out of range")
- }
- h.move(p, f26dot6(b), true)
- }
- }
- pc++
- continue
- }
- }
- return nil
-}
-
-func (h *hinter) initializeScaledCVT() {
- h.scaledCVTInitialized = true
- if n := len(h.font.cvt) / 2; n <= cap(h.scaledCVT) {
- h.scaledCVT = h.scaledCVT[:n]
- } else {
- if n < 32 {
- n = 32
- }
- h.scaledCVT = make([]f26dot6, len(h.font.cvt)/2, n)
- }
- for i := range h.scaledCVT {
- unscaled := uint16(h.font.cvt[2*i])<<8 | uint16(h.font.cvt[2*i+1])
- h.scaledCVT[i] = f26dot6(h.font.scale(h.scale * int32(int16(unscaled))))
- }
-}
-
-// getScaledCVT returns the scaled value from the font's Control Value Table.
-func (h *hinter) getScaledCVT(i int32) f26dot6 {
- if !h.scaledCVTInitialized {
- h.initializeScaledCVT()
- }
- if i < 0 || len(h.scaledCVT) <= int(i) {
- return 0
- }
- return h.scaledCVT[i]
-}
-
-// setScaledCVT overrides the scaled value from the font's Control Value Table.
-func (h *hinter) setScaledCVT(i int32, v f26dot6) {
- if !h.scaledCVTInitialized {
- h.initializeScaledCVT()
- }
- if i < 0 || len(h.scaledCVT) <= int(i) {
- return
- }
- h.scaledCVT[i] = v
-}
-
-func (h *hinter) point(zonePointer uint32, pt pointType, i int32) *Point {
- points := h.points[h.gs.zp[zonePointer]][pt]
- if i < 0 || len(points) <= int(i) {
- return nil
- }
- return &points[i]
-}
-
-func (h *hinter) move(p *Point, distance f26dot6, touch bool) {
- fvx := int64(h.gs.fv[0])
- pvx := int64(h.gs.pv[0])
- if fvx == 0x4000 && pvx == 0x4000 {
- p.X += int32(distance)
- if touch {
- p.Flags |= flagTouchedX
- }
- return
- }
-
- fvy := int64(h.gs.fv[1])
- pvy := int64(h.gs.pv[1])
- if fvy == 0x4000 && pvy == 0x4000 {
- p.Y += int32(distance)
- if touch {
- p.Flags |= flagTouchedY
- }
- return
- }
-
- fvDotPv := (fvx*pvx + fvy*pvy) >> 14
-
- if fvx != 0 {
- p.X += int32(mulDiv(fvx, int64(distance), fvDotPv))
- if touch {
- p.Flags |= flagTouchedX
- }
- }
-
- if fvy != 0 {
- p.Y += int32(mulDiv(fvy, int64(distance), fvDotPv))
- if touch {
- p.Flags |= flagTouchedY
- }
- }
-}
-
-func (h *hinter) iupInterp(interpY bool, p1, p2, ref1, ref2 int) {
- if p1 > p2 {
- return
- }
- if ref1 >= len(h.points[glyphZone][current]) ||
- ref2 >= len(h.points[glyphZone][current]) {
- return
- }
-
- var ifu1, ifu2 int32
- if interpY {
- ifu1 = h.points[glyphZone][inFontUnits][ref1].Y
- ifu2 = h.points[glyphZone][inFontUnits][ref2].Y
- } else {
- ifu1 = h.points[glyphZone][inFontUnits][ref1].X
- ifu2 = h.points[glyphZone][inFontUnits][ref2].X
- }
- if ifu1 > ifu2 {
- ifu1, ifu2 = ifu2, ifu1
- ref1, ref2 = ref2, ref1
- }
-
- var unh1, unh2, delta1, delta2 int32
- if interpY {
- unh1 = h.points[glyphZone][unhinted][ref1].Y
- unh2 = h.points[glyphZone][unhinted][ref2].Y
- delta1 = h.points[glyphZone][current][ref1].Y - unh1
- delta2 = h.points[glyphZone][current][ref2].Y - unh2
- } else {
- unh1 = h.points[glyphZone][unhinted][ref1].X
- unh2 = h.points[glyphZone][unhinted][ref2].X
- delta1 = h.points[glyphZone][current][ref1].X - unh1
- delta2 = h.points[glyphZone][current][ref2].X - unh2
- }
-
- var xy, ifuXY int32
- if ifu1 == ifu2 {
- for i := p1; i <= p2; i++ {
- if interpY {
- xy = h.points[glyphZone][unhinted][i].Y
- } else {
- xy = h.points[glyphZone][unhinted][i].X
- }
-
- if xy <= unh1 {
- xy += delta1
- } else {
- xy += delta2
- }
-
- if interpY {
- h.points[glyphZone][current][i].Y = xy
- } else {
- h.points[glyphZone][current][i].X = xy
- }
- }
- return
- }
-
- scale, scaleOK := int64(0), false
- for i := p1; i <= p2; i++ {
- if interpY {
- xy = h.points[glyphZone][unhinted][i].Y
- ifuXY = h.points[glyphZone][inFontUnits][i].Y
- } else {
- xy = h.points[glyphZone][unhinted][i].X
- ifuXY = h.points[glyphZone][inFontUnits][i].X
- }
-
- if xy <= unh1 {
- xy += delta1
- } else if xy >= unh2 {
- xy += delta2
- } else {
- if !scaleOK {
- scaleOK = true
- scale = mulDiv(int64(unh2+delta2-unh1-delta1), 0x10000, int64(ifu2-ifu1))
- }
- numer := int64(ifuXY-ifu1) * scale
- if numer >= 0 {
- numer += 0x8000
- } else {
- numer -= 0x8000
- }
- xy = unh1 + delta1 + int32(numer/0x10000)
- }
-
- if interpY {
- h.points[glyphZone][current][i].Y = xy
- } else {
- h.points[glyphZone][current][i].X = xy
- }
- }
-}
-
-func (h *hinter) iupShift(interpY bool, p1, p2, p int) {
- var delta int32
- if interpY {
- delta = h.points[glyphZone][current][p].Y - h.points[glyphZone][unhinted][p].Y
- } else {
- delta = h.points[glyphZone][current][p].X - h.points[glyphZone][unhinted][p].X
- }
- if delta == 0 {
- return
- }
- for i := p1; i < p2; i++ {
- if i == p {
- continue
- }
- if interpY {
- h.points[glyphZone][current][i].Y += delta
- } else {
- h.points[glyphZone][current][i].X += delta
- }
- }
-}
-
-func (h *hinter) displacement(useZP1 bool) (zonePointer uint32, i int32, d f26dot6, ok bool) {
- zonePointer, i = uint32(0), h.gs.rp[1]
- if useZP1 {
- zonePointer, i = 1, h.gs.rp[2]
- }
- p := h.point(zonePointer, current, i)
- q := h.point(zonePointer, unhinted, i)
- if p == nil || q == nil {
- return 0, 0, 0, false
- }
- d = dotProduct(f26dot6(p.X-q.X), f26dot6(p.Y-q.Y), h.gs.pv)
- return zonePointer, i, d, true
-}
-
-// skipInstructionPayload increments pc by the extra data that follows a
-// variable length PUSHB or PUSHW instruction.
-func skipInstructionPayload(program []byte, pc int) (newPC int, ok bool) {
- switch program[pc] {
- case opNPUSHB:
- pc++
- if pc >= len(program) {
- return 0, false
- }
- pc += int(program[pc])
- case opNPUSHW:
- pc++
- if pc >= len(program) {
- return 0, false
- }
- pc += 2 * int(program[pc])
- case opPUSHB000, opPUSHB001, opPUSHB010, opPUSHB011,
- opPUSHB100, opPUSHB101, opPUSHB110, opPUSHB111:
- pc += int(program[pc] - (opPUSHB000 - 1))
- case opPUSHW000, opPUSHW001, opPUSHW010, opPUSHW011,
- opPUSHW100, opPUSHW101, opPUSHW110, opPUSHW111:
- pc += 2 * int(program[pc]-(opPUSHW000-1))
- }
- return pc, true
-}
-
-// f2dot14 is a 2.14 fixed point number.
-type f2dot14 int16
-
-func normalize(x, y f2dot14) [2]f2dot14 {
- fx, fy := float64(x), float64(y)
- l := 0x4000 / math.Hypot(fx, fy)
- fx *= l
- if fx >= 0 {
- fx += 0.5
- } else {
- fx -= 0.5
- }
- fy *= l
- if fy >= 0 {
- fy += 0.5
- } else {
- fy -= 0.5
- }
- return [2]f2dot14{f2dot14(fx), f2dot14(fy)}
-}
-
-// f26dot6 is a 26.6 fixed point number.
-type f26dot6 int32
-
-// abs returns abs(x) in 26.6 fixed point arithmetic.
-func (x f26dot6) abs() f26dot6 {
- if x < 0 {
- return -x
- }
- return x
-}
-
-// div returns x/y in 26.6 fixed point arithmetic.
-func (x f26dot6) div(y f26dot6) f26dot6 {
- return f26dot6((int64(x) << 6) / int64(y))
-}
-
-// mul returns x*y in 26.6 fixed point arithmetic.
-func (x f26dot6) mul(y f26dot6) f26dot6 {
- return f26dot6((int64(x)*int64(y) + 1<<5) >> 6)
-}
-
-// dotProduct returns the dot product of [x, y] and q. It is almost the same as
-// px := int64(x)
-// py := int64(y)
-// qx := int64(q[0])
-// qy := int64(q[1])
-// return f26dot6((px*qx + py*qy + 1<<13) >> 14)
-// except that the computation is done with 32-bit integers to produce exactly
-// the same rounding behavior as C Freetype.
-func dotProduct(x, y f26dot6, q [2]f2dot14) f26dot6 {
- // Compute x*q[0] as 64-bit value.
- l := uint32((int32(x) & 0xFFFF) * int32(q[0]))
- m := (int32(x) >> 16) * int32(q[0])
-
- lo1 := l + (uint32(m) << 16)
- hi1 := (m >> 16) + (int32(l) >> 31) + bool2int32(lo1 < l)
-
- // Compute y*q[1] as 64-bit value.
- l = uint32((int32(y) & 0xFFFF) * int32(q[1]))
- m = (int32(y) >> 16) * int32(q[1])
-
- lo2 := l + (uint32(m) << 16)
- hi2 := (m >> 16) + (int32(l) >> 31) + bool2int32(lo2 < l)
-
- // Add them.
- lo := lo1 + lo2
- hi := hi1 + hi2 + bool2int32(lo < lo1)
-
- // Divide the result by 2^14 with rounding.
- s := hi >> 31
- l = lo + uint32(s)
- hi += s + bool2int32(l < lo)
- lo = l
-
- l = lo + 0x2000
- hi += bool2int32(l < lo)
-
- return f26dot6((uint32(hi) << 18) | (l >> 14))
-}
-
-// mulDiv returns x*y/z, rounded to the nearest integer.
-func mulDiv(x, y, z int64) int64 {
- xy := x * y
- if z < 0 {
- xy, z = -xy, -z
- }
- if xy >= 0 {
- xy += z / 2
- } else {
- xy -= z / 2
- }
- return xy / z
-}
-
-// round rounds the given number. The rounding algorithm is described at
-// https://developer.apple.com/fonts/TTRefMan/RM02/Chap2.html#rounding
-func (h *hinter) round(x f26dot6) f26dot6 {
- if h.gs.roundPeriod == 0 {
- // Rounding is off.
- return x
- }
- if x >= 0 {
- ret := x - h.gs.roundPhase + h.gs.roundThreshold
- if h.gs.roundSuper45 {
- ret /= h.gs.roundPeriod
- ret *= h.gs.roundPeriod
- } else {
- ret &= -h.gs.roundPeriod
- }
- if x != 0 && ret < 0 {
- ret = 0
- }
- return ret + h.gs.roundPhase
- }
- ret := -x - h.gs.roundPhase + h.gs.roundThreshold
- if h.gs.roundSuper45 {
- ret /= h.gs.roundPeriod
- ret *= h.gs.roundPeriod
- } else {
- ret &= -h.gs.roundPeriod
- }
- if ret < 0 {
- ret = 0
- }
- return -ret - h.gs.roundPhase
-}
-
-func bool2int32(b bool) int32 {
- if b {
- return 1
- }
- return 0
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/hint_test.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/hint_test.go
deleted file mode 100644
index c8b8d604d..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/hint_test.go
+++ /dev/null
@@ -1,673 +0,0 @@
-// Copyright 2012 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package truetype
-
-import (
- "reflect"
- "strings"
- "testing"
-)
-
-func TestBytecode(t *testing.T) {
- testCases := []struct {
- desc string
- prog []byte
- want []int32
- errStr string
- }{
- {
- "underflow",
- []byte{
- opDUP,
- },
- nil,
- "underflow",
- },
- {
- "infinite loop",
- []byte{
- opPUSHW000, // [-1]
- 0xff,
- 0xff,
- opDUP, // [-1, -1]
- opJMPR, // [-1]
- },
- nil,
- "too many steps",
- },
- {
- "unbalanced if/else",
- []byte{
- opPUSHB000, // [0]
- 0,
- opIF,
- },
- nil,
- "unbalanced",
- },
- {
- "vector set/gets",
- []byte{
- opSVTCA1, // []
- opGPV, // [0x4000, 0]
- opSVTCA0, // [0x4000, 0]
- opGFV, // [0x4000, 0, 0, 0x4000]
- opNEG, // [0x4000, 0, 0, -0x4000]
- opSPVFS, // [0x4000, 0]
- opSFVTPV, // [0x4000, 0]
- opPUSHB000, // [0x4000, 0, 1]
- 1,
- opGFV, // [0x4000, 0, 1, 0, -0x4000]
- opPUSHB000, // [0x4000, 0, 1, 0, -0x4000, 2]
- 2,
- },
- []int32{0x4000, 0, 1, 0, -0x4000, 2},
- "",
- },
- {
- "jumps",
- []byte{
- opPUSHB001, // [10, 2]
- 10,
- 2,
- opJMPR, // [10]
- opDUP, // not executed
- opDUP, // [10, 10]
- opPUSHB010, // [10, 10, 20, 2, 1]
- 20,
- 2,
- 1,
- opJROT, // [10, 10, 20]
- opDUP, // not executed
- opDUP, // [10, 10, 20, 20]
- opPUSHB010, // [10, 10, 20, 20, 30, 2, 1]
- 30,
- 2,
- 1,
- opJROF, // [10, 10, 20, 20, 30]
- opDUP, // [10, 10, 20, 20, 30, 30]
- opDUP, // [10, 10, 20, 20, 30, 30, 30]
- },
- []int32{10, 10, 20, 20, 30, 30, 30},
- "",
- },
- {
- "stack ops",
- []byte{
- opPUSHB010, // [10, 20, 30]
- 10,
- 20,
- 30,
- opCLEAR, // []
- opPUSHB010, // [40, 50, 60]
- 40,
- 50,
- 60,
- opSWAP, // [40, 60, 50]
- opDUP, // [40, 60, 50, 50]
- opDUP, // [40, 60, 50, 50, 50]
- opPOP, // [40, 60, 50, 50]
- opDEPTH, // [40, 60, 50, 50, 4]
- opCINDEX, // [40, 60, 50, 50, 40]
- opPUSHB000, // [40, 60, 50, 50, 40, 4]
- 4,
- opMINDEX, // [40, 50, 50, 40, 60]
- },
- []int32{40, 50, 50, 40, 60},
- "",
- },
- {
- "push ops",
- []byte{
- opPUSHB000, // [255]
- 255,
- opPUSHW001, // [255, -2, 253]
- 255,
- 254,
- 0,
- 253,
- opNPUSHB, // [1, -2, 253, 1, 2]
- 2,
- 1,
- 2,
- opNPUSHW, // [1, -2, 253, 1, 2, 0x0405, 0x0607, 0x0809]
- 3,
- 4,
- 5,
- 6,
- 7,
- 8,
- 9,
- },
- []int32{255, -2, 253, 1, 2, 0x0405, 0x0607, 0x0809},
- "",
- },
- {
- "store ops",
- []byte{
- opPUSHB011, // [1, 22, 3, 44]
- 1,
- 22,
- 3,
- 44,
- opWS, // [1, 22]
- opWS, // []
- opPUSHB000, // [3]
- 3,
- opRS, // [44]
- },
- []int32{44},
- "",
- },
- {
- "comparison ops",
- []byte{
- opPUSHB001, // [10, 20]
- 10,
- 20,
- opLT, // [1]
- opPUSHB001, // [1, 10, 20]
- 10,
- 20,
- opLTEQ, // [1, 1]
- opPUSHB001, // [1, 1, 10, 20]
- 10,
- 20,
- opGT, // [1, 1, 0]
- opPUSHB001, // [1, 1, 0, 10, 20]
- 10,
- 20,
- opGTEQ, // [1, 1, 0, 0]
- opEQ, // [1, 1, 1]
- opNEQ, // [1, 0]
- },
- []int32{1, 0},
- "",
- },
- {
- "odd/even",
- // Calculate odd(2+31/64), odd(2+32/64), even(2), even(1).
- []byte{
- opPUSHB000, // [159]
- 159,
- opODD, // [0]
- opPUSHB000, // [0, 160]
- 160,
- opODD, // [0, 1]
- opPUSHB000, // [0, 1, 128]
- 128,
- opEVEN, // [0, 1, 1]
- opPUSHB000, // [0, 1, 1, 64]
- 64,
- opEVEN, // [0, 1, 1, 0]
- },
- []int32{0, 1, 1, 0},
- "",
- },
- {
- "if true",
- []byte{
- opPUSHB001, // [255, 1]
- 255,
- 1,
- opIF,
- opPUSHB000, // [255, 2]
- 2,
- opEIF,
- opPUSHB000, // [255, 2, 254]
- 254,
- },
- []int32{255, 2, 254},
- "",
- },
- {
- "if false",
- []byte{
- opPUSHB001, // [255, 0]
- 255,
- 0,
- opIF,
- opPUSHB000, // [255]
- 2,
- opEIF,
- opPUSHB000, // [255, 254]
- 254,
- },
- []int32{255, 254},
- "",
- },
- {
- "if/else true",
- []byte{
- opPUSHB000, // [1]
- 1,
- opIF,
- opPUSHB000, // [2]
- 2,
- opELSE,
- opPUSHB000, // not executed
- 3,
- opEIF,
- },
- []int32{2},
- "",
- },
- {
- "if/else false",
- []byte{
- opPUSHB000, // [0]
- 0,
- opIF,
- opPUSHB000, // not executed
- 2,
- opELSE,
- opPUSHB000, // [3]
- 3,
- opEIF,
- },
- []int32{3},
- "",
- },
- {
- "if/else true if/else false",
- // 0x58 is the opcode for opIF. The literal 0x58s below are pushed data.
- []byte{
- opPUSHB010, // [255, 0, 1]
- 255,
- 0,
- 1,
- opIF,
- opIF,
- opPUSHB001, // not executed
- 0x58,
- 0x58,
- opELSE,
- opPUSHW000, // [255, 0x5858]
- 0x58,
- 0x58,
- opEIF,
- opELSE,
- opIF,
- opNPUSHB, // not executed
- 3,
- 0x58,
- 0x58,
- 0x58,
- opELSE,
- opNPUSHW, // not executed
- 2,
- 0x58,
- 0x58,
- 0x58,
- 0x58,
- opEIF,
- opEIF,
- opPUSHB000, // [255, 0x5858, 254]
- 254,
- },
- []int32{255, 0x5858, 254},
- "",
- },
- {
- "if/else false if/else true",
- // 0x58 is the opcode for opIF. The literal 0x58s below are pushed data.
- []byte{
- opPUSHB010, // [255, 1, 0]
- 255,
- 1,
- 0,
- opIF,
- opIF,
- opPUSHB001, // not executed
- 0x58,
- 0x58,
- opELSE,
- opPUSHW000, // not executed
- 0x58,
- 0x58,
- opEIF,
- opELSE,
- opIF,
- opNPUSHB, // [255, 0x58, 0x58, 0x58]
- 3,
- 0x58,
- 0x58,
- 0x58,
- opELSE,
- opNPUSHW, // not executed
- 2,
- 0x58,
- 0x58,
- 0x58,
- 0x58,
- opEIF,
- opEIF,
- opPUSHB000, // [255, 0x58, 0x58, 0x58, 254]
- 254,
- },
- []int32{255, 0x58, 0x58, 0x58, 254},
- "",
- },
- {
- "logical ops",
- []byte{
- opPUSHB010, // [0, 10, 20]
- 0,
- 10,
- 20,
- opAND, // [0, 1]
- opOR, // [1]
- opNOT, // [0]
- },
- []int32{0},
- "",
- },
- {
- "arithmetic ops",
- // Calculate abs((-(1 - (2*3)))/2 + 1/64).
- // The answer is 5/2 + 1/64 in ideal numbers, or 161 in 26.6 fixed point math.
- []byte{
- opPUSHB010, // [64, 128, 192]
- 1 << 6,
- 2 << 6,
- 3 << 6,
- opMUL, // [64, 384]
- opSUB, // [-320]
- opNEG, // [320]
- opPUSHB000, // [320, 128]
- 2 << 6,
- opDIV, // [160]
- opPUSHB000, // [160, 1]
- 1,
- opADD, // [161]
- opABS, // [161]
- },
- []int32{161},
- "",
- },
- {
- "floor, ceiling",
- []byte{
- opPUSHB000, // [96]
- 96,
- opFLOOR, // [64]
- opPUSHB000, // [64, 96]
- 96,
- opCEILING, // [64, 128]
- },
- []int32{64, 128},
- "",
- },
- {
- "rounding",
- // Round 1.40625 (which is 90/64) under various rounding policies.
- // See figure 20 of https://developer.apple.com/fonts/TTRefMan/RM02/Chap2.html#rounding
- []byte{
- opROFF, // []
- opPUSHB000, // [90]
- 90,
- opROUND00, // [90]
- opRTG, // [90]
- opPUSHB000, // [90, 90]
- 90,
- opROUND00, // [90, 64]
- opRTHG, // [90, 64]
- opPUSHB000, // [90, 64, 90]
- 90,
- opROUND00, // [90, 64, 96]
- opRDTG, // [90, 64, 96]
- opPUSHB000, // [90, 64, 96, 90]
- 90,
- opROUND00, // [90, 64, 96, 64]
- opRUTG, // [90, 64, 96, 64]
- opPUSHB000, // [90, 64, 96, 64, 90]
- 90,
- opROUND00, // [90, 64, 96, 64, 128]
- opRTDG, // [90, 64, 96, 64, 128]
- opPUSHB000, // [90, 64, 96, 64, 128, 90]
- 90,
- opROUND00, // [90, 64, 96, 64, 128, 96]
- },
- []int32{90, 64, 96, 64, 128, 96},
- "",
- },
- {
- "super-rounding",
- // See figure 20 of https://developer.apple.com/fonts/TTRefMan/RM02/Chap2.html#rounding
- // and the sign preservation steps of the "Order of rounding operations" section.
- []byte{
- opPUSHB000, // [0x58]
- 0x58,
- opSROUND, // []
- opPUSHW000, // [-81]
- 0xff,
- 0xaf,
- opROUND00, // [-80]
- opPUSHW000, // [-80, -80]
- 0xff,
- 0xb0,
- opROUND00, // [-80, -80]
- opPUSHW000, // [-80, -80, -17]
- 0xff,
- 0xef,
- opROUND00, // [-80, -80, -16]
- opPUSHW000, // [-80, -80, -16, -16]
- 0xff,
- 0xf0,
- opROUND00, // [-80, -80, -16, -16]
- opPUSHB000, // [-80, -80, -16, -16, 0]
- 0,
- opROUND00, // [-80, -80, -16, -16, 16]
- opPUSHB000, // [-80, -80, -16, -16, 16, 16]
- 16,
- opROUND00, // [-80, -80, -16, -16, 16, 16]
- opPUSHB000, // [-80, -80, -16, -16, 16, 16, 47]
- 47,
- opROUND00, // [-80, -80, -16, -16, 16, 16, 16]
- opPUSHB000, // [-80, -80, -16, -16, 16, 16, 16, 48]
- 48,
- opROUND00, // [-80, -80, -16, -16, 16, 16, 16, 80]
- },
- []int32{-80, -80, -16, -16, 16, 16, 16, 80},
- "",
- },
- {
- "roll",
- []byte{
- opPUSHB010, // [1, 2, 3]
- 1,
- 2,
- 3,
- opROLL, // [2, 3, 1]
- },
- []int32{2, 3, 1},
- "",
- },
- {
- "max/min",
- []byte{
- opPUSHW001, // [-2, -3]
- 0xff,
- 0xfe,
- 0xff,
- 0xfd,
- opMAX, // [-2]
- opPUSHW001, // [-2, -4, -5]
- 0xff,
- 0xfc,
- 0xff,
- 0xfb,
- opMIN, // [-2, -5]
- },
- []int32{-2, -5},
- "",
- },
- {
- "functions",
- []byte{
- opPUSHB011, // [3, 7, 0, 3]
- 3,
- 7,
- 0,
- 3,
-
- opFDEF, // Function #3 (not called)
- opPUSHB000,
- 98,
- opENDF,
-
- opFDEF, // Function #0
- opDUP,
- opADD,
- opENDF,
-
- opFDEF, // Function #7
- opPUSHB001,
- 10,
- 0,
- opCALL,
- opDUP,
- opENDF,
-
- opFDEF, // Function #3 (again)
- opPUSHB000,
- 99,
- opENDF,
-
- opPUSHB001, // [2, 0]
- 2,
- 0,
- opCALL, // [4]
- opPUSHB000, // [4, 3]
- 3,
- opLOOPCALL, // [99, 99, 99, 99]
- opPUSHB000, // [99, 99, 99, 99, 7]
- 7,
- opCALL, // [99, 99, 99, 99, 20, 20]
- },
- []int32{99, 99, 99, 99, 20, 20},
- "",
- },
- }
-
- for _, tc := range testCases {
- h := &hinter{}
- h.init(&Font{
- maxStorage: 32,
- maxStackElements: 100,
- }, 768)
- err, errStr := h.run(tc.prog, nil, nil, nil, nil), ""
- if err != nil {
- errStr = err.Error()
- }
- if tc.errStr != "" {
- if errStr == "" {
- t.Errorf("%s: got no error, want %q", tc.desc, tc.errStr)
- } else if !strings.Contains(errStr, tc.errStr) {
- t.Errorf("%s: got error %q, want one containing %q", tc.desc, errStr, tc.errStr)
- }
- continue
- }
- if errStr != "" {
- t.Errorf("%s: got error %q, want none", tc.desc, errStr)
- continue
- }
- got := h.stack[:len(tc.want)]
- if !reflect.DeepEqual(got, tc.want) {
- t.Errorf("%s: got %v, want %v", tc.desc, got, tc.want)
- continue
- }
- }
-}
-
-// TestMove tests that the hinter.move method matches the output of the C
-// Freetype implementation.
-func TestMove(t *testing.T) {
- h, p := hinter{}, Point{}
- testCases := []struct {
- pvX, pvY, fvX, fvY f2dot14
- wantX, wantY int32
- }{
- {+0x4000, +0x0000, +0x4000, +0x0000, +1000, +0},
- {+0x4000, +0x0000, -0x4000, +0x0000, +1000, +0},
- {-0x4000, +0x0000, +0x4000, +0x0000, -1000, +0},
- {-0x4000, +0x0000, -0x4000, +0x0000, -1000, +0},
- {+0x0000, +0x4000, +0x0000, +0x4000, +0, +1000},
- {+0x0000, +0x4000, +0x0000, -0x4000, +0, +1000},
- {+0x4000, +0x0000, +0x2d41, +0x2d41, +1000, +1000},
- {+0x4000, +0x0000, -0x2d41, +0x2d41, +1000, -1000},
- {+0x4000, +0x0000, +0x2d41, -0x2d41, +1000, -1000},
- {+0x4000, +0x0000, -0x2d41, -0x2d41, +1000, +1000},
- {-0x4000, +0x0000, +0x2d41, +0x2d41, -1000, -1000},
- {-0x4000, +0x0000, -0x2d41, +0x2d41, -1000, +1000},
- {-0x4000, +0x0000, +0x2d41, -0x2d41, -1000, +1000},
- {-0x4000, +0x0000, -0x2d41, -0x2d41, -1000, -1000},
- {+0x376d, +0x2000, +0x2d41, +0x2d41, +732, +732},
- {-0x376d, +0x2000, +0x2d41, +0x2d41, -2732, -2732},
- {+0x376d, +0x2000, +0x2d41, -0x2d41, +2732, -2732},
- {-0x376d, +0x2000, +0x2d41, -0x2d41, -732, +732},
- {-0x376d, -0x2000, +0x2d41, +0x2d41, -732, -732},
- {+0x376d, +0x2000, +0x4000, +0x0000, +1155, +0},
- {+0x376d, +0x2000, +0x0000, +0x4000, +0, +2000},
- }
- for _, tc := range testCases {
- p = Point{}
- h.gs.pv = [2]f2dot14{tc.pvX, tc.pvY}
- h.gs.fv = [2]f2dot14{tc.fvX, tc.fvY}
- h.move(&p, 1000, true)
- tx := p.Flags&flagTouchedX != 0
- ty := p.Flags&flagTouchedY != 0
- wantTX := tc.fvX != 0
- wantTY := tc.fvY != 0
- if p.X != tc.wantX || p.Y != tc.wantY || tx != wantTX || ty != wantTY {
- t.Errorf("pv=%v, fv=%v\ngot %d, %d, %t, %t\nwant %d, %d, %t, %t",
- h.gs.pv, h.gs.fv, p.X, p.Y, tx, ty, tc.wantX, tc.wantY, wantTX, wantTY)
- continue
- }
-
- // Check that p is aligned with the freedom vector.
- a := int64(p.X) * int64(tc.fvY)
- b := int64(p.Y) * int64(tc.fvX)
- if a != b {
- t.Errorf("pv=%v, fv=%v, p=%v not aligned with fv", h.gs.pv, h.gs.fv, p)
- continue
- }
-
- // Check that the projected p is 1000 away from the origin.
- dotProd := (int64(p.X)*int64(tc.pvX) + int64(p.Y)*int64(tc.pvY) + 1<<13) >> 14
- if dotProd != 1000 {
- t.Errorf("pv=%v, fv=%v, p=%v not 1000 from origin", h.gs.pv, h.gs.fv, p)
- continue
- }
- }
-}
-
-// TestNormalize tests that the normalize function matches the output of the C
-// Freetype implementation.
-func TestNormalize(t *testing.T) {
- testCases := [][2]f2dot14{
- {-15895, 3974},
- {-15543, 5181},
- {-14654, 7327},
- {-11585, 11585},
- {0, 16384},
- {11585, 11585},
- {14654, 7327},
- {15543, 5181},
- {15895, 3974},
- {16066, 3213},
- {16161, 2694},
- {16219, 2317},
- {16257, 2032},
- {16284, 1809},
- }
- for i, want := range testCases {
- got := normalize(f2dot14(i)-4, 1)
- if got != want {
- t.Errorf("i=%d: got %v, want %v", i, got, want)
- }
- }
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/opcodes.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/opcodes.go
deleted file mode 100644
index 1880e1e63..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/opcodes.go
+++ /dev/null
@@ -1,289 +0,0 @@
-// Copyright 2012 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package truetype
-
-// The Truetype opcodes are summarized at
-// https://developer.apple.com/fonts/TTRefMan/RM07/appendixA.html
-
-const (
- opSVTCA0 = 0x00 // Set freedom and projection Vectors To Coordinate Axis
- opSVTCA1 = 0x01 // .
- opSPVTCA0 = 0x02 // Set Projection Vector To Coordinate Axis
- opSPVTCA1 = 0x03 // .
- opSFVTCA0 = 0x04 // Set Freedom Vector to Coordinate Axis
- opSFVTCA1 = 0x05 // .
- opSPVTL0 = 0x06 // Set Projection Vector To Line
- opSPVTL1 = 0x07 // .
- opSFVTL0 = 0x08 // Set Freedom Vector To Line
- opSFVTL1 = 0x09 // .
- opSPVFS = 0x0a // Set Projection Vector From Stack
- opSFVFS = 0x0b // Set Freedom Vector From Stack
- opGPV = 0x0c // Get Projection Vector
- opGFV = 0x0d // Get Freedom Vector
- opSFVTPV = 0x0e // Set Freedom Vector To Projection Vector
- opISECT = 0x0f // moves point p to the InterSECTion of two lines
- opSRP0 = 0x10 // Set Reference Point 0
- opSRP1 = 0x11 // Set Reference Point 1
- opSRP2 = 0x12 // Set Reference Point 2
- opSZP0 = 0x13 // Set Zone Pointer 0
- opSZP1 = 0x14 // Set Zone Pointer 1
- opSZP2 = 0x15 // Set Zone Pointer 2
- opSZPS = 0x16 // Set Zone PointerS
- opSLOOP = 0x17 // Set LOOP variable
- opRTG = 0x18 // Round To Grid
- opRTHG = 0x19 // Round To Half Grid
- opSMD = 0x1a // Set Minimum Distance
- opELSE = 0x1b // ELSE clause
- opJMPR = 0x1c // JuMP Relative
- opSCVTCI = 0x1d // Set Control Value Table Cut-In
- opSSWCI = 0x1e // Set Single Width Cut-In
- opSSW = 0x1f // Set Single Width
- opDUP = 0x20 // DUPlicate top stack element
- opPOP = 0x21 // POP top stack element
- opCLEAR = 0x22 // CLEAR the stack
- opSWAP = 0x23 // SWAP the top two elements on the stack
- opDEPTH = 0x24 // DEPTH of the stack
- opCINDEX = 0x25 // Copy the INDEXed element to the top of the stack
- opMINDEX = 0x26 // Move the INDEXed element to the top of the stack
- opALIGNPTS = 0x27 // ALIGN PoinTS
- op_0x28 = 0x28 // deprecated
- opUTP = 0x29 // UnTouch Point
- opLOOPCALL = 0x2a // LOOP and CALL function
- opCALL = 0x2b // CALL function
- opFDEF = 0x2c // Function DEFinition
- opENDF = 0x2d // END Function definition
- opMDAP0 = 0x2e // Move Direct Absolute Point
- opMDAP1 = 0x2f // .
- opIUP0 = 0x30 // Interpolate Untouched Points through the outline
- opIUP1 = 0x31 // .
- opSHP0 = 0x32 // SHift Point using reference point
- opSHP1 = 0x33 // .
- opSHC0 = 0x34 // SHift Contour using reference point
- opSHC1 = 0x35 // .
- opSHZ0 = 0x36 // SHift Zone using reference point
- opSHZ1 = 0x37 // .
- opSHPIX = 0x38 // SHift point by a PIXel amount
- opIP = 0x39 // Interpolate Point
- opMSIRP0 = 0x3a // Move Stack Indirect Relative Point
- opMSIRP1 = 0x3b // .
- opALIGNRP = 0x3c // ALIGN to Reference Point
- opRTDG = 0x3d // Round To Double Grid
- opMIAP0 = 0x3e // Move Indirect Absolute Point
- opMIAP1 = 0x3f // .
- opNPUSHB = 0x40 // PUSH N Bytes
- opNPUSHW = 0x41 // PUSH N Words
- opWS = 0x42 // Write Store
- opRS = 0x43 // Read Store
- opWCVTP = 0x44 // Write Control Value Table in Pixel units
- opRCVT = 0x45 // Read Control Value Table entry
- opGC0 = 0x46 // Get Coordinate projected onto the projection vector
- opGC1 = 0x47 // .
- opSCFS = 0x48 // Sets Coordinate From the Stack using projection vector and freedom vector
- opMD0 = 0x49 // Measure Distance
- opMD1 = 0x4a // .
- opMPPEM = 0x4b // Measure Pixels Per EM
- opMPS = 0x4c // Measure Point Size
- opFLIPON = 0x4d // set the auto FLIP Boolean to ON
- opFLIPOFF = 0x4e // set the auto FLIP Boolean to OFF
- opDEBUG = 0x4f // DEBUG call
- opLT = 0x50 // Less Than
- opLTEQ = 0x51 // Less Than or EQual
- opGT = 0x52 // Greater Than
- opGTEQ = 0x53 // Greater Than or EQual
- opEQ = 0x54 // EQual
- opNEQ = 0x55 // Not EQual
- opODD = 0x56 // ODD
- opEVEN = 0x57 // EVEN
- opIF = 0x58 // IF test
- opEIF = 0x59 // End IF
- opAND = 0x5a // logical AND
- opOR = 0x5b // logical OR
- opNOT = 0x5c // logical NOT
- opDELTAP1 = 0x5d // DELTA exception P1
- opSDB = 0x5e // Set Delta Base in the graphics state
- opSDS = 0x5f // Set Delta Shift in the graphics state
- opADD = 0x60 // ADD
- opSUB = 0x61 // SUBtract
- opDIV = 0x62 // DIVide
- opMUL = 0x63 // MULtiply
- opABS = 0x64 // ABSolute value
- opNEG = 0x65 // NEGate
- opFLOOR = 0x66 // FLOOR
- opCEILING = 0x67 // CEILING
- opROUND00 = 0x68 // ROUND value
- opROUND01 = 0x69 // .
- opROUND10 = 0x6a // .
- opROUND11 = 0x6b // .
- opNROUND00 = 0x6c // No ROUNDing of value
- opNROUND01 = 0x6d // .
- opNROUND10 = 0x6e // .
- opNROUND11 = 0x6f // .
- opWCVTF = 0x70 // Write Control Value Table in Funits
- opDELTAP2 = 0x71 // DELTA exception P2
- opDELTAP3 = 0x72 // DELTA exception P3
- opDELTAC1 = 0x73 // DELTA exception C1
- opDELTAC2 = 0x74 // DELTA exception C2
- opDELTAC3 = 0x75 // DELTA exception C3
- opSROUND = 0x76 // Super ROUND
- opS45ROUND = 0x77 // Super ROUND 45 degrees
- opJROT = 0x78 // Jump Relative On True
- opJROF = 0x79 // Jump Relative On False
- opROFF = 0x7a // Round OFF
- op_0x7b = 0x7b // deprecated
- opRUTG = 0x7c // Round Up To Grid
- opRDTG = 0x7d // Round Down To Grid
- opSANGW = 0x7e // Set ANGle Weight
- opAA = 0x7f // Adjust Angle
- opFLIPPT = 0x80 // FLIP PoinT
- opFLIPRGON = 0x81 // FLIP RanGe ON
- opFLIPRGOFF = 0x82 // FLIP RanGe OFF
- op_0x83 = 0x83 // deprecated
- op_0x84 = 0x84 // deprecated
- opSCANCTRL = 0x85 // SCAN conversion ConTRoL
- opSDPVTL0 = 0x86 // Set Dual Projection Vector To Line
- opSDPVTL1 = 0x87 // .
- opGETINFO = 0x88 // GET INFOrmation
- opIDEF = 0x89 // Instruction DEFinition
- opROLL = 0x8a // ROLL the top three stack elements
- opMAX = 0x8b // MAXimum of top two stack elements
- opMIN = 0x8c // MINimum of top two stack elements
- opSCANTYPE = 0x8d // SCANTYPE
- opINSTCTRL = 0x8e // INSTRuction execution ConTRoL
- op_0x8f = 0x8f
- op_0x90 = 0x90
- op_0x91 = 0x91
- op_0x92 = 0x92
- op_0x93 = 0x93
- op_0x94 = 0x94
- op_0x95 = 0x95
- op_0x96 = 0x96
- op_0x97 = 0x97
- op_0x98 = 0x98
- op_0x99 = 0x99
- op_0x9a = 0x9a
- op_0x9b = 0x9b
- op_0x9c = 0x9c
- op_0x9d = 0x9d
- op_0x9e = 0x9e
- op_0x9f = 0x9f
- op_0xa0 = 0xa0
- op_0xa1 = 0xa1
- op_0xa2 = 0xa2
- op_0xa3 = 0xa3
- op_0xa4 = 0xa4
- op_0xa5 = 0xa5
- op_0xa6 = 0xa6
- op_0xa7 = 0xa7
- op_0xa8 = 0xa8
- op_0xa9 = 0xa9
- op_0xaa = 0xaa
- op_0xab = 0xab
- op_0xac = 0xac
- op_0xad = 0xad
- op_0xae = 0xae
- op_0xaf = 0xaf
- opPUSHB000 = 0xb0 // PUSH Bytes
- opPUSHB001 = 0xb1 // .
- opPUSHB010 = 0xb2 // .
- opPUSHB011 = 0xb3 // .
- opPUSHB100 = 0xb4 // .
- opPUSHB101 = 0xb5 // .
- opPUSHB110 = 0xb6 // .
- opPUSHB111 = 0xb7 // .
- opPUSHW000 = 0xb8 // PUSH Words
- opPUSHW001 = 0xb9 // .
- opPUSHW010 = 0xba // .
- opPUSHW011 = 0xbb // .
- opPUSHW100 = 0xbc // .
- opPUSHW101 = 0xbd // .
- opPUSHW110 = 0xbe // .
- opPUSHW111 = 0xbf // .
- opMDRP00000 = 0xc0 // Move Direct Relative Point
- opMDRP00001 = 0xc1 // .
- opMDRP00010 = 0xc2 // .
- opMDRP00011 = 0xc3 // .
- opMDRP00100 = 0xc4 // .
- opMDRP00101 = 0xc5 // .
- opMDRP00110 = 0xc6 // .
- opMDRP00111 = 0xc7 // .
- opMDRP01000 = 0xc8 // .
- opMDRP01001 = 0xc9 // .
- opMDRP01010 = 0xca // .
- opMDRP01011 = 0xcb // .
- opMDRP01100 = 0xcc // .
- opMDRP01101 = 0xcd // .
- opMDRP01110 = 0xce // .
- opMDRP01111 = 0xcf // .
- opMDRP10000 = 0xd0 // .
- opMDRP10001 = 0xd1 // .
- opMDRP10010 = 0xd2 // .
- opMDRP10011 = 0xd3 // .
- opMDRP10100 = 0xd4 // .
- opMDRP10101 = 0xd5 // .
- opMDRP10110 = 0xd6 // .
- opMDRP10111 = 0xd7 // .
- opMDRP11000 = 0xd8 // .
- opMDRP11001 = 0xd9 // .
- opMDRP11010 = 0xda // .
- opMDRP11011 = 0xdb // .
- opMDRP11100 = 0xdc // .
- opMDRP11101 = 0xdd // .
- opMDRP11110 = 0xde // .
- opMDRP11111 = 0xdf // .
- opMIRP00000 = 0xe0 // Move Indirect Relative Point
- opMIRP00001 = 0xe1 // .
- opMIRP00010 = 0xe2 // .
- opMIRP00011 = 0xe3 // .
- opMIRP00100 = 0xe4 // .
- opMIRP00101 = 0xe5 // .
- opMIRP00110 = 0xe6 // .
- opMIRP00111 = 0xe7 // .
- opMIRP01000 = 0xe8 // .
- opMIRP01001 = 0xe9 // .
- opMIRP01010 = 0xea // .
- opMIRP01011 = 0xeb // .
- opMIRP01100 = 0xec // .
- opMIRP01101 = 0xed // .
- opMIRP01110 = 0xee // .
- opMIRP01111 = 0xef // .
- opMIRP10000 = 0xf0 // .
- opMIRP10001 = 0xf1 // .
- opMIRP10010 = 0xf2 // .
- opMIRP10011 = 0xf3 // .
- opMIRP10100 = 0xf4 // .
- opMIRP10101 = 0xf5 // .
- opMIRP10110 = 0xf6 // .
- opMIRP10111 = 0xf7 // .
- opMIRP11000 = 0xf8 // .
- opMIRP11001 = 0xf9 // .
- opMIRP11010 = 0xfa // .
- opMIRP11011 = 0xfb // .
- opMIRP11100 = 0xfc // .
- opMIRP11101 = 0xfd // .
- opMIRP11110 = 0xfe // .
- opMIRP11111 = 0xff // .
-)
-
-// popCount is the number of stack elements that each opcode pops.
-var popCount = [256]uint8{
- // 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f
- 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 0, 0, 0, 5, // 0x00 - 0x0f
- 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, // 0x10 - 0x1f
- 1, 1, 0, 2, 0, 1, 1, 2, 0, 1, 2, 1, 1, 0, 1, 1, // 0x20 - 0x2f
- 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 2, 2, 0, 0, 2, 2, // 0x30 - 0x3f
- 0, 0, 2, 1, 2, 1, 1, 1, 2, 2, 2, 0, 0, 0, 0, 0, // 0x40 - 0x4f
- 2, 2, 2, 2, 2, 2, 1, 1, 1, 0, 2, 2, 1, 1, 1, 1, // 0x50 - 0x5f
- 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 0x60 - 0x6f
- 2, 1, 1, 1, 1, 1, 1, 1, 2, 2, 0, 0, 0, 0, 1, 1, // 0x70 - 0x7f
- 0, 2, 2, 0, 0, 1, 2, 2, 1, 1, 3, 2, 2, 1, 2, 0, // 0x80 - 0x8f
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 0x90 - 0x9f
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 0xa0 - 0xaf
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 0xb0 - 0xbf
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 0xc0 - 0xcf
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 0xd0 - 0xdf
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, // 0xe0 - 0xef
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, // 0xf0 - 0xff
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/truetype.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/truetype.go
deleted file mode 100644
index 96ceef547..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/truetype.go
+++ /dev/null
@@ -1,554 +0,0 @@
-// Copyright 2010 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-// Package truetype provides a parser for the TTF and TTC file formats.
-// Those formats are documented at http://developer.apple.com/fonts/TTRefMan/
-// and http://www.microsoft.com/typography/otspec/
-//
-// Some of a font's methods provide lengths or co-ordinates, e.g. bounds, font
-// metrics and control points. All these methods take a scale parameter, which
-// is the number of device units in 1 em. For example, if 1 em is 10 pixels and
-// 1 pixel is 64 units, then scale is 640. If the device space involves pixels,
-// 64 units per pixel is recommended, since that is what the bytecode hinter
-// uses when snapping point co-ordinates to the pixel grid.
-//
-// To measure a TrueType font in ideal FUnit space, use scale equal to
-// font.FUnitsPerEm().
-package truetype
-
-import (
- "fmt"
-)
-
-// An Index is a Font's index of a rune.
-type Index uint16
-
-// A Bounds holds the co-ordinate range of one or more glyphs.
-// The endpoints are inclusive.
-type Bounds struct {
- XMin, YMin, XMax, YMax int32
-}
-
-// An HMetric holds the horizontal metrics of a single glyph.
-type HMetric struct {
- AdvanceWidth, LeftSideBearing int32
-}
-
-// A VMetric holds the vertical metrics of a single glyph.
-type VMetric struct {
- AdvanceHeight, TopSideBearing int32
-}
-
-// A FormatError reports that the input is not a valid TrueType font.
-type FormatError string
-
-func (e FormatError) Error() string {
- return "freetype: invalid TrueType format: " + string(e)
-}
-
-// An UnsupportedError reports that the input uses a valid but unimplemented
-// TrueType feature.
-type UnsupportedError string
-
-func (e UnsupportedError) Error() string {
- return "freetype: unsupported TrueType feature: " + string(e)
-}
-
-// u32 returns the big-endian uint32 at b[i:].
-func u32(b []byte, i int) uint32 {
- return uint32(b[i])<<24 | uint32(b[i+1])<<16 | uint32(b[i+2])<<8 | uint32(b[i+3])
-}
-
-// u16 returns the big-endian uint16 at b[i:].
-func u16(b []byte, i int) uint16 {
- return uint16(b[i])<<8 | uint16(b[i+1])
-}
-
-// readTable returns a slice of the TTF data given by a table's directory entry.
-func readTable(ttf []byte, offsetLength []byte) ([]byte, error) {
- offset := int(u32(offsetLength, 0))
- if offset < 0 {
- return nil, FormatError(fmt.Sprintf("offset too large: %d", uint32(offset)))
- }
- length := int(u32(offsetLength, 4))
- if length < 0 {
- return nil, FormatError(fmt.Sprintf("length too large: %d", uint32(length)))
- }
- end := offset + length
- if end < 0 || end > len(ttf) {
- return nil, FormatError(fmt.Sprintf("offset + length too large: %d", uint32(offset)+uint32(length)))
- }
- return ttf[offset:end], nil
-}
-
-const (
- locaOffsetFormatUnknown int = iota
- locaOffsetFormatShort
- locaOffsetFormatLong
-)
-
-// A cm holds a parsed cmap entry.
-type cm struct {
- start, end, delta, offset uint32
-}
-
-// A Font represents a Truetype font.
-type Font struct {
- // Tables sliced from the TTF data. The different tables are documented
- // at http://developer.apple.com/fonts/TTRefMan/RM06/Chap6.html
- cmap, cvt, fpgm, glyf, hdmx, head, hhea, hmtx, kern, loca, maxp, os2, prep, vmtx []byte
-
- cmapIndexes []byte
-
- // Cached values derived from the raw ttf data.
- cm []cm
- locaOffsetFormat int
- nGlyph, nHMetric, nKern int
- fUnitsPerEm int32
- bounds Bounds
- // Values from the maxp section.
- maxTwilightPoints, maxStorage, maxFunctionDefs, maxStackElements uint16
-}
-
-func (f *Font) parseCmap() error {
- const (
- cmapFormat4 = 4
- cmapFormat12 = 12
- languageIndependent = 0
-
- // A 32-bit encoding consists of a most-significant 16-bit Platform ID and a
- // least-significant 16-bit Platform Specific ID. The magic numbers are
- // specified at https://www.microsoft.com/typography/otspec/name.htm
- unicodeEncoding = 0x00000003 // PID = 0 (Unicode), PSID = 3 (Unicode 2.0)
- microsoftSymbolEncoding = 0x00030000 // PID = 3 (Microsoft), PSID = 0 (Symbol)
- microsoftUCS2Encoding = 0x00030001 // PID = 3 (Microsoft), PSID = 1 (UCS-2)
- microsoftUCS4Encoding = 0x0003000a // PID = 3 (Microsoft), PSID = 10 (UCS-4)
- )
-
- if len(f.cmap) < 4 {
- return FormatError("cmap too short")
- }
- nsubtab := int(u16(f.cmap, 2))
- if len(f.cmap) < 8*nsubtab+4 {
- return FormatError("cmap too short")
- }
- offset, found, x := 0, false, 4
- for i := 0; i < nsubtab; i++ {
- // We read the 16-bit Platform ID and 16-bit Platform Specific ID as a single uint32.
- // All values are big-endian.
- pidPsid, o := u32(f.cmap, x), u32(f.cmap, x+4)
- x += 8
- // We prefer the Unicode cmap encoding. Failing to find that, we fall
- // back onto the Microsoft cmap encoding.
- if pidPsid == unicodeEncoding {
- offset, found = int(o), true
- break
-
- } else if pidPsid == microsoftSymbolEncoding ||
- pidPsid == microsoftUCS2Encoding ||
- pidPsid == microsoftUCS4Encoding {
-
- offset, found = int(o), true
- // We don't break out of the for loop, so that Unicode can override Microsoft.
- }
- }
- if !found {
- return UnsupportedError("cmap encoding")
- }
- if offset <= 0 || offset > len(f.cmap) {
- return FormatError("bad cmap offset")
- }
-
- cmapFormat := u16(f.cmap, offset)
- switch cmapFormat {
- case cmapFormat4:
- language := u16(f.cmap, offset+4)
- if language != languageIndependent {
- return UnsupportedError(fmt.Sprintf("language: %d", language))
- }
- segCountX2 := int(u16(f.cmap, offset+6))
- if segCountX2%2 == 1 {
- return FormatError(fmt.Sprintf("bad segCountX2: %d", segCountX2))
- }
- segCount := segCountX2 / 2
- offset += 14
- f.cm = make([]cm, segCount)
- for i := 0; i < segCount; i++ {
- f.cm[i].end = uint32(u16(f.cmap, offset))
- offset += 2
- }
- offset += 2
- for i := 0; i < segCount; i++ {
- f.cm[i].start = uint32(u16(f.cmap, offset))
- offset += 2
- }
- for i := 0; i < segCount; i++ {
- f.cm[i].delta = uint32(u16(f.cmap, offset))
- offset += 2
- }
- for i := 0; i < segCount; i++ {
- f.cm[i].offset = uint32(u16(f.cmap, offset))
- offset += 2
- }
- f.cmapIndexes = f.cmap[offset:]
- return nil
-
- case cmapFormat12:
- if u16(f.cmap, offset+2) != 0 {
- return FormatError(fmt.Sprintf("cmap format: % x", f.cmap[offset:offset+4]))
- }
- length := u32(f.cmap, offset+4)
- language := u32(f.cmap, offset+8)
- if language != languageIndependent {
- return UnsupportedError(fmt.Sprintf("language: %d", language))
- }
- nGroups := u32(f.cmap, offset+12)
- if length != 12*nGroups+16 {
- return FormatError("inconsistent cmap length")
- }
- offset += 16
- f.cm = make([]cm, nGroups)
- for i := uint32(0); i < nGroups; i++ {
- f.cm[i].start = u32(f.cmap, offset+0)
- f.cm[i].end = u32(f.cmap, offset+4)
- f.cm[i].delta = u32(f.cmap, offset+8) - f.cm[i].start
- offset += 12
- }
- return nil
- }
- return UnsupportedError(fmt.Sprintf("cmap format: %d", cmapFormat))
-}
-
-func (f *Font) parseHead() error {
- if len(f.head) != 54 {
- return FormatError(fmt.Sprintf("bad head length: %d", len(f.head)))
- }
- f.fUnitsPerEm = int32(u16(f.head, 18))
- f.bounds.XMin = int32(int16(u16(f.head, 36)))
- f.bounds.YMin = int32(int16(u16(f.head, 38)))
- f.bounds.XMax = int32(int16(u16(f.head, 40)))
- f.bounds.YMax = int32(int16(u16(f.head, 42)))
- switch i := u16(f.head, 50); i {
- case 0:
- f.locaOffsetFormat = locaOffsetFormatShort
- case 1:
- f.locaOffsetFormat = locaOffsetFormatLong
- default:
- return FormatError(fmt.Sprintf("bad indexToLocFormat: %d", i))
- }
- return nil
-}
-
-func (f *Font) parseHhea() error {
- if len(f.hhea) != 36 {
- return FormatError(fmt.Sprintf("bad hhea length: %d", len(f.hhea)))
- }
- f.nHMetric = int(u16(f.hhea, 34))
- if 4*f.nHMetric+2*(f.nGlyph-f.nHMetric) != len(f.hmtx) {
- return FormatError(fmt.Sprintf("bad hmtx length: %d", len(f.hmtx)))
- }
- return nil
-}
-
-func (f *Font) parseKern() error {
- // Apple's TrueType documentation (http://developer.apple.com/fonts/TTRefMan/RM06/Chap6kern.html) says:
- // "Previous versions of the 'kern' table defined both the version and nTables fields in the header
- // as UInt16 values and not UInt32 values. Use of the older format on the Mac OS is discouraged
- // (although AAT can sense an old kerning table and still make correct use of it). Microsoft
- // Windows still uses the older format for the 'kern' table and will not recognize the newer one.
- // Fonts targeted for the Mac OS only should use the new format; fonts targeted for both the Mac OS
- // and Windows should use the old format."
- // Since we expect that almost all fonts aim to be Windows-compatible, we only parse the "older" format,
- // just like the C Freetype implementation.
- if len(f.kern) == 0 {
- if f.nKern != 0 {
- return FormatError("bad kern table length")
- }
- return nil
- }
- if len(f.kern) < 18 {
- return FormatError("kern data too short")
- }
- version, offset := u16(f.kern, 0), 2
- if version != 0 {
- return UnsupportedError(fmt.Sprintf("kern version: %d", version))
- }
- n, offset := u16(f.kern, offset), offset+2
- if n != 1 {
- return UnsupportedError(fmt.Sprintf("kern nTables: %d", n))
- }
- offset += 2
- length, offset := int(u16(f.kern, offset)), offset+2
- coverage, offset := u16(f.kern, offset), offset+2
- if coverage != 0x0001 {
- // We only support horizontal kerning.
- return UnsupportedError(fmt.Sprintf("kern coverage: 0x%04x", coverage))
- }
- f.nKern, offset = int(u16(f.kern, offset)), offset+2
- if 6*f.nKern != length-14 {
- return FormatError("bad kern table length")
- }
- return nil
-}
-
-func (f *Font) parseMaxp() error {
- if len(f.maxp) != 32 {
- return FormatError(fmt.Sprintf("bad maxp length: %d", len(f.maxp)))
- }
- f.nGlyph = int(u16(f.maxp, 4))
- f.maxTwilightPoints = u16(f.maxp, 16)
- f.maxStorage = u16(f.maxp, 18)
- f.maxFunctionDefs = u16(f.maxp, 20)
- f.maxStackElements = u16(f.maxp, 24)
- return nil
-}
-
-// scale returns x divided by f.fUnitsPerEm, rounded to the nearest integer.
-func (f *Font) scale(x int32) int32 {
- if x >= 0 {
- x += f.fUnitsPerEm / 2
- } else {
- x -= f.fUnitsPerEm / 2
- }
- return x / f.fUnitsPerEm
-}
-
-// Bounds returns the union of a Font's glyphs' bounds.
-func (f *Font) Bounds(scale int32) Bounds {
- b := f.bounds
- b.XMin = f.scale(scale * b.XMin)
- b.YMin = f.scale(scale * b.YMin)
- b.XMax = f.scale(scale * b.XMax)
- b.YMax = f.scale(scale * b.YMax)
- return b
-}
-
-// FUnitsPerEm returns the number of FUnits in a Font's em-square's side.
-func (f *Font) FUnitsPerEm() int32 {
- return f.fUnitsPerEm
-}
-
-// Index returns a Font's index for the given rune.
-func (f *Font) Index(x rune) Index {
- c := uint32(x)
- for i, j := 0, len(f.cm); i < j; {
- h := i + (j-i)/2
- cm := &f.cm[h]
- if c < cm.start {
- j = h
- } else if cm.end < c {
- i = h + 1
- } else if cm.offset == 0 {
- return Index(c + cm.delta)
- } else {
- offset := int(cm.offset) + 2*(h-len(f.cm)+int(c-cm.start))
- return Index(u16(f.cmapIndexes, offset))
- }
- }
- return 0
-}
-
-// unscaledHMetric returns the unscaled horizontal metrics for the glyph with
-// the given index.
-func (f *Font) unscaledHMetric(i Index) (h HMetric) {
- j := int(i)
- if j < 0 || f.nGlyph <= j {
- return HMetric{}
- }
- if j >= f.nHMetric {
- p := 4 * (f.nHMetric - 1)
- return HMetric{
- AdvanceWidth: int32(u16(f.hmtx, p)),
- LeftSideBearing: int32(int16(u16(f.hmtx, p+2*(j-f.nHMetric)+4))),
- }
- }
- return HMetric{
- AdvanceWidth: int32(u16(f.hmtx, 4*j)),
- LeftSideBearing: int32(int16(u16(f.hmtx, 4*j+2))),
- }
-}
-
-// HMetric returns the horizontal metrics for the glyph with the given index.
-func (f *Font) HMetric(scale int32, i Index) HMetric {
- h := f.unscaledHMetric(i)
- h.AdvanceWidth = f.scale(scale * h.AdvanceWidth)
- h.LeftSideBearing = f.scale(scale * h.LeftSideBearing)
- return h
-}
-
-// unscaledVMetric returns the unscaled vertical metrics for the glyph with
-// the given index. yMax is the top of the glyph's bounding box.
-func (f *Font) unscaledVMetric(i Index, yMax int32) (v VMetric) {
- j := int(i)
- if j < 0 || f.nGlyph <= j {
- return VMetric{}
- }
- if 4*j+4 <= len(f.vmtx) {
- return VMetric{
- AdvanceHeight: int32(u16(f.vmtx, 4*j)),
- TopSideBearing: int32(int16(u16(f.vmtx, 4*j+2))),
- }
- }
- // The OS/2 table has grown over time.
- // https://developer.apple.com/fonts/TTRefMan/RM06/Chap6OS2.html
- // says that it was originally 68 bytes. Optional fields, including
- // the ascender and descender, are described at
- // http://www.microsoft.com/typography/otspec/os2.htm
- if len(f.os2) >= 72 {
- sTypoAscender := int32(int16(u16(f.os2, 68)))
- sTypoDescender := int32(int16(u16(f.os2, 70)))
- return VMetric{
- AdvanceHeight: sTypoAscender - sTypoDescender,
- TopSideBearing: sTypoAscender - yMax,
- }
- }
- return VMetric{
- AdvanceHeight: f.fUnitsPerEm,
- TopSideBearing: 0,
- }
-}
-
-// VMetric returns the vertical metrics for the glyph with the given index.
-func (f *Font) VMetric(scale int32, i Index) VMetric {
- // TODO: should 0 be bounds.YMax?
- v := f.unscaledVMetric(i, 0)
- v.AdvanceHeight = f.scale(scale * v.AdvanceHeight)
- v.TopSideBearing = f.scale(scale * v.TopSideBearing)
- return v
-}
-
-// Kerning returns the kerning for the given glyph pair.
-func (f *Font) Kerning(scale int32, i0, i1 Index) int32 {
- if f.nKern == 0 {
- return 0
- }
- g := uint32(i0)<<16 | uint32(i1)
- lo, hi := 0, f.nKern
- for lo < hi {
- i := (lo + hi) / 2
- ig := u32(f.kern, 18+6*i)
- if ig < g {
- lo = i + 1
- } else if ig > g {
- hi = i
- } else {
- return f.scale(scale * int32(int16(u16(f.kern, 22+6*i))))
- }
- }
- return 0
-}
-
-// Parse returns a new Font for the given TTF or TTC data.
-//
-// For TrueType Collections, the first font in the collection is parsed.
-func Parse(ttf []byte) (font *Font, err error) {
- return parse(ttf, 0)
-}
-
-func parse(ttf []byte, offset int) (font *Font, err error) {
- if len(ttf)-offset < 12 {
- err = FormatError("TTF data is too short")
- return
- }
- originalOffset := offset
- magic, offset := u32(ttf, offset), offset+4
- switch magic {
- case 0x00010000:
- // No-op.
- case 0x74746366: // "ttcf" as a big-endian uint32.
- if originalOffset != 0 {
- err = FormatError("recursive TTC")
- return
- }
- ttcVersion, offset := u32(ttf, offset), offset+4
- if ttcVersion != 0x00010000 {
- // TODO: support TTC version 2.0, once I have such a .ttc file to test with.
- err = FormatError("bad TTC version")
- return
- }
- numFonts, offset := int(u32(ttf, offset)), offset+4
- if numFonts <= 0 {
- err = FormatError("bad number of TTC fonts")
- return
- }
- if len(ttf[offset:])/4 < numFonts {
- err = FormatError("TTC offset table is too short")
- return
- }
- // TODO: provide an API to select which font in a TrueType collection to return,
- // not just the first one. This may require an API to parse a TTC's name tables,
- // so users of this package can select the font in a TTC by name.
- offset = int(u32(ttf, offset))
- if offset <= 0 || offset > len(ttf) {
- err = FormatError("bad TTC offset")
- return
- }
- return parse(ttf, offset)
- default:
- err = FormatError("bad TTF version")
- return
- }
- n, offset := int(u16(ttf, offset)), offset+2
- if len(ttf) < 16*n+12 {
- err = FormatError("TTF data is too short")
- return
- }
- f := new(Font)
- // Assign the table slices.
- for i := 0; i < n; i++ {
- x := 16*i + 12
- switch string(ttf[x : x+4]) {
- case "cmap":
- f.cmap, err = readTable(ttf, ttf[x+8:x+16])
- case "cvt ":
- f.cvt, err = readTable(ttf, ttf[x+8:x+16])
- case "fpgm":
- f.fpgm, err = readTable(ttf, ttf[x+8:x+16])
- case "glyf":
- f.glyf, err = readTable(ttf, ttf[x+8:x+16])
- case "hdmx":
- f.hdmx, err = readTable(ttf, ttf[x+8:x+16])
- case "head":
- f.head, err = readTable(ttf, ttf[x+8:x+16])
- case "hhea":
- f.hhea, err = readTable(ttf, ttf[x+8:x+16])
- case "hmtx":
- f.hmtx, err = readTable(ttf, ttf[x+8:x+16])
- case "kern":
- f.kern, err = readTable(ttf, ttf[x+8:x+16])
- case "loca":
- f.loca, err = readTable(ttf, ttf[x+8:x+16])
- case "maxp":
- f.maxp, err = readTable(ttf, ttf[x+8:x+16])
- case "OS/2":
- f.os2, err = readTable(ttf, ttf[x+8:x+16])
- case "prep":
- f.prep, err = readTable(ttf, ttf[x+8:x+16])
- case "vmtx":
- f.vmtx, err = readTable(ttf, ttf[x+8:x+16])
- }
- if err != nil {
- return
- }
- }
- // Parse and sanity-check the TTF data.
- if err = f.parseHead(); err != nil {
- return
- }
- if err = f.parseMaxp(); err != nil {
- return
- }
- if err = f.parseCmap(); err != nil {
- return
- }
- if err = f.parseKern(); err != nil {
- return
- }
- if err = f.parseHhea(); err != nil {
- return
- }
- font = f
- return
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/truetype_test.go b/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/truetype_test.go
deleted file mode 100644
index 9ef6ec8d2..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/freetype/truetype/truetype_test.go
+++ /dev/null
@@ -1,366 +0,0 @@
-// Copyright 2012 The Freetype-Go Authors. All rights reserved.
-// Use of this source code is governed by your choice of either the
-// FreeType License or the GNU General Public License version 2 (or
-// any later version), both of which can be found in the LICENSE file.
-
-package truetype
-
-import (
- "bufio"
- "fmt"
- "io"
- "io/ioutil"
- "os"
- "strconv"
- "strings"
- "testing"
-)
-
-func parseTestdataFont(name string) (font *Font, testdataIsOptional bool, err error) {
- b, err := ioutil.ReadFile(fmt.Sprintf("../../testdata/%s.ttf", name))
- if err != nil {
- // The "x-foo" fonts are optional tests, as they are not checked
- // in for copyright or file size reasons.
- return nil, strings.HasPrefix(name, "x-"), fmt.Errorf("%s: ReadFile: %v", name, err)
- }
- font, err = Parse(b)
- if err != nil {
- return nil, true, fmt.Errorf("%s: Parse: %v", name, err)
- }
- return font, false, nil
-}
-
-// TestParse tests that the luxisr.ttf metrics and glyphs are parsed correctly.
-// The numerical values can be manually verified by examining luxisr.ttx.
-func TestParse(t *testing.T) {
- font, _, err := parseTestdataFont("luxisr")
- if err != nil {
- t.Fatal(err)
- }
- if got, want := font.FUnitsPerEm(), int32(2048); got != want {
- t.Errorf("FUnitsPerEm: got %v, want %v", got, want)
- }
- fupe := font.FUnitsPerEm()
- if got, want := font.Bounds(fupe), (Bounds{-441, -432, 2024, 2033}); got != want {
- t.Errorf("Bounds: got %v, want %v", got, want)
- }
-
- i0 := font.Index('A')
- i1 := font.Index('V')
- if i0 != 36 || i1 != 57 {
- t.Fatalf("Index: i0, i1 = %d, %d, want 36, 57", i0, i1)
- }
- if got, want := font.HMetric(fupe, i0), (HMetric{1366, 19}); got != want {
- t.Errorf("HMetric: got %v, want %v", got, want)
- }
- if got, want := font.VMetric(fupe, i0), (VMetric{2465, 553}); got != want {
- t.Errorf("VMetric: got %v, want %v", got, want)
- }
- if got, want := font.Kerning(fupe, i0, i1), int32(-144); got != want {
- t.Errorf("Kerning: got %v, want %v", got, want)
- }
-
- g := NewGlyphBuf()
- err = g.Load(font, fupe, i0, NoHinting)
- if err != nil {
- t.Fatalf("Load: %v", err)
- }
- g0 := &GlyphBuf{
- B: g.B,
- Point: g.Point,
- End: g.End,
- }
- g1 := &GlyphBuf{
- B: Bounds{19, 0, 1342, 1480},
- Point: []Point{
- {19, 0, 51},
- {581, 1480, 1},
- {789, 1480, 51},
- {1342, 0, 1},
- {1116, 0, 35},
- {962, 410, 3},
- {368, 410, 33},
- {214, 0, 3},
- {428, 566, 19},
- {904, 566, 33},
- {667, 1200, 3},
- },
- End: []int{8, 11},
- }
- if got, want := fmt.Sprint(g0), fmt.Sprint(g1); got != want {
- t.Errorf("GlyphBuf:\ngot %v\nwant %v", got, want)
- }
-}
-
-func TestIndex(t *testing.T) {
- testCases := map[string]map[rune]Index{
- "luxisr": {
- ' ': 3,
- '!': 4,
- 'A': 36,
- 'V': 57,
- 'É': 101,
- 'fl': 193,
- '\u22c5': 385,
- '中': 0,
- },
-
- // The x-etc test cases use those versions of the .ttf files provided
- // by Ubuntu 14.04. See testdata/make-other-hinting-txts.sh for details.
-
- "x-arial-bold": {
- ' ': 3,
- '+': 14,
- '0': 19,
- '_': 66,
- 'w': 90,
- '~': 97,
- 'Ä': 98,
- 'fl': 192,
- '½': 242,
- 'σ': 305,
- 'λ': 540,
- 'ỹ': 1275,
- '\u04e9': 1319,
- '中': 0,
- },
- "x-deja-vu-sans-oblique": {
- ' ': 3,
- '*': 13,
- 'Œ': 276,
- 'ω': 861,
- '‡': 2571,
- '⊕': 3110,
- 'fl': 4728,
- '\ufb03': 4729,
- '\ufffd': 4813,
- // TODO: '\U0001f640': ???,
- '中': 0,
- },
- "x-droid-sans-japanese": {
- ' ': 0,
- '\u3000': 3,
- '\u3041': 25,
- '\u30fe': 201,
- '\uff61': 202,
- '\uff67': 208,
- '\uff9e': 263,
- '\uff9f': 264,
- '\u4e00': 265,
- '\u557e': 1000,
- '\u61b6': 2024,
- '\u6ede': 3177,
- '\u7505': 3555,
- '\u81e3': 4602,
- '\u81e5': 4603,
- '\u81e7': 4604,
- '\u81e8': 4605,
- '\u81ea': 4606,
- '\u81ed': 4607,
- '\u81f3': 4608,
- '\u81f4': 4609,
- '\u91c7': 5796,
- '\u9fa0': 6620,
- '\u203e': 12584,
- },
- "x-times-new-roman": {
- ' ': 3,
- ':': 29,
- 'fl': 192,
- 'Ŀ': 273,
- '♠': 388,
- 'Ŗ': 451,
- 'Σ': 520,
- '\u200D': 745,
- 'Ẽ': 1216,
- '\u04e9': 1319,
- '中': 0,
- },
- }
- for name, wants := range testCases {
- font, testdataIsOptional, err := parseTestdataFont(name)
- if err != nil {
- if testdataIsOptional {
- t.Log(err)
- } else {
- t.Fatal(err)
- }
- continue
- }
- for r, want := range wants {
- if got := font.Index(r); got != want {
- t.Errorf("%s: Index of %q, aka %U: got %d, want %d", name, r, r, got, want)
- }
- }
- }
-}
-
-type scalingTestData struct {
- advanceWidth int32
- bounds Bounds
- points []Point
-}
-
-// scalingTestParse parses a line of points like
-// 213 -22 -111 236 555;-22 -111 1, 178 555 1, 236 555 1, 36 -111 1
-// The line will not have a trailing "\n".
-func scalingTestParse(line string) (ret scalingTestData) {
- next := func(s string) (string, int32) {
- t, i := "", strings.Index(s, " ")
- if i != -1 {
- s, t = s[:i], s[i+1:]
- }
- x, _ := strconv.Atoi(s)
- return t, int32(x)
- }
-
- i := strings.Index(line, ";")
- prefix, line := line[:i], line[i+1:]
-
- prefix, ret.advanceWidth = next(prefix)
- prefix, ret.bounds.XMin = next(prefix)
- prefix, ret.bounds.YMin = next(prefix)
- prefix, ret.bounds.XMax = next(prefix)
- prefix, ret.bounds.YMax = next(prefix)
-
- ret.points = make([]Point, 0, 1+strings.Count(line, ","))
- for len(line) > 0 {
- s := line
- if i := strings.Index(line, ","); i != -1 {
- s, line = line[:i], line[i+1:]
- for len(line) > 0 && line[0] == ' ' {
- line = line[1:]
- }
- } else {
- line = ""
- }
- s, x := next(s)
- s, y := next(s)
- s, f := next(s)
- ret.points = append(ret.points, Point{X: x, Y: y, Flags: uint32(f)})
- }
- return ret
-}
-
-// scalingTestEquals is equivalent to, but faster than, calling
-// reflect.DeepEquals(a, b), and also returns the index of the first non-equal
-// element. It also treats a nil []Point and an empty non-nil []Point as equal.
-// a and b must have equal length.
-func scalingTestEquals(a, b []Point) (index int, equals bool) {
- for i, p := range a {
- if p != b[i] {
- return i, false
- }
- }
- return 0, true
-}
-
-var scalingTestCases = []struct {
- name string
- size int32
-}{
- {"luxisr", 12},
- {"x-arial-bold", 11},
- {"x-deja-vu-sans-oblique", 17},
- {"x-droid-sans-japanese", 9},
- {"x-times-new-roman", 13},
-}
-
-func testScaling(t *testing.T, h Hinting) {
- for _, tc := range scalingTestCases {
- font, testdataIsOptional, err := parseTestdataFont(tc.name)
- if err != nil {
- if testdataIsOptional {
- t.Log(err)
- } else {
- t.Error(err)
- }
- continue
- }
- hintingStr := "sans"
- if h != NoHinting {
- hintingStr = "with"
- }
- f, err := os.Open(fmt.Sprintf(
- "../../testdata/%s-%dpt-%s-hinting.txt", tc.name, tc.size, hintingStr))
- if err != nil {
- t.Errorf("%s: Open: %v", tc.name, err)
- continue
- }
- defer f.Close()
-
- wants := []scalingTestData{}
- scanner := bufio.NewScanner(f)
- if scanner.Scan() {
- major, minor, patch := 0, 0, 0
- _, err := fmt.Sscanf(scanner.Text(), "freetype version %d.%d.%d", &major, &minor, &patch)
- if err != nil {
- t.Errorf("%s: version information: %v", tc.name, err)
- }
- if (major < 2) || (major == 2 && minor < 5) || (major == 2 && minor == 5 && patch < 1) {
- t.Errorf("%s: need freetype version >= 2.5.1.\n"+
- "Try setting LD_LIBRARY_PATH=/path/to/freetype_built_from_src/objs/.libs/\n"+
- "and re-running testdata/make-other-hinting-txts.sh",
- tc.name)
- continue
- }
- } else {
- t.Errorf("%s: no version information", tc.name)
- continue
- }
- for scanner.Scan() {
- wants = append(wants, scalingTestParse(scanner.Text()))
- }
- if err := scanner.Err(); err != nil && err != io.EOF {
- t.Errorf("%s: Scanner: %v", tc.name, err)
- continue
- }
-
- glyphBuf := NewGlyphBuf()
- for i, want := range wants {
- if err = glyphBuf.Load(font, tc.size*64, Index(i), h); err != nil {
- t.Errorf("%s: glyph #%d: Load: %v", tc.name, i, err)
- continue
- }
- got := scalingTestData{
- advanceWidth: glyphBuf.AdvanceWidth,
- bounds: glyphBuf.B,
- points: glyphBuf.Point,
- }
-
- if got.advanceWidth != want.advanceWidth {
- t.Errorf("%s: glyph #%d advance width:\ngot %v\nwant %v",
- tc.name, i, got.advanceWidth, want.advanceWidth)
- continue
- }
-
- if got.bounds != want.bounds {
- t.Errorf("%s: glyph #%d bounds:\ngot %v\nwant %v",
- tc.name, i, got.bounds, want.bounds)
- continue
- }
-
- for i := range got.points {
- got.points[i].Flags &= 0x01
- }
- if len(got.points) != len(want.points) {
- t.Errorf("%s: glyph #%d:\ngot %v\nwant %v\ndifferent slice lengths: %d versus %d",
- tc.name, i, got.points, want.points, len(got.points), len(want.points))
- continue
- }
- if j, equals := scalingTestEquals(got.points, want.points); !equals {
- t.Errorf("%s: glyph #%d:\ngot %v\nwant %v\nat index %d: %v versus %v",
- tc.name, i, got.points, want.points, j, got.points[j], want.points[j])
- continue
- }
- }
- }
-}
-
-func TestScalingSansHinting(t *testing.T) {
- testScaling(t, NoHinting)
-}
-
-func TestScalingWithHinting(t *testing.T) {
- testScaling(t, FullHinting)
-}
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/lib/codereview/codereview.cfg b/Godeps/_workspace/src/code.google.com/p/freetype-go/lib/codereview/codereview.cfg
deleted file mode 100644
index 2801ebf8d..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/lib/codereview/codereview.cfg
+++ /dev/null
@@ -1 +0,0 @@
-defaultcc: golang-codereviews@googlegroups.com
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/licenses/ftl.txt b/Godeps/_workspace/src/code.google.com/p/freetype-go/licenses/ftl.txt
deleted file mode 100644
index bbaba33f4..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/licenses/ftl.txt
+++ /dev/null
@@ -1,169 +0,0 @@
- The FreeType Project LICENSE
- ----------------------------
-
- 2006-Jan-27
-
- Copyright 1996-2002, 2006 by
- David Turner, Robert Wilhelm, and Werner Lemberg
-
-
-
-Introduction
-============
-
- The FreeType Project is distributed in several archive packages;
- some of them may contain, in addition to the FreeType font engine,
- various tools and contributions which rely on, or relate to, the
- FreeType Project.
-
- This license applies to all files found in such packages, and
- which do not fall under their own explicit license. The license
- affects thus the FreeType font engine, the test programs,
- documentation and makefiles, at the very least.
-
- This license was inspired by the BSD, Artistic, and IJG
- (Independent JPEG Group) licenses, which all encourage inclusion
- and use of free software in commercial and freeware products
- alike. As a consequence, its main points are that:
-
- o We don't promise that this software works. However, we will be
- interested in any kind of bug reports. (`as is' distribution)
-
- o You can use this software for whatever you want, in parts or
- full form, without having to pay us. (`royalty-free' usage)
-
- o You may not pretend that you wrote this software. If you use
- it, or only parts of it, in a program, you must acknowledge
- somewhere in your documentation that you have used the
- FreeType code. (`credits')
-
- We specifically permit and encourage the inclusion of this
- software, with or without modifications, in commercial products.
- We disclaim all warranties covering The FreeType Project and
- assume no liability related to The FreeType Project.
-
-
- Finally, many people asked us for a preferred form for a
- credit/disclaimer to use in compliance with this license. We thus
- encourage you to use the following text:
-
- """
- Portions of this software are copyright <year> The FreeType
- Project (www.freetype.org). All rights reserved.
- """
-
- Please replace <year> with the value from the FreeType version you
- actually use.
-
-
-Legal Terms
-===========
-
-0. Definitions
---------------
-
- Throughout this license, the terms `package', `FreeType Project',
- and `FreeType archive' refer to the set of files originally
- distributed by the authors (David Turner, Robert Wilhelm, and
- Werner Lemberg) as the `FreeType Project', be they named as alpha,
- beta or final release.
-
- `You' refers to the licensee, or person using the project, where
- `using' is a generic term including compiling the project's source
- code as well as linking it to form a `program' or `executable'.
- This program is referred to as `a program using the FreeType
- engine'.
-
- This license applies to all files distributed in the original
- FreeType Project, including all source code, binaries and
- documentation, unless otherwise stated in the file in its
- original, unmodified form as distributed in the original archive.
- If you are unsure whether or not a particular file is covered by
- this license, you must contact us to verify this.
-
- The FreeType Project is copyright (C) 1996-2000 by David Turner,
- Robert Wilhelm, and Werner Lemberg. All rights reserved except as
- specified below.
-
-1. No Warranty
---------------
-
- THE FREETYPE PROJECT IS PROVIDED `AS IS' WITHOUT WARRANTY OF ANY
- KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- PURPOSE. IN NO EVENT WILL ANY OF THE AUTHORS OR COPYRIGHT HOLDERS
- BE LIABLE FOR ANY DAMAGES CAUSED BY THE USE OR THE INABILITY TO
- USE, OF THE FREETYPE PROJECT.
-
-2. Redistribution
------------------
-
- This license grants a worldwide, royalty-free, perpetual and
- irrevocable right and license to use, execute, perform, compile,
- display, copy, create derivative works of, distribute and
- sublicense the FreeType Project (in both source and object code
- forms) and derivative works thereof for any purpose; and to
- authorize others to exercise some or all of the rights granted
- herein, subject to the following conditions:
-
- o Redistribution of source code must retain this license file
- (`FTL.TXT') unaltered; any additions, deletions or changes to
- the original files must be clearly indicated in accompanying
- documentation. The copyright notices of the unaltered,
- original files must be preserved in all copies of source
- files.
-
- o Redistribution in binary form must provide a disclaimer that
- states that the software is based in part of the work of the
- FreeType Team, in the distribution documentation. We also
- encourage you to put an URL to the FreeType web page in your
- documentation, though this isn't mandatory.
-
- These conditions apply to any software derived from or based on
- the FreeType Project, not just the unmodified files. If you use
- our work, you must acknowledge us. However, no fee need be paid
- to us.
-
-3. Advertising
---------------
-
- Neither the FreeType authors and contributors nor you shall use
- the name of the other for commercial, advertising, or promotional
- purposes without specific prior written permission.
-
- We suggest, but do not require, that you use one or more of the
- following phrases to refer to this software in your documentation
- or advertising materials: `FreeType Project', `FreeType Engine',
- `FreeType library', or `FreeType Distribution'.
-
- As you have not signed this license, you are not required to
- accept it. However, as the FreeType Project is copyrighted
- material, only this license, or another one contracted with the
- authors, grants you the right to use, distribute, and modify it.
- Therefore, by using, distributing, or modifying the FreeType
- Project, you indicate that you understand and accept all the terms
- of this license.
-
-4. Contacts
------------
-
- There are two mailing lists related to FreeType:
-
- o freetype@nongnu.org
-
- Discusses general use and applications of FreeType, as well as
- future and wanted additions to the library and distribution.
- If you are looking for support, start in this list if you
- haven't found anything to help you in the documentation.
-
- o freetype-devel@nongnu.org
-
- Discusses bugs, as well as engine internals, design issues,
- specific licenses, porting, etc.
-
- Our home page can be found at
-
- http://www.freetype.org
-
-
---- end of FTL.TXT ---
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/licenses/gpl.txt b/Godeps/_workspace/src/code.google.com/p/freetype-go/licenses/gpl.txt
deleted file mode 100644
index b2fe7b6af..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/licenses/gpl.txt
+++ /dev/null
@@ -1,340 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- 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 2 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, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/COPYING b/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/COPYING
deleted file mode 100644
index 78c606533..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/COPYING
+++ /dev/null
@@ -1,42 +0,0 @@
-Luxi fonts copyright (c) 2001 by Bigelow & Holmes Inc. Luxi font
-instruction code copyright (c) 2001 by URW++ GmbH. All Rights
-Reserved. Luxi is a registered trademark of Bigelow & Holmes Inc.
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of these Fonts and associated documentation files (the "Font
-Software"), to deal in the Font Software, including without
-limitation the rights to use, copy, merge, publish, distribute,
-sublicense, and/or sell copies of the Font Software, and to permit
-persons to whom the Font Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright and trademark notices and this permission notice
-shall be included in all copies of one or more of the Font Software.
-
-The Font Software may not be modified, altered, or added to, and in
-particular the designs of glyphs or characters in the Fonts may not
-be modified nor may additional glyphs or characters be added to the
-Fonts. This License becomes null and void when the Fonts or Font
-Software have been modified.
-
-THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
-OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL
-BIGELOW & HOLMES INC. OR URW++ GMBH. BE LIABLE FOR ANY CLAIM, DAMAGES
-OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT,
-INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF
-CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR
-INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT
-SOFTWARE.
-
-Except as contained in this notice, the names of Bigelow & Holmes
-Inc. and URW++ GmbH. shall not be used in advertising or otherwise to
-promote the sale, use or other dealings in this Font Software without
-prior written authorization from Bigelow & Holmes Inc. and URW++ GmbH.
-
-For further information, contact:
-
-info@urwpp.de
-or
-design@bigelowandholmes.com
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/README b/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/README
deleted file mode 100644
index bae438269..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/README
+++ /dev/null
@@ -1,13 +0,0 @@
-The luxi*.ttf and COPYING files in this directory were copied from the X.org
-project, specifically
-http://xorg.freedesktop.org/releases/individual/font/font-bh-ttf-1.0.0.tar.bz2
-
-There are three Luxi fonts: sans (s), serif (r) and monospaced (m). For example,
-luxisr.ttf is Luxi Sans. The 'r' here means regular, as opposed to bold.
-
-The *.ttx files in this directory were generated from the *.ttf files
-by the ttx command-line tool.
-http://www.letterror.com/code/ttx/index.html
-
-The *-hinting.txt files in this directory were generated from the *.ttf files
-by the ../cmd/print-glyph-points command-line tool.
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luximr.ttf b/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luximr.ttf
deleted file mode 100644
index 6ad6e1266..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luximr.ttf
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luximr.ttx b/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luximr.ttx
deleted file mode 100644
index e60ebca45..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luximr.ttx
+++ /dev/null
@@ -1,24616 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="2.4">
-
- <GlyphOrder>
- <!-- The 'id' attribute is only for humans; it is ignored when parsed. -->
- <GlyphID id="0" name=".notdef"/>
- <GlyphID id="1" name=".notdef#1"/>
- <GlyphID id="2" name=".notdef#2"/>
- <GlyphID id="3" name="space"/>
- <GlyphID id="4" name="exclam"/>
- <GlyphID id="5" name="quotedbl"/>
- <GlyphID id="6" name="numbersign"/>
- <GlyphID id="7" name="dollar"/>
- <GlyphID id="8" name="percent"/>
- <GlyphID id="9" name="ampersand"/>
- <GlyphID id="10" name="quotesingle"/>
- <GlyphID id="11" name="parenleft"/>
- <GlyphID id="12" name="parenright"/>
- <GlyphID id="13" name="asterisk"/>
- <GlyphID id="14" name="plus"/>
- <GlyphID id="15" name="comma"/>
- <GlyphID id="16" name="hyphen"/>
- <GlyphID id="17" name="period"/>
- <GlyphID id="18" name="slash"/>
- <GlyphID id="19" name="zero"/>
- <GlyphID id="20" name="one"/>
- <GlyphID id="21" name="two"/>
- <GlyphID id="22" name="three"/>
- <GlyphID id="23" name="four"/>
- <GlyphID id="24" name="five"/>
- <GlyphID id="25" name="six"/>
- <GlyphID id="26" name="seven"/>
- <GlyphID id="27" name="eight"/>
- <GlyphID id="28" name="nine"/>
- <GlyphID id="29" name="colon"/>
- <GlyphID id="30" name="semicolon"/>
- <GlyphID id="31" name="less"/>
- <GlyphID id="32" name="equal"/>
- <GlyphID id="33" name="greater"/>
- <GlyphID id="34" name="question"/>
- <GlyphID id="35" name="at"/>
- <GlyphID id="36" name="A"/>
- <GlyphID id="37" name="B"/>
- <GlyphID id="38" name="C"/>
- <GlyphID id="39" name="D"/>
- <GlyphID id="40" name="E"/>
- <GlyphID id="41" name="F"/>
- <GlyphID id="42" name="G"/>
- <GlyphID id="43" name="H"/>
- <GlyphID id="44" name="I"/>
- <GlyphID id="45" name="J"/>
- <GlyphID id="46" name="K"/>
- <GlyphID id="47" name="L"/>
- <GlyphID id="48" name="M"/>
- <GlyphID id="49" name="N"/>
- <GlyphID id="50" name="O"/>
- <GlyphID id="51" name="P"/>
- <GlyphID id="52" name="Q"/>
- <GlyphID id="53" name="R"/>
- <GlyphID id="54" name="S"/>
- <GlyphID id="55" name="T"/>
- <GlyphID id="56" name="U"/>
- <GlyphID id="57" name="V"/>
- <GlyphID id="58" name="W"/>
- <GlyphID id="59" name="X"/>
- <GlyphID id="60" name="Y"/>
- <GlyphID id="61" name="Z"/>
- <GlyphID id="62" name="bracketleft"/>
- <GlyphID id="63" name="backslash"/>
- <GlyphID id="64" name="bracketright"/>
- <GlyphID id="65" name="asciicircum"/>
- <GlyphID id="66" name="underscore"/>
- <GlyphID id="67" name="grave"/>
- <GlyphID id="68" name="a"/>
- <GlyphID id="69" name="b"/>
- <GlyphID id="70" name="c"/>
- <GlyphID id="71" name="d"/>
- <GlyphID id="72" name="e"/>
- <GlyphID id="73" name="f"/>
- <GlyphID id="74" name="g"/>
- <GlyphID id="75" name="h"/>
- <GlyphID id="76" name="i"/>
- <GlyphID id="77" name="j"/>
- <GlyphID id="78" name="k"/>
- <GlyphID id="79" name="l"/>
- <GlyphID id="80" name="m"/>
- <GlyphID id="81" name="n"/>
- <GlyphID id="82" name="o"/>
- <GlyphID id="83" name="p"/>
- <GlyphID id="84" name="q"/>
- <GlyphID id="85" name="r"/>
- <GlyphID id="86" name="s"/>
- <GlyphID id="87" name="t"/>
- <GlyphID id="88" name="u"/>
- <GlyphID id="89" name="v"/>
- <GlyphID id="90" name="w"/>
- <GlyphID id="91" name="x"/>
- <GlyphID id="92" name="y"/>
- <GlyphID id="93" name="z"/>
- <GlyphID id="94" name="braceleft"/>
- <GlyphID id="95" name="bar"/>
- <GlyphID id="96" name="braceright"/>
- <GlyphID id="97" name="asciitilde"/>
- <GlyphID id="98" name="Adieresis"/>
- <GlyphID id="99" name="Aring"/>
- <GlyphID id="100" name="Ccedilla"/>
- <GlyphID id="101" name="Eacute"/>
- <GlyphID id="102" name="Ntilde"/>
- <GlyphID id="103" name="Odieresis"/>
- <GlyphID id="104" name="Udieresis"/>
- <GlyphID id="105" name="aacute"/>
- <GlyphID id="106" name="agrave"/>
- <GlyphID id="107" name="acircumflex"/>
- <GlyphID id="108" name="adieresis"/>
- <GlyphID id="109" name="atilde"/>
- <GlyphID id="110" name="aring"/>
- <GlyphID id="111" name="ccedilla"/>
- <GlyphID id="112" name="eacute"/>
- <GlyphID id="113" name="egrave"/>
- <GlyphID id="114" name="ecircumflex"/>
- <GlyphID id="115" name="edieresis"/>
- <GlyphID id="116" name="iacute"/>
- <GlyphID id="117" name="igrave"/>
- <GlyphID id="118" name="icircumflex"/>
- <GlyphID id="119" name="idieresis"/>
- <GlyphID id="120" name="ntilde"/>
- <GlyphID id="121" name="oacute"/>
- <GlyphID id="122" name="ograve"/>
- <GlyphID id="123" name="ocircumflex"/>
- <GlyphID id="124" name="odieresis"/>
- <GlyphID id="125" name="otilde"/>
- <GlyphID id="126" name="uacute"/>
- <GlyphID id="127" name="ugrave"/>
- <GlyphID id="128" name="ucircumflex"/>
- <GlyphID id="129" name="udieresis"/>
- <GlyphID id="130" name="dagger"/>
- <GlyphID id="131" name="degree"/>
- <GlyphID id="132" name="cent"/>
- <GlyphID id="133" name="sterling"/>
- <GlyphID id="134" name="section"/>
- <GlyphID id="135" name="bullet"/>
- <GlyphID id="136" name="paragraph"/>
- <GlyphID id="137" name="germandbls"/>
- <GlyphID id="138" name="registered"/>
- <GlyphID id="139" name="copyright"/>
- <GlyphID id="140" name="trademark"/>
- <GlyphID id="141" name="acute"/>
- <GlyphID id="142" name="dieresis"/>
- <GlyphID id="143" name=".notdef#3"/>
- <GlyphID id="144" name="AE"/>
- <GlyphID id="145" name="Oslash"/>
- <GlyphID id="146" name=".notdef#4"/>
- <GlyphID id="147" name="plusminus"/>
- <GlyphID id="148" name=".notdef#5"/>
- <GlyphID id="149" name=".notdef#6"/>
- <GlyphID id="150" name="yen"/>
- <GlyphID id="151" name="mu"/>
- <GlyphID id="152" name=".notdef#7"/>
- <GlyphID id="153" name=".notdef#8"/>
- <GlyphID id="154" name=".notdef#9"/>
- <GlyphID id="155" name=".notdef#10"/>
- <GlyphID id="156" name=".notdef#11"/>
- <GlyphID id="157" name="ordfeminine"/>
- <GlyphID id="158" name="ordmasculine"/>
- <GlyphID id="159" name=".notdef#12"/>
- <GlyphID id="160" name="ae"/>
- <GlyphID id="161" name="oslash"/>
- <GlyphID id="162" name="questiondown"/>
- <GlyphID id="163" name="exclamdown"/>
- <GlyphID id="164" name="logicalnot"/>
- <GlyphID id="165" name=".notdef#13"/>
- <GlyphID id="166" name="florin"/>
- <GlyphID id="167" name=".notdef#14"/>
- <GlyphID id="168" name=".notdef#15"/>
- <GlyphID id="169" name="guillemotleft"/>
- <GlyphID id="170" name="guillemotright"/>
- <GlyphID id="171" name="ellipsis"/>
- <GlyphID id="172" name=".notdef#16"/>
- <GlyphID id="173" name="Agrave"/>
- <GlyphID id="174" name="Atilde"/>
- <GlyphID id="175" name="Otilde"/>
- <GlyphID id="176" name="OE"/>
- <GlyphID id="177" name="oe"/>
- <GlyphID id="178" name="endash"/>
- <GlyphID id="179" name="emdash"/>
- <GlyphID id="180" name="quotedblleft"/>
- <GlyphID id="181" name="quotedblright"/>
- <GlyphID id="182" name="quoteleft"/>
- <GlyphID id="183" name="quoteright"/>
- <GlyphID id="184" name="divide"/>
- <GlyphID id="185" name=".notdef#17"/>
- <GlyphID id="186" name="ydieresis"/>
- <GlyphID id="187" name="Ydieresis"/>
- <GlyphID id="188" name="fraction"/>
- <GlyphID id="189" name="currency"/>
- <GlyphID id="190" name="guilsinglleft"/>
- <GlyphID id="191" name="guilsinglright"/>
- <GlyphID id="192" name="fi"/>
- <GlyphID id="193" name="fl"/>
- <GlyphID id="194" name="daggerdbl"/>
- <GlyphID id="195" name="periodcentered"/>
- <GlyphID id="196" name="quotesinglbase"/>
- <GlyphID id="197" name="quotedblbase"/>
- <GlyphID id="198" name="perthousand"/>
- <GlyphID id="199" name="Acircumflex"/>
- <GlyphID id="200" name="Ecircumflex"/>
- <GlyphID id="201" name="Aacute"/>
- <GlyphID id="202" name="Edieresis"/>
- <GlyphID id="203" name="Egrave"/>
- <GlyphID id="204" name="Iacute"/>
- <GlyphID id="205" name="Icircumflex"/>
- <GlyphID id="206" name="Idieresis"/>
- <GlyphID id="207" name="Igrave"/>
- <GlyphID id="208" name="Oacute"/>
- <GlyphID id="209" name="Ocircumflex"/>
- <GlyphID id="210" name="Euro"/>
- <GlyphID id="211" name="Ograve"/>
- <GlyphID id="212" name="Uacute"/>
- <GlyphID id="213" name="Ucircumflex"/>
- <GlyphID id="214" name="Ugrave"/>
- <GlyphID id="215" name="dotlessi"/>
- <GlyphID id="216" name="circumflex"/>
- <GlyphID id="217" name="tilde"/>
- <GlyphID id="218" name="macron"/>
- <GlyphID id="219" name="breve"/>
- <GlyphID id="220" name="dotaccent"/>
- <GlyphID id="221" name="ring"/>
- <GlyphID id="222" name="cedilla"/>
- <GlyphID id="223" name="hungarumlaut"/>
- <GlyphID id="224" name="ogonek"/>
- <GlyphID id="225" name="caron"/>
- <GlyphID id="226" name="Euro#1"/>
- <GlyphID id="227" name="nonbreakingspace"/>
- <GlyphID id="228" name="brokenbar"/>
- <GlyphID id="229" name="sfthyphen"/>
- <GlyphID id="230" name="macron#1"/>
- <GlyphID id="231" name="twosuperior"/>
- <GlyphID id="232" name="threesuperior"/>
- <GlyphID id="233" name="periodcentered#1"/>
- <GlyphID id="234" name="onesuperior"/>
- <GlyphID id="235" name="onequarter"/>
- <GlyphID id="236" name="onehalf"/>
- <GlyphID id="237" name="threequarters"/>
- <GlyphID id="238" name="Eth"/>
- <GlyphID id="239" name="multiply"/>
- <GlyphID id="240" name="Yacute"/>
- <GlyphID id="241" name="Thorn"/>
- <GlyphID id="242" name="eth"/>
- <GlyphID id="243" name="yacute"/>
- <GlyphID id="244" name="thorn"/>
- <GlyphID id="245" name="Amacron"/>
- <GlyphID id="246" name="amacron"/>
- <GlyphID id="247" name="Abreve"/>
- <GlyphID id="248" name="abreve"/>
- <GlyphID id="249" name="Aogonek"/>
- <GlyphID id="250" name="aogonek"/>
- <GlyphID id="251" name="Cacute"/>
- <GlyphID id="252" name="cacute"/>
- <GlyphID id="253" name="Ccircumflex"/>
- <GlyphID id="254" name="ccircumflex"/>
- <GlyphID id="255" name="Cdotaccent"/>
- <GlyphID id="256" name="cdotaccent"/>
- <GlyphID id="257" name="Ccaron"/>
- <GlyphID id="258" name="ccaron"/>
- <GlyphID id="259" name="Dcaron"/>
- <GlyphID id="260" name="dcaron"/>
- <GlyphID id="261" name="Dcroat"/>
- <GlyphID id="262" name="dcroat"/>
- <GlyphID id="263" name="Emacron"/>
- <GlyphID id="264" name="emacron"/>
- <GlyphID id="265" name="Ebreve"/>
- <GlyphID id="266" name="ebreve"/>
- <GlyphID id="267" name="Edotaccent"/>
- <GlyphID id="268" name="edotaccent"/>
- <GlyphID id="269" name="Eogonek"/>
- <GlyphID id="270" name="eogonek"/>
- <GlyphID id="271" name="Ecaron"/>
- <GlyphID id="272" name="ecaron"/>
- <GlyphID id="273" name="Gcircumflex"/>
- <GlyphID id="274" name="gcircumflex"/>
- <GlyphID id="275" name="Gbreve"/>
- <GlyphID id="276" name="gbreve"/>
- <GlyphID id="277" name="Gdotaccent"/>
- <GlyphID id="278" name="gdotaccent"/>
- <GlyphID id="279" name="Gcommaaccent"/>
- <GlyphID id="280" name="gcommaaccent"/>
- <GlyphID id="281" name="Hcircumflex"/>
- <GlyphID id="282" name="hcircumflex"/>
- <GlyphID id="283" name="Hbar"/>
- <GlyphID id="284" name="hbar"/>
- <GlyphID id="285" name="Itilde"/>
- <GlyphID id="286" name="itilde"/>
- <GlyphID id="287" name="Imacron"/>
- <GlyphID id="288" name="imacron"/>
- <GlyphID id="289" name="Ibreve"/>
- <GlyphID id="290" name="ibreve"/>
- <GlyphID id="291" name="Iogonek"/>
- <GlyphID id="292" name="iogonek"/>
- <GlyphID id="293" name="Idotaccent"/>
- <GlyphID id="294" name="IJ"/>
- <GlyphID id="295" name="ij"/>
- <GlyphID id="296" name="Jcircumflex"/>
- <GlyphID id="297" name="jcircumflex"/>
- <GlyphID id="298" name="Kcommaaccent"/>
- <GlyphID id="299" name="kcommaaccent"/>
- <GlyphID id="300" name="kgreenlandic"/>
- <GlyphID id="301" name="Lacute"/>
- <GlyphID id="302" name="lacute"/>
- <GlyphID id="303" name="Lcommaaccent"/>
- <GlyphID id="304" name="lcommaaccent"/>
- <GlyphID id="305" name="Lcaron"/>
- <GlyphID id="306" name="lcaron"/>
- <GlyphID id="307" name="Ldot"/>
- <GlyphID id="308" name="ldot"/>
- <GlyphID id="309" name="Lslash"/>
- <GlyphID id="310" name="lslash"/>
- <GlyphID id="311" name="Nacute"/>
- <GlyphID id="312" name="nacute"/>
- <GlyphID id="313" name="Ncommaaccent"/>
- <GlyphID id="314" name="ncommaaccent"/>
- <GlyphID id="315" name="Ncaron"/>
- <GlyphID id="316" name="ncaron"/>
- <GlyphID id="317" name="napostrophe"/>
- <GlyphID id="318" name="Eng"/>
- <GlyphID id="319" name="eng"/>
- <GlyphID id="320" name="Omacron"/>
- <GlyphID id="321" name="omacron"/>
- <GlyphID id="322" name="Obreve"/>
- <GlyphID id="323" name="obreve"/>
- <GlyphID id="324" name="Ohungarumlaut"/>
- <GlyphID id="325" name="ohungarumlaut"/>
- <GlyphID id="326" name="Racute"/>
- <GlyphID id="327" name="racute"/>
- <GlyphID id="328" name="Rcommaaccent"/>
- <GlyphID id="329" name="rcommaaccent"/>
- <GlyphID id="330" name="Rcaron"/>
- <GlyphID id="331" name="rcaron"/>
- <GlyphID id="332" name="Sacute"/>
- <GlyphID id="333" name="sacute"/>
- <GlyphID id="334" name="Scircumflex"/>
- <GlyphID id="335" name="scircumflex"/>
- <GlyphID id="336" name="Scedilla"/>
- <GlyphID id="337" name="scedilla"/>
- <GlyphID id="338" name="Scaron"/>
- <GlyphID id="339" name="scaron"/>
- <GlyphID id="340" name="Tcommaaccent"/>
- <GlyphID id="341" name="tcommaaccent"/>
- <GlyphID id="342" name="Tcaron"/>
- <GlyphID id="343" name="tcaron"/>
- <GlyphID id="344" name="Tbar"/>
- <GlyphID id="345" name="tbar"/>
- <GlyphID id="346" name="Utilde"/>
- <GlyphID id="347" name="utilde"/>
- <GlyphID id="348" name="Umacron"/>
- <GlyphID id="349" name="umacron"/>
- <GlyphID id="350" name="Ubreve"/>
- <GlyphID id="351" name="ubreve"/>
- <GlyphID id="352" name="Uring"/>
- <GlyphID id="353" name="uring"/>
- <GlyphID id="354" name="Uhungarumlaut"/>
- <GlyphID id="355" name="uhungarumlaut"/>
- <GlyphID id="356" name="Uogonek"/>
- <GlyphID id="357" name="uogonek"/>
- <GlyphID id="358" name="Wcircumflex"/>
- <GlyphID id="359" name="wcircumflex"/>
- <GlyphID id="360" name="Ycircumflex"/>
- <GlyphID id="361" name="ycircumflex"/>
- <GlyphID id="362" name="Zacute"/>
- <GlyphID id="363" name="zacute"/>
- <GlyphID id="364" name="Zdotaccent"/>
- <GlyphID id="365" name="zdotaccent"/>
- <GlyphID id="366" name="Zcaron"/>
- <GlyphID id="367" name="zcaron"/>
- <GlyphID id="368" name="longs"/>
- <GlyphID id="369" name="Scommaaccent"/>
- <GlyphID id="370" name="scommaaccent"/>
- <GlyphID id="371" name="Tcommabelow"/>
- <GlyphID id="372" name="tcommabelow"/>
- <GlyphID id="373" name="Unterkomma"/>
- <GlyphID id="374" name="semicolon#1"/>
- <GlyphID id="375" name="anoteleia"/>
- <GlyphID id="376" name="hyphen#1"/>
- <GlyphID id="377" name="nbhyphen"/>
- <GlyphID id="378" name="figuredash"/>
- <GlyphID id="379" name="afii00208"/>
- <GlyphID id="380" name="quotereversed"/>
- <GlyphID id="381" name="radicalex"/>
- <GlyphID id="382" name="estimated"/>
- <GlyphID id="383" name="minus"/>
- <GlyphID id="384" name="fraction#1"/>
- <GlyphID id="385" name="dotmath"/>
- <GlyphID id="386" name="fi#1"/>
- <GlyphID id="387" name="fl#1"/>
- <GlyphID id="388" name="foursuperiour"/>
- <GlyphID id="389" name="onesuperiour"/>
- <GlyphID id="390" name="twosuperiour"/>
- <GlyphID id="391" name="threesuperiour"/>
- <GlyphID id="392" name="foursuperiour#1"/>
- <GlyphID id="393" name="dotlessj"/>
- <GlyphID id="394" name=".notdef#18"/>
- </GlyphOrder>
-
- <head>
- <!-- Most of this table will be recalculated by the compiler -->
- <tableVersion value="1.0"/>
- <fontRevision value="1.19999694824"/>
- <checkSumAdjustment value="0x4e0d8101"/>
- <magicNumber value="0x5f0f3cf5"/>
- <flags value="00000000 00001111"/>
- <unitsPerEm value="2048"/>
- <created value="Fri Oct 12 14:05:57 2001"/>
- <modified value="Fri Oct 12 10:47:54 2001"/>
- <xMin value="0"/>
- <yMin value="-432"/>
- <xMax value="1229"/>
- <yMax value="2033"/>
- <macStyle value="00000000 00000000"/>
- <lowestRecPPEM value="12"/>
- <fontDirectionHint value="2"/>
- <indexToLocFormat value="0"/>
- <glyphDataFormat value="0"/>
- </head>
-
- <hhea>
- <tableVersion value="1.0"/>
- <ascent value="2033"/>
- <descent value="-432"/>
- <lineGap value="0"/>
- <advanceWidthMax value="1229"/>
- <minLeftSideBearing value="0"/>
- <minRightSideBearing value="0"/>
- <xMaxExtent value="1229"/>
- <caretSlopeRise value="1"/>
- <caretSlopeRun value="0"/>
- <caretOffset value="0"/>
- <reserved0 value="0"/>
- <reserved1 value="0"/>
- <reserved2 value="0"/>
- <reserved3 value="0"/>
- <metricDataFormat value="0"/>
- <numberOfHMetrics value="395"/>
- </hhea>
-
- <maxp>
- <!-- Most of this table will be recalculated by the compiler -->
- <tableVersion value="0x10000"/>
- <numGlyphs value="395"/>
- <maxPoints value="79"/>
- <maxContours value="7"/>
- <maxCompositePoints value="85"/>
- <maxCompositeContours value="4"/>
- <maxZones value="2"/>
- <maxTwilightPoints value="4"/>
- <maxStorage value="0"/>
- <maxFunctionDefs value="15"/>
- <maxInstructionDefs value="0"/>
- <maxStackElements value="2048"/>
- <maxSizeOfInstructions value="197"/>
- <maxComponentElements value="2"/>
- <maxComponentDepth value="1"/>
- </maxp>
-
- <OS_2>
- <version value="2"/>
- <xAvgCharWidth value="1229"/>
- <usWeightClass value="400"/>
- <usWidthClass value="5"/>
- <fsType value="00000000 00000000"/>
- <ySubscriptXSize value="1434"/>
- <ySubscriptYSize value="1331"/>
- <ySubscriptXOffset value="0"/>
- <ySubscriptYOffset value="283"/>
- <ySuperscriptXSize value="1434"/>
- <ySuperscriptYSize value="1331"/>
- <ySuperscriptXOffset value="0"/>
- <ySuperscriptYOffset value="977"/>
- <yStrikeoutSize value="0"/>
- <yStrikeoutPosition value="0"/>
- <sFamilyClass value="1285"/>
- <panose>
- <bFamilyType value="2"/>
- <bSerifStyle value="6"/>
- <bWeight value="6"/>
- <bProportion value="9"/>
- <bContrast value="5"/>
- <bStrokeVariation value="0"/>
- <bArmStyle value="0"/>
- <bLetterForm value="0"/>
- <bMidline value="0"/>
- <bXHeight value="0"/>
- </panose>
- <ulUnicodeRange1 value="00000000 00000000 00000000 00000111"/>
- <ulUnicodeRange2 value="00000000 00000000 00000000 00000010"/>
- <ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/>
- <ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/>
- <achVendID value="B&amp;H "/>
- <fsSelection value="00000000 01000000"/>
- <fsFirstCharIndex value="32"/>
- <fsLastCharIndex value="64258"/>
- <sTypoAscender value="1604"/>
- <sTypoDescender value="-420"/>
- <sTypoLineGap value="167"/>
- <usWinAscent value="1935"/>
- <usWinDescent value="432"/>
- <ulCodePageRange1 value="00000000 00000000 00000000 10010011"/>
- <ulCodePageRange2 value="00000000 00000000 00000000 00000000"/>
- <sxHeight value="0"/>
- <sCapHeight value="0"/>
- <usDefaultChar value="0"/>
- <usBreakChar value="0"/>
- <usMaxContex value="0"/>
- </OS_2>
-
- <hmtx>
- <mtx name=".notdef" width="1229" lsb="123"/>
- <mtx name=".notdef#1" width="0" lsb="0"/>
- <mtx name=".notdef#10" width="1229" lsb="0"/>
- <mtx name=".notdef#11" width="1229" lsb="0"/>
- <mtx name=".notdef#12" width="1229" lsb="0"/>
- <mtx name=".notdef#13" width="1229" lsb="0"/>
- <mtx name=".notdef#14" width="1229" lsb="0"/>
- <mtx name=".notdef#15" width="1229" lsb="0"/>
- <mtx name=".notdef#16" width="1229" lsb="0"/>
- <mtx name=".notdef#17" width="1229" lsb="0"/>
- <mtx name=".notdef#18" width="1229" lsb="0"/>
- <mtx name=".notdef#2" width="1229" lsb="0"/>
- <mtx name=".notdef#3" width="1229" lsb="0"/>
- <mtx name=".notdef#4" width="1229" lsb="0"/>
- <mtx name=".notdef#5" width="1229" lsb="0"/>
- <mtx name=".notdef#6" width="1229" lsb="0"/>
- <mtx name=".notdef#7" width="1229" lsb="0"/>
- <mtx name=".notdef#8" width="1229" lsb="0"/>
- <mtx name=".notdef#9" width="1229" lsb="0"/>
- <mtx name="A" width="1229" lsb="25"/>
- <mtx name="AE" width="1229" lsb="12"/>
- <mtx name="Aacute" width="1229" lsb="25"/>
- <mtx name="Abreve" width="1229" lsb="25"/>
- <mtx name="Acircumflex" width="1229" lsb="25"/>
- <mtx name="Adieresis" width="1229" lsb="25"/>
- <mtx name="Agrave" width="1229" lsb="25"/>
- <mtx name="Amacron" width="1229" lsb="25"/>
- <mtx name="Aogonek" width="1229" lsb="25"/>
- <mtx name="Aring" width="1229" lsb="25"/>
- <mtx name="Atilde" width="1229" lsb="25"/>
- <mtx name="B" width="1229" lsb="74"/>
- <mtx name="C" width="1229" lsb="123"/>
- <mtx name="Cacute" width="1229" lsb="123"/>
- <mtx name="Ccaron" width="1229" lsb="123"/>
- <mtx name="Ccedilla" width="1229" lsb="123"/>
- <mtx name="Ccircumflex" width="1229" lsb="123"/>
- <mtx name="Cdotaccent" width="1229" lsb="123"/>
- <mtx name="D" width="1229" lsb="49"/>
- <mtx name="Dcaron" width="1229" lsb="49"/>
- <mtx name="Dcroat" width="1229" lsb="49"/>
- <mtx name="E" width="1229" lsb="74"/>
- <mtx name="Eacute" width="1229" lsb="74"/>
- <mtx name="Ebreve" width="1229" lsb="74"/>
- <mtx name="Ecaron" width="1229" lsb="74"/>
- <mtx name="Ecircumflex" width="1229" lsb="74"/>
- <mtx name="Edieresis" width="1229" lsb="74"/>
- <mtx name="Edotaccent" width="1229" lsb="74"/>
- <mtx name="Egrave" width="1229" lsb="74"/>
- <mtx name="Emacron" width="1229" lsb="74"/>
- <mtx name="Eng" width="1229" lsb="74"/>
- <mtx name="Eogonek" width="1229" lsb="74"/>
- <mtx name="Eth" width="1229" lsb="49"/>
- <mtx name="Euro" width="1229" lsb="6"/>
- <mtx name="Euro#1" width="1229" lsb="6"/>
- <mtx name="F" width="1229" lsb="111"/>
- <mtx name="G" width="1229" lsb="74"/>
- <mtx name="Gbreve" width="1229" lsb="74"/>
- <mtx name="Gcircumflex" width="1229" lsb="74"/>
- <mtx name="Gcommaaccent" width="1229" lsb="74"/>
- <mtx name="Gdotaccent" width="1229" lsb="74"/>
- <mtx name="H" width="1229" lsb="62"/>
- <mtx name="Hbar" width="1229" lsb="37"/>
- <mtx name="Hcircumflex" width="1229" lsb="62"/>
- <mtx name="I" width="1229" lsb="160"/>
- <mtx name="IJ" width="1229" lsb="45"/>
- <mtx name="Iacute" width="1229" lsb="160"/>
- <mtx name="Ibreve" width="1229" lsb="160"/>
- <mtx name="Icircumflex" width="1229" lsb="160"/>
- <mtx name="Idieresis" width="1229" lsb="160"/>
- <mtx name="Idotaccent" width="1229" lsb="160"/>
- <mtx name="Igrave" width="1229" lsb="160"/>
- <mtx name="Imacron" width="1229" lsb="160"/>
- <mtx name="Iogonek" width="1229" lsb="160"/>
- <mtx name="Itilde" width="1229" lsb="160"/>
- <mtx name="J" width="1229" lsb="111"/>
- <mtx name="Jcircumflex" width="1229" lsb="111"/>
- <mtx name="K" width="1229" lsb="74"/>
- <mtx name="Kcommaaccent" width="1229" lsb="74"/>
- <mtx name="L" width="1229" lsb="86"/>
- <mtx name="Lacute" width="1229" lsb="86"/>
- <mtx name="Lcaron" width="1229" lsb="86"/>
- <mtx name="Lcommaaccent" width="1229" lsb="86"/>
- <mtx name="Ldot" width="1229" lsb="86"/>
- <mtx name="Lslash" width="1229" lsb="86"/>
- <mtx name="M" width="1229" lsb="25"/>
- <mtx name="N" width="1229" lsb="74"/>
- <mtx name="Nacute" width="1229" lsb="74"/>
- <mtx name="Ncaron" width="1229" lsb="74"/>
- <mtx name="Ncommaaccent" width="1229" lsb="74"/>
- <mtx name="Ntilde" width="1229" lsb="74"/>
- <mtx name="O" width="1229" lsb="62"/>
- <mtx name="OE" width="1229" lsb="37"/>
- <mtx name="Oacute" width="1229" lsb="62"/>
- <mtx name="Obreve" width="1229" lsb="62"/>
- <mtx name="Ocircumflex" width="1229" lsb="62"/>
- <mtx name="Odieresis" width="1229" lsb="62"/>
- <mtx name="Ograve" width="1229" lsb="62"/>
- <mtx name="Ohungarumlaut" width="1229" lsb="62"/>
- <mtx name="Omacron" width="1229" lsb="62"/>
- <mtx name="Oslash" width="1229" lsb="62"/>
- <mtx name="Otilde" width="1229" lsb="62"/>
- <mtx name="P" width="1229" lsb="86"/>
- <mtx name="Q" width="1229" lsb="62"/>
- <mtx name="R" width="1229" lsb="86"/>
- <mtx name="Racute" width="1229" lsb="86"/>
- <mtx name="Rcaron" width="1229" lsb="86"/>
- <mtx name="Rcommaaccent" width="1229" lsb="86"/>
- <mtx name="S" width="1229" lsb="151"/>
- <mtx name="Sacute" width="1229" lsb="151"/>
- <mtx name="Scaron" width="1229" lsb="151"/>
- <mtx name="Scedilla" width="1229" lsb="151"/>
- <mtx name="Scircumflex" width="1229" lsb="151"/>
- <mtx name="Scommaaccent" width="1229" lsb="151"/>
- <mtx name="T" width="1229" lsb="62"/>
- <mtx name="Tbar" width="1229" lsb="62"/>
- <mtx name="Tcaron" width="1229" lsb="62"/>
- <mtx name="Tcommaaccent" width="1229" lsb="62"/>
- <mtx name="Tcommabelow" width="1229" lsb="62"/>
- <mtx name="Thorn" width="1229" lsb="86"/>
- <mtx name="U" width="1229" lsb="62"/>
- <mtx name="Uacute" width="1229" lsb="62"/>
- <mtx name="Ubreve" width="1229" lsb="62"/>
- <mtx name="Ucircumflex" width="1229" lsb="62"/>
- <mtx name="Udieresis" width="1229" lsb="62"/>
- <mtx name="Ugrave" width="1229" lsb="62"/>
- <mtx name="Uhungarumlaut" width="1229" lsb="62"/>
- <mtx name="Umacron" width="1229" lsb="62"/>
- <mtx name="Unterkomma" width="1229" lsb="464"/>
- <mtx name="Uogonek" width="1229" lsb="62"/>
- <mtx name="Uring" width="1229" lsb="62"/>
- <mtx name="Utilde" width="1229" lsb="62"/>
- <mtx name="V" width="1229" lsb="26"/>
- <mtx name="W" width="1229" lsb="23"/>
- <mtx name="Wcircumflex" width="1229" lsb="23"/>
- <mtx name="X" width="1229" lsb="49"/>
- <mtx name="Y" width="1229" lsb="27"/>
- <mtx name="Yacute" width="1229" lsb="27"/>
- <mtx name="Ycircumflex" width="1229" lsb="27"/>
- <mtx name="Ydieresis" width="1229" lsb="27"/>
- <mtx name="Z" width="1229" lsb="148"/>
- <mtx name="Zacute" width="1229" lsb="148"/>
- <mtx name="Zcaron" width="1229" lsb="148"/>
- <mtx name="Zdotaccent" width="1229" lsb="148"/>
- <mtx name="a" width="1229" lsb="148"/>
- <mtx name="aacute" width="1229" lsb="148"/>
- <mtx name="abreve" width="1229" lsb="148"/>
- <mtx name="acircumflex" width="1229" lsb="148"/>
- <mtx name="acute" width="1229" lsb="392"/>
- <mtx name="adieresis" width="1229" lsb="148"/>
- <mtx name="ae" width="1229" lsb="37"/>
- <mtx name="afii00208" width="1229" lsb="0"/>
- <mtx name="agrave" width="1229" lsb="148"/>
- <mtx name="amacron" width="1229" lsb="148"/>
- <mtx name="ampersand" width="1229" lsb="57"/>
- <mtx name="anoteleia" width="1229" lsb="491"/>
- <mtx name="aogonek" width="1229" lsb="148"/>
- <mtx name="aring" width="1229" lsb="148"/>
- <mtx name="asciicircum" width="1229" lsb="146"/>
- <mtx name="asciitilde" width="1229" lsb="121"/>
- <mtx name="asterisk" width="1229" lsb="161"/>
- <mtx name="at" width="1229" lsb="87"/>
- <mtx name="atilde" width="1229" lsb="148"/>
- <mtx name="b" width="1229" lsb="62"/>
- <mtx name="backslash" width="1229" lsb="99"/>
- <mtx name="bar" width="1229" lsb="540"/>
- <mtx name="braceleft" width="1229" lsb="183"/>
- <mtx name="braceright" width="1229" lsb="227"/>
- <mtx name="bracketleft" width="1229" lsb="395"/>
- <mtx name="bracketright" width="1229" lsb="291"/>
- <mtx name="breve" width="1229" lsb="269"/>
- <mtx name="brokenbar" width="1229" lsb="540"/>
- <mtx name="bullet" width="1229" lsb="318"/>
- <mtx name="c" width="1229" lsb="148"/>
- <mtx name="cacute" width="1229" lsb="148"/>
- <mtx name="caron" width="1229" lsb="248"/>
- <mtx name="ccaron" width="1229" lsb="148"/>
- <mtx name="ccedilla" width="1229" lsb="148"/>
- <mtx name="ccircumflex" width="1229" lsb="148"/>
- <mtx name="cdotaccent" width="1229" lsb="148"/>
- <mtx name="cedilla" width="1229" lsb="441"/>
- <mtx name="cent" width="1229" lsb="173"/>
- <mtx name="circumflex" width="1229" lsb="248"/>
- <mtx name="colon" width="1229" lsb="466"/>
- <mtx name="comma" width="1229" lsb="466"/>
- <mtx name="copyright" width="1229" lsb="62"/>
- <mtx name="currency" width="1229" lsb="85"/>
- <mtx name="d" width="1229" lsb="111"/>
- <mtx name="dagger" width="1229" lsb="170"/>
- <mtx name="daggerdbl" width="1229" lsb="170"/>
- <mtx name="dcaron" width="1229" lsb="111"/>
- <mtx name="dcroat" width="1229" lsb="111"/>
- <mtx name="degree" width="1229" lsb="318"/>
- <mtx name="dieresis" width="1229" lsb="281"/>
- <mtx name="divide" width="1229" lsb="99"/>
- <mtx name="dollar" width="1229" lsb="143"/>
- <mtx name="dotaccent" width="1229" lsb="516"/>
- <mtx name="dotlessi" width="1229" lsb="148"/>
- <mtx name="dotlessj" width="1229" lsb="159"/>
- <mtx name="dotmath" width="1229" lsb="491"/>
- <mtx name="e" width="1229" lsb="123"/>
- <mtx name="eacute" width="1229" lsb="123"/>
- <mtx name="ebreve" width="1229" lsb="123"/>
- <mtx name="ecaron" width="1229" lsb="123"/>
- <mtx name="ecircumflex" width="1229" lsb="123"/>
- <mtx name="edieresis" width="1229" lsb="123"/>
- <mtx name="edotaccent" width="1229" lsb="123"/>
- <mtx name="egrave" width="1229" lsb="123"/>
- <mtx name="eight" width="1229" lsb="120"/>
- <mtx name="ellipsis" width="1229" lsb="81"/>
- <mtx name="emacron" width="1229" lsb="123"/>
- <mtx name="emdash" width="1229" lsb="0"/>
- <mtx name="endash" width="1229" lsb="121"/>
- <mtx name="eng" width="1229" lsb="69"/>
- <mtx name="eogonek" width="1229" lsb="123"/>
- <mtx name="equal" width="1229" lsb="99"/>
- <mtx name="estimated" width="1229" lsb="123"/>
- <mtx name="eth" width="1229" lsb="111"/>
- <mtx name="exclam" width="1229" lsb="491"/>
- <mtx name="exclamdown" width="1229" lsb="491"/>
- <mtx name="f" width="1229" lsb="148"/>
- <mtx name="fi" width="1229" lsb="69"/>
- <mtx name="fi#1" width="1229" lsb="69"/>
- <mtx name="figuredash" width="1229" lsb="121"/>
- <mtx name="five" width="1229" lsb="249"/>
- <mtx name="fl" width="1229" lsb="69"/>
- <mtx name="fl#1" width="1229" lsb="69"/>
- <mtx name="florin" width="1229" lsb="84"/>
- <mtx name="four" width="1229" lsb="84"/>
- <mtx name="foursuperiour" width="1229" lsb="284"/>
- <mtx name="foursuperiour#1" width="1229" lsb="155"/>
- <mtx name="fraction" width="1229" lsb="155"/>
- <mtx name="fraction#1" width="1229" lsb="155"/>
- <mtx name="g" width="1229" lsb="86"/>
- <mtx name="gbreve" width="1229" lsb="86"/>
- <mtx name="gcircumflex" width="1229" lsb="86"/>
- <mtx name="gcommaaccent" width="1229" lsb="86"/>
- <mtx name="gdotaccent" width="1229" lsb="86"/>
- <mtx name="germandbls" width="1229" lsb="62"/>
- <mtx name="grave" width="1229" lsb="392"/>
- <mtx name="greater" width="1229" lsb="99"/>
- <mtx name="guillemotleft" width="1229" lsb="82"/>
- <mtx name="guillemotright" width="1229" lsb="123"/>
- <mtx name="guilsinglleft" width="1229" lsb="234"/>
- <mtx name="guilsinglright" width="1229" lsb="283"/>
- <mtx name="h" width="1229" lsb="69"/>
- <mtx name="hbar" width="1229" lsb="69"/>
- <mtx name="hcircumflex" width="1229" lsb="69"/>
- <mtx name="hungarumlaut" width="1229" lsb="223"/>
- <mtx name="hyphen" width="1229" lsb="148"/>
- <mtx name="hyphen#1" width="1229" lsb="148"/>
- <mtx name="i" width="1229" lsb="148"/>
- <mtx name="iacute" width="1229" lsb="148"/>
- <mtx name="ibreve" width="1229" lsb="148"/>
- <mtx name="icircumflex" width="1229" lsb="148"/>
- <mtx name="idieresis" width="1229" lsb="148"/>
- <mtx name="igrave" width="1229" lsb="148"/>
- <mtx name="ij" width="1229" lsb="57"/>
- <mtx name="imacron" width="1229" lsb="148"/>
- <mtx name="iogonek" width="1229" lsb="148"/>
- <mtx name="itilde" width="1229" lsb="148"/>
- <mtx name="j" width="1229" lsb="159"/>
- <mtx name="jcircumflex" width="1229" lsb="159"/>
- <mtx name="k" width="1229" lsb="74"/>
- <mtx name="kcommaaccent" width="1229" lsb="74"/>
- <mtx name="kgreenlandic" width="1229" lsb="74"/>
- <mtx name="l" width="1229" lsb="148"/>
- <mtx name="lacute" width="1229" lsb="148"/>
- <mtx name="lcaron" width="1229" lsb="123"/>
- <mtx name="lcommaaccent" width="1229" lsb="148"/>
- <mtx name="ldot" width="1229" lsb="123"/>
- <mtx name="less" width="1229" lsb="99"/>
- <mtx name="logicalnot" width="1229" lsb="99"/>
- <mtx name="longs" width="1229" lsb="148"/>
- <mtx name="lslash" width="1229" lsb="148"/>
- <mtx name="m" width="1229" lsb="26"/>
- <mtx name="macron" width="1229" lsb="269"/>
- <mtx name="macron#1" width="1229" lsb="0"/>
- <mtx name="minus" width="1229" lsb="99"/>
- <mtx name="mu" width="1229" lsb="68"/>
- <mtx name="multiply" width="1229" lsb="99"/>
- <mtx name="n" width="1229" lsb="69"/>
- <mtx name="nacute" width="1229" lsb="69"/>
- <mtx name="napostrophe" width="1229" lsb="8"/>
- <mtx name="nbhyphen" width="1229" lsb="148"/>
- <mtx name="ncaron" width="1229" lsb="69"/>
- <mtx name="ncommaaccent" width="1229" lsb="69"/>
- <mtx name="nine" width="1229" lsb="96"/>
- <mtx name="nonbreakingspace" width="1229" lsb="0"/>
- <mtx name="ntilde" width="1229" lsb="69"/>
- <mtx name="numbersign" width="1229" lsb="41"/>
- <mtx name="o" width="1229" lsb="111"/>
- <mtx name="oacute" width="1229" lsb="111"/>
- <mtx name="obreve" width="1229" lsb="111"/>
- <mtx name="ocircumflex" width="1229" lsb="111"/>
- <mtx name="odieresis" width="1229" lsb="111"/>
- <mtx name="oe" width="1229" lsb="49"/>
- <mtx name="ogonek" width="1229" lsb="444"/>
- <mtx name="ograve" width="1229" lsb="111"/>
- <mtx name="ohungarumlaut" width="1229" lsb="111"/>
- <mtx name="omacron" width="1229" lsb="111"/>
- <mtx name="one" width="1229" lsb="112"/>
- <mtx name="onehalf" width="1229" lsb="43"/>
- <mtx name="onequarter" width="1229" lsb="43"/>
- <mtx name="onesuperior" width="1229" lsb="266"/>
- <mtx name="onesuperiour" width="1229" lsb="407"/>
- <mtx name="ordfeminine" width="1229" lsb="136"/>
- <mtx name="ordmasculine" width="1229" lsb="148"/>
- <mtx name="oslash" width="1229" lsb="111"/>
- <mtx name="otilde" width="1229" lsb="111"/>
- <mtx name="p" width="1229" lsb="62"/>
- <mtx name="paragraph" width="1229" lsb="100"/>
- <mtx name="parenleft" width="1229" lsb="321"/>
- <mtx name="parenright" width="1229" lsb="247"/>
- <mtx name="percent" width="1229" lsb="21"/>
- <mtx name="period" width="1229" lsb="466"/>
- <mtx name="periodcentered" width="1229" lsb="491"/>
- <mtx name="periodcentered#1" width="1229" lsb="491"/>
- <mtx name="perthousand" width="1229" lsb="12"/>
- <mtx name="plus" width="1229" lsb="99"/>
- <mtx name="plusminus" width="1229" lsb="99"/>
- <mtx name="q" width="1229" lsb="111"/>
- <mtx name="question" width="1229" lsb="202"/>
- <mtx name="questiondown" width="1229" lsb="151"/>
- <mtx name="quotedbl" width="1229" lsb="244"/>
- <mtx name="quotedblbase" width="1229" lsb="257"/>
- <mtx name="quotedblleft" width="1229" lsb="232"/>
- <mtx name="quotedblright" width="1229" lsb="257"/>
- <mtx name="quoteleft" width="1229" lsb="454"/>
- <mtx name="quotereversed" width="1229" lsb="0"/>
- <mtx name="quoteright" width="1229" lsb="479"/>
- <mtx name="quotesinglbase" width="1229" lsb="479"/>
- <mtx name="quotesingle" width="1229" lsb="466"/>
- <mtx name="r" width="1229" lsb="74"/>
- <mtx name="racute" width="1229" lsb="74"/>
- <mtx name="radicalex" width="1229" lsb="0"/>
- <mtx name="rcaron" width="1229" lsb="74"/>
- <mtx name="rcommaaccent" width="1229" lsb="74"/>
- <mtx name="registered" width="1229" lsb="62"/>
- <mtx name="ring" width="1229" lsb="388"/>
- <mtx name="s" width="1229" lsb="173"/>
- <mtx name="sacute" width="1229" lsb="173"/>
- <mtx name="scaron" width="1229" lsb="173"/>
- <mtx name="scedilla" width="1229" lsb="173"/>
- <mtx name="scircumflex" width="1229" lsb="173"/>
- <mtx name="scommaaccent" width="1229" lsb="173"/>
- <mtx name="section" width="1229" lsb="154"/>
- <mtx name="semicolon" width="1229" lsb="466"/>
- <mtx name="semicolon#1" width="1229" lsb="466"/>
- <mtx name="seven" width="1229" lsb="145"/>
- <mtx name="sfthyphen" width="1229" lsb="148"/>
- <mtx name="six" width="1229" lsb="122"/>
- <mtx name="slash" width="1229" lsb="99"/>
- <mtx name="space" width="1229" lsb="0"/>
- <mtx name="sterling" width="1229" lsb="149"/>
- <mtx name="t" width="1229" lsb="119"/>
- <mtx name="tbar" width="1229" lsb="119"/>
- <mtx name="tcaron" width="1229" lsb="119"/>
- <mtx name="tcommaaccent" width="1229" lsb="119"/>
- <mtx name="tcommabelow" width="1229" lsb="119"/>
- <mtx name="thorn" width="1229" lsb="62"/>
- <mtx name="three" width="1229" lsb="185"/>
- <mtx name="threequarters" width="1229" lsb="37"/>
- <mtx name="threesuperior" width="1229" lsb="263"/>
- <mtx name="threesuperiour" width="1229" lsb="365"/>
- <mtx name="tilde" width="1229" lsb="281"/>
- <mtx name="trademark" width="1229" lsb="43"/>
- <mtx name="two" width="1229" lsb="133"/>
- <mtx name="twosuperior" width="1229" lsb="257"/>
- <mtx name="twosuperiour" width="1229" lsb="361"/>
- <mtx name="u" width="1229" lsb="68"/>
- <mtx name="uacute" width="1229" lsb="68"/>
- <mtx name="ubreve" width="1229" lsb="68"/>
- <mtx name="ucircumflex" width="1229" lsb="68"/>
- <mtx name="udieresis" width="1229" lsb="68"/>
- <mtx name="ugrave" width="1229" lsb="68"/>
- <mtx name="uhungarumlaut" width="1229" lsb="68"/>
- <mtx name="umacron" width="1229" lsb="68"/>
- <mtx name="underscore" width="1229" lsb="0"/>
- <mtx name="uogonek" width="1229" lsb="68"/>
- <mtx name="uring" width="1229" lsb="68"/>
- <mtx name="utilde" width="1229" lsb="68"/>
- <mtx name="v" width="1229" lsb="55"/>
- <mtx name="w" width="1229" lsb="23"/>
- <mtx name="wcircumflex" width="1229" lsb="23"/>
- <mtx name="x" width="1229" lsb="59"/>
- <mtx name="y" width="1229" lsb="55"/>
- <mtx name="yacute" width="1229" lsb="55"/>
- <mtx name="ycircumflex" width="1229" lsb="55"/>
- <mtx name="ydieresis" width="1229" lsb="55"/>
- <mtx name="yen" width="1229" lsb="49"/>
- <mtx name="z" width="1229" lsb="123"/>
- <mtx name="zacute" width="1229" lsb="123"/>
- <mtx name="zcaron" width="1229" lsb="123"/>
- <mtx name="zdotaccent" width="1229" lsb="123"/>
- <mtx name="zero" width="1229" lsb="96"/>
- </hmtx>
-
- <cmap>
- <tableVersion version="0"/>
- <cmap_format_0 platformID="1" platEncID="0" language="0">
- <map code="0x0" name=".notdef#1"/>
- <map code="0x1" name=".notdef"/>
- <map code="0x2" name=".notdef"/>
- <map code="0x3" name=".notdef"/>
- <map code="0x4" name=".notdef"/>
- <map code="0x5" name=".notdef"/>
- <map code="0x6" name=".notdef"/>
- <map code="0x7" name=".notdef"/>
- <map code="0x8" name=".notdef#1"/>
- <map code="0x9" name="space"/>
- <map code="0xa" name=".notdef"/>
- <map code="0xb" name=".notdef"/>
- <map code="0xc" name=".notdef"/>
- <map code="0xd" name=".notdef#2"/>
- <map code="0xe" name=".notdef"/>
- <map code="0xf" name=".notdef"/>
- <map code="0x10" name=".notdef"/>
- <map code="0x11" name=".notdef"/>
- <map code="0x12" name=".notdef"/>
- <map code="0x13" name=".notdef"/>
- <map code="0x14" name=".notdef"/>
- <map code="0x15" name=".notdef"/>
- <map code="0x16" name=".notdef"/>
- <map code="0x17" name=".notdef"/>
- <map code="0x18" name=".notdef"/>
- <map code="0x19" name=".notdef"/>
- <map code="0x1a" name=".notdef"/>
- <map code="0x1b" name=".notdef"/>
- <map code="0x1c" name=".notdef"/>
- <map code="0x1d" name=".notdef#1"/>
- <map code="0x1e" name=".notdef"/>
- <map code="0x1f" name=".notdef"/>
- <map code="0x20" name="space"/>
- <map code="0x21" name="exclam"/>
- <map code="0x22" name="quotedbl"/>
- <map code="0x23" name="numbersign"/>
- <map code="0x24" name="dollar"/>
- <map code="0x25" name="percent"/>
- <map code="0x26" name="ampersand"/>
- <map code="0x27" name="quotesingle"/>
- <map code="0x28" name="parenleft"/>
- <map code="0x29" name="parenright"/>
- <map code="0x2a" name="asterisk"/>
- <map code="0x2b" name="plus"/>
- <map code="0x2c" name="comma"/>
- <map code="0x2d" name="hyphen"/>
- <map code="0x2e" name="period"/>
- <map code="0x2f" name="slash"/>
- <map code="0x30" name="zero"/>
- <map code="0x31" name="one"/>
- <map code="0x32" name="two"/>
- <map code="0x33" name="three"/>
- <map code="0x34" name="four"/>
- <map code="0x35" name="five"/>
- <map code="0x36" name="six"/>
- <map code="0x37" name="seven"/>
- <map code="0x38" name="eight"/>
- <map code="0x39" name="nine"/>
- <map code="0x3a" name="colon"/>
- <map code="0x3b" name="semicolon"/>
- <map code="0x3c" name="less"/>
- <map code="0x3d" name="equal"/>
- <map code="0x3e" name="greater"/>
- <map code="0x3f" name="question"/>
- <map code="0x40" name="at"/>
- <map code="0x41" name="A"/>
- <map code="0x42" name="B"/>
- <map code="0x43" name="C"/>
- <map code="0x44" name="D"/>
- <map code="0x45" name="E"/>
- <map code="0x46" name="F"/>
- <map code="0x47" name="G"/>
- <map code="0x48" name="H"/>
- <map code="0x49" name="I"/>
- <map code="0x4a" name="J"/>
- <map code="0x4b" name="K"/>
- <map code="0x4c" name="L"/>
- <map code="0x4d" name="M"/>
- <map code="0x4e" name="N"/>
- <map code="0x4f" name="O"/>
- <map code="0x50" name="P"/>
- <map code="0x51" name="Q"/>
- <map code="0x52" name="R"/>
- <map code="0x53" name="S"/>
- <map code="0x54" name="T"/>
- <map code="0x55" name="U"/>
- <map code="0x56" name="V"/>
- <map code="0x57" name="W"/>
- <map code="0x58" name="X"/>
- <map code="0x59" name="Y"/>
- <map code="0x5a" name="Z"/>
- <map code="0x5b" name="bracketleft"/>
- <map code="0x5c" name="backslash"/>
- <map code="0x5d" name="bracketright"/>
- <map code="0x5e" name="asciicircum"/>
- <map code="0x5f" name="underscore"/>
- <map code="0x60" name="grave"/>
- <map code="0x61" name="a"/>
- <map code="0x62" name="b"/>
- <map code="0x63" name="c"/>
- <map code="0x64" name="d"/>
- <map code="0x65" name="e"/>
- <map code="0x66" name="f"/>
- <map code="0x67" name="g"/>
- <map code="0x68" name="h"/>
- <map code="0x69" name="i"/>
- <map code="0x6a" name="j"/>
- <map code="0x6b" name="k"/>
- <map code="0x6c" name="l"/>
- <map code="0x6d" name="m"/>
- <map code="0x6e" name="n"/>
- <map code="0x6f" name="o"/>
- <map code="0x70" name="p"/>
- <map code="0x71" name="q"/>
- <map code="0x72" name="r"/>
- <map code="0x73" name="s"/>
- <map code="0x74" name="t"/>
- <map code="0x75" name="u"/>
- <map code="0x76" name="v"/>
- <map code="0x77" name="w"/>
- <map code="0x78" name="x"/>
- <map code="0x79" name="y"/>
- <map code="0x7a" name="z"/>
- <map code="0x7b" name="braceleft"/>
- <map code="0x7c" name="bar"/>
- <map code="0x7d" name="braceright"/>
- <map code="0x7e" name="asciitilde"/>
- <map code="0x7f" name=".notdef"/>
- <map code="0x80" name="Adieresis"/>
- <map code="0x81" name="Aring"/>
- <map code="0x82" name="Ccedilla"/>
- <map code="0x83" name="Eacute"/>
- <map code="0x84" name="Ntilde"/>
- <map code="0x85" name="Odieresis"/>
- <map code="0x86" name="Udieresis"/>
- <map code="0x87" name="aacute"/>
- <map code="0x88" name="agrave"/>
- <map code="0x89" name="acircumflex"/>
- <map code="0x8a" name="adieresis"/>
- <map code="0x8b" name="atilde"/>
- <map code="0x8c" name="aring"/>
- <map code="0x8d" name="ccedilla"/>
- <map code="0x8e" name="eacute"/>
- <map code="0x8f" name="egrave"/>
- <map code="0x90" name="ecircumflex"/>
- <map code="0x91" name="edieresis"/>
- <map code="0x92" name="iacute"/>
- <map code="0x93" name="igrave"/>
- <map code="0x94" name="icircumflex"/>
- <map code="0x95" name="idieresis"/>
- <map code="0x96" name="ntilde"/>
- <map code="0x97" name="oacute"/>
- <map code="0x98" name="ograve"/>
- <map code="0x99" name="ocircumflex"/>
- <map code="0x9a" name="odieresis"/>
- <map code="0x9b" name="otilde"/>
- <map code="0x9c" name="uacute"/>
- <map code="0x9d" name="ugrave"/>
- <map code="0x9e" name="ucircumflex"/>
- <map code="0x9f" name="udieresis"/>
- <map code="0xa0" name="dagger"/>
- <map code="0xa1" name="degree"/>
- <map code="0xa2" name="cent"/>
- <map code="0xa3" name="sterling"/>
- <map code="0xa4" name="section"/>
- <map code="0xa5" name="bullet"/>
- <map code="0xa6" name="paragraph"/>
- <map code="0xa7" name="germandbls"/>
- <map code="0xa8" name="registered"/>
- <map code="0xa9" name="copyright"/>
- <map code="0xaa" name="trademark"/>
- <map code="0xab" name="acute"/>
- <map code="0xac" name="dieresis"/>
- <map code="0xad" name=".notdef"/>
- <map code="0xae" name="AE"/>
- <map code="0xaf" name="Oslash"/>
- <map code="0xb0" name=".notdef"/>
- <map code="0xb1" name="plusminus"/>
- <map code="0xb2" name=".notdef"/>
- <map code="0xb3" name=".notdef"/>
- <map code="0xb4" name="yen"/>
- <map code="0xb5" name="mu"/>
- <map code="0xb6" name=".notdef"/>
- <map code="0xb7" name=".notdef"/>
- <map code="0xb8" name=".notdef"/>
- <map code="0xb9" name=".notdef"/>
- <map code="0xba" name=".notdef"/>
- <map code="0xbb" name="ordfeminine"/>
- <map code="0xbc" name="ordmasculine"/>
- <map code="0xbd" name=".notdef"/>
- <map code="0xbe" name="ae"/>
- <map code="0xbf" name="oslash"/>
- <map code="0xc0" name="questiondown"/>
- <map code="0xc1" name="exclamdown"/>
- <map code="0xc2" name="logicalnot"/>
- <map code="0xc3" name=".notdef"/>
- <map code="0xc4" name="florin"/>
- <map code="0xc5" name=".notdef"/>
- <map code="0xc6" name=".notdef"/>
- <map code="0xc7" name="guillemotleft"/>
- <map code="0xc8" name="guillemotright"/>
- <map code="0xc9" name="ellipsis"/>
- <map code="0xca" name=".notdef#16"/>
- <map code="0xcb" name="Agrave"/>
- <map code="0xcc" name="Atilde"/>
- <map code="0xcd" name="Otilde"/>
- <map code="0xce" name="OE"/>
- <map code="0xcf" name="oe"/>
- <map code="0xd0" name="endash"/>
- <map code="0xd1" name="emdash"/>
- <map code="0xd2" name="quotedblleft"/>
- <map code="0xd3" name="quotedblright"/>
- <map code="0xd4" name="quoteleft"/>
- <map code="0xd5" name="quoteright"/>
- <map code="0xd6" name="divide"/>
- <map code="0xd7" name=".notdef"/>
- <map code="0xd8" name="ydieresis"/>
- <map code="0xd9" name="Ydieresis"/>
- <map code="0xda" name="fraction"/>
- <map code="0xdb" name="currency"/>
- <map code="0xdc" name="guilsinglleft"/>
- <map code="0xdd" name="guilsinglright"/>
- <map code="0xde" name="fi"/>
- <map code="0xdf" name="fl"/>
- <map code="0xe0" name="daggerdbl"/>
- <map code="0xe1" name="periodcentered"/>
- <map code="0xe2" name="quotesinglbase"/>
- <map code="0xe3" name="quotedblbase"/>
- <map code="0xe4" name="perthousand"/>
- <map code="0xe5" name="Acircumflex"/>
- <map code="0xe6" name="Ecircumflex"/>
- <map code="0xe7" name="Aacute"/>
- <map code="0xe8" name="Edieresis"/>
- <map code="0xe9" name="Egrave"/>
- <map code="0xea" name="Iacute"/>
- <map code="0xeb" name="Icircumflex"/>
- <map code="0xec" name="Idieresis"/>
- <map code="0xed" name="Igrave"/>
- <map code="0xee" name="Oacute"/>
- <map code="0xef" name="Ocircumflex"/>
- <map code="0xf0" name="Euro"/>
- <map code="0xf1" name="Ograve"/>
- <map code="0xf2" name="Uacute"/>
- <map code="0xf3" name="Ucircumflex"/>
- <map code="0xf4" name="Ugrave"/>
- <map code="0xf5" name="dotlessi"/>
- <map code="0xf6" name="circumflex"/>
- <map code="0xf7" name="tilde"/>
- <map code="0xf8" name="macron"/>
- <map code="0xf9" name="breve"/>
- <map code="0xfa" name="dotaccent"/>
- <map code="0xfb" name="ring"/>
- <map code="0xfc" name="cedilla"/>
- <map code="0xfd" name="hungarumlaut"/>
- <map code="0xfe" name="ogonek"/>
- <map code="0xff" name="caron"/>
- </cmap_format_0>
- <cmap_format_4 platformID="3" platEncID="1" language="0">
- <map code="0x20" name="space"/><!-- SPACE -->
- <map code="0x21" name="exclam"/><!-- EXCLAMATION MARK -->
- <map code="0x22" name="quotedbl"/><!-- QUOTATION MARK -->
- <map code="0x23" name="numbersign"/><!-- NUMBER SIGN -->
- <map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
- <map code="0x25" name="percent"/><!-- PERCENT SIGN -->
- <map code="0x26" name="ampersand"/><!-- AMPERSAND -->
- <map code="0x27" name="quotesingle"/><!-- APOSTROPHE -->
- <map code="0x28" name="parenleft"/><!-- LEFT PARENTHESIS -->
- <map code="0x29" name="parenright"/><!-- RIGHT PARENTHESIS -->
- <map code="0x2a" name="asterisk"/><!-- ASTERISK -->
- <map code="0x2b" name="plus"/><!-- PLUS SIGN -->
- <map code="0x2c" name="comma"/><!-- COMMA -->
- <map code="0x2d" name="hyphen"/><!-- HYPHEN-MINUS -->
- <map code="0x2e" name="period"/><!-- FULL STOP -->
- <map code="0x2f" name="slash"/><!-- SOLIDUS -->
- <map code="0x30" name="zero"/><!-- DIGIT ZERO -->
- <map code="0x31" name="one"/><!-- DIGIT ONE -->
- <map code="0x32" name="two"/><!-- DIGIT TWO -->
- <map code="0x33" name="three"/><!-- DIGIT THREE -->
- <map code="0x34" name="four"/><!-- DIGIT FOUR -->
- <map code="0x35" name="five"/><!-- DIGIT FIVE -->
- <map code="0x36" name="six"/><!-- DIGIT SIX -->
- <map code="0x37" name="seven"/><!-- DIGIT SEVEN -->
- <map code="0x38" name="eight"/><!-- DIGIT EIGHT -->
- <map code="0x39" name="nine"/><!-- DIGIT NINE -->
- <map code="0x3a" name="colon"/><!-- COLON -->
- <map code="0x3b" name="semicolon"/><!-- SEMICOLON -->
- <map code="0x3c" name="less"/><!-- LESS-THAN SIGN -->
- <map code="0x3d" name="equal"/><!-- EQUALS SIGN -->
- <map code="0x3e" name="greater"/><!-- GREATER-THAN SIGN -->
- <map code="0x3f" name="question"/><!-- QUESTION MARK -->
- <map code="0x40" name="at"/><!-- COMMERCIAL AT -->
- <map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
- <map code="0x42" name="B"/><!-- LATIN CAPITAL LETTER B -->
- <map code="0x43" name="C"/><!-- LATIN CAPITAL LETTER C -->
- <map code="0x44" name="D"/><!-- LATIN CAPITAL LETTER D -->
- <map code="0x45" name="E"/><!-- LATIN CAPITAL LETTER E -->
- <map code="0x46" name="F"/><!-- LATIN CAPITAL LETTER F -->
- <map code="0x47" name="G"/><!-- LATIN CAPITAL LETTER G -->
- <map code="0x48" name="H"/><!-- LATIN CAPITAL LETTER H -->
- <map code="0x49" name="I"/><!-- LATIN CAPITAL LETTER I -->
- <map code="0x4a" name="J"/><!-- LATIN CAPITAL LETTER J -->
- <map code="0x4b" name="K"/><!-- LATIN CAPITAL LETTER K -->
- <map code="0x4c" name="L"/><!-- LATIN CAPITAL LETTER L -->
- <map code="0x4d" name="M"/><!-- LATIN CAPITAL LETTER M -->
- <map code="0x4e" name="N"/><!-- LATIN CAPITAL LETTER N -->
- <map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
- <map code="0x50" name="P"/><!-- LATIN CAPITAL LETTER P -->
- <map code="0x51" name="Q"/><!-- LATIN CAPITAL LETTER Q -->
- <map code="0x52" name="R"/><!-- LATIN CAPITAL LETTER R -->
- <map code="0x53" name="S"/><!-- LATIN CAPITAL LETTER S -->
- <map code="0x54" name="T"/><!-- LATIN CAPITAL LETTER T -->
- <map code="0x55" name="U"/><!-- LATIN CAPITAL LETTER U -->
- <map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
- <map code="0x57" name="W"/><!-- LATIN CAPITAL LETTER W -->
- <map code="0x58" name="X"/><!-- LATIN CAPITAL LETTER X -->
- <map code="0x59" name="Y"/><!-- LATIN CAPITAL LETTER Y -->
- <map code="0x5a" name="Z"/><!-- LATIN CAPITAL LETTER Z -->
- <map code="0x5b" name="bracketleft"/><!-- LEFT SQUARE BRACKET -->
- <map code="0x5c" name="backslash"/><!-- REVERSE SOLIDUS -->
- <map code="0x5d" name="bracketright"/><!-- RIGHT SQUARE BRACKET -->
- <map code="0x5e" name="asciicircum"/><!-- CIRCUMFLEX ACCENT -->
- <map code="0x5f" name="underscore"/><!-- LOW LINE -->
- <map code="0x60" name="grave"/><!-- GRAVE ACCENT -->
- <map code="0x61" name="a"/><!-- LATIN SMALL LETTER A -->
- <map code="0x62" name="b"/><!-- LATIN SMALL LETTER B -->
- <map code="0x63" name="c"/><!-- LATIN SMALL LETTER C -->
- <map code="0x64" name="d"/><!-- LATIN SMALL LETTER D -->
- <map code="0x65" name="e"/><!-- LATIN SMALL LETTER E -->
- <map code="0x66" name="f"/><!-- LATIN SMALL LETTER F -->
- <map code="0x67" name="g"/><!-- LATIN SMALL LETTER G -->
- <map code="0x68" name="h"/><!-- LATIN SMALL LETTER H -->
- <map code="0x69" name="i"/><!-- LATIN SMALL LETTER I -->
- <map code="0x6a" name="j"/><!-- LATIN SMALL LETTER J -->
- <map code="0x6b" name="k"/><!-- LATIN SMALL LETTER K -->
- <map code="0x6c" name="l"/><!-- LATIN SMALL LETTER L -->
- <map code="0x6d" name="m"/><!-- LATIN SMALL LETTER M -->
- <map code="0x6e" name="n"/><!-- LATIN SMALL LETTER N -->
- <map code="0x6f" name="o"/><!-- LATIN SMALL LETTER O -->
- <map code="0x70" name="p"/><!-- LATIN SMALL LETTER P -->
- <map code="0x71" name="q"/><!-- LATIN SMALL LETTER Q -->
- <map code="0x72" name="r"/><!-- LATIN SMALL LETTER R -->
- <map code="0x73" name="s"/><!-- LATIN SMALL LETTER S -->
- <map code="0x74" name="t"/><!-- LATIN SMALL LETTER T -->
- <map code="0x75" name="u"/><!-- LATIN SMALL LETTER U -->
- <map code="0x76" name="v"/><!-- LATIN SMALL LETTER V -->
- <map code="0x77" name="w"/><!-- LATIN SMALL LETTER W -->
- <map code="0x78" name="x"/><!-- LATIN SMALL LETTER X -->
- <map code="0x79" name="y"/><!-- LATIN SMALL LETTER Y -->
- <map code="0x7a" name="z"/><!-- LATIN SMALL LETTER Z -->
- <map code="0x7b" name="braceleft"/><!-- LEFT CURLY BRACKET -->
- <map code="0x7c" name="bar"/><!-- VERTICAL LINE -->
- <map code="0x7d" name="braceright"/><!-- RIGHT CURLY BRACKET -->
- <map code="0x7e" name="asciitilde"/><!-- TILDE -->
- <map code="0x80" name="Euro#1"/><!-- &lt;control> -->
- <map code="0xa0" name="nonbreakingspace"/><!-- NO-BREAK SPACE -->
- <map code="0xa1" name="exclamdown"/><!-- INVERTED EXCLAMATION MARK -->
- <map code="0xa2" name="cent"/><!-- CENT SIGN -->
- <map code="0xa3" name="sterling"/><!-- POUND SIGN -->
- <map code="0xa4" name="currency"/><!-- CURRENCY SIGN -->
- <map code="0xa5" name="yen"/><!-- YEN SIGN -->
- <map code="0xa6" name="brokenbar"/><!-- BROKEN BAR -->
- <map code="0xa7" name="section"/><!-- SECTION SIGN -->
- <map code="0xa8" name="dieresis"/><!-- DIAERESIS -->
- <map code="0xa9" name="copyright"/><!-- COPYRIGHT SIGN -->
- <map code="0xaa" name="ordfeminine"/><!-- FEMININE ORDINAL INDICATOR -->
- <map code="0xab" name="guillemotleft"/><!-- LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -->
- <map code="0xac" name="logicalnot"/><!-- NOT SIGN -->
- <map code="0xad" name="sfthyphen"/><!-- SOFT HYPHEN -->
- <map code="0xae" name="registered"/><!-- REGISTERED SIGN -->
- <map code="0xaf" name="macron#1"/><!-- MACRON -->
- <map code="0xb0" name="degree"/><!-- DEGREE SIGN -->
- <map code="0xb1" name="plusminus"/><!-- PLUS-MINUS SIGN -->
- <map code="0xb2" name="twosuperior"/><!-- SUPERSCRIPT TWO -->
- <map code="0xb3" name="threesuperior"/><!-- SUPERSCRIPT THREE -->
- <map code="0xb4" name="acute"/><!-- ACUTE ACCENT -->
- <map code="0xb5" name="mu"/><!-- MICRO SIGN -->
- <map code="0xb6" name="paragraph"/><!-- PILCROW SIGN -->
- <map code="0xb7" name="periodcentered#1"/><!-- MIDDLE DOT -->
- <map code="0xb8" name="cedilla"/><!-- CEDILLA -->
- <map code="0xb9" name="onesuperior"/><!-- SUPERSCRIPT ONE -->
- <map code="0xba" name="ordmasculine"/><!-- MASCULINE ORDINAL INDICATOR -->
- <map code="0xbb" name="guillemotright"/><!-- RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
- <map code="0xbc" name="onequarter"/><!-- VULGAR FRACTION ONE QUARTER -->
- <map code="0xbd" name="onehalf"/><!-- VULGAR FRACTION ONE HALF -->
- <map code="0xbe" name="threequarters"/><!-- VULGAR FRACTION THREE QUARTERS -->
- <map code="0xbf" name="questiondown"/><!-- INVERTED QUESTION MARK -->
- <map code="0xc0" name="Agrave"/><!-- LATIN CAPITAL LETTER A WITH GRAVE -->
- <map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
- <map code="0xc2" name="Acircumflex"/><!-- LATIN CAPITAL LETTER A WITH CIRCUMFLEX -->
- <map code="0xc3" name="Atilde"/><!-- LATIN CAPITAL LETTER A WITH TILDE -->
- <map code="0xc4" name="Adieresis"/><!-- LATIN CAPITAL LETTER A WITH DIAERESIS -->
- <map code="0xc5" name="Aring"/><!-- LATIN CAPITAL LETTER A WITH RING ABOVE -->
- <map code="0xc6" name="AE"/><!-- LATIN CAPITAL LETTER AE -->
- <map code="0xc7" name="Ccedilla"/><!-- LATIN CAPITAL LETTER C WITH CEDILLA -->
- <map code="0xc8" name="Egrave"/><!-- LATIN CAPITAL LETTER E WITH GRAVE -->
- <map code="0xc9" name="Eacute"/><!-- LATIN CAPITAL LETTER E WITH ACUTE -->
- <map code="0xca" name="Ecircumflex"/><!-- LATIN CAPITAL LETTER E WITH CIRCUMFLEX -->
- <map code="0xcb" name="Edieresis"/><!-- LATIN CAPITAL LETTER E WITH DIAERESIS -->
- <map code="0xcc" name="Igrave"/><!-- LATIN CAPITAL LETTER I WITH GRAVE -->
- <map code="0xcd" name="Iacute"/><!-- LATIN CAPITAL LETTER I WITH ACUTE -->
- <map code="0xce" name="Icircumflex"/><!-- LATIN CAPITAL LETTER I WITH CIRCUMFLEX -->
- <map code="0xcf" name="Idieresis"/><!-- LATIN CAPITAL LETTER I WITH DIAERESIS -->
- <map code="0xd0" name="Eth"/><!-- LATIN CAPITAL LETTER ETH -->
- <map code="0xd1" name="Ntilde"/><!-- LATIN CAPITAL LETTER N WITH TILDE -->
- <map code="0xd2" name="Ograve"/><!-- LATIN CAPITAL LETTER O WITH GRAVE -->
- <map code="0xd3" name="Oacute"/><!-- LATIN CAPITAL LETTER O WITH ACUTE -->
- <map code="0xd4" name="Ocircumflex"/><!-- LATIN CAPITAL LETTER O WITH CIRCUMFLEX -->
- <map code="0xd5" name="Otilde"/><!-- LATIN CAPITAL LETTER O WITH TILDE -->
- <map code="0xd6" name="Odieresis"/><!-- LATIN CAPITAL LETTER O WITH DIAERESIS -->
- <map code="0xd7" name="multiply"/><!-- MULTIPLICATION SIGN -->
- <map code="0xd8" name="Oslash"/><!-- LATIN CAPITAL LETTER O WITH STROKE -->
- <map code="0xd9" name="Ugrave"/><!-- LATIN CAPITAL LETTER U WITH GRAVE -->
- <map code="0xda" name="Uacute"/><!-- LATIN CAPITAL LETTER U WITH ACUTE -->
- <map code="0xdb" name="Ucircumflex"/><!-- LATIN CAPITAL LETTER U WITH CIRCUMFLEX -->
- <map code="0xdc" name="Udieresis"/><!-- LATIN CAPITAL LETTER U WITH DIAERESIS -->
- <map code="0xdd" name="Yacute"/><!-- LATIN CAPITAL LETTER Y WITH ACUTE -->
- <map code="0xde" name="Thorn"/><!-- LATIN CAPITAL LETTER THORN -->
- <map code="0xdf" name="germandbls"/><!-- LATIN SMALL LETTER SHARP S -->
- <map code="0xe0" name="agrave"/><!-- LATIN SMALL LETTER A WITH GRAVE -->
- <map code="0xe1" name="aacute"/><!-- LATIN SMALL LETTER A WITH ACUTE -->
- <map code="0xe2" name="acircumflex"/><!-- LATIN SMALL LETTER A WITH CIRCUMFLEX -->
- <map code="0xe3" name="atilde"/><!-- LATIN SMALL LETTER A WITH TILDE -->
- <map code="0xe4" name="adieresis"/><!-- LATIN SMALL LETTER A WITH DIAERESIS -->
- <map code="0xe5" name="aring"/><!-- LATIN SMALL LETTER A WITH RING ABOVE -->
- <map code="0xe6" name="ae"/><!-- LATIN SMALL LETTER AE -->
- <map code="0xe7" name="ccedilla"/><!-- LATIN SMALL LETTER C WITH CEDILLA -->
- <map code="0xe8" name="egrave"/><!-- LATIN SMALL LETTER E WITH GRAVE -->
- <map code="0xe9" name="eacute"/><!-- LATIN SMALL LETTER E WITH ACUTE -->
- <map code="0xea" name="ecircumflex"/><!-- LATIN SMALL LETTER E WITH CIRCUMFLEX -->
- <map code="0xeb" name="edieresis"/><!-- LATIN SMALL LETTER E WITH DIAERESIS -->
- <map code="0xec" name="igrave"/><!-- LATIN SMALL LETTER I WITH GRAVE -->
- <map code="0xed" name="iacute"/><!-- LATIN SMALL LETTER I WITH ACUTE -->
- <map code="0xee" name="icircumflex"/><!-- LATIN SMALL LETTER I WITH CIRCUMFLEX -->
- <map code="0xef" name="idieresis"/><!-- LATIN SMALL LETTER I WITH DIAERESIS -->
- <map code="0xf0" name="eth"/><!-- LATIN SMALL LETTER ETH -->
- <map code="0xf1" name="ntilde"/><!-- LATIN SMALL LETTER N WITH TILDE -->
- <map code="0xf2" name="ograve"/><!-- LATIN SMALL LETTER O WITH GRAVE -->
- <map code="0xf3" name="oacute"/><!-- LATIN SMALL LETTER O WITH ACUTE -->
- <map code="0xf4" name="ocircumflex"/><!-- LATIN SMALL LETTER O WITH CIRCUMFLEX -->
- <map code="0xf5" name="otilde"/><!-- LATIN SMALL LETTER O WITH TILDE -->
- <map code="0xf6" name="odieresis"/><!-- LATIN SMALL LETTER O WITH DIAERESIS -->
- <map code="0xf7" name="divide"/><!-- DIVISION SIGN -->
- <map code="0xf8" name="oslash"/><!-- LATIN SMALL LETTER O WITH STROKE -->
- <map code="0xf9" name="ugrave"/><!-- LATIN SMALL LETTER U WITH GRAVE -->
- <map code="0xfa" name="uacute"/><!-- LATIN SMALL LETTER U WITH ACUTE -->
- <map code="0xfb" name="ucircumflex"/><!-- LATIN SMALL LETTER U WITH CIRCUMFLEX -->
- <map code="0xfc" name="udieresis"/><!-- LATIN SMALL LETTER U WITH DIAERESIS -->
- <map code="0xfd" name="yacute"/><!-- LATIN SMALL LETTER Y WITH ACUTE -->
- <map code="0xfe" name="thorn"/><!-- LATIN SMALL LETTER THORN -->
- <map code="0xff" name="ydieresis"/><!-- LATIN SMALL LETTER Y WITH DIAERESIS -->
- <map code="0x100" name="Amacron"/><!-- LATIN CAPITAL LETTER A WITH MACRON -->
- <map code="0x101" name="amacron"/><!-- LATIN SMALL LETTER A WITH MACRON -->
- <map code="0x102" name="Abreve"/><!-- LATIN CAPITAL LETTER A WITH BREVE -->
- <map code="0x103" name="abreve"/><!-- LATIN SMALL LETTER A WITH BREVE -->
- <map code="0x104" name="Aogonek"/><!-- LATIN CAPITAL LETTER A WITH OGONEK -->
- <map code="0x105" name="aogonek"/><!-- LATIN SMALL LETTER A WITH OGONEK -->
- <map code="0x106" name="Cacute"/><!-- LATIN CAPITAL LETTER C WITH ACUTE -->
- <map code="0x107" name="cacute"/><!-- LATIN SMALL LETTER C WITH ACUTE -->
- <map code="0x108" name="Ccircumflex"/><!-- LATIN CAPITAL LETTER C WITH CIRCUMFLEX -->
- <map code="0x109" name="ccircumflex"/><!-- LATIN SMALL LETTER C WITH CIRCUMFLEX -->
- <map code="0x10a" name="Cdotaccent"/><!-- LATIN CAPITAL LETTER C WITH DOT ABOVE -->
- <map code="0x10b" name="cdotaccent"/><!-- LATIN SMALL LETTER C WITH DOT ABOVE -->
- <map code="0x10c" name="Ccaron"/><!-- LATIN CAPITAL LETTER C WITH CARON -->
- <map code="0x10d" name="ccaron"/><!-- LATIN SMALL LETTER C WITH CARON -->
- <map code="0x10e" name="Dcaron"/><!-- LATIN CAPITAL LETTER D WITH CARON -->
- <map code="0x10f" name="dcaron"/><!-- LATIN SMALL LETTER D WITH CARON -->
- <map code="0x110" name="Dcroat"/><!-- LATIN CAPITAL LETTER D WITH STROKE -->
- <map code="0x111" name="dcroat"/><!-- LATIN SMALL LETTER D WITH STROKE -->
- <map code="0x112" name="Emacron"/><!-- LATIN CAPITAL LETTER E WITH MACRON -->
- <map code="0x113" name="emacron"/><!-- LATIN SMALL LETTER E WITH MACRON -->
- <map code="0x114" name="Ebreve"/><!-- LATIN CAPITAL LETTER E WITH BREVE -->
- <map code="0x115" name="ebreve"/><!-- LATIN SMALL LETTER E WITH BREVE -->
- <map code="0x116" name="Edotaccent"/><!-- LATIN CAPITAL LETTER E WITH DOT ABOVE -->
- <map code="0x117" name="edotaccent"/><!-- LATIN SMALL LETTER E WITH DOT ABOVE -->
- <map code="0x118" name="Eogonek"/><!-- LATIN CAPITAL LETTER E WITH OGONEK -->
- <map code="0x119" name="eogonek"/><!-- LATIN SMALL LETTER E WITH OGONEK -->
- <map code="0x11a" name="Ecaron"/><!-- LATIN CAPITAL LETTER E WITH CARON -->
- <map code="0x11b" name="ecaron"/><!-- LATIN SMALL LETTER E WITH CARON -->
- <map code="0x11c" name="Gcircumflex"/><!-- LATIN CAPITAL LETTER G WITH CIRCUMFLEX -->
- <map code="0x11d" name="gcircumflex"/><!-- LATIN SMALL LETTER G WITH CIRCUMFLEX -->
- <map code="0x11e" name="Gbreve"/><!-- LATIN CAPITAL LETTER G WITH BREVE -->
- <map code="0x11f" name="gbreve"/><!-- LATIN SMALL LETTER G WITH BREVE -->
- <map code="0x120" name="Gdotaccent"/><!-- LATIN CAPITAL LETTER G WITH DOT ABOVE -->
- <map code="0x121" name="gdotaccent"/><!-- LATIN SMALL LETTER G WITH DOT ABOVE -->
- <map code="0x122" name="Gcommaaccent"/><!-- LATIN CAPITAL LETTER G WITH CEDILLA -->
- <map code="0x123" name="gcommaaccent"/><!-- LATIN SMALL LETTER G WITH CEDILLA -->
- <map code="0x124" name="Hcircumflex"/><!-- LATIN CAPITAL LETTER H WITH CIRCUMFLEX -->
- <map code="0x125" name="hcircumflex"/><!-- LATIN SMALL LETTER H WITH CIRCUMFLEX -->
- <map code="0x126" name="Hbar"/><!-- LATIN CAPITAL LETTER H WITH STROKE -->
- <map code="0x127" name="hbar"/><!-- LATIN SMALL LETTER H WITH STROKE -->
- <map code="0x128" name="Itilde"/><!-- LATIN CAPITAL LETTER I WITH TILDE -->
- <map code="0x129" name="itilde"/><!-- LATIN SMALL LETTER I WITH TILDE -->
- <map code="0x12a" name="Imacron"/><!-- LATIN CAPITAL LETTER I WITH MACRON -->
- <map code="0x12b" name="imacron"/><!-- LATIN SMALL LETTER I WITH MACRON -->
- <map code="0x12c" name="Ibreve"/><!-- LATIN CAPITAL LETTER I WITH BREVE -->
- <map code="0x12d" name="ibreve"/><!-- LATIN SMALL LETTER I WITH BREVE -->
- <map code="0x12e" name="Iogonek"/><!-- LATIN CAPITAL LETTER I WITH OGONEK -->
- <map code="0x12f" name="iogonek"/><!-- LATIN SMALL LETTER I WITH OGONEK -->
- <map code="0x130" name="Idotaccent"/><!-- LATIN CAPITAL LETTER I WITH DOT ABOVE -->
- <map code="0x131" name="dotlessi"/><!-- LATIN SMALL LETTER DOTLESS I -->
- <map code="0x132" name="IJ"/><!-- LATIN CAPITAL LIGATURE IJ -->
- <map code="0x133" name="ij"/><!-- LATIN SMALL LIGATURE IJ -->
- <map code="0x134" name="Jcircumflex"/><!-- LATIN CAPITAL LETTER J WITH CIRCUMFLEX -->
- <map code="0x135" name="jcircumflex"/><!-- LATIN SMALL LETTER J WITH CIRCUMFLEX -->
- <map code="0x136" name="Kcommaaccent"/><!-- LATIN CAPITAL LETTER K WITH CEDILLA -->
- <map code="0x137" name="kcommaaccent"/><!-- LATIN SMALL LETTER K WITH CEDILLA -->
- <map code="0x138" name="kgreenlandic"/><!-- LATIN SMALL LETTER KRA -->
- <map code="0x139" name="Lacute"/><!-- LATIN CAPITAL LETTER L WITH ACUTE -->
- <map code="0x13a" name="lacute"/><!-- LATIN SMALL LETTER L WITH ACUTE -->
- <map code="0x13b" name="Lcommaaccent"/><!-- LATIN CAPITAL LETTER L WITH CEDILLA -->
- <map code="0x13c" name="lcommaaccent"/><!-- LATIN SMALL LETTER L WITH CEDILLA -->
- <map code="0x13d" name="Lcaron"/><!-- LATIN CAPITAL LETTER L WITH CARON -->
- <map code="0x13e" name="lcaron"/><!-- LATIN SMALL LETTER L WITH CARON -->
- <map code="0x13f" name="Ldot"/><!-- LATIN CAPITAL LETTER L WITH MIDDLE DOT -->
- <map code="0x140" name="ldot"/><!-- LATIN SMALL LETTER L WITH MIDDLE DOT -->
- <map code="0x141" name="Lslash"/><!-- LATIN CAPITAL LETTER L WITH STROKE -->
- <map code="0x142" name="lslash"/><!-- LATIN SMALL LETTER L WITH STROKE -->
- <map code="0x143" name="Nacute"/><!-- LATIN CAPITAL LETTER N WITH ACUTE -->
- <map code="0x144" name="nacute"/><!-- LATIN SMALL LETTER N WITH ACUTE -->
- <map code="0x145" name="Ncommaaccent"/><!-- LATIN CAPITAL LETTER N WITH CEDILLA -->
- <map code="0x146" name="ncommaaccent"/><!-- LATIN SMALL LETTER N WITH CEDILLA -->
- <map code="0x147" name="Ncaron"/><!-- LATIN CAPITAL LETTER N WITH CARON -->
- <map code="0x148" name="ncaron"/><!-- LATIN SMALL LETTER N WITH CARON -->
- <map code="0x149" name="napostrophe"/><!-- LATIN SMALL LETTER N PRECEDED BY APOSTROPHE -->
- <map code="0x14a" name="Eng"/><!-- LATIN CAPITAL LETTER ENG -->
- <map code="0x14b" name="eng"/><!-- LATIN SMALL LETTER ENG -->
- <map code="0x14c" name="Omacron"/><!-- LATIN CAPITAL LETTER O WITH MACRON -->
- <map code="0x14d" name="omacron"/><!-- LATIN SMALL LETTER O WITH MACRON -->
- <map code="0x14e" name="Obreve"/><!-- LATIN CAPITAL LETTER O WITH BREVE -->
- <map code="0x14f" name="obreve"/><!-- LATIN SMALL LETTER O WITH BREVE -->
- <map code="0x150" name="Ohungarumlaut"/><!-- LATIN CAPITAL LETTER O WITH DOUBLE ACUTE -->
- <map code="0x151" name="ohungarumlaut"/><!-- LATIN SMALL LETTER O WITH DOUBLE ACUTE -->
- <map code="0x152" name="OE"/><!-- LATIN CAPITAL LIGATURE OE -->
- <map code="0x153" name="oe"/><!-- LATIN SMALL LIGATURE OE -->
- <map code="0x154" name="Racute"/><!-- LATIN CAPITAL LETTER R WITH ACUTE -->
- <map code="0x155" name="racute"/><!-- LATIN SMALL LETTER R WITH ACUTE -->
- <map code="0x156" name="Rcommaaccent"/><!-- LATIN CAPITAL LETTER R WITH CEDILLA -->
- <map code="0x157" name="rcommaaccent"/><!-- LATIN SMALL LETTER R WITH CEDILLA -->
- <map code="0x158" name="Rcaron"/><!-- LATIN CAPITAL LETTER R WITH CARON -->
- <map code="0x159" name="rcaron"/><!-- LATIN SMALL LETTER R WITH CARON -->
- <map code="0x15a" name="Sacute"/><!-- LATIN CAPITAL LETTER S WITH ACUTE -->
- <map code="0x15b" name="sacute"/><!-- LATIN SMALL LETTER S WITH ACUTE -->
- <map code="0x15c" name="Scircumflex"/><!-- LATIN CAPITAL LETTER S WITH CIRCUMFLEX -->
- <map code="0x15d" name="scircumflex"/><!-- LATIN SMALL LETTER S WITH CIRCUMFLEX -->
- <map code="0x15e" name="Scedilla"/><!-- LATIN CAPITAL LETTER S WITH CEDILLA -->
- <map code="0x15f" name="scedilla"/><!-- LATIN SMALL LETTER S WITH CEDILLA -->
- <map code="0x160" name="Scaron"/><!-- LATIN CAPITAL LETTER S WITH CARON -->
- <map code="0x161" name="scaron"/><!-- LATIN SMALL LETTER S WITH CARON -->
- <map code="0x162" name="Tcommaaccent"/><!-- LATIN CAPITAL LETTER T WITH CEDILLA -->
- <map code="0x163" name="tcommaaccent"/><!-- LATIN SMALL LETTER T WITH CEDILLA -->
- <map code="0x164" name="Tcaron"/><!-- LATIN CAPITAL LETTER T WITH CARON -->
- <map code="0x165" name="tcaron"/><!-- LATIN SMALL LETTER T WITH CARON -->
- <map code="0x166" name="Tbar"/><!-- LATIN CAPITAL LETTER T WITH STROKE -->
- <map code="0x167" name="tbar"/><!-- LATIN SMALL LETTER T WITH STROKE -->
- <map code="0x168" name="Utilde"/><!-- LATIN CAPITAL LETTER U WITH TILDE -->
- <map code="0x169" name="utilde"/><!-- LATIN SMALL LETTER U WITH TILDE -->
- <map code="0x16a" name="Umacron"/><!-- LATIN CAPITAL LETTER U WITH MACRON -->
- <map code="0x16b" name="umacron"/><!-- LATIN SMALL LETTER U WITH MACRON -->
- <map code="0x16c" name="Ubreve"/><!-- LATIN CAPITAL LETTER U WITH BREVE -->
- <map code="0x16d" name="ubreve"/><!-- LATIN SMALL LETTER U WITH BREVE -->
- <map code="0x16e" name="Uring"/><!-- LATIN CAPITAL LETTER U WITH RING ABOVE -->
- <map code="0x16f" name="uring"/><!-- LATIN SMALL LETTER U WITH RING ABOVE -->
- <map code="0x170" name="Uhungarumlaut"/><!-- LATIN CAPITAL LETTER U WITH DOUBLE ACUTE -->
- <map code="0x171" name="uhungarumlaut"/><!-- LATIN SMALL LETTER U WITH DOUBLE ACUTE -->
- <map code="0x172" name="Uogonek"/><!-- LATIN CAPITAL LETTER U WITH OGONEK -->
- <map code="0x173" name="uogonek"/><!-- LATIN SMALL LETTER U WITH OGONEK -->
- <map code="0x174" name="Wcircumflex"/><!-- LATIN CAPITAL LETTER W WITH CIRCUMFLEX -->
- <map code="0x175" name="wcircumflex"/><!-- LATIN SMALL LETTER W WITH CIRCUMFLEX -->
- <map code="0x176" name="Ycircumflex"/><!-- LATIN CAPITAL LETTER Y WITH CIRCUMFLEX -->
- <map code="0x177" name="ycircumflex"/><!-- LATIN SMALL LETTER Y WITH CIRCUMFLEX -->
- <map code="0x178" name="Ydieresis"/><!-- LATIN CAPITAL LETTER Y WITH DIAERESIS -->
- <map code="0x179" name="Zacute"/><!-- LATIN CAPITAL LETTER Z WITH ACUTE -->
- <map code="0x17a" name="zacute"/><!-- LATIN SMALL LETTER Z WITH ACUTE -->
- <map code="0x17b" name="Zdotaccent"/><!-- LATIN CAPITAL LETTER Z WITH DOT ABOVE -->
- <map code="0x17c" name="zdotaccent"/><!-- LATIN SMALL LETTER Z WITH DOT ABOVE -->
- <map code="0x17d" name="Zcaron"/><!-- LATIN CAPITAL LETTER Z WITH CARON -->
- <map code="0x17e" name="zcaron"/><!-- LATIN SMALL LETTER Z WITH CARON -->
- <map code="0x17f" name="longs"/><!-- LATIN SMALL LETTER LONG S -->
- <map code="0x192" name="florin"/><!-- LATIN SMALL LETTER F WITH HOOK -->
- <map code="0x218" name="Scommaaccent"/><!-- LATIN CAPITAL LETTER S WITH COMMA BELOW -->
- <map code="0x219" name="scommaaccent"/><!-- LATIN SMALL LETTER S WITH COMMA BELOW -->
- <map code="0x21a" name="Tcommabelow"/><!-- LATIN CAPITAL LETTER T WITH COMMA BELOW -->
- <map code="0x21b" name="tcommabelow"/><!-- LATIN SMALL LETTER T WITH COMMA BELOW -->
- <map code="0x2c6" name="circumflex"/><!-- MODIFIER LETTER CIRCUMFLEX ACCENT -->
- <map code="0x2c7" name="caron"/><!-- CARON -->
- <map code="0x2c9" name="macron"/><!-- MODIFIER LETTER MACRON -->
- <map code="0x2d8" name="breve"/><!-- BREVE -->
- <map code="0x2d9" name="dotaccent"/><!-- DOT ABOVE -->
- <map code="0x2da" name="ring"/><!-- RING ABOVE -->
- <map code="0x2db" name="ogonek"/><!-- OGONEK -->
- <map code="0x2dc" name="tilde"/><!-- SMALL TILDE -->
- <map code="0x2dd" name="hungarumlaut"/><!-- DOUBLE ACUTE ACCENT -->
- <map code="0x326" name="Unterkomma"/><!-- COMBINING COMMA BELOW -->
- <map code="0x37e" name="semicolon#1"/><!-- GREEK QUESTION MARK -->
- <map code="0x387" name="anoteleia"/><!-- GREEK ANO TELEIA -->
- <map code="0x2010" name="hyphen#1"/><!-- HYPHEN -->
- <map code="0x2011" name="nbhyphen"/><!-- NON-BREAKING HYPHEN -->
- <map code="0x2012" name="figuredash"/><!-- FIGURE DASH -->
- <map code="0x2013" name="endash"/><!-- EN DASH -->
- <map code="0x2014" name="emdash"/><!-- EM DASH -->
- <map code="0x2015" name="afii00208"/><!-- HORIZONTAL BAR -->
- <map code="0x2018" name="quoteleft"/><!-- LEFT SINGLE QUOTATION MARK -->
- <map code="0x2019" name="quoteright"/><!-- RIGHT SINGLE QUOTATION MARK -->
- <map code="0x201a" name="quotesinglbase"/><!-- SINGLE LOW-9 QUOTATION MARK -->
- <map code="0x201b" name="quotereversed"/><!-- SINGLE HIGH-REVERSED-9 QUOTATION MARK -->
- <map code="0x201c" name="quotedblleft"/><!-- LEFT DOUBLE QUOTATION MARK -->
- <map code="0x201d" name="quotedblright"/><!-- RIGHT DOUBLE QUOTATION MARK -->
- <map code="0x201e" name="quotedblbase"/><!-- DOUBLE LOW-9 QUOTATION MARK -->
- <map code="0x2020" name="dagger"/><!-- DAGGER -->
- <map code="0x2021" name="daggerdbl"/><!-- DOUBLE DAGGER -->
- <map code="0x2022" name="bullet"/><!-- BULLET -->
- <map code="0x2026" name="ellipsis"/><!-- HORIZONTAL ELLIPSIS -->
- <map code="0x2030" name="perthousand"/><!-- PER MILLE SIGN -->
- <map code="0x2039" name="guilsinglleft"/><!-- SINGLE LEFT-POINTING ANGLE QUOTATION MARK -->
- <map code="0x203a" name="guilsinglright"/><!-- SINGLE RIGHT-POINTING ANGLE QUOTATION MARK -->
- <map code="0x203e" name="radicalex"/><!-- OVERLINE -->
- <map code="0x2044" name="fraction"/><!-- FRACTION SLASH -->
- <map code="0x20ac" name="Euro"/><!-- EURO SIGN -->
- <map code="0x2122" name="trademark"/><!-- TRADE MARK SIGN -->
- <map code="0x212e" name="estimated"/><!-- ESTIMATED SYMBOL -->
- <map code="0x2212" name="minus"/><!-- MINUS SIGN -->
- <map code="0x2215" name="fraction#1"/><!-- DIVISION SLASH -->
- <map code="0x2219" name="periodcentered"/><!-- BULLET OPERATOR -->
- <map code="0x22c5" name="dotmath"/><!-- DOT OPERATOR -->
- <map code="0xea01" name="fi#1"/><!-- Private Use -->
- <map code="0xea02" name="fl#1"/><!-- Private Use -->
- <map code="0xf001" name="fi"/><!-- Private Use -->
- <map code="0xf002" name="fl"/><!-- Private Use -->
- <map code="0xf004" name="foursuperiour"/><!-- Private Use -->
- <map code="0xf005" name="onesuperiour"/><!-- Private Use -->
- <map code="0xf006" name="twosuperiour"/><!-- Private Use -->
- <map code="0xf007" name="threesuperiour"/><!-- Private Use -->
- <map code="0xf008" name="foursuperiour#1"/><!-- Private Use -->
- <map code="0xf6be" name="dotlessj"/><!-- Private Use -->
- <map code="0xfb01" name="fi"/><!-- LATIN SMALL LIGATURE FI -->
- <map code="0xfb02" name="fl"/><!-- LATIN SMALL LIGATURE FL -->
- </cmap_format_4>
- </cmap>
-
- <fpgm>
- <assembly>
- NPUSHB[ ] /* 15 values pushed */
- 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- FDEF[ ]
- SLOOP[ ]
- MDAP[1]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- MDAP[1]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP1[ ]
- SRP2[ ]
- IP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP1[ ]
- SRP2[ ]
- SLOOP[ ]
- IP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- SLOOP[ ]
- MIRP[11101]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- SLOOP[ ]
- MIRP[10100]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- SLOOP[ ]
- MDRP[11101]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- SLOOP[ ]
- MDRP[10100]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- MIRP[11101]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- MIRP[10100]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- MDRP[11101]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- MDRP[10100]
- ENDF[ ]
- FDEF[ ]
- MDRP[00100]
- ENDF[ ]
- FDEF[ ]
- MDRP[00000]
- ENDF[ ]
- FDEF[ ]
- SVTCA[0]
- NPUSHB[ ] /* 10 values pushed */
- 1 0 0 1 1 2 2 3 3 0
- SZPS[ ]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SZPS[ ]
- ENDF[ ]
- </assembly>
- </fpgm>
-
- <prep>
- <assembly>
- PUSHB[ ] /* 2 values pushed */
- 48 1
- PUSHW[ ] /* 1 value pushed */
- 329
- RTG[ ]
- SCANCTRL[ ]
- SCANTYPE[ ]
- SCVTCI[ ]
- </assembly>
- </prep>
-
- <cvt>
- <cv index="0" value="1480"/>
- <cv index="1" value="1086"/>
- <cv index="2" value="0"/>
- <cv index="3" value="-512"/>
- <cv index="4" value="247"/>
- <cv index="5" value="121"/>
- <cv index="6" value="125"/>
- <cv index="7" value="147"/>
- <cv index="8" value="299"/>
- <cv index="9" value="224"/>
- <cv index="10" value="200"/>
- <cv index="11" value="210"/>
- <cv index="12" value="174"/>
- <cv index="13" value="179"/>
- <cv index="14" value="145"/>
- <cv index="15" value="171"/>
- <cv index="16" value="149"/>
- <cv index="17" value="96"/>
- <cv index="18" value="102"/>
- <cv index="19" value="188"/>
- <cv index="20" value="138"/>
- <cv index="21" value="97"/>
- <cv index="22" value="172"/>
- <cv index="23" value="36"/>
- <cv index="24" value="203"/>
- <cv index="25" value="131"/>
- <cv index="26" value="230"/>
- <cv index="27" value="186"/>
- <cv index="28" value="196"/>
- <cv index="29" value="22"/>
- <cv index="30" value="157"/>
- <cv index="31" value="114"/>
- <cv index="32" value="87"/>
- <cv index="33" value="101"/>
- <cv index="34" value="162"/>
- <cv index="35" value="155"/>
- <cv index="36" value="213"/>
- <cv index="37" value="176"/>
- <cv index="38" value="152"/>
- <cv index="39" value="212"/>
- <cv index="40" value="113"/>
- </cvt>
-
- <loca>
- <!-- The 'loca' table will be calculated by the compiler -->
- </loca>
-
- <glyf>
-
- <!-- The xMin, yMin, xMax and yMax values
- will be recalculated by the compiler. -->
-
- <TTGlyph name=".notdef" xMin="123" yMin="0" xMax="1106" yMax="1480">
- <contour>
- <pt x="123" y="0" on="1"/>
- <pt x="123" y="1480" on="1"/>
- <pt x="1106" y="1480" on="1"/>
- <pt x="1106" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="983" y="123" on="1"/>
- <pt x="983" y="1357" on="1"/>
- <pt x="246" y="1357" on="1"/>
- <pt x="246" y="123" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 16 values pushed */
- 5 6 2 1 4 7 3 0 5 4 2 3 6 7 1 0
- MDAP[1]
- ALIGNRP[ ]
- MDRP[11100]
- ALIGNRP[ ]
- MDAP[1]
- ALIGNRP[ ]
- MDRP[11100]
- ALIGNRP[ ]
- SVTCA[0]
- MDAP[1]
- ALIGNRP[ ]
- MDRP[11100]
- ALIGNRP[ ]
- MDAP[1]
- ALIGNRP[ ]
- MDRP[11100]
- ALIGNRP[ ]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name=".notdef#1"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#10"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#11"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#12"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#13"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#14"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#15"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#16"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#17"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#18"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#2"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#3"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#4"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#5"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#6"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#7"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#8"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#9"/><!-- contains no outline data -->
-
- <TTGlyph name="A" xMin="25" yMin="0" xMax="1203" yMax="1480">
- <contour>
- <pt x="327" y="444" on="1"/>
- <pt x="228" y="123" on="1"/>
- <pt x="371" y="123" on="1"/>
- <pt x="371" y="0" on="1"/>
- <pt x="25" y="0" on="1"/>
- <pt x="25" y="123" on="1"/>
- <pt x="99" y="123" on="1"/>
- <pt x="520" y="1480" on="1"/>
- <pt x="709" y="1480" on="1"/>
- <pt x="1129" y="123" on="1"/>
- <pt x="1203" y="123" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="766" y="123" on="1"/>
- <pt x="923" y="123" on="1"/>
- <pt x="823" y="444" on="1"/>
- </contour>
- <contour>
- <pt x="366" y="568" on="1"/>
- <pt x="785" y="568" on="1"/>
- <pt x="577" y="1243" on="1"/>
- <pt x="575" y="1243" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 19 18 2 7 16 3 0 0 17 16 6 1 0 14 13 10 9 6 5 2 1 6 7 3 2
- 4 48 200 15 0 1 12 11 4 3 3 2 0 8 7 0 14 19 18 17 16 15 14 13 12
- 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="AE" xMin="12" yMin="0" xMax="1217" yMax="1480">
- <contour>
- <pt x="824" y="703" on="1"/>
- <pt x="824" y="123" on="1"/>
- <pt x="1093" y="123" on="1"/>
- <pt x="1093" y="333" on="1"/>
- <pt x="1217" y="333" on="1"/>
- <pt x="1217" y="0" on="1"/>
- <pt x="528" y="0" on="1"/>
- <pt x="528" y="123" on="1"/>
- <pt x="639" y="123" on="1"/>
- <pt x="639" y="419" on="1"/>
- <pt x="310" y="419" on="1"/>
- <pt x="183" y="123" on="1"/>
- <pt x="304" y="123" on="1"/>
- <pt x="304" y="0" on="1"/>
- <pt x="12" y="0" on="1"/>
- <pt x="12" y="123" on="1"/>
- <pt x="56" y="123" on="1"/>
- <pt x="639" y="1480" on="1"/>
- <pt x="1198" y="1480" on="1"/>
- <pt x="1198" y="1166" on="1"/>
- <pt x="1075" y="1166" on="1"/>
- <pt x="1075" y="1357" on="1"/>
- <pt x="824" y="1357" on="1"/>
- <pt x="824" y="827" on="1"/>
- <pt x="1001" y="827" on="1"/>
- <pt x="1001" y="950" on="1"/>
- <pt x="1124" y="950" on="1"/>
- <pt x="1124" y="580" on="1"/>
- <pt x="1001" y="580" on="1"/>
- <pt x="1001" y="703" on="1"/>
- </contour>
- <contour>
- <pt x="363" y="543" on="1"/>
- <pt x="639" y="543" on="1"/>
- <pt x="639" y="1180" on="1"/>
- <pt x="638" y="1180" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 133 values pushed */
- 33 32 26 25 20 19 6 21 23 3 28 27 2 0 30 3 4 3 2 9 1 3 0 0 22
- 21 6 1 17 29 0 6 1 23 31 30 6 1 9 16 15 12 11 8 7 2 1 6 7 5
- 4 4 48 200 24 23 1 10 9 1 14 13 6 5 3 3 0 18 17 0 14 29 28 25 24
- 4 20 0 3 33 30 16 15 14 13 12 11 10 7 6 11 13 8 0 0 3 2 6 1 4
- 21 20 6 1 18 32 31 17 9 8 19 4 0 3 4 48 200 5 4 1 19 18 1 27 26
- 1 23 22 1 0 3 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Aacute" xMin="25" yMin="0" xMax="1203" yMax="1925">
- <contour>
- <pt x="327" y="444" on="1"/>
- <pt x="228" y="123" on="1"/>
- <pt x="371" y="123" on="1"/>
- <pt x="371" y="0" on="1"/>
- <pt x="25" y="0" on="1"/>
- <pt x="25" y="123" on="1"/>
- <pt x="99" y="123" on="1"/>
- <pt x="520" y="1480" on="1"/>
- <pt x="709" y="1480" on="1"/>
- <pt x="1129" y="123" on="1"/>
- <pt x="1203" y="123" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="766" y="123" on="1"/>
- <pt x="923" y="123" on="1"/>
- <pt x="823" y="444" on="1"/>
- </contour>
- <contour>
- <pt x="366" y="568" on="1"/>
- <pt x="785" y="568" on="1"/>
- <pt x="577" y="1243" on="1"/>
- <pt x="575" y="1243" on="1"/>
- </contour>
- <contour>
- <pt x="491" y="1604" on="1"/>
- <pt x="707" y="1925" on="1"/>
- <pt x="935" y="1925" on="1"/>
- <pt x="614" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 75 values pushed */
- 23 20 2 21 7 3 19 18 2 7 16 3 0 0 17 16 6 1 0 14 13 10 9 6 5
- 2 1 6 7 3 2 4 48 200 22 21 1 15 0 1 12 11 4 3 3 3 0 8 7 0
- 14 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Abreve" xMin="25" yMin="0" xMax="1203" yMax="1925">
- <contour>
- <pt x="327" y="444" on="1"/>
- <pt x="228" y="123" on="1"/>
- <pt x="371" y="123" on="1"/>
- <pt x="371" y="0" on="1"/>
- <pt x="25" y="0" on="1"/>
- <pt x="25" y="123" on="1"/>
- <pt x="99" y="123" on="1"/>
- <pt x="520" y="1480" on="1"/>
- <pt x="709" y="1480" on="1"/>
- <pt x="1129" y="123" on="1"/>
- <pt x="1203" y="123" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="766" y="123" on="1"/>
- <pt x="923" y="123" on="1"/>
- <pt x="823" y="444" on="1"/>
- </contour>
- <contour>
- <pt x="366" y="568" on="1"/>
- <pt x="785" y="568" on="1"/>
- <pt x="577" y="1243" on="1"/>
- <pt x="575" y="1243" on="1"/>
- </contour>
- <contour>
- <pt x="269" y="1925" on="1"/>
- <pt x="392" y="1925" on="1"/>
- <pt x="440" y="1777" on="0"/>
- <pt x="614" y="1777" on="1"/>
- <pt x="789" y="1777" on="0"/>
- <pt x="837" y="1925" on="1"/>
- <pt x="960" y="1925" on="1"/>
- <pt x="937" y="1836" on="0"/>
- <pt x="911" y="1790" on="1"/>
- <pt x="820" y="1635" on="0"/>
- <pt x="618" y="1635" on="1"/>
- <pt x="466" y="1635" on="0"/>
- <pt x="377" y="1716" on="1"/>
- <pt x="322" y="1765" on="0"/>
- <pt x="294" y="1837" on="1"/>
- <pt x="283" y="1866" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 0 0 23 14 30 48 200 19 18 2 7 16 3 26 25 21 20 4 13 30 7 0 0 17 16
- 6 1 0 14 13 10 9 6 5 2 1 6 7 3 2 4 48 200 15 0 1 12 11 4 3
- 3 2 0 8 7 0 14 26 25 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6
- 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Acircumflex" xMin="25" yMin="0" xMax="1203" yMax="1925">
- <contour>
- <pt x="327" y="444" on="1"/>
- <pt x="228" y="123" on="1"/>
- <pt x="371" y="123" on="1"/>
- <pt x="371" y="0" on="1"/>
- <pt x="25" y="0" on="1"/>
- <pt x="25" y="123" on="1"/>
- <pt x="99" y="123" on="1"/>
- <pt x="520" y="1480" on="1"/>
- <pt x="709" y="1480" on="1"/>
- <pt x="1129" y="123" on="1"/>
- <pt x="1203" y="123" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="766" y="123" on="1"/>
- <pt x="923" y="123" on="1"/>
- <pt x="823" y="444" on="1"/>
- </contour>
- <contour>
- <pt x="366" y="568" on="1"/>
- <pt x="785" y="568" on="1"/>
- <pt x="577" y="1243" on="1"/>
- <pt x="575" y="1243" on="1"/>
- </contour>
- <contour>
- <pt x="249" y="1604" on="1"/>
- <pt x="505" y="1925" on="1"/>
- <pt x="724" y="1925" on="1"/>
- <pt x="980" y="1604" on="1"/>
- <pt x="857" y="1604" on="1"/>
- <pt x="616" y="1806" on="1"/>
- <pt x="613" y="1806" on="1"/>
- <pt x="372" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 27 26 25 24 23 20 6 21 7 3 19 18 2 7 16 3 0 0 17 16 6 1 0 14 13
- 10 9 6 5 2 1 6 7 3 2 4 48 200 22 21 1 15 0 1 12 11 4 3 3 3
- 0 8 7 0 14 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8
- 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Adieresis" xMin="25" yMin="0" xMax="1203" yMax="1801">
- <contour>
- <pt x="327" y="444" on="1"/>
- <pt x="228" y="123" on="1"/>
- <pt x="371" y="123" on="1"/>
- <pt x="371" y="0" on="1"/>
- <pt x="25" y="0" on="1"/>
- <pt x="25" y="123" on="1"/>
- <pt x="99" y="123" on="1"/>
- <pt x="520" y="1480" on="1"/>
- <pt x="709" y="1480" on="1"/>
- <pt x="1129" y="123" on="1"/>
- <pt x="1203" y="123" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="766" y="123" on="1"/>
- <pt x="923" y="123" on="1"/>
- <pt x="823" y="444" on="1"/>
- </contour>
- <contour>
- <pt x="366" y="568" on="1"/>
- <pt x="785" y="568" on="1"/>
- <pt x="577" y="1243" on="1"/>
- <pt x="575" y="1243" on="1"/>
- </contour>
- <contour>
- <pt x="281" y="1604" on="1"/>
- <pt x="281" y="1801" on="1"/>
- <pt x="478" y="1801" on="1"/>
- <pt x="478" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="750" y="1604" on="1"/>
- <pt x="750" y="1801" on="1"/>
- <pt x="947" y="1801" on="1"/>
- <pt x="947" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 116 values pushed */
- 19 18 2 7 16 3 0 0 27 24 23 20 10 3 21 17 16 6 1 0 14 13 10 9 6
- 5 2 1 6 7 3 3 4 48 200 26 25 22 21 3 15 0 1 12 11 4 3 3 3 0
- 8 7 0 14 17 15 14 13 12 5 26 24 3 19 18 8 7 4 24 22 3 16 3 2 0
- 4 22 20 3 11 10 9 3 13 26 6 5 4 1 4 13 20 0 0 25 24 10 1 26 23
- 22 10 1 20 2 4 48 200 27 26 1 21 20 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Agrave" xMin="25" yMin="0" xMax="1203" yMax="1925">
- <contour>
- <pt x="327" y="444" on="1"/>
- <pt x="228" y="123" on="1"/>
- <pt x="371" y="123" on="1"/>
- <pt x="371" y="0" on="1"/>
- <pt x="25" y="0" on="1"/>
- <pt x="25" y="123" on="1"/>
- <pt x="99" y="123" on="1"/>
- <pt x="520" y="1480" on="1"/>
- <pt x="709" y="1480" on="1"/>
- <pt x="1129" y="123" on="1"/>
- <pt x="1203" y="123" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="766" y="123" on="1"/>
- <pt x="923" y="123" on="1"/>
- <pt x="823" y="444" on="1"/>
- </contour>
- <contour>
- <pt x="366" y="568" on="1"/>
- <pt x="785" y="568" on="1"/>
- <pt x="577" y="1243" on="1"/>
- <pt x="575" y="1243" on="1"/>
- </contour>
- <contour>
- <pt x="738" y="1604" on="1"/>
- <pt x="615" y="1604" on="1"/>
- <pt x="294" y="1925" on="1"/>
- <pt x="522" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 75 values pushed */
- 21 20 2 22 7 3 19 18 2 7 16 3 0 0 17 16 6 1 0 14 13 10 9 6 5
- 2 1 6 7 3 2 4 48 200 23 22 1 15 0 1 12 11 4 3 3 3 0 8 7 0
- 14 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Amacron" xMin="25" yMin="0" xMax="1203" yMax="1728">
- <contour>
- <pt x="327" y="444" on="1"/>
- <pt x="228" y="123" on="1"/>
- <pt x="371" y="123" on="1"/>
- <pt x="371" y="0" on="1"/>
- <pt x="25" y="0" on="1"/>
- <pt x="25" y="123" on="1"/>
- <pt x="99" y="123" on="1"/>
- <pt x="520" y="1480" on="1"/>
- <pt x="709" y="1480" on="1"/>
- <pt x="1129" y="123" on="1"/>
- <pt x="1203" y="123" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="766" y="123" on="1"/>
- <pt x="923" y="123" on="1"/>
- <pt x="823" y="444" on="1"/>
- </contour>
- <contour>
- <pt x="366" y="568" on="1"/>
- <pt x="785" y="568" on="1"/>
- <pt x="577" y="1243" on="1"/>
- <pt x="575" y="1243" on="1"/>
- </contour>
- <contour>
- <pt x="259" y="1604" on="1"/>
- <pt x="259" y="1728" on="1"/>
- <pt x="950" y="1728" on="1"/>
- <pt x="950" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 19 18 2 7 16 3 0 0 23 20 6 1 21 17 16 6 1 0 14 13 10 9 6 5 2
- 1 6 7 3 3 4 48 200 22 21 1 15 0 1 12 11 4 3 3 3 0 8 7 0 14
- 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Aogonek" xMin="25" yMin="-370" xMax="1203" yMax="1480">
- <contour>
- <pt x="327" y="444" on="1"/>
- <pt x="228" y="123" on="1"/>
- <pt x="371" y="123" on="1"/>
- <pt x="371" y="0" on="1"/>
- <pt x="25" y="0" on="1"/>
- <pt x="25" y="123" on="1"/>
- <pt x="99" y="123" on="1"/>
- <pt x="520" y="1480" on="1"/>
- <pt x="709" y="1480" on="1"/>
- <pt x="1129" y="123" on="1"/>
- <pt x="1203" y="123" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="766" y="123" on="1"/>
- <pt x="923" y="123" on="1"/>
- <pt x="823" y="444" on="1"/>
- </contour>
- <contour>
- <pt x="366" y="568" on="1"/>
- <pt x="785" y="568" on="1"/>
- <pt x="577" y="1243" on="1"/>
- <pt x="575" y="1243" on="1"/>
- </contour>
- <contour>
- <pt x="920" y="0" on="1"/>
- <pt x="1027" y="0" on="1"/>
- <pt x="898" y="-81" on="0"/>
- <pt x="898" y="-179" on="1"/>
- <pt x="898" y="-275" on="0"/>
- <pt x="1013" y="-275" on="1"/>
- <pt x="1067" y="-275" on="0"/>
- <pt x="1104" y="-260" on="1"/>
- <pt x="1104" y="-341" on="1"/>
- <pt x="1042" y="-370" on="0"/>
- <pt x="964" y="-370" on="1"/>
- <pt x="762" y="-370" on="0"/>
- <pt x="762" y="-213" on="1"/>
- <pt x="762" y="-90" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 0 0 25 17 30 48 200 19 18 2 7 16 3 28 27 30 3 0 0 17 16 6 1 0 14
- 13 10 9 6 5 2 1 6 7 3 2 4 48 200 15 0 1 21 20 12 11 4 3 5 2
- 0 8 7 0 14 0 0 23 20 32 48 200 32 28 27 21 20 19 18 17 16 15 14 13 12
- 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Aring" xMin="25" yMin="0" xMax="1203" yMax="1935">
- <contour>
- <pt x="327" y="444" on="1"/>
- <pt x="228" y="123" on="1"/>
- <pt x="371" y="123" on="1"/>
- <pt x="371" y="0" on="1"/>
- <pt x="25" y="0" on="1"/>
- <pt x="25" y="123" on="1"/>
- <pt x="99" y="123" on="1"/>
- <pt x="520" y="1480" on="1"/>
- <pt x="709" y="1480" on="1"/>
- <pt x="1129" y="123" on="1"/>
- <pt x="1203" y="123" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="766" y="123" on="1"/>
- <pt x="923" y="123" on="1"/>
- <pt x="823" y="444" on="1"/>
- </contour>
- <contour>
- <pt x="366" y="568" on="1"/>
- <pt x="785" y="568" on="1"/>
- <pt x="577" y="1243" on="1"/>
- <pt x="575" y="1243" on="1"/>
- </contour>
- <contour>
- <pt x="615" y="1935" on="1"/>
- <pt x="709" y="1935" on="0"/>
- <pt x="775" y="1869" on="1"/>
- <pt x="842" y="1803" on="0"/>
- <pt x="842" y="1709" on="1"/>
- <pt x="842" y="1612" on="0"/>
- <pt x="775" y="1547" on="1"/>
- <pt x="709" y="1481" on="0"/>
- <pt x="613" y="1481" on="1"/>
- <pt x="530" y="1481" on="0"/>
- <pt x="468" y="1535" on="1"/>
- <pt x="388" y="1604" on="0"/>
- <pt x="388" y="1708" on="1"/>
- <pt x="388" y="1802" on="0"/>
- <pt x="455" y="1868" on="1"/>
- <pt x="521" y="1935" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1848" on="1"/>
- <pt x="557" y="1848" on="0"/>
- <pt x="516" y="1808" on="1"/>
- <pt x="474" y="1767" on="0"/>
- <pt x="474" y="1709" on="1"/>
- <pt x="474" y="1650" on="0"/>
- <pt x="515" y="1609" on="1"/>
- <pt x="556" y="1567" on="0"/>
- <pt x="613" y="1567" on="1"/>
- <pt x="667" y="1567" on="0"/>
- <pt x="706" y="1600" on="1"/>
- <pt x="756" y="1643" on="0"/>
- <pt x="756" y="1709" on="1"/>
- <pt x="756" y="1767" on="0"/>
- <pt x="714" y="1808" on="1"/>
- <pt x="673" y="1848" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 88 values pushed */
- 0 0 44 32 28 36 32 20 48 200 28 0 19 18 2 7 16 3 20 7 0 0 17 16 6
- 1 0 14 13 10 9 6 5 2 1 6 7 3 2 4 48 200 15 0 1 12 11 4 3 3
- 2 0 8 7 0 14 0 0 48 32 24 40 32 32 48 200 32 24 19 18 17 16 15 14 13
- 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Atilde" xMin="25" yMin="0" xMax="1203" yMax="1839">
- <contour>
- <pt x="327" y="444" on="1"/>
- <pt x="228" y="123" on="1"/>
- <pt x="371" y="123" on="1"/>
- <pt x="371" y="0" on="1"/>
- <pt x="25" y="0" on="1"/>
- <pt x="25" y="123" on="1"/>
- <pt x="99" y="123" on="1"/>
- <pt x="520" y="1480" on="1"/>
- <pt x="709" y="1480" on="1"/>
- <pt x="1129" y="123" on="1"/>
- <pt x="1203" y="123" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="766" y="123" on="1"/>
- <pt x="923" y="123" on="1"/>
- <pt x="823" y="444" on="1"/>
- </contour>
- <contour>
- <pt x="366" y="568" on="1"/>
- <pt x="785" y="568" on="1"/>
- <pt x="577" y="1243" on="1"/>
- <pt x="575" y="1243" on="1"/>
- </contour>
- <contour>
- <pt x="281" y="1604" on="1"/>
- <pt x="287" y="1699" on="0"/>
- <pt x="312" y="1749" on="1"/>
- <pt x="357" y="1839" on="0"/>
- <pt x="466" y="1839" on="1"/>
- <pt x="538" y="1839" on="0"/>
- <pt x="601" y="1800" on="1"/>
- <pt x="661" y="1763" on="1"/>
- <pt x="723" y="1725" on="0"/>
- <pt x="757" y="1725" on="1"/>
- <pt x="825" y="1725" on="0"/>
- <pt x="836" y="1839" on="1"/>
- <pt x="947" y="1839" on="1"/>
- <pt x="940" y="1745" on="0"/>
- <pt x="915" y="1695" on="1"/>
- <pt x="869" y="1604" on="0"/>
- <pt x="762" y="1604" on="1"/>
- <pt x="689" y="1604" on="0"/>
- <pt x="626" y="1643" on="1"/>
- <pt x="566" y="1680" on="1"/>
- <pt x="506" y="1717" on="0"/>
- <pt x="470" y="1717" on="1"/>
- <pt x="402" y="1717" on="0"/>
- <pt x="391" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 0 0 41 5 24 29 5 36 48 200 19 18 2 7 16 3 43 32 31 20 4 13 36 24 7
- 0 0 17 16 6 1 0 14 13 10 9 6 5 2 1 6 7 3 2 4 48 200 15 0 1
- 12 11 4 3 3 2 0 8 7 0 14 43 32 31 20 19 18 17 16 15 14 13 12 11 10
- 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="B" xMin="74" yMin="0" xMax="1112" yMax="1480">
- <contour>
- <pt x="247" y="123" on="1"/>
- <pt x="247" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="692" y="1480" on="1"/>
- <pt x="1066" y="1480" on="0"/>
- <pt x="1066" y="1155" on="1"/>
- <pt x="1066" y="987" on="0"/>
- <pt x="964" y="882" on="1"/>
- <pt x="904" y="819" on="0"/>
- <pt x="790" y="771" on="1"/>
- <pt x="888" y="745" on="0"/>
- <pt x="938" y="715" on="1"/>
- <pt x="1112" y="610" on="0"/>
- <pt x="1112" y="377" on="1"/>
- <pt x="1112" y="0" on="0"/>
- <pt x="668" y="0" on="1"/>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- </contour>
- <contour>
- <pt x="444" y="123" on="1"/>
- <pt x="607" y="123" on="1"/>
- <pt x="902" y="123" on="0"/>
- <pt x="902" y="384" on="1"/>
- <pt x="902" y="532" on="0"/>
- <pt x="805" y="618" on="1"/>
- <pt x="709" y="703" on="0"/>
- <pt x="541" y="703" on="1"/>
- <pt x="444" y="703" on="1"/>
- </contour>
- <contour>
- <pt x="444" y="827" on="1"/>
- <pt x="542" y="827" on="1"/>
- <pt x="855" y="827" on="0"/>
- <pt x="855" y="1139" on="1"/>
- <pt x="855" y="1357" on="0"/>
- <pt x="644" y="1357" on="1"/>
- <pt x="444" y="1357" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 29 28 27 26 10 5 1 0 3 0 0 34 33 2 1 6 3 3 20 19 18 0 6 3 16
- 2 4 48 200 17 16 1 0 4 3 0 14 0 0 31 39 6 22 39 14 48 200 33 29 26
- 20 16 10 4 7 13 14 6 19 18 17 3 2 4 13 0 0 0 34 28 27 19 10 3 0
- 1 4 48 200 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="C" xMin="123" yMin="-37" xMax="1127" yMax="1517">
- <contour>
- <pt x="1127" y="74" on="1"/>
- <pt x="920" y="-37" on="0"/>
- <pt x="739" y="-37" on="1"/>
- <pt x="450" y="-37" on="0"/>
- <pt x="287" y="169" on="1"/>
- <pt x="123" y="375" on="0"/>
- <pt x="123" y="748" on="1"/>
- <pt x="123" y="1117" on="0"/>
- <pt x="279" y="1317" on="1"/>
- <pt x="435" y="1517" on="0"/>
- <pt x="725" y="1517" on="1"/>
- <pt x="889" y="1517" on="0"/>
- <pt x="1106" y="1453" on="1"/>
- <pt x="1106" y="1110" on="1"/>
- <pt x="983" y="1110" on="1"/>
- <pt x="954" y="1341" on="1"/>
- <pt x="841" y="1394" on="0"/>
- <pt x="730" y="1394" on="1"/>
- <pt x="543" y="1394" on="0"/>
- <pt x="439" y="1218" on="1"/>
- <pt x="336" y="1043" on="0"/>
- <pt x="336" y="734" on="1"/>
- <pt x="336" y="435" on="0"/>
- <pt x="450" y="267" on="1"/>
- <pt x="563" y="99" on="0"/>
- <pt x="763" y="99" on="1"/>
- <pt x="941" y="99" on="0"/>
- <pt x="1127" y="234" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 55 values pushed */
- 0 0 25 20 2 17 5 10 48 200 10 0 2 2 1 1 27 15 14 13 12 0 6 0 2
- 3 0 0 14 0 0 21 39 6 48 200 15 14 6 12 0 0 13 12 29 1 0 1 5 48
- 200 27 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Cacute" xMin="123" yMin="-37" xMax="1127" yMax="1925">
- <contour>
- <pt x="1127" y="74" on="1"/>
- <pt x="920" y="-37" on="0"/>
- <pt x="739" y="-37" on="1"/>
- <pt x="450" y="-37" on="0"/>
- <pt x="287" y="169" on="1"/>
- <pt x="123" y="375" on="0"/>
- <pt x="123" y="748" on="1"/>
- <pt x="123" y="1117" on="0"/>
- <pt x="279" y="1317" on="1"/>
- <pt x="435" y="1517" on="0"/>
- <pt x="725" y="1517" on="1"/>
- <pt x="889" y="1517" on="0"/>
- <pt x="1106" y="1453" on="1"/>
- <pt x="1106" y="1110" on="1"/>
- <pt x="983" y="1110" on="1"/>
- <pt x="954" y="1341" on="1"/>
- <pt x="841" y="1394" on="0"/>
- <pt x="730" y="1394" on="1"/>
- <pt x="543" y="1394" on="0"/>
- <pt x="439" y="1218" on="1"/>
- <pt x="336" y="1043" on="0"/>
- <pt x="336" y="734" on="1"/>
- <pt x="336" y="435" on="0"/>
- <pt x="450" y="267" on="1"/>
- <pt x="563" y="99" on="0"/>
- <pt x="763" y="99" on="1"/>
- <pt x="941" y="99" on="0"/>
- <pt x="1127" y="234" on="1"/>
- </contour>
- <contour>
- <pt x="591" y="1604" on="1"/>
- <pt x="807" y="1925" on="1"/>
- <pt x="1035" y="1925" on="1"/>
- <pt x="714" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 73 values pushed */
- 0 0 25 20 2 17 5 10 48 200 10 0 2 2 1 31 28 2 29 0 3 0 1 1 27
- 15 14 13 12 0 6 0 2 3 0 0 30 29 1 0 14 0 0 21 39 6 48 200 31 30
- 29 28 15 14 6 13 6 12 0 0 13 12 29 1 0 1 5 48 200 27 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ccaron" xMin="123" yMin="-37" xMax="1127" yMax="1925">
- <contour>
- <pt x="1127" y="74" on="1"/>
- <pt x="920" y="-37" on="0"/>
- <pt x="739" y="-37" on="1"/>
- <pt x="450" y="-37" on="0"/>
- <pt x="287" y="169" on="1"/>
- <pt x="123" y="375" on="0"/>
- <pt x="123" y="748" on="1"/>
- <pt x="123" y="1117" on="0"/>
- <pt x="279" y="1317" on="1"/>
- <pt x="435" y="1517" on="0"/>
- <pt x="725" y="1517" on="1"/>
- <pt x="889" y="1517" on="0"/>
- <pt x="1106" y="1453" on="1"/>
- <pt x="1106" y="1110" on="1"/>
- <pt x="983" y="1110" on="1"/>
- <pt x="954" y="1341" on="1"/>
- <pt x="841" y="1394" on="0"/>
- <pt x="730" y="1394" on="1"/>
- <pt x="543" y="1394" on="0"/>
- <pt x="439" y="1218" on="1"/>
- <pt x="336" y="1043" on="0"/>
- <pt x="336" y="734" on="1"/>
- <pt x="336" y="435" on="0"/>
- <pt x="450" y="267" on="1"/>
- <pt x="563" y="99" on="0"/>
- <pt x="763" y="99" on="1"/>
- <pt x="941" y="99" on="0"/>
- <pt x="1127" y="234" on="1"/>
- </contour>
- <contour>
- <pt x="1080" y="1925" on="1"/>
- <pt x="823" y="1604" on="1"/>
- <pt x="605" y="1604" on="1"/>
- <pt x="348" y="1925" on="1"/>
- <pt x="472" y="1925" on="1"/>
- <pt x="713" y="1723" on="1"/>
- <pt x="715" y="1723" on="1"/>
- <pt x="957" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 78 values pushed */
- 0 0 25 20 2 17 5 10 48 200 10 0 2 2 1 1 27 15 14 13 12 0 6 0 2
- 3 0 0 35 34 33 32 31 28 6 13 29 30 29 1 0 14 0 0 21 39 6 48 200 35
- 34 33 32 31 30 29 28 15 14 10 13 6 12 0 0 13 12 29 1 0 1 5 48 200 27
- 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ccedilla" xMin="123" yMin="-432" xMax="1127" yMax="1517">
- <contour>
- <pt x="1127" y="74" on="1"/>
- <pt x="920" y="-37" on="0"/>
- <pt x="739" y="-37" on="1"/>
- <pt x="450" y="-37" on="0"/>
- <pt x="287" y="169" on="1"/>
- <pt x="123" y="375" on="0"/>
- <pt x="123" y="748" on="1"/>
- <pt x="123" y="1117" on="0"/>
- <pt x="279" y="1317" on="1"/>
- <pt x="435" y="1517" on="0"/>
- <pt x="725" y="1517" on="1"/>
- <pt x="889" y="1517" on="0"/>
- <pt x="1106" y="1453" on="1"/>
- <pt x="1106" y="1110" on="1"/>
- <pt x="983" y="1110" on="1"/>
- <pt x="954" y="1341" on="1"/>
- <pt x="841" y="1394" on="0"/>
- <pt x="730" y="1394" on="1"/>
- <pt x="542" y="1394" on="0"/>
- <pt x="439" y="1218" on="1"/>
- <pt x="336" y="1042" on="0"/>
- <pt x="336" y="734" on="1"/>
- <pt x="336" y="436" on="0"/>
- <pt x="450" y="267" on="1"/>
- <pt x="563" y="99" on="0"/>
- <pt x="763" y="99" on="1"/>
- <pt x="941" y="99" on="0"/>
- <pt x="1127" y="234" on="1"/>
- </contour>
- <contour>
- <pt x="669" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="706" y="-109" on="1"/>
- <pt x="778" y="-111" on="0"/>
- <pt x="830" y="-148" on="1"/>
- <pt x="900" y="-197" on="0"/>
- <pt x="900" y="-269" on="1"/>
- <pt x="900" y="-337" on="0"/>
- <pt x="841" y="-384" on="1"/>
- <pt x="782" y="-432" on="0"/>
- <pt x="697" y="-432" on="1"/>
- <pt x="630" y="-432" on="0"/>
- <pt x="553" y="-411" on="1"/>
- <pt x="553" y="-330" on="1"/>
- <pt x="603" y="-345" on="0"/>
- <pt x="657" y="-345" on="1"/>
- <pt x="761" y="-345" on="0"/>
- <pt x="761" y="-271" on="1"/>
- <pt x="761" y="-178" on="0"/>
- <pt x="574" y="-175" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 82 values pushed */
- 0 0 43 32 38 25 20 2 17 5 10 48 200 10 0 2 2 1 1 27 15 14 13 12 0
- 6 0 2 3 0 0 1 47 41 40 30 29 28 6 13 38 2 0 14 0 0 45 20 34 21
- 39 6 48 200 47 41 40 30 29 28 15 14 8 13 34 6 12 0 0 13 12 29 1 0 1
- 5 48 200 27 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ccircumflex" xMin="123" yMin="-37" xMax="1127" yMax="1925">
- <contour>
- <pt x="1127" y="74" on="1"/>
- <pt x="920" y="-37" on="0"/>
- <pt x="739" y="-37" on="1"/>
- <pt x="450" y="-37" on="0"/>
- <pt x="287" y="169" on="1"/>
- <pt x="123" y="375" on="0"/>
- <pt x="123" y="748" on="1"/>
- <pt x="123" y="1117" on="0"/>
- <pt x="279" y="1317" on="1"/>
- <pt x="435" y="1517" on="0"/>
- <pt x="725" y="1517" on="1"/>
- <pt x="889" y="1517" on="0"/>
- <pt x="1106" y="1453" on="1"/>
- <pt x="1106" y="1110" on="1"/>
- <pt x="983" y="1110" on="1"/>
- <pt x="954" y="1341" on="1"/>
- <pt x="841" y="1394" on="0"/>
- <pt x="730" y="1394" on="1"/>
- <pt x="543" y="1394" on="0"/>
- <pt x="439" y="1218" on="1"/>
- <pt x="336" y="1043" on="0"/>
- <pt x="336" y="734" on="1"/>
- <pt x="336" y="435" on="0"/>
- <pt x="450" y="267" on="1"/>
- <pt x="563" y="99" on="0"/>
- <pt x="763" y="99" on="1"/>
- <pt x="941" y="99" on="0"/>
- <pt x="1127" y="234" on="1"/>
- </contour>
- <contour>
- <pt x="348" y="1604" on="1"/>
- <pt x="604" y="1925" on="1"/>
- <pt x="823" y="1925" on="1"/>
- <pt x="1079" y="1604" on="1"/>
- <pt x="956" y="1604" on="1"/>
- <pt x="715" y="1806" on="1"/>
- <pt x="712" y="1806" on="1"/>
- <pt x="471" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 0 0 25 20 2 17 5 10 48 200 10 0 2 2 1 35 34 33 32 31 28 6 29 0 3
- 0 1 1 27 15 14 13 12 0 6 0 2 3 0 0 30 29 1 0 14 0 0 21 39 6
- 48 200 35 34 33 32 31 30 29 28 15 14 10 13 6 12 0 0 13 12 29 1 0 1 5
- 48 200 27 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Cdotaccent" xMin="123" yMin="-37" xMax="1127" yMax="1801">
- <contour>
- <pt x="1127" y="74" on="1"/>
- <pt x="920" y="-37" on="0"/>
- <pt x="739" y="-37" on="1"/>
- <pt x="450" y="-37" on="0"/>
- <pt x="287" y="169" on="1"/>
- <pt x="123" y="375" on="0"/>
- <pt x="123" y="748" on="1"/>
- <pt x="123" y="1117" on="0"/>
- <pt x="279" y="1317" on="1"/>
- <pt x="435" y="1517" on="0"/>
- <pt x="725" y="1517" on="1"/>
- <pt x="889" y="1517" on="0"/>
- <pt x="1106" y="1453" on="1"/>
- <pt x="1106" y="1110" on="1"/>
- <pt x="983" y="1110" on="1"/>
- <pt x="954" y="1341" on="1"/>
- <pt x="841" y="1394" on="0"/>
- <pt x="730" y="1394" on="1"/>
- <pt x="543" y="1394" on="0"/>
- <pt x="439" y="1218" on="1"/>
- <pt x="336" y="1043" on="0"/>
- <pt x="336" y="734" on="1"/>
- <pt x="336" y="435" on="0"/>
- <pt x="450" y="267" on="1"/>
- <pt x="563" y="99" on="0"/>
- <pt x="763" y="99" on="1"/>
- <pt x="941" y="99" on="0"/>
- <pt x="1127" y="234" on="1"/>
- </contour>
- <contour>
- <pt x="615" y="1604" on="1"/>
- <pt x="615" y="1801" on="1"/>
- <pt x="812" y="1801" on="1"/>
- <pt x="812" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 0 0 25 20 2 17 5 10 48 200 10 0 2 2 1 1 27 15 14 13 12 0 6 0 2
- 3 0 0 0 0 31 28 10 1 29 1 4 48 200 30 29 1 0 14 0 0 21 39 6 48
- 200 15 14 2 12 30 3 6 28 0 0 31 30 10 1 28 1 4 13 12 29 1 0 1 5
- 48 200 29 28 1 27 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="D" xMin="49" yMin="0" xMax="1167" yMax="1480">
- <contour>
- <pt x="49" y="0" on="1"/>
- <pt x="49" y="123" on="1"/>
- <pt x="197" y="123" on="1"/>
- <pt x="197" y="1357" on="1"/>
- <pt x="49" y="1357" on="1"/>
- <pt x="49" y="1480" on="1"/>
- <pt x="559" y="1480" on="1"/>
- <pt x="1167" y="1480" on="0"/>
- <pt x="1167" y="775" on="1"/>
- <pt x="1167" y="419" on="0"/>
- <pt x="1007" y="209" on="1"/>
- <pt x="847" y="0" on="0"/>
- <pt x="577" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="395" y="123" on="1"/>
- <pt x="513" y="123" on="1"/>
- <pt x="954" y="123" on="0"/>
- <pt x="954" y="754" on="1"/>
- <pt x="954" y="1063" on="0"/>
- <pt x="843" y="1210" on="1"/>
- <pt x="731" y="1357" on="0"/>
- <pt x="499" y="1357" on="1"/>
- <pt x="395" y="1357" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 21 20 4 3 6 3 5 14 13 2 1 6 3 0 2 4 48 200 12 0 1 0 6
- 5 0 14 0 0 16 39 8 48 200 20 14 12 6 4 13 8 13 5 4 1 0 4 13 2
- 0 0 21 13 10 1 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Dcaron" xMin="49" yMin="0" xMax="1167" yMax="1925">
- <contour>
- <pt x="49" y="0" on="1"/>
- <pt x="49" y="123" on="1"/>
- <pt x="197" y="123" on="1"/>
- <pt x="197" y="1357" on="1"/>
- <pt x="49" y="1357" on="1"/>
- <pt x="49" y="1480" on="1"/>
- <pt x="559" y="1480" on="1"/>
- <pt x="1167" y="1480" on="0"/>
- <pt x="1167" y="775" on="1"/>
- <pt x="1167" y="419" on="0"/>
- <pt x="1007" y="209" on="1"/>
- <pt x="847" y="0" on="0"/>
- <pt x="577" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="395" y="123" on="1"/>
- <pt x="513" y="123" on="1"/>
- <pt x="954" y="123" on="0"/>
- <pt x="954" y="754" on="1"/>
- <pt x="954" y="1063" on="0"/>
- <pt x="843" y="1210" on="1"/>
- <pt x="731" y="1357" on="0"/>
- <pt x="499" y="1357" on="1"/>
- <pt x="395" y="1357" on="1"/>
- </contour>
- <contour>
- <pt x="919" y="1925" on="1"/>
- <pt x="662" y="1604" on="1"/>
- <pt x="444" y="1604" on="1"/>
- <pt x="187" y="1925" on="1"/>
- <pt x="311" y="1925" on="1"/>
- <pt x="552" y="1723" on="1"/>
- <pt x="554" y="1723" on="1"/>
- <pt x="796" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 89 values pushed */
- 29 28 27 26 25 22 6 13 23 0 0 21 20 4 3 6 3 5 14 13 2 1 6 3 0
- 2 4 48 200 24 23 1 12 0 1 2 0 6 5 0 14 0 0 16 39 8 48 200 26 13
- 2 2 29 28 27 24 23 22 20 14 12 6 10 13 8 13 25 5 4 1 0 5 13 2 0
- 0 21 13 10 1 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Dcroat" xMin="49" yMin="0" xMax="1167" yMax="1480">
- <contour>
- <pt x="49" y="0" on="1"/>
- <pt x="49" y="123" on="1"/>
- <pt x="197" y="123" on="1"/>
- <pt x="197" y="716" on="1"/>
- <pt x="49" y="716" on="1"/>
- <pt x="49" y="839" on="1"/>
- <pt x="197" y="839" on="1"/>
- <pt x="197" y="1357" on="1"/>
- <pt x="49" y="1357" on="1"/>
- <pt x="49" y="1480" on="1"/>
- <pt x="558" y="1480" on="1"/>
- <pt x="1167" y="1480" on="0"/>
- <pt x="1167" y="776" on="1"/>
- <pt x="1167" y="419" on="0"/>
- <pt x="1007" y="209" on="1"/>
- <pt x="847" y="0" on="0"/>
- <pt x="577" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="394" y="1357" on="1"/>
- <pt x="394" y="839" on="1"/>
- <pt x="666" y="839" on="1"/>
- <pt x="666" y="716" on="1"/>
- <pt x="394" y="716" on="1"/>
- <pt x="394" y="123" on="1"/>
- <pt x="513" y="123" on="1"/>
- <pt x="954" y="123" on="0"/>
- <pt x="954" y="754" on="1"/>
- <pt x="954" y="1062" on="0"/>
- <pt x="842" y="1210" on="1"/>
- <pt x="730" y="1357" on="0"/>
- <pt x="499" y="1357" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 0 0 29 17 8 7 6 3 9 21 20 4 3 6 3 5 23 22 2 1 6 3 0 3 4
- 48 200 19 18 6 5 3 16 0 1 2 0 10 9 0 14 0 0 25 39 12 48 200 29 23
- 20 19 16 10 6 13 12 17 9 8 5 4 1 0 6 13 2 0 0 22 21 18 17 10 3
- 2 1 4 48 200 7 6 3 2 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="E" xMin="74" yMin="0" xMax="1106" yMax="1480">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="259" y="123" on="1"/>
- <pt x="259" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="1056" y="1480" on="1"/>
- <pt x="1056" y="1123" on="1"/>
- <pt x="933" y="1123" on="1"/>
- <pt x="933" y="1357" on="1"/>
- <pt x="457" y="1357" on="1"/>
- <pt x="457" y="814" on="1"/>
- <pt x="748" y="814" on="1"/>
- <pt x="748" y="938" on="1"/>
- <pt x="871" y="938" on="1"/>
- <pt x="871" y="567" on="1"/>
- <pt x="748" y="567" on="1"/>
- <pt x="748" y="691" on="1"/>
- <pt x="457" y="691" on="1"/>
- <pt x="457" y="136" on="1"/>
- <pt x="982" y="136" on="1"/>
- <pt x="982" y="383" on="1"/>
- <pt x="1106" y="383" on="1"/>
- <pt x="1106" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 108 values pushed */
- 14 13 8 7 4 3 11 3 22 21 16 15 4 17 19 3 0 0 10 9 4 3 6 3 5
- 18 17 6 1 11 20 19 20 1 0 2 1 6 1 0 4 4 48 200 12 11 1 23 0 1
- 2 0 6 5 0 14 17 16 13 12 4 14 10 3 5 4 1 0 4 13 2 0 0 21 20
- 6 1 22 9 8 6 1 6 19 18 11 10 10 3 2 3 4 48 200 23 22 1 7 6 1
- 15 14 1 3 2 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Eacute" xMin="74" yMin="0" xMax="1106" yMax="1925">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="259" y="123" on="1"/>
- <pt x="259" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="1056" y="1480" on="1"/>
- <pt x="1056" y="1123" on="1"/>
- <pt x="933" y="1123" on="1"/>
- <pt x="933" y="1357" on="1"/>
- <pt x="457" y="1357" on="1"/>
- <pt x="457" y="814" on="1"/>
- <pt x="748" y="814" on="1"/>
- <pt x="748" y="938" on="1"/>
- <pt x="871" y="938" on="1"/>
- <pt x="871" y="567" on="1"/>
- <pt x="748" y="567" on="1"/>
- <pt x="748" y="691" on="1"/>
- <pt x="457" y="691" on="1"/>
- <pt x="457" y="136" on="1"/>
- <pt x="982" y="136" on="1"/>
- <pt x="982" y="383" on="1"/>
- <pt x="1106" y="383" on="1"/>
- <pt x="1106" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="481" y="1604" on="1"/>
- <pt x="697" y="1925" on="1"/>
- <pt x="925" y="1925" on="1"/>
- <pt x="604" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 124 values pushed */
- 27 24 2 25 5 3 14 13 8 7 4 3 11 3 22 21 16 15 4 17 19 3 0 0 10
- 9 4 3 6 3 5 18 17 6 1 11 20 19 20 1 0 2 1 6 1 0 4 4 48 200
- 26 25 1 12 11 1 23 0 1 3 0 6 5 0 14 26 8 14 2 27 25 24 17 16 13
- 12 7 14 10 3 5 4 1 0 4 13 2 0 0 21 20 6 1 22 9 8 6 1 6 19
- 18 11 10 10 3 2 3 4 48 200 23 22 1 7 6 1 15 14 1 3 2 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ebreve" xMin="74" yMin="0" xMax="1106" yMax="1925">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="259" y="123" on="1"/>
- <pt x="259" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="1056" y="1480" on="1"/>
- <pt x="1056" y="1123" on="1"/>
- <pt x="933" y="1123" on="1"/>
- <pt x="933" y="1357" on="1"/>
- <pt x="457" y="1357" on="1"/>
- <pt x="457" y="814" on="1"/>
- <pt x="748" y="814" on="1"/>
- <pt x="748" y="938" on="1"/>
- <pt x="871" y="938" on="1"/>
- <pt x="871" y="567" on="1"/>
- <pt x="748" y="567" on="1"/>
- <pt x="748" y="691" on="1"/>
- <pt x="457" y="691" on="1"/>
- <pt x="457" y="136" on="1"/>
- <pt x="982" y="136" on="1"/>
- <pt x="982" y="383" on="1"/>
- <pt x="1106" y="383" on="1"/>
- <pt x="1106" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="259" y="1925" on="1"/>
- <pt x="382" y="1925" on="1"/>
- <pt x="430" y="1777" on="0"/>
- <pt x="604" y="1777" on="1"/>
- <pt x="779" y="1777" on="0"/>
- <pt x="827" y="1925" on="1"/>
- <pt x="950" y="1925" on="1"/>
- <pt x="927" y="1836" on="0"/>
- <pt x="901" y="1790" on="1"/>
- <pt x="810" y="1635" on="0"/>
- <pt x="608" y="1635" on="1"/>
- <pt x="456" y="1635" on="0"/>
- <pt x="367" y="1716" on="1"/>
- <pt x="312" y="1765" on="0"/>
- <pt x="284" y="1837" on="1"/>
- <pt x="273" y="1866" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 133 values pushed */
- 0 0 27 14 34 48 200 14 13 8 7 4 3 11 3 22 21 16 15 4 17 19 3 30 29
- 25 24 4 13 34 5 0 0 10 9 4 3 6 3 5 18 17 6 1 11 20 19 20 1 0
- 2 1 6 1 0 4 4 48 200 12 11 1 23 0 1 2 0 6 5 0 14 30 20 8 2
- 29 17 16 13 12 5 14 10 3 25 10 2 2 5 4 1 0 4 13 2 0 0 21 20 6
- 1 22 9 8 6 1 6 19 18 11 10 10 3 2 3 4 48 200 23 22 1 7 6 1 15
- 14 1 24 3 2 2 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ecaron" xMin="74" yMin="0" xMax="1106" yMax="1925">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="259" y="123" on="1"/>
- <pt x="259" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="1056" y="1480" on="1"/>
- <pt x="1056" y="1123" on="1"/>
- <pt x="933" y="1123" on="1"/>
- <pt x="933" y="1357" on="1"/>
- <pt x="457" y="1357" on="1"/>
- <pt x="457" y="814" on="1"/>
- <pt x="748" y="814" on="1"/>
- <pt x="748" y="938" on="1"/>
- <pt x="871" y="938" on="1"/>
- <pt x="871" y="567" on="1"/>
- <pt x="748" y="567" on="1"/>
- <pt x="748" y="691" on="1"/>
- <pt x="457" y="691" on="1"/>
- <pt x="457" y="136" on="1"/>
- <pt x="982" y="136" on="1"/>
- <pt x="982" y="383" on="1"/>
- <pt x="1106" y="383" on="1"/>
- <pt x="1106" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="957" y="1925" on="1"/>
- <pt x="700" y="1604" on="1"/>
- <pt x="482" y="1604" on="1"/>
- <pt x="225" y="1925" on="1"/>
- <pt x="349" y="1925" on="1"/>
- <pt x="590" y="1723" on="1"/>
- <pt x="592" y="1723" on="1"/>
- <pt x="834" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 134 values pushed */
- 14 13 8 7 4 3 11 3 22 21 16 15 4 17 19 3 31 30 29 28 27 24 6 13 25
- 0 0 10 9 4 3 6 3 5 18 17 6 1 11 20 19 20 1 0 2 1 6 1 0 4
- 4 48 200 26 25 1 12 11 1 23 0 1 3 0 6 5 0 14 24 20 8 2 31 30 29
- 26 25 17 16 13 12 9 14 10 3 28 10 2 2 27 5 4 1 0 5 13 2 0 0 21
- 20 6 1 22 9 8 6 1 6 19 18 11 10 10 3 2 3 4 48 200 23 22 1 7 6
- 1 15 14 1 3 2 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ecircumflex" xMin="74" yMin="0" xMax="1106" yMax="1925">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="259" y="123" on="1"/>
- <pt x="259" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="1056" y="1480" on="1"/>
- <pt x="1056" y="1123" on="1"/>
- <pt x="933" y="1123" on="1"/>
- <pt x="933" y="1357" on="1"/>
- <pt x="457" y="1357" on="1"/>
- <pt x="457" y="814" on="1"/>
- <pt x="748" y="814" on="1"/>
- <pt x="748" y="938" on="1"/>
- <pt x="871" y="938" on="1"/>
- <pt x="871" y="567" on="1"/>
- <pt x="748" y="567" on="1"/>
- <pt x="748" y="691" on="1"/>
- <pt x="457" y="691" on="1"/>
- <pt x="457" y="136" on="1"/>
- <pt x="982" y="136" on="1"/>
- <pt x="982" y="383" on="1"/>
- <pt x="1106" y="383" on="1"/>
- <pt x="1106" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="259" y="1604" on="1"/>
- <pt x="515" y="1925" on="1"/>
- <pt x="734" y="1925" on="1"/>
- <pt x="990" y="1604" on="1"/>
- <pt x="867" y="1604" on="1"/>
- <pt x="626" y="1806" on="1"/>
- <pt x="623" y="1806" on="1"/>
- <pt x="382" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 135 values pushed */
- 31 30 29 28 27 24 6 25 5 3 14 13 8 7 4 3 11 3 22 21 16 15 4 17 19
- 3 0 0 10 9 4 3 6 3 5 18 17 6 1 11 20 19 20 1 0 2 1 6 1 0
- 4 4 48 200 26 25 1 12 11 1 23 0 1 3 0 6 5 0 14 27 6 20 2 30 29
- 28 26 25 17 16 13 12 9 14 10 3 31 10 2 2 5 4 1 0 4 13 2 0 0 21
- 20 6 1 22 9 8 6 1 6 19 18 11 10 10 3 2 3 4 48 200 23 22 1 7 6
- 1 15 14 1 24 3 2 2 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Edieresis" xMin="74" yMin="0" xMax="1106" yMax="1801">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="259" y="123" on="1"/>
- <pt x="259" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="1056" y="1480" on="1"/>
- <pt x="1056" y="1123" on="1"/>
- <pt x="933" y="1123" on="1"/>
- <pt x="933" y="1357" on="1"/>
- <pt x="457" y="1357" on="1"/>
- <pt x="457" y="814" on="1"/>
- <pt x="748" y="814" on="1"/>
- <pt x="748" y="938" on="1"/>
- <pt x="871" y="938" on="1"/>
- <pt x="871" y="567" on="1"/>
- <pt x="748" y="567" on="1"/>
- <pt x="748" y="691" on="1"/>
- <pt x="457" y="691" on="1"/>
- <pt x="457" y="136" on="1"/>
- <pt x="982" y="136" on="1"/>
- <pt x="982" y="383" on="1"/>
- <pt x="1106" y="383" on="1"/>
- <pt x="1106" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="259" y="1604" on="1"/>
- <pt x="259" y="1801" on="1"/>
- <pt x="456" y="1801" on="1"/>
- <pt x="456" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="728" y="1604" on="1"/>
- <pt x="728" y="1801" on="1"/>
- <pt x="925" y="1801" on="1"/>
- <pt x="925" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 135 values pushed */
- 14 13 8 7 4 3 11 3 22 21 16 15 4 17 19 3 0 0 31 28 27 24 10 3 25
- 10 9 4 3 6 3 5 18 17 6 1 11 20 19 20 1 0 2 1 6 1 0 5 4 48
- 200 30 29 26 25 3 12 11 1 23 0 1 3 0 6 5 0 14 17 16 13 12 4 14 28
- 3 5 4 1 0 4 13 2 0 0 29 28 10 1 30 27 26 10 1 2 21 20 6 1 22
- 9 8 6 1 6 19 18 11 10 10 3 2 5 4 48 200 31 30 1 23 22 1 7 6 1
- 15 14 1 25 24 3 2 3 5 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Edotaccent" xMin="74" yMin="0" xMax="1106" yMax="1801">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="259" y="123" on="1"/>
- <pt x="259" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="1056" y="1480" on="1"/>
- <pt x="1056" y="1123" on="1"/>
- <pt x="933" y="1123" on="1"/>
- <pt x="933" y="1357" on="1"/>
- <pt x="457" y="1357" on="1"/>
- <pt x="457" y="814" on="1"/>
- <pt x="748" y="814" on="1"/>
- <pt x="748" y="938" on="1"/>
- <pt x="871" y="938" on="1"/>
- <pt x="871" y="567" on="1"/>
- <pt x="748" y="567" on="1"/>
- <pt x="748" y="691" on="1"/>
- <pt x="457" y="691" on="1"/>
- <pt x="457" y="136" on="1"/>
- <pt x="982" y="136" on="1"/>
- <pt x="982" y="383" on="1"/>
- <pt x="1106" y="383" on="1"/>
- <pt x="1106" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="543" y="1604" on="1"/>
- <pt x="543" y="1801" on="1"/>
- <pt x="740" y="1801" on="1"/>
- <pt x="740" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 124 values pushed */
- 14 13 8 7 4 3 11 3 22 21 16 15 4 17 19 3 0 0 27 24 10 1 25 10 9
- 4 3 6 3 5 18 17 6 1 11 20 19 20 1 0 2 1 6 1 0 5 4 48 200 26
- 25 1 12 11 1 23 0 1 3 0 6 5 0 14 17 16 13 12 4 14 26 3 5 4 1
- 0 4 13 2 0 0 27 26 10 1 24 21 20 6 1 22 9 8 6 1 6 19 18 11 10
- 10 3 2 4 4 48 200 25 24 1 23 22 1 7 6 1 15 14 1 3 2 1 5 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Egrave" xMin="74" yMin="0" xMax="1106" yMax="1925">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="259" y="123" on="1"/>
- <pt x="259" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="1056" y="1480" on="1"/>
- <pt x="1056" y="1123" on="1"/>
- <pt x="933" y="1123" on="1"/>
- <pt x="933" y="1357" on="1"/>
- <pt x="457" y="1357" on="1"/>
- <pt x="457" y="814" on="1"/>
- <pt x="748" y="814" on="1"/>
- <pt x="748" y="938" on="1"/>
- <pt x="871" y="938" on="1"/>
- <pt x="871" y="567" on="1"/>
- <pt x="748" y="567" on="1"/>
- <pt x="748" y="691" on="1"/>
- <pt x="457" y="691" on="1"/>
- <pt x="457" y="136" on="1"/>
- <pt x="982" y="136" on="1"/>
- <pt x="982" y="383" on="1"/>
- <pt x="1106" y="383" on="1"/>
- <pt x="1106" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="740" y="1604" on="1"/>
- <pt x="617" y="1604" on="1"/>
- <pt x="296" y="1925" on="1"/>
- <pt x="524" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 124 values pushed */
- 25 24 2 26 5 3 14 13 8 7 4 3 11 3 22 21 16 15 4 17 19 3 0 0 10
- 9 4 3 6 3 5 18 17 6 1 11 20 19 20 1 0 2 1 6 1 0 4 4 48 200
- 27 26 1 12 11 1 23 0 1 3 0 6 5 0 14 27 25 24 17 16 13 12 7 14 10
- 3 26 10 2 2 5 4 1 0 4 13 2 0 0 21 20 6 1 22 9 8 6 1 6 19
- 18 11 10 10 3 2 3 4 48 200 23 22 1 7 6 1 15 14 1 3 2 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Emacron" xMin="74" yMin="0" xMax="1106" yMax="1728">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="259" y="123" on="1"/>
- <pt x="259" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="1056" y="1480" on="1"/>
- <pt x="1056" y="1123" on="1"/>
- <pt x="933" y="1123" on="1"/>
- <pt x="933" y="1357" on="1"/>
- <pt x="457" y="1357" on="1"/>
- <pt x="457" y="814" on="1"/>
- <pt x="748" y="814" on="1"/>
- <pt x="748" y="938" on="1"/>
- <pt x="871" y="938" on="1"/>
- <pt x="871" y="567" on="1"/>
- <pt x="748" y="567" on="1"/>
- <pt x="748" y="691" on="1"/>
- <pt x="457" y="691" on="1"/>
- <pt x="457" y="136" on="1"/>
- <pt x="982" y="136" on="1"/>
- <pt x="982" y="383" on="1"/>
- <pt x="1106" y="383" on="1"/>
- <pt x="1106" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="284" y="1604" on="1"/>
- <pt x="284" y="1728" on="1"/>
- <pt x="975" y="1728" on="1"/>
- <pt x="975" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 128 values pushed */
- 14 13 8 7 4 3 11 3 22 21 16 15 4 17 19 3 0 0 27 24 6 1 25 10 9
- 4 3 6 3 5 18 17 6 1 11 20 19 20 1 0 2 1 6 1 0 5 4 48 200 26
- 25 1 12 11 1 23 0 1 3 0 6 5 0 14 27 26 2 20 8 3 17 16 13 12 4
- 14 10 3 25 24 2 10 2 3 5 4 1 0 4 13 2 0 0 21 20 6 1 22 9 8
- 6 1 6 19 18 11 10 10 3 2 3 4 48 200 23 22 1 7 6 1 15 14 1 3 2
- 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Eng" xMin="74" yMin="-296" xMax="1155" yMax="1480">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="185" y="123" on="1"/>
- <pt x="185" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="308" y="1480" on="1"/>
- <pt x="918" y="405" on="1"/>
- <pt x="920" y="405" on="1"/>
- <pt x="920" y="1357" on="1"/>
- <pt x="810" y="1357" on="1"/>
- <pt x="810" y="1480" on="1"/>
- <pt x="1155" y="1480" on="1"/>
- <pt x="1155" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="0" on="1"/>
- <pt x="1044" y="-134" on="0"/>
- <pt x="964" y="-215" on="1"/>
- <pt x="885" y="-296" on="0"/>
- <pt x="752" y="-296" on="1"/>
- <pt x="664" y="-296" on="0"/>
- <pt x="536" y="-259" on="1"/>
- <pt x="536" y="-49" on="1"/>
- <pt x="659" y="-49" on="1"/>
- <pt x="672" y="-167" on="1"/>
- <pt x="736" y="-198" on="0"/>
- <pt x="783" y="-198" on="1"/>
- <pt x="845" y="-198" on="0"/>
- <pt x="880" y="-158" on="1"/>
- <pt x="922" y="-111" on="0"/>
- <pt x="922" y="-26" on="1"/>
- <pt x="922" y="-19" on="0"/>
- <pt x="921" y="-10" on="1"/>
- <pt x="920" y="0" on="1"/>
- <pt x="311" y="1076" on="1"/>
- <pt x="308" y="1076" on="1"/>
- <pt x="308" y="123" on="1"/>
- <pt x="419" y="123" on="1"/>
- <pt x="419" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 108 values pushed */
- 0 0 26 17 19 48 200 37 36 35 34 14 13 10 9 8 7 4 3 2 1 14 5 0 3
- 24 23 22 21 4 13 19 0 38 33 15 0 3 0 12 11 6 5 0 3 14 30 30 14 8
- 2 24 23 11 10 7 5 8 21 3 38 37 34 3 21 6 3 13 12 2 13 14 5 4 1
- 0 4 13 2 0 0 33 9 8 6 2 14 36 35 6 6 2 2 2 4 48 200 15 14 1
- 22 21 1 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Eogonek" xMin="74" yMin="-370" xMax="1106" yMax="1480">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="259" y="123" on="1"/>
- <pt x="259" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="1056" y="1480" on="1"/>
- <pt x="1056" y="1123" on="1"/>
- <pt x="933" y="1123" on="1"/>
- <pt x="933" y="1357" on="1"/>
- <pt x="457" y="1357" on="1"/>
- <pt x="457" y="814" on="1"/>
- <pt x="748" y="814" on="1"/>
- <pt x="748" y="938" on="1"/>
- <pt x="871" y="938" on="1"/>
- <pt x="871" y="567" on="1"/>
- <pt x="748" y="567" on="1"/>
- <pt x="748" y="691" on="1"/>
- <pt x="457" y="691" on="1"/>
- <pt x="457" y="136" on="1"/>
- <pt x="982" y="136" on="1"/>
- <pt x="982" y="383" on="1"/>
- <pt x="1106" y="383" on="1"/>
- <pt x="1106" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="860" y="0" on="1"/>
- <pt x="967" y="0" on="1"/>
- <pt x="838" y="-81" on="0"/>
- <pt x="838" y="-179" on="1"/>
- <pt x="838" y="-275" on="0"/>
- <pt x="953" y="-275" on="1"/>
- <pt x="1007" y="-275" on="0"/>
- <pt x="1044" y="-260" on="1"/>
- <pt x="1044" y="-341" on="1"/>
- <pt x="982" y="-370" on="0"/>
- <pt x="904" y="-370" on="1"/>
- <pt x="702" y="-370" on="0"/>
- <pt x="702" y="-213" on="1"/>
- <pt x="702" y="-90" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 141 values pushed */
- 0 0 29 17 34 48 200 14 13 8 7 4 3 11 3 22 21 16 15 4 17 19 3 32 31
- 34 0 0 0 10 9 4 3 6 3 5 18 17 6 1 11 20 19 20 1 0 2 1 6 1
- 0 4 4 48 200 12 11 1 25 24 23 0 3 2 0 6 5 0 14 0 0 27 20 36 48
- 200 32 31 2 6 20 3 25 20 8 2 36 36 24 17 16 13 12 6 14 10 3 5 4 1
- 0 4 13 2 0 0 21 20 6 1 22 9 8 6 1 6 19 18 11 10 10 3 2 3 4
- 48 200 23 22 1 7 6 1 15 14 1 3 2 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Eth" xMin="49" yMin="0" xMax="1167" yMax="1480">
- <contour>
- <pt x="49" y="0" on="1"/>
- <pt x="49" y="123" on="1"/>
- <pt x="197" y="123" on="1"/>
- <pt x="197" y="716" on="1"/>
- <pt x="49" y="716" on="1"/>
- <pt x="49" y="839" on="1"/>
- <pt x="197" y="839" on="1"/>
- <pt x="197" y="1357" on="1"/>
- <pt x="49" y="1357" on="1"/>
- <pt x="49" y="1480" on="1"/>
- <pt x="558" y="1480" on="1"/>
- <pt x="1167" y="1480" on="0"/>
- <pt x="1167" y="776" on="1"/>
- <pt x="1167" y="419" on="0"/>
- <pt x="1007" y="209" on="1"/>
- <pt x="847" y="0" on="0"/>
- <pt x="577" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="394" y="1357" on="1"/>
- <pt x="394" y="839" on="1"/>
- <pt x="666" y="839" on="1"/>
- <pt x="666" y="716" on="1"/>
- <pt x="394" y="716" on="1"/>
- <pt x="394" y="123" on="1"/>
- <pt x="513" y="123" on="1"/>
- <pt x="954" y="123" on="0"/>
- <pt x="954" y="754" on="1"/>
- <pt x="954" y="1062" on="0"/>
- <pt x="842" y="1210" on="1"/>
- <pt x="730" y="1357" on="0"/>
- <pt x="499" y="1357" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 0 0 29 17 8 7 6 3 9 21 20 4 3 6 3 5 23 22 2 1 6 3 0 3 4
- 48 200 19 18 6 5 3 16 0 1 2 0 10 9 0 14 0 0 25 39 12 48 200 29 23
- 20 19 16 10 6 13 12 17 9 8 5 4 1 0 6 13 2 0 0 22 21 18 17 10 3
- 2 1 4 48 200 7 6 3 2 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Euro" xMin="6" yMin="-37" xMax="1127" yMax="1517">
- <contour>
- <pt x="127" y="857" on="1"/>
- <pt x="6" y="857" on="1"/>
- <pt x="57" y="981" on="1"/>
- <pt x="143" y="981" on="1"/>
- <pt x="182" y="1150" on="0"/>
- <pt x="230" y="1236" on="1"/>
- <pt x="385" y="1517" on="0"/>
- <pt x="725" y="1517" on="1"/>
- <pt x="889" y="1517" on="0"/>
- <pt x="1106" y="1453" on="1"/>
- <pt x="1106" y="1172" on="1"/>
- <pt x="983" y="1172" on="1"/>
- <pt x="954" y="1341" on="1"/>
- <pt x="841" y="1394" on="0"/>
- <pt x="729" y="1394" on="1"/>
- <pt x="536" y="1394" on="0"/>
- <pt x="438" y="1222" on="1"/>
- <pt x="389" y="1137" on="0"/>
- <pt x="359" y="981" on="1"/>
- <pt x="1027" y="981" on="1"/>
- <pt x="976" y="857" on="1"/>
- <pt x="341" y="857" on="1"/>
- <pt x="337" y="802" on="0"/>
- <pt x="337" y="785" on="1"/>
- <pt x="336" y="761" on="0"/>
- <pt x="335" y="757" on="1"/>
- <pt x="334" y="743" on="0"/>
- <pt x="335" y="739" on="1"/>
- <pt x="336" y="734" on="0"/>
- <pt x="336" y="733" on="1"/>
- <pt x="338" y="660" on="1"/>
- <pt x="894" y="660" on="1"/>
- <pt x="843" y="537" on="1"/>
- <pt x="351" y="537" on="1"/>
- <pt x="377" y="399" on="0"/>
- <pt x="415" y="320" on="1"/>
- <pt x="521" y="99" on="0"/>
- <pt x="762" y="99" on="1"/>
- <pt x="942" y="99" on="0"/>
- <pt x="1127" y="234" on="1"/>
- <pt x="1127" y="74" on="1"/>
- <pt x="920" y="-37" on="0"/>
- <pt x="740" y="-37" on="1"/>
- <pt x="501" y="-37" on="0"/>
- <pt x="348" y="104" on="1"/>
- <pt x="242" y="202" on="0"/>
- <pt x="186" y="357" on="1"/>
- <pt x="165" y="416" on="0"/>
- <pt x="139" y="537" on="1"/>
- <pt x="6" y="537" on="1"/>
- <pt x="57" y="660" on="1"/>
- <pt x="125" y="660" on="1"/>
- <pt x="123" y="748" on="1"/>
- <pt x="121" y="759" on="1"/>
- <pt x="121" y="760" on="0"/>
- <pt x="123" y="768" on="1"/>
- <pt x="124" y="772" on="0"/>
- <pt x="124" y="791" on="1"/>
- <pt x="123" y="797" on="0"/>
- <pt x="125" y="815" on="1"/>
- <pt x="126" y="840" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 114 values pushed */
- 0 0 37 20 42 14 5 7 48 200 42 2 7 0 1 12 11 10 9 4 0 2 3 0 52
- 0 30 2 1 40 39 2 32 2 3 0 0 0 21 20 1 0 6 3 2 49 48 33 32 6
- 3 30 2 4 48 200 19 18 3 2 3 51 50 31 30 3 2 0 14 0 0 27 36 53 48
- 200 52 51 50 49 48 33 32 31 30 21 20 19 18 12 11 3 2 1 0 19 13 53 9 0
- 0 10 9 29 1 39 1 5 48 200 40 39 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Euro#1" xMin="6" yMin="-37" xMax="1127" yMax="1517">
- <contour>
- <pt x="127" y="857" on="1"/>
- <pt x="6" y="857" on="1"/>
- <pt x="57" y="981" on="1"/>
- <pt x="143" y="981" on="1"/>
- <pt x="182" y="1150" on="0"/>
- <pt x="230" y="1236" on="1"/>
- <pt x="385" y="1517" on="0"/>
- <pt x="725" y="1517" on="1"/>
- <pt x="889" y="1517" on="0"/>
- <pt x="1106" y="1453" on="1"/>
- <pt x="1106" y="1172" on="1"/>
- <pt x="983" y="1172" on="1"/>
- <pt x="954" y="1341" on="1"/>
- <pt x="841" y="1394" on="0"/>
- <pt x="729" y="1394" on="1"/>
- <pt x="536" y="1394" on="0"/>
- <pt x="438" y="1222" on="1"/>
- <pt x="389" y="1137" on="0"/>
- <pt x="359" y="981" on="1"/>
- <pt x="1027" y="981" on="1"/>
- <pt x="976" y="857" on="1"/>
- <pt x="341" y="857" on="1"/>
- <pt x="337" y="802" on="0"/>
- <pt x="337" y="785" on="1"/>
- <pt x="336" y="761" on="0"/>
- <pt x="335" y="757" on="1"/>
- <pt x="334" y="743" on="0"/>
- <pt x="335" y="739" on="1"/>
- <pt x="336" y="734" on="0"/>
- <pt x="336" y="733" on="1"/>
- <pt x="338" y="660" on="1"/>
- <pt x="894" y="660" on="1"/>
- <pt x="843" y="537" on="1"/>
- <pt x="351" y="537" on="1"/>
- <pt x="377" y="399" on="0"/>
- <pt x="415" y="320" on="1"/>
- <pt x="521" y="99" on="0"/>
- <pt x="762" y="99" on="1"/>
- <pt x="942" y="99" on="0"/>
- <pt x="1127" y="234" on="1"/>
- <pt x="1127" y="74" on="1"/>
- <pt x="920" y="-37" on="0"/>
- <pt x="740" y="-37" on="1"/>
- <pt x="501" y="-37" on="0"/>
- <pt x="348" y="104" on="1"/>
- <pt x="242" y="202" on="0"/>
- <pt x="186" y="357" on="1"/>
- <pt x="165" y="416" on="0"/>
- <pt x="139" y="537" on="1"/>
- <pt x="6" y="537" on="1"/>
- <pt x="57" y="660" on="1"/>
- <pt x="125" y="660" on="1"/>
- <pt x="123" y="748" on="1"/>
- <pt x="121" y="759" on="1"/>
- <pt x="121" y="760" on="0"/>
- <pt x="123" y="768" on="1"/>
- <pt x="124" y="772" on="0"/>
- <pt x="124" y="791" on="1"/>
- <pt x="123" y="797" on="0"/>
- <pt x="125" y="815" on="1"/>
- <pt x="126" y="840" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 114 values pushed */
- 0 0 37 20 42 14 5 7 48 200 42 2 7 0 1 12 11 10 9 4 0 2 3 0 52
- 0 30 2 1 40 39 2 32 2 3 0 0 0 21 20 1 0 6 3 2 49 48 33 32 6
- 3 30 2 4 48 200 19 18 3 2 3 51 50 31 30 3 2 0 14 0 0 27 36 53 48
- 200 52 51 50 49 48 33 32 31 30 21 20 19 18 12 11 3 2 1 0 19 13 53 9 0
- 0 10 9 29 1 39 1 5 48 200 40 39 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="F" xMin="111" yMin="0" xMax="1136" yMax="1480">
- <contour>
- <pt x="530" y="123" on="1"/>
- <pt x="802" y="123" on="1"/>
- <pt x="802" y="0" on="1"/>
- <pt x="111" y="0" on="1"/>
- <pt x="111" y="123" on="1"/>
- <pt x="333" y="123" on="1"/>
- <pt x="333" y="1357" on="1"/>
- <pt x="111" y="1357" on="1"/>
- <pt x="111" y="1480" on="1"/>
- <pt x="1136" y="1480" on="1"/>
- <pt x="1136" y="1110" on="1"/>
- <pt x="1013" y="1110" on="1"/>
- <pt x="1013" y="1357" on="1"/>
- <pt x="530" y="1357" on="1"/>
- <pt x="530" y="777" on="1"/>
- <pt x="828" y="777" on="1"/>
- <pt x="828" y="901" on="1"/>
- <pt x="951" y="901" on="1"/>
- <pt x="951" y="530" on="1"/>
- <pt x="828" y="530" on="1"/>
- <pt x="828" y="654" on="1"/>
- <pt x="530" y="654" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 97 values pushed */
- 17 16 11 10 4 6 14 3 19 18 2 20 0 3 0 0 13 12 7 6 6 3 8 21 20
- 6 1 14 5 4 1 0 6 3 2 3 4 48 200 15 14 1 3 2 1 2 0 9 8 0
- 14 20 19 16 15 2 1 6 17 0 3 8 7 4 3 4 13 5 0 0 12 11 6 1 9
- 21 14 13 0 10 3 5 2 4 48 200 10 9 1 18 17 1 6 5 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="G" xMin="74" yMin="-37" xMax="1081" yMax="1518">
- <contour>
- <pt x="1081" y="74" on="1"/>
- <pt x="899" y="-37" on="0"/>
- <pt x="698" y="-37" on="1"/>
- <pt x="402" y="-37" on="0"/>
- <pt x="238" y="169" on="1"/>
- <pt x="74" y="374" on="0"/>
- <pt x="74" y="747" on="1"/>
- <pt x="74" y="1120" on="0"/>
- <pt x="231" y="1319" on="1"/>
- <pt x="389" y="1518" on="0"/>
- <pt x="688" y="1518" on="1"/>
- <pt x="861" y="1518" on="0"/>
- <pt x="1057" y="1456" on="1"/>
- <pt x="1057" y="1110" on="1"/>
- <pt x="934" y="1110" on="1"/>
- <pt x="905" y="1341" on="1"/>
- <pt x="791" y="1395" on="0"/>
- <pt x="692" y="1395" on="1"/>
- <pt x="287" y="1395" on="0"/>
- <pt x="287" y="737" on="1"/>
- <pt x="287" y="430" on="0"/>
- <pt x="402" y="264" on="1"/>
- <pt x="517" y="99" on="0"/>
- <pt x="721" y="99" on="1"/>
- <pt x="799" y="99" on="0"/>
- <pt x="883" y="131" on="1"/>
- <pt x="883" y="537" on="1"/>
- <pt x="711" y="537" on="1"/>
- <pt x="711" y="660" on="1"/>
- <pt x="1081" y="660" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 84 values pushed */
- 0 0 23 20 2 17 5 10 48 200 10 0 2 2 1 15 14 13 12 4 0 28 3 0 1
- 25 0 2 26 2 3 0 0 0 27 26 6 1 28 1 4 48 200 29 28 1 0 14 0 0
- 19 39 6 48 200 15 14 2 12 25 3 28 27 6 25 0 0 26 25 10 1 0 1 4 48
- 200 29 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Gbreve" xMin="74" yMin="-37" xMax="1081" yMax="1925">
- <contour>
- <pt x="1081" y="74" on="1"/>
- <pt x="899" y="-37" on="0"/>
- <pt x="698" y="-37" on="1"/>
- <pt x="402" y="-37" on="0"/>
- <pt x="238" y="169" on="1"/>
- <pt x="74" y="374" on="0"/>
- <pt x="74" y="747" on="1"/>
- <pt x="74" y="1120" on="0"/>
- <pt x="231" y="1319" on="1"/>
- <pt x="389" y="1518" on="0"/>
- <pt x="688" y="1518" on="1"/>
- <pt x="861" y="1518" on="0"/>
- <pt x="1057" y="1456" on="1"/>
- <pt x="1057" y="1110" on="1"/>
- <pt x="934" y="1110" on="1"/>
- <pt x="905" y="1341" on="1"/>
- <pt x="791" y="1395" on="0"/>
- <pt x="692" y="1395" on="1"/>
- <pt x="287" y="1395" on="0"/>
- <pt x="287" y="737" on="1"/>
- <pt x="287" y="430" on="0"/>
- <pt x="402" y="264" on="1"/>
- <pt x="517" y="99" on="0"/>
- <pt x="721" y="99" on="1"/>
- <pt x="799" y="99" on="0"/>
- <pt x="883" y="131" on="1"/>
- <pt x="883" y="537" on="1"/>
- <pt x="711" y="537" on="1"/>
- <pt x="711" y="660" on="1"/>
- <pt x="1081" y="660" on="1"/>
- </contour>
- <contour>
- <pt x="320" y="1925" on="1"/>
- <pt x="443" y="1925" on="1"/>
- <pt x="491" y="1777" on="0"/>
- <pt x="665" y="1777" on="1"/>
- <pt x="840" y="1777" on="0"/>
- <pt x="888" y="1925" on="1"/>
- <pt x="1011" y="1925" on="1"/>
- <pt x="988" y="1836" on="0"/>
- <pt x="962" y="1790" on="1"/>
- <pt x="871" y="1635" on="0"/>
- <pt x="670" y="1635" on="1"/>
- <pt x="517" y="1635" on="0"/>
- <pt x="428" y="1716" on="1"/>
- <pt x="373" y="1765" on="0"/>
- <pt x="345" y="1837" on="1"/>
- <pt x="334" y="1866" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 103 values pushed */
- 0 0 33 14 40 23 20 2 17 5 10 48 200 10 0 2 2 1 15 14 13 12 4 0 28
- 3 0 1 25 0 2 26 2 3 0 1 36 35 31 30 4 13 40 0 0 0 0 27 26 6
- 1 28 1 4 48 200 29 28 1 0 14 0 0 19 39 6 48 200 36 35 15 14 4 12 25
- 3 31 30 28 27 4 13 6 25 0 0 26 25 10 1 0 1 4 48 200 29 0 1 13 12
- 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Gcircumflex" xMin="74" yMin="-37" xMax="1081" yMax="1925">
- <contour>
- <pt x="1081" y="74" on="1"/>
- <pt x="899" y="-37" on="0"/>
- <pt x="698" y="-37" on="1"/>
- <pt x="402" y="-37" on="0"/>
- <pt x="238" y="169" on="1"/>
- <pt x="74" y="374" on="0"/>
- <pt x="74" y="747" on="1"/>
- <pt x="74" y="1120" on="0"/>
- <pt x="231" y="1319" on="1"/>
- <pt x="389" y="1518" on="0"/>
- <pt x="688" y="1518" on="1"/>
- <pt x="861" y="1518" on="0"/>
- <pt x="1057" y="1456" on="1"/>
- <pt x="1057" y="1110" on="1"/>
- <pt x="934" y="1110" on="1"/>
- <pt x="905" y="1341" on="1"/>
- <pt x="791" y="1395" on="0"/>
- <pt x="692" y="1395" on="1"/>
- <pt x="287" y="1395" on="0"/>
- <pt x="287" y="737" on="1"/>
- <pt x="287" y="430" on="0"/>
- <pt x="402" y="264" on="1"/>
- <pt x="517" y="99" on="0"/>
- <pt x="721" y="99" on="1"/>
- <pt x="799" y="99" on="0"/>
- <pt x="883" y="131" on="1"/>
- <pt x="883" y="537" on="1"/>
- <pt x="711" y="537" on="1"/>
- <pt x="711" y="660" on="1"/>
- <pt x="1081" y="660" on="1"/>
- </contour>
- <contour>
- <pt x="299" y="1604" on="1"/>
- <pt x="555" y="1925" on="1"/>
- <pt x="774" y="1925" on="1"/>
- <pt x="1030" y="1604" on="1"/>
- <pt x="907" y="1604" on="1"/>
- <pt x="666" y="1806" on="1"/>
- <pt x="663" y="1806" on="1"/>
- <pt x="422" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 110 values pushed */
- 0 0 23 20 2 17 5 10 48 200 10 0 2 2 1 37 36 35 34 33 30 6 31 0 3
- 0 1 15 14 13 12 4 0 28 3 0 1 25 0 2 26 2 3 0 0 0 27 26 6 1
- 28 1 4 48 200 32 31 1 29 28 1 2 0 14 0 0 19 39 6 48 200 34 33 15 14
- 4 12 25 3 37 36 35 32 31 30 28 27 8 13 6 25 0 0 26 25 10 1 0 1 4
- 48 200 29 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Gcommaaccent" xMin="74" yMin="-432" xMax="1081" yMax="1518">
- <contour>
- <pt x="1081" y="74" on="1"/>
- <pt x="899" y="-37" on="0"/>
- <pt x="698" y="-37" on="1"/>
- <pt x="402" y="-37" on="0"/>
- <pt x="238" y="169" on="1"/>
- <pt x="74" y="374" on="0"/>
- <pt x="74" y="747" on="1"/>
- <pt x="74" y="1120" on="0"/>
- <pt x="231" y="1319" on="1"/>
- <pt x="389" y="1518" on="0"/>
- <pt x="688" y="1518" on="1"/>
- <pt x="860" y="1518" on="0"/>
- <pt x="1057" y="1456" on="1"/>
- <pt x="1057" y="1110" on="1"/>
- <pt x="934" y="1110" on="1"/>
- <pt x="905" y="1341" on="1"/>
- <pt x="791" y="1395" on="0"/>
- <pt x="691" y="1395" on="1"/>
- <pt x="287" y="1395" on="0"/>
- <pt x="287" y="737" on="1"/>
- <pt x="287" y="430" on="0"/>
- <pt x="402" y="264" on="1"/>
- <pt x="517" y="99" on="0"/>
- <pt x="721" y="99" on="1"/>
- <pt x="799" y="99" on="0"/>
- <pt x="883" y="131" on="1"/>
- <pt x="883" y="537" on="1"/>
- <pt x="711" y="537" on="1"/>
- <pt x="711" y="660" on="1"/>
- <pt x="1081" y="660" on="1"/>
- </contour>
- <contour>
- <pt x="528" y="-421" on="1"/>
- <pt x="528" y="-336" on="1"/>
- <pt x="585" y="-345" on="0"/>
- <pt x="625" y="-345" on="1"/>
- <pt x="734" y="-345" on="0"/>
- <pt x="734" y="-278" on="1"/>
- <pt x="734" y="-204" on="0"/>
- <pt x="577" y="-188" on="1"/>
- <pt x="577" y="-111" on="1"/>
- <pt x="711" y="-114" on="0"/>
- <pt x="777" y="-143" on="1"/>
- <pt x="870" y="-185" on="0"/>
- <pt x="870" y="-280" on="1"/>
- <pt x="870" y="-432" on="0"/>
- <pt x="652" y="-432" on="1"/>
- <pt x="594" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 107 values pushed */
- 0 0 33 32 44 23 20 2 17 5 10 48 200 10 0 2 2 1 15 14 13 12 4 0 28
- 3 0 1 25 0 2 26 2 3 0 1 38 37 31 30 4 13 44 2 0 0 0 27 26 6
- 1 28 1 4 48 200 29 28 1 0 14 0 0 35 20 42 19 39 6 48 200 15 14 2 12
- 25 3 38 37 31 30 28 27 6 13 42 6 25 0 0 26 25 10 1 0 1 4 48 200 29
- 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Gdotaccent" xMin="74" yMin="-37" xMax="1081" yMax="1801">
- <contour>
- <pt x="1081" y="74" on="1"/>
- <pt x="899" y="-37" on="0"/>
- <pt x="698" y="-37" on="1"/>
- <pt x="402" y="-37" on="0"/>
- <pt x="238" y="169" on="1"/>
- <pt x="74" y="374" on="0"/>
- <pt x="74" y="747" on="1"/>
- <pt x="74" y="1120" on="0"/>
- <pt x="231" y="1319" on="1"/>
- <pt x="389" y="1518" on="0"/>
- <pt x="688" y="1518" on="1"/>
- <pt x="861" y="1518" on="0"/>
- <pt x="1057" y="1456" on="1"/>
- <pt x="1057" y="1110" on="1"/>
- <pt x="934" y="1110" on="1"/>
- <pt x="905" y="1341" on="1"/>
- <pt x="791" y="1395" on="0"/>
- <pt x="692" y="1395" on="1"/>
- <pt x="287" y="1395" on="0"/>
- <pt x="287" y="737" on="1"/>
- <pt x="287" y="430" on="0"/>
- <pt x="402" y="264" on="1"/>
- <pt x="517" y="99" on="0"/>
- <pt x="721" y="99" on="1"/>
- <pt x="799" y="99" on="0"/>
- <pt x="883" y="131" on="1"/>
- <pt x="883" y="537" on="1"/>
- <pt x="711" y="537" on="1"/>
- <pt x="711" y="660" on="1"/>
- <pt x="1081" y="660" on="1"/>
- </contour>
- <contour>
- <pt x="566" y="1604" on="1"/>
- <pt x="566" y="1801" on="1"/>
- <pt x="763" y="1801" on="1"/>
- <pt x="763" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 105 values pushed */
- 0 0 23 20 2 17 5 10 48 200 10 0 2 2 1 15 14 13 12 4 0 28 3 0 1
- 25 0 2 26 2 3 0 0 0 33 30 10 1 31 27 26 6 1 28 2 4 48 200 32 31
- 1 29 28 1 2 0 14 0 0 19 39 6 48 200 15 14 2 12 25 3 28 27 2 32 30
- 3 6 30 0 0 33 32 10 1 30 26 25 10 1 0 2 4 48 200 31 30 1 29 0 1
- 13 12 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="H" xMin="62" yMin="0" xMax="1168" yMax="1480">
- <contour>
- <pt x="370" y="703" on="1"/>
- <pt x="370" y="123" on="1"/>
- <pt x="469" y="123" on="1"/>
- <pt x="469" y="0" on="1"/>
- <pt x="62" y="0" on="1"/>
- <pt x="62" y="123" on="1"/>
- <pt x="173" y="123" on="1"/>
- <pt x="173" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="469" y="1480" on="1"/>
- <pt x="469" y="1357" on="1"/>
- <pt x="370" y="1357" on="1"/>
- <pt x="370" y="827" on="1"/>
- <pt x="859" y="827" on="1"/>
- <pt x="859" y="1357" on="1"/>
- <pt x="760" y="1357" on="1"/>
- <pt x="760" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1057" y="1357" on="1"/>
- <pt x="1057" y="123" on="1"/>
- <pt x="1168" y="123" on="1"/>
- <pt x="1168" y="0" on="1"/>
- <pt x="760" y="0" on="1"/>
- <pt x="760" y="123" on="1"/>
- <pt x="859" y="123" on="1"/>
- <pt x="859" y="703" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 106 values pushed */
- 20 19 16 15 12 11 8 7 8 9 13 3 26 25 22 21 6 5 2 1 8 0 3 3 0
- 0 27 0 6 1 13 1 4 48 200 14 13 1 24 23 4 3 3 2 0 18 17 10 9 0
- 3 14 25 24 17 16 11 10 3 2 8 14 0 3 23 22 19 18 4 13 20 9 8 5 4
- 4 13 6 0 0 27 26 15 14 10 3 20 13 12 1 0 10 3 6 2 4 48 200 21 20
- 1 7 6 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Hbar" xMin="37" yMin="0" xMax="1192" yMax="1480">
- <contour>
- <pt x="370" y="827" on="1"/>
- <pt x="859" y="827" on="1"/>
- <pt x="859" y="1086" on="1"/>
- <pt x="370" y="1086" on="1"/>
- </contour>
- <contour>
- <pt x="62" y="0" on="1"/>
- <pt x="62" y="123" on="1"/>
- <pt x="173" y="123" on="1"/>
- <pt x="173" y="1086" on="1"/>
- <pt x="37" y="1086" on="1"/>
- <pt x="37" y="1184" on="1"/>
- <pt x="173" y="1184" on="1"/>
- <pt x="173" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="469" y="1480" on="1"/>
- <pt x="469" y="1357" on="1"/>
- <pt x="370" y="1357" on="1"/>
- <pt x="370" y="1185" on="1"/>
- <pt x="859" y="1185" on="1"/>
- <pt x="859" y="1357" on="1"/>
- <pt x="760" y="1357" on="1"/>
- <pt x="760" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1057" y="1357" on="1"/>
- <pt x="1057" y="1184" on="1"/>
- <pt x="1192" y="1184" on="1"/>
- <pt x="1192" y="1086" on="1"/>
- <pt x="1057" y="1086" on="1"/>
- <pt x="1057" y="123" on="1"/>
- <pt x="1168" y="123" on="1"/>
- <pt x="1168" y="0" on="1"/>
- <pt x="760" y="0" on="1"/>
- <pt x="760" y="123" on="1"/>
- <pt x="859" y="123" on="1"/>
- <pt x="859" y="703" on="1"/>
- <pt x="370" y="703" on="1"/>
- <pt x="370" y="123" on="1"/>
- <pt x="469" y="123" on="1"/>
- <pt x="469" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 143 values pushed */
- 24 23 20 19 16 15 12 11 8 13 17 3 26 25 10 9 4 17 2 3 38 37 34 33 30
- 29 6 5 8 35 4 3 18 17 1 36 35 1 39 32 31 4 3 1 0 1 4 0 22 21
- 14 13 0 3 28 27 8 7 3 2 1 5 14 39 38 33 32 21 20 15 14 8 1 0 3
- 31 30 27 26 23 22 6 13 24 13 12 9 8 5 4 6 13 6 0 0 35 34 19 18 2
- 1 10 5 24 37 36 17 16 3 0 10 5 6 2 4 48 200 29 28 25 24 3 11 10 7
- 6 3 35 34 19 18 2 1 5 37 36 17 16 3 0 5 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Hcircumflex" xMin="62" yMin="0" xMax="1168" yMax="1925">
- <contour>
- <pt x="370" y="703" on="1"/>
- <pt x="370" y="123" on="1"/>
- <pt x="469" y="123" on="1"/>
- <pt x="469" y="0" on="1"/>
- <pt x="62" y="0" on="1"/>
- <pt x="62" y="123" on="1"/>
- <pt x="173" y="123" on="1"/>
- <pt x="173" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="469" y="1480" on="1"/>
- <pt x="469" y="1357" on="1"/>
- <pt x="370" y="1357" on="1"/>
- <pt x="370" y="827" on="1"/>
- <pt x="859" y="827" on="1"/>
- <pt x="859" y="1357" on="1"/>
- <pt x="760" y="1357" on="1"/>
- <pt x="760" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1057" y="1357" on="1"/>
- <pt x="1057" y="123" on="1"/>
- <pt x="1168" y="123" on="1"/>
- <pt x="1168" y="0" on="1"/>
- <pt x="760" y="0" on="1"/>
- <pt x="760" y="123" on="1"/>
- <pt x="859" y="123" on="1"/>
- <pt x="859" y="703" on="1"/>
- </contour>
- <contour>
- <pt x="249" y="1604" on="1"/>
- <pt x="505" y="1925" on="1"/>
- <pt x="724" y="1925" on="1"/>
- <pt x="980" y="1604" on="1"/>
- <pt x="857" y="1604" on="1"/>
- <pt x="616" y="1806" on="1"/>
- <pt x="613" y="1806" on="1"/>
- <pt x="372" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 133 values pushed */
- 35 34 33 32 31 28 6 29 9 3 20 19 16 15 12 11 8 7 8 9 13 3 26 25 22
- 21 6 5 2 1 8 0 3 3 0 0 27 0 6 1 13 1 4 48 200 30 29 1 14 13
- 1 24 23 4 3 3 3 0 18 17 10 9 0 3 14 31 20 14 2 35 34 33 32 30 29
- 25 24 17 16 11 10 3 2 14 14 0 3 28 0 6 2 23 22 19 18 4 13 20 9 8
- 5 4 4 13 6 0 0 27 26 15 14 10 3 20 13 12 1 0 10 3 6 2 4 48 200
- 21 20 1 7 6 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="I" xMin="160" yMin="0" xMax="1068" yMax="1480">
- <contour>
- <pt x="160" y="0" on="1"/>
- <pt x="160" y="123" on="1"/>
- <pt x="515" y="123" on="1"/>
- <pt x="515" y="1357" on="1"/>
- <pt x="160" y="1357" on="1"/>
- <pt x="160" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="713" y="1357" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="1068" y="123" on="1"/>
- <pt x="1068" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 0 0 8 7 4 3 6 3 5 10 9 2 1 6 3 0 2 4 48 200 11 0 1 0 6
- 5 0 14 11 10 7 6 4 13 8 5 4 1 0 4 13 2 0 0 9 8 10 1 2 1
- 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="IJ" xMin="45" yMin="-37" xMax="1131" yMax="1480">
- <contour>
- <pt x="45" y="0" on="1"/>
- <pt x="45" y="123" on="1"/>
- <pt x="144" y="123" on="1"/>
- <pt x="144" y="1357" on="1"/>
- <pt x="45" y="1357" on="1"/>
- <pt x="45" y="1480" on="1"/>
- <pt x="440" y="1480" on="1"/>
- <pt x="440" y="1357" on="1"/>
- <pt x="341" y="1357" on="1"/>
- <pt x="341" y="123" on="1"/>
- <pt x="440" y="123" on="1"/>
- <pt x="440" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="563" y="-19" on="1"/>
- <pt x="563" y="197" on="1"/>
- <pt x="687" y="197" on="1"/>
- <pt x="699" y="108" on="1"/>
- <pt x="729" y="86" on="0"/>
- <pt x="762" y="86" on="1"/>
- <pt x="933" y="86" on="0"/>
- <pt x="933" y="410" on="1"/>
- <pt x="933" y="1357" on="1"/>
- <pt x="736" y="1357" on="1"/>
- <pt x="736" y="1480" on="1"/>
- <pt x="1131" y="1480" on="1"/>
- <pt x="1131" y="533" on="1"/>
- <pt x="1131" y="226" on="0"/>
- <pt x="1034" y="105" on="1"/>
- <pt x="920" y="-37" on="0"/>
- <pt x="711" y="-37" on="1"/>
- <pt x="652" y="-37" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 100 values pushed */
- 0 0 17 5 28 48 200 28 2 24 19 15 14 13 10 9 2 1 9 3 0 3 12 0 0
- 0 21 20 8 7 4 3 6 5 5 1 4 48 200 11 0 1 0 23 22 6 5 0 3 14
- 22 21 15 14 4 19 12 3 11 10 7 6 4 12 8 3 5 4 1 0 4 13 2 0 0
- 20 19 10 1 23 9 8 10 1 2 2 4 48 200 24 23 1 13 12 1 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Iacute" xMin="160" yMin="0" xMax="1068" yMax="1925">
- <contour>
- <pt x="160" y="0" on="1"/>
- <pt x="160" y="123" on="1"/>
- <pt x="515" y="123" on="1"/>
- <pt x="515" y="1357" on="1"/>
- <pt x="160" y="1357" on="1"/>
- <pt x="160" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="713" y="1357" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="1068" y="123" on="1"/>
- <pt x="1068" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="515" y="1604" on="1"/>
- <pt x="731" y="1925" on="1"/>
- <pt x="959" y="1925" on="1"/>
- <pt x="638" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 15 12 2 13 5 3 0 0 8 7 4 3 6 3 5 10 9 2 1 6 3 0 2 4 48
- 200 14 13 1 11 0 1 2 0 6 5 0 14 15 8 2 2 14 13 11 10 7 6 6 13
- 8 5 4 1 0 4 13 2 0 0 9 8 10 1 2 1 4 48 200 12 3 2 2 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ibreve" xMin="160" yMin="0" xMax="1068" yMax="1925">
- <contour>
- <pt x="160" y="0" on="1"/>
- <pt x="160" y="123" on="1"/>
- <pt x="515" y="123" on="1"/>
- <pt x="515" y="1357" on="1"/>
- <pt x="160" y="1357" on="1"/>
- <pt x="160" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="713" y="1357" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="1068" y="123" on="1"/>
- <pt x="1068" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="269" y="1925" on="1"/>
- <pt x="392" y="1925" on="1"/>
- <pt x="440" y="1777" on="0"/>
- <pt x="614" y="1777" on="1"/>
- <pt x="789" y="1777" on="0"/>
- <pt x="837" y="1925" on="1"/>
- <pt x="960" y="1925" on="1"/>
- <pt x="937" y="1836" on="0"/>
- <pt x="911" y="1790" on="1"/>
- <pt x="820" y="1635" on="0"/>
- <pt x="618" y="1635" on="1"/>
- <pt x="466" y="1635" on="0"/>
- <pt x="377" y="1716" on="1"/>
- <pt x="322" y="1765" on="0"/>
- <pt x="294" y="1837" on="1"/>
- <pt x="283" y="1866" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 76 values pushed */
- 0 0 15 14 22 48 200 18 17 13 12 4 13 22 5 0 0 8 7 4 3 6 3 5 10
- 9 2 1 6 3 0 2 4 48 200 11 0 1 0 6 5 0 14 18 17 11 10 7 6 6
- 13 8 13 12 5 4 1 0 6 13 2 0 0 9 8 10 1 2 1 4 48 200 3 2 1
- 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Icircumflex" xMin="160" yMin="0" xMax="1068" yMax="1925">
- <contour>
- <pt x="160" y="0" on="1"/>
- <pt x="160" y="123" on="1"/>
- <pt x="515" y="123" on="1"/>
- <pt x="515" y="1357" on="1"/>
- <pt x="160" y="1357" on="1"/>
- <pt x="160" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="713" y="1357" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="1068" y="123" on="1"/>
- <pt x="1068" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="248" y="1604" on="1"/>
- <pt x="504" y="1925" on="1"/>
- <pt x="723" y="1925" on="1"/>
- <pt x="979" y="1604" on="1"/>
- <pt x="856" y="1604" on="1"/>
- <pt x="615" y="1806" on="1"/>
- <pt x="612" y="1806" on="1"/>
- <pt x="371" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 19 18 17 16 15 12 6 13 5 3 0 0 8 7 4 3 6 3 5 10 9 2 1 6 3
- 0 2 4 48 200 14 13 1 11 0 1 2 0 6 5 0 14 18 17 2 8 2 3 16 15
- 14 11 10 7 6 7 13 8 19 13 12 5 4 1 0 7 13 2 0 0 9 8 10 1 2
- 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Idieresis" xMin="160" yMin="0" xMax="1068" yMax="1801">
- <contour>
- <pt x="160" y="0" on="1"/>
- <pt x="160" y="123" on="1"/>
- <pt x="515" y="123" on="1"/>
- <pt x="515" y="1357" on="1"/>
- <pt x="160" y="1357" on="1"/>
- <pt x="160" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="713" y="1357" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="1068" y="123" on="1"/>
- <pt x="1068" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="281" y="1604" on="1"/>
- <pt x="281" y="1801" on="1"/>
- <pt x="478" y="1801" on="1"/>
- <pt x="478" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="750" y="1604" on="1"/>
- <pt x="750" y="1801" on="1"/>
- <pt x="947" y="1801" on="1"/>
- <pt x="947" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 0 0 19 16 15 12 10 3 13 8 7 4 3 6 3 5 10 9 2 1 6 3 0 3 4
- 48 200 18 17 14 13 3 11 0 1 2 0 6 5 0 14 11 10 7 6 4 13 18 5 4
- 1 0 4 13 12 0 0 17 16 10 1 18 15 14 10 1 12 9 8 10 1 2 3 4 48
- 200 19 18 1 13 12 1 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Idotaccent" xMin="160" yMin="0" xMax="1068" yMax="1801">
- <contour>
- <pt x="160" y="0" on="1"/>
- <pt x="160" y="123" on="1"/>
- <pt x="515" y="123" on="1"/>
- <pt x="515" y="1357" on="1"/>
- <pt x="160" y="1357" on="1"/>
- <pt x="160" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="713" y="1357" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="1068" y="123" on="1"/>
- <pt x="1068" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="515" y="1604" on="1"/>
- <pt x="515" y="1801" on="1"/>
- <pt x="712" y="1801" on="1"/>
- <pt x="712" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 73 values pushed */
- 0 0 15 12 10 1 13 8 7 4 3 6 3 5 10 9 2 1 6 3 0 3 4 48 200
- 14 13 1 11 0 1 2 0 6 5 0 14 11 10 7 6 4 13 8 5 4 1 0 4 13
- 2 0 0 15 14 10 1 2 9 8 10 1 2 2 4 48 200 13 12 3 2 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Igrave" xMin="160" yMin="0" xMax="1068" yMax="1925">
- <contour>
- <pt x="160" y="0" on="1"/>
- <pt x="160" y="123" on="1"/>
- <pt x="515" y="123" on="1"/>
- <pt x="515" y="1357" on="1"/>
- <pt x="160" y="1357" on="1"/>
- <pt x="160" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="713" y="1357" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="1068" y="123" on="1"/>
- <pt x="1068" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="712" y="1604" on="1"/>
- <pt x="589" y="1604" on="1"/>
- <pt x="268" y="1925" on="1"/>
- <pt x="496" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 75 values pushed */
- 13 12 2 14 5 3 0 0 8 7 4 3 6 3 5 10 9 2 1 6 3 0 2 4 48
- 200 15 14 1 11 0 1 2 0 6 5 0 14 13 12 2 8 2 3 11 10 7 6 4 13
- 8 15 14 5 4 1 0 6 13 2 0 0 9 8 10 1 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Imacron" xMin="160" yMin="0" xMax="1068" yMax="1728">
- <contour>
- <pt x="160" y="0" on="1"/>
- <pt x="160" y="123" on="1"/>
- <pt x="515" y="123" on="1"/>
- <pt x="515" y="1357" on="1"/>
- <pt x="160" y="1357" on="1"/>
- <pt x="160" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="713" y="1357" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="1068" y="123" on="1"/>
- <pt x="1068" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="269" y="1604" on="1"/>
- <pt x="269" y="1728" on="1"/>
- <pt x="960" y="1728" on="1"/>
- <pt x="960" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 70 values pushed */
- 0 0 15 12 6 1 13 8 7 4 3 6 3 5 10 9 2 1 6 3 0 3 4 48 200
- 14 13 1 11 0 1 2 0 6 5 0 14 15 14 11 10 7 6 6 13 8 13 12 5 4
- 1 0 6 13 2 0 0 9 8 10 1 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Iogonek" xMin="160" yMin="-370" xMax="1068" yMax="1480">
- <contour>
- <pt x="160" y="0" on="1"/>
- <pt x="160" y="123" on="1"/>
- <pt x="515" y="123" on="1"/>
- <pt x="515" y="1357" on="1"/>
- <pt x="160" y="1357" on="1"/>
- <pt x="160" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="713" y="1357" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="1068" y="123" on="1"/>
- <pt x="1068" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="785" y="0" on="1"/>
- <pt x="892" y="0" on="1"/>
- <pt x="763" y="-81" on="0"/>
- <pt x="763" y="-179" on="1"/>
- <pt x="763" y="-275" on="0"/>
- <pt x="878" y="-275" on="1"/>
- <pt x="932" y="-275" on="0"/>
- <pt x="969" y="-260" on="1"/>
- <pt x="969" y="-341" on="1"/>
- <pt x="907" y="-370" on="0"/>
- <pt x="830" y="-370" on="1"/>
- <pt x="627" y="-370" on="0"/>
- <pt x="627" y="-213" on="1"/>
- <pt x="627" y="-90" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 0 0 17 17 22 48 200 20 19 22 0 0 0 8 7 4 3 6 3 5 10 9 2 1 6
- 3 0 2 4 48 200 13 12 11 0 3 0 6 5 0 14 0 0 15 20 24 48 200 24 24
- 8 2 2 20 19 13 12 11 10 7 6 8 13 8 5 4 1 0 4 13 2 0 0 9 8
- 10 1 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Itilde" xMin="160" yMin="0" xMax="1068" yMax="1839">
- <contour>
- <pt x="160" y="0" on="1"/>
- <pt x="160" y="123" on="1"/>
- <pt x="515" y="123" on="1"/>
- <pt x="515" y="1357" on="1"/>
- <pt x="160" y="1357" on="1"/>
- <pt x="160" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="713" y="1357" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="1068" y="123" on="1"/>
- <pt x="1068" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="281" y="1604" on="1"/>
- <pt x="287" y="1699" on="0"/>
- <pt x="312" y="1749" on="1"/>
- <pt x="357" y="1839" on="0"/>
- <pt x="466" y="1839" on="1"/>
- <pt x="538" y="1839" on="0"/>
- <pt x="601" y="1800" on="1"/>
- <pt x="661" y="1763" on="1"/>
- <pt x="723" y="1725" on="0"/>
- <pt x="757" y="1725" on="1"/>
- <pt x="825" y="1725" on="0"/>
- <pt x="836" y="1839" on="1"/>
- <pt x="947" y="1839" on="1"/>
- <pt x="940" y="1745" on="0"/>
- <pt x="915" y="1695" on="1"/>
- <pt x="869" y="1604" on="0"/>
- <pt x="762" y="1604" on="1"/>
- <pt x="689" y="1604" on="0"/>
- <pt x="626" y="1643" on="1"/>
- <pt x="566" y="1680" on="1"/>
- <pt x="506" y="1717" on="0"/>
- <pt x="470" y="1717" on="1"/>
- <pt x="402" y="1717" on="0"/>
- <pt x="391" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 0 0 33 5 16 21 5 28 48 200 35 24 23 12 4 13 28 16 5 0 0 8 7 4 3
- 6 3 5 10 9 2 1 6 3 0 2 4 48 200 11 0 1 0 6 5 0 14 24 23 11
- 10 7 6 6 13 8 35 12 5 4 1 0 6 13 2 0 0 9 8 10 1 2 1 4 48
- 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="J" xMin="111" yMin="-37" xMax="1143" yMax="1480">
- <contour>
- <pt x="111" y="31" on="1"/>
- <pt x="111" y="444" on="1"/>
- <pt x="234" y="444" on="1"/>
- <pt x="273" y="135" on="1"/>
- <pt x="386" y="86" on="0"/>
- <pt x="467" y="86" on="1"/>
- <pt x="583" y="86" on="0"/>
- <pt x="634" y="141" on="1"/>
- <pt x="686" y="195" on="0"/>
- <pt x="686" y="322" on="1"/>
- <pt x="686" y="1357" on="1"/>
- <pt x="291" y="1357" on="1"/>
- <pt x="291" y="1480" on="1"/>
- <pt x="1143" y="1480" on="1"/>
- <pt x="1143" y="1357" on="1"/>
- <pt x="883" y="1357" on="1"/>
- <pt x="883" y="362" on="1"/>
- <pt x="883" y="148" on="0"/>
- <pt x="791" y="56" on="1"/>
- <pt x="699" y="-37" on="0"/>
- <pt x="487" y="-37" on="1"/>
- <pt x="329" y="-37" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 70 values pushed */
- 0 0 5 5 20 48 200 20 2 1 16 9 3 2 1 0 6 10 2 3 0 0 0 15 14
- 11 10 6 3 12 1 4 48 200 13 12 0 14 12 11 3 2 4 9 0 3 14 13 2 13
- 15 0 0 10 9 10 1 15 1 4 48 200 16 15 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Jcircumflex" xMin="111" yMin="-37" xMax="1143" yMax="1925">
- <contour>
- <pt x="111" y="31" on="1"/>
- <pt x="111" y="444" on="1"/>
- <pt x="234" y="444" on="1"/>
- <pt x="273" y="135" on="1"/>
- <pt x="386" y="86" on="0"/>
- <pt x="467" y="86" on="1"/>
- <pt x="583" y="86" on="0"/>
- <pt x="634" y="141" on="1"/>
- <pt x="686" y="195" on="0"/>
- <pt x="686" y="322" on="1"/>
- <pt x="686" y="1357" on="1"/>
- <pt x="291" y="1357" on="1"/>
- <pt x="291" y="1480" on="1"/>
- <pt x="1143" y="1480" on="1"/>
- <pt x="1143" y="1357" on="1"/>
- <pt x="883" y="1357" on="1"/>
- <pt x="883" y="362" on="1"/>
- <pt x="883" y="148" on="0"/>
- <pt x="791" y="56" on="1"/>
- <pt x="699" y="-37" on="0"/>
- <pt x="487" y="-37" on="1"/>
- <pt x="329" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="351" y="1604" on="1"/>
- <pt x="607" y="1925" on="1"/>
- <pt x="826" y="1925" on="1"/>
- <pt x="1082" y="1604" on="1"/>
- <pt x="959" y="1604" on="1"/>
- <pt x="718" y="1806" on="1"/>
- <pt x="715" y="1806" on="1"/>
- <pt x="474" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 96 values pushed */
- 0 0 5 5 20 48 200 20 2 29 28 27 26 25 22 6 23 12 3 1 16 9 3 2 1
- 0 6 10 2 3 0 0 0 15 14 11 10 6 3 12 1 4 48 200 24 23 1 0 13 12
- 0 14 28 27 24 3 15 9 3 29 23 22 12 11 3 2 7 9 0 3 26 25 14 13 4
- 13 15 0 0 10 9 10 1 15 1 4 48 200 16 15 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="K" xMin="74" yMin="0" xMax="1197" yMax="1480">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="204" y="123" on="1"/>
- <pt x="204" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="506" y="1480" on="1"/>
- <pt x="506" y="1357" on="1"/>
- <pt x="401" y="1357" on="1"/>
- <pt x="401" y="756" on="1"/>
- <pt x="408" y="756" on="1"/>
- <pt x="838" y="1357" on="1"/>
- <pt x="727" y="1357" on="1"/>
- <pt x="727" y="1480" on="1"/>
- <pt x="1083" y="1480" on="1"/>
- <pt x="1083" y="1357" on="1"/>
- <pt x="991" y="1357" on="1"/>
- <pt x="594" y="811" on="1"/>
- <pt x="1123" y="123" on="1"/>
- <pt x="1197" y="123" on="1"/>
- <pt x="1197" y="0" on="1"/>
- <pt x="772" y="0" on="1"/>
- <pt x="772" y="123" on="1"/>
- <pt x="883" y="123" on="1"/>
- <pt x="408" y="740" on="1"/>
- <pt x="401" y="740" on="1"/>
- <pt x="401" y="123" on="1"/>
- <pt x="524" y="123" on="1"/>
- <pt x="524" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 84 values pushed */
- 27 26 25 24 23 22 19 18 17 16 15 12 11 10 9 8 7 4 3 2 1 21 5 0 3
- 28 21 20 0 3 0 14 13 6 5 0 3 14 28 27 24 23 22 21 20 19 18 17 16 15
- 14 13 12 11 10 7 6 19 13 8 5 4 1 0 4 13 2 0 0 26 25 9 8 10 3
- 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Kcommaaccent" xMin="74" yMin="-432" xMax="1197" yMax="1480">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="204" y="123" on="1"/>
- <pt x="204" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="506" y="1480" on="1"/>
- <pt x="506" y="1357" on="1"/>
- <pt x="401" y="1357" on="1"/>
- <pt x="401" y="756" on="1"/>
- <pt x="408" y="756" on="1"/>
- <pt x="838" y="1357" on="1"/>
- <pt x="727" y="1357" on="1"/>
- <pt x="727" y="1480" on="1"/>
- <pt x="1083" y="1480" on="1"/>
- <pt x="1083" y="1357" on="1"/>
- <pt x="991" y="1357" on="1"/>
- <pt x="594" y="811" on="1"/>
- <pt x="1123" y="123" on="1"/>
- <pt x="1197" y="123" on="1"/>
- <pt x="1197" y="0" on="1"/>
- <pt x="772" y="0" on="1"/>
- <pt x="772" y="123" on="1"/>
- <pt x="883" y="123" on="1"/>
- <pt x="408" y="740" on="1"/>
- <pt x="401" y="740" on="1"/>
- <pt x="401" y="123" on="1"/>
- <pt x="524" y="123" on="1"/>
- <pt x="524" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="512" y="-421" on="1"/>
- <pt x="512" y="-336" on="1"/>
- <pt x="569" y="-345" on="0"/>
- <pt x="609" y="-345" on="1"/>
- <pt x="718" y="-345" on="0"/>
- <pt x="718" y="-278" on="1"/>
- <pt x="718" y="-205" on="0"/>
- <pt x="561" y="-188" on="1"/>
- <pt x="561" y="-111" on="1"/>
- <pt x="695" y="-114" on="0"/>
- <pt x="761" y="-143" on="1"/>
- <pt x="854" y="-185" on="0"/>
- <pt x="854" y="-280" on="1"/>
- <pt x="854" y="-432" on="0"/>
- <pt x="636" y="-432" on="1"/>
- <pt x="578" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 111 values pushed */
- 0 0 32 32 43 48 200 27 26 25 24 23 22 19 18 17 16 15 12 11 10 9 8 7 4
- 3 2 1 21 5 0 3 37 36 30 29 4 13 43 0 28 21 20 0 3 0 14 13 6 5
- 0 3 14 0 0 34 20 41 48 200 37 36 30 29 28 27 24 23 22 21 20 19 18 17 16
- 15 14 13 12 11 10 7 6 23 13 41 8 5 4 1 0 4 13 2 0 0 26 25 9 8
- 10 3 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="L" xMin="86" yMin="0" xMax="1151" yMax="1480">
- <contour>
- <pt x="1151" y="0" on="1"/>
- <pt x="86" y="0" on="1"/>
- <pt x="86" y="123" on="1"/>
- <pt x="333" y="123" on="1"/>
- <pt x="333" y="1357" on="1"/>
- <pt x="86" y="1357" on="1"/>
- <pt x="86" y="1480" on="1"/>
- <pt x="765" y="1480" on="1"/>
- <pt x="765" y="1357" on="1"/>
- <pt x="530" y="1357" on="1"/>
- <pt x="530" y="136" on="1"/>
- <pt x="1028" y="136" on="1"/>
- <pt x="1028" y="481" on="1"/>
- <pt x="1151" y="481" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 13 12 2 4 10 3 0 0 9 8 5 4 6 3 6 11 10 20 1 0 3 2 6 1 0
- 3 4 48 200 1 0 1 0 7 6 0 14 8 7 2 11 9 3 6 5 2 1 4 13 3
- 0 0 12 11 6 1 0 10 9 10 1 3 2 4 48 200 13 0 1 4 3 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Lacute" xMin="86" yMin="0" xMax="1151" yMax="1925">
- <contour>
- <pt x="1151" y="0" on="1"/>
- <pt x="86" y="0" on="1"/>
- <pt x="86" y="123" on="1"/>
- <pt x="333" y="123" on="1"/>
- <pt x="333" y="1357" on="1"/>
- <pt x="86" y="1357" on="1"/>
- <pt x="86" y="1480" on="1"/>
- <pt x="765" y="1480" on="1"/>
- <pt x="765" y="1357" on="1"/>
- <pt x="530" y="1357" on="1"/>
- <pt x="530" y="136" on="1"/>
- <pt x="1028" y="136" on="1"/>
- <pt x="1028" y="481" on="1"/>
- <pt x="1151" y="481" on="1"/>
- </contour>
- <contour>
- <pt x="407" y="1604" on="1"/>
- <pt x="623" y="1925" on="1"/>
- <pt x="851" y="1925" on="1"/>
- <pt x="530" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 91 values pushed */
- 17 14 2 15 6 3 13 12 2 4 10 3 0 0 9 8 5 4 6 3 6 11 10 20 1
- 0 3 2 6 1 0 3 4 48 200 16 15 1 1 0 1 2 0 7 6 0 14 16 15 8
- 7 4 11 9 3 14 9 3 2 6 5 2 1 4 13 3 0 0 12 11 6 1 0 17 10
- 9 10 2 3 2 4 48 200 13 0 1 4 3 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Lcaron" xMin="86" yMin="0" xMax="1151" yMax="1480">
- <contour>
- <pt x="1151" y="0" on="1"/>
- <pt x="86" y="0" on="1"/>
- <pt x="86" y="123" on="1"/>
- <pt x="333" y="123" on="1"/>
- <pt x="333" y="1357" on="1"/>
- <pt x="86" y="1357" on="1"/>
- <pt x="86" y="1480" on="1"/>
- <pt x="765" y="1480" on="1"/>
- <pt x="765" y="1357" on="1"/>
- <pt x="530" y="1357" on="1"/>
- <pt x="530" y="136" on="1"/>
- <pt x="1028" y="136" on="1"/>
- <pt x="1028" y="481" on="1"/>
- <pt x="1151" y="481" on="1"/>
- </contour>
- <contour>
- <pt x="937" y="1026" on="1"/>
- <pt x="937" y="1085" on="1"/>
- <pt x="1013" y="1106" on="0"/>
- <pt x="1013" y="1266" on="1"/>
- <pt x="1013" y="1283" on="1"/>
- <pt x="937" y="1283" on="1"/>
- <pt x="937" y="1480" on="1"/>
- <pt x="1134" y="1480" on="1"/>
- <pt x="1134" y="1309" on="1"/>
- <pt x="1133" y="1047" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 99 values pushed */
- 22 19 18 17 15 14 13 12 8 4 10 3 0 0 9 8 5 4 6 3 6 11 10 20 1
- 0 3 2 6 1 0 3 4 48 200 1 0 1 0 21 20 7 6 0 3 14 18 17 2 11
- 14 3 8 7 2 14 9 3 6 5 2 1 4 13 3 0 0 20 19 15 14 10 3 21 12
- 11 6 1 0 10 9 10 1 3 3 4 48 200 22 21 1 13 0 1 4 3 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Lcommaaccent" xMin="86" yMin="-432" xMax="1151" yMax="1480">
- <contour>
- <pt x="1151" y="0" on="1"/>
- <pt x="86" y="0" on="1"/>
- <pt x="86" y="123" on="1"/>
- <pt x="333" y="123" on="1"/>
- <pt x="333" y="1357" on="1"/>
- <pt x="86" y="1357" on="1"/>
- <pt x="86" y="1480" on="1"/>
- <pt x="765" y="1480" on="1"/>
- <pt x="765" y="1357" on="1"/>
- <pt x="530" y="1357" on="1"/>
- <pt x="530" y="136" on="1"/>
- <pt x="1028" y="136" on="1"/>
- <pt x="1028" y="481" on="1"/>
- <pt x="1151" y="481" on="1"/>
- </contour>
- <contour>
- <pt x="518" y="-421" on="1"/>
- <pt x="518" y="-336" on="1"/>
- <pt x="575" y="-345" on="0"/>
- <pt x="615" y="-345" on="1"/>
- <pt x="724" y="-345" on="0"/>
- <pt x="724" y="-278" on="1"/>
- <pt x="724" y="-205" on="0"/>
- <pt x="567" y="-188" on="1"/>
- <pt x="567" y="-111" on="1"/>
- <pt x="701" y="-114" on="0"/>
- <pt x="767" y="-143" on="1"/>
- <pt x="860" y="-185" on="0"/>
- <pt x="860" y="-280" on="1"/>
- <pt x="860" y="-432" on="0"/>
- <pt x="642" y="-432" on="1"/>
- <pt x="584" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 106 values pushed */
- 0 0 17 32 28 48 200 13 12 2 4 10 3 22 21 15 14 4 13 28 0 0 0 9 8
- 5 4 6 3 6 11 10 20 1 0 3 2 6 1 0 3 4 48 200 1 0 1 0 7 6
- 0 14 0 0 19 20 26 48 200 26 26 22 21 8 7 5 11 9 3 15 14 2 9 3 3
- 6 5 2 1 4 13 3 0 0 12 11 6 1 0 10 9 10 1 3 2 4 48 200 13 0
- 1 4 3 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ldot" xMin="86" yMin="0" xMax="1151" yMax="1480">
- <contour>
- <pt x="1151" y="0" on="1"/>
- <pt x="86" y="0" on="1"/>
- <pt x="86" y="123" on="1"/>
- <pt x="333" y="123" on="1"/>
- <pt x="333" y="1357" on="1"/>
- <pt x="86" y="1357" on="1"/>
- <pt x="86" y="1480" on="1"/>
- <pt x="765" y="1480" on="1"/>
- <pt x="765" y="1357" on="1"/>
- <pt x="530" y="1357" on="1"/>
- <pt x="530" y="136" on="1"/>
- <pt x="1028" y="136" on="1"/>
- <pt x="1028" y="481" on="1"/>
- <pt x="1151" y="481" on="1"/>
- </contour>
- <contour>
- <pt x="954" y="740" on="1"/>
- <pt x="954" y="937" on="1"/>
- <pt x="1151" y="937" on="1"/>
- <pt x="1151" y="740" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 90 values pushed */
- 13 12 2 14 10 3 0 0 17 14 10 1 15 9 8 5 4 6 3 6 11 10 20 1 0
- 3 2 6 1 0 4 4 48 200 16 15 1 1 0 1 2 0 7 6 0 14 8 7 2 14
- 9 3 6 5 2 1 4 13 3 0 0 15 14 10 1 0 12 11 6 1 0 10 9 10 1
- 3 3 4 48 200 17 16 13 0 3 4 3 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Lslash" xMin="86" yMin="0" xMax="1151" yMax="1480">
- <contour>
- <pt x="86" y="0" on="1"/>
- <pt x="86" y="123" on="1"/>
- <pt x="333" y="123" on="1"/>
- <pt x="333" y="652" on="1"/>
- <pt x="86" y="528" on="1"/>
- <pt x="86" y="666" on="1"/>
- <pt x="333" y="790" on="1"/>
- <pt x="333" y="1357" on="1"/>
- <pt x="86" y="1357" on="1"/>
- <pt x="86" y="1480" on="1"/>
- <pt x="765" y="1480" on="1"/>
- <pt x="765" y="1357" on="1"/>
- <pt x="530" y="1357" on="1"/>
- <pt x="530" y="888" on="1"/>
- <pt x="826" y="1036" on="1"/>
- <pt x="826" y="899" on="1"/>
- <pt x="530" y="750" on="1"/>
- <pt x="530" y="136" on="1"/>
- <pt x="1028" y="136" on="1"/>
- <pt x="1028" y="481" on="1"/>
- <pt x="1151" y="481" on="1"/>
- <pt x="1151" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 89 values pushed */
- 20 19 16 15 14 13 6 5 4 3 10 7 17 3 0 0 12 11 8 7 6 3 9 18 17
- 20 1 0 2 1 6 1 0 3 4 48 200 21 0 1 0 10 9 0 14 11 10 2 14 12
- 3 0 0 19 18 6 1 20 17 16 13 12 10 3 2 2 4 48 200 21 20 1 15 14 1
- 7 6 3 2 3 9 8 5 4 1 0 5 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="M" xMin="25" yMin="0" xMax="1204" yMax="1480">
- <contour>
- <pt x="25" y="0" on="1"/>
- <pt x="25" y="123" on="1"/>
- <pt x="111" y="123" on="1"/>
- <pt x="111" y="1357" on="1"/>
- <pt x="25" y="1357" on="1"/>
- <pt x="25" y="1480" on="1"/>
- <pt x="310" y="1480" on="1"/>
- <pt x="616" y="462" on="1"/>
- <pt x="618" y="462" on="1"/>
- <pt x="935" y="1480" on="1"/>
- <pt x="1204" y="1480" on="1"/>
- <pt x="1204" y="1357" on="1"/>
- <pt x="1118" y="1357" on="1"/>
- <pt x="1118" y="123" on="1"/>
- <pt x="1204" y="123" on="1"/>
- <pt x="1204" y="0" on="1"/>
- <pt x="884" y="0" on="1"/>
- <pt x="884" y="123" on="1"/>
- <pt x="956" y="123" on="1"/>
- <pt x="956" y="1128" on="1"/>
- <pt x="954" y="1128" on="1"/>
- <pt x="663" y="194" on="1"/>
- <pt x="528" y="194" on="1"/>
- <pt x="237" y="1166" on="1"/>
- <pt x="235" y="1166" on="1"/>
- <pt x="235" y="123" on="1"/>
- <pt x="321" y="123" on="1"/>
- <pt x="321" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 91 values pushed */
- 26 25 24 23 22 21 20 19 18 17 14 13 12 11 8 7 4 3 2 1 20 5 0 3 27
- 16 15 0 3 0 10 9 6 5 0 3 14 27 26 23 22 21 20 17 16 9 8 7 6 12
- 18 24 3 15 14 11 10 4 13 12 5 4 1 0 4 13 2 0 0 19 18 34 1 12 25
- 24 6 1 2 2 4 48 200 13 12 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="N" xMin="74" yMin="0" xMax="1155" yMax="1480">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="185" y="123" on="1"/>
- <pt x="185" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="308" y="1480" on="1"/>
- <pt x="918" y="405" on="1"/>
- <pt x="920" y="405" on="1"/>
- <pt x="920" y="1357" on="1"/>
- <pt x="810" y="1357" on="1"/>
- <pt x="810" y="1480" on="1"/>
- <pt x="1155" y="1480" on="1"/>
- <pt x="1155" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="0" on="1"/>
- <pt x="920" y="0" on="1"/>
- <pt x="311" y="1076" on="1"/>
- <pt x="308" y="1076" on="1"/>
- <pt x="308" y="123" on="1"/>
- <pt x="419" y="123" on="1"/>
- <pt x="419" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 79 values pushed */
- 20 19 18 17 14 13 10 9 8 7 4 3 2 1 14 5 0 3 21 16 15 0 3 0 12
- 11 6 5 0 3 14 21 20 17 11 10 7 6 8 6 3 13 12 2 13 14 5 4 1 0
- 4 13 2 0 0 16 9 8 6 2 14 19 18 6 6 2 2 2 4 48 200 15 14 1 3
- 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Nacute" xMin="74" yMin="0" xMax="1155" yMax="1925">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="185" y="123" on="1"/>
- <pt x="185" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="308" y="1480" on="1"/>
- <pt x="918" y="405" on="1"/>
- <pt x="920" y="405" on="1"/>
- <pt x="920" y="1357" on="1"/>
- <pt x="810" y="1357" on="1"/>
- <pt x="810" y="1480" on="1"/>
- <pt x="1155" y="1480" on="1"/>
- <pt x="1155" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="0" on="1"/>
- <pt x="920" y="0" on="1"/>
- <pt x="311" y="1076" on="1"/>
- <pt x="308" y="1076" on="1"/>
- <pt x="308" y="123" on="1"/>
- <pt x="419" y="123" on="1"/>
- <pt x="419" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="493" y="1604" on="1"/>
- <pt x="709" y="1925" on="1"/>
- <pt x="937" y="1925" on="1"/>
- <pt x="616" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 96 values pushed */
- 25 22 2 23 5 3 20 19 18 17 14 13 10 9 8 7 4 3 2 1 14 5 0 3 24
- 23 1 21 16 15 0 3 2 0 12 11 6 5 0 3 14 24 14 8 2 25 23 22 21 20
- 17 11 10 7 9 8 6 3 13 12 2 13 14 5 4 1 0 4 13 2 0 0 16 9 8
- 6 2 14 19 18 6 6 2 2 2 4 48 200 15 14 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ncaron" xMin="74" yMin="0" xMax="1155" yMax="1925">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="185" y="123" on="1"/>
- <pt x="185" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="308" y="1480" on="1"/>
- <pt x="918" y="405" on="1"/>
- <pt x="920" y="405" on="1"/>
- <pt x="920" y="1357" on="1"/>
- <pt x="810" y="1357" on="1"/>
- <pt x="810" y="1480" on="1"/>
- <pt x="1155" y="1480" on="1"/>
- <pt x="1155" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="0" on="1"/>
- <pt x="920" y="0" on="1"/>
- <pt x="311" y="1076" on="1"/>
- <pt x="308" y="1076" on="1"/>
- <pt x="308" y="123" on="1"/>
- <pt x="419" y="123" on="1"/>
- <pt x="419" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="981" y="1925" on="1"/>
- <pt x="724" y="1604" on="1"/>
- <pt x="506" y="1604" on="1"/>
- <pt x="249" y="1925" on="1"/>
- <pt x="373" y="1925" on="1"/>
- <pt x="614" y="1723" on="1"/>
- <pt x="616" y="1723" on="1"/>
- <pt x="858" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 106 values pushed */
- 20 19 18 17 14 13 10 9 8 7 4 3 2 1 14 5 0 3 29 28 27 26 25 22 6
- 13 23 24 23 1 21 16 15 0 3 2 0 12 11 6 5 0 3 14 22 14 8 2 29 28
- 27 26 24 23 21 20 17 11 10 7 12 8 6 3 25 6 2 2 13 12 2 13 14 5 4
- 1 0 4 13 2 0 0 16 9 8 6 2 14 19 18 6 6 2 2 2 4 48 200 15 14
- 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ncommaaccent" xMin="74" yMin="-432" xMax="1155" yMax="1480">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="185" y="123" on="1"/>
- <pt x="185" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="308" y="1480" on="1"/>
- <pt x="918" y="405" on="1"/>
- <pt x="920" y="405" on="1"/>
- <pt x="920" y="1357" on="1"/>
- <pt x="810" y="1357" on="1"/>
- <pt x="810" y="1480" on="1"/>
- <pt x="1155" y="1480" on="1"/>
- <pt x="1155" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="0" on="1"/>
- <pt x="920" y="0" on="1"/>
- <pt x="311" y="1076" on="1"/>
- <pt x="308" y="1076" on="1"/>
- <pt x="308" y="123" on="1"/>
- <pt x="419" y="123" on="1"/>
- <pt x="419" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="481" y="-421" on="1"/>
- <pt x="481" y="-336" on="1"/>
- <pt x="538" y="-345" on="0"/>
- <pt x="578" y="-345" on="1"/>
- <pt x="687" y="-345" on="0"/>
- <pt x="687" y="-278" on="1"/>
- <pt x="687" y="-205" on="0"/>
- <pt x="530" y="-188" on="1"/>
- <pt x="530" y="-111" on="1"/>
- <pt x="664" y="-114" on="0"/>
- <pt x="730" y="-143" on="1"/>
- <pt x="823" y="-185" on="0"/>
- <pt x="823" y="-280" on="1"/>
- <pt x="823" y="-432" on="0"/>
- <pt x="605" y="-432" on="1"/>
- <pt x="547" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 107 values pushed */
- 0 0 25 32 36 48 200 20 19 18 17 14 13 10 9 8 7 4 3 2 1 14 5 0 3
- 30 29 23 22 4 13 36 0 21 16 15 0 3 0 12 11 6 5 0 3 14 0 0 27 20
- 34 48 200 34 34 30 29 23 22 21 20 17 11 10 7 11 8 6 3 13 12 2 13 14 5
- 4 1 0 4 13 2 0 0 16 9 8 6 2 14 19 18 6 6 2 2 2 4 48 200 15
- 14 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ntilde" xMin="74" yMin="0" xMax="1155" yMax="1839">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="185" y="123" on="1"/>
- <pt x="185" y="1357" on="1"/>
- <pt x="74" y="1357" on="1"/>
- <pt x="74" y="1480" on="1"/>
- <pt x="308" y="1480" on="1"/>
- <pt x="918" y="405" on="1"/>
- <pt x="920" y="405" on="1"/>
- <pt x="920" y="1357" on="1"/>
- <pt x="810" y="1357" on="1"/>
- <pt x="810" y="1480" on="1"/>
- <pt x="1155" y="1480" on="1"/>
- <pt x="1155" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="0" on="1"/>
- <pt x="920" y="0" on="1"/>
- <pt x="311" y="1076" on="1"/>
- <pt x="308" y="1076" on="1"/>
- <pt x="308" y="123" on="1"/>
- <pt x="419" y="123" on="1"/>
- <pt x="419" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="271" y="1604" on="1"/>
- <pt x="277" y="1699" on="0"/>
- <pt x="302" y="1749" on="1"/>
- <pt x="347" y="1839" on="0"/>
- <pt x="456" y="1839" on="1"/>
- <pt x="528" y="1839" on="0"/>
- <pt x="591" y="1800" on="1"/>
- <pt x="651" y="1763" on="1"/>
- <pt x="713" y="1725" on="0"/>
- <pt x="747" y="1725" on="1"/>
- <pt x="816" y="1725" on="0"/>
- <pt x="826" y="1839" on="1"/>
- <pt x="937" y="1839" on="1"/>
- <pt x="930" y="1745" on="0"/>
- <pt x="905" y="1695" on="1"/>
- <pt x="859" y="1604" on="0"/>
- <pt x="752" y="1604" on="1"/>
- <pt x="679" y="1604" on="0"/>
- <pt x="616" y="1643" on="1"/>
- <pt x="556" y="1680" on="1"/>
- <pt x="496" y="1717" on="0"/>
- <pt x="460" y="1717" on="1"/>
- <pt x="392" y="1717" on="0"/>
- <pt x="381" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 108 values pushed */
- 0 0 43 5 26 31 5 38 48 200 20 19 18 17 14 13 10 9 8 7 4 3 2 1 14
- 5 0 3 45 34 33 22 4 13 38 26 5 21 16 15 0 3 0 12 11 6 5 0 3 14
- 34 14 8 2 45 33 21 20 17 11 10 7 8 8 6 3 22 6 2 2 13 12 2 13 14
- 5 4 1 0 4 13 2 0 0 16 9 8 6 2 14 19 18 6 6 2 2 2 4 48 200
- 15 14 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="O" xMin="62" yMin="-37" xMax="1168" yMax="1517">
- <contour>
- <pt x="615" y="1517" on="1"/>
- <pt x="858" y="1517" on="0"/>
- <pt x="1013" y="1301" on="1"/>
- <pt x="1168" y="1085" on="0"/>
- <pt x="1168" y="742" on="1"/>
- <pt x="1168" y="394" on="0"/>
- <pt x="1013" y="179" on="1"/>
- <pt x="858" y="-37" on="0"/>
- <pt x="608" y="-37" on="1"/>
- <pt x="394" y="-37" on="0"/>
- <pt x="249" y="138" on="1"/>
- <pt x="62" y="363" on="0"/>
- <pt x="62" y="741" on="1"/>
- <pt x="62" y="1084" on="0"/>
- <pt x="216" y="1300" on="1"/>
- <pt x="371" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1394" on="1"/>
- <pt x="454" y="1394" on="0"/>
- <pt x="365" y="1222" on="1"/>
- <pt x="275" y="1049" on="0"/>
- <pt x="275" y="740" on="1"/>
- <pt x="275" y="434" on="0"/>
- <pt x="364" y="260" on="1"/>
- <pt x="452" y="86" on="0"/>
- <pt x="614" y="86" on="1"/>
- <pt x="776" y="86" on="0"/>
- <pt x="860" y="236" on="1"/>
- <pt x="955" y="405" on="0"/>
- <pt x="955" y="738" on="1"/>
- <pt x="955" y="1051" on="0"/>
- <pt x="865" y="1222" on="1"/>
- <pt x="774" y="1394" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 27 values pushed */
- 0 0 24 5 8 16 5 0 48 200 8 2 0 0 14 0 0 28 39 4 20 39 12 48 200
- 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="OE" xMin="37" yMin="-37" xMax="1167" yMax="1518">
- <contour>
- <pt x="609" y="0" on="1"/>
- <pt x="609" y="74" on="1"/>
- <pt x="549" y="-37" on="0"/>
- <pt x="436" y="-37" on="1"/>
- <pt x="252" y="-37" on="0"/>
- <pt x="145" y="170" on="1"/>
- <pt x="37" y="377" on="0"/>
- <pt x="37" y="740" on="1"/>
- <pt x="37" y="1101" on="0"/>
- <pt x="144" y="1310" on="1"/>
- <pt x="251" y="1518" on="0"/>
- <pt x="435" y="1518" on="1"/>
- <pt x="552" y="1518" on="0"/>
- <pt x="609" y="1406" on="1"/>
- <pt x="609" y="1480" on="1"/>
- <pt x="1142" y="1480" on="1"/>
- <pt x="1142" y="1166" on="1"/>
- <pt x="1019" y="1166" on="1"/>
- <pt x="1019" y="1357" on="1"/>
- <pt x="800" y="1357" on="1"/>
- <pt x="800" y="827" on="1"/>
- <pt x="945" y="827" on="1"/>
- <pt x="945" y="950" on="1"/>
- <pt x="1056" y="950" on="1"/>
- <pt x="1056" y="580" on="1"/>
- <pt x="945" y="580" on="1"/>
- <pt x="945" y="703" on="1"/>
- <pt x="800" y="703" on="1"/>
- <pt x="800" y="136" on="1"/>
- <pt x="1044" y="136" on="1"/>
- <pt x="1044" y="370" on="1"/>
- <pt x="1167" y="370" on="1"/>
- <pt x="1167" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="609" y="364" on="1"/>
- <pt x="609" y="1117" on="1"/>
- <pt x="609" y="1395" on="0"/>
- <pt x="460" y="1395" on="1"/>
- <pt x="237" y="1395" on="0"/>
- <pt x="237" y="746" on="1"/>
- <pt x="237" y="396" on="0"/>
- <pt x="289" y="240" on="1"/>
- <pt x="340" y="86" on="0"/>
- <pt x="457" y="86" on="1"/>
- <pt x="609" y="86" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 131 values pushed */
- 0 0 42 5 3 36 5 11 48 200 11 0 3 2 13 14 18 2 34 23 22 17 16 5 18
- 20 3 33 31 30 25 24 5 26 28 3 1 28 0 2 0 0 19 18 6 1 14 27 26 6
- 1 20 29 28 20 1 0 3 4 48 200 21 20 1 32 0 1 2 0 15 14 0 14 0 0
- 38 24 7 48 200 26 25 22 21 4 17 19 3 7 0 0 0 30 29 6 1 31 18 17 6
- 1 15 34 33 14 13 1 0 19 5 19 3 4 48 200 32 31 1 16 15 1 24 23 1 28
- 27 20 19 3 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Oacute" xMin="62" yMin="-37" xMax="1168" yMax="1925">
- <contour>
- <pt x="615" y="1517" on="1"/>
- <pt x="858" y="1517" on="0"/>
- <pt x="1013" y="1301" on="1"/>
- <pt x="1168" y="1085" on="0"/>
- <pt x="1168" y="742" on="1"/>
- <pt x="1168" y="394" on="0"/>
- <pt x="1013" y="179" on="1"/>
- <pt x="858" y="-37" on="0"/>
- <pt x="608" y="-37" on="1"/>
- <pt x="394" y="-37" on="0"/>
- <pt x="249" y="138" on="1"/>
- <pt x="62" y="363" on="0"/>
- <pt x="62" y="741" on="1"/>
- <pt x="62" y="1084" on="0"/>
- <pt x="216" y="1300" on="1"/>
- <pt x="371" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1394" on="1"/>
- <pt x="454" y="1394" on="0"/>
- <pt x="365" y="1222" on="1"/>
- <pt x="275" y="1049" on="0"/>
- <pt x="275" y="740" on="1"/>
- <pt x="275" y="434" on="0"/>
- <pt x="364" y="260" on="1"/>
- <pt x="452" y="86" on="0"/>
- <pt x="614" y="86" on="1"/>
- <pt x="776" y="86" on="0"/>
- <pt x="860" y="236" on="1"/>
- <pt x="955" y="405" on="0"/>
- <pt x="955" y="738" on="1"/>
- <pt x="955" y="1051" on="0"/>
- <pt x="865" y="1222" on="1"/>
- <pt x="774" y="1394" on="0"/>
- </contour>
- <contour>
- <pt x="491" y="1604" on="1"/>
- <pt x="707" y="1925" on="1"/>
- <pt x="935" y="1925" on="1"/>
- <pt x="614" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 43 values pushed */
- 0 0 24 5 8 16 5 0 48 200 8 2 0 0 1 35 32 2 33 0 3 0 34 33 1
- 0 14 0 0 28 39 4 20 39 12 48 200 35 34 33 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Obreve" xMin="62" yMin="-37" xMax="1168" yMax="1925">
- <contour>
- <pt x="615" y="1517" on="1"/>
- <pt x="858" y="1517" on="0"/>
- <pt x="1013" y="1301" on="1"/>
- <pt x="1168" y="1085" on="0"/>
- <pt x="1168" y="742" on="1"/>
- <pt x="1168" y="394" on="0"/>
- <pt x="1013" y="179" on="1"/>
- <pt x="858" y="-37" on="0"/>
- <pt x="608" y="-37" on="1"/>
- <pt x="394" y="-37" on="0"/>
- <pt x="249" y="138" on="1"/>
- <pt x="62" y="363" on="0"/>
- <pt x="62" y="741" on="1"/>
- <pt x="62" y="1084" on="0"/>
- <pt x="216" y="1300" on="1"/>
- <pt x="371" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1394" on="1"/>
- <pt x="454" y="1394" on="0"/>
- <pt x="365" y="1222" on="1"/>
- <pt x="275" y="1049" on="0"/>
- <pt x="275" y="740" on="1"/>
- <pt x="275" y="434" on="0"/>
- <pt x="364" y="260" on="1"/>
- <pt x="452" y="86" on="0"/>
- <pt x="614" y="86" on="1"/>
- <pt x="776" y="86" on="0"/>
- <pt x="860" y="236" on="1"/>
- <pt x="955" y="405" on="0"/>
- <pt x="955" y="738" on="1"/>
- <pt x="955" y="1051" on="0"/>
- <pt x="865" y="1222" on="1"/>
- <pt x="774" y="1394" on="0"/>
- </contour>
- <contour>
- <pt x="269" y="1925" on="1"/>
- <pt x="392" y="1925" on="1"/>
- <pt x="440" y="1777" on="0"/>
- <pt x="614" y="1777" on="1"/>
- <pt x="789" y="1777" on="0"/>
- <pt x="837" y="1925" on="1"/>
- <pt x="960" y="1925" on="1"/>
- <pt x="937" y="1836" on="0"/>
- <pt x="911" y="1790" on="1"/>
- <pt x="820" y="1635" on="0"/>
- <pt x="618" y="1635" on="1"/>
- <pt x="466" y="1635" on="0"/>
- <pt x="377" y="1716" on="1"/>
- <pt x="322" y="1765" on="0"/>
- <pt x="294" y="1837" on="1"/>
- <pt x="283" y="1866" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 0 0 35 14 42 24 5 8 16 5 0 48 200 8 2 0 0 1 38 37 33 32 4 13 42
- 0 0 14 0 0 28 36 4 20 36 12 48 200 38 37 33 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ocircumflex" xMin="62" yMin="-37" xMax="1168" yMax="1925">
- <contour>
- <pt x="615" y="1517" on="1"/>
- <pt x="858" y="1517" on="0"/>
- <pt x="1013" y="1301" on="1"/>
- <pt x="1168" y="1085" on="0"/>
- <pt x="1168" y="742" on="1"/>
- <pt x="1168" y="394" on="0"/>
- <pt x="1013" y="179" on="1"/>
- <pt x="858" y="-37" on="0"/>
- <pt x="608" y="-37" on="1"/>
- <pt x="394" y="-37" on="0"/>
- <pt x="249" y="138" on="1"/>
- <pt x="62" y="363" on="0"/>
- <pt x="62" y="741" on="1"/>
- <pt x="62" y="1084" on="0"/>
- <pt x="216" y="1300" on="1"/>
- <pt x="371" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1394" on="1"/>
- <pt x="454" y="1394" on="0"/>
- <pt x="365" y="1222" on="1"/>
- <pt x="275" y="1049" on="0"/>
- <pt x="275" y="740" on="1"/>
- <pt x="275" y="434" on="0"/>
- <pt x="364" y="260" on="1"/>
- <pt x="452" y="86" on="0"/>
- <pt x="614" y="86" on="1"/>
- <pt x="776" y="86" on="0"/>
- <pt x="860" y="236" on="1"/>
- <pt x="955" y="405" on="0"/>
- <pt x="955" y="738" on="1"/>
- <pt x="955" y="1051" on="0"/>
- <pt x="865" y="1222" on="1"/>
- <pt x="774" y="1394" on="0"/>
- </contour>
- <contour>
- <pt x="249" y="1604" on="1"/>
- <pt x="505" y="1925" on="1"/>
- <pt x="724" y="1925" on="1"/>
- <pt x="980" y="1604" on="1"/>
- <pt x="857" y="1604" on="1"/>
- <pt x="616" y="1806" on="1"/>
- <pt x="613" y="1806" on="1"/>
- <pt x="372" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 51 values pushed */
- 0 0 24 5 8 16 5 0 48 200 8 2 0 0 1 39 38 37 36 35 32 6 33 0 3
- 0 34 33 1 0 14 0 0 28 39 4 20 39 12 48 200 39 38 37 36 35 34 33 32 12
- 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Odieresis" xMin="62" yMin="-37" xMax="1168" yMax="1801">
- <contour>
- <pt x="615" y="1517" on="1"/>
- <pt x="858" y="1517" on="0"/>
- <pt x="1013" y="1301" on="1"/>
- <pt x="1168" y="1085" on="0"/>
- <pt x="1168" y="742" on="1"/>
- <pt x="1168" y="394" on="0"/>
- <pt x="1013" y="179" on="1"/>
- <pt x="858" y="-37" on="0"/>
- <pt x="608" y="-37" on="1"/>
- <pt x="394" y="-37" on="0"/>
- <pt x="249" y="138" on="1"/>
- <pt x="62" y="363" on="0"/>
- <pt x="62" y="741" on="1"/>
- <pt x="62" y="1084" on="0"/>
- <pt x="216" y="1300" on="1"/>
- <pt x="371" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1394" on="1"/>
- <pt x="454" y="1394" on="0"/>
- <pt x="365" y="1222" on="1"/>
- <pt x="275" y="1049" on="0"/>
- <pt x="275" y="740" on="1"/>
- <pt x="275" y="434" on="0"/>
- <pt x="364" y="260" on="1"/>
- <pt x="452" y="86" on="0"/>
- <pt x="614" y="86" on="1"/>
- <pt x="776" y="86" on="0"/>
- <pt x="860" y="236" on="1"/>
- <pt x="955" y="405" on="0"/>
- <pt x="955" y="738" on="1"/>
- <pt x="955" y="1051" on="0"/>
- <pt x="865" y="1222" on="1"/>
- <pt x="774" y="1394" on="0"/>
- </contour>
- <contour>
- <pt x="282" y="1604" on="1"/>
- <pt x="282" y="1801" on="1"/>
- <pt x="479" y="1801" on="1"/>
- <pt x="479" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="751" y="1604" on="1"/>
- <pt x="751" y="1801" on="1"/>
- <pt x="948" y="1801" on="1"/>
- <pt x="948" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 0 0 24 5 8 16 5 0 48 200 8 2 0 0 0 0 39 36 35 32 10 3 33 1 4
- 48 200 38 37 34 33 3 0 14 0 0 28 39 4 20 39 12 48 200 4 38 12 32 0 0
- 37 36 10 1 38 35 34 10 1 32 2 4 48 200 39 38 1 33 32 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ograve" xMin="62" yMin="-37" xMax="1168" yMax="1925">
- <contour>
- <pt x="615" y="1517" on="1"/>
- <pt x="858" y="1517" on="0"/>
- <pt x="1013" y="1301" on="1"/>
- <pt x="1168" y="1085" on="0"/>
- <pt x="1168" y="742" on="1"/>
- <pt x="1168" y="394" on="0"/>
- <pt x="1013" y="179" on="1"/>
- <pt x="858" y="-37" on="0"/>
- <pt x="608" y="-37" on="1"/>
- <pt x="394" y="-37" on="0"/>
- <pt x="249" y="138" on="1"/>
- <pt x="62" y="363" on="0"/>
- <pt x="62" y="741" on="1"/>
- <pt x="62" y="1084" on="0"/>
- <pt x="216" y="1300" on="1"/>
- <pt x="371" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1394" on="1"/>
- <pt x="454" y="1394" on="0"/>
- <pt x="365" y="1222" on="1"/>
- <pt x="275" y="1049" on="0"/>
- <pt x="275" y="740" on="1"/>
- <pt x="275" y="434" on="0"/>
- <pt x="364" y="260" on="1"/>
- <pt x="452" y="86" on="0"/>
- <pt x="614" y="86" on="1"/>
- <pt x="776" y="86" on="0"/>
- <pt x="860" y="236" on="1"/>
- <pt x="955" y="405" on="0"/>
- <pt x="955" y="738" on="1"/>
- <pt x="955" y="1051" on="0"/>
- <pt x="865" y="1222" on="1"/>
- <pt x="774" y="1394" on="0"/>
- </contour>
- <contour>
- <pt x="738" y="1604" on="1"/>
- <pt x="615" y="1604" on="1"/>
- <pt x="294" y="1925" on="1"/>
- <pt x="522" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 43 values pushed */
- 0 0 24 5 8 16 5 0 48 200 8 2 0 0 1 33 32 2 34 0 3 0 35 34 1
- 0 14 0 0 28 39 4 20 39 12 48 200 35 34 33 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ohungarumlaut" xMin="62" yMin="-37" xMax="1168" yMax="1925">
- <contour>
- <pt x="615" y="1517" on="1"/>
- <pt x="858" y="1517" on="0"/>
- <pt x="1013" y="1301" on="1"/>
- <pt x="1168" y="1085" on="0"/>
- <pt x="1168" y="742" on="1"/>
- <pt x="1168" y="394" on="0"/>
- <pt x="1013" y="179" on="1"/>
- <pt x="858" y="-37" on="0"/>
- <pt x="608" y="-37" on="1"/>
- <pt x="394" y="-37" on="0"/>
- <pt x="249" y="138" on="1"/>
- <pt x="62" y="363" on="0"/>
- <pt x="62" y="741" on="1"/>
- <pt x="62" y="1084" on="0"/>
- <pt x="216" y="1300" on="1"/>
- <pt x="371" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1394" on="1"/>
- <pt x="454" y="1394" on="0"/>
- <pt x="365" y="1222" on="1"/>
- <pt x="275" y="1049" on="0"/>
- <pt x="275" y="740" on="1"/>
- <pt x="275" y="434" on="0"/>
- <pt x="364" y="260" on="1"/>
- <pt x="452" y="86" on="0"/>
- <pt x="614" y="86" on="1"/>
- <pt x="776" y="86" on="0"/>
- <pt x="860" y="236" on="1"/>
- <pt x="955" y="405" on="0"/>
- <pt x="955" y="738" on="1"/>
- <pt x="955" y="1051" on="0"/>
- <pt x="865" y="1222" on="1"/>
- <pt x="774" y="1394" on="0"/>
- </contour>
- <contour>
- <pt x="313" y="1604" on="1"/>
- <pt x="553" y="1925" on="1"/>
- <pt x="745" y="1925" on="1"/>
- <pt x="424" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="664" y="1604" on="1"/>
- <pt x="905" y="1925" on="1"/>
- <pt x="1096" y="1925" on="1"/>
- <pt x="775" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 51 values pushed */
- 0 0 24 5 8 16 5 0 48 200 8 2 0 0 1 39 36 35 32 4 33 0 3 0 38
- 37 34 33 3 0 14 0 0 28 39 4 20 39 12 48 200 39 38 37 36 35 34 33 32 12
- 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Omacron" xMin="62" yMin="-37" xMax="1168" yMax="1728">
- <contour>
- <pt x="615" y="1517" on="1"/>
- <pt x="858" y="1517" on="0"/>
- <pt x="1013" y="1301" on="1"/>
- <pt x="1168" y="1085" on="0"/>
- <pt x="1168" y="742" on="1"/>
- <pt x="1168" y="394" on="0"/>
- <pt x="1013" y="179" on="1"/>
- <pt x="858" y="-37" on="0"/>
- <pt x="608" y="-37" on="1"/>
- <pt x="394" y="-37" on="0"/>
- <pt x="249" y="138" on="1"/>
- <pt x="62" y="363" on="0"/>
- <pt x="62" y="741" on="1"/>
- <pt x="62" y="1084" on="0"/>
- <pt x="216" y="1300" on="1"/>
- <pt x="371" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1394" on="1"/>
- <pt x="454" y="1394" on="0"/>
- <pt x="365" y="1222" on="1"/>
- <pt x="275" y="1049" on="0"/>
- <pt x="275" y="740" on="1"/>
- <pt x="275" y="434" on="0"/>
- <pt x="364" y="260" on="1"/>
- <pt x="452" y="86" on="0"/>
- <pt x="614" y="86" on="1"/>
- <pt x="776" y="86" on="0"/>
- <pt x="860" y="236" on="1"/>
- <pt x="955" y="405" on="0"/>
- <pt x="955" y="738" on="1"/>
- <pt x="955" y="1051" on="0"/>
- <pt x="865" y="1222" on="1"/>
- <pt x="774" y="1394" on="0"/>
- </contour>
- <contour>
- <pt x="269" y="1604" on="1"/>
- <pt x="269" y="1728" on="1"/>
- <pt x="960" y="1728" on="1"/>
- <pt x="960" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 46 values pushed */
- 0 0 24 5 8 16 5 0 48 200 8 2 0 0 0 0 35 32 6 1 33 1 4 48 200
- 34 33 1 0 14 0 0 28 39 4 20 39 12 48 200 35 34 33 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Oslash" xMin="62" yMin="-37" xMax="1168" yMax="1517">
- <contour>
- <pt x="321" y="371" on="1"/>
- <pt x="865" y="1225" on="1"/>
- <pt x="774" y="1394" on="0"/>
- <pt x="616" y="1394" on="1"/>
- <pt x="453" y="1394" on="0"/>
- <pt x="364" y="1222" on="1"/>
- <pt x="275" y="1049" on="0"/>
- <pt x="275" y="742" on="1"/>
- <pt x="275" y="545" on="0"/>
- </contour>
- <contour>
- <pt x="364" y="254" on="1"/>
- <pt x="457" y="86" on="0"/>
- <pt x="613" y="86" on="1"/>
- <pt x="776" y="86" on="0"/>
- <pt x="865" y="258" on="1"/>
- <pt x="955" y="431" on="0"/>
- <pt x="955" y="738" on="1"/>
- <pt x="955" y="937" on="0"/>
- <pt x="908" y="1110" on="1"/>
- </contour>
- <contour>
- <pt x="62" y="-37" on="1"/>
- <pt x="206" y="190" on="1"/>
- <pt x="62" y="432" on="0"/>
- <pt x="62" y="739" on="1"/>
- <pt x="62" y="1083" on="0"/>
- <pt x="216" y="1300" on="1"/>
- <pt x="370" y="1517" on="0"/>
- <pt x="613" y="1517" on="1"/>
- <pt x="799" y="1517" on="0"/>
- <pt x="958" y="1371" on="1"/>
- <pt x="1051" y="1517" on="1"/>
- <pt x="1168" y="1517" on="1"/>
- <pt x="1023" y="1290" on="1"/>
- <pt x="1168" y="1048" on="0"/>
- <pt x="1168" y="740" on="1"/>
- <pt x="1168" y="398" on="0"/>
- <pt x="1014" y="181" on="1"/>
- <pt x="860" y="-37" on="0"/>
- <pt x="616" y="-37" on="1"/>
- <pt x="431" y="-37" on="0"/>
- <pt x="272" y="110" on="1"/>
- <pt x="179" y="-37" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 61 values pushed */
- 36 2 25 0 3 1 1 30 27 17 3 1 5 0 1 3 0 0 11 1 1 38 19 11 9
- 0 5 1 2 3 0 0 1 29 28 2 13 0 0 1 39 18 2 0 14 39 38 32 30 29
- 28 27 21 19 18 17 15 9 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Otilde" xMin="62" yMin="-37" xMax="1168" yMax="1839">
- <contour>
- <pt x="615" y="1517" on="1"/>
- <pt x="858" y="1517" on="0"/>
- <pt x="1013" y="1301" on="1"/>
- <pt x="1168" y="1085" on="0"/>
- <pt x="1168" y="742" on="1"/>
- <pt x="1168" y="394" on="0"/>
- <pt x="1013" y="179" on="1"/>
- <pt x="858" y="-37" on="0"/>
- <pt x="608" y="-37" on="1"/>
- <pt x="394" y="-37" on="0"/>
- <pt x="249" y="138" on="1"/>
- <pt x="62" y="363" on="0"/>
- <pt x="62" y="741" on="1"/>
- <pt x="62" y="1084" on="0"/>
- <pt x="216" y="1300" on="1"/>
- <pt x="371" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1394" on="1"/>
- <pt x="454" y="1394" on="0"/>
- <pt x="365" y="1222" on="1"/>
- <pt x="275" y="1049" on="0"/>
- <pt x="275" y="740" on="1"/>
- <pt x="275" y="434" on="0"/>
- <pt x="364" y="260" on="1"/>
- <pt x="452" y="86" on="0"/>
- <pt x="614" y="86" on="1"/>
- <pt x="776" y="86" on="0"/>
- <pt x="860" y="236" on="1"/>
- <pt x="955" y="405" on="0"/>
- <pt x="955" y="738" on="1"/>
- <pt x="955" y="1051" on="0"/>
- <pt x="865" y="1222" on="1"/>
- <pt x="774" y="1394" on="0"/>
- </contour>
- <contour>
- <pt x="282" y="1604" on="1"/>
- <pt x="288" y="1699" on="0"/>
- <pt x="313" y="1749" on="1"/>
- <pt x="358" y="1839" on="0"/>
- <pt x="467" y="1839" on="1"/>
- <pt x="539" y="1839" on="0"/>
- <pt x="602" y="1800" on="1"/>
- <pt x="662" y="1763" on="1"/>
- <pt x="724" y="1725" on="0"/>
- <pt x="758" y="1725" on="1"/>
- <pt x="826" y="1725" on="0"/>
- <pt x="837" y="1839" on="1"/>
- <pt x="948" y="1839" on="1"/>
- <pt x="941" y="1745" on="0"/>
- <pt x="916" y="1695" on="1"/>
- <pt x="870" y="1604" on="0"/>
- <pt x="763" y="1604" on="1"/>
- <pt x="690" y="1604" on="0"/>
- <pt x="627" y="1643" on="1"/>
- <pt x="567" y="1680" on="1"/>
- <pt x="507" y="1717" on="0"/>
- <pt x="471" y="1717" on="1"/>
- <pt x="403" y="1717" on="0"/>
- <pt x="392" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 48 values pushed */
- 0 0 53 5 36 41 5 48 24 5 8 16 5 0 48 200 8 2 0 0 1 55 44 43 32
- 4 13 48 36 0 0 14 0 0 28 39 4 20 39 12 48 200 55 44 43 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="P" xMin="86" yMin="0" xMax="1124" yMax="1480">
- <contour>
- <pt x="481" y="598" on="1"/>
- <pt x="481" y="123" on="1"/>
- <pt x="765" y="123" on="1"/>
- <pt x="765" y="0" on="1"/>
- <pt x="86" y="0" on="1"/>
- <pt x="86" y="123" on="1"/>
- <pt x="283" y="123" on="1"/>
- <pt x="283" y="1357" on="1"/>
- <pt x="86" y="1357" on="1"/>
- <pt x="86" y="1480" on="1"/>
- <pt x="747" y="1480" on="1"/>
- <pt x="1124" y="1480" on="0"/>
- <pt x="1124" y="1119" on="1"/>
- <pt x="1124" y="878" on="0"/>
- <pt x="984" y="738" on="1"/>
- <pt x="844" y="598" on="0"/>
- <pt x="599" y="598" on="1"/>
- </contour>
- <contour>
- <pt x="481" y="722" on="1"/>
- <pt x="592" y="722" on="1"/>
- <pt x="914" y="722" on="0"/>
- <pt x="914" y="1089" on="1"/>
- <pt x="914" y="1357" on="0"/>
- <pt x="682" y="1357" on="1"/>
- <pt x="481" y="1357" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 18 17 16 0 4 7 1 3 0 0 23 22 8 7 6 3 9 6 5 2 1 6 3 3 2
- 4 48 200 4 3 1 0 10 9 0 14 0 0 20 39 12 48 200 22 18 16 10 3 2 6
- 13 12 0 9 8 5 4 4 13 6 0 0 23 17 1 0 10 3 6 1 4 48 200 7 6
- 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Q" xMin="62" yMin="-321" xMax="1223" yMax="1517">
- <contour>
- <pt x="615" y="-37" on="1"/>
- <pt x="459" y="-12" on="0"/>
- <pt x="376" y="29" on="1"/>
- <pt x="276" y="78" on="0"/>
- <pt x="198" y="205" on="1"/>
- <pt x="62" y="428" on="0"/>
- <pt x="62" y="740" on="1"/>
- <pt x="62" y="1083" on="0"/>
- <pt x="216" y="1300" on="1"/>
- <pt x="370" y="1517" on="0"/>
- <pt x="615" y="1517" on="1"/>
- <pt x="859" y="1517" on="0"/>
- <pt x="1013" y="1300" on="1"/>
- <pt x="1168" y="1083" on="0"/>
- <pt x="1168" y="741" on="1"/>
- <pt x="1168" y="421" on="0"/>
- <pt x="1034" y="209" on="1"/>
- <pt x="943" y="66" on="0"/>
- <pt x="789" y="-2" on="1"/>
- <pt x="951" y="-103" on="0"/>
- <pt x="1223" y="-163" on="1"/>
- <pt x="1154" y="-248" on="0"/>
- <pt x="1055" y="-321" on="1"/>
- <pt x="846" y="-242" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1394" on="1"/>
- <pt x="454" y="1394" on="0"/>
- <pt x="365" y="1222" on="1"/>
- <pt x="275" y="1050" on="0"/>
- <pt x="275" y="740" on="1"/>
- <pt x="275" y="434" on="0"/>
- <pt x="364" y="260" on="1"/>
- <pt x="452" y="86" on="0"/>
- <pt x="614" y="86" on="1"/>
- <pt x="776" y="86" on="0"/>
- <pt x="860" y="236" on="1"/>
- <pt x="955" y="405" on="0"/>
- <pt x="955" y="738" on="1"/>
- <pt x="955" y="1051" on="0"/>
- <pt x="865" y="1223" on="1"/>
- <pt x="774" y="1394" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 36 values pushed */
- 0 0 24 5 10 48 200 10 0 1 22 20 18 0 4 13 32 0 0 14 0 0 36 39 14
- 28 39 6 48 200 22 20 18 14 6 0
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="R" xMin="86" yMin="0" xMax="1204" yMax="1480">
- <contour>
- <pt x="86" y="0" on="1"/>
- <pt x="86" y="123" on="1"/>
- <pt x="216" y="123" on="1"/>
- <pt x="216" y="1357" on="1"/>
- <pt x="86" y="1357" on="1"/>
- <pt x="86" y="1480" on="1"/>
- <pt x="673" y="1480" on="1"/>
- <pt x="849" y="1480" on="0"/>
- <pt x="950" y="1383" on="1"/>
- <pt x="1052" y="1286" on="0"/>
- <pt x="1052" y="1118" on="1"/>
- <pt x="1052" y="965" on="0"/>
- <pt x="960" y="847" on="1"/>
- <pt x="906" y="779" on="0"/>
- <pt x="803" y="709" on="1"/>
- <pt x="1116" y="123" on="1"/>
- <pt x="1204" y="123" on="1"/>
- <pt x="1204" y="0" on="1"/>
- <pt x="951" y="0" on="1"/>
- <pt x="612" y="648" on="1"/>
- <pt x="413" y="648" on="1"/>
- <pt x="413" y="123" on="1"/>
- <pt x="543" y="123" on="1"/>
- <pt x="543" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="413" y="771" on="1"/>
- <pt x="512" y="771" on="1"/>
- <pt x="842" y="771" on="0"/>
- <pt x="842" y="1096" on="1"/>
- <pt x="842" y="1357" on="0"/>
- <pt x="592" y="1357" on="1"/>
- <pt x="413" y="1357" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 90 values pushed */
- 25 24 14 3 3 19 3 22 21 16 15 2 1 6 19 0 3 0 0 30 29 4 3 6 3
- 5 1 4 48 200 20 19 1 23 18 17 0 3 2 0 6 5 0 14 0 0 27 39 10 48
- 200 29 25 23 22 19 18 17 16 15 14 6 11 13 10 20 5 4 1 0 4 13 2 0 0
- 30 24 21 20 10 3 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Racute" xMin="86" yMin="0" xMax="1204" yMax="1925">
- <contour>
- <pt x="86" y="0" on="1"/>
- <pt x="86" y="123" on="1"/>
- <pt x="216" y="123" on="1"/>
- <pt x="216" y="1357" on="1"/>
- <pt x="86" y="1357" on="1"/>
- <pt x="86" y="1480" on="1"/>
- <pt x="673" y="1480" on="1"/>
- <pt x="849" y="1480" on="0"/>
- <pt x="950" y="1383" on="1"/>
- <pt x="1052" y="1286" on="0"/>
- <pt x="1052" y="1118" on="1"/>
- <pt x="1052" y="965" on="0"/>
- <pt x="960" y="847" on="1"/>
- <pt x="906" y="779" on="0"/>
- <pt x="803" y="709" on="1"/>
- <pt x="1116" y="123" on="1"/>
- <pt x="1204" y="123" on="1"/>
- <pt x="1204" y="0" on="1"/>
- <pt x="951" y="0" on="1"/>
- <pt x="612" y="648" on="1"/>
- <pt x="413" y="648" on="1"/>
- <pt x="413" y="123" on="1"/>
- <pt x="543" y="123" on="1"/>
- <pt x="543" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="413" y="771" on="1"/>
- <pt x="512" y="771" on="1"/>
- <pt x="842" y="771" on="0"/>
- <pt x="842" y="1096" on="1"/>
- <pt x="842" y="1357" on="0"/>
- <pt x="592" y="1357" on="1"/>
- <pt x="413" y="1357" on="1"/>
- </contour>
- <contour>
- <pt x="450" y="1604" on="1"/>
- <pt x="666" y="1925" on="1"/>
- <pt x="894" y="1925" on="1"/>
- <pt x="573" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 103 values pushed */
- 34 31 2 32 5 3 25 24 14 3 3 19 3 22 21 16 15 2 1 6 19 0 3 0 0
- 30 29 4 3 6 3 5 1 4 48 200 33 32 1 20 19 1 23 18 17 0 3 3 0 6
- 5 0 14 0 0 27 39 10 48 200 34 33 32 31 29 25 23 22 19 18 17 16 15 14 6
- 15 13 10 20 5 4 1 0 4 13 2 0 0 30 24 21 20 10 3 2 1 4 48 200 3
- 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Rcaron" xMin="86" yMin="0" xMax="1204" yMax="1925">
- <contour>
- <pt x="86" y="0" on="1"/>
- <pt x="86" y="123" on="1"/>
- <pt x="216" y="123" on="1"/>
- <pt x="216" y="1357" on="1"/>
- <pt x="86" y="1357" on="1"/>
- <pt x="86" y="1480" on="1"/>
- <pt x="673" y="1480" on="1"/>
- <pt x="849" y="1480" on="0"/>
- <pt x="950" y="1383" on="1"/>
- <pt x="1052" y="1286" on="0"/>
- <pt x="1052" y="1118" on="1"/>
- <pt x="1052" y="965" on="0"/>
- <pt x="960" y="847" on="1"/>
- <pt x="906" y="779" on="0"/>
- <pt x="803" y="709" on="1"/>
- <pt x="1116" y="123" on="1"/>
- <pt x="1204" y="123" on="1"/>
- <pt x="1204" y="0" on="1"/>
- <pt x="951" y="0" on="1"/>
- <pt x="612" y="648" on="1"/>
- <pt x="413" y="648" on="1"/>
- <pt x="413" y="123" on="1"/>
- <pt x="543" y="123" on="1"/>
- <pt x="543" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="413" y="771" on="1"/>
- <pt x="512" y="771" on="1"/>
- <pt x="842" y="771" on="0"/>
- <pt x="842" y="1096" on="1"/>
- <pt x="842" y="1357" on="0"/>
- <pt x="592" y="1357" on="1"/>
- <pt x="413" y="1357" on="1"/>
- </contour>
- <contour>
- <pt x="925" y="1925" on="1"/>
- <pt x="668" y="1604" on="1"/>
- <pt x="450" y="1604" on="1"/>
- <pt x="193" y="1925" on="1"/>
- <pt x="317" y="1925" on="1"/>
- <pt x="558" y="1723" on="1"/>
- <pt x="560" y="1723" on="1"/>
- <pt x="802" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 113 values pushed */
- 25 24 14 3 3 19 3 22 21 16 15 2 1 6 19 0 3 38 37 36 35 34 31 6 13
- 32 0 0 30 29 4 3 6 3 5 1 4 48 200 33 32 1 20 19 1 23 18 17 0 3
- 3 0 6 5 0 14 0 0 27 39 10 48 200 35 20 2 2 38 37 36 33 32 31 29 25
- 23 22 19 18 17 16 15 14 6 17 13 10 20 34 5 4 1 0 5 13 2 0 0 30 24
- 21 20 10 3 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Rcommaaccent" xMin="86" yMin="-432" xMax="1204" yMax="1480">
- <contour>
- <pt x="86" y="0" on="1"/>
- <pt x="86" y="123" on="1"/>
- <pt x="216" y="123" on="1"/>
- <pt x="216" y="1357" on="1"/>
- <pt x="86" y="1357" on="1"/>
- <pt x="86" y="1480" on="1"/>
- <pt x="673" y="1480" on="1"/>
- <pt x="849" y="1480" on="0"/>
- <pt x="950" y="1383" on="1"/>
- <pt x="1052" y="1286" on="0"/>
- <pt x="1052" y="1118" on="1"/>
- <pt x="1052" y="965" on="0"/>
- <pt x="960" y="847" on="1"/>
- <pt x="906" y="779" on="0"/>
- <pt x="803" y="709" on="1"/>
- <pt x="1116" y="123" on="1"/>
- <pt x="1204" y="123" on="1"/>
- <pt x="1204" y="0" on="1"/>
- <pt x="951" y="0" on="1"/>
- <pt x="612" y="648" on="1"/>
- <pt x="413" y="648" on="1"/>
- <pt x="413" y="123" on="1"/>
- <pt x="543" y="123" on="1"/>
- <pt x="543" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="413" y="771" on="1"/>
- <pt x="512" y="771" on="1"/>
- <pt x="842" y="771" on="0"/>
- <pt x="842" y="1096" on="1"/>
- <pt x="842" y="1357" on="0"/>
- <pt x="592" y="1357" on="1"/>
- <pt x="413" y="1357" on="1"/>
- </contour>
- <contour>
- <pt x="542" y="-421" on="1"/>
- <pt x="542" y="-336" on="1"/>
- <pt x="599" y="-345" on="0"/>
- <pt x="639" y="-345" on="1"/>
- <pt x="748" y="-345" on="0"/>
- <pt x="748" y="-278" on="1"/>
- <pt x="748" y="-205" on="0"/>
- <pt x="591" y="-188" on="1"/>
- <pt x="591" y="-111" on="1"/>
- <pt x="725" y="-114" on="0"/>
- <pt x="791" y="-143" on="1"/>
- <pt x="884" y="-185" on="0"/>
- <pt x="884" y="-280" on="1"/>
- <pt x="884" y="-432" on="0"/>
- <pt x="666" y="-432" on="1"/>
- <pt x="607" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 113 values pushed */
- 0 0 34 32 45 48 200 25 24 14 3 3 19 3 22 21 16 15 2 1 6 19 0 3 39
- 38 32 31 4 13 45 0 0 0 30 29 4 3 6 3 5 1 4 48 200 20 19 1 23 18
- 17 0 3 2 0 6 5 0 14 0 0 36 20 43 27 39 10 48 200 39 38 32 31 29 25
- 23 22 19 18 17 16 15 14 6 15 13 43 10 20 5 4 1 0 4 13 2 0 0 30 24
- 21 20 10 3 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="S" xMin="151" yMin="-37" xMax="1091" yMax="1517">
- <contour>
- <pt x="151" y="61" on="1"/>
- <pt x="151" y="419" on="1"/>
- <pt x="275" y="419" on="1"/>
- <pt x="299" y="185" on="1"/>
- <pt x="486" y="86" on="0"/>
- <pt x="610" y="86" on="1"/>
- <pt x="737" y="86" on="0"/>
- <pt x="816" y="165" on="1"/>
- <pt x="895" y="243" on="0"/>
- <pt x="895" y="365" on="1"/>
- <pt x="895" y="522" on="0"/>
- <pt x="695" y="626" on="1"/>
- <pt x="505" y="725" on="1"/>
- <pt x="316" y="823" on="0"/>
- <pt x="249" y="906" on="1"/>
- <pt x="183" y="986" on="0"/>
- <pt x="183" y="1123" on="1"/>
- <pt x="183" y="1517" on="0"/>
- <pt x="631" y="1517" on="1"/>
- <pt x="814" y="1517" on="0"/>
- <pt x="1006" y="1444" on="1"/>
- <pt x="1006" y="1086" on="1"/>
- <pt x="883" y="1086" on="1"/>
- <pt x="858" y="1320" on="1"/>
- <pt x="733" y="1394" on="0"/>
- <pt x="616" y="1394" on="1"/>
- <pt x="375" y="1394" on="0"/>
- <pt x="375" y="1148" on="1"/>
- <pt x="375" y="1047" on="0"/>
- <pt x="431" y="999" on="1"/>
- <pt x="480" y="957" on="0"/>
- <pt x="606" y="889" on="1"/>
- <pt x="775" y="798" on="1"/>
- <pt x="970" y="693" on="0"/>
- <pt x="1030" y="620" on="1"/>
- <pt x="1091" y="546" on="0"/>
- <pt x="1091" y="413" on="1"/>
- <pt x="1091" y="209" on="0"/>
- <pt x="957" y="86" on="1"/>
- <pt x="822" y="-37" on="0"/>
- <pt x="598" y="-37" on="1"/>
- <pt x="393" y="-37" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 61 values pushed */
- 0 0 25 5 18 5 5 40 48 200 40 2 18 0 1 1 23 22 21 20 3 2 1 0 8
- 0 2 3 0 0 14 0 0 27 19 16 9 28 36 48 200 16 23 22 16 3 2 5 20 0
- 3 36 20 21 20 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Sacute" xMin="151" yMin="-37" xMax="1091" yMax="1925">
- <contour>
- <pt x="151" y="61" on="1"/>
- <pt x="151" y="419" on="1"/>
- <pt x="275" y="419" on="1"/>
- <pt x="299" y="185" on="1"/>
- <pt x="486" y="86" on="0"/>
- <pt x="610" y="86" on="1"/>
- <pt x="737" y="86" on="0"/>
- <pt x="816" y="165" on="1"/>
- <pt x="895" y="243" on="0"/>
- <pt x="895" y="365" on="1"/>
- <pt x="895" y="522" on="0"/>
- <pt x="695" y="626" on="1"/>
- <pt x="505" y="725" on="1"/>
- <pt x="316" y="823" on="0"/>
- <pt x="249" y="906" on="1"/>
- <pt x="183" y="986" on="0"/>
- <pt x="183" y="1123" on="1"/>
- <pt x="183" y="1517" on="0"/>
- <pt x="631" y="1517" on="1"/>
- <pt x="814" y="1517" on="0"/>
- <pt x="1006" y="1444" on="1"/>
- <pt x="1006" y="1086" on="1"/>
- <pt x="883" y="1086" on="1"/>
- <pt x="858" y="1320" on="1"/>
- <pt x="733" y="1394" on="0"/>
- <pt x="616" y="1394" on="1"/>
- <pt x="375" y="1394" on="0"/>
- <pt x="375" y="1148" on="1"/>
- <pt x="375" y="1047" on="0"/>
- <pt x="431" y="999" on="1"/>
- <pt x="480" y="957" on="0"/>
- <pt x="606" y="889" on="1"/>
- <pt x="775" y="798" on="1"/>
- <pt x="970" y="693" on="0"/>
- <pt x="1030" y="620" on="1"/>
- <pt x="1091" y="546" on="0"/>
- <pt x="1091" y="413" on="1"/>
- <pt x="1091" y="209" on="0"/>
- <pt x="957" y="86" on="1"/>
- <pt x="822" y="-37" on="0"/>
- <pt x="598" y="-37" on="1"/>
- <pt x="393" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="509" y="1604" on="1"/>
- <pt x="725" y="1925" on="1"/>
- <pt x="953" y="1925" on="1"/>
- <pt x="632" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 0 0 25 5 18 5 5 40 48 200 40 2 18 0 1 45 42 2 43 0 3 0 1 1 23
- 22 21 20 3 2 1 0 8 0 2 3 0 0 44 43 1 0 14 0 0 27 19 16 9 28
- 36 48 200 16 45 44 43 42 23 22 16 3 2 9 20 0 3 36 20 21 20 1 1 0 1
- 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Scaron" xMin="151" yMin="-37" xMax="1091" yMax="1925">
- <contour>
- <pt x="151" y="61" on="1"/>
- <pt x="151" y="419" on="1"/>
- <pt x="275" y="419" on="1"/>
- <pt x="299" y="185" on="1"/>
- <pt x="486" y="86" on="0"/>
- <pt x="610" y="86" on="1"/>
- <pt x="737" y="86" on="0"/>
- <pt x="816" y="165" on="1"/>
- <pt x="895" y="243" on="0"/>
- <pt x="895" y="365" on="1"/>
- <pt x="895" y="522" on="0"/>
- <pt x="695" y="626" on="1"/>
- <pt x="505" y="725" on="1"/>
- <pt x="316" y="823" on="0"/>
- <pt x="249" y="906" on="1"/>
- <pt x="183" y="986" on="0"/>
- <pt x="183" y="1123" on="1"/>
- <pt x="183" y="1517" on="0"/>
- <pt x="631" y="1517" on="1"/>
- <pt x="814" y="1517" on="0"/>
- <pt x="1006" y="1444" on="1"/>
- <pt x="1006" y="1086" on="1"/>
- <pt x="883" y="1086" on="1"/>
- <pt x="858" y="1320" on="1"/>
- <pt x="733" y="1394" on="0"/>
- <pt x="616" y="1394" on="1"/>
- <pt x="375" y="1394" on="0"/>
- <pt x="375" y="1148" on="1"/>
- <pt x="375" y="1047" on="0"/>
- <pt x="431" y="999" on="1"/>
- <pt x="480" y="957" on="0"/>
- <pt x="606" y="889" on="1"/>
- <pt x="775" y="798" on="1"/>
- <pt x="970" y="693" on="0"/>
- <pt x="1030" y="620" on="1"/>
- <pt x="1091" y="546" on="0"/>
- <pt x="1091" y="413" on="1"/>
- <pt x="1091" y="209" on="0"/>
- <pt x="957" y="86" on="1"/>
- <pt x="822" y="-37" on="0"/>
- <pt x="598" y="-37" on="1"/>
- <pt x="393" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="999" y="1925" on="1"/>
- <pt x="742" y="1604" on="1"/>
- <pt x="524" y="1604" on="1"/>
- <pt x="267" y="1925" on="1"/>
- <pt x="391" y="1925" on="1"/>
- <pt x="632" y="1723" on="1"/>
- <pt x="634" y="1723" on="1"/>
- <pt x="876" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 82 values pushed */
- 0 0 25 5 18 5 5 40 48 200 40 2 18 0 1 1 23 22 21 20 3 2 1 0 8
- 0 2 3 0 0 49 48 47 46 45 42 6 13 43 44 43 1 0 14 0 0 27 19 16 9
- 28 36 48 200 16 49 48 47 46 45 44 43 42 23 22 16 3 2 13 20 0 3 36 20 21
- 20 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Scedilla" xMin="151" yMin="-432" xMax="1091" yMax="1517">
- <contour>
- <pt x="151" y="61" on="1"/>
- <pt x="151" y="419" on="1"/>
- <pt x="275" y="419" on="1"/>
- <pt x="299" y="185" on="1"/>
- <pt x="486" y="86" on="0"/>
- <pt x="610" y="86" on="1"/>
- <pt x="737" y="86" on="0"/>
- <pt x="816" y="165" on="1"/>
- <pt x="895" y="243" on="0"/>
- <pt x="895" y="365" on="1"/>
- <pt x="895" y="522" on="0"/>
- <pt x="695" y="626" on="1"/>
- <pt x="505" y="725" on="1"/>
- <pt x="316" y="823" on="0"/>
- <pt x="249" y="906" on="1"/>
- <pt x="183" y="986" on="0"/>
- <pt x="183" y="1123" on="1"/>
- <pt x="183" y="1517" on="0"/>
- <pt x="632" y="1517" on="1"/>
- <pt x="814" y="1517" on="0"/>
- <pt x="1006" y="1444" on="1"/>
- <pt x="1006" y="1086" on="1"/>
- <pt x="883" y="1086" on="1"/>
- <pt x="858" y="1320" on="1"/>
- <pt x="733" y="1394" on="0"/>
- <pt x="616" y="1394" on="1"/>
- <pt x="375" y="1394" on="0"/>
- <pt x="375" y="1148" on="1"/>
- <pt x="375" y="1047" on="0"/>
- <pt x="431" y="999" on="1"/>
- <pt x="480" y="957" on="0"/>
- <pt x="606" y="889" on="1"/>
- <pt x="775" y="798" on="1"/>
- <pt x="970" y="693" on="0"/>
- <pt x="1030" y="620" on="1"/>
- <pt x="1091" y="546" on="0"/>
- <pt x="1091" y="413" on="1"/>
- <pt x="1091" y="209" on="0"/>
- <pt x="957" y="86" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="598" y="-37" on="1"/>
- <pt x="393" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="554" y="0" on="1"/>
- <pt x="651" y="0" on="1"/>
- <pt x="591" y="-109" on="1"/>
- <pt x="663" y="-111" on="0"/>
- <pt x="715" y="-148" on="1"/>
- <pt x="785" y="-197" on="0"/>
- <pt x="785" y="-269" on="1"/>
- <pt x="785" y="-337" on="0"/>
- <pt x="726" y="-384" on="1"/>
- <pt x="668" y="-432" on="0"/>
- <pt x="581" y="-432" on="1"/>
- <pt x="514" y="-432" on="0"/>
- <pt x="438" y="-411" on="1"/>
- <pt x="438" y="-330" on="1"/>
- <pt x="488" y="-345" on="0"/>
- <pt x="542" y="-345" on="1"/>
- <pt x="646" y="-345" on="0"/>
- <pt x="646" y="-271" on="1"/>
- <pt x="646" y="-178" on="0"/>
- <pt x="459" y="-175" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 0 0 57 32 52 25 5 18 5 5 40 48 200 40 2 18 0 1 1 23 22 21 20 3 2
- 1 0 8 0 2 3 0 0 1 61 55 54 44 43 42 6 13 52 2 0 14 0 0 59 20
- 48 27 19 16 9 28 36 48 200 48 16 61 55 54 48 44 43 42 23 22 16 3 2 12 20
- 0 3 36 20 21 20 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Scircumflex" xMin="151" yMin="-37" xMax="1091" yMax="1925">
- <contour>
- <pt x="151" y="61" on="1"/>
- <pt x="151" y="419" on="1"/>
- <pt x="275" y="419" on="1"/>
- <pt x="299" y="185" on="1"/>
- <pt x="486" y="86" on="0"/>
- <pt x="610" y="86" on="1"/>
- <pt x="737" y="86" on="0"/>
- <pt x="816" y="165" on="1"/>
- <pt x="895" y="243" on="0"/>
- <pt x="895" y="365" on="1"/>
- <pt x="895" y="522" on="0"/>
- <pt x="695" y="626" on="1"/>
- <pt x="505" y="725" on="1"/>
- <pt x="316" y="823" on="0"/>
- <pt x="249" y="906" on="1"/>
- <pt x="183" y="986" on="0"/>
- <pt x="183" y="1123" on="1"/>
- <pt x="183" y="1517" on="0"/>
- <pt x="631" y="1517" on="1"/>
- <pt x="814" y="1517" on="0"/>
- <pt x="1006" y="1444" on="1"/>
- <pt x="1006" y="1086" on="1"/>
- <pt x="883" y="1086" on="1"/>
- <pt x="858" y="1320" on="1"/>
- <pt x="733" y="1394" on="0"/>
- <pt x="616" y="1394" on="1"/>
- <pt x="375" y="1394" on="0"/>
- <pt x="375" y="1148" on="1"/>
- <pt x="375" y="1047" on="0"/>
- <pt x="431" y="999" on="1"/>
- <pt x="480" y="957" on="0"/>
- <pt x="606" y="889" on="1"/>
- <pt x="775" y="798" on="1"/>
- <pt x="970" y="693" on="0"/>
- <pt x="1030" y="620" on="1"/>
- <pt x="1091" y="546" on="0"/>
- <pt x="1091" y="413" on="1"/>
- <pt x="1091" y="209" on="0"/>
- <pt x="957" y="86" on="1"/>
- <pt x="822" y="-37" on="0"/>
- <pt x="598" y="-37" on="1"/>
- <pt x="393" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="267" y="1604" on="1"/>
- <pt x="523" y="1925" on="1"/>
- <pt x="742" y="1925" on="1"/>
- <pt x="998" y="1604" on="1"/>
- <pt x="875" y="1604" on="1"/>
- <pt x="634" y="1806" on="1"/>
- <pt x="631" y="1806" on="1"/>
- <pt x="390" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 0 0 25 5 18 5 5 40 48 200 40 2 18 0 1 49 48 47 46 45 42 6 43 0 3
- 0 1 1 23 22 21 20 3 2 1 0 8 0 2 3 0 0 44 43 1 0 14 0 0 27
- 19 16 9 28 36 48 200 16 49 48 47 46 45 44 43 42 23 22 16 3 2 13 20 0 3
- 36 20 21 20 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Scommaaccent" xMin="151" yMin="-432" xMax="1091" yMax="1517">
- <contour>
- <pt x="151" y="61" on="1"/>
- <pt x="151" y="419" on="1"/>
- <pt x="275" y="419" on="1"/>
- <pt x="299" y="185" on="1"/>
- <pt x="486" y="86" on="0"/>
- <pt x="610" y="86" on="1"/>
- <pt x="737" y="86" on="0"/>
- <pt x="816" y="165" on="1"/>
- <pt x="895" y="243" on="0"/>
- <pt x="895" y="365" on="1"/>
- <pt x="895" y="522" on="0"/>
- <pt x="695" y="626" on="1"/>
- <pt x="505" y="725" on="1"/>
- <pt x="316" y="823" on="0"/>
- <pt x="249" y="906" on="1"/>
- <pt x="183" y="986" on="0"/>
- <pt x="183" y="1123" on="1"/>
- <pt x="183" y="1517" on="0"/>
- <pt x="632" y="1517" on="1"/>
- <pt x="814" y="1517" on="0"/>
- <pt x="1006" y="1444" on="1"/>
- <pt x="1006" y="1086" on="1"/>
- <pt x="883" y="1086" on="1"/>
- <pt x="858" y="1320" on="1"/>
- <pt x="733" y="1394" on="0"/>
- <pt x="616" y="1394" on="1"/>
- <pt x="375" y="1394" on="0"/>
- <pt x="375" y="1148" on="1"/>
- <pt x="375" y="1047" on="0"/>
- <pt x="431" y="999" on="1"/>
- <pt x="480" y="957" on="0"/>
- <pt x="606" y="889" on="1"/>
- <pt x="775" y="798" on="1"/>
- <pt x="970" y="693" on="0"/>
- <pt x="1030" y="620" on="1"/>
- <pt x="1091" y="546" on="0"/>
- <pt x="1091" y="413" on="1"/>
- <pt x="1091" y="209" on="0"/>
- <pt x="957" y="86" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="598" y="-37" on="1"/>
- <pt x="393" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="484" y="-421" on="1"/>
- <pt x="484" y="-336" on="1"/>
- <pt x="541" y="-345" on="0"/>
- <pt x="581" y="-345" on="1"/>
- <pt x="690" y="-345" on="0"/>
- <pt x="690" y="-278" on="1"/>
- <pt x="690" y="-205" on="0"/>
- <pt x="533" y="-188" on="1"/>
- <pt x="533" y="-111" on="1"/>
- <pt x="667" y="-114" on="0"/>
- <pt x="733" y="-143" on="1"/>
- <pt x="826" y="-185" on="0"/>
- <pt x="826" y="-280" on="1"/>
- <pt x="826" y="-432" on="0"/>
- <pt x="608" y="-432" on="1"/>
- <pt x="550" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 0 0 45 32 56 25 5 18 5 5 40 48 200 40 2 18 0 1 1 23 22 21 20 3 2
- 1 0 8 0 2 3 0 0 1 50 49 43 42 4 13 56 2 0 14 0 0 47 20 54 27
- 19 16 9 28 36 48 200 54 16 54 50 49 43 42 23 22 16 3 2 10 20 0 3 36 20
- 21 20 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="T" xMin="62" yMin="0" xMax="1168" yMax="1480">
- <contour>
- <pt x="257" y="0" on="1"/>
- <pt x="257" y="123" on="1"/>
- <pt x="516" y="123" on="1"/>
- <pt x="516" y="1357" on="1"/>
- <pt x="185" y="1357" on="1"/>
- <pt x="185" y="1086" on="1"/>
- <pt x="62" y="1086" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1086" on="1"/>
- <pt x="1044" y="1086" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="714" y="1357" on="1"/>
- <pt x="714" y="123" on="1"/>
- <pt x="973" y="123" on="1"/>
- <pt x="973" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 10 9 6 5 4 3 1 3 0 0 12 11 4 3 6 3 7 14 13 2 1 6 3 0 2
- 4 48 200 15 0 1 0 8 7 0 14 15 14 2 10 12 3 1 0 2 2 4 3 0 0
- 11 10 6 1 8 13 12 10 1 2 5 4 6 1 6 3 4 48 200 9 8 1 3 2 1
- 7 6 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Tbar" xMin="62" yMin="0" xMax="1168" yMax="1480">
- <contour>
- <pt x="257" y="0" on="1"/>
- <pt x="257" y="123" on="1"/>
- <pt x="516" y="123" on="1"/>
- <pt x="516" y="716" on="1"/>
- <pt x="220" y="716" on="1"/>
- <pt x="220" y="814" on="1"/>
- <pt x="516" y="814" on="1"/>
- <pt x="516" y="1357" on="1"/>
- <pt x="185" y="1357" on="1"/>
- <pt x="185" y="1086" on="1"/>
- <pt x="62" y="1086" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1086" on="1"/>
- <pt x="1044" y="1086" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="714" y="1357" on="1"/>
- <pt x="714" y="814" on="1"/>
- <pt x="1010" y="814" on="1"/>
- <pt x="1010" y="716" on="1"/>
- <pt x="714" y="716" on="1"/>
- <pt x="714" y="123" on="1"/>
- <pt x="973" y="123" on="1"/>
- <pt x="973" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 101 values pushed */
- 14 13 10 9 4 7 5 3 0 0 16 15 8 7 6 3 11 20 19 4 3 33 3 5 22
- 21 2 1 6 3 0 3 4 48 200 18 17 6 5 3 23 0 1 2 0 12 11 0 14 23
- 22 19 18 4 14 16 3 5 4 1 0 4 2 8 3 0 0 15 14 6 1 12 21 20 17
- 16 10 3 2 9 8 6 1 10 3 4 48 200 13 12 1 7 6 3 2 3 11 10 1 3
- 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Tcaron" xMin="62" yMin="0" xMax="1168" yMax="1925">
- <contour>
- <pt x="257" y="0" on="1"/>
- <pt x="257" y="123" on="1"/>
- <pt x="516" y="123" on="1"/>
- <pt x="516" y="1357" on="1"/>
- <pt x="185" y="1357" on="1"/>
- <pt x="185" y="1086" on="1"/>
- <pt x="62" y="1086" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1086" on="1"/>
- <pt x="1044" y="1086" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="714" y="1357" on="1"/>
- <pt x="714" y="123" on="1"/>
- <pt x="973" y="123" on="1"/>
- <pt x="973" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="981" y="1925" on="1"/>
- <pt x="724" y="1604" on="1"/>
- <pt x="506" y="1604" on="1"/>
- <pt x="249" y="1925" on="1"/>
- <pt x="373" y="1925" on="1"/>
- <pt x="614" y="1723" on="1"/>
- <pt x="616" y="1723" on="1"/>
- <pt x="858" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 105 values pushed */
- 10 9 6 5 4 3 1 3 23 22 21 20 19 16 6 13 17 0 0 12 11 4 3 6 3
- 7 14 13 2 1 6 3 0 2 4 48 200 18 17 1 15 0 1 2 0 8 7 0 14 23
- 17 16 15 14 5 10 12 3 22 21 2 12 2 3 20 19 18 1 0 5 2 4 3 0 0
- 11 10 6 1 8 13 12 10 1 2 5 4 6 1 6 3 4 48 200 9 8 1 3 2 1
- 7 6 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Tcommaaccent" xMin="62" yMin="-432" xMax="1168" yMax="1480">
- <contour>
- <pt x="257" y="0" on="1"/>
- <pt x="257" y="123" on="1"/>
- <pt x="516" y="123" on="1"/>
- <pt x="516" y="1357" on="1"/>
- <pt x="185" y="1357" on="1"/>
- <pt x="185" y="1086" on="1"/>
- <pt x="62" y="1086" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1086" on="1"/>
- <pt x="1044" y="1086" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="714" y="1357" on="1"/>
- <pt x="714" y="123" on="1"/>
- <pt x="973" y="123" on="1"/>
- <pt x="973" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="592" y="0" on="1"/>
- <pt x="689" y="0" on="1"/>
- <pt x="629" y="-109" on="1"/>
- <pt x="701" y="-111" on="0"/>
- <pt x="753" y="-148" on="1"/>
- <pt x="823" y="-197" on="0"/>
- <pt x="823" y="-269" on="1"/>
- <pt x="823" y="-337" on="0"/>
- <pt x="764" y="-384" on="1"/>
- <pt x="705" y="-432" on="0"/>
- <pt x="620" y="-432" on="1"/>
- <pt x="552" y="-432" on="0"/>
- <pt x="476" y="-411" on="1"/>
- <pt x="476" y="-330" on="1"/>
- <pt x="526" y="-345" on="0"/>
- <pt x="580" y="-345" on="1"/>
- <pt x="684" y="-345" on="0"/>
- <pt x="684" y="-271" on="1"/>
- <pt x="684" y="-178" on="0"/>
- <pt x="497" y="-175" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 116 values pushed */
- 0 0 31 32 26 48 200 10 9 6 5 4 3 1 3 35 29 28 18 4 13 26 0 0 0
- 12 11 4 3 6 3 7 14 13 2 1 6 3 0 2 4 48 200 17 16 15 0 3 0 8
- 7 0 14 0 0 33 20 22 48 200 22 22 15 14 3 10 12 3 18 17 16 3 12 2 3
- 35 29 28 1 0 5 2 4 3 0 0 11 10 6 1 8 13 12 10 1 2 5 4 6 1
- 6 3 4 48 200 9 8 1 3 2 1 7 6 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Tcommabelow" xMin="62" yMin="-432" xMax="1168" yMax="1480">
- <contour>
- <pt x="257" y="0" on="1"/>
- <pt x="257" y="123" on="1"/>
- <pt x="516" y="123" on="1"/>
- <pt x="516" y="1357" on="1"/>
- <pt x="185" y="1357" on="1"/>
- <pt x="185" y="1086" on="1"/>
- <pt x="62" y="1086" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1086" on="1"/>
- <pt x="1044" y="1086" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="714" y="1357" on="1"/>
- <pt x="714" y="123" on="1"/>
- <pt x="973" y="123" on="1"/>
- <pt x="973" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="472" y="-421" on="1"/>
- <pt x="472" y="-336" on="1"/>
- <pt x="529" y="-345" on="0"/>
- <pt x="569" y="-345" on="1"/>
- <pt x="678" y="-345" on="0"/>
- <pt x="678" y="-278" on="1"/>
- <pt x="678" y="-205" on="0"/>
- <pt x="521" y="-188" on="1"/>
- <pt x="521" y="-111" on="1"/>
- <pt x="655" y="-114" on="0"/>
- <pt x="721" y="-143" on="1"/>
- <pt x="814" y="-185" on="0"/>
- <pt x="814" y="-280" on="1"/>
- <pt x="814" y="-432" on="0"/>
- <pt x="596" y="-432" on="1"/>
- <pt x="538" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 112 values pushed */
- 0 0 19 32 30 48 200 10 9 6 5 4 3 1 3 24 23 17 16 4 13 30 0 0 0
- 12 11 4 3 6 3 7 14 13 2 1 6 3 0 2 4 48 200 15 0 1 0 8 7 0
- 14 0 0 21 20 28 48 200 28 28 15 14 3 10 12 3 24 23 2 12 2 3 17 16 1
- 0 4 2 4 3 0 0 11 10 6 1 8 13 12 10 1 2 5 4 6 1 6 3 4 48
- 200 9 8 1 3 2 1 7 6 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Thorn" xMin="86" yMin="0" xMax="1124" yMax="1480">
- <contour>
- <pt x="481" y="1191" on="1"/>
- <pt x="670" y="1191" on="1"/>
- <pt x="1124" y="1191" on="0"/>
- <pt x="1124" y="829" on="1"/>
- <pt x="1124" y="588" on="0"/>
- <pt x="955" y="449" on="1"/>
- <pt x="787" y="309" on="0"/>
- <pt x="492" y="309" on="1"/>
- <pt x="481" y="309" on="1"/>
- <pt x="481" y="123" on="1"/>
- <pt x="678" y="123" on="1"/>
- <pt x="678" y="0" on="1"/>
- <pt x="86" y="0" on="1"/>
- <pt x="86" y="123" on="1"/>
- <pt x="283" y="123" on="1"/>
- <pt x="283" y="1357" on="1"/>
- <pt x="86" y="1357" on="1"/>
- <pt x="86" y="1480" on="1"/>
- <pt x="678" y="1480" on="1"/>
- <pt x="678" y="1357" on="1"/>
- <pt x="481" y="1357" on="1"/>
- </contour>
- <contour>
- <pt x="481" y="432" on="1"/>
- <pt x="493" y="432" on="1"/>
- <pt x="694" y="432" on="0"/>
- <pt x="804" y="528" on="1"/>
- <pt x="914" y="623" on="0"/>
- <pt x="914" y="796" on="1"/>
- <pt x="914" y="1067" on="0"/>
- <pt x="592" y="1067" on="1"/>
- <pt x="481" y="1067" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 29 28 22 21 8 7 6 0 9 3 0 0 20 19 16 15 6 3 17 14 13 10 9 6 3
- 11 2 4 48 200 1 0 1 12 11 1 2 0 18 17 0 14 0 0 26 39 3 48 200 28
- 22 19 18 11 10 7 1 8 13 3 0 17 16 13 12 4 13 14 0 0 29 21 20 9 8
- 0 10 5 14 1 4 48 200 15 14 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="U" xMin="62" yMin="-37" xMax="1168" yMax="1480">
- <contour>
- <pt x="185" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="519" y="1480" on="1"/>
- <pt x="519" y="1357" on="1"/>
- <pt x="383" y="1357" on="1"/>
- <pt x="383" y="523" on="1"/>
- <pt x="383" y="313" on="0"/>
- <pt x="455" y="200" on="1"/>
- <pt x="526" y="86" on="0"/>
- <pt x="656" y="86" on="1"/>
- <pt x="921" y="86" on="0"/>
- <pt x="921" y="532" on="1"/>
- <pt x="921" y="1357" on="1"/>
- <pt x="785" y="1357" on="1"/>
- <pt x="785" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="496" on="1"/>
- <pt x="1044" y="244" on="0"/>
- <pt x="933" y="104" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="621" y="-37" on="1"/>
- <pt x="185" y="-37" on="0"/>
- <pt x="185" y="550" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 0 0 10 5 23 48 200 23 2 1 25 19 18 17 14 13 12 6 5 4 1 0 12 2 2
- 3 0 16 15 3 2 0 3 14 15 14 4 3 4 12 5 3 17 16 2 13 18 2 1 0
- 0 0 13 12 6 1 18 6 5 10 1 0 2 4 48 200 19 18 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Uacute" xMin="62" yMin="-37" xMax="1168" yMax="1925">
- <contour>
- <pt x="185" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="519" y="1480" on="1"/>
- <pt x="519" y="1357" on="1"/>
- <pt x="383" y="1357" on="1"/>
- <pt x="383" y="523" on="1"/>
- <pt x="383" y="313" on="0"/>
- <pt x="455" y="200" on="1"/>
- <pt x="526" y="86" on="0"/>
- <pt x="656" y="86" on="1"/>
- <pt x="921" y="86" on="0"/>
- <pt x="921" y="532" on="1"/>
- <pt x="921" y="1357" on="1"/>
- <pt x="785" y="1357" on="1"/>
- <pt x="785" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="496" on="1"/>
- <pt x="1044" y="244" on="0"/>
- <pt x="933" y="104" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="621" y="-37" on="1"/>
- <pt x="185" y="-37" on="0"/>
- <pt x="185" y="550" on="1"/>
- </contour>
- <contour>
- <pt x="528" y="1604" on="1"/>
- <pt x="744" y="1925" on="1"/>
- <pt x="972" y="1925" on="1"/>
- <pt x="651" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 91 values pushed */
- 0 0 10 5 23 48 200 23 2 29 26 2 27 2 3 1 25 19 18 17 14 13 12 6 5
- 4 1 0 12 2 2 3 0 28 27 1 0 16 15 3 2 0 3 14 28 18 12 2 29 27
- 26 15 14 4 3 7 12 5 3 17 16 2 13 18 2 1 0 0 0 13 12 6 1 18 6
- 5 10 1 0 2 4 48 200 19 18 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ubreve" xMin="62" yMin="-37" xMax="1168" yMax="1925">
- <contour>
- <pt x="185" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="519" y="1480" on="1"/>
- <pt x="519" y="1357" on="1"/>
- <pt x="383" y="1357" on="1"/>
- <pt x="383" y="523" on="1"/>
- <pt x="383" y="313" on="0"/>
- <pt x="455" y="200" on="1"/>
- <pt x="526" y="86" on="0"/>
- <pt x="656" y="86" on="1"/>
- <pt x="921" y="86" on="0"/>
- <pt x="921" y="532" on="1"/>
- <pt x="921" y="1357" on="1"/>
- <pt x="785" y="1357" on="1"/>
- <pt x="785" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="496" on="1"/>
- <pt x="1044" y="244" on="0"/>
- <pt x="933" y="104" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="621" y="-37" on="1"/>
- <pt x="185" y="-37" on="0"/>
- <pt x="185" y="550" on="1"/>
- </contour>
- <contour>
- <pt x="306" y="1925" on="1"/>
- <pt x="429" y="1925" on="1"/>
- <pt x="477" y="1777" on="0"/>
- <pt x="651" y="1777" on="1"/>
- <pt x="826" y="1777" on="0"/>
- <pt x="874" y="1925" on="1"/>
- <pt x="997" y="1925" on="1"/>
- <pt x="974" y="1836" on="0"/>
- <pt x="948" y="1790" on="1"/>
- <pt x="857" y="1635" on="0"/>
- <pt x="655" y="1635" on="1"/>
- <pt x="503" y="1635" on="0"/>
- <pt x="414" y="1716" on="1"/>
- <pt x="359" y="1765" on="0"/>
- <pt x="331" y="1837" on="1"/>
- <pt x="320" y="1866" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 95 values pushed */
- 0 0 29 14 36 10 5 23 48 200 23 2 1 25 19 18 17 14 13 12 6 5 4 1 0
- 12 2 2 3 0 32 31 27 26 4 13 36 2 16 15 3 2 0 3 14 32 18 12 2 31
- 27 15 14 4 3 6 12 5 3 26 5 0 2 17 16 2 13 18 2 1 0 0 0 13 12
- 6 1 18 6 5 10 1 0 2 4 48 200 19 18 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ucircumflex" xMin="62" yMin="-37" xMax="1168" yMax="1925">
- <contour>
- <pt x="185" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="519" y="1480" on="1"/>
- <pt x="519" y="1357" on="1"/>
- <pt x="383" y="1357" on="1"/>
- <pt x="383" y="523" on="1"/>
- <pt x="383" y="313" on="0"/>
- <pt x="455" y="200" on="1"/>
- <pt x="526" y="86" on="0"/>
- <pt x="656" y="86" on="1"/>
- <pt x="921" y="86" on="0"/>
- <pt x="921" y="532" on="1"/>
- <pt x="921" y="1357" on="1"/>
- <pt x="785" y="1357" on="1"/>
- <pt x="785" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="496" on="1"/>
- <pt x="1044" y="244" on="0"/>
- <pt x="933" y="104" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="621" y="-37" on="1"/>
- <pt x="185" y="-37" on="0"/>
- <pt x="185" y="550" on="1"/>
- </contour>
- <contour>
- <pt x="286" y="1604" on="1"/>
- <pt x="542" y="1925" on="1"/>
- <pt x="761" y="1925" on="1"/>
- <pt x="1017" y="1604" on="1"/>
- <pt x="894" y="1604" on="1"/>
- <pt x="653" y="1806" on="1"/>
- <pt x="650" y="1806" on="1"/>
- <pt x="409" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 102 values pushed */
- 0 0 10 5 23 48 200 23 2 33 32 31 30 29 26 6 27 2 3 1 25 19 18 17 14
- 13 12 6 5 4 1 0 12 2 2 3 0 28 27 1 0 16 15 3 2 0 3 14 29 18
- 12 2 33 32 31 30 28 27 15 14 4 3 10 12 5 3 26 5 0 2 17 16 2 13 18
- 2 1 0 0 0 13 12 6 1 18 6 5 10 1 0 2 4 48 200 19 18 1 25 0 1
- 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Udieresis" xMin="62" yMin="-37" xMax="1168" yMax="1801">
- <contour>
- <pt x="185" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="519" y="1480" on="1"/>
- <pt x="519" y="1357" on="1"/>
- <pt x="383" y="1357" on="1"/>
- <pt x="383" y="523" on="1"/>
- <pt x="383" y="313" on="0"/>
- <pt x="455" y="200" on="1"/>
- <pt x="526" y="86" on="0"/>
- <pt x="656" y="86" on="1"/>
- <pt x="921" y="86" on="0"/>
- <pt x="921" y="532" on="1"/>
- <pt x="921" y="1357" on="1"/>
- <pt x="785" y="1357" on="1"/>
- <pt x="785" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="496" on="1"/>
- <pt x="1044" y="244" on="0"/>
- <pt x="933" y="104" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="621" y="-37" on="1"/>
- <pt x="185" y="-37" on="0"/>
- <pt x="185" y="550" on="1"/>
- </contour>
- <contour>
- <pt x="319" y="1604" on="1"/>
- <pt x="319" y="1801" on="1"/>
- <pt x="516" y="1801" on="1"/>
- <pt x="516" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="788" y="1604" on="1"/>
- <pt x="788" y="1801" on="1"/>
- <pt x="985" y="1801" on="1"/>
- <pt x="985" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 109 values pushed */
- 0 0 10 5 23 48 200 23 2 1 25 19 18 17 14 13 12 6 5 4 1 0 12 2 2
- 3 0 0 0 33 30 29 26 10 3 27 1 4 48 200 32 31 28 27 3 0 16 15 3 2
- 0 3 14 15 14 4 3 4 30 28 3 17 16 2 13 18 2 1 0 0 0 31 30 10 1
- 32 29 28 10 1 26 13 12 6 1 18 6 5 10 1 0 4 4 48 200 33 32 1 27 26
- 1 19 18 1 25 0 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ugrave" xMin="62" yMin="-37" xMax="1168" yMax="1925">
- <contour>
- <pt x="185" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="519" y="1480" on="1"/>
- <pt x="519" y="1357" on="1"/>
- <pt x="383" y="1357" on="1"/>
- <pt x="383" y="523" on="1"/>
- <pt x="383" y="313" on="0"/>
- <pt x="455" y="200" on="1"/>
- <pt x="526" y="86" on="0"/>
- <pt x="656" y="86" on="1"/>
- <pt x="921" y="86" on="0"/>
- <pt x="921" y="532" on="1"/>
- <pt x="921" y="1357" on="1"/>
- <pt x="785" y="1357" on="1"/>
- <pt x="785" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="496" on="1"/>
- <pt x="1044" y="244" on="0"/>
- <pt x="933" y="104" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="621" y="-37" on="1"/>
- <pt x="185" y="-37" on="0"/>
- <pt x="185" y="550" on="1"/>
- </contour>
- <contour>
- <pt x="775" y="1604" on="1"/>
- <pt x="652" y="1604" on="1"/>
- <pt x="331" y="1925" on="1"/>
- <pt x="559" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 91 values pushed */
- 0 0 10 5 23 48 200 23 2 27 26 2 28 2 3 1 25 19 18 17 14 13 12 6 5
- 4 1 0 12 2 2 3 0 29 28 1 0 16 15 3 2 0 3 14 29 27 26 15 14 4
- 3 7 12 5 3 28 5 0 2 17 16 2 13 18 2 1 0 0 0 13 12 6 1 18 6
- 5 10 1 0 2 4 48 200 19 18 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Uhungarumlaut" xMin="62" yMin="-37" xMax="1168" yMax="1925">
- <contour>
- <pt x="185" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="519" y="1480" on="1"/>
- <pt x="519" y="1357" on="1"/>
- <pt x="383" y="1357" on="1"/>
- <pt x="383" y="523" on="1"/>
- <pt x="383" y="313" on="0"/>
- <pt x="455" y="200" on="1"/>
- <pt x="526" y="86" on="0"/>
- <pt x="656" y="86" on="1"/>
- <pt x="921" y="86" on="0"/>
- <pt x="921" y="532" on="1"/>
- <pt x="921" y="1357" on="1"/>
- <pt x="785" y="1357" on="1"/>
- <pt x="785" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="496" on="1"/>
- <pt x="1044" y="244" on="0"/>
- <pt x="933" y="104" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="621" y="-37" on="1"/>
- <pt x="185" y="-37" on="0"/>
- <pt x="185" y="550" on="1"/>
- </contour>
- <contour>
- <pt x="384" y="1604" on="1"/>
- <pt x="624" y="1925" on="1"/>
- <pt x="816" y="1925" on="1"/>
- <pt x="495" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="735" y="1604" on="1"/>
- <pt x="976" y="1925" on="1"/>
- <pt x="1167" y="1925" on="1"/>
- <pt x="846" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 99 values pushed */
- 0 0 10 5 23 48 200 23 2 33 30 29 26 4 27 2 3 1 25 19 18 17 14 13 12
- 6 5 4 1 0 12 2 2 3 0 32 31 28 27 3 0 16 15 3 2 0 3 14 31 18
- 12 2 33 30 29 28 27 26 15 14 4 3 10 12 5 3 32 17 16 3 13 18 2 1 0
- 0 0 13 12 6 1 18 6 5 10 1 0 2 4 48 200 19 18 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Umacron" xMin="62" yMin="-37" xMax="1168" yMax="1728">
- <contour>
- <pt x="185" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="519" y="1480" on="1"/>
- <pt x="519" y="1357" on="1"/>
- <pt x="383" y="1357" on="1"/>
- <pt x="383" y="523" on="1"/>
- <pt x="383" y="313" on="0"/>
- <pt x="455" y="200" on="1"/>
- <pt x="526" y="86" on="0"/>
- <pt x="656" y="86" on="1"/>
- <pt x="921" y="86" on="0"/>
- <pt x="921" y="532" on="1"/>
- <pt x="921" y="1357" on="1"/>
- <pt x="785" y="1357" on="1"/>
- <pt x="785" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="496" on="1"/>
- <pt x="1044" y="244" on="0"/>
- <pt x="933" y="104" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="621" y="-37" on="1"/>
- <pt x="185" y="-37" on="0"/>
- <pt x="185" y="550" on="1"/>
- </contour>
- <contour>
- <pt x="303" y="1604" on="1"/>
- <pt x="303" y="1728" on="1"/>
- <pt x="994" y="1728" on="1"/>
- <pt x="994" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 101 values pushed */
- 0 0 10 5 23 48 200 23 2 1 25 19 18 17 14 13 12 6 5 4 1 0 12 2 2
- 3 0 0 0 29 26 6 1 27 1 4 48 200 28 27 1 0 16 15 3 2 0 3 14 29
- 28 2 18 12 3 15 14 4 3 4 12 5 3 27 26 2 5 0 3 17 16 2 13 18 2
- 1 0 0 0 13 12 6 1 18 6 5 10 1 0 2 4 48 200 19 18 1 25 0 1 2
- 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Unterkomma" xMin="464" yMin="-432" xMax="806" yMax="-111">
- <contour>
- <pt x="464" y="-421" on="1"/>
- <pt x="464" y="-336" on="1"/>
- <pt x="521" y="-345" on="0"/>
- <pt x="561" y="-345" on="1"/>
- <pt x="670" y="-345" on="0"/>
- <pt x="670" y="-278" on="1"/>
- <pt x="670" y="-205" on="0"/>
- <pt x="513" y="-188" on="1"/>
- <pt x="513" y="-111" on="1"/>
- <pt x="647" y="-114" on="0"/>
- <pt x="713" y="-143" on="1"/>
- <pt x="806" y="-185" on="0"/>
- <pt x="806" y="-280" on="1"/>
- <pt x="806" y="-432" on="0"/>
- <pt x="588" y="-432" on="1"/>
- <pt x="530" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 0 0 3 32 14 48 200 14 8 7 1 0 14 0 0 5 20 12 48 200 12 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Uogonek" xMin="62" yMin="-370" xMax="1168" yMax="1480">
- <contour>
- <pt x="185" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="519" y="1480" on="1"/>
- <pt x="519" y="1357" on="1"/>
- <pt x="383" y="1357" on="1"/>
- <pt x="383" y="523" on="1"/>
- <pt x="383" y="313" on="0"/>
- <pt x="455" y="200" on="1"/>
- <pt x="526" y="86" on="0"/>
- <pt x="656" y="86" on="1"/>
- <pt x="921" y="86" on="0"/>
- <pt x="921" y="532" on="1"/>
- <pt x="921" y="1357" on="1"/>
- <pt x="785" y="1357" on="1"/>
- <pt x="785" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="496" on="1"/>
- <pt x="1044" y="244" on="0"/>
- <pt x="933" y="104" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="621" y="-37" on="1"/>
- <pt x="185" y="-37" on="0"/>
- <pt x="185" y="550" on="1"/>
- </contour>
- <contour>
- <pt x="686" y="0" on="1"/>
- <pt x="793" y="0" on="1"/>
- <pt x="664" y="-81" on="0"/>
- <pt x="664" y="-179" on="1"/>
- <pt x="664" y="-275" on="0"/>
- <pt x="779" y="-275" on="1"/>
- <pt x="833" y="-275" on="0"/>
- <pt x="870" y="-260" on="1"/>
- <pt x="870" y="-341" on="1"/>
- <pt x="808" y="-370" on="0"/>
- <pt x="730" y="-370" on="1"/>
- <pt x="528" y="-370" on="0"/>
- <pt x="528" y="-213" on="1"/>
- <pt x="528" y="-90" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 100 values pushed */
- 0 0 31 17 36 10 5 23 48 200 23 2 1 25 19 18 17 14 13 12 6 5 4 1 0
- 12 2 2 3 0 1 34 33 27 26 4 13 36 2 0 16 15 3 2 0 3 14 0 0 29
- 20 38 48 200 38 38 34 33 27 26 15 14 4 3 9 12 5 3 17 16 2 13 18 2 1
- 0 0 0 13 12 6 1 18 6 5 10 1 0 2 4 48 200 19 18 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Uring" xMin="62" yMin="-37" xMax="1168" yMax="2033">
- <contour>
- <pt x="185" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="519" y="1480" on="1"/>
- <pt x="519" y="1357" on="1"/>
- <pt x="383" y="1357" on="1"/>
- <pt x="383" y="523" on="1"/>
- <pt x="383" y="313" on="0"/>
- <pt x="455" y="200" on="1"/>
- <pt x="526" y="86" on="0"/>
- <pt x="656" y="86" on="1"/>
- <pt x="921" y="86" on="0"/>
- <pt x="921" y="532" on="1"/>
- <pt x="921" y="1357" on="1"/>
- <pt x="785" y="1357" on="1"/>
- <pt x="785" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="496" on="1"/>
- <pt x="1044" y="244" on="0"/>
- <pt x="933" y="104" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="621" y="-37" on="1"/>
- <pt x="185" y="-37" on="0"/>
- <pt x="185" y="550" on="1"/>
- </contour>
- <contour>
- <pt x="606" y="2033" on="1"/>
- <pt x="700" y="2033" on="0"/>
- <pt x="766" y="1967" on="1"/>
- <pt x="833" y="1901" on="0"/>
- <pt x="833" y="1807" on="1"/>
- <pt x="833" y="1710" on="0"/>
- <pt x="766" y="1645" on="1"/>
- <pt x="700" y="1579" on="0"/>
- <pt x="604" y="1579" on="1"/>
- <pt x="521" y="1579" on="0"/>
- <pt x="459" y="1633" on="1"/>
- <pt x="379" y="1703" on="0"/>
- <pt x="379" y="1806" on="1"/>
- <pt x="379" y="1900" on="0"/>
- <pt x="446" y="1966" on="1"/>
- <pt x="512" y="2033" on="0"/>
- </contour>
- <contour>
- <pt x="606" y="1946" on="1"/>
- <pt x="549" y="1946" on="0"/>
- <pt x="507" y="1905" on="1"/>
- <pt x="465" y="1865" on="0"/>
- <pt x="465" y="1806" on="1"/>
- <pt x="465" y="1748" on="0"/>
- <pt x="506" y="1707" on="1"/>
- <pt x="548" y="1665" on="0"/>
- <pt x="604" y="1665" on="1"/>
- <pt x="658" y="1665" on="0"/>
- <pt x="697" y="1698" on="1"/>
- <pt x="747" y="1741" on="0"/>
- <pt x="747" y="1807" on="1"/>
- <pt x="747" y="1865" on="0"/>
- <pt x="705" y="1905" on="1"/>
- <pt x="664" y="1946" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 100 values pushed */
- 0 0 50 32 34 42 32 26 10 5 23 48 200 23 2 1 25 19 18 17 14 13 12 6 5
- 4 1 0 12 2 2 3 0 34 26 2 16 15 3 2 0 3 14 0 0 54 32 30 46 32
- 38 48 200 30 30 15 14 4 3 5 12 5 3 38 38 5 0 2 17 16 2 13 18 2 1
- 0 0 0 13 12 6 1 18 6 5 10 1 0 2 4 48 200 19 18 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Utilde" xMin="62" yMin="-37" xMax="1168" yMax="1839">
- <contour>
- <pt x="185" y="1357" on="1"/>
- <pt x="62" y="1357" on="1"/>
- <pt x="62" y="1480" on="1"/>
- <pt x="519" y="1480" on="1"/>
- <pt x="519" y="1357" on="1"/>
- <pt x="383" y="1357" on="1"/>
- <pt x="383" y="523" on="1"/>
- <pt x="383" y="313" on="0"/>
- <pt x="455" y="200" on="1"/>
- <pt x="526" y="86" on="0"/>
- <pt x="656" y="86" on="1"/>
- <pt x="921" y="86" on="0"/>
- <pt x="921" y="532" on="1"/>
- <pt x="921" y="1357" on="1"/>
- <pt x="785" y="1357" on="1"/>
- <pt x="785" y="1480" on="1"/>
- <pt x="1168" y="1480" on="1"/>
- <pt x="1168" y="1357" on="1"/>
- <pt x="1044" y="1357" on="1"/>
- <pt x="1044" y="496" on="1"/>
- <pt x="1044" y="244" on="0"/>
- <pt x="933" y="104" on="1"/>
- <pt x="823" y="-37" on="0"/>
- <pt x="621" y="-37" on="1"/>
- <pt x="185" y="-37" on="0"/>
- <pt x="185" y="550" on="1"/>
- </contour>
- <contour>
- <pt x="284" y="1604" on="1"/>
- <pt x="290" y="1699" on="0"/>
- <pt x="315" y="1749" on="1"/>
- <pt x="360" y="1839" on="0"/>
- <pt x="469" y="1839" on="1"/>
- <pt x="541" y="1839" on="0"/>
- <pt x="604" y="1800" on="1"/>
- <pt x="664" y="1763" on="1"/>
- <pt x="726" y="1725" on="0"/>
- <pt x="760" y="1725" on="1"/>
- <pt x="828" y="1725" on="0"/>
- <pt x="839" y="1839" on="1"/>
- <pt x="950" y="1839" on="1"/>
- <pt x="943" y="1745" on="0"/>
- <pt x="918" y="1695" on="1"/>
- <pt x="872" y="1604" on="0"/>
- <pt x="765" y="1604" on="1"/>
- <pt x="692" y="1604" on="0"/>
- <pt x="629" y="1643" on="1"/>
- <pt x="569" y="1680" on="1"/>
- <pt x="509" y="1717" on="0"/>
- <pt x="473" y="1717" on="1"/>
- <pt x="405" y="1717" on="0"/>
- <pt x="394" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 99 values pushed */
- 0 0 47 5 30 35 5 42 10 5 23 48 200 23 2 1 25 19 18 17 14 13 12 6 5
- 4 1 0 12 2 2 3 0 49 38 37 26 4 13 42 30 2 16 15 3 2 0 3 14 38
- 18 12 2 49 37 15 14 4 3 6 12 5 3 26 5 0 2 17 16 2 13 18 2 1 0
- 0 0 13 12 6 1 18 6 5 10 1 0 2 4 48 200 19 18 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="V" xMin="26" yMin="0" xMax="1204" yMax="1480">
- <contour>
- <pt x="520" y="0" on="1"/>
- <pt x="100" y="1357" on="1"/>
- <pt x="26" y="1357" on="1"/>
- <pt x="26" y="1480" on="1"/>
- <pt x="463" y="1480" on="1"/>
- <pt x="463" y="1357" on="1"/>
- <pt x="306" y="1357" on="1"/>
- <pt x="652" y="237" on="1"/>
- <pt x="654" y="237" on="1"/>
- <pt x="1001" y="1357" on="1"/>
- <pt x="858" y="1357" on="1"/>
- <pt x="858" y="1480" on="1"/>
- <pt x="1204" y="1480" on="1"/>
- <pt x="1204" y="1357" on="1"/>
- <pt x="1130" y="1357" on="1"/>
- <pt x="709" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 50 values pushed */
- 8 7 2 1 0 3 0 0 14 13 10 9 6 5 2 1 6 7 3 1 4 48 200 15 0
- 1 0 12 11 4 3 0 3 14 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="W" xMin="23" yMin="0" xMax="1207" yMax="1480">
- <contour>
- <pt x="242" y="0" on="1"/>
- <pt x="72" y="1357" on="1"/>
- <pt x="23" y="1357" on="1"/>
- <pt x="23" y="1480" on="1"/>
- <pt x="332" y="1480" on="1"/>
- <pt x="332" y="1357" on="1"/>
- <pt x="234" y="1357" on="1"/>
- <pt x="368" y="281" on="1"/>
- <pt x="370" y="281" on="1"/>
- <pt x="556" y="1258" on="1"/>
- <pt x="712" y="1258" on="1"/>
- <pt x="896" y="285" on="1"/>
- <pt x="899" y="285" on="1"/>
- <pt x="1033" y="1357" on="1"/>
- <pt x="934" y="1357" on="1"/>
- <pt x="934" y="1480" on="1"/>
- <pt x="1207" y="1480" on="1"/>
- <pt x="1207" y="1357" on="1"/>
- <pt x="1157" y="1357" on="1"/>
- <pt x="987" y="0" on="1"/>
- <pt x="799" y="0" on="1"/>
- <pt x="617" y="974" on="1"/>
- <pt x="615" y="974" on="1"/>
- <pt x="431" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 63 values pushed */
- 18 17 14 13 6 5 2 1 8 3 9 3 22 21 12 11 8 7 6 9 0 3 10 9 1
- 23 20 19 0 3 2 0 16 15 4 3 0 3 14 23 22 21 20 19 18 17 16 15 14 13
- 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Wcircumflex" xMin="23" yMin="0" xMax="1207" yMax="1925">
- <contour>
- <pt x="242" y="0" on="1"/>
- <pt x="72" y="1357" on="1"/>
- <pt x="23" y="1357" on="1"/>
- <pt x="23" y="1480" on="1"/>
- <pt x="332" y="1480" on="1"/>
- <pt x="332" y="1357" on="1"/>
- <pt x="234" y="1357" on="1"/>
- <pt x="368" y="281" on="1"/>
- <pt x="370" y="281" on="1"/>
- <pt x="556" y="1258" on="1"/>
- <pt x="712" y="1258" on="1"/>
- <pt x="896" y="285" on="1"/>
- <pt x="899" y="285" on="1"/>
- <pt x="1033" y="1357" on="1"/>
- <pt x="934" y="1357" on="1"/>
- <pt x="934" y="1480" on="1"/>
- <pt x="1207" y="1480" on="1"/>
- <pt x="1207" y="1357" on="1"/>
- <pt x="1157" y="1357" on="1"/>
- <pt x="987" y="0" on="1"/>
- <pt x="799" y="0" on="1"/>
- <pt x="617" y="974" on="1"/>
- <pt x="615" y="974" on="1"/>
- <pt x="431" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="267" y="1604" on="1"/>
- <pt x="523" y="1925" on="1"/>
- <pt x="742" y="1925" on="1"/>
- <pt x="998" y="1604" on="1"/>
- <pt x="875" y="1604" on="1"/>
- <pt x="634" y="1806" on="1"/>
- <pt x="631" y="1806" on="1"/>
- <pt x="390" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 84 values pushed */
- 31 30 29 28 27 24 6 25 3 3 18 17 14 13 6 5 2 1 8 3 9 3 22 21 12
- 11 8 7 6 9 0 3 26 25 1 10 9 1 23 20 19 0 3 3 0 16 15 4 3 0
- 3 14 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
- 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="X" xMin="49" yMin="0" xMax="1179" yMax="1480">
- <contour>
- <pt x="49" y="0" on="1"/>
- <pt x="49" y="123" on="1"/>
- <pt x="160" y="123" on="1"/>
- <pt x="510" y="730" on="1"/>
- <pt x="148" y="1357" on="1"/>
- <pt x="49" y="1357" on="1"/>
- <pt x="49" y="1480" on="1"/>
- <pt x="469" y="1480" on="1"/>
- <pt x="469" y="1357" on="1"/>
- <pt x="369" y="1357" on="1"/>
- <pt x="657" y="857" on="1"/>
- <pt x="946" y="1357" on="1"/>
- <pt x="818" y="1357" on="1"/>
- <pt x="818" y="1480" on="1"/>
- <pt x="1179" y="1480" on="1"/>
- <pt x="1179" y="1357" on="1"/>
- <pt x="1074" y="1357" on="1"/>
- <pt x="721" y="746" on="1"/>
- <pt x="1081" y="123" on="1"/>
- <pt x="1179" y="123" on="1"/>
- <pt x="1179" y="0" on="1"/>
- <pt x="736" y="0" on="1"/>
- <pt x="736" y="123" on="1"/>
- <pt x="860" y="123" on="1"/>
- <pt x="574" y="619" on="1"/>
- <pt x="288" y="123" on="1"/>
- <pt x="442" y="123" on="1"/>
- <pt x="442" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 24 17 16 15 12 11 10 9 8 5 4 3 12 6 1 3 0 0 26 25 23 22 19 18 2
- 1 6 7 0 1 4 48 200 27 21 20 0 3 0 14 13 7 6 0 3 14 27 26 25 24
- 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Y" xMin="27" yMin="0" xMax="1201" yMax="1480">
- <contour>
- <pt x="294" y="0" on="1"/>
- <pt x="294" y="123" on="1"/>
- <pt x="516" y="123" on="1"/>
- <pt x="516" y="660" on="1"/>
- <pt x="113" y="1357" on="1"/>
- <pt x="27" y="1357" on="1"/>
- <pt x="27" y="1480" on="1"/>
- <pt x="490" y="1480" on="1"/>
- <pt x="490" y="1357" on="1"/>
- <pt x="341" y="1357" on="1"/>
- <pt x="656" y="813" on="1"/>
- <pt x="658" y="813" on="1"/>
- <pt x="973" y="1357" on="1"/>
- <pt x="825" y="1357" on="1"/>
- <pt x="825" y="1480" on="1"/>
- <pt x="1201" y="1480" on="1"/>
- <pt x="1201" y="1357" on="1"/>
- <pt x="1115" y="1357" on="1"/>
- <pt x="713" y="661" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="935" y="123" on="1"/>
- <pt x="935" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 18 11 10 3 4 4 1 3 0 0 17 16 13 12 9 8 5 4 6 7 6 20 19 2 1
- 6 3 0 2 4 48 200 21 0 1 0 15 14 7 6 0 3 14 11 10 2 18 2 3 21
- 20 17 16 15 14 13 12 8 13 18 9 8 7 6 5 4 1 0 8 13 2 0 0 19 18
- 10 1 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Yacute" xMin="27" yMin="0" xMax="1201" yMax="1925">
- <contour>
- <pt x="294" y="0" on="1"/>
- <pt x="294" y="123" on="1"/>
- <pt x="516" y="123" on="1"/>
- <pt x="516" y="660" on="1"/>
- <pt x="113" y="1357" on="1"/>
- <pt x="27" y="1357" on="1"/>
- <pt x="27" y="1480" on="1"/>
- <pt x="490" y="1480" on="1"/>
- <pt x="490" y="1357" on="1"/>
- <pt x="341" y="1357" on="1"/>
- <pt x="656" y="813" on="1"/>
- <pt x="658" y="813" on="1"/>
- <pt x="973" y="1357" on="1"/>
- <pt x="825" y="1357" on="1"/>
- <pt x="825" y="1480" on="1"/>
- <pt x="1201" y="1480" on="1"/>
- <pt x="1201" y="1357" on="1"/>
- <pt x="1115" y="1357" on="1"/>
- <pt x="713" y="661" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="935" y="123" on="1"/>
- <pt x="935" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="534" y="1604" on="1"/>
- <pt x="750" y="1925" on="1"/>
- <pt x="978" y="1925" on="1"/>
- <pt x="657" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 100 values pushed */
- 25 22 2 23 6 3 18 11 10 3 4 4 1 3 0 0 17 16 13 12 9 8 5 4 6
- 7 6 20 19 2 1 6 3 0 2 4 48 200 24 23 1 21 0 1 2 0 15 14 7 6
- 0 3 14 25 22 11 10 4 18 2 3 24 23 21 20 17 16 15 14 13 12 10 13 18 9
- 8 7 6 5 4 1 0 8 13 2 0 0 19 18 10 1 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ycircumflex" xMin="27" yMin="0" xMax="1201" yMax="1925">
- <contour>
- <pt x="294" y="0" on="1"/>
- <pt x="294" y="123" on="1"/>
- <pt x="516" y="123" on="1"/>
- <pt x="516" y="660" on="1"/>
- <pt x="113" y="1357" on="1"/>
- <pt x="27" y="1357" on="1"/>
- <pt x="27" y="1480" on="1"/>
- <pt x="490" y="1480" on="1"/>
- <pt x="490" y="1357" on="1"/>
- <pt x="341" y="1357" on="1"/>
- <pt x="656" y="813" on="1"/>
- <pt x="658" y="813" on="1"/>
- <pt x="973" y="1357" on="1"/>
- <pt x="825" y="1357" on="1"/>
- <pt x="825" y="1480" on="1"/>
- <pt x="1201" y="1480" on="1"/>
- <pt x="1201" y="1357" on="1"/>
- <pt x="1115" y="1357" on="1"/>
- <pt x="713" y="661" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="935" y="123" on="1"/>
- <pt x="935" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="291" y="1604" on="1"/>
- <pt x="547" y="1925" on="1"/>
- <pt x="766" y="1925" on="1"/>
- <pt x="1022" y="1604" on="1"/>
- <pt x="899" y="1604" on="1"/>
- <pt x="658" y="1806" on="1"/>
- <pt x="655" y="1806" on="1"/>
- <pt x="414" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 108 values pushed */
- 29 28 27 26 25 22 6 23 6 3 18 11 10 3 4 4 1 3 0 0 17 16 13 12 9
- 8 5 4 6 7 6 20 19 2 1 6 3 0 2 4 48 200 24 23 1 21 0 1 2 0
- 15 14 7 6 0 3 14 28 27 23 11 10 5 18 2 3 26 25 24 21 20 17 16 15 14
- 13 12 11 13 18 29 22 9 8 7 6 5 4 1 0 10 13 2 0 0 19 18 10 1 2
- 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ydieresis" xMin="27" yMin="0" xMax="1201" yMax="1801">
- <contour>
- <pt x="294" y="0" on="1"/>
- <pt x="294" y="123" on="1"/>
- <pt x="516" y="123" on="1"/>
- <pt x="516" y="660" on="1"/>
- <pt x="113" y="1357" on="1"/>
- <pt x="27" y="1357" on="1"/>
- <pt x="27" y="1480" on="1"/>
- <pt x="490" y="1480" on="1"/>
- <pt x="490" y="1357" on="1"/>
- <pt x="341" y="1357" on="1"/>
- <pt x="656" y="813" on="1"/>
- <pt x="658" y="813" on="1"/>
- <pt x="973" y="1357" on="1"/>
- <pt x="825" y="1357" on="1"/>
- <pt x="825" y="1480" on="1"/>
- <pt x="1201" y="1480" on="1"/>
- <pt x="1201" y="1357" on="1"/>
- <pt x="1115" y="1357" on="1"/>
- <pt x="713" y="661" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="935" y="123" on="1"/>
- <pt x="935" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="324" y="1604" on="1"/>
- <pt x="324" y="1801" on="1"/>
- <pt x="521" y="1801" on="1"/>
- <pt x="521" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="793" y="1604" on="1"/>
- <pt x="793" y="1801" on="1"/>
- <pt x="990" y="1801" on="1"/>
- <pt x="990" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 124 values pushed */
- 18 11 10 3 4 4 1 3 0 0 29 26 25 22 10 3 23 17 16 13 12 9 8 5 4
- 6 7 6 20 19 2 1 6 3 0 3 4 48 200 28 27 24 23 3 21 0 1 2 0 15
- 14 7 6 0 3 14 21 20 14 13 12 5 28 26 3 11 10 2 18 24 3 9 8 7 3
- 2 22 3 17 16 15 3 13 28 6 5 4 1 0 5 13 22 0 0 27 26 10 1 28 25
- 24 10 1 22 19 18 10 1 2 3 4 48 200 29 28 1 23 22 1 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Z" xMin="148" yMin="0" xMax="1081" yMax="1480">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="136" on="1"/>
- <pt x="848" y="1357" on="1"/>
- <pt x="290" y="1357" on="1"/>
- <pt x="290" y="1086" on="1"/>
- <pt x="167" y="1086" on="1"/>
- <pt x="167" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="368" y="136" on="1"/>
- <pt x="957" y="136" on="1"/>
- <pt x="957" y="432" on="1"/>
- <pt x="1081" y="432" on="1"/>
- <pt x="1081" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 73 values pushed */
- 12 11 5 4 4 2 1 3 0 0 8 3 2 6 2 6 10 9 1 20 2 0 2 4 48
- 200 13 0 1 0 7 6 0 14 8 7 2 12 10 3 9 2 2 10 3 3 1 0 5 0
- 0 11 10 6 1 12 4 3 6 1 5 2 4 48 200 13 12 1 6 5 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Zacute" xMin="148" yMin="0" xMax="1081" yMax="1925">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="136" on="1"/>
- <pt x="848" y="1357" on="1"/>
- <pt x="290" y="1357" on="1"/>
- <pt x="290" y="1086" on="1"/>
- <pt x="167" y="1086" on="1"/>
- <pt x="167" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="368" y="136" on="1"/>
- <pt x="957" y="136" on="1"/>
- <pt x="957" y="432" on="1"/>
- <pt x="1081" y="432" on="1"/>
- <pt x="1081" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="491" y="1604" on="1"/>
- <pt x="707" y="1925" on="1"/>
- <pt x="935" y="1925" on="1"/>
- <pt x="614" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 17 14 2 15 6 3 12 11 5 4 4 2 1 3 0 0 8 3 2 6 2 6 10 9 1
- 20 2 0 2 4 48 200 16 15 1 13 0 1 2 0 7 6 0 14 8 7 2 12 10 3
- 17 16 15 14 9 2 6 10 3 3 1 0 5 0 0 11 10 6 1 12 4 3 6 1 5
- 2 4 48 200 13 12 1 6 5 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Zcaron" xMin="148" yMin="0" xMax="1081" yMax="1925">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="136" on="1"/>
- <pt x="848" y="1357" on="1"/>
- <pt x="290" y="1357" on="1"/>
- <pt x="290" y="1086" on="1"/>
- <pt x="167" y="1086" on="1"/>
- <pt x="167" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="368" y="136" on="1"/>
- <pt x="957" y="136" on="1"/>
- <pt x="957" y="432" on="1"/>
- <pt x="1081" y="432" on="1"/>
- <pt x="1081" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="980" y="1925" on="1"/>
- <pt x="723" y="1604" on="1"/>
- <pt x="505" y="1604" on="1"/>
- <pt x="248" y="1925" on="1"/>
- <pt x="372" y="1925" on="1"/>
- <pt x="613" y="1723" on="1"/>
- <pt x="615" y="1723" on="1"/>
- <pt x="857" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 97 values pushed */
- 12 11 5 4 4 2 1 3 21 20 19 18 17 14 6 13 15 0 0 8 3 2 6 2 6
- 10 9 1 20 2 0 2 4 48 200 16 15 1 13 0 1 2 0 7 6 0 14 14 8 7
- 3 12 10 3 21 20 19 18 16 15 9 2 8 10 3 3 17 3 5 2 1 0 5 0 0
- 11 10 6 1 12 4 3 6 1 5 2 4 48 200 13 12 1 6 5 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Zdotaccent" xMin="148" yMin="0" xMax="1081" yMax="1801">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="136" on="1"/>
- <pt x="848" y="1357" on="1"/>
- <pt x="290" y="1357" on="1"/>
- <pt x="290" y="1086" on="1"/>
- <pt x="167" y="1086" on="1"/>
- <pt x="167" y="1480" on="1"/>
- <pt x="1068" y="1480" on="1"/>
- <pt x="1068" y="1357" on="1"/>
- <pt x="368" y="136" on="1"/>
- <pt x="957" y="136" on="1"/>
- <pt x="957" y="432" on="1"/>
- <pt x="1081" y="432" on="1"/>
- <pt x="1081" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="516" y="1604" on="1"/>
- <pt x="516" y="1801" on="1"/>
- <pt x="713" y="1801" on="1"/>
- <pt x="713" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 92 values pushed */
- 12 11 5 4 4 2 1 3 0 0 17 14 10 1 15 8 3 2 6 2 6 10 9 1 20
- 2 0 3 4 48 200 16 15 1 13 0 1 2 0 7 6 0 14 8 7 2 12 10 3 2
- 10 16 2 9 14 3 2 1 0 5 0 0 17 16 10 1 14 11 10 6 1 12 4 3 6
- 1 5 3 4 48 200 15 14 1 13 12 1 6 5 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="a" xMin="148" yMin="-25" xMax="1167" yMax="1111">
- <contour>
- <pt x="834" y="119" on="1"/>
- <pt x="661" y="-25" on="0"/>
- <pt x="483" y="-25" on="1"/>
- <pt x="330" y="-25" on="0"/>
- <pt x="239" y="61" on="1"/>
- <pt x="148" y="146" on="0"/>
- <pt x="148" y="293" on="1"/>
- <pt x="148" y="483" on="0"/>
- <pt x="290" y="569" on="1"/>
- <pt x="432" y="654" on="0"/>
- <pt x="749" y="654" on="1"/>
- <pt x="834" y="654" on="1"/>
- <pt x="834" y="822" on="1"/>
- <pt x="834" y="987" on="0"/>
- <pt x="630" y="987" on="1"/>
- <pt x="527" y="987" on="0"/>
- <pt x="373" y="929" on="1"/>
- <pt x="348" y="802" on="1"/>
- <pt x="225" y="802" on="1"/>
- <pt x="225" y="1018" on="1"/>
- <pt x="454" y="1111" on="0"/>
- <pt x="692" y="1111" on="1"/>
- <pt x="881" y="1111" on="0"/>
- <pt x="956" y="1046" on="1"/>
- <pt x="1031" y="980" on="0"/>
- <pt x="1031" y="819" on="1"/>
- <pt x="1031" y="123" on="1"/>
- <pt x="1167" y="123" on="1"/>
- <pt x="1167" y="0" on="1"/>
- <pt x="854" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="834" y="278" on="1"/>
- <pt x="834" y="531" on="1"/>
- <pt x="781" y="531" on="1"/>
- <pt x="551" y="531" on="0"/>
- <pt x="454" y="479" on="1"/>
- <pt x="358" y="427" on="0"/>
- <pt x="358" y="301" on="1"/>
- <pt x="358" y="123" on="0"/>
- <pt x="544" y="123" on="1"/>
- <pt x="691" y="123" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 0 0 38 14 2 14 5 21 48 200 21 1 2 2 1 32 31 30 27 26 25 19 18 17 16
- 12 11 10 0 14 1 28 3 0 29 28 1 0 14 0 0 36 39 6 48 200 29 25 0 2
- 32 17 16 10 4 0 18 3 28 27 2 13 25 6 18 0 0 31 30 12 11 0 10 4 25
- 1 4 48 200 26 25 1 19 18 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="aacute" xMin="148" yMin="-25" xMax="1167" yMax="1604">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="160" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="abreve" xMin="148" yMin="-25" xMax="1167" yMax="1579">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="breve" x="12" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="acircumflex" xMin="148" yMin="-25" xMax="1167" yMax="1604">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="27" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="acute" xMin="392" yMin="1283" xMax="836" yMax="1604">
- <contour>
- <pt x="392" y="1283" on="1"/>
- <pt x="608" y="1604" on="1"/>
- <pt x="836" y="1604" on="1"/>
- <pt x="515" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 12 values pushed */
- 3 0 1 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="adieresis" xMin="148" yMin="-25" xMax="1167" yMax="1480">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="35" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ae" xMin="37" yMin="-25" xMax="1192" yMax="1110">
- <contour>
- <pt x="589" y="154" on="1"/>
- <pt x="552" y="73" on="0"/>
- <pt x="508" y="33" on="1"/>
- <pt x="443" y="-25" on="0"/>
- <pt x="347" y="-25" on="1"/>
- <pt x="216" y="-25" on="0"/>
- <pt x="127" y="70" on="1"/>
- <pt x="37" y="164" on="0"/>
- <pt x="37" y="307" on="1"/>
- <pt x="37" y="475" on="0"/>
- <pt x="154" y="571" on="1"/>
- <pt x="270" y="666" on="0"/>
- <pt x="476" y="666" on="1"/>
- <pt x="519" y="666" on="1"/>
- <pt x="519" y="807" on="1"/>
- <pt x="519" y="917" on="0"/>
- <pt x="498" y="952" on="1"/>
- <pt x="476" y="987" on="0"/>
- <pt x="408" y="987" on="1"/>
- <pt x="345" y="987" on="0"/>
- <pt x="284" y="947" on="1"/>
- <pt x="259" y="811" on="1"/>
- <pt x="136" y="811" on="1"/>
- <pt x="136" y="1043" on="1"/>
- <pt x="289" y="1110" on="0"/>
- <pt x="434" y="1110" on="1"/>
- <pt x="531" y="1110" on="0"/>
- <pt x="592" y="1062" on="1"/>
- <pt x="628" y="1033" on="0"/>
- <pt x="658" y="979" on="1"/>
- <pt x="736" y="1110" on="0"/>
- <pt x="879" y="1110" on="1"/>
- <pt x="1025" y="1110" on="0"/>
- <pt x="1106" y="974" on="1"/>
- <pt x="1186" y="838" on="0"/>
- <pt x="1186" y="592" on="1"/>
- <pt x="1186" y="543" on="1"/>
- <pt x="704" y="543" on="1"/>
- <pt x="707" y="492" on="1"/>
- <pt x="729" y="123" on="0"/>
- <pt x="948" y="123" on="1"/>
- <pt x="1032" y="123" on="0"/>
- <pt x="1192" y="191" on="1"/>
- <pt x="1192" y="43" on="1"/>
- <pt x="1016" y="-25" on="0"/>
- <pt x="885" y="-25" on="1"/>
- <pt x="719" y="-25" on="0"/>
- </contour>
- <contour>
- <pt x="519" y="228" on="1"/>
- <pt x="519" y="543" on="1"/>
- <pt x="488" y="543" on="1"/>
- <pt x="241" y="543" on="0"/>
- <pt x="241" y="315" on="1"/>
- <pt x="241" y="136" on="0"/>
- <pt x="382" y="136" on="1"/>
- <pt x="467" y="136" on="0"/>
- </contour>
- <contour>
- <pt x="704" y="666" on="1"/>
- <pt x="984" y="666" on="1"/>
- <pt x="981" y="844" on="0"/>
- <pt x="949" y="916" on="1"/>
- <pt x="918" y="987" on="0"/>
- <pt x="859" y="987" on="1"/>
- <pt x="725" y="987" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 111 values pushed */
- 0 0 60 5 31 53 30 4 40 14 45 18 5 25 48 200 45 2 31 1 25 1 4 2 1
- 29 23 22 21 20 14 6 1 12 3 0 35 12 36 2 1 47 43 42 0 4 36 2 3 0
- 0 0 49 48 37 36 6 3 12 1 4 48 200 56 55 13 12 3 0 14 0 0 51 24 8
- 48 200 56 55 37 36 35 29 0 7 42 13 3 49 21 20 12 4 13 22 3 8 22 43 42
- 1 48 47 14 13 3 23 22 1 3 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="afii00208" xMin="0" yMin="543" xMax="1229" yMax="666">
- <contour>
- <pt x="0" y="543" on="1"/>
- <pt x="0" y="666" on="1"/>
- <pt x="1229" y="666" on="1"/>
- <pt x="1229" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 6 1 1 1 4 48 200 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="agrave" xMin="148" yMin="-25" xMax="1167" yMax="1604">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="-38" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="amacron" xMin="148" yMin="-25" xMax="1167" yMax="1407">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="macron" x="22" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ampersand" xMin="57" yMin="-37" xMax="1192" yMax="1518">
- <contour>
- <pt x="928" y="0" on="1"/>
- <pt x="834" y="110" on="1"/>
- <pt x="653" y="-37" on="0"/>
- <pt x="478" y="-37" on="1"/>
- <pt x="290" y="-37" on="0"/>
- <pt x="174" y="88" on="1"/>
- <pt x="57" y="213" on="0"/>
- <pt x="57" y="413" on="1"/>
- <pt x="57" y="591" on="0"/>
- <pt x="164" y="728" on="1"/>
- <pt x="226" y="808" on="0"/>
- <pt x="345" y="889" on="1"/>
- <pt x="273" y="1056" on="0"/>
- <pt x="273" y="1188" on="1"/>
- <pt x="273" y="1340" on="0"/>
- <pt x="357" y="1429" on="1"/>
- <pt x="441" y="1518" on="0"/>
- <pt x="588" y="1518" on="1"/>
- <pt x="740" y="1518" on="0"/>
- <pt x="814" y="1436" on="1"/>
- <pt x="878" y="1365" on="0"/>
- <pt x="878" y="1240" on="1"/>
- <pt x="878" y="1095" on="0"/>
- <pt x="767" y="979" on="1"/>
- <pt x="700" y="909" on="0"/>
- <pt x="572" y="836" on="1"/>
- <pt x="745" y="504" on="0"/>
- <pt x="879" y="332" on="1"/>
- <pt x="968" y="451" on="0"/>
- <pt x="969" y="632" on="1"/>
- <pt x="967" y="691" on="1"/>
- <pt x="868" y="691" on="1"/>
- <pt x="868" y="814" on="1"/>
- <pt x="1192" y="814" on="1"/>
- <pt x="1192" y="691" on="1"/>
- <pt x="1120" y="691" on="1"/>
- <pt x="1111" y="527" on="0"/>
- <pt x="1079" y="440" on="1"/>
- <pt x="1048" y="352" on="0"/>
- <pt x="958" y="240" on="1"/>
- <pt x="1068" y="123" on="1"/>
- <pt x="1192" y="123" on="1"/>
- <pt x="1192" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="757" y="208" on="1"/>
- <pt x="580" y="433" on="0"/>
- <pt x="405" y="785" on="1"/>
- <pt x="236" y="654" on="0"/>
- <pt x="236" y="441" on="1"/>
- <pt x="236" y="287" on="0"/>
- <pt x="311" y="199" on="1"/>
- <pt x="386" y="110" on="0"/>
- <pt x="515" y="110" on="1"/>
- <pt x="639" y="110" on="0"/>
- </contour>
- <contour>
- <pt x="518" y="938" on="1"/>
- <pt x="599" y="992" on="0"/>
- <pt x="640" y="1047" on="1"/>
- <pt x="699" y="1127" on="0"/>
- <pt x="699" y="1232" on="1"/>
- <pt x="699" y="1394" on="0"/>
- <pt x="584" y="1394" on="1"/>
- <pt x="452" y="1394" on="0"/>
- <pt x="452" y="1198" on="1"/>
- <pt x="452" y="1059" on="0"/>
- <pt x="511" y="950" on="1"/>
- <pt x="513" y="946" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 0 0 59 5 17 51 14 3 48 200 17 0 3 2 1 53 25 11 3 0 32 3 0 45 43
- 41 40 39 35 34 31 30 29 27 1 12 32 0 3 33 32 1 42 0 1 2 0 14 0 0
- 61 13 13 57 13 21 47 13 7 48 200 53 45 43 42 41 40 39 35 34 33 32 31 30 29
- 27 25 21 13 11 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="anoteleia" xMin="491" yMin="419" xMax="738" yMax="666">
- <contour>
- <pt x="491" y="419" on="1"/>
- <pt x="491" y="666" on="1"/>
- <pt x="738" y="666" on="1"/>
- <pt x="738" y="419" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 2 1 4 1 0 1 4 48 200 3 0 1 0 14 0 0 3 2 4 1 0 1 4
- 48 200 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="aogonek" xMin="148" yMin="-370" xMax="1167" yMax="1111">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="ogonek" x="282" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="aring" xMin="148" yMin="-25" xMax="1167" yMax="1737">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="ring" x="61" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="asciicircum" xMin="146" yMin="543" xMax="1084" yMax="1480">
- <contour>
- <pt x="146" y="543" on="1"/>
- <pt x="615" y="1480" on="1"/>
- <pt x="1084" y="543" on="1"/>
- <pt x="918" y="543" on="1"/>
- <pt x="615" y="1149" on="1"/>
- <pt x="311" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 18 values pushed */
- 4 1 2 13 0 5 3 2 0 3 0 14 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="asciitilde" xMin="121" yMin="412" xMax="1108" yMax="772">
- <contour>
- <pt x="269" y="444" on="1"/>
- <pt x="121" y="444" on="1"/>
- <pt x="124" y="550" on="0"/>
- <pt x="143" y="605" on="1"/>
- <pt x="201" y="772" on="0"/>
- <pt x="386" y="772" on="1"/>
- <pt x="484" y="772" on="0"/>
- <pt x="585" y="703" on="1"/>
- <pt x="697" y="626" on="1"/>
- <pt x="764" y="580" on="1"/>
- <pt x="793" y="560" on="0"/>
- <pt x="839" y="560" on="1"/>
- <pt x="956" y="560" on="0"/>
- <pt x="960" y="740" on="1"/>
- <pt x="1108" y="740" on="1"/>
- <pt x="1105" y="634" on="0"/>
- <pt x="1086" y="579" on="1"/>
- <pt x="1028" y="412" on="0"/>
- <pt x="843" y="412" on="1"/>
- <pt x="744" y="412" on="0"/>
- <pt x="644" y="481" on="1"/>
- <pt x="532" y="558" on="1"/>
- <pt x="465" y="604" on="1"/>
- <pt x="436" y="624" on="0"/>
- <pt x="389" y="624" on="1"/>
- <pt x="273" y="624" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 27 values pushed */
- 0 0 24 16 5 11 16 18 48 200 5 13 18 0 14 13 1 1 0 1 2 0 14 14 13
- 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="asterisk" xMin="161" yMin="614" xMax="1068" yMax="1480">
- <contour>
- <pt x="459" y="615" on="1"/>
- <pt x="288" y="720" on="1"/>
- <pt x="523" y="991" on="1"/>
- <pt x="545" y="951" on="0"/>
- <pt x="599" y="937" on="1"/>
- </contour>
- <contour>
- <pt x="161" y="1073" on="1"/>
- <pt x="219" y="1263" on="1"/>
- <pt x="541" y="1112" on="1"/>
- <pt x="511" y="1080" on="0"/>
- <pt x="511" y="1044" on="1"/>
- <pt x="511" y="1036" on="0"/>
- <pt x="513" y="1021" on="1"/>
- </contour>
- <contour>
- <pt x="563" y="1129" on="1"/>
- <pt x="518" y="1480" on="1"/>
- <pt x="715" y="1480" on="1"/>
- <pt x="664" y="1129" on="1"/>
- <pt x="629" y="1142" on="0"/>
- <pt x="614" y="1142" on="1"/>
- <pt x="597" y="1142" on="0"/>
- </contour>
- <contour>
- <pt x="687" y="1111" on="1"/>
- <pt x="1011" y="1264" on="1"/>
- <pt x="1068" y="1071" on="1"/>
- <pt x="716" y="1023" on="1"/>
- <pt x="716" y="1026" on="0"/>
- <pt x="717" y="1031" on="1"/>
- <pt x="717" y="1034" on="1"/>
- <pt x="717" y="1037" on="1"/>
- <pt x="717" y="1081" on="0"/>
- </contour>
- <contour>
- <pt x="783" y="614" on="1"/>
- <pt x="622" y="936" on="1"/>
- <pt x="673" y="942" on="0"/>
- <pt x="702" y="986" on="1"/>
- <pt x="946" y="728" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 17 1 32 31 29 28 26 25 24 22 21 20 19 17 15 12 11 7 6 5 4 2 1 0 22
- 13 2 3 0 14 13 0 14 32 31 29 28 26 25 24 22 21 20 19 15 14 13 12 11 9
- 7 6 5 4 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MDAP[1]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="at" xMin="87" yMin="-37" xMax="1186" yMax="1517">
- <contour>
- <pt x="945" y="12" on="1"/>
- <pt x="794" y="-37" on="0"/>
- <pt x="691" y="-37" on="1"/>
- <pt x="415" y="-37" on="0"/>
- <pt x="251" y="166" on="1"/>
- <pt x="87" y="369" on="0"/>
- <pt x="87" y="719" on="1"/>
- <pt x="87" y="1074" on="0"/>
- <pt x="249" y="1296" on="1"/>
- <pt x="411" y="1517" on="0"/>
- <pt x="675" y="1517" on="1"/>
- <pt x="1068" y="1517" on="0"/>
- <pt x="1068" y="1042" on="1"/>
- <pt x="1068" y="414" on="1"/>
- <pt x="1186" y="414" on="1"/>
- <pt x="1186" y="291" on="1"/>
- <pt x="945" y="291" on="1"/>
- <pt x="945" y="658" on="1"/>
- <pt x="920" y="658" on="1"/>
- <pt x="882" y="499" on="0"/>
- <pt x="816" y="406" on="1"/>
- <pt x="730" y="284" on="0"/>
- <pt x="621" y="284" on="1"/>
- <pt x="517" y="284" on="0"/>
- <pt x="451" y="388" on="1"/>
- <pt x="384" y="492" on="0"/>
- <pt x="384" y="654" on="1"/>
- <pt x="384" y="873" on="0"/>
- <pt x="498" y="1025" on="1"/>
- <pt x="612" y="1178" on="0"/>
- <pt x="776" y="1178" on="1"/>
- <pt x="840" y="1178" on="0"/>
- <pt x="936" y="1152" on="1"/>
- <pt x="907" y="1287" on="0"/>
- <pt x="833" y="1343" on="1"/>
- <pt x="767" y="1394" on="0"/>
- <pt x="663" y="1394" on="1"/>
- <pt x="459" y="1394" on="0"/>
- <pt x="335" y="1212" on="1"/>
- <pt x="210" y="1029" on="0"/>
- <pt x="210" y="733" on="1"/>
- <pt x="210" y="436" on="0"/>
- <pt x="343" y="261" on="1"/>
- <pt x="475" y="86" on="0"/>
- <pt x="694" y="86" on="1"/>
- <pt x="811" y="86" on="0"/>
- <pt x="945" y="150" on="1"/>
- </contour>
- <contour>
- <pt x="945" y="927" on="1"/>
- <pt x="945" y="1038" on="1"/>
- <pt x="862" y="1086" on="0"/>
- <pt x="794" y="1086" on="1"/>
- <pt x="673" y="1086" on="0"/>
- <pt x="603" y="974" on="1"/>
- <pt x="532" y="862" on="0"/>
- <pt x="532" y="674" on="1"/>
- <pt x="532" y="565" on="0"/>
- <pt x="563" y="495" on="1"/>
- <pt x="593" y="426" on="0"/>
- <pt x="639" y="426" on="1"/>
- <pt x="709" y="426" on="0"/>
- <pt x="783" y="551" on="1"/>
- <pt x="855" y="672" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 90 values pushed */
- 0 0 58 14 22 50 17 30 44 5 2 36 5 10 48 200 10 0 2 2 30 1 48 47 32
- 30 18 17 14 13 12 9 0 15 3 0 22 1 46 22 0 3 15 2 3 0 16 15 1 0
- 14 0 0 54 16 26 40 6 6 48 200 15 14 2 13 12 32 18 26 6 0 0 0 48 47
- 46 17 16 0 6 5 12 1 4 48 200 13 12 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MDAP[1]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="atilde" xMin="148" yMin="-25" xMax="1167" yMax="1518">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="tilde" x="22" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="b" xMin="62" yMin="-25" xMax="1118" yMax="1579">
- <contour>
- <pt x="383" y="0" on="1"/>
- <pt x="185" y="0" on="1"/>
- <pt x="185" y="1456" on="1"/>
- <pt x="62" y="1456" on="1"/>
- <pt x="62" y="1579" on="1"/>
- <pt x="383" y="1579" on="1"/>
- <pt x="383" y="864" on="1"/>
- <pt x="458" y="975" on="0"/>
- <pt x="529" y="1030" on="1"/>
- <pt x="631" y="1110" on="0"/>
- <pt x="749" y="1110" on="1"/>
- <pt x="914" y="1110" on="0"/>
- <pt x="1016" y="967" on="1"/>
- <pt x="1118" y="823" on="0"/>
- <pt x="1118" y="588" on="1"/>
- <pt x="1118" y="302" on="0"/>
- <pt x="983" y="139" on="1"/>
- <pt x="849" y="-25" on="0"/>
- <pt x="614" y="-25" on="1"/>
- <pt x="526" y="-25" on="0"/>
- </contour>
- <contour>
- <pt x="383" y="146" on="1"/>
- <pt x="519" y="123" on="0"/>
- <pt x="595" y="123" on="1"/>
- <pt x="762" y="123" on="0"/>
- <pt x="835" y="230" on="1"/>
- <pt x="908" y="337" on="0"/>
- <pt x="908" y="578" on="1"/>
- <pt x="908" y="950" on="0"/>
- <pt x="694" y="950" on="1"/>
- <pt x="530" y="950" on="0"/>
- <pt x="383" y="716" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 70 values pushed */
- 0 0 28 30 10 22 14 18 48 200 18 2 10 1 1 3 2 2 4 1 3 0 1 30 20
- 6 3 1 0 3 0 5 4 1 1 0 1 2 0 14 0 0 26 39 14 48 200 14 0 4
- 3 1 0 0 30 20 6 5 0 10 4 1 1 4 48 200 2 1 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="backslash" xMin="99" yMin="-296" xMax="1131" yMax="1579">
- <contour>
- <pt x="1131" y="-296" on="1"/>
- <pt x="967" y="-296" on="1"/>
- <pt x="99" y="1579" on="1"/>
- <pt x="262" y="1579" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 3 2 1 1 0 1 2 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="bar" xMin="540" yMin="-296" xMax="688" yMax="1579">
- <contour>
- <pt x="540" y="-296" on="1"/>
- <pt x="540" y="1579" on="1"/>
- <pt x="688" y="1579" on="1"/>
- <pt x="688" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 2 1 1 3 0 1 2 0 14 0 0 3 2 16 1 0 1 4 48 200 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="braceleft" xMin="183" yMin="-296" xMax="1002" yMax="1579">
- <contour>
- <pt x="1002" y="-296" on="1"/>
- <pt x="871" y="-296" on="1"/>
- <pt x="699" y="-296" on="0"/>
- <pt x="590" y="-201" on="1"/>
- <pt x="480" y="-106" on="0"/>
- <pt x="480" y="47" on="1"/>
- <pt x="480" y="100" on="0"/>
- <pt x="493" y="176" on="1"/>
- <pt x="514" y="297" on="1"/>
- <pt x="522" y="344" on="0"/>
- <pt x="522" y="387" on="1"/>
- <pt x="522" y="580" on="0"/>
- <pt x="295" y="580" on="1"/>
- <pt x="183" y="580" on="1"/>
- <pt x="183" y="703" on="1"/>
- <pt x="295" y="703" on="1"/>
- <pt x="522" y="703" on="0"/>
- <pt x="522" y="900" on="1"/>
- <pt x="522" y="939" on="0"/>
- <pt x="514" y="986" on="1"/>
- <pt x="493" y="1107" on="1"/>
- <pt x="480" y="1183" on="0"/>
- <pt x="480" y="1241" on="1"/>
- <pt x="480" y="1390" on="0"/>
- <pt x="591" y="1485" on="1"/>
- <pt x="701" y="1579" on="0"/>
- <pt x="871" y="1579" on="1"/>
- <pt x="1002" y="1579" on="1"/>
- <pt x="1002" y="1456" on="1"/>
- <pt x="943" y="1456" on="1"/>
- <pt x="665" y="1456" on="0"/>
- <pt x="665" y="1249" on="1"/>
- <pt x="665" y="1209" on="0"/>
- <pt x="673" y="1163" on="1"/>
- <pt x="695" y="1038" on="1"/>
- <pt x="703" y="992" on="0"/>
- <pt x="703" y="954" on="1"/>
- <pt x="703" y="825" on="0"/>
- <pt x="625" y="737" on="1"/>
- <pt x="579" y="686" on="0"/>
- <pt x="493" y="642" on="1"/>
- <pt x="587" y="594" on="0"/>
- <pt x="634" y="536" on="1"/>
- <pt x="702" y="451" on="0"/>
- <pt x="702" y="326" on="1"/>
- <pt x="702" y="285" on="0"/>
- <pt x="695" y="245" on="1"/>
- <pt x="673" y="120" on="1"/>
- <pt x="665" y="74" on="0"/>
- <pt x="665" y="29" on="1"/>
- <pt x="665" y="-173" on="0"/>
- <pt x="943" y="-173" on="1"/>
- <pt x="1002" y="-173" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 52 51 40 29 28 27 26 15 14 13 12 1 0 14 0 0 49 19 5 31 19 22 17 13 36
- 10 13 44 48 200 52 51 44 40 36 29 28 27 26 22 15 14 13 12 5 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="braceright" xMin="227" yMin="-296" xMax="1046" yMax="1579">
- <contour>
- <pt x="227" y="1579" on="1"/>
- <pt x="358" y="1579" on="1"/>
- <pt x="530" y="1579" on="0"/>
- <pt x="639" y="1484" on="1"/>
- <pt x="749" y="1388" on="0"/>
- <pt x="749" y="1237" on="1"/>
- <pt x="749" y="1182" on="0"/>
- <pt x="736" y="1107" on="1"/>
- <pt x="715" y="986" on="1"/>
- <pt x="707" y="940" on="0"/>
- <pt x="707" y="896" on="1"/>
- <pt x="707" y="703" on="0"/>
- <pt x="934" y="703" on="1"/>
- <pt x="1046" y="703" on="1"/>
- <pt x="1046" y="580" on="1"/>
- <pt x="934" y="580" on="1"/>
- <pt x="707" y="580" on="0"/>
- <pt x="707" y="383" on="1"/>
- <pt x="707" y="342" on="0"/>
- <pt x="715" y="297" on="1"/>
- <pt x="736" y="177" on="1"/>
- <pt x="749" y="103" on="0"/>
- <pt x="749" y="42" on="1"/>
- <pt x="749" y="-106" on="0"/>
- <pt x="638" y="-201" on="1"/>
- <pt x="528" y="-296" on="0"/>
- <pt x="358" y="-296" on="1"/>
- <pt x="227" y="-296" on="1"/>
- <pt x="227" y="-173" on="1"/>
- <pt x="286" y="-173" on="1"/>
- <pt x="564" y="-173" on="0"/>
- <pt x="564" y="33" on="1"/>
- <pt x="564" y="75" on="0"/>
- <pt x="556" y="120" on="1"/>
- <pt x="534" y="245" on="1"/>
- <pt x="527" y="285" on="0"/>
- <pt x="527" y="330" on="1"/>
- <pt x="527" y="458" on="0"/>
- <pt x="604" y="546" on="1"/>
- <pt x="649" y="597" on="0"/>
- <pt x="736" y="642" on="1"/>
- <pt x="643" y="690" on="0"/>
- <pt x="596" y="748" on="1"/>
- <pt x="527" y="833" on="0"/>
- <pt x="527" y="957" on="1"/>
- <pt x="527" y="998" on="0"/>
- <pt x="534" y="1038" on="1"/>
- <pt x="556" y="1163" on="1"/>
- <pt x="564" y="1208" on="0"/>
- <pt x="564" y="1254" on="1"/>
- <pt x="564" y="1456" on="0"/>
- <pt x="286" y="1456" on="1"/>
- <pt x="227" y="1456" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 52 51 40 29 28 27 26 15 14 13 12 1 0 14 0 0 49 19 5 31 19 22 17 13 36
- 10 13 44 48 200 52 51 44 40 36 29 28 27 26 22 15 14 13 12 5 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="bracketleft" xMin="395" yMin="-296" xMax="938" yMax="1579">
- <contour>
- <pt x="395" y="-296" on="1"/>
- <pt x="395" y="1579" on="1"/>
- <pt x="938" y="1579" on="1"/>
- <pt x="938" y="1456" on="1"/>
- <pt x="568" y="1456" on="1"/>
- <pt x="568" y="-173" on="1"/>
- <pt x="938" y="-173" on="1"/>
- <pt x="938" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 0 0 4 3 6 1 1 6 5 6 1 0 2 4 48 200 2 1 1 7 0 1 2 0 14
- 7 6 3 2 4 13 4 0 0 5 4 12 1 0 1 4 48 200 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="bracketright" xMin="291" yMin="-296" xMax="834" yMax="1579">
- <contour>
- <pt x="834" y="-296" on="1"/>
- <pt x="291" y="-296" on="1"/>
- <pt x="291" y="-173" on="1"/>
- <pt x="661" y="-173" on="1"/>
- <pt x="661" y="1456" on="1"/>
- <pt x="291" y="1456" on="1"/>
- <pt x="291" y="1579" on="1"/>
- <pt x="834" y="1579" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 0 0 5 4 6 1 6 3 2 6 1 0 2 4 48 200 7 6 1 1 0 1 2 0 14
- 6 5 2 1 4 13 3 0 0 4 3 12 1 0 1 4 48 200 7 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="breve" xMin="269" yMin="1289" xMax="960" yMax="1579">
- <contour>
- <pt x="269" y="1579" on="1"/>
- <pt x="392" y="1579" on="1"/>
- <pt x="440" y="1431" on="0"/>
- <pt x="614" y="1431" on="1"/>
- <pt x="789" y="1431" on="0"/>
- <pt x="837" y="1579" on="1"/>
- <pt x="960" y="1579" on="1"/>
- <pt x="937" y="1490" on="0"/>
- <pt x="911" y="1444" on="1"/>
- <pt x="820" y="1289" on="0"/>
- <pt x="618" y="1289" on="1"/>
- <pt x="466" y="1289" on="0"/>
- <pt x="377" y="1370" on="1"/>
- <pt x="322" y="1419" on="0"/>
- <pt x="294" y="1491" on="1"/>
- <pt x="283" y="1520" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 17 values pushed */
- 0 0 3 14 10 48 200 10 6 5 1 0 14 6 5 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="brokenbar" xMin="540" yMin="-296" xMax="688" yMax="1579">
- <contour>
- <pt x="540" y="-296" on="1"/>
- <pt x="540" y="444" on="1"/>
- <pt x="688" y="444" on="1"/>
- <pt x="688" y="-296" on="1"/>
- </contour>
- <contour>
- <pt x="540" y="839" on="1"/>
- <pt x="540" y="1579" on="1"/>
- <pt x="688" y="1579" on="1"/>
- <pt x="688" y="839" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 34 values pushed */
- 6 5 1 7 4 1 2 1 1 3 0 1 4 0 14 0 0 7 6 3 2 16 3 0 1
- 4 48 200 5 4 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="bullet" xMin="318" yMin="518" xMax="910" yMax="1110">
- <contour>
- <pt x="614" y="1110" on="1"/>
- <pt x="737" y="1110" on="0"/>
- <pt x="823" y="1023" on="1"/>
- <pt x="910" y="937" on="0"/>
- <pt x="910" y="815" on="1"/>
- <pt x="910" y="690" on="0"/>
- <pt x="823" y="604" on="1"/>
- <pt x="737" y="518" on="0"/>
- <pt x="612" y="518" on="1"/>
- <pt x="503" y="518" on="0"/>
- <pt x="423" y="588" on="1"/>
- <pt x="318" y="679" on="0"/>
- <pt x="318" y="814" on="1"/>
- <pt x="318" y="937" on="0"/>
- <pt x="405" y="1023" on="1"/>
- <pt x="492" y="1110" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 15 values pushed */
- 0 0 0 8 48 200 8 14 0 0 4 12 48 200 12
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="c" xMin="148" yMin="-25" xMax="1031" yMax="1110">
- <contour>
- <pt x="1031" y="46" on="1"/>
- <pt x="883" y="-25" on="0"/>
- <pt x="693" y="-25" on="1"/>
- <pt x="441" y="-25" on="0"/>
- <pt x="294" y="133" on="1"/>
- <pt x="148" y="291" on="0"/>
- <pt x="148" y="555" on="1"/>
- <pt x="148" y="815" on="0"/>
- <pt x="291" y="962" on="1"/>
- <pt x="434" y="1110" on="0"/>
- <pt x="690" y="1110" on="1"/>
- <pt x="862" y="1110" on="0"/>
- <pt x="1019" y="1056" on="1"/>
- <pt x="1019" y="711" on="1"/>
- <pt x="895" y="711" on="1"/>
- <pt x="863" y="943" on="1"/>
- <pt x="753" y="987" on="0"/>
- <pt x="680" y="987" on="1"/>
- <pt x="534" y="987" on="0"/>
- <pt x="448" y="869" on="1"/>
- <pt x="361" y="751" on="0"/>
- <pt x="361" y="552" on="1"/>
- <pt x="361" y="349" on="0"/>
- <pt x="459" y="236" on="1"/>
- <pt x="556" y="123" on="0"/>
- <pt x="729" y="123" on="1"/>
- <pt x="866" y="123" on="0"/>
- <pt x="1031" y="200" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 48 values pushed */
- 0 0 25 14 2 17 5 10 48 200 10 1 2 2 1 1 27 15 14 13 12 0 6 1 2
- 3 0 0 14 0 0 21 39 6 48 200 15 14 6 12 27 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="cacute" xMin="148" yMin="-25" xMax="1031" yMax="1604">
- <component glyphName="c" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="164" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="caron" xMin="248" yMin="1283" xMax="980" yMax="1604">
- <contour>
- <pt x="980" y="1604" on="1"/>
- <pt x="723" y="1283" on="1"/>
- <pt x="505" y="1283" on="1"/>
- <pt x="248" y="1604" on="1"/>
- <pt x="372" y="1604" on="1"/>
- <pt x="613" y="1402" on="1"/>
- <pt x="615" y="1402" on="1"/>
- <pt x="857" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 22 values pushed */
- 7 6 5 4 3 0 6 13 1 2 1 1 0 14 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ccaron" xMin="148" yMin="-25" xMax="1046" yMax="1604">
- <component glyphName="c" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="66" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ccedilla" xMin="148" yMin="-432" xMax="1031" yMax="1110">
- <component glyphName="c" x="0" y="0" flags="0x4"/>
- <component glyphName="cedilla" x="53" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ccircumflex" xMin="148" yMin="-25" xMax="1045" yMax="1604">
- <contour>
- <pt x="1031" y="46" on="1"/>
- <pt x="883" y="-25" on="0"/>
- <pt x="693" y="-25" on="1"/>
- <pt x="441" y="-25" on="0"/>
- <pt x="294" y="133" on="1"/>
- <pt x="148" y="291" on="0"/>
- <pt x="148" y="555" on="1"/>
- <pt x="148" y="815" on="0"/>
- <pt x="291" y="962" on="1"/>
- <pt x="434" y="1110" on="0"/>
- <pt x="690" y="1110" on="1"/>
- <pt x="862" y="1110" on="0"/>
- <pt x="1019" y="1056" on="1"/>
- <pt x="1019" y="711" on="1"/>
- <pt x="895" y="711" on="1"/>
- <pt x="863" y="943" on="1"/>
- <pt x="753" y="987" on="0"/>
- <pt x="680" y="987" on="1"/>
- <pt x="534" y="987" on="0"/>
- <pt x="448" y="869" on="1"/>
- <pt x="361" y="751" on="0"/>
- <pt x="361" y="552" on="1"/>
- <pt x="361" y="349" on="0"/>
- <pt x="459" y="236" on="1"/>
- <pt x="556" y="123" on="0"/>
- <pt x="729" y="123" on="1"/>
- <pt x="866" y="123" on="0"/>
- <pt x="1031" y="200" on="1"/>
- </contour>
- <contour>
- <pt x="314" y="1283" on="1"/>
- <pt x="570" y="1604" on="1"/>
- <pt x="789" y="1604" on="1"/>
- <pt x="1045" y="1283" on="1"/>
- <pt x="922" y="1283" on="1"/>
- <pt x="681" y="1485" on="1"/>
- <pt x="678" y="1485" on="1"/>
- <pt x="437" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 75 values pushed */
- 0 0 25 14 2 17 5 10 48 200 10 1 2 2 1 35 34 33 32 31 28 6 29 1 3
- 0 1 1 27 15 14 13 12 0 6 1 2 3 0 0 30 29 1 0 14 0 0 21 39 6
- 48 200 31 0 35 34 33 32 30 29 28 15 14 9 13 6 12 27 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="cdotaccent" xMin="148" yMin="-25" xMax="1031" yMax="1480">
- <contour>
- <pt x="1031" y="46" on="1"/>
- <pt x="883" y="-25" on="0"/>
- <pt x="693" y="-25" on="1"/>
- <pt x="441" y="-25" on="0"/>
- <pt x="294" y="133" on="1"/>
- <pt x="148" y="291" on="0"/>
- <pt x="148" y="555" on="1"/>
- <pt x="148" y="815" on="0"/>
- <pt x="291" y="962" on="1"/>
- <pt x="434" y="1110" on="0"/>
- <pt x="690" y="1110" on="1"/>
- <pt x="862" y="1110" on="0"/>
- <pt x="1019" y="1056" on="1"/>
- <pt x="1019" y="711" on="1"/>
- <pt x="895" y="711" on="1"/>
- <pt x="863" y="943" on="1"/>
- <pt x="753" y="987" on="0"/>
- <pt x="680" y="987" on="1"/>
- <pt x="534" y="987" on="0"/>
- <pt x="448" y="869" on="1"/>
- <pt x="361" y="751" on="0"/>
- <pt x="361" y="552" on="1"/>
- <pt x="361" y="349" on="0"/>
- <pt x="459" y="236" on="1"/>
- <pt x="556" y="123" on="0"/>
- <pt x="729" y="123" on="1"/>
- <pt x="866" y="123" on="0"/>
- <pt x="1031" y="200" on="1"/>
- </contour>
- <contour>
- <pt x="581" y="1283" on="1"/>
- <pt x="581" y="1480" on="1"/>
- <pt x="778" y="1480" on="1"/>
- <pt x="778" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 0 0 25 14 2 17 5 10 48 200 10 1 2 2 1 1 27 15 14 13 12 0 6 1 2
- 3 0 0 0 0 31 28 10 1 29 1 4 48 200 30 29 0 14 0 0 21 39 6 48 200
- 15 14 2 12 30 3 6 28 0 0 31 30 10 1 28 1 4 48 200 29 28 1 27 0 1
- 13 12 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="cedilla" xMin="441" yMin="-432" xMax="788" yMax="0">
- <contour>
- <pt x="557" y="0" on="1"/>
- <pt x="654" y="0" on="1"/>
- <pt x="594" y="-109" on="1"/>
- <pt x="666" y="-111" on="0"/>
- <pt x="718" y="-148" on="1"/>
- <pt x="788" y="-197" on="0"/>
- <pt x="788" y="-269" on="1"/>
- <pt x="788" y="-337" on="0"/>
- <pt x="729" y="-384" on="1"/>
- <pt x="671" y="-432" on="0"/>
- <pt x="584" y="-432" on="1"/>
- <pt x="517" y="-432" on="0"/>
- <pt x="441" y="-411" on="1"/>
- <pt x="441" y="-330" on="1"/>
- <pt x="491" y="-345" on="0"/>
- <pt x="545" y="-345" on="1"/>
- <pt x="649" y="-345" on="0"/>
- <pt x="649" y="-271" on="1"/>
- <pt x="649" y="-178" on="0"/>
- <pt x="462" y="-175" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 29 values pushed */
- 0 0 15 32 10 48 200 19 13 12 10 2 1 0 14 0 0 17 20 6 48 200 19 13 12
- 6 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="cent" xMin="173" yMin="0" xMax="1061" yMax="1480">
- <contour>
- <pt x="629" y="0" on="1"/>
- <pt x="629" y="179" on="1"/>
- <pt x="428" y="204" on="0"/>
- <pt x="317" y="320" on="1"/>
- <pt x="173" y="469" on="0"/>
- <pt x="173" y="737" on="1"/>
- <pt x="173" y="1020" on="0"/>
- <pt x="330" y="1172" on="1"/>
- <pt x="439" y="1278" on="0"/>
- <pt x="629" y="1305" on="1"/>
- <pt x="629" y="1480" on="1"/>
- <pt x="753" y="1480" on="1"/>
- <pt x="753" y="1308" on="1"/>
- <pt x="909" y="1295" on="0"/>
- <pt x="1049" y="1258" on="1"/>
- <pt x="1049" y="938" on="1"/>
- <pt x="926" y="938" on="1"/>
- <pt x="901" y="1147" on="1"/>
- <pt x="830" y="1184" on="0"/>
- <pt x="753" y="1184" on="1"/>
- <pt x="753" y="305" on="1"/>
- <pt x="869" y="305" on="0"/>
- <pt x="1061" y="376" on="1"/>
- <pt x="1061" y="234" on="1"/>
- <pt x="915" y="183" on="0"/>
- <pt x="753" y="173" on="1"/>
- <pt x="753" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="629" y="317" on="1"/>
- <pt x="629" y="1179" on="1"/>
- <pt x="563" y="1157" on="0"/>
- <pt x="529" y="1131" on="1"/>
- <pt x="383" y="1021" on="0"/>
- <pt x="383" y="734" on="1"/>
- <pt x="383" y="512" on="0"/>
- <pt x="474" y="406" on="1"/>
- <pt x="512" y="361" on="0"/>
- <pt x="560" y="339" on="1"/>
- <pt x="583" y="329" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 64 values pushed */
- 28 27 26 25 23 22 20 19 17 16 15 14 12 11 10 9 1 0 14 0 0 32 39 5 48
- 200 17 16 2 14 11 3 5 0 0 0 28 27 10 9 1 0 6 5 11 1 4 48 200 23
- 22 1 15 14 1 26 25 20 19 12 11 5 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="circumflex" xMin="248" yMin="1283" xMax="979" yMax="1604">
- <contour>
- <pt x="248" y="1283" on="1"/>
- <pt x="504" y="1604" on="1"/>
- <pt x="723" y="1604" on="1"/>
- <pt x="979" y="1283" on="1"/>
- <pt x="856" y="1283" on="1"/>
- <pt x="615" y="1485" on="1"/>
- <pt x="612" y="1485" on="1"/>
- <pt x="371" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 22 values pushed */
- 7 6 5 4 3 0 6 13 1 2 1 1 0 14 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="colon" xMin="466" yMin="0" xMax="762" yMax="1086">
- <contour>
- <pt x="466" y="0" on="1"/>
- <pt x="466" y="296" on="1"/>
- <pt x="762" y="296" on="1"/>
- <pt x="762" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="466" y="790" on="1"/>
- <pt x="466" y="1086" on="1"/>
- <pt x="762" y="1086" on="1"/>
- <pt x="762" y="790" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 43 values pushed */
- 0 0 7 4 8 1 5 2 1 8 1 0 2 4 48 200 3 0 1 0 6 5 1 14 0
- 0 7 6 3 2 8 3 0 1 4 48 200 5 4 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="comma" xMin="466" yMin="-321" xMax="762" yMax="296">
- <contour>
- <pt x="466" y="0" on="1"/>
- <pt x="466" y="296" on="1"/>
- <pt x="762" y="296" on="1"/>
- <pt x="762" y="116" on="1"/>
- <pt x="760" y="-302" on="0"/>
- <pt x="466" y="-321" on="1"/>
- <pt x="466" y="-222" on="1"/>
- <pt x="541" y="-210" on="0"/>
- <pt x="563" y="-155" on="1"/>
- <pt x="583" y="-107" on="0"/>
- <pt x="589" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 34 values pushed */
- 10 6 5 3 0 5 13 1 2 1 1 0 14 10 2 0 2 0 0 3 2 8 1 0 1
- 4 48 200 6 5 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="copyright" xMin="62" yMin="-37" xMax="1168" yMax="1517">
- <contour>
- <pt x="615" y="1517" on="1"/>
- <pt x="864" y="1517" on="0"/>
- <pt x="1016" y="1304" on="1"/>
- <pt x="1168" y="1091" on="0"/>
- <pt x="1168" y="742" on="1"/>
- <pt x="1168" y="386" on="0"/>
- <pt x="1016" y="175" on="1"/>
- <pt x="864" y="-37" on="0"/>
- <pt x="606" y="-37" on="1"/>
- <pt x="388" y="-37" on="0"/>
- <pt x="245" y="136" on="1"/>
- <pt x="62" y="357" on="0"/>
- <pt x="62" y="740" on="1"/>
- <pt x="62" y="1092" on="0"/>
- <pt x="214" y="1304" on="1"/>
- <pt x="366" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1406" on="1"/>
- <pt x="423" y="1406" on="0"/>
- <pt x="304" y="1222" on="1"/>
- <pt x="185" y="1038" on="0"/>
- <pt x="185" y="741" on="1"/>
- <pt x="185" y="445" on="0"/>
- <pt x="303" y="260" on="1"/>
- <pt x="421" y="74" on="0"/>
- <pt x="611" y="74" on="1"/>
- <pt x="785" y="74" on="0"/>
- <pt x="899" y="221" on="1"/>
- <pt x="1044" y="407" on="0"/>
- <pt x="1044" y="742" on="1"/>
- <pt x="1044" y="1039" on="0"/>
- <pt x="925" y="1222" on="1"/>
- <pt x="805" y="1406" on="0"/>
- </contour>
- <contour>
- <pt x="872" y="344" on="1"/>
- <pt x="852" y="336" on="1"/>
- <pt x="737" y="290" on="0"/>
- <pt x="651" y="290" on="1"/>
- <pt x="491" y="290" on="0"/>
- <pt x="389" y="413" on="1"/>
- <pt x="286" y="536" on="0"/>
- <pt x="286" y="733" on="1"/>
- <pt x="286" y="932" on="0"/>
- <pt x="386" y="1055" on="1"/>
- <pt x="485" y="1178" on="0"/>
- <pt x="650" y="1178" on="1"/>
- <pt x="743" y="1178" on="0"/>
- <pt x="852" y="1151" on="1"/>
- <pt x="868" y="1147" on="1"/>
- <pt x="868" y="962" on="1"/>
- <pt x="783" y="962" on="1"/>
- <pt x="783" y="1055" on="1"/>
- <pt x="710" y="1080" on="0"/>
- <pt x="654" y="1080" on="1"/>
- <pt x="544" y="1080" on="0"/>
- <pt x="477" y="986" on="1"/>
- <pt x="409" y="892" on="0"/>
- <pt x="409" y="741" on="1"/>
- <pt x="409" y="586" on="0"/>
- <pt x="482" y="494" on="1"/>
- <pt x="555" y="401" on="0"/>
- <pt x="679" y="401" on="1"/>
- <pt x="776" y="401" on="0"/>
- <pt x="872" y="451" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 67 values pushed */
- 0 0 59 40 35 51 17 43 24 40 8 16 40 0 48 200 8 2 0 0 43 35 1 1 61
- 49 48 47 46 43 35 32 8 0 2 3 0 0 14 0 0 55 6 39 28 6 4 20 6 12
- 48 200 61 32 2 13 4 46 49 48 39 12 46 47 46 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="currency" xMin="85" yMin="141" xMax="1143" yMax="1200">
- <contour>
- <pt x="347" y="316" on="1"/>
- <pt x="172" y="141" on="1"/>
- <pt x="85" y="228" on="1"/>
- <pt x="259" y="403" on="1"/>
- <pt x="170" y="528" on="0"/>
- <pt x="170" y="670" on="1"/>
- <pt x="170" y="814" on="0"/>
- <pt x="259" y="938" on="1"/>
- <pt x="85" y="1112" on="1"/>
- <pt x="172" y="1200" on="1"/>
- <pt x="347" y="1025" on="1"/>
- <pt x="477" y="1115" on="0"/>
- <pt x="614" y="1115" on="1"/>
- <pt x="751" y="1115" on="0"/>
- <pt x="881" y="1025" on="1"/>
- <pt x="1056" y="1200" on="1"/>
- <pt x="1143" y="1112" on="1"/>
- <pt x="968" y="938" on="1"/>
- <pt x="1058" y="813" on="0"/>
- <pt x="1058" y="670" on="1"/>
- <pt x="1058" y="528" on="0"/>
- <pt x="968" y="403" on="1"/>
- <pt x="1143" y="229" on="1"/>
- <pt x="1056" y="141" on="1"/>
- <pt x="881" y="316" on="1"/>
- <pt x="751" y="226" on="0"/>
- <pt x="614" y="226" on="1"/>
- <pt x="477" y="226" on="0"/>
- </contour>
- <contour>
- <pt x="614" y="967" on="1"/>
- <pt x="490" y="967" on="0"/>
- <pt x="404" y="881" on="1"/>
- <pt x="318" y="796" on="0"/>
- <pt x="318" y="674" on="1"/>
- <pt x="318" y="559" on="0"/>
- <pt x="387" y="477" on="1"/>
- <pt x="475" y="374" on="0"/>
- <pt x="615" y="374" on="1"/>
- <pt x="739" y="374" on="0"/>
- <pt x="824" y="460" on="1"/>
- <pt x="910" y="546" on="0"/>
- <pt x="910" y="671" on="1"/>
- <pt x="910" y="795" on="0"/>
- <pt x="824" y="881" on="1"/>
- <pt x="739" y="967" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 68 values pushed */
- 0 0 36 14 26 28 14 12 48 200 12 1 1 16 15 9 8 4 13 1 0 1 24 23 22
- 21 17 14 10 7 3 2 1 0 12 13 26 1 0 14 0 0 40 16 19 32 16 5 48 200
- 24 23 22 21 19 17 16 15 14 10 9 8 7 5 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="d" xMin="111" yMin="-25" xMax="1167" yMax="1579">
- <contour>
- <pt x="846" y="1456" on="1"/>
- <pt x="600" y="1456" on="1"/>
- <pt x="600" y="1579" on="1"/>
- <pt x="1044" y="1579" on="1"/>
- <pt x="1044" y="123" on="1"/>
- <pt x="1167" y="123" on="1"/>
- <pt x="1167" y="0" on="1"/>
- <pt x="846" y="0" on="1"/>
- <pt x="846" y="222" on="1"/>
- <pt x="771" y="111" on="0"/>
- <pt x="701" y="55" on="1"/>
- <pt x="599" y="-25" on="0"/>
- <pt x="480" y="-25" on="1"/>
- <pt x="315" y="-25" on="0"/>
- <pt x="213" y="119" on="1"/>
- <pt x="111" y="262" on="0"/>
- <pt x="111" y="498" on="1"/>
- <pt x="111" y="783" on="0"/>
- <pt x="246" y="946" on="1"/>
- <pt x="380" y="1110" on="0"/>
- <pt x="618" y="1110" on="1"/>
- <pt x="705" y="1110" on="0"/>
- <pt x="846" y="1086" on="1"/>
- </contour>
- <contour>
- <pt x="846" y="939" on="1"/>
- <pt x="710" y="962" on="0"/>
- <pt x="633" y="962" on="1"/>
- <pt x="468" y="962" on="0"/>
- <pt x="394" y="855" on="1"/>
- <pt x="321" y="748" on="0"/>
- <pt x="321" y="510" on="1"/>
- <pt x="321" y="136" on="0"/>
- <pt x="535" y="136" on="1"/>
- <pt x="699" y="136" on="0"/>
- <pt x="846" y="370" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 0 0 31 30 12 25 14 20 48 200 20 1 12 2 1 33 23 22 8 5 4 6 1 6 3
- 0 0 0 1 0 6 1 2 1 4 48 200 3 2 1 7 6 1 2 0 14 0 0 29 39
- 16 48 200 6 5 2 13 3 2 1 16 0 0 0 33 23 22 8 7 0 10 5 3 1 4
- 48 200 4 3 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dagger" xMin="170" yMin="-296" xMax="1058" yMax="1480">
- <contour>
- <pt x="515" y="-296" on="1"/>
- <pt x="540" y="827" on="1"/>
- <pt x="170" y="814" on="1"/>
- <pt x="170" y="962" on="1"/>
- <pt x="540" y="950" on="1"/>
- <pt x="515" y="1480" on="1"/>
- <pt x="713" y="1480" on="1"/>
- <pt x="688" y="950" on="1"/>
- <pt x="1058" y="962" on="1"/>
- <pt x="1058" y="814" on="1"/>
- <pt x="688" y="827" on="1"/>
- <pt x="713" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 42 values pushed */
- 1 10 9 8 7 4 3 2 1 8 5 2 3 0 11 0 1 0 6 5 0 14 11 10 7
- 6 5 4 1 0 8 8 2 3 9 8 1 3 2 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="daggerdbl" xMin="170" yMin="-296" xMax="1058" yMax="1480">
- <contour>
- <pt x="515" y="-296" on="1"/>
- <pt x="540" y="234" on="1"/>
- <pt x="170" y="222" on="1"/>
- <pt x="170" y="370" on="1"/>
- <pt x="540" y="358" on="1"/>
- <pt x="540" y="827" on="1"/>
- <pt x="170" y="814" on="1"/>
- <pt x="170" y="962" on="1"/>
- <pt x="540" y="950" on="1"/>
- <pt x="515" y="1480" on="1"/>
- <pt x="713" y="1480" on="1"/>
- <pt x="688" y="950" on="1"/>
- <pt x="1058" y="962" on="1"/>
- <pt x="1058" y="814" on="1"/>
- <pt x="688" y="827" on="1"/>
- <pt x="688" y="358" on="1"/>
- <pt x="1058" y="370" on="1"/>
- <pt x="1058" y="222" on="1"/>
- <pt x="688" y="234" on="1"/>
- <pt x="713" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 1 18 17 16 15 14 13 12 11 8 7 6 5 4 3 2 1 16 9 2 3 0 19 0 1
- 0 10 9 0 14 19 10 2 12 11 3 9 0 2 1 2 3 0 0 18 15 14 11 14 3
- 1 1 4 48 200 17 16 13 12 3 8 5 4 1 3 7 6 3 2 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dcaron" xMin="111" yMin="-25" xMax="1229" yMax="1579">
- <contour>
- <pt x="753" y="0" on="1"/>
- <pt x="753" y="222" on="1"/>
- <pt x="691" y="111" on="0"/>
- <pt x="630" y="55" on="1"/>
- <pt x="542" y="-25" on="0"/>
- <pt x="435" y="-25" on="1"/>
- <pt x="290" y="-25" on="0"/>
- <pt x="201" y="119" on="1"/>
- <pt x="111" y="263" on="0"/>
- <pt x="111" y="498" on="1"/>
- <pt x="111" y="782" on="0"/>
- <pt x="229" y="946" on="1"/>
- <pt x="346" y="1110" on="0"/>
- <pt x="554" y="1110" on="1"/>
- <pt x="634" y="1110" on="0"/>
- <pt x="753" y="1086" on="1"/>
- <pt x="753" y="1456" on="1"/>
- <pt x="537" y="1456" on="1"/>
- <pt x="537" y="1579" on="1"/>
- <pt x="950" y="1579" on="1"/>
- <pt x="950" y="123" on="1"/>
- <pt x="1058" y="123" on="1"/>
- <pt x="1058" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="753" y="939" on="1"/>
- <pt x="645" y="963" on="0"/>
- <pt x="574" y="963" on="1"/>
- <pt x="433" y="963" on="0"/>
- <pt x="376" y="858" on="1"/>
- <pt x="318" y="751" on="0"/>
- <pt x="318" y="502" on="1"/>
- <pt x="318" y="136" on="0"/>
- <pt x="490" y="136" on="1"/>
- <pt x="644" y="136" on="0"/>
- <pt x="753" y="370" on="1"/>
- </contour>
- <contour>
- <pt x="1031" y="1125" on="1"/>
- <pt x="1031" y="1184" on="1"/>
- <pt x="1108" y="1205" on="0"/>
- <pt x="1108" y="1365" on="1"/>
- <pt x="1108" y="1382" on="1"/>
- <pt x="1031" y="1382" on="1"/>
- <pt x="1031" y="1579" on="1"/>
- <pt x="1229" y="1579" on="1"/>
- <pt x="1229" y="1408" on="1"/>
- <pt x="1228" y="1146" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 109 values pushed */
- 0 0 31 30 5 25 14 13 48 200 13 1 5 2 1 42 39 38 37 35 34 6 16 1 3
- 0 1 33 23 21 20 15 1 6 1 0 3 0 0 0 17 16 6 1 18 1 4 48 200 41
- 40 19 18 3 22 0 1 2 0 14 0 0 29 39 9 48 200 38 37 22 21 4 41 34 3
- 18 17 9 0 0 0 40 39 35 34 10 3 41 33 23 16 15 1 0 10 5 19 2 4 48
- 200 42 41 1 20 19 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dcroat" xMin="111" yMin="-25" xMax="1167" yMax="1579">
- <contour>
- <pt x="846" y="0" on="1"/>
- <pt x="846" y="222" on="1"/>
- <pt x="771" y="111" on="0"/>
- <pt x="701" y="55" on="1"/>
- <pt x="599" y="-25" on="0"/>
- <pt x="480" y="-25" on="1"/>
- <pt x="315" y="-25" on="0"/>
- <pt x="213" y="119" on="1"/>
- <pt x="111" y="262" on="0"/>
- <pt x="111" y="498" on="1"/>
- <pt x="111" y="783" on="0"/>
- <pt x="246" y="946" on="1"/>
- <pt x="380" y="1110" on="0"/>
- <pt x="618" y="1110" on="1"/>
- <pt x="705" y="1110" on="0"/>
- <pt x="846" y="1086" on="1"/>
- <pt x="846" y="1221" on="1"/>
- <pt x="526" y="1221" on="1"/>
- <pt x="526" y="1345" on="1"/>
- <pt x="846" y="1345" on="1"/>
- <pt x="846" y="1456" on="1"/>
- <pt x="600" y="1456" on="1"/>
- <pt x="600" y="1579" on="1"/>
- <pt x="1044" y="1579" on="1"/>
- <pt x="1044" y="1345" on="1"/>
- <pt x="1167" y="1345" on="1"/>
- <pt x="1167" y="1221" on="1"/>
- <pt x="1044" y="1221" on="1"/>
- <pt x="1044" y="123" on="1"/>
- <pt x="1167" y="123" on="1"/>
- <pt x="1167" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="846" y="939" on="1"/>
- <pt x="710" y="962" on="0"/>
- <pt x="633" y="962" on="1"/>
- <pt x="468" y="962" on="0"/>
- <pt x="394" y="855" on="1"/>
- <pt x="321" y="748" on="0"/>
- <pt x="321" y="510" on="1"/>
- <pt x="321" y="136" on="0"/>
- <pt x="535" y="136" on="1"/>
- <pt x="699" y="136" on="0"/>
- <pt x="846" y="370" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 103 values pushed */
- 0 0 39 30 5 33 14 13 48 200 13 1 5 2 1 41 31 29 28 15 1 6 1 0 3
- 0 0 0 21 20 6 1 22 27 26 17 16 6 3 18 2 4 48 200 23 22 1 25 24 19
- 18 3 30 0 1 3 0 14 0 0 37 39 9 48 200 30 29 26 25 4 13 23 22 21 18
- 17 4 13 9 0 0 0 41 31 20 19 16 15 1 0 10 7 23 1 4 48 200 28 27 24
- 23 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="degree" xMin="318" yMin="925" xMax="910" yMax="1517">
- <contour>
- <pt x="614" y="1517" on="1"/>
- <pt x="735" y="1517" on="0"/>
- <pt x="823" y="1430" on="1"/>
- <pt x="910" y="1344" on="0"/>
- <pt x="910" y="1222" on="1"/>
- <pt x="910" y="1098" on="0"/>
- <pt x="823" y="1012" on="1"/>
- <pt x="735" y="925" on="0"/>
- <pt x="610" y="925" on="1"/>
- <pt x="504" y="925" on="0"/>
- <pt x="423" y="995" on="1"/>
- <pt x="318" y="1087" on="0"/>
- <pt x="318" y="1221" on="1"/>
- <pt x="318" y="1344" on="0"/>
- <pt x="405" y="1430" on="1"/>
- <pt x="493" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="614" y="1394" on="1"/>
- <pt x="543" y="1394" on="0"/>
- <pt x="492" y="1343" on="1"/>
- <pt x="441" y="1293" on="0"/>
- <pt x="441" y="1222" on="1"/>
- <pt x="441" y="1151" on="0"/>
- <pt x="492" y="1100" on="1"/>
- <pt x="542" y="1049" on="0"/>
- <pt x="612" y="1049" on="1"/>
- <pt x="677" y="1049" on="0"/>
- <pt x="725" y="1090" on="1"/>
- <pt x="787" y="1142" on="0"/>
- <pt x="787" y="1222" on="1"/>
- <pt x="787" y="1293" on="0"/>
- <pt x="736" y="1343" on="1"/>
- <pt x="685" y="1394" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 29 values pushed */
- 0 0 24 5 8 16 5 0 48 200 0 0 1 8 0 0 14 0 0 28 6 4 20 6 12
- 48 200 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dieresis" xMin="281" yMin="1283" xMax="947" yMax="1480">
- <contour>
- <pt x="281" y="1283" on="1"/>
- <pt x="281" y="1480" on="1"/>
- <pt x="478" y="1480" on="1"/>
- <pt x="478" y="1283" on="1"/>
- </contour>
- <contour>
- <pt x="750" y="1283" on="1"/>
- <pt x="750" y="1480" on="1"/>
- <pt x="947" y="1480" on="1"/>
- <pt x="947" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 0 0 7 4 3 0 10 3 1 1 4 48 200 6 5 2 1 0 3 14 0 0 5 4 10
- 1 6 3 2 10 1 0 2 4 48 200 7 6 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="divide" xMin="99" yMin="0" xMax="1130" yMax="1234">
- <contour>
- <pt x="99" y="543" on="1"/>
- <pt x="99" y="691" on="1"/>
- <pt x="1130" y="691" on="1"/>
- <pt x="1130" y="543" on="1"/>
- </contour>
- <contour>
- <pt x="491" y="0" on="1"/>
- <pt x="491" y="247" on="1"/>
- <pt x="738" y="247" on="1"/>
- <pt x="738" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="491" y="987" on="1"/>
- <pt x="491" y="1234" on="1"/>
- <pt x="738" y="1234" on="1"/>
- <pt x="738" y="987" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 59 values pushed */
- 0 0 11 8 4 1 9 6 5 4 1 4 3 0 7 1 1 3 4 48 200 10 9 1 7
- 4 1 2 1 1 3 0 14 0 0 11 10 7 6 4 3 4 1 4 48 200 9 8 5 4
- 3 3 2 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dollar" xMin="143" yMin="-123" xMax="1031" yMax="1604">
- <contour>
- <pt x="525" y="-123" on="1"/>
- <pt x="525" y="0" on="1"/>
- <pt x="323" y="16" on="0"/>
- <pt x="143" y="86" on="1"/>
- <pt x="143" y="385" on="1"/>
- <pt x="266" y="385" on="1"/>
- <pt x="291" y="187" on="1"/>
- <pt x="415" y="131" on="0"/>
- <pt x="525" y="123" on="1"/>
- <pt x="525" y="698" on="1"/>
- <pt x="435" y="751" on="1"/>
- <pt x="180" y="901" on="0"/>
- <pt x="180" y="1123" on="1"/>
- <pt x="180" y="1297" on="0"/>
- <pt x="309" y="1396" on="1"/>
- <pt x="399" y="1465" on="0"/>
- <pt x="550" y="1480" on="1"/>
- <pt x="550" y="1604" on="1"/>
- <pt x="674" y="1604" on="1"/>
- <pt x="674" y="1480" on="1"/>
- <pt x="835" y="1479" on="0"/>
- <pt x="1002" y="1408" on="1"/>
- <pt x="1002" y="1124" on="1"/>
- <pt x="879" y="1124" on="1"/>
- <pt x="854" y="1322" on="1"/>
- <pt x="767" y="1357" on="0"/>
- <pt x="695" y="1357" on="1"/>
- <pt x="674" y="1357" on="1"/>
- <pt x="674" y="823" on="1"/>
- <pt x="761" y="776" on="1"/>
- <pt x="911" y="695" on="0"/>
- <pt x="971" y="613" on="1"/>
- <pt x="1031" y="531" on="0"/>
- <pt x="1031" y="409" on="1"/>
- <pt x="1031" y="212" on="0"/>
- <pt x="893" y="95" on="1"/>
- <pt x="800" y="15" on="0"/>
- <pt x="649" y="0" on="1"/>
- <pt x="649" y="-123" on="1"/>
- </contour>
- <contour>
- <pt x="649" y="123" on="1"/>
- <pt x="730" y="132" on="0"/>
- <pt x="782" y="192" on="1"/>
- <pt x="852" y="272" on="0"/>
- <pt x="852" y="388" on="1"/>
- <pt x="852" y="520" on="0"/>
- <pt x="716" y="597" on="1"/>
- <pt x="649" y="635" on="1"/>
- </contour>
- <contour>
- <pt x="550" y="891" on="1"/>
- <pt x="550" y="1357" on="1"/>
- <pt x="445" y="1331" on="0"/>
- <pt x="400" y="1271" on="1"/>
- <pt x="358" y="1216" on="0"/>
- <pt x="358" y="1133" on="1"/>
- <pt x="358" y="1003" on="0"/>
- <pt x="497" y="922" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 91 values pushed */
- 48 47 46 39 38 37 28 27 26 24 23 22 21 19 18 17 16 9 8 6 5 4 3 1 0
- 14 0 0 52 13 12 43 13 33 48 200 26 24 23 3 21 18 3 12 12 6 5 3 0 3
- 3 33 21 0 0 28 27 19 18 6 3 16 46 39 38 37 6 3 0 2 4 48 200 22 21
- 1 48 47 17 16 3 9 8 1 0 3 4 3 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dotaccent" xMin="516" yMin="1283" xMax="713" yMax="1480">
- <contour>
- <pt x="516" y="1283" on="1"/>
- <pt x="516" y="1480" on="1"/>
- <pt x="713" y="1480" on="1"/>
- <pt x="713" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 30 values pushed */
- 0 0 3 0 10 1 1 1 4 48 200 2 1 0 14 0 0 3 2 10 1 0 1 4 48
- 200 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dotlessi" xMin="148" yMin="0" xMax="1105" yMax="1086">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="123" on="1"/>
- <pt x="538" y="123" on="1"/>
- <pt x="538" y="962" on="1"/>
- <pt x="148" y="962" on="1"/>
- <pt x="148" y="1086" on="1"/>
- <pt x="735" y="1086" on="1"/>
- <pt x="735" y="123" on="1"/>
- <pt x="1105" y="123" on="1"/>
- <pt x="1105" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 53 values pushed */
- 0 0 4 3 6 1 5 8 7 2 1 6 3 0 2 4 48 200 9 0 1 0 6 5 1
- 14 9 8 2 13 6 5 4 1 0 4 13 2 0 0 7 6 10 1 2 1 4 48 200 3
- 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dotlessj" xMin="159" yMin="-420" xMax="903" yMax="1086">
- <contour>
- <pt x="159" y="-344" on="1"/>
- <pt x="159" y="-25" on="1"/>
- <pt x="282" y="-25" on="1"/>
- <pt x="313" y="-243" on="1"/>
- <pt x="381" y="-296" on="0"/>
- <pt x="460" y="-296" on="1"/>
- <pt x="592" y="-296" on="0"/>
- <pt x="648" y="-200" on="1"/>
- <pt x="705" y="-104" on="0"/>
- <pt x="705" y="127" on="1"/>
- <pt x="705" y="962" on="1"/>
- <pt x="261" y="962" on="1"/>
- <pt x="261" y="1086" on="1"/>
- <pt x="903" y="1086" on="1"/>
- <pt x="903" y="66" on="1"/>
- <pt x="903" y="-164" on="0"/>
- <pt x="790" y="-292" on="1"/>
- <pt x="677" y="-420" on="0"/>
- <pt x="476" y="-420" on="1"/>
- <pt x="337" y="-420" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 67 values pushed */
- 0 0 5 5 18 48 200 1 14 9 2 10 2 3 0 1 3 2 1 0 4 13 18 2 0
- 0 0 11 10 6 1 12 1 4 48 200 13 12 1 14 12 11 3 2 4 9 0 3 0 0
- 10 9 10 1 13 1 4 48 200 14 13 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dotmath" xMin="491" yMin="419" xMax="738" yMax="666">
- <contour>
- <pt x="491" y="419" on="1"/>
- <pt x="491" y="666" on="1"/>
- <pt x="738" y="666" on="1"/>
- <pt x="738" y="419" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 2 1 4 1 0 1 4 48 200 3 0 1 0 14 0 0 3 2 4 1 0 1 4
- 48 200 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="e" xMin="123" yMin="-25" xMax="1105" yMax="1110">
- <contour>
- <pt x="1105" y="506" on="1"/>
- <pt x="334" y="506" on="1"/>
- <pt x="348" y="389" on="0"/>
- <pt x="375" y="329" on="1"/>
- <pt x="466" y="123" on="0"/>
- <pt x="727" y="123" on="1"/>
- <pt x="888" y="123" on="0"/>
- <pt x="1076" y="210" on="1"/>
- <pt x="1076" y="62" on="1"/>
- <pt x="901" y="-25" on="0"/>
- <pt x="701" y="-25" on="1"/>
- <pt x="442" y="-25" on="0"/>
- <pt x="282" y="134" on="1"/>
- <pt x="123" y="293" on="0"/>
- <pt x="123" y="551" on="1"/>
- <pt x="123" y="802" on="0"/>
- <pt x="271" y="956" on="1"/>
- <pt x="418" y="1110" on="0"/>
- <pt x="660" y="1110" on="1"/>
- <pt x="1105" y="1110" on="0"/>
- <pt x="1105" y="567" on="1"/>
- </contour>
- <contour>
- <pt x="336" y="629" on="1"/>
- <pt x="895" y="629" on="1"/>
- <pt x="895" y="675" on="1"/>
- <pt x="895" y="987" on="0"/>
- <pt x="646" y="987" on="1"/>
- <pt x="492" y="987" on="0"/>
- <pt x="408" y="864" on="1"/>
- <pt x="349" y="778" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 25 5 18 5 14 10 48 200 18 1 10 2 1 23 1 21 2 0 20 21 0 2 1
- 8 7 2 0 2 3 0 0 0 1 0 6 1 21 1 4 48 200 22 21 1 0 14 20 0
- 2 13 7 23 22 21 1 4 13 14 7 8 7 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="eacute" xMin="123" yMin="-25" xMax="1105" yMax="1604">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="133" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ebreve" xMin="123" yMin="-25" xMax="1105" yMax="1579">
- <contour>
- <pt x="1105" y="506" on="1"/>
- <pt x="334" y="506" on="1"/>
- <pt x="348" y="389" on="0"/>
- <pt x="375" y="329" on="1"/>
- <pt x="466" y="123" on="0"/>
- <pt x="727" y="123" on="1"/>
- <pt x="888" y="123" on="0"/>
- <pt x="1076" y="210" on="1"/>
- <pt x="1076" y="62" on="1"/>
- <pt x="901" y="-25" on="0"/>
- <pt x="701" y="-25" on="1"/>
- <pt x="442" y="-25" on="0"/>
- <pt x="282" y="134" on="1"/>
- <pt x="123" y="293" on="0"/>
- <pt x="123" y="551" on="1"/>
- <pt x="123" y="802" on="0"/>
- <pt x="271" y="956" on="1"/>
- <pt x="418" y="1110" on="0"/>
- <pt x="660" y="1110" on="1"/>
- <pt x="1105" y="1110" on="0"/>
- <pt x="1105" y="567" on="1"/>
- </contour>
- <contour>
- <pt x="336" y="629" on="1"/>
- <pt x="895" y="629" on="1"/>
- <pt x="895" y="675" on="1"/>
- <pt x="895" y="987" on="0"/>
- <pt x="646" y="987" on="1"/>
- <pt x="492" y="987" on="0"/>
- <pt x="408" y="864" on="1"/>
- <pt x="349" y="778" on="0"/>
- </contour>
- <contour>
- <pt x="303" y="1579" on="1"/>
- <pt x="426" y="1579" on="1"/>
- <pt x="474" y="1431" on="0"/>
- <pt x="648" y="1431" on="1"/>
- <pt x="823" y="1431" on="0"/>
- <pt x="871" y="1579" on="1"/>
- <pt x="994" y="1579" on="1"/>
- <pt x="971" y="1490" on="0"/>
- <pt x="945" y="1444" on="1"/>
- <pt x="854" y="1289" on="0"/>
- <pt x="652" y="1289" on="1"/>
- <pt x="500" y="1289" on="0"/>
- <pt x="411" y="1370" on="1"/>
- <pt x="356" y="1419" on="0"/>
- <pt x="328" y="1491" on="1"/>
- <pt x="317" y="1520" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 82 values pushed */
- 0 0 32 14 39 25 5 18 5 14 10 48 200 18 1 10 2 1 23 1 21 2 0 20 21
- 0 2 1 8 7 2 0 2 3 0 1 35 34 30 29 4 13 39 1 0 0 0 1 0 6
- 1 21 1 4 48 200 22 21 1 0 14 20 0 2 13 7 35 34 30 29 23 22 21 1 8
- 13 14 7 8 7 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ecaron" xMin="123" yMin="-25" xMax="1105" yMax="1604">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="35" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ecircumflex" xMin="123" yMin="-25" xMax="1105" yMax="1604">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="35" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="edieresis" xMin="123" yMin="-25" xMax="1105" yMax="1480">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="34" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="edotaccent" xMin="123" yMin="-25" xMax="1105" yMax="1480">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="dotaccent" x="34" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="egrave" xMin="123" yMin="-25" xMax="1105" yMax="1604">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="-64" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="eight" xMin="120" yMin="-37" xMax="1113" yMax="1517">
- <contour>
- <pt x="413" y="803" on="1"/>
- <pt x="360" y="843" on="1"/>
- <pt x="188" y="973" on="0"/>
- <pt x="188" y="1145" on="1"/>
- <pt x="188" y="1307" on="0"/>
- <pt x="313" y="1412" on="1"/>
- <pt x="437" y="1517" on="0"/>
- <pt x="634" y="1517" on="1"/>
- <pt x="821" y="1517" on="0"/>
- <pt x="936" y="1426" on="1"/>
- <pt x="1051" y="1335" on="0"/>
- <pt x="1051" y="1185" on="1"/>
- <pt x="1051" y="1067" on="0"/>
- <pt x="993" y="988" on="1"/>
- <pt x="949" y="929" on="0"/>
- <pt x="844" y="835" on="1"/>
- <pt x="797" y="793" on="1"/>
- <pt x="865" y="747" on="1"/>
- <pt x="1009" y="650" on="0"/>
- <pt x="1061" y="572" on="1"/>
- <pt x="1113" y="495" on="0"/>
- <pt x="1113" y="381" on="1"/>
- <pt x="1113" y="195" on="0"/>
- <pt x="974" y="79" on="1"/>
- <pt x="835" y="-37" on="0"/>
- <pt x="611" y="-37" on="1"/>
- <pt x="387" y="-37" on="0"/>
- <pt x="254" y="75" on="1"/>
- <pt x="120" y="187" on="0"/>
- <pt x="120" y="372" on="1"/>
- <pt x="120" y="596" on="0"/>
- <pt x="358" y="764" on="1"/>
- </contour>
- <contour>
- <pt x="682" y="862" on="1"/>
- <pt x="866" y="1031" on="0"/>
- <pt x="866" y="1174" on="1"/>
- <pt x="866" y="1280" on="0"/>
- <pt x="802" y="1337" on="1"/>
- <pt x="737" y="1394" on="0"/>
- <pt x="612" y="1394" on="1"/>
- <pt x="503" y="1394" on="0"/>
- <pt x="437" y="1334" on="1"/>
- <pt x="372" y="1275" on="0"/>
- <pt x="372" y="1184" on="1"/>
- <pt x="372" y="1087" on="0"/>
- <pt x="499" y="990" on="1"/>
- <pt x="597" y="915" on="1"/>
- </contour>
- <contour>
- <pt x="512" y="743" on="1"/>
- <pt x="399" y="620" on="0"/>
- <pt x="360" y="552" on="1"/>
- <pt x="317" y="477" on="0"/>
- <pt x="317" y="377" on="1"/>
- <pt x="317" y="249" on="0"/>
- <pt x="404" y="168" on="1"/>
- <pt x="491" y="86" on="0"/>
- <pt x="626" y="86" on="1"/>
- <pt x="751" y="86" on="0"/>
- <pt x="827" y="158" on="1"/>
- <pt x="903" y="229" on="0"/>
- <pt x="903" y="345" on="1"/>
- <pt x="903" y="427" on="0"/>
- <pt x="864" y="480" on="1"/>
- <pt x="827" y="532" on="0"/>
- <pt x="714" y="608" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 53 values pushed */
- 0 0 54 5 25 38 5 7 48 200 25 2 7 0 1 1 46 45 32 16 0 5 0 2 3
- 0 0 14 0 0 58 39 21 50 28 29 42 19 3 34 19 11 48 200 46 45 32 29 21 16
- 11 3 0
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ellipsis" xMin="81" yMin="0" xMax="1147" yMax="247">
- <contour>
- <pt x="81" y="0" on="1"/>
- <pt x="81" y="247" on="1"/>
- <pt x="328" y="247" on="1"/>
- <pt x="328" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="491" y="0" on="1"/>
- <pt x="491" y="247" on="1"/>
- <pt x="737" y="247" on="1"/>
- <pt x="737" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="900" y="0" on="1"/>
- <pt x="900" y="247" on="1"/>
- <pt x="1147" y="247" on="1"/>
- <pt x="1147" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 56 values pushed */
- 0 0 10 9 6 5 2 1 4 5 0 1 4 48 200 11 8 7 4 3 0 5 0 14 0
- 0 9 8 4 1 10 7 6 4 1 4 3 2 4 1 0 3 4 48 200 11 10 1 5 4
- 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="emacron" xMin="123" yMin="-25" xMax="1105" yMax="1407">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="macron" x="34" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="emdash" xMin="0" yMin="543" xMax="1229" yMax="666">
- <contour>
- <pt x="0" y="543" on="1"/>
- <pt x="0" y="666" on="1"/>
- <pt x="1229" y="666" on="1"/>
- <pt x="1229" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 6 1 1 1 4 48 200 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="endash" xMin="121" yMin="543" xMax="1108" yMax="691">
- <contour>
- <pt x="121" y="543" on="1"/>
- <pt x="121" y="691" on="1"/>
- <pt x="1108" y="691" on="1"/>
- <pt x="1108" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 200 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="eng" xMin="69" yMin="-420" xMax="1045" yMax="1110">
- <contour>
- <pt x="69" y="0" on="1"/>
- <pt x="69" y="123" on="1"/>
- <pt x="192" y="123" on="1"/>
- <pt x="192" y="962" on="1"/>
- <pt x="69" y="962" on="1"/>
- <pt x="69" y="1086" on="1"/>
- <pt x="390" y="1086" on="1"/>
- <pt x="390" y="876" on="1"/>
- <pt x="459" y="981" on="0"/>
- <pt x="527" y="1034" on="1"/>
- <pt x="623" y="1110" on="0"/>
- <pt x="742" y="1110" on="1"/>
- <pt x="1043" y="1110" on="0"/>
- <pt x="1043" y="722" on="1"/>
- <pt x="1044" y="11" on="1"/>
- <pt x="1045" y="-420" on="0"/>
- <pt x="681" y="-420" on="1"/>
- <pt x="585" y="-420" on="0"/>
- <pt x="458" y="-383" on="1"/>
- <pt x="458" y="-173" on="1"/>
- <pt x="581" y="-173" on="1"/>
- <pt x="593" y="-290" on="1"/>
- <pt x="657" y="-321" on="0"/>
- <pt x="704" y="-321" on="1"/>
- <pt x="846" y="-321" on="0"/>
- <pt x="846" y="-82" on="1"/>
- <pt x="846" y="701" on="1"/>
- <pt x="846" y="956" on="0"/>
- <pt x="683" y="956" on="1"/>
- <pt x="533" y="956" on="0"/>
- <pt x="390" y="704" on="1"/>
- <pt x="390" y="123" on="1"/>
- <pt x="501" y="123" on="1"/>
- <pt x="501" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 0 0 28 30 11 23 17 16 48 200 11 1 32 31 30 26 7 4 3 2 1 9 5 0 3
- 25 21 20 19 18 5 13 16 0 33 0 1 0 6 5 1 14 33 32 21 20 4 25 18 3
- 5 4 1 0 4 13 2 0 0 31 30 7 6 10 3 2 1 4 48 200 26 25 1 19 18
- 1 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="eogonek" xMin="123" yMin="-370" xMax="1105" yMax="1110">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="ogonek" x="148" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="equal" xMin="99" yMin="346" xMax="1130" yMax="888">
- <contour>
- <pt x="99" y="346" on="1"/>
- <pt x="99" y="494" on="1"/>
- <pt x="1130" y="494" on="1"/>
- <pt x="1130" y="346" on="1"/>
- </contour>
- <contour>
- <pt x="99" y="740" on="1"/>
- <pt x="99" y="888" on="1"/>
- <pt x="1130" y="888" on="1"/>
- <pt x="1130" y="740" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 37 values pushed */
- 0 0 7 4 7 1 5 2 1 7 1 0 2 4 48 200 6 5 1 3 0 1 2 0 14
- 7 6 3 2 3 5 4 1 0 3 2 0
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="estimated" xMin="123" yMin="-25" xMax="1105" yMax="1110">
- <contour>
- <pt x="1105" y="506" on="1"/>
- <pt x="334" y="506" on="1"/>
- <pt x="348" y="389" on="0"/>
- <pt x="375" y="329" on="1"/>
- <pt x="466" y="123" on="0"/>
- <pt x="727" y="123" on="1"/>
- <pt x="888" y="123" on="0"/>
- <pt x="1076" y="210" on="1"/>
- <pt x="1076" y="62" on="1"/>
- <pt x="901" y="-25" on="0"/>
- <pt x="701" y="-25" on="1"/>
- <pt x="442" y="-25" on="0"/>
- <pt x="282" y="134" on="1"/>
- <pt x="123" y="293" on="0"/>
- <pt x="123" y="551" on="1"/>
- <pt x="123" y="802" on="0"/>
- <pt x="271" y="956" on="1"/>
- <pt x="418" y="1110" on="0"/>
- <pt x="660" y="1110" on="1"/>
- <pt x="1105" y="1110" on="0"/>
- <pt x="1105" y="567" on="1"/>
- </contour>
- <contour>
- <pt x="336" y="629" on="1"/>
- <pt x="895" y="629" on="1"/>
- <pt x="895" y="675" on="1"/>
- <pt x="895" y="987" on="0"/>
- <pt x="646" y="987" on="1"/>
- <pt x="492" y="987" on="0"/>
- <pt x="408" y="864" on="1"/>
- <pt x="349" y="778" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 25 5 18 5 14 10 48 200 18 1 10 2 1 23 1 21 2 0 20 21 0 2 1
- 8 7 2 0 2 3 0 0 0 1 0 6 1 21 1 4 48 200 22 21 1 0 14 20 0
- 2 13 7 23 22 21 1 4 13 14 7 8 7 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="eth" xMin="111" yMin="-25" xMax="1119" yMax="1614">
- <contour>
- <pt x="779" y="1039" on="1"/>
- <pt x="658" y="1216" on="0"/>
- <pt x="552" y="1291" on="1"/>
- <pt x="271" y="1098" on="1"/>
- <pt x="197" y="1202" on="1"/>
- <pt x="440" y="1366" on="1"/>
- <pt x="308" y="1456" on="0"/>
- <pt x="114" y="1456" on="1"/>
- <pt x="114" y="1579" on="1"/>
- <pt x="141" y="1579" on="1"/>
- <pt x="395" y="1579" on="0"/>
- <pt x="588" y="1467" on="1"/>
- <pt x="811" y="1614" on="1"/>
- <pt x="882" y="1514" on="1"/>
- <pt x="707" y="1395" on="1"/>
- <pt x="877" y="1258" on="0"/>
- <pt x="982" y="1068" on="1"/>
- <pt x="1119" y="819" on="0"/>
- <pt x="1119" y="568" on="1"/>
- <pt x="1119" y="306" on="0"/>
- <pt x="980" y="141" on="1"/>
- <pt x="841" y="-25" on="0"/>
- <pt x="618" y="-25" on="1"/>
- <pt x="399" y="-25" on="0"/>
- <pt x="255" y="133" on="1"/>
- <pt x="111" y="291" on="0"/>
- <pt x="111" y="532" on="1"/>
- <pt x="111" y="771" on="0"/>
- <pt x="250" y="928" on="1"/>
- <pt x="388" y="1086" on="0"/>
- <pt x="592" y="1086" on="1"/>
- <pt x="687" y="1086" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="962" on="1"/>
- <pt x="488" y="962" on="0"/>
- <pt x="405" y="839" on="1"/>
- <pt x="321" y="715" on="0"/>
- <pt x="321" y="531" on="1"/>
- <pt x="321" y="346" on="0"/>
- <pt x="405" y="222" on="1"/>
- <pt x="488" y="99" on="0"/>
- <pt x="615" y="99" on="1"/>
- <pt x="740" y="99" on="0"/>
- <pt x="824" y="221" on="1"/>
- <pt x="909" y="344" on="0"/>
- <pt x="909" y="526" on="1"/>
- <pt x="909" y="696" on="0"/>
- <pt x="840" y="814" on="1"/>
- <pt x="754" y="962" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 0 0 40 5 22 32 5 30 48 200 30 1 22 2 1 1 14 11 7 5 4 3 2 7 0
- 1 3 0 0 1 1 0 1 2 2 0 0 1 13 12 9 8 4 13 0 0 14 0 0 44
- 39 18 36 39 26 48 200 26 18 14 13 12 11 9 8 7 5 4 3 2 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="exclam" xMin="491" yMin="0" xMax="738" yMax="1480">
- <contour>
- <pt x="491" y="0" on="1"/>
- <pt x="491" y="222" on="1"/>
- <pt x="738" y="222" on="1"/>
- <pt x="738" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="553" y="419" on="1"/>
- <pt x="516" y="1086" on="1"/>
- <pt x="516" y="1480" on="1"/>
- <pt x="713" y="1480" on="1"/>
- <pt x="713" y="1086" on="1"/>
- <pt x="676" y="419" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 9 8 5 4 4 6 1 3 0 0 2 1 9 1 0 1 4 48 200 3 0 1 0 7 6
- 0 14 9 4 2 7 5 3 0 0 8 7 10 1 5 3 2 4 1 0 2 4 48 200 6
- 5 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="exclamdown" xMin="491" yMin="-395" xMax="738" yMax="1086">
- <contour>
- <pt x="738" y="1086" on="1"/>
- <pt x="738" y="864" on="1"/>
- <pt x="491" y="864" on="1"/>
- <pt x="491" y="1086" on="1"/>
- </contour>
- <contour>
- <pt x="676" y="666" on="1"/>
- <pt x="713" y="0" on="1"/>
- <pt x="713" y="-395" on="1"/>
- <pt x="516" y="-395" on="1"/>
- <pt x="516" y="0" on="1"/>
- <pt x="553" y="666" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 1 9 4 2 1 2 3 0 1 8 5 2 2 6 3 0 0 0 2 1 9 1 0 1 4
- 48 200 7 6 1 0 3 0 1 14 9 4 2 5 7 3 0 0 6 5 10 1 7 1 0
- 4 1 2 2 4 48 200 8 7 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="f" xMin="148" yMin="0" xMax="1167" yMax="1604">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="123" on="1"/>
- <pt x="419" y="123" on="1"/>
- <pt x="419" y="925" on="1"/>
- <pt x="148" y="925" on="1"/>
- <pt x="148" y="1061" on="1"/>
- <pt x="419" y="1061" on="1"/>
- <pt x="419" y="1179" on="1"/>
- <pt x="419" y="1404" on="0"/>
- <pt x="510" y="1504" on="1"/>
- <pt x="601" y="1604" on="0"/>
- <pt x="803" y="1604" on="1"/>
- <pt x="974" y="1604" on="0"/>
- <pt x="1167" y="1524" on="1"/>
- <pt x="1167" y="1277" on="1"/>
- <pt x="1044" y="1277" on="1"/>
- <pt x="1013" y="1433" on="1"/>
- <pt x="912" y="1480" on="0"/>
- <pt x="829" y="1480" on="1"/>
- <pt x="710" y="1480" on="0"/>
- <pt x="664" y="1420" on="1"/>
- <pt x="617" y="1360" on="0"/>
- <pt x="617" y="1201" on="1"/>
- <pt x="617" y="1061" on="1"/>
- <pt x="1061" y="1061" on="1"/>
- <pt x="1061" y="925" on="1"/>
- <pt x="617" y="925" on="1"/>
- <pt x="617" y="123" on="1"/>
- <pt x="987" y="123" on="1"/>
- <pt x="987" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 88 values pushed */
- 0 0 18 5 11 48 200 22 16 15 14 13 7 6 13 11 5 0 0 26 25 4 3 20 3
- 5 28 27 2 1 6 3 0 2 4 48 200 24 23 6 5 3 29 0 1 2 0 14 29 28
- 25 24 16 15 6 13 22 3 5 4 1 0 4 13 2 0 0 27 26 23 22 10 3 2 1
- 4 48 200 14 13 1 7 6 3 2 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fi" xMin="69" yMin="0" xMax="1167" yMax="1604">
- <contour>
- <pt x="69" y="0" on="1"/>
- <pt x="69" y="123" on="1"/>
- <pt x="192" y="123" on="1"/>
- <pt x="192" y="938" on="1"/>
- <pt x="75" y="938" on="1"/>
- <pt x="75" y="1073" on="1"/>
- <pt x="192" y="1073" on="1"/>
- <pt x="192" y="1247" on="1"/>
- <pt x="192" y="1410" on="0"/>
- <pt x="278" y="1507" on="1"/>
- <pt x="365" y="1604" on="0"/>
- <pt x="508" y="1604" on="1"/>
- <pt x="602" y="1604" on="0"/>
- <pt x="723" y="1555" on="1"/>
- <pt x="723" y="1345" on="1"/>
- <pt x="600" y="1345" on="1"/>
- <pt x="575" y="1468" on="1"/>
- <pt x="539" y="1487" on="0"/>
- <pt x="510" y="1487" on="1"/>
- <pt x="390" y="1487" on="0"/>
- <pt x="390" y="1301" on="1"/>
- <pt x="390" y="1073" on="1"/>
- <pt x="1044" y="1073" on="1"/>
- <pt x="1044" y="123" on="1"/>
- <pt x="1167" y="123" on="1"/>
- <pt x="1167" y="0" on="1"/>
- <pt x="748" y="0" on="1"/>
- <pt x="748" y="123" on="1"/>
- <pt x="846" y="123" on="1"/>
- <pt x="846" y="938" on="1"/>
- <pt x="390" y="938" on="1"/>
- <pt x="390" y="123" on="1"/>
- <pt x="501" y="123" on="1"/>
- <pt x="501" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="846" y="1345" on="1"/>
- <pt x="846" y="1542" on="1"/>
- <pt x="1044" y="1542" on="1"/>
- <pt x="1044" y="1345" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 129 values pushed */
- 0 0 18 40 11 48 200 16 35 14 2 20 7 2 14 5 3 32 31 28 27 24 23 2 1
- 8 3 0 3 13 11 35 0 0 37 34 15 14 10 3 35 30 29 4 3 20 3 5 2 4
- 48 200 36 35 1 22 21 6 5 3 33 26 25 0 3 3 0 14 27 26 2 28 13 3 33
- 32 16 15 4 13 20 3 25 24 2 13 22 5 4 1 0 4 13 2 0 0 35 34 29 28
- 10 3 22 31 30 21 20 10 3 2 2 4 48 200 37 36 23 22 3 14 13 1 7 6 3
- 2 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fi#1" xMin="69" yMin="0" xMax="1167" yMax="1604">
- <contour>
- <pt x="69" y="0" on="1"/>
- <pt x="69" y="123" on="1"/>
- <pt x="192" y="123" on="1"/>
- <pt x="192" y="938" on="1"/>
- <pt x="75" y="938" on="1"/>
- <pt x="75" y="1073" on="1"/>
- <pt x="192" y="1073" on="1"/>
- <pt x="192" y="1247" on="1"/>
- <pt x="192" y="1410" on="0"/>
- <pt x="278" y="1507" on="1"/>
- <pt x="365" y="1604" on="0"/>
- <pt x="508" y="1604" on="1"/>
- <pt x="602" y="1604" on="0"/>
- <pt x="723" y="1555" on="1"/>
- <pt x="723" y="1345" on="1"/>
- <pt x="600" y="1345" on="1"/>
- <pt x="575" y="1468" on="1"/>
- <pt x="539" y="1487" on="0"/>
- <pt x="510" y="1487" on="1"/>
- <pt x="390" y="1487" on="0"/>
- <pt x="390" y="1301" on="1"/>
- <pt x="390" y="1073" on="1"/>
- <pt x="1044" y="1073" on="1"/>
- <pt x="1044" y="123" on="1"/>
- <pt x="1167" y="123" on="1"/>
- <pt x="1167" y="0" on="1"/>
- <pt x="748" y="0" on="1"/>
- <pt x="748" y="123" on="1"/>
- <pt x="846" y="123" on="1"/>
- <pt x="846" y="938" on="1"/>
- <pt x="390" y="938" on="1"/>
- <pt x="390" y="123" on="1"/>
- <pt x="501" y="123" on="1"/>
- <pt x="501" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="846" y="1345" on="1"/>
- <pt x="846" y="1542" on="1"/>
- <pt x="1044" y="1542" on="1"/>
- <pt x="1044" y="1345" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 129 values pushed */
- 0 0 18 40 11 48 200 16 35 14 2 20 7 2 14 5 3 32 31 28 27 24 23 2 1
- 8 3 0 3 13 11 35 0 0 37 34 15 14 10 3 35 30 29 4 3 20 3 5 2 4
- 48 200 36 35 1 22 21 6 5 3 33 26 25 0 3 3 0 14 27 26 2 28 13 3 33
- 32 16 15 4 13 20 3 25 24 2 13 22 5 4 1 0 4 13 2 0 0 35 34 29 28
- 10 3 22 31 30 21 20 10 3 2 2 4 48 200 37 36 23 22 3 14 13 1 7 6 3
- 2 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="figuredash" xMin="121" yMin="543" xMax="1108" yMax="691">
- <contour>
- <pt x="121" y="543" on="1"/>
- <pt x="121" y="691" on="1"/>
- <pt x="1108" y="691" on="1"/>
- <pt x="1108" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 200 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="five" xMin="249" yMin="-37" xMax="1076" yMax="1480">
- <contour>
- <pt x="249" y="0" on="1"/>
- <pt x="249" y="321" on="1"/>
- <pt x="372" y="321" on="1"/>
- <pt x="397" y="123" on="1"/>
- <pt x="489" y="86" on="0"/>
- <pt x="556" y="86" on="1"/>
- <pt x="689" y="86" on="0"/>
- <pt x="777" y="184" on="1"/>
- <pt x="866" y="283" on="0"/>
- <pt x="866" y="433" on="1"/>
- <pt x="866" y="600" on="0"/>
- <pt x="747" y="699" on="1"/>
- <pt x="628" y="797" on="0"/>
- <pt x="427" y="797" on="1"/>
- <pt x="362" y="797" on="0"/>
- <pt x="280" y="783" on="1"/>
- <pt x="280" y="1480" on="1"/>
- <pt x="1045" y="1480" on="1"/>
- <pt x="1045" y="1308" on="1"/>
- <pt x="425" y="1308" on="1"/>
- <pt x="425" y="916" on="1"/>
- <pt x="474" y="919" on="0"/>
- <pt x="500" y="919" on="1"/>
- <pt x="761" y="919" on="0"/>
- <pt x="918" y="788" on="1"/>
- <pt x="1076" y="658" on="0"/>
- <pt x="1076" y="440" on="1"/>
- <pt x="1076" y="232" on="0"/>
- <pt x="930" y="98" on="1"/>
- <pt x="784" y="-37" on="0"/>
- <pt x="559" y="-37" on="1"/>
- <pt x="444" y="-37" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 0 0 13 5 22 5 5 30 48 200 30 2 22 1 22 20 15 3 2 1 6 18 2 3 0
- 1 0 2 0 0 0 19 18 22 1 16 1 4 48 200 17 16 0 14 0 0 9 39 26 48
- 200 3 2 2 19 15 3 26 17 0 0 20 19 14 1 15 1 4 48 200 18 17 1 16 15
- 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MDAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fl" xMin="69" yMin="0" xMax="1167" yMax="1604">
- <contour>
- <pt x="390" y="1061" on="1"/>
- <pt x="686" y="1061" on="1"/>
- <pt x="686" y="925" on="1"/>
- <pt x="390" y="925" on="1"/>
- <pt x="390" y="123" on="1"/>
- <pt x="501" y="123" on="1"/>
- <pt x="501" y="0" on="1"/>
- <pt x="69" y="0" on="1"/>
- <pt x="69" y="123" on="1"/>
- <pt x="192" y="123" on="1"/>
- <pt x="192" y="925" on="1"/>
- <pt x="75" y="925" on="1"/>
- <pt x="75" y="1061" on="1"/>
- <pt x="192" y="1061" on="1"/>
- <pt x="192" y="1247" on="1"/>
- <pt x="192" y="1604" on="0"/>
- <pt x="588" y="1604" on="1"/>
- <pt x="674" y="1604" on="0"/>
- <pt x="784" y="1588" on="1"/>
- <pt x="846" y="1579" on="1"/>
- <pt x="1043" y="1579" on="1"/>
- <pt x="1043" y="123" on="1"/>
- <pt x="1167" y="123" on="1"/>
- <pt x="1167" y="0" on="1"/>
- <pt x="748" y="0" on="1"/>
- <pt x="748" y="123" on="1"/>
- <pt x="846" y="123" on="1"/>
- <pt x="846" y="1450" on="1"/>
- <pt x="711" y="1487" on="0"/>
- <pt x="597" y="1487" on="1"/>
- <pt x="480" y="1487" on="0"/>
- <pt x="434" y="1447" on="1"/>
- <pt x="390" y="1407" on="0"/>
- <pt x="390" y="1301" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 108 values pushed */
- 0 0 29 40 16 48 200 33 27 14 3 19 0 3 26 25 22 21 9 8 5 4 8 2 6
- 3 16 19 0 0 11 10 3 2 20 3 0 1 4 48 200 20 19 1 13 12 1 0 3 24
- 23 7 6 3 3 0 14 25 24 6 5 2 1 6 19 0 3 23 22 2 13 20 12 11 8
- 7 4 13 9 0 0 27 26 19 10 2 20 33 4 3 0 10 3 9 2 4 48 200 21 20
- 1 14 13 10 9 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fl#1" xMin="69" yMin="0" xMax="1167" yMax="1604">
- <contour>
- <pt x="390" y="1061" on="1"/>
- <pt x="686" y="1061" on="1"/>
- <pt x="686" y="925" on="1"/>
- <pt x="390" y="925" on="1"/>
- <pt x="390" y="123" on="1"/>
- <pt x="501" y="123" on="1"/>
- <pt x="501" y="0" on="1"/>
- <pt x="69" y="0" on="1"/>
- <pt x="69" y="123" on="1"/>
- <pt x="192" y="123" on="1"/>
- <pt x="192" y="925" on="1"/>
- <pt x="75" y="925" on="1"/>
- <pt x="75" y="1061" on="1"/>
- <pt x="192" y="1061" on="1"/>
- <pt x="192" y="1247" on="1"/>
- <pt x="192" y="1604" on="0"/>
- <pt x="588" y="1604" on="1"/>
- <pt x="674" y="1604" on="0"/>
- <pt x="784" y="1588" on="1"/>
- <pt x="846" y="1579" on="1"/>
- <pt x="1043" y="1579" on="1"/>
- <pt x="1043" y="123" on="1"/>
- <pt x="1167" y="123" on="1"/>
- <pt x="1167" y="0" on="1"/>
- <pt x="748" y="0" on="1"/>
- <pt x="748" y="123" on="1"/>
- <pt x="846" y="123" on="1"/>
- <pt x="846" y="1450" on="1"/>
- <pt x="711" y="1487" on="0"/>
- <pt x="597" y="1487" on="1"/>
- <pt x="480" y="1487" on="0"/>
- <pt x="434" y="1447" on="1"/>
- <pt x="390" y="1407" on="0"/>
- <pt x="390" y="1301" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 108 values pushed */
- 0 0 29 40 16 48 200 33 27 14 3 19 0 3 26 25 22 21 9 8 5 4 8 2 6
- 3 16 19 0 0 11 10 3 2 20 3 0 1 4 48 200 20 19 1 13 12 1 0 3 24
- 23 7 6 3 3 0 14 25 24 6 5 2 1 6 19 0 3 23 22 2 13 20 12 11 8
- 7 4 13 9 0 0 27 26 19 10 2 20 33 4 3 0 10 3 9 2 4 48 200 21 20
- 1 14 13 10 9 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="florin" xMin="84" yMin="-296" xMax="1081" yMax="1517">
- <contour>
- <pt x="84" y="-296" on="1"/>
- <pt x="288" y="728" on="1"/>
- <pt x="116" y="728" on="1"/>
- <pt x="116" y="851" on="1"/>
- <pt x="313" y="851" on="1"/>
- <pt x="340" y="990" on="1"/>
- <pt x="443" y="1517" on="0"/>
- <pt x="892" y="1517" on="1"/>
- <pt x="971" y="1517" on="0"/>
- <pt x="1081" y="1499" on="1"/>
- <pt x="1081" y="1166" on="1"/>
- <pt x="958" y="1166" on="1"/>
- <pt x="933" y="1363" on="1"/>
- <pt x="853" y="1388" on="0"/>
- <pt x="805" y="1388" on="1"/>
- <pt x="618" y="1388" on="0"/>
- <pt x="555" y="1076" on="1"/>
- <pt x="510" y="851" on="1"/>
- <pt x="754" y="851" on="1"/>
- <pt x="754" y="728" on="1"/>
- <pt x="486" y="728" on="1"/>
- <pt x="282" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 14 25 7 48 200 7 0 1 12 11 10 3 0 3 3 0 1 9 0 0 0 0 20
- 19 2 1 6 3 3 1 4 48 200 18 17 4 3 3 21 0 1 2 0 14 21 20 19 18
- 17 12 11 4 3 2 1 0 12 13 9 10 9 1 0
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="four" xMin="84" yMin="0" xMax="1132" yMax="1480">
- <contour>
- <pt x="738" y="419" on="1"/>
- <pt x="84" y="419" on="1"/>
- <pt x="84" y="568" on="1"/>
- <pt x="713" y="1480" on="1"/>
- <pt x="910" y="1480" on="1"/>
- <pt x="910" y="568" on="1"/>
- <pt x="1132" y="568" on="1"/>
- <pt x="1132" y="419" on="1"/>
- <pt x="910" y="419" on="1"/>
- <pt x="910" y="123" on="1"/>
- <pt x="1108" y="123" on="1"/>
- <pt x="1108" y="0" on="1"/>
- <pt x="466" y="0" on="1"/>
- <pt x="466" y="123" on="1"/>
- <pt x="738" y="123" on="1"/>
- </contour>
- <contour>
- <pt x="238" y="568" on="1"/>
- <pt x="738" y="568" on="1"/>
- <pt x="738" y="1292" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 79 values pushed */
- 17 3 2 2 0 0 16 15 6 5 2 7 4 0 14 13 10 9 6 3 11 2 4 48 200
- 8 7 1 0 3 12 11 1 2 0 4 3 0 14 11 10 2 6 4 3 15 13 12 3 4
- 0 1 3 0 0 17 16 14 0 12 3 4 1 4 48 200 7 6 1 9 8 5 4 3 2
- 1 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="foursuperiour" xMin="284" yMin="728" xMax="918" yMax="1517">
- <contour>
- <pt x="807" y="728" on="1"/>
- <pt x="659" y="728" on="1"/>
- <pt x="659" y="907" on="1"/>
- <pt x="284" y="907" on="1"/>
- <pt x="284" y="1030" on="1"/>
- <pt x="654" y="1517" on="1"/>
- <pt x="807" y="1517" on="1"/>
- <pt x="807" y="1030" on="1"/>
- <pt x="918" y="1030" on="1"/>
- <pt x="918" y="907" on="1"/>
- <pt x="807" y="907" on="1"/>
- </contour>
- <contour>
- <pt x="422" y="1030" on="1"/>
- <pt x="659" y="1030" on="1"/>
- <pt x="659" y="1339" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 63 values pushed */
- 13 5 4 2 0 0 10 9 3 2 6 3 4 1 4 48 200 6 5 1 12 11 8 7 4
- 4 1 0 1 3 0 14 9 8 2 13 0 11 5 4 3 4 13 1 0 0 13 12 2 1
- 16 3 0 1 4 48 200 10 7 6 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="foursuperiour#1" xMin="155" yMin="-37" xMax="1073" yMax="1517">
- <contour>
- <pt x="155" y="-37" on="1"/>
- <pt x="932" y="1517" on="1"/>
- <pt x="1073" y="1517" on="1"/>
- <pt x="293" y="-37" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 2 1 1 3 0 1 2 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fraction" xMin="155" yMin="-37" xMax="1073" yMax="1517">
- <contour>
- <pt x="155" y="-37" on="1"/>
- <pt x="932" y="1517" on="1"/>
- <pt x="1073" y="1517" on="1"/>
- <pt x="293" y="-37" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 2 1 1 3 0 1 2 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fraction#1" xMin="155" yMin="-37" xMax="1073" yMax="1517">
- <contour>
- <pt x="155" y="-37" on="1"/>
- <pt x="932" y="1517" on="1"/>
- <pt x="1073" y="1517" on="1"/>
- <pt x="293" y="-37" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 2 1 1 3 0 1 2 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="g" xMin="86" yMin="-420" xMax="1160" yMax="1111">
- <contour>
- <pt x="266" y="13" on="1"/>
- <pt x="172" y="72" on="0"/>
- <pt x="172" y="152" on="1"/>
- <pt x="172" y="239" on="0"/>
- <pt x="288" y="345" on="1"/>
- <pt x="324" y="378" on="1"/>
- <pt x="233" y="433" on="0"/>
- <pt x="187" y="495" on="1"/>
- <pt x="120" y="587" on="0"/>
- <pt x="120" y="713" on="1"/>
- <pt x="120" y="893" on="0"/>
- <pt x="243" y="1001" on="1"/>
- <pt x="365" y="1110" on="0"/>
- <pt x="565" y="1110" on="1"/>
- <pt x="663" y="1110" on="0"/>
- <pt x="752" y="1078" on="1"/>
- <pt x="1160" y="1111" on="1"/>
- <pt x="1101" y="933" on="1"/>
- <pt x="897" y="965" on="1"/>
- <pt x="1000" y="833" on="0"/>
- <pt x="1000" y="704" on="1"/>
- <pt x="1000" y="538" on="0"/>
- <pt x="875" y="428" on="1"/>
- <pt x="749" y="318" on="0"/>
- <pt x="561" y="318" on="1"/>
- <pt x="508" y="318" on="0"/>
- <pt x="441" y="331" on="1"/>
- <pt x="402" y="297" on="1"/>
- <pt x="342" y="245" on="0"/>
- <pt x="342" y="204" on="1"/>
- <pt x="342" y="148" on="0"/>
- <pt x="481" y="148" on="1"/>
- <pt x="794" y="148" on="1"/>
- <pt x="1104" y="148" on="0"/>
- <pt x="1104" y="-86" on="1"/>
- <pt x="1104" y="-420" on="0"/>
- <pt x="539" y="-420" on="1"/>
- <pt x="86" y="-420" on="0"/>
- <pt x="86" y="-203" on="1"/>
- <pt x="86" y="-106" on="0"/>
- <pt x="210" y="-24" on="1"/>
- </contour>
- <contour>
- <pt x="404" y="0" on="1"/>
- <pt x="364" y="-30" on="1"/>
- <pt x="283" y="-91" on="0"/>
- <pt x="283" y="-165" on="1"/>
- <pt x="283" y="-296" on="0"/>
- <pt x="564" y="-296" on="1"/>
- <pt x="720" y="-296" on="0"/>
- <pt x="813" y="-247" on="1"/>
- <pt x="906" y="-199" on="0"/>
- <pt x="906" y="-119" on="1"/>
- <pt x="906" y="0" on="0"/>
- <pt x="728" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="567" y="987" on="1"/>
- <pt x="458" y="987" on="0"/>
- <pt x="388" y="906" on="1"/>
- <pt x="317" y="825" on="0"/>
- <pt x="317" y="703" on="1"/>
- <pt x="317" y="586" on="0"/>
- <pt x="386" y="514" on="1"/>
- <pt x="455" y="441" on="0"/>
- <pt x="564" y="441" on="1"/>
- <pt x="673" y="441" on="0"/>
- <pt x="744" y="516" on="1"/>
- <pt x="815" y="590" on="0"/>
- <pt x="815" y="708" on="1"/>
- <pt x="815" y="819" on="0"/>
- <pt x="759" y="893" on="1"/>
- <pt x="687" y="987" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 89 values pushed */
- 0 0 61 5 24 53 5 13 46 5 36 48 200 13 1 24 1 26 24 18 17 15 5 6 1
- 31 3 0 0 31 41 2 1 16 1 0 36 41 0 0 32 31 7 1 41 1 4 48 200 52
- 41 1 0 14 0 0 65 19 20 57 28 9 50 28 34 44 28 38 29 15 2 48 200 52 41
- 38 34 32 31 26 20 18 17 16 15 9 5 2 0
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="gbreve" xMin="86" yMin="-420" xMax="1160" yMax="1579">
- <component glyphName="g" x="0" y="0" flags="0x4"/>
- <component glyphName="breve" x="-54" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="gcircumflex" xMin="86" yMin="-420" xMax="1160" yMax="1604">
- <contour>
- <pt x="266" y="13" on="1"/>
- <pt x="172" y="72" on="0"/>
- <pt x="172" y="152" on="1"/>
- <pt x="172" y="239" on="0"/>
- <pt x="288" y="345" on="1"/>
- <pt x="324" y="378" on="1"/>
- <pt x="233" y="433" on="0"/>
- <pt x="187" y="495" on="1"/>
- <pt x="120" y="587" on="0"/>
- <pt x="120" y="713" on="1"/>
- <pt x="120" y="893" on="0"/>
- <pt x="243" y="1001" on="1"/>
- <pt x="365" y="1110" on="0"/>
- <pt x="565" y="1110" on="1"/>
- <pt x="663" y="1110" on="0"/>
- <pt x="752" y="1078" on="1"/>
- <pt x="1160" y="1111" on="1"/>
- <pt x="1101" y="933" on="1"/>
- <pt x="897" y="965" on="1"/>
- <pt x="1000" y="833" on="0"/>
- <pt x="1000" y="704" on="1"/>
- <pt x="1000" y="538" on="0"/>
- <pt x="875" y="428" on="1"/>
- <pt x="749" y="318" on="0"/>
- <pt x="561" y="318" on="1"/>
- <pt x="508" y="318" on="0"/>
- <pt x="441" y="331" on="1"/>
- <pt x="402" y="297" on="1"/>
- <pt x="342" y="245" on="0"/>
- <pt x="342" y="204" on="1"/>
- <pt x="342" y="148" on="0"/>
- <pt x="481" y="148" on="1"/>
- <pt x="794" y="148" on="1"/>
- <pt x="1104" y="148" on="0"/>
- <pt x="1104" y="-86" on="1"/>
- <pt x="1104" y="-420" on="0"/>
- <pt x="539" y="-420" on="1"/>
- <pt x="86" y="-420" on="0"/>
- <pt x="86" y="-203" on="1"/>
- <pt x="86" y="-106" on="0"/>
- <pt x="210" y="-24" on="1"/>
- </contour>
- <contour>
- <pt x="404" y="0" on="1"/>
- <pt x="364" y="-30" on="1"/>
- <pt x="283" y="-91" on="0"/>
- <pt x="283" y="-165" on="1"/>
- <pt x="283" y="-296" on="0"/>
- <pt x="564" y="-296" on="1"/>
- <pt x="720" y="-296" on="0"/>
- <pt x="813" y="-247" on="1"/>
- <pt x="906" y="-199" on="0"/>
- <pt x="906" y="-119" on="1"/>
- <pt x="906" y="0" on="0"/>
- <pt x="728" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="567" y="987" on="1"/>
- <pt x="458" y="987" on="0"/>
- <pt x="388" y="906" on="1"/>
- <pt x="317" y="825" on="0"/>
- <pt x="317" y="703" on="1"/>
- <pt x="317" y="586" on="0"/>
- <pt x="386" y="514" on="1"/>
- <pt x="455" y="441" on="0"/>
- <pt x="564" y="441" on="1"/>
- <pt x="673" y="441" on="0"/>
- <pt x="744" y="516" on="1"/>
- <pt x="815" y="590" on="0"/>
- <pt x="815" y="708" on="1"/>
- <pt x="815" y="819" on="0"/>
- <pt x="759" y="893" on="1"/>
- <pt x="687" y="987" on="0"/>
- </contour>
- <contour>
- <pt x="202" y="1283" on="1"/>
- <pt x="458" y="1604" on="1"/>
- <pt x="677" y="1604" on="1"/>
- <pt x="933" y="1283" on="1"/>
- <pt x="810" y="1283" on="1"/>
- <pt x="569" y="1485" on="1"/>
- <pt x="566" y="1485" on="1"/>
- <pt x="325" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 110 values pushed */
- 0 0 61 5 24 53 5 13 46 5 36 48 200 13 1 1 76 75 74 73 72 69 16 7 70
- 1 3 0 24 1 26 24 18 17 15 5 6 1 31 3 0 0 31 41 2 36 41 0 0 32
- 31 7 1 41 1 4 48 200 71 70 1 52 41 1 2 0 14 0 0 65 19 20 57 28 9
- 50 28 34 44 28 38 29 15 2 48 200 76 75 74 73 72 71 70 69 52 41 38 34 32 31
- 26 20 18 17 16 15 9 5 2 0
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="gcommaaccent" xMin="86" yMin="-420" xMax="1160" yMax="1737">
- <contour>
- <pt x="266" y="13" on="1"/>
- <pt x="172" y="72" on="0"/>
- <pt x="172" y="152" on="1"/>
- <pt x="172" y="239" on="0"/>
- <pt x="288" y="345" on="1"/>
- <pt x="324" y="378" on="1"/>
- <pt x="233" y="433" on="0"/>
- <pt x="187" y="495" on="1"/>
- <pt x="120" y="587" on="0"/>
- <pt x="120" y="713" on="1"/>
- <pt x="120" y="893" on="0"/>
- <pt x="243" y="1001" on="1"/>
- <pt x="365" y="1110" on="0"/>
- <pt x="565" y="1110" on="1"/>
- <pt x="663" y="1110" on="0"/>
- <pt x="752" y="1078" on="1"/>
- <pt x="1160" y="1111" on="1"/>
- <pt x="1101" y="933" on="1"/>
- <pt x="897" y="965" on="1"/>
- <pt x="1000" y="833" on="0"/>
- <pt x="1000" y="704" on="1"/>
- <pt x="1000" y="538" on="0"/>
- <pt x="875" y="428" on="1"/>
- <pt x="749" y="318" on="0"/>
- <pt x="561" y="318" on="1"/>
- <pt x="508" y="318" on="0"/>
- <pt x="441" y="331" on="1"/>
- <pt x="402" y="297" on="1"/>
- <pt x="342" y="245" on="0"/>
- <pt x="342" y="204" on="1"/>
- <pt x="342" y="148" on="0"/>
- <pt x="481" y="148" on="1"/>
- <pt x="794" y="148" on="1"/>
- <pt x="1104" y="148" on="0"/>
- <pt x="1104" y="-86" on="1"/>
- <pt x="1104" y="-420" on="0"/>
- <pt x="539" y="-420" on="1"/>
- <pt x="86" y="-420" on="0"/>
- <pt x="86" y="-203" on="1"/>
- <pt x="86" y="-106" on="0"/>
- <pt x="210" y="-24" on="1"/>
- </contour>
- <contour>
- <pt x="404" y="0" on="1"/>
- <pt x="364" y="-30" on="1"/>
- <pt x="283" y="-91" on="0"/>
- <pt x="283" y="-165" on="1"/>
- <pt x="283" y="-296" on="0"/>
- <pt x="564" y="-296" on="1"/>
- <pt x="720" y="-296" on="0"/>
- <pt x="813" y="-247" on="1"/>
- <pt x="906" y="-199" on="0"/>
- <pt x="906" y="-119" on="1"/>
- <pt x="906" y="0" on="0"/>
- <pt x="728" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="567" y="987" on="1"/>
- <pt x="458" y="987" on="0"/>
- <pt x="388" y="906" on="1"/>
- <pt x="317" y="825" on="0"/>
- <pt x="317" y="703" on="1"/>
- <pt x="317" y="586" on="0"/>
- <pt x="386" y="514" on="1"/>
- <pt x="455" y="441" on="0"/>
- <pt x="564" y="441" on="1"/>
- <pt x="673" y="441" on="0"/>
- <pt x="744" y="516" on="1"/>
- <pt x="815" y="590" on="0"/>
- <pt x="815" y="708" on="1"/>
- <pt x="815" y="819" on="0"/>
- <pt x="759" y="893" on="1"/>
- <pt x="687" y="987" on="0"/>
- </contour>
- <contour>
- <pt x="659" y="1737" on="1"/>
- <pt x="659" y="1678" on="1"/>
- <pt x="582" y="1657" on="0"/>
- <pt x="582" y="1497" on="1"/>
- <pt x="582" y="1480" on="1"/>
- <pt x="659" y="1480" on="1"/>
- <pt x="659" y="1283" on="1"/>
- <pt x="461" y="1283" on="1"/>
- <pt x="461" y="1454" on="1"/>
- <pt x="462" y="1716" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 135 values pushed */
- 0 0 61 5 24 53 5 13 46 5 36 48 200 13 1 1 16 75 1 2 0 24 1 26 24
- 18 17 15 5 6 1 31 3 0 0 31 41 2 77 74 73 72 70 69 6 13 75 36 41 0
- 0 32 31 7 1 41 1 4 48 200 76 75 1 52 41 1 2 0 14 0 0 65 19 20 57
- 28 9 50 28 34 44 28 38 29 15 2 48 200 73 72 31 3 69 76 3 52 32 18 17 16
- 15 6 13 34 20 69 41 26 5 0 4 13 38 9 2 3 12 76 0 0 75 74 70 69 10
- 3 76 1 4 48 200 77 76 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="gdotaccent" xMin="86" yMin="-420" xMax="1160" yMax="1480">
- <contour>
- <pt x="266" y="13" on="1"/>
- <pt x="172" y="72" on="0"/>
- <pt x="172" y="152" on="1"/>
- <pt x="172" y="239" on="0"/>
- <pt x="288" y="345" on="1"/>
- <pt x="324" y="378" on="1"/>
- <pt x="233" y="433" on="0"/>
- <pt x="187" y="495" on="1"/>
- <pt x="120" y="587" on="0"/>
- <pt x="120" y="713" on="1"/>
- <pt x="120" y="893" on="0"/>
- <pt x="243" y="1001" on="1"/>
- <pt x="365" y="1110" on="0"/>
- <pt x="565" y="1110" on="1"/>
- <pt x="663" y="1110" on="0"/>
- <pt x="752" y="1078" on="1"/>
- <pt x="1160" y="1111" on="1"/>
- <pt x="1101" y="933" on="1"/>
- <pt x="897" y="965" on="1"/>
- <pt x="1000" y="833" on="0"/>
- <pt x="1000" y="704" on="1"/>
- <pt x="1000" y="538" on="0"/>
- <pt x="875" y="428" on="1"/>
- <pt x="749" y="318" on="0"/>
- <pt x="561" y="318" on="1"/>
- <pt x="508" y="318" on="0"/>
- <pt x="441" y="331" on="1"/>
- <pt x="402" y="297" on="1"/>
- <pt x="342" y="245" on="0"/>
- <pt x="342" y="204" on="1"/>
- <pt x="342" y="148" on="0"/>
- <pt x="481" y="148" on="1"/>
- <pt x="794" y="148" on="1"/>
- <pt x="1104" y="148" on="0"/>
- <pt x="1104" y="-86" on="1"/>
- <pt x="1104" y="-420" on="0"/>
- <pt x="539" y="-420" on="1"/>
- <pt x="86" y="-420" on="0"/>
- <pt x="86" y="-203" on="1"/>
- <pt x="86" y="-106" on="0"/>
- <pt x="210" y="-24" on="1"/>
- </contour>
- <contour>
- <pt x="404" y="0" on="1"/>
- <pt x="364" y="-30" on="1"/>
- <pt x="283" y="-91" on="0"/>
- <pt x="283" y="-165" on="1"/>
- <pt x="283" y="-296" on="0"/>
- <pt x="564" y="-296" on="1"/>
- <pt x="720" y="-296" on="0"/>
- <pt x="813" y="-247" on="1"/>
- <pt x="906" y="-199" on="0"/>
- <pt x="906" y="-119" on="1"/>
- <pt x="906" y="0" on="0"/>
- <pt x="728" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="567" y="987" on="1"/>
- <pt x="458" y="987" on="0"/>
- <pt x="388" y="906" on="1"/>
- <pt x="317" y="825" on="0"/>
- <pt x="317" y="703" on="1"/>
- <pt x="317" y="586" on="0"/>
- <pt x="386" y="514" on="1"/>
- <pt x="455" y="441" on="0"/>
- <pt x="564" y="441" on="1"/>
- <pt x="673" y="441" on="0"/>
- <pt x="744" y="516" on="1"/>
- <pt x="815" y="590" on="0"/>
- <pt x="815" y="708" on="1"/>
- <pt x="815" y="819" on="0"/>
- <pt x="759" y="893" on="1"/>
- <pt x="687" y="987" on="0"/>
- </contour>
- <contour>
- <pt x="461" y="1283" on="1"/>
- <pt x="461" y="1480" on="1"/>
- <pt x="658" y="1480" on="1"/>
- <pt x="658" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 125 values pushed */
- 0 0 61 5 24 53 5 13 46 5 36 48 200 13 1 1 16 69 1 2 0 24 1 26 24
- 18 17 15 5 6 1 31 3 0 0 31 41 2 36 41 0 0 72 69 10 1 70 32 31 7
- 1 41 2 4 48 200 52 41 1 0 71 70 0 14 0 0 65 19 20 57 28 9 50 28 34
- 44 28 38 29 15 2 48 200 31 71 69 2 52 32 18 17 16 15 6 13 34 20 71 41 26
- 5 0 4 13 38 9 2 3 12 69 0 0 72 71 10 1 69 1 4 48 200 70 69 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="germandbls" xMin="62" yMin="-25" xMax="1193" yMax="1604">
- <contour>
- <pt x="62" y="0" on="1"/>
- <pt x="62" y="123" on="1"/>
- <pt x="197" y="123" on="1"/>
- <pt x="197" y="1103" on="1"/>
- <pt x="197" y="1293" on="0"/>
- <pt x="219" y="1373" on="1"/>
- <pt x="241" y="1453" on="0"/>
- <pt x="309" y="1512" on="1"/>
- <pt x="415" y="1604" on="0"/>
- <pt x="609" y="1604" on="1"/>
- <pt x="789" y="1604" on="0"/>
- <pt x="897" y="1539" on="1"/>
- <pt x="1005" y="1474" on="0"/>
- <pt x="1005" y="1363" on="1"/>
- <pt x="1005" y="1245" on="0"/>
- <pt x="880" y="1142" on="1"/>
- <pt x="750" y="1035" on="1"/>
- <pt x="682" y="979" on="0"/>
- <pt x="682" y="913" on="1"/>
- <pt x="682" y="844" on="0"/>
- <pt x="806" y="751" on="1"/>
- <pt x="941" y="650" on="1"/>
- <pt x="1104" y="528" on="0"/>
- <pt x="1147" y="468" on="1"/>
- <pt x="1193" y="403" on="0"/>
- <pt x="1193" y="300" on="1"/>
- <pt x="1193" y="155" on="0"/>
- <pt x="1099" y="65" on="1"/>
- <pt x="1005" y="-25" on="0"/>
- <pt x="847" y="-25" on="1"/>
- <pt x="733" y="-25" on="0"/>
- <pt x="604" y="12" on="1"/>
- <pt x="604" y="290" on="1"/>
- <pt x="715" y="290" on="1"/>
- <pt x="740" y="142" on="1"/>
- <pt x="812" y="99" on="0"/>
- <pt x="875" y="99" on="1"/>
- <pt x="1026" y="99" on="0"/>
- <pt x="1026" y="250" on="1"/>
- <pt x="1026" y="357" on="0"/>
- <pt x="916" y="439" on="1"/>
- <pt x="817" y="513" on="1"/>
- <pt x="693" y="606" on="1"/>
- <pt x="572" y="697" on="0"/>
- <pt x="538" y="742" on="1"/>
- <pt x="503" y="789" on="0"/>
- <pt x="503" y="854" on="1"/>
- <pt x="503" y="961" on="0"/>
- <pt x="606" y="1065" on="1"/>
- <pt x="704" y="1164" on="1"/>
- <pt x="808" y="1269" on="0"/>
- <pt x="808" y="1359" on="1"/>
- <pt x="808" y="1481" on="0"/>
- <pt x="618" y="1481" on="1"/>
- <pt x="496" y="1481" on="0"/>
- <pt x="445" y="1430" on="1"/>
- <pt x="395" y="1380" on="0"/>
- <pt x="395" y="1256" on="1"/>
- <pt x="395" y="123" on="1"/>
- <pt x="518" y="123" on="1"/>
- <pt x="518" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 0 0 53 5 9 36 5 29 48 200 29 2 59 58 57 34 33 32 31 3 2 1 10 13 9
- 0 60 0 1 0 14 0 0 51 28 13 38 15 25 18 13 46 48 200 46 60 59 46 3 31
- 57 3 34 33 2 13 25 13 31 1 0 2 0 0 58 57 10 1 2 1 4 48 200 32 31
- 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="grave" xMin="392" yMin="1283" xMax="836" yMax="1604">
- <contour>
- <pt x="836" y="1283" on="1"/>
- <pt x="713" y="1283" on="1"/>
- <pt x="392" y="1604" on="1"/>
- <pt x="620" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 12 values pushed */
- 1 0 2 3 2 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="greater" xMin="99" yMin="0" xMax="1131" yMax="1234">
- <contour>
- <pt x="99" y="0" on="1"/>
- <pt x="99" y="173" on="1"/>
- <pt x="842" y="617" on="1"/>
- <pt x="99" y="1061" on="1"/>
- <pt x="99" y="1234" on="1"/>
- <pt x="1131" y="617" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 18 values pushed */
- 5 4 3 2 1 0 14 5 2 2 13 0 4 3 1 0 3 0
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="guillemotleft" xMin="82" yMin="99" xMax="1106" yMax="987">
- <contour>
- <pt x="1106" y="185" on="1"/>
- <pt x="1020" y="99" on="1"/>
- <pt x="575" y="543" on="1"/>
- <pt x="1020" y="987" on="1"/>
- <pt x="1106" y="901" on="1"/>
- <pt x="822" y="543" on="1"/>
- </contour>
- <contour>
- <pt x="613" y="185" on="1"/>
- <pt x="526" y="99" on="1"/>
- <pt x="82" y="543" on="1"/>
- <pt x="526" y="987" on="1"/>
- <pt x="613" y="901" on="1"/>
- <pt x="329" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 11 10 9 8 7 6 5 4 3 2 1 0 14 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="guillemotright" xMin="123" yMin="99" xMax="1147" yMax="987">
- <contour>
- <pt x="123" y="185" on="1"/>
- <pt x="407" y="543" on="1"/>
- <pt x="123" y="901" on="1"/>
- <pt x="209" y="987" on="1"/>
- <pt x="653" y="543" on="1"/>
- <pt x="209" y="99" on="1"/>
- </contour>
- <contour>
- <pt x="616" y="185" on="1"/>
- <pt x="900" y="543" on="1"/>
- <pt x="616" y="901" on="1"/>
- <pt x="703" y="987" on="1"/>
- <pt x="1147" y="543" on="1"/>
- <pt x="703" y="99" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 11 10 9 8 7 6 5 4 3 2 1 0 14 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="guilsinglleft" xMin="234" yMin="99" xMax="946" yMax="987">
- <contour>
- <pt x="946" y="901" on="1"/>
- <pt x="508" y="543" on="1"/>
- <pt x="946" y="185" on="1"/>
- <pt x="860" y="99" on="1"/>
- <pt x="234" y="543" on="1"/>
- <pt x="860" y="987" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 5 4 3 2 1 0 14 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="guilsinglright" xMin="283" yMin="99" xMax="995" yMax="987">
- <contour>
- <pt x="283" y="185" on="1"/>
- <pt x="721" y="543" on="1"/>
- <pt x="283" y="901" on="1"/>
- <pt x="369" y="987" on="1"/>
- <pt x="995" y="543" on="1"/>
- <pt x="369" y="99" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 5 4 3 2 1 0 14 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="h" xMin="69" yMin="0" xMax="1167" yMax="1579">
- <contour>
- <pt x="69" y="0" on="1"/>
- <pt x="69" y="123" on="1"/>
- <pt x="192" y="123" on="1"/>
- <pt x="192" y="1456" on="1"/>
- <pt x="69" y="1456" on="1"/>
- <pt x="69" y="1579" on="1"/>
- <pt x="390" y="1579" on="1"/>
- <pt x="390" y="876" on="1"/>
- <pt x="459" y="981" on="0"/>
- <pt x="527" y="1034" on="1"/>
- <pt x="623" y="1110" on="0"/>
- <pt x="742" y="1110" on="1"/>
- <pt x="1043" y="1110" on="0"/>
- <pt x="1043" y="722" on="1"/>
- <pt x="1043" y="123" on="1"/>
- <pt x="1167" y="123" on="1"/>
- <pt x="1167" y="0" on="1"/>
- <pt x="747" y="0" on="1"/>
- <pt x="747" y="123" on="1"/>
- <pt x="846" y="123" on="1"/>
- <pt x="846" y="701" on="1"/>
- <pt x="846" y="956" on="0"/>
- <pt x="683" y="956" on="1"/>
- <pt x="533" y="956" on="0"/>
- <pt x="390" y="704" on="1"/>
- <pt x="390" y="123" on="1"/>
- <pt x="501" y="123" on="1"/>
- <pt x="501" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 92 values pushed */
- 0 0 22 30 11 48 200 11 1 1 4 3 2 5 1 3 0 1 26 25 24 20 19 18 15
- 14 13 7 2 1 12 1 0 3 0 6 5 1 27 17 16 0 3 2 0 14 27 26 18 17
- 4 19 6 3 16 15 2 13 13 5 4 1 0 4 13 2 0 0 20 19 10 1 13 25 24
- 7 6 10 3 2 2 4 48 200 14 13 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hbar" xMin="69" yMin="0" xMax="1167" yMax="1579">
- <contour>
- <pt x="390" y="876" on="1"/>
- <pt x="459" y="981" on="0"/>
- <pt x="527" y="1034" on="1"/>
- <pt x="623" y="1110" on="0"/>
- <pt x="742" y="1110" on="1"/>
- <pt x="1043" y="1110" on="0"/>
- <pt x="1043" y="722" on="1"/>
- <pt x="1043" y="123" on="1"/>
- <pt x="1167" y="123" on="1"/>
- <pt x="1167" y="0" on="1"/>
- <pt x="747" y="0" on="1"/>
- <pt x="747" y="123" on="1"/>
- <pt x="846" y="123" on="1"/>
- <pt x="846" y="701" on="1"/>
- <pt x="846" y="956" on="0"/>
- <pt x="683" y="956" on="1"/>
- <pt x="533" y="956" on="0"/>
- <pt x="390" y="704" on="1"/>
- <pt x="390" y="123" on="1"/>
- <pt x="501" y="123" on="1"/>
- <pt x="501" y="0" on="1"/>
- <pt x="69" y="0" on="1"/>
- <pt x="69" y="123" on="1"/>
- <pt x="192" y="123" on="1"/>
- <pt x="192" y="1234" on="1"/>
- <pt x="69" y="1234" on="1"/>
- <pt x="69" y="1332" on="1"/>
- <pt x="192" y="1332" on="1"/>
- <pt x="192" y="1456" on="1"/>
- <pt x="69" y="1456" on="1"/>
- <pt x="69" y="1579" on="1"/>
- <pt x="390" y="1579" on="1"/>
- <pt x="390" y="1332" on="1"/>
- <pt x="686" y="1332" on="1"/>
- <pt x="686" y="1234" on="1"/>
- <pt x="390" y="1234" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 116 values pushed */
- 0 0 15 30 4 48 200 4 1 29 28 2 30 26 3 1 23 22 19 18 17 13 12 11 8
- 7 6 0 12 1 9 3 0 0 0 35 34 25 24 33 3 26 1 4 48 200 31 30 1 33
- 32 27 26 3 21 20 10 9 3 3 0 14 34 33 20 19 11 10 6 12 0 3 9 8 2
- 13 6 30 29 26 25 22 21 6 13 23 0 0 13 12 10 1 6 35 32 31 18 17 0 10
- 5 23 2 4 48 200 7 6 1 28 27 24 23 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hcircumflex" xMin="69" yMin="0" xMax="1167" yMax="1999">
- <contour>
- <pt x="69" y="0" on="1"/>
- <pt x="69" y="123" on="1"/>
- <pt x="192" y="123" on="1"/>
- <pt x="192" y="1456" on="1"/>
- <pt x="69" y="1456" on="1"/>
- <pt x="69" y="1579" on="1"/>
- <pt x="390" y="1579" on="1"/>
- <pt x="390" y="876" on="1"/>
- <pt x="459" y="981" on="0"/>
- <pt x="527" y="1034" on="1"/>
- <pt x="623" y="1110" on="0"/>
- <pt x="742" y="1110" on="1"/>
- <pt x="1043" y="1110" on="0"/>
- <pt x="1043" y="722" on="1"/>
- <pt x="1043" y="123" on="1"/>
- <pt x="1167" y="123" on="1"/>
- <pt x="1167" y="0" on="1"/>
- <pt x="747" y="0" on="1"/>
- <pt x="747" y="123" on="1"/>
- <pt x="846" y="123" on="1"/>
- <pt x="846" y="701" on="1"/>
- <pt x="846" y="956" on="0"/>
- <pt x="683" y="956" on="1"/>
- <pt x="533" y="956" on="0"/>
- <pt x="390" y="704" on="1"/>
- <pt x="390" y="123" on="1"/>
- <pt x="501" y="123" on="1"/>
- <pt x="501" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="254" y="1678" on="1"/>
- <pt x="510" y="1999" on="1"/>
- <pt x="729" y="1999" on="1"/>
- <pt x="985" y="1678" on="1"/>
- <pt x="862" y="1678" on="1"/>
- <pt x="621" y="1880" on="1"/>
- <pt x="618" y="1880" on="1"/>
- <pt x="377" y="1678" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 121 values pushed */
- 0 0 22 35 11 48 200 11 1 35 34 33 32 31 28 6 29 5 3 1 4 3 2 5 1
- 3 0 1 26 25 24 20 19 18 15 14 13 7 2 1 12 1 0 3 0 30 29 1 6 5
- 1 27 17 16 0 3 3 0 14 32 31 2 13 19 3 34 33 30 29 27 26 18 17 8 19
- 6 3 35 28 2 6 2 3 16 15 2 13 13 5 4 1 0 4 13 2 0 0 20 19 10
- 1 13 25 24 7 6 10 3 2 2 4 48 200 14 13 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hungarumlaut" xMin="223" yMin="1283" xMax="1006" yMax="1604">
- <contour>
- <pt x="223" y="1283" on="1"/>
- <pt x="463" y="1604" on="1"/>
- <pt x="655" y="1604" on="1"/>
- <pt x="334" y="1283" on="1"/>
- </contour>
- <contour>
- <pt x="574" y="1283" on="1"/>
- <pt x="815" y="1604" on="1"/>
- <pt x="1006" y="1604" on="1"/>
- <pt x="685" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 22 values pushed */
- 7 4 3 0 4 13 1 6 5 2 1 3 0 14 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hyphen" xMin="148" yMin="543" xMax="1081" yMax="691">
- <contour>
- <pt x="148" y="543" on="1"/>
- <pt x="148" y="691" on="1"/>
- <pt x="1081" y="691" on="1"/>
- <pt x="1081" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 200 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hyphen#1" xMin="148" yMin="543" xMax="1081" yMax="691">
- <contour>
- <pt x="148" y="543" on="1"/>
- <pt x="148" y="691" on="1"/>
- <pt x="1081" y="691" on="1"/>
- <pt x="1081" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 200 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="i" xMin="148" yMin="0" xMax="1105" yMax="1579">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="123" on="1"/>
- <pt x="538" y="123" on="1"/>
- <pt x="538" y="962" on="1"/>
- <pt x="148" y="962" on="1"/>
- <pt x="148" y="1086" on="1"/>
- <pt x="735" y="1086" on="1"/>
- <pt x="735" y="123" on="1"/>
- <pt x="1105" y="123" on="1"/>
- <pt x="1105" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="528" y="1332" on="1"/>
- <pt x="528" y="1579" on="1"/>
- <pt x="750" y="1579" on="1"/>
- <pt x="750" y="1332" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 0 0 13 10 4 1 11 4 3 6 1 5 8 7 2 1 6 3 0 3 4 48 200 12 11
- 1 9 0 1 2 0 6 5 1 14 9 8 2 13 12 5 4 1 0 4 13 10 0 0 13
- 12 9 1 10 7 6 10 1 2 2 4 48 200 11 10 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="iacute" xMin="148" yMin="0" xMax="1105" yMax="1604">
- <component glyphName="dotlessi" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="146" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ibreve" xMin="148" yMin="0" xMax="1105" yMax="1579">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="123" on="1"/>
- <pt x="538" y="123" on="1"/>
- <pt x="538" y="962" on="1"/>
- <pt x="148" y="962" on="1"/>
- <pt x="148" y="1086" on="1"/>
- <pt x="735" y="1086" on="1"/>
- <pt x="735" y="123" on="1"/>
- <pt x="1105" y="123" on="1"/>
- <pt x="1105" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="279" y="1579" on="1"/>
- <pt x="402" y="1579" on="1"/>
- <pt x="450" y="1431" on="0"/>
- <pt x="624" y="1431" on="1"/>
- <pt x="799" y="1431" on="0"/>
- <pt x="847" y="1579" on="1"/>
- <pt x="970" y="1579" on="1"/>
- <pt x="948" y="1490" on="0"/>
- <pt x="921" y="1444" on="1"/>
- <pt x="830" y="1289" on="0"/>
- <pt x="629" y="1289" on="1"/>
- <pt x="476" y="1289" on="0"/>
- <pt x="387" y="1370" on="1"/>
- <pt x="332" y="1419" on="0"/>
- <pt x="304" y="1491" on="1"/>
- <pt x="293" y="1520" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 0 0 13 14 20 48 200 16 15 11 10 4 13 20 5 0 0 4 3 6 1 5 8 7 2
- 1 6 3 0 2 4 48 200 9 0 1 0 6 5 1 14 16 15 9 8 4 13 6 11 10
- 5 4 1 0 6 13 2 0 0 7 6 10 1 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="icircumflex" xMin="148" yMin="0" xMax="1105" yMax="1604">
- <component glyphName="dotlessi" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="23" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="idieresis" xMin="148" yMin="0" xMax="1105" yMax="1480">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="123" on="1"/>
- <pt x="538" y="123" on="1"/>
- <pt x="538" y="962" on="1"/>
- <pt x="148" y="962" on="1"/>
- <pt x="148" y="1086" on="1"/>
- <pt x="735" y="1086" on="1"/>
- <pt x="735" y="123" on="1"/>
- <pt x="1105" y="123" on="1"/>
- <pt x="1105" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="303" y="1283" on="1"/>
- <pt x="303" y="1480" on="1"/>
- <pt x="500" y="1480" on="1"/>
- <pt x="500" y="1283" on="1"/>
- </contour>
- <contour>
- <pt x="772" y="1283" on="1"/>
- <pt x="772" y="1480" on="1"/>
- <pt x="969" y="1480" on="1"/>
- <pt x="969" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 0 0 17 14 13 10 10 3 11 4 3 6 1 5 8 7 2 1 6 3 0 3 4 48 200
- 9 0 1 0 16 15 12 11 0 3 6 5 1 14 9 8 2 13 16 5 4 1 0 4 13
- 10 0 0 15 14 10 1 16 13 12 10 1 10 7 6 10 1 2 3 4 48 200 17 16 1
- 11 10 1 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="igrave" xMin="148" yMin="0" xMax="1105" yMax="1604">
- <component glyphName="dotlessi" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="-101" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ij" xMin="57" yMin="-420" xMax="1056" yMax="1579">
- <contour>
- <pt x="57" y="0" on="1"/>
- <pt x="57" y="123" on="1"/>
- <pt x="205" y="123" on="1"/>
- <pt x="205" y="962" on="1"/>
- <pt x="57" y="962" on="1"/>
- <pt x="57" y="1086" on="1"/>
- <pt x="402" y="1086" on="1"/>
- <pt x="402" y="123" on="1"/>
- <pt x="550" y="123" on="1"/>
- <pt x="550" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1056" y="1086" on="1"/>
- <pt x="1056" y="11" on="1"/>
- <pt x="1056" y="-420" on="0"/>
- <pt x="693" y="-420" on="1"/>
- <pt x="599" y="-420" on="0"/>
- <pt x="470" y="-383" on="1"/>
- <pt x="470" y="-173" on="1"/>
- <pt x="594" y="-173" on="1"/>
- <pt x="606" y="-290" on="1"/>
- <pt x="669" y="-321" on="0"/>
- <pt x="716" y="-321" on="1"/>
- <pt x="859" y="-321" on="0"/>
- <pt x="859" y="-82" on="1"/>
- <pt x="859" y="962" on="1"/>
- <pt x="662" y="962" on="1"/>
- <pt x="662" y="1086" on="1"/>
- </contour>
- <contour>
- <pt x="180" y="1332" on="1"/>
- <pt x="180" y="1579" on="1"/>
- <pt x="402" y="1579" on="1"/>
- <pt x="402" y="1332" on="1"/>
- </contour>
- <contour>
- <pt x="834" y="1332" on="1"/>
- <pt x="834" y="1579" on="1"/>
- <pt x="1056" y="1579" on="1"/>
- <pt x="1056" y="1332" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 120 values pushed */
- 0 0 20 17 13 48 200 11 1 0 2 22 18 17 16 15 5 13 13 0 0 0 33 30 29
- 26 4 3 27 24 23 4 3 6 3 5 8 7 2 1 6 3 0 3 4 48 200 32 31 28
- 27 3 9 0 1 2 0 25 10 6 5 1 3 14 25 24 18 17 9 8 6 30 15 3 5
- 4 1 0 4 13 26 0 0 31 30 9 1 10 23 22 10 1 10 29 28 7 6 10 3 2
- 3 4 48 200 27 26 1 33 32 11 10 3 16 15 1 3 2 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="imacron" xMin="148" yMin="0" xMax="1105" yMax="1407">
- <component glyphName="dotlessi" x="0" y="0" flags="0x4"/>
- <component glyphName="macron" x="-22" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="iogonek" xMin="148" yMin="-370" xMax="1105" yMax="1579">
- <component glyphName="i" x="0" y="0" flags="0x4"/>
- <component glyphName="ogonek" x="221" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="itilde" xMin="148" yMin="0" xMax="1105" yMax="1518">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="123" on="1"/>
- <pt x="538" y="123" on="1"/>
- <pt x="538" y="962" on="1"/>
- <pt x="148" y="962" on="1"/>
- <pt x="148" y="1086" on="1"/>
- <pt x="735" y="1086" on="1"/>
- <pt x="735" y="123" on="1"/>
- <pt x="1105" y="123" on="1"/>
- <pt x="1105" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="247" y="1283" on="1"/>
- <pt x="253" y="1377" on="0"/>
- <pt x="278" y="1427" on="1"/>
- <pt x="323" y="1518" on="0"/>
- <pt x="432" y="1518" on="1"/>
- <pt x="504" y="1518" on="0"/>
- <pt x="567" y="1479" on="1"/>
- <pt x="627" y="1442" on="1"/>
- <pt x="689" y="1404" on="0"/>
- <pt x="723" y="1404" on="1"/>
- <pt x="791" y="1404" on="0"/>
- <pt x="802" y="1518" on="1"/>
- <pt x="913" y="1518" on="1"/>
- <pt x="906" y="1424" on="0"/>
- <pt x="881" y="1374" on="1"/>
- <pt x="835" y="1283" on="0"/>
- <pt x="728" y="1283" on="1"/>
- <pt x="655" y="1283" on="0"/>
- <pt x="592" y="1322" on="1"/>
- <pt x="532" y="1359" on="1"/>
- <pt x="472" y="1396" on="0"/>
- <pt x="436" y="1396" on="1"/>
- <pt x="368" y="1396" on="0"/>
- <pt x="357" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 0 0 31 5 14 19 5 26 48 200 14 0 26 1 33 26 10 3 0 5 3 0 1 22 21
- 2 13 0 0 0 0 4 3 6 1 5 8 7 2 1 6 3 0 2 4 48 200 9 0 1
- 0 6 5 1 14 22 21 9 8 4 13 6 33 10 5 4 1 0 6 13 2 0 0 7 6
- 10 1 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="j" xMin="159" yMin="-420" xMax="915" yMax="1579">
- <contour>
- <pt x="159" y="-344" on="1"/>
- <pt x="159" y="-25" on="1"/>
- <pt x="282" y="-25" on="1"/>
- <pt x="313" y="-243" on="1"/>
- <pt x="381" y="-296" on="0"/>
- <pt x="460" y="-296" on="1"/>
- <pt x="592" y="-296" on="0"/>
- <pt x="648" y="-200" on="1"/>
- <pt x="705" y="-104" on="0"/>
- <pt x="705" y="127" on="1"/>
- <pt x="705" y="962" on="1"/>
- <pt x="261" y="962" on="1"/>
- <pt x="261" y="1086" on="1"/>
- <pt x="903" y="1086" on="1"/>
- <pt x="903" y="66" on="1"/>
- <pt x="903" y="-164" on="0"/>
- <pt x="790" y="-292" on="1"/>
- <pt x="677" y="-420" on="0"/>
- <pt x="476" y="-420" on="1"/>
- <pt x="337" y="-420" on="0"/>
- </contour>
- <contour>
- <pt x="693" y="1332" on="1"/>
- <pt x="693" y="1579" on="1"/>
- <pt x="915" y="1579" on="1"/>
- <pt x="915" y="1332" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 84 values pushed */
- 0 0 5 5 18 48 200 1 14 9 2 10 2 3 0 1 3 2 1 0 4 13 18 2 0
- 0 0 23 20 4 1 21 11 10 6 1 12 2 4 48 200 22 21 1 0 13 12 1 14 12
- 11 3 2 4 20 0 3 0 0 21 20 9 1 22 10 9 10 1 13 2 4 48 200 23 22
- 1 14 13 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="jcircumflex" xMin="159" yMin="-420" xMax="1092" yMax="1604">
- <contour>
- <pt x="159" y="-344" on="1"/>
- <pt x="159" y="-25" on="1"/>
- <pt x="282" y="-25" on="1"/>
- <pt x="313" y="-243" on="1"/>
- <pt x="381" y="-296" on="0"/>
- <pt x="460" y="-296" on="1"/>
- <pt x="592" y="-296" on="0"/>
- <pt x="648" y="-200" on="1"/>
- <pt x="705" y="-104" on="0"/>
- <pt x="705" y="127" on="1"/>
- <pt x="705" y="962" on="1"/>
- <pt x="261" y="962" on="1"/>
- <pt x="261" y="1086" on="1"/>
- <pt x="903" y="1086" on="1"/>
- <pt x="903" y="66" on="1"/>
- <pt x="903" y="-164" on="0"/>
- <pt x="790" y="-292" on="1"/>
- <pt x="677" y="-420" on="0"/>
- <pt x="476" y="-420" on="1"/>
- <pt x="337" y="-420" on="0"/>
- </contour>
- <contour>
- <pt x="360" y="1283" on="1"/>
- <pt x="617" y="1604" on="1"/>
- <pt x="835" y="1604" on="1"/>
- <pt x="1092" y="1283" on="1"/>
- <pt x="968" y="1283" on="1"/>
- <pt x="727" y="1485" on="1"/>
- <pt x="725" y="1485" on="1"/>
- <pt x="484" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 96 values pushed */
- 0 0 5 5 18 48 200 27 26 25 24 23 20 6 21 12 3 1 14 9 2 10 2 3 0
- 1 3 2 1 0 4 13 18 2 0 0 0 11 10 6 1 12 1 4 48 200 22 21 1 0
- 13 12 1 14 26 25 22 3 13 9 3 27 21 20 12 11 3 2 7 9 0 3 24 23 2
- 13 13 0 0 10 9 10 1 13 1 4 48 200 14 13 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="k" xMin="74" yMin="0" xMax="1176" yMax="1579">
- <contour>
- <pt x="821" y="0" on="1"/>
- <pt x="821" y="123" on="1"/>
- <pt x="419" y="524" on="1"/>
- <pt x="395" y="524" on="1"/>
- <pt x="395" y="123" on="1"/>
- <pt x="494" y="123" on="1"/>
- <pt x="494" y="0" on="1"/>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="197" y="123" on="1"/>
- <pt x="197" y="1456" on="1"/>
- <pt x="74" y="1456" on="1"/>
- <pt x="74" y="1579" on="1"/>
- <pt x="395" y="1579" on="1"/>
- <pt x="395" y="592" on="1"/>
- <pt x="419" y="592" on="1"/>
- <pt x="777" y="962" on="1"/>
- <pt x="661" y="962" on="1"/>
- <pt x="661" y="1086" on="1"/>
- <pt x="1093" y="1086" on="1"/>
- <pt x="1093" y="962" on="1"/>
- <pt x="952" y="962" on="1"/>
- <pt x="589" y="600" on="1"/>
- <pt x="1077" y="123" on="1"/>
- <pt x="1176" y="123" on="1"/>
- <pt x="1176" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 92 values pushed */
- 11 10 2 12 18 3 24 23 22 15 14 9 8 5 4 3 2 1 12 16 0 3 0 0 21
- 20 17 16 6 3 18 1 4 48 200 13 12 1 25 7 6 0 3 2 0 19 18 1 14 25
- 24 23 22 21 20 19 18 17 16 15 6 5 2 1 0 16 13 3 12 11 8 7 4 13 9
- 0 0 14 13 4 3 10 3 9 1 4 48 200 10 9 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="kcommaaccent" xMin="74" yMin="-432" xMax="1176" yMax="1579">
- <component glyphName="k" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="29" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="kgreenlandic" xMin="74" yMin="0" xMax="1176" yMax="1086">
- <contour>
- <pt x="821" y="0" on="1"/>
- <pt x="821" y="123" on="1"/>
- <pt x="419" y="524" on="1"/>
- <pt x="395" y="524" on="1"/>
- <pt x="395" y="123" on="1"/>
- <pt x="494" y="123" on="1"/>
- <pt x="494" y="0" on="1"/>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="197" y="123" on="1"/>
- <pt x="197" y="962" on="1"/>
- <pt x="74" y="962" on="1"/>
- <pt x="74" y="1086" on="1"/>
- <pt x="395" y="1086" on="1"/>
- <pt x="395" y="592" on="1"/>
- <pt x="419" y="592" on="1"/>
- <pt x="777" y="962" on="1"/>
- <pt x="661" y="962" on="1"/>
- <pt x="661" y="1086" on="1"/>
- <pt x="1093" y="1086" on="1"/>
- <pt x="1093" y="962" on="1"/>
- <pt x="952" y="962" on="1"/>
- <pt x="589" y="600" on="1"/>
- <pt x="1077" y="123" on="1"/>
- <pt x="1176" y="123" on="1"/>
- <pt x="1176" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 24 23 22 15 14 9 8 5 4 3 2 1 12 10 0 3 0 0 21 20 17 16 11 10 6
- 5 12 1 4 48 200 25 7 6 0 3 0 19 18 13 12 1 3 14 25 24 23 22 21 20
- 19 18 17 16 15 6 5 2 1 0 16 13 3 12 11 8 7 4 13 9 0 0 14 13 4
- 3 10 3 9 1 4 48 200 10 9 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="l" xMin="148" yMin="0" xMax="1105" yMax="1579">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="123" on="1"/>
- <pt x="538" y="123" on="1"/>
- <pt x="538" y="1456" on="1"/>
- <pt x="148" y="1456" on="1"/>
- <pt x="148" y="1579" on="1"/>
- <pt x="735" y="1579" on="1"/>
- <pt x="735" y="123" on="1"/>
- <pt x="1105" y="123" on="1"/>
- <pt x="1105" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 54 values pushed */
- 0 0 4 3 6 1 5 8 7 2 1 6 3 0 2 4 48 200 6 5 1 9 0 1 2
- 0 14 9 8 2 13 6 5 4 1 0 4 13 2 0 0 7 6 10 1 2 1 4 48 200
- 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="lacute" xMin="148" yMin="0" xMax="1105" yMax="1999">
- <component glyphName="l" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="146" y="395" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="lcaron" xMin="123" yMin="0" xMax="1105" yMax="1579">
- <contour>
- <pt x="123" y="0" on="1"/>
- <pt x="123" y="123" on="1"/>
- <pt x="513" y="123" on="1"/>
- <pt x="513" y="1456" on="1"/>
- <pt x="123" y="1456" on="1"/>
- <pt x="123" y="1579" on="1"/>
- <pt x="710" y="1579" on="1"/>
- <pt x="710" y="123" on="1"/>
- <pt x="1080" y="123" on="1"/>
- <pt x="1080" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="908" y="1125" on="1"/>
- <pt x="908" y="1184" on="1"/>
- <pt x="984" y="1205" on="0"/>
- <pt x="984" y="1365" on="1"/>
- <pt x="984" y="1382" on="1"/>
- <pt x="908" y="1382" on="1"/>
- <pt x="908" y="1579" on="1"/>
- <pt x="1105" y="1579" on="1"/>
- <pt x="1105" y="1408" on="1"/>
- <pt x="1104" y="1146" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 18 15 14 13 11 10 6 3 1 3 0 0 4 3 6 1 5 8 7 2 1 6 3 0 2
- 4 48 200 17 16 6 5 3 9 0 1 2 0 14 14 13 9 8 4 17 10 3 5 4 1
- 0 4 13 2 0 0 16 15 11 10 10 3 17 7 6 10 1 2 2 4 48 200 18 17 1
- 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="lcommaaccent" xMin="148" yMin="-432" xMax="1105" yMax="1579">
- <component glyphName="l" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="37" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ldot" xMin="123" yMin="0" xMax="1228" yMax="1579">
- <contour>
- <pt x="123" y="0" on="1"/>
- <pt x="123" y="123" on="1"/>
- <pt x="513" y="123" on="1"/>
- <pt x="513" y="1456" on="1"/>
- <pt x="123" y="1456" on="1"/>
- <pt x="123" y="1579" on="1"/>
- <pt x="710" y="1579" on="1"/>
- <pt x="710" y="123" on="1"/>
- <pt x="1080" y="123" on="1"/>
- <pt x="1080" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1031" y="666" on="1"/>
- <pt x="1031" y="863" on="1"/>
- <pt x="1228" y="863" on="1"/>
- <pt x="1228" y="666" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 0 0 13 10 10 1 11 4 3 6 1 5 8 7 2 1 6 3 0 3 4 48 200 12 11
- 1 6 5 1 9 0 1 3 0 14 9 8 2 12 10 3 5 4 1 0 4 13 2 0 0
- 11 10 10 1 12 7 6 10 1 2 2 4 48 200 13 12 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="less" xMin="99" yMin="0" xMax="1131" yMax="1234">
- <contour>
- <pt x="1131" y="0" on="1"/>
- <pt x="99" y="617" on="1"/>
- <pt x="1131" y="1234" on="1"/>
- <pt x="1131" y="1061" on="1"/>
- <pt x="388" y="617" on="1"/>
- <pt x="1131" y="173" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 16 values pushed */
- 5 4 3 2 1 0 14 4 1 0 5 3 2 0 3 0
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="logicalnot" xMin="99" yMin="197" xMax="1130" yMax="691">
- <contour>
- <pt x="982" y="197" on="1"/>
- <pt x="982" y="543" on="1"/>
- <pt x="99" y="543" on="1"/>
- <pt x="99" y="691" on="1"/>
- <pt x="1130" y="691" on="1"/>
- <pt x="1130" y="543" on="1"/>
- <pt x="1130" y="543" on="1"/>
- <pt x="1130" y="197" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 43 values pushed */
- 0 0 6 5 2 1 16 3 3 1 4 48 200 4 3 1 7 0 1 2 0 14 0 0 1
- 0 16 1 4 1 4 48 200 7 6 5 4 3 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="longs" xMin="148" yMin="0" xMax="1167" yMax="1604">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="123" on="1"/>
- <pt x="419" y="123" on="1"/>
- <pt x="419" y="925" on="1"/>
- <pt x="148" y="925" on="1"/>
- <pt x="148" y="1061" on="1"/>
- <pt x="419" y="1061" on="1"/>
- <pt x="419" y="1179" on="1"/>
- <pt x="419" y="1404" on="0"/>
- <pt x="510" y="1504" on="1"/>
- <pt x="601" y="1604" on="0"/>
- <pt x="803" y="1604" on="1"/>
- <pt x="974" y="1604" on="0"/>
- <pt x="1167" y="1524" on="1"/>
- <pt x="1167" y="1277" on="1"/>
- <pt x="1044" y="1277" on="1"/>
- <pt x="1013" y="1433" on="1"/>
- <pt x="912" y="1480" on="0"/>
- <pt x="829" y="1480" on="1"/>
- <pt x="710" y="1480" on="0"/>
- <pt x="664" y="1420" on="1"/>
- <pt x="617" y="1360" on="0"/>
- <pt x="617" y="1201" on="1"/>
- <pt x="617" y="123" on="1"/>
- <pt x="987" y="123" on="1"/>
- <pt x="987" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 0 0 18 5 11 48 200 22 16 15 14 13 7 6 13 11 5 0 0 4 3 20 1 5 24
- 23 2 1 6 3 0 2 4 48 200 6 5 1 25 0 1 2 0 14 25 24 16 15 4 13
- 22 3 5 4 1 0 4 13 2 0 0 23 22 10 1 2 1 4 48 200 14 13 1 7 6
- 3 2 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="lslash" xMin="148" yMin="0" xMax="1105" yMax="1579">
- <contour>
- <pt x="148" y="0" on="1"/>
- <pt x="148" y="123" on="1"/>
- <pt x="538" y="123" on="1"/>
- <pt x="538" y="728" on="1"/>
- <pt x="247" y="583" on="1"/>
- <pt x="247" y="721" on="1"/>
- <pt x="538" y="866" on="1"/>
- <pt x="538" y="1456" on="1"/>
- <pt x="148" y="1456" on="1"/>
- <pt x="148" y="1579" on="1"/>
- <pt x="735" y="1579" on="1"/>
- <pt x="735" y="965" on="1"/>
- <pt x="1026" y="1110" on="1"/>
- <pt x="1026" y="973" on="1"/>
- <pt x="735" y="827" on="1"/>
- <pt x="735" y="123" on="1"/>
- <pt x="1105" y="123" on="1"/>
- <pt x="1105" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 14 13 12 11 6 5 4 3 8 7 1 3 0 0 8 7 6 1 9 16 15 2 1 6 3
- 0 2 4 48 200 10 9 1 17 0 1 2 0 14 17 16 2 13 12 9 8 1 0 4 13
- 4 0 0 15 14 11 10 10 3 2 1 4 48 200 13 12 1 7 6 3 2 3 5 4 1
- 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="m" xMin="26" yMin="0" xMax="1204" yMax="1110">
- <contour>
- <pt x="26" y="0" on="1"/>
- <pt x="26" y="123" on="1"/>
- <pt x="100" y="123" on="1"/>
- <pt x="100" y="962" on="1"/>
- <pt x="26" y="962" on="1"/>
- <pt x="26" y="1086" on="1"/>
- <pt x="279" y="1086" on="1"/>
- <pt x="279" y="879" on="1"/>
- <pt x="346" y="1009" on="0"/>
- <pt x="389" y="1055" on="1"/>
- <pt x="441" y="1110" on="0"/>
- <pt x="517" y="1110" on="1"/>
- <pt x="617" y="1110" on="0"/>
- <pt x="663" y="1017" on="1"/>
- <pt x="687" y="969" on="0"/>
- <pt x="698" y="879" on="1"/>
- <pt x="740" y="983" on="0"/>
- <pt x="787" y="1035" on="1"/>
- <pt x="853" y="1110" on="0"/>
- <pt x="943" y="1110" on="1"/>
- <pt x="1130" y="1110" on="0"/>
- <pt x="1130" y="837" on="1"/>
- <pt x="1130" y="123" on="1"/>
- <pt x="1204" y="123" on="1"/>
- <pt x="1204" y="0" on="1"/>
- <pt x="951" y="0" on="1"/>
- <pt x="951" y="752" on="1"/>
- <pt x="951" y="956" on="0"/>
- <pt x="886" y="956" on="1"/>
- <pt x="838" y="956" on="0"/>
- <pt x="779" y="870" on="1"/>
- <pt x="748" y="825" on="0"/>
- <pt x="731" y="783" on="1"/>
- <pt x="705" y="718" on="0"/>
- <pt x="705" y="691" on="1"/>
- <pt x="705" y="123" on="1"/>
- <pt x="779" y="123" on="1"/>
- <pt x="779" y="0" on="1"/>
- <pt x="526" y="0" on="1"/>
- <pt x="526" y="798" on="1"/>
- <pt x="526" y="956" on="0"/>
- <pt x="460" y="956" on="1"/>
- <pt x="373" y="956" on="0"/>
- <pt x="279" y="691" on="1"/>
- <pt x="279" y="123" on="1"/>
- <pt x="353" y="123" on="1"/>
- <pt x="353" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 109 values pushed */
- 0 0 41 30 11 28 30 19 48 200 19 1 11 1 45 44 43 39 36 35 34 26 23 22 21
- 15 7 4 3 2 1 17 5 0 3 46 38 37 25 24 0 5 0 6 5 1 14 37 36 2
- 25 34 3 15 34 38 2 46 45 2 38 6 3 24 23 2 13 21 5 4 1 0 4 13 2
- 0 0 26 25 12 1 21 35 34 12 1 38 44 43 7 6 12 3 2 3 4 48 200 22 21
- 1 39 38 1 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="macron" xMin="269" yMin="1283" xMax="960" yMax="1407">
- <contour>
- <pt x="269" y="1283" on="1"/>
- <pt x="269" y="1407" on="1"/>
- <pt x="960" y="1407" on="1"/>
- <pt x="960" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 6 1 1 1 4 48 200 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="macron#1" xMin="0" yMin="1456" xMax="1229" yMax="1604">
- <contour>
- <pt x="0" y="1604" on="1"/>
- <pt x="1229" y="1604" on="1"/>
- <pt x="1229" y="1456" on="1"/>
- <pt x="0" y="1456" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 2 16 1 0 1 4 48 200 1 0 1 0 14 2 1 1 3 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="minus" xMin="99" yMin="543" xMax="1130" yMax="691">
- <contour>
- <pt x="99" y="543" on="1"/>
- <pt x="99" y="691" on="1"/>
- <pt x="1130" y="691" on="1"/>
- <pt x="1130" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 200 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="mu" xMin="68" yMin="-395" xMax="1166" yMax="1086">
- <contour>
- <pt x="191" y="962" on="1"/>
- <pt x="68" y="962" on="1"/>
- <pt x="68" y="1086" on="1"/>
- <pt x="389" y="1086" on="1"/>
- <pt x="389" y="385" on="1"/>
- <pt x="389" y="130" on="0"/>
- <pt x="552" y="130" on="1"/>
- <pt x="701" y="130" on="0"/>
- <pt x="845" y="382" on="1"/>
- <pt x="845" y="962" on="1"/>
- <pt x="734" y="962" on="1"/>
- <pt x="734" y="1086" on="1"/>
- <pt x="1043" y="1086" on="1"/>
- <pt x="1043" y="123" on="1"/>
- <pt x="1166" y="123" on="1"/>
- <pt x="1166" y="0" on="1"/>
- <pt x="845" y="0" on="1"/>
- <pt x="845" y="209" on="1"/>
- <pt x="767" y="89" on="0"/>
- <pt x="700" y="37" on="1"/>
- <pt x="620" y="-25" on="0"/>
- <pt x="499" y="-25" on="1"/>
- <pt x="449" y="-25" on="0"/>
- <pt x="389" y="-10" on="1"/>
- <pt x="389" y="-395" on="1"/>
- <pt x="191" y="-395" on="1"/>
- <pt x="191" y="363" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 0 0 6 30 21 48 200 21 2 26 17 14 13 10 9 8 4 1 0 10 2 15 3 23 15
- 24 2 16 15 1 25 24 1 2 0 12 11 3 2 1 3 14 11 10 2 8 3 3 15 14
- 2 13 12 2 1 0 0 0 17 16 9 8 10 3 12 24 23 4 3 10 3 0 2 4 48
- 200 13 12 1 26 25 0 2 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="multiply" xMin="99" yMin="0" xMax="1131" yMax="1032">
- <contour>
- <pt x="99" y="105" on="1"/>
- <pt x="510" y="516" on="1"/>
- <pt x="99" y="927" on="1"/>
- <pt x="204" y="1032" on="1"/>
- <pt x="615" y="620" on="1"/>
- <pt x="1026" y="1032" on="1"/>
- <pt x="1131" y="927" on="1"/>
- <pt x="719" y="516" on="1"/>
- <pt x="1131" y="105" on="1"/>
- <pt x="1026" y="0" on="1"/>
- <pt x="615" y="411" on="1"/>
- <pt x="204" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 33 values pushed */
- 1 10 8 7 6 5 4 3 2 1 0 10 13 2 0 1 11 9 2 0 14 11 10 9 8
- 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="n" xMin="69" yMin="0" xMax="1167" yMax="1110">
- <contour>
- <pt x="69" y="0" on="1"/>
- <pt x="69" y="123" on="1"/>
- <pt x="192" y="123" on="1"/>
- <pt x="192" y="962" on="1"/>
- <pt x="69" y="962" on="1"/>
- <pt x="69" y="1086" on="1"/>
- <pt x="390" y="1086" on="1"/>
- <pt x="390" y="876" on="1"/>
- <pt x="459" y="981" on="0"/>
- <pt x="527" y="1034" on="1"/>
- <pt x="623" y="1110" on="0"/>
- <pt x="742" y="1110" on="1"/>
- <pt x="1043" y="1110" on="0"/>
- <pt x="1043" y="722" on="1"/>
- <pt x="1043" y="123" on="1"/>
- <pt x="1167" y="123" on="1"/>
- <pt x="1167" y="0" on="1"/>
- <pt x="747" y="0" on="1"/>
- <pt x="747" y="123" on="1"/>
- <pt x="846" y="123" on="1"/>
- <pt x="846" y="701" on="1"/>
- <pt x="846" y="956" on="0"/>
- <pt x="683" y="956" on="1"/>
- <pt x="533" y="956" on="0"/>
- <pt x="390" y="704" on="1"/>
- <pt x="390" y="123" on="1"/>
- <pt x="501" y="123" on="1"/>
- <pt x="501" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 0 0 22 30 11 48 200 11 1 26 25 24 20 19 18 15 14 13 7 4 3 2 1 14 5
- 0 3 27 17 16 0 3 0 6 5 1 14 27 26 18 17 4 19 6 3 16 15 2 13 13
- 5 4 1 0 4 13 2 0 0 20 19 10 1 13 25 24 7 6 10 3 2 2 4 48 200
- 14 13 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="nacute" xMin="69" yMin="0" xMax="1167" yMax="1604">
- <component glyphName="n" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="96" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="napostrophe" xMin="8" yMin="0" xMax="1168" yMax="1579">
- <contour>
- <pt x="70" y="0" on="1"/>
- <pt x="70" y="123" on="1"/>
- <pt x="193" y="123" on="1"/>
- <pt x="193" y="962" on="1"/>
- <pt x="70" y="962" on="1"/>
- <pt x="70" y="1086" on="1"/>
- <pt x="391" y="1086" on="1"/>
- <pt x="391" y="876" on="1"/>
- <pt x="460" y="981" on="0"/>
- <pt x="528" y="1034" on="1"/>
- <pt x="624" y="1110" on="0"/>
- <pt x="743" y="1110" on="1"/>
- <pt x="1044" y="1110" on="0"/>
- <pt x="1044" y="722" on="1"/>
- <pt x="1044" y="123" on="1"/>
- <pt x="1168" y="123" on="1"/>
- <pt x="1168" y="0" on="1"/>
- <pt x="748" y="0" on="1"/>
- <pt x="748" y="123" on="1"/>
- <pt x="847" y="123" on="1"/>
- <pt x="847" y="701" on="1"/>
- <pt x="847" y="956" on="0"/>
- <pt x="684" y="956" on="1"/>
- <pt x="534" y="956" on="0"/>
- <pt x="391" y="704" on="1"/>
- <pt x="391" y="123" on="1"/>
- <pt x="502" y="123" on="1"/>
- <pt x="502" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="8" y="1125" on="1"/>
- <pt x="8" y="1184" on="1"/>
- <pt x="84" y="1205" on="0"/>
- <pt x="84" y="1365" on="1"/>
- <pt x="84" y="1382" on="1"/>
- <pt x="8" y="1382" on="1"/>
- <pt x="8" y="1579" on="1"/>
- <pt x="205" y="1579" on="1"/>
- <pt x="205" y="1408" on="1"/>
- <pt x="204" y="1146" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 110 values pushed */
- 0 0 22 30 11 48 200 11 1 36 33 32 31 29 28 6 34 5 3 26 25 24 20 19 18
- 15 14 13 7 4 3 2 1 14 5 0 3 35 34 1 27 17 16 0 3 2 0 6 5 1
- 14 27 26 18 17 4 19 6 3 32 31 5 4 1 0 6 2 28 3 16 15 2 13 13 0
- 0 36 35 10 1 28 20 19 10 1 13 25 24 7 6 10 3 2 3 4 48 200 34 33 29
- 28 3 14 13 1 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="nbhyphen" xMin="148" yMin="543" xMax="1081" yMax="691">
- <contour>
- <pt x="148" y="543" on="1"/>
- <pt x="148" y="691" on="1"/>
- <pt x="1081" y="691" on="1"/>
- <pt x="1081" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 200 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ncaron" xMin="69" yMin="0" xMax="1167" yMax="1604">
- <component glyphName="n" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="-16" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ncommaaccent" xMin="69" yMin="-432" xMax="1167" yMax="1110">
- <component glyphName="n" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="24" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="nine" xMin="96" yMin="-37" xMax="1106" yMax="1517">
- <contour>
- <pt x="893" y="707" on="1"/>
- <pt x="829" y="620" on="0"/>
- <pt x="759" y="576" on="1"/>
- <pt x="656" y="512" on="0"/>
- <pt x="521" y="512" on="1"/>
- <pt x="331" y="512" on="0"/>
- <pt x="214" y="646" on="1"/>
- <pt x="96" y="779" on="0"/>
- <pt x="96" y="994" on="1"/>
- <pt x="96" y="1226" on="0"/>
- <pt x="233" y="1371" on="1"/>
- <pt x="370" y="1517" on="0"/>
- <pt x="586" y="1517" on="1"/>
- <pt x="830" y="1517" on="0"/>
- <pt x="968" y="1319" on="1"/>
- <pt x="1106" y="1121" on="0"/>
- <pt x="1106" y="770" on="1"/>
- <pt x="1106" y="385" on="0"/>
- <pt x="943" y="174" on="1"/>
- <pt x="780" y="-37" on="0"/>
- <pt x="490" y="-37" on="1"/>
- <pt x="362" y="-37" on="0"/>
- <pt x="164" y="34" on="1"/>
- <pt x="164" y="351" on="1"/>
- <pt x="287" y="351" on="1"/>
- <pt x="311" y="141" on="1"/>
- <pt x="397" y="86" on="0"/>
- <pt x="489" y="86" on="1"/>
- <pt x="703" y="86" on="0"/>
- <pt x="813" y="302" on="1"/>
- <pt x="890" y="453" on="0"/>
- </contour>
- <contour>
- <pt x="560" y="1394" on="1"/>
- <pt x="450" y="1394" on="0"/>
- <pt x="382" y="1315" on="1"/>
- <pt x="296" y="1215" on="0"/>
- <pt x="296" y="1017" on="1"/>
- <pt x="296" y="641" on="0"/>
- <pt x="559" y="641" on="1"/>
- <pt x="693" y="641" on="0"/>
- <pt x="786" y="744" on="1"/>
- <pt x="878" y="846" on="0"/>
- <pt x="878" y="1000" on="1"/>
- <pt x="878" y="1160" on="0"/>
- <pt x="784" y="1277" on="1"/>
- <pt x="690" y="1394" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 56 values pushed */
- 0 0 37 25 4 31 5 12 27 5 20 48 200 20 2 12 0 4 1 1 25 24 23 22 4
- 0 6 0 2 3 0 0 14 0 0 41 26 16 35 24 8 48 200 25 24 0 3 13 16 22
- 8 22 23 22 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="nonbreakingspace"/><!-- contains no outline data -->
-
- <TTGlyph name="ntilde" xMin="69" yMin="0" xMax="1167" yMax="1518">
- <component glyphName="n" x="0" y="0" flags="0x4"/>
- <component glyphName="tilde" x="-2" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="numbersign" xMin="41" yMin="0" xMax="1189" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="276" y="444" on="1"/>
- <pt x="41" y="444" on="1"/>
- <pt x="72" y="568" on="1"/>
- <pt x="307" y="568" on="1"/>
- <pt x="393" y="913" on="1"/>
- <pt x="109" y="913" on="1"/>
- <pt x="140" y="1036" on="1"/>
- <pt x="424" y="1036" on="1"/>
- <pt x="535" y="1480" on="1"/>
- <pt x="671" y="1480" on="1"/>
- <pt x="560" y="1036" on="1"/>
- <pt x="819" y="1036" on="1"/>
- <pt x="930" y="1480" on="1"/>
- <pt x="1066" y="1480" on="1"/>
- <pt x="955" y="1036" on="1"/>
- <pt x="1189" y="1036" on="1"/>
- <pt x="1158" y="913" on="1"/>
- <pt x="924" y="913" on="1"/>
- <pt x="837" y="568" on="1"/>
- <pt x="1121" y="568" on="1"/>
- <pt x="1090" y="444" on="1"/>
- <pt x="807" y="444" on="1"/>
- <pt x="696" y="0" on="1"/>
- <pt x="560" y="0" on="1"/>
- <pt x="671" y="444" on="1"/>
- <pt x="412" y="444" on="1"/>
- <pt x="301" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="442" y="568" on="1"/>
- <pt x="702" y="568" on="1"/>
- <pt x="788" y="913" on="1"/>
- <pt x="529" y="913" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 14 13 10 9 4 13 7 27 24 23 0 4 13 1 0 0 31 30 18 17 6 5 6 5 7
- 29 28 20 19 4 3 6 5 1 2 4 48 200 16 15 12 11 8 7 5 26 25 22 21 2
- 1 5 2 0 14 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12
- 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="o" xMin="111" yMin="-25" xMax="1118" yMax="1110">
- <contour>
- <pt x="614" y="1110" on="1"/>
- <pt x="849" y="1110" on="0"/>
- <pt x="983" y="959" on="1"/>
- <pt x="1118" y="808" on="0"/>
- <pt x="1118" y="544" on="1"/>
- <pt x="1118" y="276" on="0"/>
- <pt x="983" y="126" on="1"/>
- <pt x="848" y="-25" on="0"/>
- <pt x="606" y="-25" on="1"/>
- <pt x="401" y="-25" on="0"/>
- <pt x="272" y="100" on="1"/>
- <pt x="111" y="255" on="0"/>
- <pt x="111" y="543" on="1"/>
- <pt x="111" y="808" on="0"/>
- <pt x="246" y="959" on="1"/>
- <pt x="381" y="1110" on="0"/>
- </contour>
- <contour>
- <pt x="614" y="987" on="1"/>
- <pt x="324" y="987" on="0"/>
- <pt x="324" y="545" on="1"/>
- <pt x="324" y="99" on="0"/>
- <pt x="614" y="99" on="1"/>
- <pt x="905" y="99" on="0"/>
- <pt x="905" y="545" on="1"/>
- <pt x="905" y="987" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 27 values pushed */
- 0 0 20 5 8 16 5 0 48 200 8 2 0 1 14 0 0 22 39 4 18 39 12 48 200
- 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="oacute" xMin="111" yMin="-25" xMax="1118" yMax="1604">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="99" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="obreve" xMin="111" yMin="-25" xMax="1118" yMax="1579">
- <contour>
- <pt x="614" y="1110" on="1"/>
- <pt x="849" y="1110" on="0"/>
- <pt x="983" y="959" on="1"/>
- <pt x="1118" y="808" on="0"/>
- <pt x="1118" y="544" on="1"/>
- <pt x="1118" y="276" on="0"/>
- <pt x="983" y="126" on="1"/>
- <pt x="848" y="-25" on="0"/>
- <pt x="606" y="-25" on="1"/>
- <pt x="401" y="-25" on="0"/>
- <pt x="272" y="100" on="1"/>
- <pt x="111" y="255" on="0"/>
- <pt x="111" y="543" on="1"/>
- <pt x="111" y="808" on="0"/>
- <pt x="246" y="959" on="1"/>
- <pt x="381" y="1110" on="0"/>
- </contour>
- <contour>
- <pt x="614" y="987" on="1"/>
- <pt x="324" y="987" on="0"/>
- <pt x="324" y="545" on="1"/>
- <pt x="324" y="99" on="0"/>
- <pt x="614" y="99" on="1"/>
- <pt x="905" y="99" on="0"/>
- <pt x="905" y="545" on="1"/>
- <pt x="905" y="987" on="0"/>
- </contour>
- <contour>
- <pt x="269" y="1579" on="1"/>
- <pt x="392" y="1579" on="1"/>
- <pt x="440" y="1431" on="0"/>
- <pt x="614" y="1431" on="1"/>
- <pt x="789" y="1431" on="0"/>
- <pt x="837" y="1579" on="1"/>
- <pt x="960" y="1579" on="1"/>
- <pt x="937" y="1490" on="0"/>
- <pt x="911" y="1444" on="1"/>
- <pt x="820" y="1289" on="0"/>
- <pt x="618" y="1289" on="1"/>
- <pt x="466" y="1289" on="0"/>
- <pt x="377" y="1370" on="1"/>
- <pt x="322" y="1419" on="0"/>
- <pt x="294" y="1491" on="1"/>
- <pt x="283" y="1520" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 0 0 27 14 34 20 5 8 16 5 0 48 200 8 2 0 1 1 30 29 25 24 4 13 34
- 1 0 14 0 0 22 36 4 18 36 12 48 200 30 29 25 24 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ocircumflex" xMin="111" yMin="-25" xMax="1118" yMax="1604">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="1" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="odieresis" xMin="111" yMin="-25" xMax="1118" yMax="1480">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="0" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="oe" xMin="49" yMin="-25" xMax="1179" yMax="1111">
- <contour>
- <pt x="647" y="118" on="1"/>
- <pt x="564" y="-25" on="0"/>
- <pt x="413" y="-25" on="1"/>
- <pt x="249" y="-25" on="0"/>
- <pt x="149" y="131" on="1"/>
- <pt x="49" y="287" on="0"/>
- <pt x="49" y="542" on="1"/>
- <pt x="49" y="797" on="0"/>
- <pt x="150" y="954" on="1"/>
- <pt x="250" y="1110" on="0"/>
- <pt x="416" y="1110" on="1"/>
- <pt x="574" y="1110" on="0"/>
- <pt x="663" y="951" on="1"/>
- <pt x="749" y="1111" on="0"/>
- <pt x="893" y="1111" on="1"/>
- <pt x="1179" y="1111" on="0"/>
- <pt x="1179" y="607" on="1"/>
- <pt x="1179" y="531" on="1"/>
- <pt x="735" y="531" on="1"/>
- <pt x="735" y="515" on="1"/>
- <pt x="735" y="123" on="0"/>
- <pt x="951" y="123" on="1"/>
- <pt x="1051" y="123" on="0"/>
- <pt x="1179" y="210" on="1"/>
- <pt x="1179" y="56" on="1"/>
- <pt x="1027" y="-25" on="0"/>
- <pt x="903" y="-25" on="1"/>
- <pt x="745" y="-25" on="0"/>
- </contour>
- <contour>
- <pt x="421" y="987" on="1"/>
- <pt x="240" y="987" on="0"/>
- <pt x="240" y="541" on="1"/>
- <pt x="240" y="99" on="0"/>
- <pt x="421" y="99" on="1"/>
- <pt x="517" y="99" on="0"/>
- <pt x="542" y="224" on="1"/>
- <pt x="562" y="324" on="0"/>
- <pt x="562" y="538" on="1"/>
- <pt x="562" y="785" on="0"/>
- <pt x="537" y="882" on="1"/>
- <pt x="511" y="987" on="0"/>
- </contour>
- <contour>
- <pt x="736" y="654" on="1"/>
- <pt x="994" y="654" on="1"/>
- <pt x="994" y="716" on="1"/>
- <pt x="994" y="987" on="0"/>
- <pt x="882" y="987" on="1"/>
- <pt x="741" y="987" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 0 0 44 5 14 32 5 2 28 5 10 21 14 26 48 200 26 2 14 1 10 1 2 2 1
- 42 12 2 1 40 3 0 16 40 17 2 1 24 23 19 0 4 17 2 3 0 0 0 18 17
- 6 1 40 1 4 48 200 41 40 1 0 14 0 0 30 19 6 48 200 42 41 40 19 18 12
- 0 7 13 36 6 16 24 23 17 16 3 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ogonek" xMin="444" yMin="-370" xMax="786" yMax="0">
- <contour>
- <pt x="602" y="0" on="1"/>
- <pt x="709" y="0" on="1"/>
- <pt x="580" y="-81" on="0"/>
- <pt x="580" y="-179" on="1"/>
- <pt x="580" y="-275" on="0"/>
- <pt x="695" y="-275" on="1"/>
- <pt x="749" y="-275" on="0"/>
- <pt x="786" y="-260" on="1"/>
- <pt x="786" y="-341" on="1"/>
- <pt x="724" y="-370" on="0"/>
- <pt x="646" y="-370" on="1"/>
- <pt x="444" y="-370" on="0"/>
- <pt x="444" y="-213" on="1"/>
- <pt x="444" y="-90" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 0 0 5 17 10 48 200 10 8 7 1 0 14 0 0 3 20 12 48 200 12 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ograve" xMin="111" yMin="-25" xMax="1118" yMax="1604">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="-98" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ohungarumlaut" xMin="111" yMin="-25" xMax="1118" yMax="1604">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="hungarumlaut" x="102" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="omacron" xMin="111" yMin="-25" xMax="1118" yMax="1407">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="macron" x="0" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="one" xMin="112" yMin="0" xMax="1198" yMax="1517">
- <contour>
- <pt x="112" y="0" on="1"/>
- <pt x="112" y="123" on="1"/>
- <pt x="556" y="123" on="1"/>
- <pt x="556" y="1313" on="1"/>
- <pt x="112" y="1202" on="1"/>
- <pt x="112" y="1325" on="1"/>
- <pt x="753" y="1517" on="1"/>
- <pt x="754" y="123" on="1"/>
- <pt x="1198" y="123" on="1"/>
- <pt x="1198" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 43 values pushed */
- 6 5 4 3 4 13 1 0 0 8 7 2 1 6 3 0 1 4 48 200 9 0 1 0 14
- 9 8 7 6 4 13 2 5 4 1 0 4 13 2 3 2 1 0
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="onehalf" xMin="43" yMin="-37" xMax="1167" yMax="1517">
- <contour>
- <pt x="73" y="-37" on="1"/>
- <pt x="851" y="1517" on="1"/>
- <pt x="992" y="1517" on="1"/>
- <pt x="211" y="-37" on="1"/>
- </contour>
- <contour>
- <pt x="661" y="0" on="1"/>
- <pt x="661" y="154" on="1"/>
- <pt x="705" y="242" on="0"/>
- <pt x="823" y="328" on="1"/>
- <pt x="853" y="350" on="0"/>
- <pt x="868" y="362" on="1"/>
- <pt x="901" y="393" on="1"/>
- <pt x="957" y="440" on="1"/>
- <pt x="1006" y="481" on="0"/>
- <pt x="1006" y="556" on="1"/>
- <pt x="1006" y="679" on="0"/>
- <pt x="878" y="679" on="1"/>
- <pt x="834" y="679" on="0"/>
- <pt x="772" y="650" on="1"/>
- <pt x="772" y="582" on="1"/>
- <pt x="661" y="582" on="1"/>
- <pt x="661" y="740" on="1"/>
- <pt x="769" y="790" on="0"/>
- <pt x="890" y="790" on="1"/>
- <pt x="1167" y="790" on="0"/>
- <pt x="1167" y="575" on="1"/>
- <pt x="1167" y="449" on="0"/>
- <pt x="1029" y="344" on="1"/>
- <pt x="996" y="319" on="1"/>
- <pt x="996" y="319" on="1"/>
- <pt x="995" y="318" on="1"/>
- <pt x="995" y="318" on="0"/>
- <pt x="993" y="317" on="1"/>
- <pt x="991" y="316" on="0"/>
- <pt x="987" y="313" on="1"/>
- <pt x="979" y="307" on="0"/>
- <pt x="960" y="294" on="1"/>
- <pt x="850" y="223" on="0"/>
- <pt x="824" y="148" on="1"/>
- <pt x="1167" y="148" on="1"/>
- <pt x="1167" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="203" y="728" on="1"/>
- <pt x="203" y="1345" on="1"/>
- <pt x="43" y="1291" on="1"/>
- <pt x="43" y="1415" on="1"/>
- <pt x="351" y="1517" on="1"/>
- <pt x="351" y="728" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 108 values pushed */
- 0 0 15 22 48 200 22 43 42 41 22 20 5 1 40 3 28 27 19 18 17 10 5 7 40
- 37 3 0 0 38 37 16 1 4 1 4 48 200 45 40 1 39 4 1 44 2 1 2 3 0
- 1 4 0 14 0 0 13 34 24 48 200 37 28 27 18 17 10 2 1 8 24 4 3 3 44
- 40 2 43 42 0 3 13 40 0 0 45 44 16 1 40 1 4 48 200 41 40 1 39 38 24
- 2 20 19 5 4 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="onequarter" xMin="43" yMin="-37" xMax="1167" yMax="1517">
- <contour>
- <pt x="203" y="728" on="1"/>
- <pt x="203" y="1345" on="1"/>
- <pt x="43" y="1291" on="1"/>
- <pt x="43" y="1415" on="1"/>
- <pt x="351" y="1517" on="1"/>
- <pt x="351" y="728" on="1"/>
- </contour>
- <contour>
- <pt x="86" y="-37" on="1"/>
- <pt x="863" y="1517" on="1"/>
- <pt x="1004" y="1517" on="1"/>
- <pt x="223" y="-37" on="1"/>
- </contour>
- <contour>
- <pt x="1056" y="0" on="1"/>
- <pt x="907" y="0" on="1"/>
- <pt x="907" y="179" on="1"/>
- <pt x="533" y="179" on="1"/>
- <pt x="533" y="302" on="1"/>
- <pt x="903" y="790" on="1"/>
- <pt x="1056" y="790" on="1"/>
- <pt x="1056" y="302" on="1"/>
- <pt x="1167" y="302" on="1"/>
- <pt x="1167" y="179" on="1"/>
- <pt x="1056" y="179" on="1"/>
- </contour>
- <contour>
- <pt x="671" y="302" on="1"/>
- <pt x="907" y="302" on="1"/>
- <pt x="907" y="611" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 105 values pushed */
- 3 2 1 3 4 15 3 23 0 14 2 0 0 22 21 18 17 14 6 4 12 1 4 48 200
- 16 15 1 20 19 13 12 3 11 10 1 8 7 4 2 9 6 1 5 0 1 6 0 14 8
- 10 11 2 21 15 14 13 7 5 11 4 3 9 4 0 2 19 18 2 13 10 6 3 2 3
- 13 0 0 0 23 22 12 11 16 3 10 5 4 16 1 0 2 4 48 200 20 17 16 10 3
- 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="onesuperior" xMin="266" yMin="728" xMax="963" yMax="1517">
- <contour>
- <pt x="266" y="728" on="1"/>
- <pt x="266" y="851" on="1"/>
- <pt x="528" y="851" on="1"/>
- <pt x="528" y="1345" on="1"/>
- <pt x="266" y="1295" on="1"/>
- <pt x="266" y="1419" on="1"/>
- <pt x="701" y="1517" on="1"/>
- <pt x="701" y="851" on="1"/>
- <pt x="963" y="851" on="1"/>
- <pt x="963" y="728" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 52 values pushed */
- 6 5 4 3 4 13 1 0 0 9 0 6 1 1 1 4 48 200 8 7 2 1 3 0 14
- 9 8 2 13 6 5 4 1 0 4 13 2 0 0 7 6 37 1 2 1 4 48 200 3 2
- 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="onesuperiour" xMin="407" yMin="728" xMax="715" yMax="1517">
- <contour>
- <pt x="567" y="728" on="1"/>
- <pt x="567" y="1345" on="1"/>
- <pt x="407" y="1291" on="1"/>
- <pt x="407" y="1415" on="1"/>
- <pt x="715" y="1517" on="1"/>
- <pt x="715" y="728" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 30 values pushed */
- 4 3 2 1 4 13 0 5 0 1 0 14 3 2 0 0 0 1 0 16 1 4 1 4 48
- 200 5 4 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ordfeminine" xMin="136" yMin="715" xMax="1116" yMax="1517">
- <contour>
- <pt x="765" y="817" on="1"/>
- <pt x="606" y="715" on="0"/>
- <pt x="455" y="715" on="1"/>
- <pt x="312" y="715" on="0"/>
- <pt x="224" y="774" on="1"/>
- <pt x="136" y="833" on="0"/>
- <pt x="136" y="932" on="1"/>
- <pt x="136" y="1195" on="0"/>
- <pt x="687" y="1195" on="1"/>
- <pt x="765" y="1195" on="1"/>
- <pt x="765" y="1250" on="1"/>
- <pt x="765" y="1328" on="0"/>
- <pt x="718" y="1361" on="1"/>
- <pt x="672" y="1394" on="0"/>
- <pt x="565" y="1394" on="1"/>
- <pt x="478" y="1394" on="0"/>
- <pt x="353" y="1352" on="1"/>
- <pt x="353" y="1269" on="1"/>
- <pt x="204" y="1269" on="1"/>
- <pt x="204" y="1458" on="1"/>
- <pt x="455" y="1517" on="0"/>
- <pt x="597" y="1517" on="1"/>
- <pt x="774" y="1517" on="0"/>
- <pt x="856" y="1463" on="1"/>
- <pt x="938" y="1409" on="0"/>
- <pt x="938" y="1287" on="1"/>
- <pt x="938" y="856" on="1"/>
- <pt x="1116" y="856" on="1"/>
- <pt x="1116" y="733" on="1"/>
- <pt x="790" y="733" on="1"/>
- </contour>
- <contour>
- <pt x="765" y="933" on="1"/>
- <pt x="765" y="1078" on="1"/>
- <pt x="725" y="1078" on="1"/>
- <pt x="322" y="1078" on="0"/>
- <pt x="322" y="937" on="1"/>
- <pt x="322" y="839" on="0"/>
- <pt x="491" y="839" on="1"/>
- <pt x="627" y="839" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 105 values pushed */
- 0 0 36 5 2 14 5 21 48 200 21 0 1 25 19 16 3 0 17 3 0 32 31 30 10
- 9 8 6 17 26 3 0 26 28 2 2 28 0 0 29 28 6 1 26 1 4 48 200 18 17
- 1 27 26 1 2 0 14 0 0 34 19 6 48 200 29 25 0 2 32 17 16 8 4 0 18
- 3 28 27 2 13 25 6 18 0 0 31 30 10 9 0 12 4 25 1 4 48 200 26 25 1
- 19 18 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ordmasculine" xMin="148" yMin="716" xMax="1081" yMax="1517">
- <contour>
- <pt x="614" y="1517" on="1"/>
- <pt x="829" y="1517" on="0"/>
- <pt x="955" y="1409" on="1"/>
- <pt x="1081" y="1301" on="0"/>
- <pt x="1081" y="1116" on="1"/>
- <pt x="1081" y="930" on="0"/>
- <pt x="955" y="823" on="1"/>
- <pt x="828" y="716" on="0"/>
- <pt x="607" y="716" on="1"/>
- <pt x="418" y="716" on="0"/>
- <pt x="298" y="805" on="1"/>
- <pt x="148" y="916" on="0"/>
- <pt x="148" y="1117" on="1"/>
- <pt x="148" y="1301" on="0"/>
- <pt x="274" y="1409" on="1"/>
- <pt x="400" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="614" y="1394" on="1"/>
- <pt x="491" y="1394" on="0"/>
- <pt x="412" y="1316" on="1"/>
- <pt x="333" y="1237" on="0"/>
- <pt x="333" y="1117" on="1"/>
- <pt x="333" y="996" on="0"/>
- <pt x="412" y="918" on="1"/>
- <pt x="490" y="839" on="0"/>
- <pt x="612" y="839" on="1"/>
- <pt x="724" y="839" on="0"/>
- <pt x="800" y="902" on="1"/>
- <pt x="896" y="982" on="0"/>
- <pt x="896" y="1117" on="1"/>
- <pt x="896" y="1238" on="0"/>
- <pt x="816" y="1316" on="1"/>
- <pt x="736" y="1394" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 29 values pushed */
- 0 0 24 5 8 16 5 0 48 200 0 0 1 8 0 0 14 0 0 28 19 4 20 19 12
- 48 200 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="oslash" xMin="111" yMin="-25" xMax="1118" yMax="1110">
- <contour>
- <pt x="111" y="-25" on="1"/>
- <pt x="238" y="139" on="1"/>
- <pt x="111" y="311" on="0"/>
- <pt x="111" y="545" on="1"/>
- <pt x="111" y="809" on="0"/>
- <pt x="246" y="960" on="1"/>
- <pt x="381" y="1110" on="0"/>
- <pt x="620" y="1110" on="1"/>
- <pt x="799" y="1110" on="0"/>
- <pt x="921" y="1018" on="1"/>
- <pt x="993" y="1110" on="1"/>
- <pt x="1118" y="1110" on="1"/>
- <pt x="991" y="947" on="1"/>
- <pt x="1118" y="775" on="0"/>
- <pt x="1118" y="540" on="1"/>
- <pt x="1118" y="276" on="0"/>
- <pt x="983" y="126" on="1"/>
- <pt x="848" y="-25" on="0"/>
- <pt x="608" y="-25" on="1"/>
- <pt x="428" y="-25" on="0"/>
- <pt x="308" y="68" on="1"/>
- <pt x="236" y="-25" on="1"/>
- </contour>
- <contour>
- <pt x="822" y="891" on="1"/>
- <pt x="727" y="987" on="0"/>
- <pt x="614" y="987" on="1"/>
- <pt x="324" y="987" on="0"/>
- <pt x="324" y="542" on="1"/>
- <pt x="324" y="392" on="0"/>
- <pt x="357" y="292" on="1"/>
- </contour>
- <contour>
- <pt x="408" y="196" on="1"/>
- <pt x="494" y="99" on="0"/>
- <pt x="614" y="99" on="1"/>
- <pt x="905" y="99" on="0"/>
- <pt x="905" y="542" on="1"/>
- <pt x="905" y="690" on="0"/>
- <pt x="872" y="794" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 67 values pushed */
- 0 0 31 5 18 24 5 7 48 200 18 2 7 1 1 1 35 29 28 22 20 12 9 1 8
- 1 2 3 0 0 1 11 10 2 13 1 0 1 21 0 2 0 14 0 0 33 39 14 26 39
- 3 48 200 35 29 28 22 21 20 14 12 11 10 9 3 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="otilde" xMin="111" yMin="-25" xMax="1118" yMax="1518">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="tilde" x="1" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="p" xMin="62" yMin="-395" xMax="1118" yMax="1110">
- <contour>
- <pt x="383" y="-272" on="1"/>
- <pt x="630" y="-272" on="1"/>
- <pt x="630" y="-395" on="1"/>
- <pt x="62" y="-395" on="1"/>
- <pt x="62" y="-272" on="1"/>
- <pt x="185" y="-272" on="1"/>
- <pt x="185" y="962" on="1"/>
- <pt x="62" y="962" on="1"/>
- <pt x="62" y="1086" on="1"/>
- <pt x="383" y="1086" on="1"/>
- <pt x="383" y="864" on="1"/>
- <pt x="458" y="975" on="0"/>
- <pt x="529" y="1030" on="1"/>
- <pt x="631" y="1110" on="0"/>
- <pt x="749" y="1110" on="1"/>
- <pt x="914" y="1110" on="0"/>
- <pt x="1016" y="967" on="1"/>
- <pt x="1118" y="823" on="0"/>
- <pt x="1118" y="588" on="1"/>
- <pt x="1118" y="302" on="0"/>
- <pt x="983" y="139" on="1"/>
- <pt x="849" y="-25" on="0"/>
- <pt x="614" y="-25" on="1"/>
- <pt x="526" y="-25" on="0"/>
- <pt x="383" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="383" y="146" on="1"/>
- <pt x="519" y="123" on="0"/>
- <pt x="595" y="123" on="1"/>
- <pt x="762" y="123" on="0"/>
- <pt x="835" y="230" on="1"/>
- <pt x="908" y="337" on="0"/>
- <pt x="908" y="577" on="1"/>
- <pt x="908" y="950" on="0"/>
- <pt x="694" y="950" on="1"/>
- <pt x="530" y="950" on="0"/>
- <pt x="383" y="716" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 91 values pushed */
- 0 0 33 30 14 27 14 22 48 200 22 2 14 1 1 35 25 10 7 6 5 8 2 3 0
- 1 24 2 0 2 0 0 0 5 4 1 0 6 3 2 1 4 48 200 3 2 1 0 9 8
- 1 14 0 0 31 39 18 48 200 2 1 2 13 18 0 8 7 4 3 4 13 5 0 0 35
- 25 24 10 9 0 10 5 5 1 4 48 200 6 5 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="paragraph" xMin="100" yMin="-296" xMax="970" yMax="1493">
- <contour>
- <pt x="550" y="-296" on="1"/>
- <pt x="550" y="740" on="1"/>
- <pt x="406" y="757" on="0"/>
- <pt x="331" y="790" on="1"/>
- <pt x="100" y="889" on="0"/>
- <pt x="100" y="1154" on="1"/>
- <pt x="100" y="1493" on="0"/>
- <pt x="457" y="1493" on="1"/>
- <pt x="495" y="1493" on="0"/>
- <pt x="554" y="1488" on="1"/>
- <pt x="624" y="1482" on="1"/>
- <pt x="644" y="1480" on="0"/>
- <pt x="679" y="1480" on="1"/>
- <pt x="970" y="1480" on="1"/>
- <pt x="970" y="-296" on="1"/>
- <pt x="846" y="-296" on="1"/>
- <pt x="846" y="1357" on="1"/>
- <pt x="674" y="1357" on="1"/>
- <pt x="674" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 7 0 1 1 16 2 2 0 1 18 15 14 0 4 13 2 0 0 0 17 16 6 1 12 1
- 4 48 200 13 12 0 14 12 15 17 2 5 0 0 0 16 15 6 1 13 1 0 6 1 17
- 2 4 48 200 14 13 1 18 17 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="parenleft" xMin="321" yMin="-296" xMax="982" yMax="1579">
- <contour>
- <pt x="982" y="-296" on="1"/>
- <pt x="830" y="-266" on="0"/>
- <pt x="720" y="-194" on="1"/>
- <pt x="537" y="-74" on="0"/>
- <pt x="426" y="155" on="1"/>
- <pt x="321" y="372" on="0"/>
- <pt x="321" y="642" on="1"/>
- <pt x="321" y="1061" on="0"/>
- <pt x="569" y="1344" on="1"/>
- <pt x="668" y="1457" on="0"/>
- <pt x="794" y="1519" on="1"/>
- <pt x="872" y="1557" on="0"/>
- <pt x="982" y="1579" on="1"/>
- <pt x="982" y="1456" on="1"/>
- <pt x="790" y="1398" on="0"/>
- <pt x="678" y="1224" on="1"/>
- <pt x="531" y="996" on="0"/>
- <pt x="531" y="642" on="1"/>
- <pt x="531" y="269" on="0"/>
- <pt x="692" y="38" on="1"/>
- <pt x="801" y="-118" on="0"/>
- <pt x="982" y="-173" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 17 values pushed */
- 21 13 12 0 14 0 0 17 39 6 48 200 21 13 12 6 0
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="parenright" xMin="247" yMin="-296" xMax="908" yMax="1579">
- <contour>
- <pt x="247" y="-296" on="1"/>
- <pt x="247" y="-173" on="1"/>
- <pt x="440" y="-115" on="0"/>
- <pt x="552" y="59" on="1"/>
- <pt x="699" y="287" on="0"/>
- <pt x="699" y="642" on="1"/>
- <pt x="699" y="1014" on="0"/>
- <pt x="538" y="1245" on="1"/>
- <pt x="429" y="1401" on="0"/>
- <pt x="247" y="1456" on="1"/>
- <pt x="247" y="1579" on="1"/>
- <pt x="400" y="1549" on="0"/>
- <pt x="510" y="1477" on="1"/>
- <pt x="693" y="1357" on="0"/>
- <pt x="803" y="1128" on="1"/>
- <pt x="908" y="912" on="0"/>
- <pt x="908" y="642" on="1"/>
- <pt x="908" y="221" on="0"/>
- <pt x="661" y="-61" on="1"/>
- <pt x="561" y="-174" on="0"/>
- <pt x="436" y="-236" on="1"/>
- <pt x="358" y="-274" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 17 values pushed */
- 10 9 1 0 14 0 0 5 39 16 48 200 16 10 9 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="percent" xMin="21" yMin="-37" xMax="1207" yMax="1517">
- <contour>
- <pt x="61" y="-37" on="1"/>
- <pt x="1034" y="1517" on="1"/>
- <pt x="1166" y="1517" on="1"/>
- <pt x="190" y="-37" on="1"/>
- </contour>
- <contour>
- <pt x="285" y="1480" on="1"/>
- <pt x="404" y="1480" on="0"/>
- <pt x="476" y="1379" on="1"/>
- <pt x="549" y="1277" on="0"/>
- <pt x="549" y="1111" on="1"/>
- <pt x="549" y="942" on="0"/>
- <pt x="476" y="841" on="1"/>
- <pt x="404" y="740" on="0"/>
- <pt x="281" y="740" on="1"/>
- <pt x="177" y="740" on="0"/>
- <pt x="108" y="823" on="1"/>
- <pt x="21" y="928" on="0"/>
- <pt x="21" y="1110" on="1"/>
- <pt x="21" y="1278" on="0"/>
- <pt x="94" y="1379" on="1"/>
- <pt x="166" y="1480" on="0"/>
- </contour>
- <contour>
- <pt x="285" y="1357" on="1"/>
- <pt x="157" y="1357" on="0"/>
- <pt x="157" y="1110" on="1"/>
- <pt x="157" y="864" on="0"/>
- <pt x="285" y="864" on="1"/>
- <pt x="413" y="864" on="0"/>
- <pt x="413" y="1111" on="1"/>
- <pt x="413" y="1357" on="0"/>
- </contour>
- <contour>
- <pt x="943" y="740" on="1"/>
- <pt x="1062" y="740" on="0"/>
- <pt x="1134" y="639" on="1"/>
- <pt x="1207" y="538" on="0"/>
- <pt x="1207" y="372" on="1"/>
- <pt x="1207" y="202" on="0"/>
- <pt x="1134" y="101" on="1"/>
- <pt x="1061" y="0" on="0"/>
- <pt x="941" y="0" on="1"/>
- <pt x="835" y="0" on="0"/>
- <pt x="766" y="82" on="1"/>
- <pt x="679" y="187" on="0"/>
- <pt x="679" y="371" on="1"/>
- <pt x="679" y="538" on="0"/>
- <pt x="752" y="639" on="1"/>
- <pt x="824" y="740" on="0"/>
- </contour>
- <contour>
- <pt x="943" y="617" on="1"/>
- <pt x="815" y="617" on="0"/>
- <pt x="815" y="372" on="1"/>
- <pt x="815" y="123" on="0"/>
- <pt x="943" y="123" on="1"/>
- <pt x="1072" y="123" on="0"/>
- <pt x="1072" y="370" on="1"/>
- <pt x="1072" y="617" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 69 values pushed */
- 0 0 48 5 36 44 5 28 24 5 12 20 5 4 48 200 36 2 4 0 28 12 1 1 28
- 12 2 0 2 3 0 0 1 2 1 2 13 0 0 1 3 0 2 0 14 0 0 50 20 32
- 46 20 40 26 20 8 22 20 16 48 200 40 32 16 8 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="period" xMin="466" yMin="0" xMax="762" yMax="296">
- <contour>
- <pt x="466" y="0" on="1"/>
- <pt x="466" y="296" on="1"/>
- <pt x="762" y="296" on="1"/>
- <pt x="762" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 2 1 8 1 0 1 4 48 200 3 0 1 0 14 0 0 3 2 8 1 0 1 4
- 48 200 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="periodcentered" xMin="491" yMin="419" xMax="738" yMax="666">
- <contour>
- <pt x="491" y="419" on="1"/>
- <pt x="491" y="666" on="1"/>
- <pt x="738" y="666" on="1"/>
- <pt x="738" y="419" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 2 1 4 1 0 1 4 48 200 3 0 1 0 14 0 0 3 2 4 1 0 1 4
- 48 200 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="periodcentered#1" xMin="491" yMin="419" xMax="738" yMax="666">
- <contour>
- <pt x="491" y="419" on="1"/>
- <pt x="491" y="666" on="1"/>
- <pt x="738" y="666" on="1"/>
- <pt x="738" y="419" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 2 1 4 1 0 1 4 48 200 3 0 1 0 14 0 0 3 2 4 1 0 1 4
- 48 200 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="perthousand" xMin="12" yMin="0" xMax="1217" yMax="1480">
- <contour>
- <pt x="196" y="1476" on="1"/>
- <pt x="279" y="1476" on="0"/>
- <pt x="329" y="1391" on="1"/>
- <pt x="380" y="1307" on="0"/>
- <pt x="380" y="1169" on="1"/>
- <pt x="380" y="1027" on="0"/>
- <pt x="329" y="943" on="1"/>
- <pt x="279" y="859" on="0"/>
- <pt x="194" y="859" on="1"/>
- <pt x="121" y="859" on="0"/>
- <pt x="73" y="927" on="1"/>
- <pt x="12" y="1014" on="0"/>
- <pt x="12" y="1168" on="1"/>
- <pt x="12" y="1306" on="0"/>
- <pt x="63" y="1391" on="1"/>
- <pt x="113" y="1476" on="0"/>
- </contour>
- <contour>
- <pt x="196" y="1383" on="1"/>
- <pt x="108" y="1383" on="0"/>
- <pt x="108" y="1168" on="1"/>
- <pt x="108" y="952" on="0"/>
- <pt x="199" y="952" on="1"/>
- <pt x="285" y="952" on="0"/>
- <pt x="285" y="1168" on="1"/>
- <pt x="285" y="1383" on="0"/>
- </contour>
- <contour>
- <pt x="28" y="0" on="1"/>
- <pt x="645" y="1480" on="1"/>
- <pt x="748" y="1480" on="1"/>
- <pt x="129" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="578" y="617" on="1"/>
- <pt x="661" y="617" on="0"/>
- <pt x="711" y="532" on="1"/>
- <pt x="762" y="448" on="0"/>
- <pt x="762" y="309" on="1"/>
- <pt x="762" y="168" on="0"/>
- <pt x="711" y="84" on="1"/>
- <pt x="661" y="0" on="0"/>
- <pt x="576" y="0" on="1"/>
- <pt x="503" y="0" on="0"/>
- <pt x="455" y="68" on="1"/>
- <pt x="394" y="155" on="0"/>
- <pt x="394" y="309" on="1"/>
- <pt x="394" y="448" on="0"/>
- <pt x="445" y="532" on="1"/>
- <pt x="495" y="617" on="0"/>
- </contour>
- <contour>
- <pt x="578" y="524" on="1"/>
- <pt x="489" y="524" on="0"/>
- <pt x="489" y="309" on="1"/>
- <pt x="489" y="93" on="0"/>
- <pt x="580" y="93" on="1"/>
- <pt x="666" y="93" on="0"/>
- <pt x="666" y="310" on="1"/>
- <pt x="666" y="524" on="0"/>
- </contour>
- <contour>
- <pt x="1033" y="617" on="1"/>
- <pt x="1115" y="617" on="0"/>
- <pt x="1166" y="532" on="1"/>
- <pt x="1217" y="448" on="0"/>
- <pt x="1217" y="309" on="1"/>
- <pt x="1217" y="168" on="0"/>
- <pt x="1166" y="84" on="1"/>
- <pt x="1116" y="0" on="0"/>
- <pt x="1031" y="0" on="1"/>
- <pt x="958" y="0" on="0"/>
- <pt x="910" y="68" on="1"/>
- <pt x="849" y="155" on="0"/>
- <pt x="849" y="309" on="1"/>
- <pt x="849" y="448" on="0"/>
- <pt x="900" y="532" on="1"/>
- <pt x="951" y="617" on="0"/>
- </contour>
- <contour>
- <pt x="1033" y="524" on="1"/>
- <pt x="944" y="524" on="0"/>
- <pt x="944" y="310" on="1"/>
- <pt x="944" y="93" on="0"/>
- <pt x="1035" y="93" on="1"/>
- <pt x="1121" y="93" on="0"/>
- <pt x="1121" y="309" on="1"/>
- <pt x="1121" y="524" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 82 values pushed */
- 0 0 72 17 60 68 17 52 48 17 36 44 17 28 20 17 8 16 17 0 48 200 60 2 36
- 2 0 0 52 28 8 1 1 52 28 26 25 8 5 0 2 3 0 0 1 27 24 2 0 14
- 0 0 74 21 56 70 21 64 50 21 32 46 21 40 22 21 4 18 21 12 48 200 64 56 40
- 32 27 26 25 24 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="plus" xMin="99" yMin="101" xMax="1130" yMax="1133">
- <contour>
- <pt x="541" y="101" on="1"/>
- <pt x="541" y="543" on="1"/>
- <pt x="99" y="543" on="1"/>
- <pt x="99" y="691" on="1"/>
- <pt x="541" y="691" on="1"/>
- <pt x="541" y="1133" on="1"/>
- <pt x="689" y="1133" on="1"/>
- <pt x="689" y="691" on="1"/>
- <pt x="1130" y="691" on="1"/>
- <pt x="1130" y="543" on="1"/>
- <pt x="689" y="543" on="1"/>
- <pt x="689" y="101" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 53 values pushed */
- 0 0 10 9 2 1 7 3 3 1 4 48 200 6 5 1 8 7 4 3 3 11 0 1 3
- 0 14 0 0 11 10 7 6 14 3 0 1 4 48 200 9 8 1 5 4 1 0 3 3 2
- 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="plusminus" xMin="99" yMin="0" xMax="1130" yMax="1234">
- <contour>
- <pt x="541" y="296" on="1"/>
- <pt x="541" y="691" on="1"/>
- <pt x="99" y="691" on="1"/>
- <pt x="99" y="839" on="1"/>
- <pt x="541" y="839" on="1"/>
- <pt x="541" y="1234" on="1"/>
- <pt x="689" y="1234" on="1"/>
- <pt x="689" y="839" on="1"/>
- <pt x="1130" y="839" on="1"/>
- <pt x="1130" y="691" on="1"/>
- <pt x="689" y="691" on="1"/>
- <pt x="689" y="296" on="1"/>
- </contour>
- <contour>
- <pt x="1130" y="0" on="1"/>
- <pt x="99" y="0" on="1"/>
- <pt x="99" y="148" on="1"/>
- <pt x="1130" y="148" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 15 14 7 1 12 10 9 2 1 7 3 3 2 4 48 200 13 12 1 6 5 1 8
- 7 4 3 3 11 0 1 4 0 14 0 0 11 10 7 6 14 3 0 1 4 48 200 15 12
- 9 8 3 5 4 1 0 3 14 13 3 2 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="q" xMin="111" yMin="-395" xMax="1167" yMax="1110">
- <contour>
- <pt x="846" y="222" on="1"/>
- <pt x="771" y="111" on="0"/>
- <pt x="701" y="55" on="1"/>
- <pt x="599" y="-25" on="0"/>
- <pt x="480" y="-25" on="1"/>
- <pt x="315" y="-25" on="0"/>
- <pt x="213" y="119" on="1"/>
- <pt x="111" y="262" on="0"/>
- <pt x="111" y="498" on="1"/>
- <pt x="111" y="783" on="0"/>
- <pt x="246" y="946" on="1"/>
- <pt x="380" y="1110" on="0"/>
- <pt x="619" y="1110" on="1"/>
- <pt x="846" y="1086" on="1"/>
- <pt x="1044" y="1086" on="1"/>
- <pt x="1044" y="-272" on="1"/>
- <pt x="1167" y="-272" on="1"/>
- <pt x="1167" y="-395" on="1"/>
- <pt x="600" y="-395" on="1"/>
- <pt x="600" y="-271" on="1"/>
- <pt x="846" y="-271" on="1"/>
- </contour>
- <contour>
- <pt x="846" y="939" on="1"/>
- <pt x="710" y="962" on="0"/>
- <pt x="633" y="962" on="1"/>
- <pt x="468" y="962" on="0"/>
- <pt x="394" y="855" on="1"/>
- <pt x="321" y="748" on="0"/>
- <pt x="321" y="509" on="1"/>
- <pt x="321" y="136" on="0"/>
- <pt x="535" y="136" on="1"/>
- <pt x="699" y="136" on="0"/>
- <pt x="846" y="370" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 82 values pushed */
- 0 0 29 30 4 23 14 12 48 200 12 1 4 2 1 31 21 0 3 13 2 3 0 16 15
- 2 19 17 3 0 0 20 19 6 1 17 1 4 48 200 18 17 1 0 14 13 1 14 0 0
- 27 39 8 48 200 17 16 2 13 14 19 18 8 0 0 0 31 21 20 13 0 10 4 14 1
- 4 48 200 15 14 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="question" xMin="202" yMin="0" xMax="1079" yMax="1517">
- <contour>
- <pt x="415" y="0" on="1"/>
- <pt x="415" y="222" on="1"/>
- <pt x="662" y="222" on="1"/>
- <pt x="662" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="440" y="419" on="1"/>
- <pt x="440" y="478" on="1"/>
- <pt x="440" y="720" on="0"/>
- <pt x="659" y="876" on="1"/>
- <pt x="726" y="923" on="1"/>
- <pt x="869" y="1023" on="0"/>
- <pt x="869" y="1162" on="1"/>
- <pt x="869" y="1268" on="0"/>
- <pt x="798" y="1331" on="1"/>
- <pt x="728" y="1394" on="0"/>
- <pt x="604" y="1394" on="1"/>
- <pt x="480" y="1394" on="0"/>
- <pt x="350" y="1332" on="1"/>
- <pt x="326" y="1073" on="1"/>
- <pt x="202" y="1073" on="1"/>
- <pt x="202" y="1450" on="1"/>
- <pt x="420" y="1517" on="0"/>
- <pt x="613" y="1517" on="1"/>
- <pt x="1079" y="1517" on="0"/>
- <pt x="1079" y="1180" on="1"/>
- <pt x="1079" y="1014" on="0"/>
- <pt x="932" y="904" on="1"/>
- <pt x="876" y="862" on="1"/>
- <pt x="873" y="860" on="0"/>
- <pt x="864" y="853" on="1"/>
- <pt x="855" y="847" on="0"/>
- <pt x="847" y="841" on="1"/>
- <pt x="834" y="833" on="0"/>
- <pt x="814" y="819" on="1"/>
- <pt x="719" y="754" on="0"/>
- <pt x="682" y="703" on="1"/>
- <pt x="637" y="647" on="0"/>
- <pt x="637" y="481" on="1"/>
- <pt x="637" y="419" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 0 0 14 5 21 48 200 21 0 1 36 34 19 18 17 16 5 7 0 4 3 0 0 0 2
- 1 9 1 0 1 4 48 200 37 4 1 3 0 1 2 0 14 0 0 10 39 23 48 200 37
- 36 5 4 4 2 0 3 17 16 2 0 18 3 34 23 2 0 0 3 2 4 1 0 1 4
- 48 200 19 18 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="questiondown" xMin="151" yMin="-432" xMax="1027" yMax="1086">
- <contour>
- <pt x="814" y="1086" on="1"/>
- <pt x="814" y="863" on="1"/>
- <pt x="568" y="863" on="1"/>
- <pt x="568" y="1086" on="1"/>
- </contour>
- <contour>
- <pt x="790" y="666" on="1"/>
- <pt x="790" y="607" on="1"/>
- <pt x="790" y="367" on="0"/>
- <pt x="570" y="210" on="1"/>
- <pt x="503" y="162" on="1"/>
- <pt x="361" y="61" on="0"/>
- <pt x="361" y="-76" on="1"/>
- <pt x="361" y="-183" on="0"/>
- <pt x="432" y="-246" on="1"/>
- <pt x="502" y="-309" on="0"/>
- <pt x="626" y="-309" on="1"/>
- <pt x="750" y="-309" on="0"/>
- <pt x="879" y="-247" on="1"/>
- <pt x="904" y="12" on="1"/>
- <pt x="1027" y="12" on="1"/>
- <pt x="1027" y="-364" on="1"/>
- <pt x="807" y="-432" on="0"/>
- <pt x="618" y="-432" on="1"/>
- <pt x="151" y="-432" on="0"/>
- <pt x="151" y="-94" on="1"/>
- <pt x="151" y="71" on="0"/>
- <pt x="297" y="181" on="1"/>
- <pt x="354" y="224" on="1"/>
- <pt x="371" y="237" on="0"/>
- <pt x="416" y="267" on="1"/>
- <pt x="509" y="331" on="0"/>
- <pt x="547" y="383" on="1"/>
- <pt x="592" y="439" on="0"/>
- <pt x="592" y="604" on="1"/>
- <pt x="592" y="666" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 0 0 14 5 21 48 200 1 32 30 18 17 5 5 4 2 3 0 1 19 16 21 2 0 0
- 0 2 1 9 1 0 1 4 48 200 33 4 1 0 3 0 1 14 0 0 10 39 23 48 200
- 17 16 2 18 0 3 33 32 5 4 4 0 2 3 30 23 2 0 0 1 0 4 1 2 1
- 4 48 200 19 18 1 3 2 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotedbl" xMin="244" yMin="1036" xMax="984" yMax="1579">
- <contour>
- <pt x="293" y="1036" on="1"/>
- <pt x="244" y="1579" on="1"/>
- <pt x="491" y="1579" on="1"/>
- <pt x="441" y="1036" on="1"/>
- </contour>
- <contour>
- <pt x="787" y="1036" on="1"/>
- <pt x="738" y="1579" on="1"/>
- <pt x="984" y="1579" on="1"/>
- <pt x="935" y="1036" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 21 values pushed */
- 6 5 2 1 3 7 4 3 0 3 2 0 14 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotedblbase" xMin="257" yMin="-296" xMax="997" yMax="247">
- <contour>
- <pt x="997" y="247" on="1"/>
- <pt x="997" y="-2" on="1"/>
- <pt x="996" y="-283" on="0"/>
- <pt x="750" y="-296" on="1"/>
- <pt x="750" y="-197" on="1"/>
- <pt x="855" y="-176" on="0"/>
- <pt x="855" y="-56" on="1"/>
- <pt x="855" y="0" on="1"/>
- <pt x="750" y="0" on="1"/>
- <pt x="750" y="247" on="1"/>
- </contour>
- <contour>
- <pt x="504" y="247" on="1"/>
- <pt x="504" y="-2" on="1"/>
- <pt x="503" y="-283" on="0"/>
- <pt x="257" y="-296" on="1"/>
- <pt x="257" y="-197" on="1"/>
- <pt x="362" y="-176" on="0"/>
- <pt x="362" y="-56" on="1"/>
- <pt x="362" y="0" on="1"/>
- <pt x="257" y="0" on="1"/>
- <pt x="257" y="247" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 18 17 16 14 13 11 8 7 6 4 3 1 12 13 0 19 10 9 0 3 0 14 7 6 2
- 0 3 3 17 16 2 10 13 3 0 0 11 10 4 1 13 9 8 4 3 4 3 0 2 4
- 48 200 19 18 14 13 3 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotedblleft" xMin="232" yMin="1036" xMax="972" yMax="1579">
- <contour>
- <pt x="232" y="1036" on="1"/>
- <pt x="232" y="1285" on="1"/>
- <pt x="233" y="1566" on="0"/>
- <pt x="479" y="1579" on="1"/>
- <pt x="479" y="1480" on="1"/>
- <pt x="374" y="1459" on="0"/>
- <pt x="374" y="1339" on="1"/>
- <pt x="374" y="1283" on="1"/>
- <pt x="479" y="1283" on="1"/>
- <pt x="479" y="1036" on="1"/>
- </contour>
- <contour>
- <pt x="726" y="1036" on="1"/>
- <pt x="726" y="1285" on="1"/>
- <pt x="727" y="1566" on="0"/>
- <pt x="972" y="1579" on="1"/>
- <pt x="972" y="1480" on="1"/>
- <pt x="867" y="1459" on="0"/>
- <pt x="867" y="1339" on="1"/>
- <pt x="867" y="1283" on="1"/>
- <pt x="972" y="1283" on="1"/>
- <pt x="972" y="1036" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 18 17 16 14 13 11 8 7 6 4 3 1 12 13 0 19 10 9 0 3 0 14 17 16 2
- 13 10 3 7 6 2 3 0 3 0 0 11 10 4 1 13 9 8 4 3 4 3 0 2 4
- 48 200 19 18 14 13 3 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotedblright" xMin="257" yMin="1036" xMax="997" yMax="1579">
- <contour>
- <pt x="997" y="1579" on="1"/>
- <pt x="997" y="1330" on="1"/>
- <pt x="996" y="1049" on="0"/>
- <pt x="750" y="1036" on="1"/>
- <pt x="750" y="1135" on="1"/>
- <pt x="855" y="1156" on="0"/>
- <pt x="855" y="1276" on="1"/>
- <pt x="855" y="1332" on="1"/>
- <pt x="750" y="1332" on="1"/>
- <pt x="750" y="1579" on="1"/>
- </contour>
- <contour>
- <pt x="504" y="1579" on="1"/>
- <pt x="504" y="1330" on="1"/>
- <pt x="503" y="1049" on="0"/>
- <pt x="257" y="1036" on="1"/>
- <pt x="257" y="1135" on="1"/>
- <pt x="362" y="1156" on="0"/>
- <pt x="362" y="1276" on="1"/>
- <pt x="362" y="1332" on="1"/>
- <pt x="257" y="1332" on="1"/>
- <pt x="257" y="1579" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 18 17 16 14 13 11 8 7 6 4 3 1 12 13 0 19 10 9 0 3 0 14 7 6 2
- 0 3 3 17 16 2 10 13 3 0 0 11 10 4 1 13 9 8 4 3 4 3 0 2 4
- 48 200 19 18 14 13 3 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quoteleft" xMin="454" yMin="962" xMax="750" yMax="1579">
- <contour>
- <pt x="750" y="1258" on="1"/>
- <pt x="750" y="962" on="1"/>
- <pt x="454" y="962" on="1"/>
- <pt x="454" y="1142" on="1"/>
- <pt x="456" y="1560" on="0"/>
- <pt x="750" y="1579" on="1"/>
- <pt x="750" y="1480" on="1"/>
- <pt x="675" y="1468" on="0"/>
- <pt x="653" y="1413" on="1"/>
- <pt x="633" y="1365" on="0"/>
- <pt x="627" y="1258" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 34 values pushed */
- 10 6 5 3 0 5 13 1 2 1 1 0 14 10 0 2 2 0 0 6 5 1 0 8 3
- 2 1 4 48 200 3 2 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotereversed"/><!-- contains no outline data -->
-
- <TTGlyph name="quoteright" xMin="479" yMin="962" xMax="775" yMax="1579">
- <contour>
- <pt x="479" y="1283" on="1"/>
- <pt x="479" y="1579" on="1"/>
- <pt x="775" y="1579" on="1"/>
- <pt x="775" y="1399" on="1"/>
- <pt x="773" y="980" on="0"/>
- <pt x="479" y="962" on="1"/>
- <pt x="479" y="1061" on="1"/>
- <pt x="554" y="1073" on="0"/>
- <pt x="576" y="1128" on="1"/>
- <pt x="596" y="1176" on="0"/>
- <pt x="602" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 34 values pushed */
- 10 6 5 3 0 5 13 1 2 1 1 0 14 10 2 0 2 0 0 3 2 8 1 0 1
- 4 48 200 6 5 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotesinglbase" xMin="479" yMin="-321" xMax="775" yMax="296">
- <contour>
- <pt x="479" y="0" on="1"/>
- <pt x="479" y="296" on="1"/>
- <pt x="775" y="296" on="1"/>
- <pt x="775" y="116" on="1"/>
- <pt x="773" y="-302" on="0"/>
- <pt x="479" y="-321" on="1"/>
- <pt x="479" y="-222" on="1"/>
- <pt x="554" y="-210" on="0"/>
- <pt x="576" y="-155" on="1"/>
- <pt x="596" y="-107" on="0"/>
- <pt x="602" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 34 values pushed */
- 10 6 5 3 0 5 13 1 2 1 1 0 14 10 2 0 2 0 0 3 2 8 1 0 1
- 4 48 200 6 5 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotesingle" xMin="466" yMin="962" xMax="762" yMax="1579">
- <contour>
- <pt x="540" y="962" on="1"/>
- <pt x="466" y="1579" on="1"/>
- <pt x="762" y="1579" on="1"/>
- <pt x="688" y="962" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 2 1 1 3 0 1 2 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="r" xMin="74" yMin="0" xMax="1106" yMax="1110">
- <contour>
- <pt x="530" y="702" on="1"/>
- <pt x="530" y="123" on="1"/>
- <pt x="899" y="123" on="1"/>
- <pt x="899" y="0" on="1"/>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="123" on="1"/>
- <pt x="333" y="123" on="1"/>
- <pt x="333" y="962" on="1"/>
- <pt x="74" y="962" on="1"/>
- <pt x="74" y="1086" on="1"/>
- <pt x="530" y="1086" on="1"/>
- <pt x="530" y="875" on="1"/>
- <pt x="604" y="981" on="0"/>
- <pt x="671" y="1034" on="1"/>
- <pt x="767" y="1110" on="0"/>
- <pt x="878" y="1110" on="1"/>
- <pt x="996" y="1110" on="0"/>
- <pt x="1106" y="1042" on="1"/>
- <pt x="1106" y="714" on="1"/>
- <pt x="982" y="714" on="1"/>
- <pt x="962" y="902" on="1"/>
- <pt x="906" y="938" on="0"/>
- <pt x="844" y="938" on="1"/>
- <pt x="660" y="938" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 84 values pushed */
- 0 0 22 22 15 48 200 15 1 17 9 7 2 20 19 18 11 0 5 7 1 3 0 0 8
- 7 6 1 9 6 5 2 1 6 3 3 2 4 48 200 4 3 1 0 10 9 1 14 20 19
- 3 2 4 17 0 3 9 8 5 4 4 13 6 0 0 11 10 1 0 10 3 6 1 4 48
- 200 18 17 1 7 6 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="racute" xMin="74" yMin="0" xMax="1106" yMax="1604">
- <component glyphName="r" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="40" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="radicalex" xMin="0" yMin="1456" xMax="1229" yMax="1604">
- <contour>
- <pt x="0" y="1604" on="1"/>
- <pt x="1229" y="1604" on="1"/>
- <pt x="1229" y="1456" on="1"/>
- <pt x="0" y="1456" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 2 16 1 0 1 4 48 200 1 0 1 0 14 2 1 1 3 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="rcaron" xMin="74" yMin="0" xMax="1106" yMax="1604">
- <component glyphName="r" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="-24" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="rcommaaccent" xMin="74" yMin="-432" xMax="1106" yMax="1110">
- <component glyphName="r" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="-32" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="registered" xMin="62" yMin="-37" xMax="1168" yMax="1517">
- <contour>
- <pt x="615" y="1517" on="1"/>
- <pt x="864" y="1517" on="0"/>
- <pt x="1016" y="1304" on="1"/>
- <pt x="1168" y="1091" on="0"/>
- <pt x="1168" y="742" on="1"/>
- <pt x="1168" y="386" on="0"/>
- <pt x="1016" y="175" on="1"/>
- <pt x="864" y="-37" on="0"/>
- <pt x="606" y="-37" on="1"/>
- <pt x="388" y="-37" on="0"/>
- <pt x="245" y="136" on="1"/>
- <pt x="62" y="357" on="0"/>
- <pt x="62" y="740" on="1"/>
- <pt x="62" y="1092" on="0"/>
- <pt x="214" y="1304" on="1"/>
- <pt x="366" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1406" on="1"/>
- <pt x="423" y="1406" on="0"/>
- <pt x="304" y="1222" on="1"/>
- <pt x="185" y="1038" on="0"/>
- <pt x="185" y="741" on="1"/>
- <pt x="185" y="445" on="0"/>
- <pt x="303" y="260" on="1"/>
- <pt x="421" y="74" on="0"/>
- <pt x="611" y="74" on="1"/>
- <pt x="785" y="74" on="0"/>
- <pt x="899" y="221" on="1"/>
- <pt x="1044" y="407" on="0"/>
- <pt x="1044" y="742" on="1"/>
- <pt x="1044" y="1039" on="0"/>
- <pt x="925" y="1222" on="1"/>
- <pt x="805" y="1406" on="0"/>
- </contour>
- <contour>
- <pt x="364" y="317" on="1"/>
- <pt x="364" y="388" on="1"/>
- <pt x="426" y="388" on="1"/>
- <pt x="426" y="1093" on="1"/>
- <pt x="364" y="1093" on="1"/>
- <pt x="364" y="1163" on="1"/>
- <pt x="636" y="1163" on="1"/>
- <pt x="853" y="1163" on="0"/>
- <pt x="853" y="957" on="1"/>
- <pt x="853" y="804" on="0"/>
- <pt x="704" y="723" on="1"/>
- <pt x="889" y="388" on="1"/>
- <pt x="914" y="388" on="1"/>
- <pt x="914" y="317" on="1"/>
- <pt x="795" y="317" on="1"/>
- <pt x="601" y="687" on="1"/>
- <pt x="537" y="687" on="1"/>
- <pt x="537" y="388" on="1"/>
- <pt x="611" y="388" on="1"/>
- <pt x="611" y="317" on="1"/>
- </contour>
- <contour>
- <pt x="537" y="758" on="1"/>
- <pt x="544" y="758" on="1"/>
- <pt x="729" y="758" on="0"/>
- <pt x="729" y="946" on="1"/>
- <pt x="729" y="1028" on="0"/>
- <pt x="695" y="1060" on="1"/>
- <pt x="661" y="1093" on="0"/>
- <pt x="574" y="1093" on="1"/>
- <pt x="537" y="1093" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 97 values pushed */
- 0 0 24 40 8 16 40 0 48 200 8 2 0 0 60 59 53 52 50 49 48 47 44 43 42
- 36 35 34 33 15 37 32 3 38 37 1 51 46 45 32 3 2 0 14 0 0 55 6 40 28
- 6 4 20 6 12 48 200 59 53 51 50 47 46 45 44 43 42 38 11 13 40 4 48 37 36
- 33 32 4 13 12 34 0 0 60 52 49 48 3 34 1 6 48 200 35 34 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ring" xMin="388" yMin="1283" xMax="842" yMax="1737">
- <contour>
- <pt x="615" y="1737" on="1"/>
- <pt x="709" y="1737" on="0"/>
- <pt x="775" y="1671" on="1"/>
- <pt x="842" y="1605" on="0"/>
- <pt x="842" y="1511" on="1"/>
- <pt x="842" y="1414" on="0"/>
- <pt x="775" y="1349" on="1"/>
- <pt x="709" y="1283" on="0"/>
- <pt x="613" y="1283" on="1"/>
- <pt x="530" y="1283" on="0"/>
- <pt x="468" y="1337" on="1"/>
- <pt x="388" y="1406" on="0"/>
- <pt x="388" y="1510" on="1"/>
- <pt x="388" y="1604" on="0"/>
- <pt x="455" y="1670" on="1"/>
- <pt x="522" y="1737" on="0"/>
- </contour>
- <contour>
- <pt x="615" y="1650" on="1"/>
- <pt x="557" y="1650" on="0"/>
- <pt x="516" y="1609" on="1"/>
- <pt x="474" y="1569" on="0"/>
- <pt x="474" y="1510" on="1"/>
- <pt x="474" y="1452" on="0"/>
- <pt x="515" y="1411" on="1"/>
- <pt x="556" y="1369" on="0"/>
- <pt x="614" y="1369" on="1"/>
- <pt x="667" y="1369" on="0"/>
- <pt x="706" y="1402" on="1"/>
- <pt x="756" y="1445" on="0"/>
- <pt x="756" y="1511" on="1"/>
- <pt x="756" y="1569" on="0"/>
- <pt x="714" y="1609" on="1"/>
- <pt x="672" y="1650" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 0 0 24 32 8 16 32 0 48 200 8 0 14 0 0 28 32 4 20 32 12 48 200 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="s" xMin="173" yMin="-25" xMax="1088" yMax="1111">
- <contour>
- <pt x="173" y="61" on="1"/>
- <pt x="173" y="358" on="1"/>
- <pt x="296" y="358" on="1"/>
- <pt x="321" y="175" on="1"/>
- <pt x="517" y="99" on="0"/>
- <pt x="654" y="99" on="1"/>
- <pt x="892" y="99" on="0"/>
- <pt x="892" y="267" on="1"/>
- <pt x="892" y="333" on="0"/>
- <pt x="852" y="369" on="1"/>
- <pt x="812" y="406" on="0"/>
- <pt x="709" y="433" on="1"/>
- <pt x="505" y="487" on="1"/>
- <pt x="334" y="532" on="0"/>
- <pt x="256" y="605" on="1"/>
- <pt x="179" y="676" on="0"/>
- <pt x="179" y="794" on="1"/>
- <pt x="179" y="1111" on="0"/>
- <pt x="611" y="1111" on="1"/>
- <pt x="832" y="1111" on="0"/>
- <pt x="1013" y="1039" on="1"/>
- <pt x="1013" y="753" on="1"/>
- <pt x="890" y="753" on="1"/>
- <pt x="865" y="934" on="1"/>
- <pt x="756" y="987" on="0"/>
- <pt x="610" y="987" on="1"/>
- <pt x="500" y="987" on="0"/>
- <pt x="439" y="952" on="1"/>
- <pt x="367" y="911" on="0"/>
- <pt x="367" y="826" on="1"/>
- <pt x="367" y="714" on="0"/>
- <pt x="573" y="660" on="1"/>
- <pt x="775" y="607" on="1"/>
- <pt x="943" y="563" on="0"/>
- <pt x="1016" y="495" on="1"/>
- <pt x="1088" y="428" on="0"/>
- <pt x="1088" y="313" on="1"/>
- <pt x="1088" y="156" on="0"/>
- <pt x="965" y="66" on="1"/>
- <pt x="842" y="-25" on="0"/>
- <pt x="622" y="-25" on="1"/>
- <pt x="396" y="-25" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 61 values pushed */
- 0 0 25 5 18 5 5 40 48 200 40 2 18 1 1 1 23 22 21 20 3 2 1 0 8
- 1 2 3 0 0 14 0 0 29 19 16 7 28 36 48 200 16 23 22 16 3 2 5 20 0
- 3 36 20 21 20 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="sacute" xMin="173" yMin="-25" xMax="1088" yMax="1604">
- <component glyphName="s" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="113" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="scaron" xMin="173" yMin="-25" xMax="1088" yMax="1604">
- <component glyphName="s" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="15" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="scedilla" xMin="173" yMin="-432" xMax="1088" yMax="1111">
- <component glyphName="s" x="0" y="0" flags="0x4"/>
- <component glyphName="cedilla" x="26" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="scircumflex" xMin="173" yMin="-25" xMax="1088" yMax="1604">
- <contour>
- <pt x="173" y="61" on="1"/>
- <pt x="173" y="358" on="1"/>
- <pt x="296" y="358" on="1"/>
- <pt x="321" y="175" on="1"/>
- <pt x="517" y="99" on="0"/>
- <pt x="654" y="99" on="1"/>
- <pt x="892" y="99" on="0"/>
- <pt x="892" y="267" on="1"/>
- <pt x="892" y="333" on="0"/>
- <pt x="852" y="369" on="1"/>
- <pt x="812" y="406" on="0"/>
- <pt x="709" y="433" on="1"/>
- <pt x="505" y="487" on="1"/>
- <pt x="334" y="532" on="0"/>
- <pt x="256" y="605" on="1"/>
- <pt x="179" y="676" on="0"/>
- <pt x="179" y="794" on="1"/>
- <pt x="179" y="1111" on="0"/>
- <pt x="611" y="1111" on="1"/>
- <pt x="832" y="1111" on="0"/>
- <pt x="1013" y="1039" on="1"/>
- <pt x="1013" y="753" on="1"/>
- <pt x="890" y="753" on="1"/>
- <pt x="865" y="934" on="1"/>
- <pt x="756" y="987" on="0"/>
- <pt x="610" y="987" on="1"/>
- <pt x="500" y="987" on="0"/>
- <pt x="439" y="952" on="1"/>
- <pt x="367" y="911" on="0"/>
- <pt x="367" y="826" on="1"/>
- <pt x="367" y="714" on="0"/>
- <pt x="573" y="660" on="1"/>
- <pt x="775" y="607" on="1"/>
- <pt x="943" y="563" on="0"/>
- <pt x="1016" y="495" on="1"/>
- <pt x="1088" y="428" on="0"/>
- <pt x="1088" y="313" on="1"/>
- <pt x="1088" y="156" on="0"/>
- <pt x="965" y="66" on="1"/>
- <pt x="842" y="-25" on="0"/>
- <pt x="622" y="-25" on="1"/>
- <pt x="396" y="-25" on="0"/>
- </contour>
- <contour>
- <pt x="263" y="1283" on="1"/>
- <pt x="519" y="1604" on="1"/>
- <pt x="738" y="1604" on="1"/>
- <pt x="994" y="1283" on="1"/>
- <pt x="871" y="1283" on="1"/>
- <pt x="630" y="1485" on="1"/>
- <pt x="627" y="1485" on="1"/>
- <pt x="386" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 0 0 25 5 18 5 5 40 48 200 40 2 18 1 1 49 48 47 46 45 42 6 43 1 3
- 0 1 1 23 22 21 20 3 2 1 0 8 1 2 3 0 0 44 43 1 0 14 0 0 29
- 19 16 7 28 36 48 200 16 49 48 47 46 45 44 43 42 23 22 16 3 2 13 20 0 3
- 36 20 21 20 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="scommaaccent" xMin="173" yMin="-432" xMax="1088" yMax="1111">
- <component glyphName="s" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="42" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="section" xMin="154" yMin="-333" xMax="1073" yMax="1518">
- <contour>
- <pt x="154" y="-259" on="1"/>
- <pt x="154" y="62" on="1"/>
- <pt x="277" y="62" on="1"/>
- <pt x="302" y="-148" on="1"/>
- <pt x="462" y="-210" on="0"/>
- <pt x="617" y="-210" on="1"/>
- <pt x="749" y="-210" on="0"/>
- <pt x="825" y="-154" on="1"/>
- <pt x="900" y="-99" on="0"/>
- <pt x="900" y="-6" on="1"/>
- <pt x="900" y="77" on="0"/>
- <pt x="831" y="125" on="1"/>
- <pt x="778" y="163" on="0"/>
- <pt x="668" y="206" on="1"/>
- <pt x="422" y="302" on="1"/>
- <pt x="160" y="404" on="0"/>
- <pt x="160" y="622" on="1"/>
- <pt x="160" y="776" on="0"/>
- <pt x="304" y="912" on="1"/>
- <pt x="166" y="1013" on="0"/>
- <pt x="166" y="1158" on="1"/>
- <pt x="166" y="1330" on="0"/>
- <pt x="298" y="1424" on="1"/>
- <pt x="429" y="1518" on="0"/>
- <pt x="673" y="1518" on="1"/>
- <pt x="830" y="1518" on="0"/>
- <pt x="1018" y="1474" on="1"/>
- <pt x="1018" y="1154" on="1"/>
- <pt x="894" y="1154" on="1"/>
- <pt x="870" y="1357" on="1"/>
- <pt x="740" y="1394" on="0"/>
- <pt x="630" y="1394" on="1"/>
- <pt x="498" y="1394" on="0"/>
- <pt x="424" y="1352" on="1"/>
- <pt x="339" y="1303" on="0"/>
- <pt x="339" y="1202" on="1"/>
- <pt x="339" y="1118" on="0"/>
- <pt x="426" y="1054" on="1"/>
- <pt x="477" y="1018" on="0"/>
- <pt x="565" y="984" on="1"/>
- <pt x="771" y="905" on="1"/>
- <pt x="1048" y="799" on="0"/>
- <pt x="1048" y="571" on="1"/>
- <pt x="1048" y="426" on="0"/>
- <pt x="919" y="281" on="1"/>
- <pt x="1073" y="170" on="0"/>
- <pt x="1073" y="13" on="1"/>
- <pt x="1073" y="-145" on="0"/>
- <pt x="945" y="-239" on="1"/>
- <pt x="817" y="-333" on="0"/>
- <pt x="590" y="-333" on="1"/>
- <pt x="360" y="-333" on="0"/>
- </contour>
- <contour>
- <pt x="811" y="344" on="1"/>
- <pt x="900" y="442" on="0"/>
- <pt x="900" y="533" on="1"/>
- <pt x="900" y="664" on="0"/>
- <pt x="714" y="732" on="1"/>
- <pt x="458" y="826" on="1"/>
- <pt x="410" y="845" on="1"/>
- <pt x="327" y="757" on="0"/>
- <pt x="327" y="672" on="1"/>
- <pt x="327" y="541" on="0"/>
- <pt x="491" y="474" on="1"/>
- <pt x="760" y="365" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 0 0 31 5 24 5 5 50 48 200 24 0 1 58 52 44 29 28 27 26 18 3 2 1 0
- 12 13 50 0 0 14 0 0 60 15 16 54 16 42 35 15 20 9 15 46 48 200 20 16 58
- 52 44 29 28 20 18 16 3 2 10 26 0 3 46 42 26 27 26 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="semicolon" xMin="466" yMin="-321" xMax="762" yMax="1086">
- <contour>
- <pt x="466" y="0" on="1"/>
- <pt x="466" y="296" on="1"/>
- <pt x="762" y="296" on="1"/>
- <pt x="762" y="116" on="1"/>
- <pt x="760" y="-302" on="0"/>
- <pt x="466" y="-321" on="1"/>
- <pt x="466" y="-222" on="1"/>
- <pt x="541" y="-210" on="0"/>
- <pt x="563" y="-155" on="1"/>
- <pt x="583" y="-107" on="0"/>
- <pt x="589" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="466" y="790" on="1"/>
- <pt x="466" y="1086" on="1"/>
- <pt x="762" y="1086" on="1"/>
- <pt x="762" y="790" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 59 values pushed */
- 1 3 1 2 2 0 1 10 6 5 0 4 13 2 0 0 0 14 11 8 1 12 1 4 48
- 200 2 1 1 0 13 12 1 14 10 2 0 2 0 0 14 13 3 2 8 3 0 1 4 48
- 200 12 11 6 5 1 0 5 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="semicolon#1" xMin="466" yMin="-321" xMax="762" yMax="1086">
- <contour>
- <pt x="466" y="0" on="1"/>
- <pt x="466" y="296" on="1"/>
- <pt x="762" y="296" on="1"/>
- <pt x="762" y="116" on="1"/>
- <pt x="760" y="-302" on="0"/>
- <pt x="466" y="-321" on="1"/>
- <pt x="466" y="-222" on="1"/>
- <pt x="541" y="-210" on="0"/>
- <pt x="563" y="-155" on="1"/>
- <pt x="583" y="-107" on="0"/>
- <pt x="589" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="466" y="790" on="1"/>
- <pt x="466" y="1086" on="1"/>
- <pt x="762" y="1086" on="1"/>
- <pt x="762" y="790" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 59 values pushed */
- 1 3 1 2 2 0 1 10 6 5 0 4 13 2 0 0 0 14 11 8 1 12 1 4 48
- 200 2 1 1 0 13 12 1 14 10 2 0 2 0 0 14 13 3 2 8 3 0 1 4 48
- 200 12 11 6 5 1 0 5 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="seven" xMin="145" yMin="0" xMax="1058" yMax="1480">
- <contour>
- <pt x="264" y="0" on="1"/>
- <pt x="325" y="432" on="0"/>
- <pt x="671" y="949" on="1"/>
- <pt x="796" y="1133" on="1"/>
- <pt x="905" y="1295" on="1"/>
- <pt x="145" y="1295" on="1"/>
- <pt x="145" y="1480" on="1"/>
- <pt x="1058" y="1480" on="1"/>
- <pt x="1058" y="1295" on="1"/>
- <pt x="971" y="1176" on="1"/>
- <pt x="716" y="824" on="0"/>
- <pt x="595" y="465" on="1"/>
- <pt x="512" y="215" on="0"/>
- <pt x="511" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 35 values pushed */
- 0 0 8 5 4 27 2 6 1 4 48 200 13 0 1 0 7 6 0 14 13 4 0 3 7
- 5 3 8 7 1 6 5 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="sfthyphen" xMin="148" yMin="543" xMax="1081" yMax="691">
- <contour>
- <pt x="148" y="543" on="1"/>
- <pt x="148" y="691" on="1"/>
- <pt x="1081" y="691" on="1"/>
- <pt x="1081" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 200 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="six" xMin="122" yMin="-37" xMax="1132" yMax="1517">
- <contour>
- <pt x="335" y="773" on="1"/>
- <pt x="399" y="861" on="0"/>
- <pt x="469" y="905" on="1"/>
- <pt x="572" y="969" on="0"/>
- <pt x="706" y="969" on="1"/>
- <pt x="896" y="969" on="0"/>
- <pt x="1014" y="835" on="1"/>
- <pt x="1132" y="702" on="0"/>
- <pt x="1132" y="486" on="1"/>
- <pt x="1132" y="255" on="0"/>
- <pt x="995" y="109" on="1"/>
- <pt x="858" y="-37" on="0"/>
- <pt x="642" y="-37" on="1"/>
- <pt x="398" y="-37" on="0"/>
- <pt x="260" y="161" on="1"/>
- <pt x="122" y="360" on="0"/>
- <pt x="122" y="710" on="1"/>
- <pt x="122" y="1095" on="0"/>
- <pt x="285" y="1306" on="1"/>
- <pt x="448" y="1517" on="0"/>
- <pt x="738" y="1517" on="1"/>
- <pt x="866" y="1517" on="0"/>
- <pt x="1064" y="1446" on="1"/>
- <pt x="1064" y="1129" on="1"/>
- <pt x="940" y="1129" on="1"/>
- <pt x="917" y="1339" on="1"/>
- <pt x="830" y="1394" on="0"/>
- <pt x="739" y="1394" on="1"/>
- <pt x="524" y="1394" on="0"/>
- <pt x="415" y="1178" on="1"/>
- <pt x="338" y="1027" on="0"/>
- </contour>
- <contour>
- <pt x="669" y="839" on="1"/>
- <pt x="534" y="839" on="0"/>
- <pt x="442" y="736" on="1"/>
- <pt x="350" y="634" on="0"/>
- <pt x="350" y="480" on="1"/>
- <pt x="350" y="320" on="0"/>
- <pt x="443" y="203" on="1"/>
- <pt x="536" y="86" on="0"/>
- <pt x="667" y="86" on="1"/>
- <pt x="778" y="86" on="0"/>
- <pt x="846" y="165" on="1"/>
- <pt x="932" y="265" on="0"/>
- <pt x="932" y="463" on="1"/>
- <pt x="932" y="839" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 56 values pushed */
- 0 0 39 5 12 31 25 4 27 5 20 48 200 20 0 12 2 4 1 1 25 24 23 22 4
- 0 6 0 2 3 0 0 14 0 0 43 24 8 35 26 16 48 200 8 22 25 24 0 3 13
- 16 22 23 22 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="slash" xMin="99" yMin="-296" xMax="1131" yMax="1579">
- <contour>
- <pt x="99" y="-296" on="1"/>
- <pt x="967" y="1579" on="1"/>
- <pt x="1131" y="1579" on="1"/>
- <pt x="262" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 2 1 1 3 0 1 2 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="space"/><!-- contains no outline data -->
-
- <TTGlyph name="sterling" xMin="149" yMin="0" xMax="1043" yMax="1517">
- <contour>
- <pt x="149" y="0" on="1"/>
- <pt x="149" y="179" on="1"/>
- <pt x="351" y="249" on="0"/>
- <pt x="353" y="511" on="1"/>
- <pt x="353" y="728" on="1"/>
- <pt x="180" y="728" on="1"/>
- <pt x="180" y="851" on="1"/>
- <pt x="353" y="851" on="1"/>
- <pt x="353" y="1110" on="1"/>
- <pt x="353" y="1298" on="0"/>
- <pt x="458" y="1407" on="1"/>
- <pt x="563" y="1517" on="0"/>
- <pt x="746" y="1517" on="1"/>
- <pt x="874" y="1517" on="0"/>
- <pt x="1028" y="1468" on="1"/>
- <pt x="1028" y="1160" on="1"/>
- <pt x="905" y="1160" on="1"/>
- <pt x="880" y="1369" on="1"/>
- <pt x="800" y="1394" on="0"/>
- <pt x="740" y="1394" on="1"/>
- <pt x="550" y="1394" on="0"/>
- <pt x="550" y="1191" on="1"/>
- <pt x="550" y="851" on="1"/>
- <pt x="815" y="851" on="1"/>
- <pt x="815" y="728" on="1"/>
- <pt x="550" y="728" on="1"/>
- <pt x="550" y="559" on="1"/>
- <pt x="549" y="305" on="0"/>
- <pt x="368" y="173" on="1"/>
- <pt x="1043" y="173" on="1"/>
- <pt x="1043" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 104 values pushed */
- 0 0 19 5 12 48 200 12 0 1 21 17 16 15 14 8 6 0 6 3 0 26 3 1 3
- 4 28 3 0 0 25 24 5 4 6 3 6 29 28 22 1 0 2 4 48 200 23 22 7 6
- 3 30 0 1 2 0 14 24 23 17 16 4 14 21 3 28 21 3 2 6 5 2 3 0 3
- 0 0 26 25 22 21 10 3 3 1 4 48 200 30 29 1 15 14 1 8 7 4 3 3 1
- 0 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="t" xMin="119" yMin="-25" xMax="1032" yMax="1332">
- <contour>
- <pt x="1032" y="61" on="1"/>
- <pt x="867" y="-25" on="0"/>
- <pt x="696" y="-25" on="1"/>
- <pt x="535" y="-25" on="0"/>
- <pt x="466" y="50" on="1"/>
- <pt x="397" y="124" on="0"/>
- <pt x="397" y="299" on="1"/>
- <pt x="397" y="925" on="1"/>
- <pt x="119" y="925" on="1"/>
- <pt x="119" y="1061" on="1"/>
- <pt x="397" y="1061" on="1"/>
- <pt x="397" y="1332" on="1"/>
- <pt x="594" y="1332" on="1"/>
- <pt x="594" y="1061" on="1"/>
- <pt x="1020" y="1061" on="1"/>
- <pt x="1020" y="925" on="1"/>
- <pt x="594" y="925" on="1"/>
- <pt x="594" y="388" on="1"/>
- <pt x="594" y="228" on="0"/>
- <pt x="626" y="176" on="1"/>
- <pt x="658" y="123" on="0"/>
- <pt x="753" y="123" on="1"/>
- <pt x="859" y="123" on="0"/>
- <pt x="1032" y="200" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 75 values pushed */
- 0 0 21 14 2 48 200 2 2 1 23 17 6 0 4 7 2 3 0 0 0 16 15 8 7
- 20 3 9 1 4 48 200 12 11 1 14 13 10 9 3 2 0 14 15 14 2 0 12 3 9
- 8 6 0 0 17 16 13 12 10 3 6 1 4 48 200 23 0 1 11 10 7 6 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tbar" xMin="119" yMin="-25" xMax="1032" yMax="1332">
- <contour>
- <pt x="1032" y="200" on="1"/>
- <pt x="1032" y="61" on="1"/>
- <pt x="867" y="-25" on="0"/>
- <pt x="696" y="-25" on="1"/>
- <pt x="535" y="-25" on="0"/>
- <pt x="466" y="50" on="1"/>
- <pt x="397" y="124" on="0"/>
- <pt x="397" y="299" on="1"/>
- <pt x="397" y="605" on="1"/>
- <pt x="168" y="605" on="1"/>
- <pt x="168" y="703" on="1"/>
- <pt x="397" y="703" on="1"/>
- <pt x="397" y="925" on="1"/>
- <pt x="119" y="925" on="1"/>
- <pt x="119" y="1061" on="1"/>
- <pt x="397" y="1061" on="1"/>
- <pt x="397" y="1332" on="1"/>
- <pt x="594" y="1332" on="1"/>
- <pt x="594" y="1061" on="1"/>
- <pt x="1020" y="1061" on="1"/>
- <pt x="1020" y="925" on="1"/>
- <pt x="594" y="925" on="1"/>
- <pt x="594" y="703" on="1"/>
- <pt x="896" y="703" on="1"/>
- <pt x="896" y="605" on="1"/>
- <pt x="594" y="605" on="1"/>
- <pt x="594" y="388" on="1"/>
- <pt x="594" y="228" on="0"/>
- <pt x="626" y="176" on="1"/>
- <pt x="658" y="123" on="0"/>
- <pt x="753" y="123" on="1"/>
- <pt x="859" y="123" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 97 values pushed */
- 0 0 30 14 3 48 200 3 2 1 26 7 1 0 4 8 2 3 0 0 0 21 20 13 12
- 20 3 14 25 24 9 8 33 3 10 2 4 48 200 17 16 1 19 18 15 14 3 23 22 11
- 10 3 3 0 14 24 23 20 19 4 0 17 3 14 13 10 9 4 13 7 0 0 26 25 22
- 21 18 17 10 5 7 1 4 48 200 1 0 1 16 15 12 11 8 7 5 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tcaron" xMin="119" yMin="-25" xMax="1032" yMax="1688">
- <contour>
- <pt x="1032" y="61" on="1"/>
- <pt x="867" y="-25" on="0"/>
- <pt x="696" y="-25" on="1"/>
- <pt x="535" y="-25" on="0"/>
- <pt x="466" y="50" on="1"/>
- <pt x="397" y="124" on="0"/>
- <pt x="397" y="299" on="1"/>
- <pt x="397" y="925" on="1"/>
- <pt x="119" y="925" on="1"/>
- <pt x="119" y="1061" on="1"/>
- <pt x="397" y="1061" on="1"/>
- <pt x="397" y="1332" on="1"/>
- <pt x="594" y="1332" on="1"/>
- <pt x="594" y="1061" on="1"/>
- <pt x="1020" y="1061" on="1"/>
- <pt x="1020" y="925" on="1"/>
- <pt x="594" y="925" on="1"/>
- <pt x="594" y="388" on="1"/>
- <pt x="594" y="228" on="0"/>
- <pt x="626" y="176" on="1"/>
- <pt x="658" y="123" on="0"/>
- <pt x="753" y="123" on="1"/>
- <pt x="859" y="123" on="0"/>
- <pt x="1032" y="200" on="1"/>
- </contour>
- <contour>
- <pt x="767" y="1234" on="1"/>
- <pt x="767" y="1293" on="1"/>
- <pt x="843" y="1314" on="0"/>
- <pt x="843" y="1474" on="1"/>
- <pt x="843" y="1491" on="1"/>
- <pt x="767" y="1491" on="1"/>
- <pt x="767" y="1688" on="1"/>
- <pt x="964" y="1688" on="1"/>
- <pt x="964" y="1517" on="1"/>
- <pt x="963" y="1255" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 108 values pushed */
- 0 0 21 14 2 48 200 2 2 32 29 28 27 4 30 11 3 25 24 2 11 9 3 1 23
- 17 6 0 4 7 2 3 0 0 0 16 15 8 7 20 3 9 1 4 48 200 31 30 1 12
- 11 1 14 13 10 9 3 3 0 14 15 14 2 0 31 3 28 27 2 31 24 3 9 8 6
- 0 0 30 29 25 24 10 3 31 17 16 13 12 10 3 6 2 4 48 200 32 31 1 23 0
- 1 11 10 7 6 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tcommaaccent" xMin="119" yMin="-432" xMax="1032" yMax="1332">
- <contour>
- <pt x="1032" y="61" on="1"/>
- <pt x="867" y="-25" on="0"/>
- <pt x="696" y="-25" on="1"/>
- <pt x="535" y="-25" on="0"/>
- <pt x="466" y="50" on="1"/>
- <pt x="397" y="124" on="0"/>
- <pt x="397" y="299" on="1"/>
- <pt x="397" y="925" on="1"/>
- <pt x="119" y="925" on="1"/>
- <pt x="119" y="1061" on="1"/>
- <pt x="397" y="1061" on="1"/>
- <pt x="397" y="1332" on="1"/>
- <pt x="594" y="1332" on="1"/>
- <pt x="594" y="1061" on="1"/>
- <pt x="1020" y="1061" on="1"/>
- <pt x="1020" y="925" on="1"/>
- <pt x="594" y="925" on="1"/>
- <pt x="594" y="388" on="1"/>
- <pt x="594" y="228" on="0"/>
- <pt x="626" y="176" on="1"/>
- <pt x="658" y="123" on="0"/>
- <pt x="753" y="123" on="1"/>
- <pt x="860" y="123" on="0"/>
- <pt x="1032" y="200" on="1"/>
- </contour>
- <contour>
- <pt x="627" y="0" on="1"/>
- <pt x="724" y="0" on="1"/>
- <pt x="664" y="-109" on="1"/>
- <pt x="736" y="-111" on="0"/>
- <pt x="788" y="-148" on="1"/>
- <pt x="858" y="-197" on="0"/>
- <pt x="858" y="-269" on="1"/>
- <pt x="858" y="-337" on="0"/>
- <pt x="799" y="-384" on="1"/>
- <pt x="741" y="-432" on="0"/>
- <pt x="654" y="-432" on="1"/>
- <pt x="587" y="-432" on="0"/>
- <pt x="511" y="-411" on="1"/>
- <pt x="511" y="-330" on="1"/>
- <pt x="561" y="-345" on="0"/>
- <pt x="615" y="-345" on="1"/>
- <pt x="719" y="-345" on="0"/>
- <pt x="719" y="-271" on="1"/>
- <pt x="719" y="-178" on="0"/>
- <pt x="532" y="-175" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 109 values pushed */
- 0 0 39 32 34 21 14 2 48 200 2 2 1 23 17 6 0 4 7 2 3 0 1 43 37
- 36 26 25 24 6 13 34 2 0 0 0 16 15 8 7 20 3 9 1 4 48 200 12 11 1
- 14 13 10 9 3 2 0 14 0 0 41 20 30 48 200 30 30 26 25 24 15 14 6 0 12
- 3 43 37 36 3 12 6 3 9 8 6 0 0 17 16 13 12 10 3 6 1 4 48 200 23
- 0 1 11 10 7 6 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tcommabelow" xMin="119" yMin="-432" xMax="1032" yMax="1332">
- <component glyphName="t" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="62" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="thorn" xMin="62" yMin="-395" xMax="1118" yMax="1579">
- <contour>
- <pt x="185" y="-272" on="1"/>
- <pt x="185" y="1456" on="1"/>
- <pt x="62" y="1456" on="1"/>
- <pt x="62" y="1579" on="1"/>
- <pt x="383" y="1579" on="1"/>
- <pt x="383" y="864" on="1"/>
- <pt x="458" y="975" on="0"/>
- <pt x="529" y="1030" on="1"/>
- <pt x="631" y="1110" on="0"/>
- <pt x="749" y="1110" on="1"/>
- <pt x="914" y="1110" on="0"/>
- <pt x="1016" y="967" on="1"/>
- <pt x="1118" y="823" on="0"/>
- <pt x="1118" y="588" on="1"/>
- <pt x="1118" y="302" on="0"/>
- <pt x="983" y="139" on="1"/>
- <pt x="849" y="-25" on="0"/>
- <pt x="614" y="-25" on="1"/>
- <pt x="526" y="-25" on="0"/>
- <pt x="383" y="0" on="1"/>
- <pt x="383" y="-272" on="1"/>
- <pt x="630" y="-272" on="1"/>
- <pt x="630" y="-395" on="1"/>
- <pt x="62" y="-395" on="1"/>
- <pt x="62" y="-272" on="1"/>
- </contour>
- <contour>
- <pt x="383" y="146" on="1"/>
- <pt x="518" y="123" on="0"/>
- <pt x="591" y="123" on="1"/>
- <pt x="908" y="123" on="0"/>
- <pt x="908" y="591" on="1"/>
- <pt x="908" y="950" on="0"/>
- <pt x="694" y="950" on="1"/>
- <pt x="530" y="950" on="0"/>
- <pt x="383" y="716" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 100 values pushed */
- 0 0 31 30 9 27 14 17 48 200 17 2 9 1 1 2 1 2 3 1 3 0 1 1 33
- 25 5 3 1 2 3 0 0 1 19 2 0 2 0 0 0 24 21 20 0 6 3 22 1 4
- 48 200 4 3 1 23 22 1 2 0 14 0 0 29 39 13 48 200 22 21 2 13 13 4 24
- 23 3 2 4 13 0 0 0 33 25 20 19 5 4 10 5 0 1 4 48 200 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="three" xMin="185" yMin="-37" xMax="1081" yMax="1517">
- <contour>
- <pt x="185" y="10" on="1"/>
- <pt x="185" y="384" on="1"/>
- <pt x="308" y="384" on="1"/>
- <pt x="333" y="138" on="1"/>
- <pt x="419" y="86" on="0"/>
- <pt x="538" y="86" on="1"/>
- <pt x="691" y="86" on="0"/>
- <pt x="781" y="173" on="1"/>
- <pt x="871" y="260" on="0"/>
- <pt x="871" y="409" on="1"/>
- <pt x="871" y="728" on="0"/>
- <pt x="455" y="728" on="1"/>
- <pt x="320" y="728" on="1"/>
- <pt x="320" y="851" on="1"/>
- <pt x="434" y="851" on="1"/>
- <pt x="829" y="851" on="0"/>
- <pt x="829" y="1147" on="1"/>
- <pt x="829" y="1261" on="0"/>
- <pt x="756" y="1327" on="1"/>
- <pt x="684" y="1394" on="0"/>
- <pt x="557" y="1394" on="1"/>
- <pt x="439" y="1394" on="0"/>
- <pt x="355" y="1355" on="1"/>
- <pt x="343" y="1146" on="1"/>
- <pt x="219" y="1146" on="1"/>
- <pt x="219" y="1464" on="1"/>
- <pt x="412" y="1517" on="0"/>
- <pt x="577" y="1517" on="1"/>
- <pt x="1030" y="1517" on="0"/>
- <pt x="1030" y="1164" on="1"/>
- <pt x="1030" y="1001" on="0"/>
- <pt x="925" y="901" on="1"/>
- <pt x="861" y="842" on="0"/>
- <pt x="742" y="798" on="1"/>
- <pt x="847" y="767" on="0"/>
- <pt x="902" y="733" on="1"/>
- <pt x="1081" y="622" on="0"/>
- <pt x="1081" y="399" on="1"/>
- <pt x="1081" y="205" on="0"/>
- <pt x="943" y="84" on="1"/>
- <pt x="805" y="-37" on="0"/>
- <pt x="576" y="-37" on="1"/>
- <pt x="421" y="-37" on="0"/>
- <pt x="270" y="-7" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 75 values pushed */
- 0 0 20 5 27 5 5 41 48 200 41 2 27 0 1 1 33 25 24 23 22 14 13 12 11
- 3 2 1 0 13 0 2 3 0 0 14 0 0 16 24 29 9 39 37 48 200 33 23 22 14
- 13 12 11 3 2 9 13 37 29 24 0 0 25 24 23 1 0 1 5 48 200 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="threequarters" xMin="37" yMin="-37" xMax="1205" yMax="1518">
- <contour>
- <pt x="173" y="-37" on="1"/>
- <pt x="950" y="1517" on="1"/>
- <pt x="1091" y="1517" on="1"/>
- <pt x="311" y="-37" on="1"/>
- </contour>
- <contour>
- <pt x="37" y="752" on="1"/>
- <pt x="37" y="916" on="1"/>
- <pt x="148" y="916" on="1"/>
- <pt x="148" y="854" on="1"/>
- <pt x="195" y="827" on="0"/>
- <pt x="256" y="827" on="1"/>
- <pt x="380" y="827" on="0"/>
- <pt x="380" y="946" on="1"/>
- <pt x="380" y="1076" on="0"/>
- <pt x="197" y="1076" on="1"/>
- <pt x="161" y="1076" on="1"/>
- <pt x="161" y="1187" on="1"/>
- <pt x="200" y="1187" on="1"/>
- <pt x="380" y="1187" on="0"/>
- <pt x="380" y="1304" on="1"/>
- <pt x="380" y="1406" on="0"/>
- <pt x="260" y="1406" on="1"/>
- <pt x="198" y="1406" on="0"/>
- <pt x="148" y="1375" on="1"/>
- <pt x="148" y="1313" on="1"/>
- <pt x="37" y="1313" on="1"/>
- <pt x="37" y="1469" on="1"/>
- <pt x="177" y="1518" on="0"/>
- <pt x="283" y="1518" on="1"/>
- <pt x="531" y="1518" on="0"/>
- <pt x="531" y="1334" on="1"/>
- <pt x="531" y="1204" on="0"/>
- <pt x="355" y="1129" on="1"/>
- <pt x="529" y="1084" on="0"/>
- <pt x="529" y="941" on="1"/>
- <pt x="529" y="836" on="0"/>
- <pt x="452" y="776" on="1"/>
- <pt x="375" y="715" on="0"/>
- <pt x="244" y="715" on="1"/>
- <pt x="165" y="715" on="0"/>
- <pt x="61" y="745" on="1"/>
- </contour>
- <contour>
- <pt x="1094" y="0" on="1"/>
- <pt x="945" y="0" on="1"/>
- <pt x="945" y="179" on="1"/>
- <pt x="571" y="179" on="1"/>
- <pt x="571" y="302" on="1"/>
- <pt x="941" y="790" on="1"/>
- <pt x="1094" y="790" on="1"/>
- <pt x="1094" y="302" on="1"/>
- <pt x="1205" y="302" on="1"/>
- <pt x="1205" y="179" on="1"/>
- <pt x="1094" y="179" on="1"/>
- </contour>
- <contour>
- <pt x="709" y="302" on="1"/>
- <pt x="945" y="302" on="1"/>
- <pt x="945" y="611" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 139 values pushed */
- 0 0 20 31 27 9 31 37 48 200 31 25 24 23 22 16 15 14 13 7 6 5 12 1 45
- 3 37 53 37 4 3 45 44 3 27 1 0 0 52 51 48 47 44 6 4 42 1 4 48 200
- 46 45 1 50 49 43 42 3 41 40 1 2 1 1 3 0 1 5 0 14 0 0 18 38 29
- 11 38 33 48 200 2 1 2 40 41 3 33 29 51 45 44 43 33 31 29 23 22 16 15 14
- 13 7 6 3 0 17 41 4 3 49 48 2 13 40 0 0 53 52 42 41 16 3 40 1 4
- 48 200 50 47 46 40 3 25 24 5 4 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="threesuperior" xMin="263" yMin="715" xMax="966" yMax="1518">
- <contour>
- <pt x="263" y="752" on="1"/>
- <pt x="263" y="925" on="1"/>
- <pt x="386" y="925" on="1"/>
- <pt x="398" y="857" on="1"/>
- <pt x="468" y="839" on="0"/>
- <pt x="561" y="839" on="1"/>
- <pt x="787" y="839" on="0"/>
- <pt x="787" y="943" on="1"/>
- <pt x="787" y="1027" on="0"/>
- <pt x="691" y="1050" on="1"/>
- <pt x="618" y="1067" on="0"/>
- <pt x="465" y="1067" on="1"/>
- <pt x="374" y="1067" on="1"/>
- <pt x="374" y="1191" on="1"/>
- <pt x="469" y="1191" on="1"/>
- <pt x="659" y="1191" on="0"/>
- <pt x="723" y="1213" on="1"/>
- <pt x="787" y="1234" on="0"/>
- <pt x="787" y="1296" on="1"/>
- <pt x="787" y="1394" on="0"/>
- <pt x="595" y="1394" on="1"/>
- <pt x="477" y="1394" on="0"/>
- <pt x="398" y="1364" on="1"/>
- <pt x="386" y="1283" on="1"/>
- <pt x="263" y="1283" on="1"/>
- <pt x="263" y="1468" on="1"/>
- <pt x="433" y="1518" on="0"/>
- <pt x="606" y="1518" on="1"/>
- <pt x="966" y="1518" on="0"/>
- <pt x="966" y="1326" on="1"/>
- <pt x="966" y="1196" on="0"/>
- <pt x="754" y="1126" on="1"/>
- <pt x="966" y="1080" on="0"/>
- <pt x="966" y="933" on="1"/>
- <pt x="966" y="715" on="0"/>
- <pt x="577" y="715" on="1"/>
- <pt x="431" y="715" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 56 values pushed */
- 0 0 20 6 27 5 6 35 48 200 35 31 27 25 24 23 22 14 13 12 11 3 2 1 0
- 14 0 0 18 13 29 7 13 33 48 200 31 23 22 14 13 12 11 3 2 9 13 33 29 0
- 25 24 1 0 3 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="threesuperiour" xMin="365" yMin="715" xMax="858" yMax="1518">
- <contour>
- <pt x="365" y="752" on="1"/>
- <pt x="365" y="916" on="1"/>
- <pt x="476" y="916" on="1"/>
- <pt x="476" y="854" on="1"/>
- <pt x="524" y="827" on="0"/>
- <pt x="583" y="827" on="1"/>
- <pt x="707" y="827" on="0"/>
- <pt x="707" y="946" on="1"/>
- <pt x="707" y="1076" on="0"/>
- <pt x="525" y="1076" on="1"/>
- <pt x="488" y="1076" on="1"/>
- <pt x="488" y="1187" on="1"/>
- <pt x="528" y="1187" on="1"/>
- <pt x="707" y="1187" on="0"/>
- <pt x="707" y="1303" on="1"/>
- <pt x="707" y="1406" on="0"/>
- <pt x="588" y="1406" on="1"/>
- <pt x="527" y="1406" on="0"/>
- <pt x="476" y="1375" on="1"/>
- <pt x="476" y="1313" on="1"/>
- <pt x="365" y="1313" on="1"/>
- <pt x="365" y="1469" on="1"/>
- <pt x="505" y="1518" on="0"/>
- <pt x="611" y="1518" on="1"/>
- <pt x="858" y="1518" on="0"/>
- <pt x="858" y="1334" on="1"/>
- <pt x="858" y="1204" on="0"/>
- <pt x="682" y="1129" on="1"/>
- <pt x="785" y="1102" on="0"/>
- <pt x="825" y="1048" on="1"/>
- <pt x="857" y="1004" on="0"/>
- <pt x="857" y="941" on="1"/>
- <pt x="857" y="836" on="0"/>
- <pt x="780" y="776" on="1"/>
- <pt x="704" y="715" on="0"/>
- <pt x="572" y="715" on="1"/>
- <pt x="487" y="715" on="0"/>
- <pt x="388" y="745" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 56 values pushed */
- 0 0 16 31 23 5 31 35 48 200 35 27 23 21 20 19 18 12 11 10 9 3 2 1 0
- 14 0 0 14 38 25 7 38 31 48 200 27 19 18 12 11 10 9 3 2 9 13 31 25 0
- 21 20 1 0 3 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tilde" xMin="281" yMin="1283" xMax="947" yMax="1518">
- <contour>
- <pt x="281" y="1283" on="1"/>
- <pt x="287" y="1377" on="0"/>
- <pt x="312" y="1428" on="1"/>
- <pt x="357" y="1518" on="0"/>
- <pt x="466" y="1518" on="1"/>
- <pt x="538" y="1518" on="0"/>
- <pt x="601" y="1479" on="1"/>
- <pt x="661" y="1442" on="1"/>
- <pt x="723" y="1404" on="0"/>
- <pt x="757" y="1404" on="1"/>
- <pt x="825" y="1404" on="0"/>
- <pt x="836" y="1518" on="1"/>
- <pt x="947" y="1518" on="1"/>
- <pt x="940" y="1424" on="0"/>
- <pt x="915" y="1374" on="1"/>
- <pt x="869" y="1283" on="0"/>
- <pt x="762" y="1283" on="1"/>
- <pt x="689" y="1283" on="0"/>
- <pt x="626" y="1322" on="1"/>
- <pt x="566" y="1359" on="1"/>
- <pt x="506" y="1396" on="0"/>
- <pt x="470" y="1396" on="1"/>
- <pt x="402" y="1396" on="0"/>
- <pt x="391" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 30 values pushed */
- 0 0 21 5 4 9 5 16 48 200 4 0 1 12 11 2 13 0 0 1 23 0 16 0 0
- 14 23 12 11 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="trademark" xMin="43" yMin="740" xMax="1196" yMax="1480">
- <contour>
- <pt x="142" y="740" on="1"/>
- <pt x="142" y="833" on="1"/>
- <pt x="219" y="833" on="1"/>
- <pt x="219" y="1388" on="1"/>
- <pt x="132" y="1388" on="1"/>
- <pt x="132" y="1289" on="1"/>
- <pt x="43" y="1289" on="1"/>
- <pt x="43" y="1480" on="1"/>
- <pt x="506" y="1480" on="1"/>
- <pt x="506" y="1289" on="1"/>
- <pt x="417" y="1289" on="1"/>
- <pt x="417" y="1388" on="1"/>
- <pt x="330" y="1388" on="1"/>
- <pt x="330" y="833" on="1"/>
- <pt x="407" y="833" on="1"/>
- <pt x="407" y="740" on="1"/>
- </contour>
- <contour>
- <pt x="555" y="740" on="1"/>
- <pt x="555" y="833" on="1"/>
- <pt x="613" y="833" on="1"/>
- <pt x="613" y="1388" on="1"/>
- <pt x="555" y="1388" on="1"/>
- <pt x="555" y="1480" on="1"/>
- <pt x="767" y="1480" on="1"/>
- <pt x="889" y="1037" on="1"/>
- <pt x="995" y="1480" on="1"/>
- <pt x="1196" y="1480" on="1"/>
- <pt x="1196" y="1388" on="1"/>
- <pt x="1138" y="1388" on="1"/>
- <pt x="1138" y="833" on="1"/>
- <pt x="1196" y="833" on="1"/>
- <pt x="1196" y="740" on="1"/>
- <pt x="1033" y="740" on="1"/>
- <pt x="1033" y="1319" on="1"/>
- <pt x="1032" y="1319" on="1"/>
- <pt x="916" y="876" on="1"/>
- <pt x="829" y="876" on="1"/>
- <pt x="714" y="1289" on="1"/>
- <pt x="712" y="1289" on="1"/>
- <pt x="712" y="740" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 129 values pushed */
- 37 36 35 34 33 32 29 28 27 26 23 20 19 18 17 14 13 12 11 10 9 6 5 4 3
- 2 1 27 7 0 3 38 31 30 16 15 0 5 0 25 24 22 21 8 7 0 5 14 36 35
- 34 33 24 23 22 7 31 37 3 21 20 17 16 4 18 8 3 15 14 11 10 4 8 12 3
- 5 4 1 0 4 2 6 3 30 29 26 25 4 13 27 0 0 32 31 18 1 27 38 37 18
- 1 18 2 4 13 12 1 2 1 6 48 200 28 27 1 19 18 1 9 8 1 3 2 1 7
- 6 1 5 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="two" xMin="133" yMin="0" xMax="1108" yMax="1517">
- <contour>
- <pt x="133" y="0" on="1"/>
- <pt x="133" y="173" on="1"/>
- <pt x="243" y="359" on="0"/>
- <pt x="391" y="493" on="1"/>
- <pt x="494" y="586" on="1"/>
- <pt x="616" y="698" on="1"/>
- <pt x="854" y="916" on="0"/>
- <pt x="854" y="1119" on="1"/>
- <pt x="854" y="1244" on="0"/>
- <pt x="778" y="1319" on="1"/>
- <pt x="703" y="1394" on="0"/>
- <pt x="577" y="1394" on="1"/>
- <pt x="459" y="1394" on="0"/>
- <pt x="318" y="1308" on="1"/>
- <pt x="294" y="1073" on="1"/>
- <pt x="170" y="1073" on="1"/>
- <pt x="170" y="1423" on="1"/>
- <pt x="416" y="1517" on="0"/>
- <pt x="616" y="1517" on="1"/>
- <pt x="823" y="1517" on="0"/>
- <pt x="944" y="1409" on="1"/>
- <pt x="1064" y="1302" on="0"/>
- <pt x="1064" y="1118" on="1"/>
- <pt x="1064" y="986" on="0"/>
- <pt x="1009" y="889" on="1"/>
- <pt x="952" y="788" on="0"/>
- <pt x="808" y="668" on="1"/>
- <pt x="723" y="597" on="1"/>
- <pt x="503" y="411" on="0"/>
- <pt x="441" y="329" on="1"/>
- <pt x="385" y="257" on="0"/>
- <pt x="356" y="173" on="1"/>
- <pt x="1108" y="173" on="1"/>
- <pt x="1108" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 63 values pushed */
- 0 0 11 5 18 48 200 18 0 1 16 15 14 13 4 0 1 3 0 0 0 32 31 1 22
- 2 0 1 4 48 200 33 0 1 0 14 0 0 7 39 22 48 200 22 31 22 14 13 4 32
- 15 3 33 32 1 16 15 1 1 0 1 3 0
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="twosuperior" xMin="257" yMin="728" xMax="972" yMax="1518">
- <contour>
- <pt x="257" y="728" on="1"/>
- <pt x="257" y="876" on="1"/>
- <pt x="298" y="971" on="0"/>
- <pt x="364" y="1015" on="1"/>
- <pt x="424" y="1055" on="0"/>
- <pt x="551" y="1105" on="1"/>
- <pt x="647" y="1143" on="1"/>
- <pt x="781" y="1196" on="0"/>
- <pt x="781" y="1278" on="1"/>
- <pt x="781" y="1394" on="0"/>
- <pt x="589" y="1394" on="1"/>
- <pt x="475" y="1394" on="0"/>
- <pt x="392" y="1357" on="1"/>
- <pt x="380" y="1265" on="1"/>
- <pt x="257" y="1265" on="1"/>
- <pt x="257" y="1468" on="1"/>
- <pt x="294" y="1477" on="1"/>
- <pt x="462" y="1518" on="0"/>
- <pt x="592" y="1518" on="1"/>
- <pt x="960" y="1518" on="0"/>
- <pt x="960" y="1295" on="1"/>
- <pt x="960" y="1138" on="0"/>
- <pt x="752" y="1062" on="1"/>
- <pt x="670" y="1032" on="1"/>
- <pt x="490" y="966" on="0"/>
- <pt x="460" y="876" on="1"/>
- <pt x="972" y="876" on="1"/>
- <pt x="972" y="728" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 58 values pushed */
- 0 0 10 6 18 48 200 15 14 13 12 4 13 18 1 0 0 27 0 16 1 1 1 4 48
- 200 26 25 1 2 0 14 0 0 8 13 20 48 200 20 25 20 13 12 4 26 0 3 27 26
- 1 15 14 1 0 3 2 0
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="twosuperiour" xMin="361" yMin="728" xMax="867" yMax="1517">
- <contour>
- <pt x="361" y="728" on="1"/>
- <pt x="361" y="882" on="1"/>
- <pt x="405" y="970" on="0"/>
- <pt x="523" y="1056" on="1"/>
- <pt x="553" y="1078" on="0"/>
- <pt x="568" y="1090" on="1"/>
- <pt x="601" y="1120" on="1"/>
- <pt x="657" y="1167" on="1"/>
- <pt x="706" y="1208" on="0"/>
- <pt x="706" y="1283" on="1"/>
- <pt x="706" y="1406" on="0"/>
- <pt x="578" y="1406" on="1"/>
- <pt x="534" y="1406" on="0"/>
- <pt x="472" y="1377" on="1"/>
- <pt x="472" y="1310" on="1"/>
- <pt x="361" y="1310" on="1"/>
- <pt x="361" y="1468" on="1"/>
- <pt x="471" y="1517" on="0"/>
- <pt x="590" y="1517" on="1"/>
- <pt x="867" y="1517" on="0"/>
- <pt x="867" y="1302" on="1"/>
- <pt x="867" y="1173" on="0"/>
- <pt x="730" y="1072" on="1"/>
- <pt x="696" y="1047" on="1"/>
- <pt x="696" y="1047" on="1"/>
- <pt x="695" y="1046" on="1"/>
- <pt x="693" y="1045" on="1"/>
- <pt x="691" y="1044" on="0"/>
- <pt x="679" y="1035" on="1"/>
- <pt x="660" y="1022" on="1"/>
- <pt x="550" y="948" on="0"/>
- <pt x="524" y="876" on="1"/>
- <pt x="867" y="876" on="1"/>
- <pt x="867" y="728" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 60 values pushed */
- 0 0 11 18 48 200 24 23 16 15 14 13 1 7 13 18 31 0 0 33 0 16 1 31 1
- 4 48 200 32 31 1 0 14 0 0 9 34 20 48 200 31 24 23 14 13 5 20 0 3 33
- 32 20 2 16 15 1 0 3 2 0
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="u" xMin="68" yMin="-25" xMax="1166" yMax="1086">
- <contour>
- <pt x="734" y="1086" on="1"/>
- <pt x="1043" y="1086" on="1"/>
- <pt x="1043" y="123" on="1"/>
- <pt x="1166" y="123" on="1"/>
- <pt x="1166" y="0" on="1"/>
- <pt x="845" y="0" on="1"/>
- <pt x="845" y="209" on="1"/>
- <pt x="776" y="104" on="0"/>
- <pt x="708" y="51" on="1"/>
- <pt x="612" y="-25" on="0"/>
- <pt x="493" y="-25" on="1"/>
- <pt x="191" y="-25" on="0"/>
- <pt x="191" y="363" on="1"/>
- <pt x="191" y="962" on="1"/>
- <pt x="68" y="962" on="1"/>
- <pt x="68" y="1086" on="1"/>
- <pt x="389" y="1086" on="1"/>
- <pt x="389" y="385" on="1"/>
- <pt x="389" y="130" on="0"/>
- <pt x="552" y="130" on="1"/>
- <pt x="701" y="130" on="0"/>
- <pt x="845" y="382" on="1"/>
- <pt x="845" y="962" on="1"/>
- <pt x="734" y="962" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 0 0 19 30 10 48 200 10 2 23 22 21 17 14 13 12 6 3 2 10 0 4 3 5 4
- 1 0 16 15 1 0 1 3 14 23 0 2 5 16 3 4 3 2 13 1 15 14 12 0 0
- 22 21 6 5 10 3 1 17 16 10 1 12 2 4 48 200 2 1 1 13 12 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="uacute" xMin="68" yMin="-25" xMax="1166" yMax="1604">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="101" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ubreve" xMin="68" yMin="-25" xMax="1166" yMax="1579">
- <contour>
- <pt x="734" y="1086" on="1"/>
- <pt x="1043" y="1086" on="1"/>
- <pt x="1043" y="123" on="1"/>
- <pt x="1166" y="123" on="1"/>
- <pt x="1166" y="0" on="1"/>
- <pt x="845" y="0" on="1"/>
- <pt x="845" y="209" on="1"/>
- <pt x="776" y="104" on="0"/>
- <pt x="708" y="51" on="1"/>
- <pt x="612" y="-25" on="0"/>
- <pt x="493" y="-25" on="1"/>
- <pt x="191" y="-25" on="0"/>
- <pt x="191" y="363" on="1"/>
- <pt x="191" y="962" on="1"/>
- <pt x="68" y="962" on="1"/>
- <pt x="68" y="1086" on="1"/>
- <pt x="389" y="1086" on="1"/>
- <pt x="389" y="385" on="1"/>
- <pt x="389" y="130" on="0"/>
- <pt x="552" y="130" on="1"/>
- <pt x="701" y="130" on="0"/>
- <pt x="845" y="382" on="1"/>
- <pt x="845" y="962" on="1"/>
- <pt x="734" y="962" on="1"/>
- </contour>
- <contour>
- <pt x="265" y="1579" on="1"/>
- <pt x="388" y="1579" on="1"/>
- <pt x="436" y="1431" on="0"/>
- <pt x="610" y="1431" on="1"/>
- <pt x="785" y="1431" on="0"/>
- <pt x="833" y="1579" on="1"/>
- <pt x="956" y="1579" on="1"/>
- <pt x="933" y="1490" on="0"/>
- <pt x="907" y="1444" on="1"/>
- <pt x="816" y="1289" on="0"/>
- <pt x="615" y="1289" on="1"/>
- <pt x="462" y="1289" on="0"/>
- <pt x="373" y="1370" on="1"/>
- <pt x="318" y="1419" on="0"/>
- <pt x="290" y="1491" on="1"/>
- <pt x="279" y="1520" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 96 values pushed */
- 0 0 27 14 34 19 30 10 48 200 10 2 23 22 21 17 14 13 12 6 3 2 10 0 4
- 3 30 29 25 24 4 13 34 0 5 4 1 0 16 15 1 0 1 3 14 30 1 5 2 29
- 23 0 3 5 16 3 25 24 2 16 12 3 4 3 2 13 1 15 14 12 0 0 22 21 6
- 5 10 3 1 17 16 10 1 12 2 4 48 200 2 1 1 13 12 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ucircumflex" xMin="68" yMin="-25" xMax="1166" yMax="1604">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="3" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="udieresis" xMin="68" yMin="-25" xMax="1166" yMax="1480">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="3" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ugrave" xMin="68" yMin="-25" xMax="1166" yMax="1604">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="-96" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="uhungarumlaut" xMin="68" yMin="-25" xMax="1166" yMax="1604">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="hungarumlaut" x="92" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="umacron" xMin="68" yMin="-25" xMax="1166" yMax="1407">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="macron" x="-4" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="underscore" xMin="0" yMin="-148" xMax="1229" yMax="0">
- <contour>
- <pt x="0" y="0" on="1"/>
- <pt x="1229" y="0" on="1"/>
- <pt x="1229" y="-148" on="1"/>
- <pt x="0" y="-148" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 2 16 1 0 1 4 48 200 1 0 1 0 14 2 1 1 3 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="uogonek" xMin="68" yMin="-370" xMax="1166" yMax="1086">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="ogonek" x="331" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="uring" xMin="68" yMin="-25" xMax="1166" yMax="1737">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="ring" x="-4" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="utilde" xMin="68" yMin="-25" xMax="1166" yMax="1518">
- <contour>
- <pt x="734" y="1086" on="1"/>
- <pt x="1043" y="1086" on="1"/>
- <pt x="1043" y="123" on="1"/>
- <pt x="1166" y="123" on="1"/>
- <pt x="1166" y="0" on="1"/>
- <pt x="845" y="0" on="1"/>
- <pt x="845" y="209" on="1"/>
- <pt x="776" y="104" on="0"/>
- <pt x="708" y="51" on="1"/>
- <pt x="612" y="-25" on="0"/>
- <pt x="493" y="-25" on="1"/>
- <pt x="191" y="-25" on="0"/>
- <pt x="191" y="363" on="1"/>
- <pt x="191" y="962" on="1"/>
- <pt x="68" y="962" on="1"/>
- <pt x="68" y="1086" on="1"/>
- <pt x="389" y="1086" on="1"/>
- <pt x="389" y="385" on="1"/>
- <pt x="389" y="130" on="0"/>
- <pt x="552" y="130" on="1"/>
- <pt x="701" y="130" on="0"/>
- <pt x="845" y="382" on="1"/>
- <pt x="845" y="962" on="1"/>
- <pt x="734" y="962" on="1"/>
- </contour>
- <contour>
- <pt x="278" y="1283" on="1"/>
- <pt x="284" y="1378" on="0"/>
- <pt x="309" y="1428" on="1"/>
- <pt x="354" y="1518" on="0"/>
- <pt x="463" y="1518" on="1"/>
- <pt x="535" y="1518" on="0"/>
- <pt x="598" y="1479" on="1"/>
- <pt x="658" y="1442" on="1"/>
- <pt x="720" y="1404" on="0"/>
- <pt x="754" y="1404" on="1"/>
- <pt x="822" y="1404" on="0"/>
- <pt x="833" y="1518" on="1"/>
- <pt x="944" y="1518" on="1"/>
- <pt x="937" y="1424" on="0"/>
- <pt x="912" y="1374" on="1"/>
- <pt x="866" y="1283" on="0"/>
- <pt x="759" y="1283" on="1"/>
- <pt x="686" y="1283" on="0"/>
- <pt x="623" y="1322" on="1"/>
- <pt x="563" y="1359" on="1"/>
- <pt x="503" y="1396" on="0"/>
- <pt x="467" y="1396" on="1"/>
- <pt x="399" y="1396" on="0"/>
- <pt x="388" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 110 values pushed */
- 0 0 45 5 28 33 5 40 19 30 10 48 200 28 0 10 2 40 1 47 40 24 3 0 0
- 3 0 23 22 21 17 14 13 12 6 3 2 10 0 4 3 1 36 35 2 13 0 0 5 4
- 1 0 16 15 1 0 1 3 14 36 1 5 2 35 23 0 3 5 16 3 47 24 2 16 12
- 3 4 3 2 13 1 15 14 12 0 0 22 21 6 5 10 3 1 17 16 10 1 12 2 4
- 48 200 2 1 1 13 12 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="v" xMin="55" yMin="0" xMax="1173" yMax="1086">
- <contour>
- <pt x="514" y="0" on="1"/>
- <pt x="129" y="962" on="1"/>
- <pt x="55" y="962" on="1"/>
- <pt x="55" y="1086" on="1"/>
- <pt x="502" y="1086" on="1"/>
- <pt x="502" y="962" on="1"/>
- <pt x="342" y="962" on="1"/>
- <pt x="653" y="184" on="1"/>
- <pt x="655" y="184" on="1"/>
- <pt x="966" y="962" on="1"/>
- <pt x="806" y="962" on="1"/>
- <pt x="806" y="1086" on="1"/>
- <pt x="1173" y="1086" on="1"/>
- <pt x="1173" y="962" on="1"/>
- <pt x="1099" y="962" on="1"/>
- <pt x="714" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 50 values pushed */
- 8 7 2 1 0 3 0 0 14 13 10 9 6 5 2 1 6 7 3 1 4 48 200 15 0
- 1 0 12 11 4 3 1 3 14 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="w" xMin="23" yMin="0" xMax="1207" yMax="1086">
- <contour>
- <pt x="242" y="0" on="1"/>
- <pt x="72" y="962" on="1"/>
- <pt x="23" y="962" on="1"/>
- <pt x="23" y="1086" on="1"/>
- <pt x="334" y="1086" on="1"/>
- <pt x="334" y="962" on="1"/>
- <pt x="248" y="962" on="1"/>
- <pt x="377" y="238" on="1"/>
- <pt x="379" y="238" on="1"/>
- <pt x="556" y="923" on="1"/>
- <pt x="723" y="923" on="1"/>
- <pt x="901" y="235" on="1"/>
- <pt x="903" y="235" on="1"/>
- <pt x="1033" y="962" on="1"/>
- <pt x="935" y="962" on="1"/>
- <pt x="935" y="1086" on="1"/>
- <pt x="1207" y="1086" on="1"/>
- <pt x="1207" y="962" on="1"/>
- <pt x="1158" y="962" on="1"/>
- <pt x="988" y="0" on="1"/>
- <pt x="795" y="0" on="1"/>
- <pt x="616" y="703" on="1"/>
- <pt x="614" y="703" on="1"/>
- <pt x="432" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 63 values pushed */
- 18 17 14 13 6 5 2 1 8 3 9 3 22 21 12 11 8 7 6 9 0 3 10 9 1
- 23 20 19 0 3 2 0 16 15 4 3 1 3 14 23 22 21 20 19 18 17 16 15 14 13
- 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="wcircumflex" xMin="23" yMin="0" xMax="1207" yMax="1604">
- <contour>
- <pt x="242" y="0" on="1"/>
- <pt x="72" y="962" on="1"/>
- <pt x="23" y="962" on="1"/>
- <pt x="23" y="1086" on="1"/>
- <pt x="334" y="1086" on="1"/>
- <pt x="334" y="962" on="1"/>
- <pt x="248" y="962" on="1"/>
- <pt x="377" y="238" on="1"/>
- <pt x="379" y="238" on="1"/>
- <pt x="556" y="923" on="1"/>
- <pt x="723" y="923" on="1"/>
- <pt x="901" y="235" on="1"/>
- <pt x="903" y="235" on="1"/>
- <pt x="1033" y="962" on="1"/>
- <pt x="935" y="962" on="1"/>
- <pt x="935" y="1086" on="1"/>
- <pt x="1207" y="1086" on="1"/>
- <pt x="1207" y="962" on="1"/>
- <pt x="1158" y="962" on="1"/>
- <pt x="988" y="0" on="1"/>
- <pt x="795" y="0" on="1"/>
- <pt x="616" y="703" on="1"/>
- <pt x="614" y="703" on="1"/>
- <pt x="432" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="268" y="1283" on="1"/>
- <pt x="524" y="1604" on="1"/>
- <pt x="743" y="1604" on="1"/>
- <pt x="999" y="1283" on="1"/>
- <pt x="876" y="1283" on="1"/>
- <pt x="635" y="1485" on="1"/>
- <pt x="632" y="1485" on="1"/>
- <pt x="391" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 84 values pushed */
- 31 30 29 28 27 24 6 25 3 3 18 17 14 13 6 5 2 1 8 3 9 3 22 21 12
- 11 8 7 6 9 0 3 26 25 1 10 9 1 23 20 19 0 3 3 0 16 15 4 3 1
- 3 14 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
- 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="x" xMin="59" yMin="0" xMax="1189" yMax="1086">
- <contour>
- <pt x="59" y="0" on="1"/>
- <pt x="59" y="123" on="1"/>
- <pt x="182" y="123" on="1"/>
- <pt x="513" y="543" on="1"/>
- <pt x="182" y="962" on="1"/>
- <pt x="59" y="962" on="1"/>
- <pt x="59" y="1086" on="1"/>
- <pt x="497" y="1086" on="1"/>
- <pt x="497" y="962" on="1"/>
- <pt x="410" y="962" on="1"/>
- <pt x="671" y="631" on="1"/>
- <pt x="931" y="962" on="1"/>
- <pt x="828" y="962" on="1"/>
- <pt x="828" y="1086" on="1"/>
- <pt x="1189" y="1086" on="1"/>
- <pt x="1189" y="962" on="1"/>
- <pt x="1072" y="962" on="1"/>
- <pt x="741" y="542" on="1"/>
- <pt x="1071" y="123" on="1"/>
- <pt x="1189" y="123" on="1"/>
- <pt x="1189" y="0" on="1"/>
- <pt x="744" y="0" on="1"/>
- <pt x="744" y="123" on="1"/>
- <pt x="843" y="123" on="1"/>
- <pt x="590" y="444" on="1"/>
- <pt x="338" y="123" on="1"/>
- <pt x="438" y="123" on="1"/>
- <pt x="438" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 26 25 24 23 22 19 18 17 16 15 12 11 10 9 8 5 4 3 2 1 20 6 0 3 27
- 21 20 0 3 0 14 13 7 6 1 3 14 27 26 25 24 23 22 21 20 19 18 17 16 15
- 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="y" xMin="55" yMin="-395" xMax="1173" yMax="1086">
- <contour>
- <pt x="514" y="0" on="1"/>
- <pt x="129" y="962" on="1"/>
- <pt x="55" y="962" on="1"/>
- <pt x="55" y="1086" on="1"/>
- <pt x="502" y="1086" on="1"/>
- <pt x="502" y="962" on="1"/>
- <pt x="342" y="962" on="1"/>
- <pt x="653" y="184" on="1"/>
- <pt x="655" y="184" on="1"/>
- <pt x="966" y="962" on="1"/>
- <pt x="806" y="962" on="1"/>
- <pt x="806" y="1086" on="1"/>
- <pt x="1173" y="1086" on="1"/>
- <pt x="1173" y="962" on="1"/>
- <pt x="1099" y="962" on="1"/>
- <pt x="714" y="0" on="1"/>
- <pt x="606" y="-271" on="1"/>
- <pt x="754" y="-271" on="1"/>
- <pt x="754" y="-395" on="1"/>
- <pt x="275" y="-395" on="1"/>
- <pt x="275" y="-271" on="1"/>
- <pt x="473" y="-271" on="1"/>
- <pt x="581" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 73 values pushed */
- 1 8 7 2 1 2 3 0 1 22 0 2 2 16 3 0 0 0 14 13 10 9 6 5 2
- 1 6 7 3 21 20 17 16 6 3 18 2 4 48 200 19 18 1 0 12 11 4 3 1 3
- 14 22 21 20 19 18 17 16 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="yacute" xMin="55" yMin="-395" xMax="1173" yMax="1604">
- <component glyphName="y" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="139" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ycircumflex" xMin="55" yMin="-395" xMax="1173" yMax="1604">
- <contour>
- <pt x="514" y="0" on="1"/>
- <pt x="129" y="962" on="1"/>
- <pt x="55" y="962" on="1"/>
- <pt x="55" y="1086" on="1"/>
- <pt x="502" y="1086" on="1"/>
- <pt x="502" y="962" on="1"/>
- <pt x="342" y="962" on="1"/>
- <pt x="653" y="184" on="1"/>
- <pt x="655" y="184" on="1"/>
- <pt x="966" y="962" on="1"/>
- <pt x="806" y="962" on="1"/>
- <pt x="806" y="1086" on="1"/>
- <pt x="1173" y="1086" on="1"/>
- <pt x="1173" y="962" on="1"/>
- <pt x="1099" y="962" on="1"/>
- <pt x="714" y="0" on="1"/>
- <pt x="606" y="-271" on="1"/>
- <pt x="754" y="-271" on="1"/>
- <pt x="754" y="-395" on="1"/>
- <pt x="275" y="-395" on="1"/>
- <pt x="275" y="-271" on="1"/>
- <pt x="473" y="-271" on="1"/>
- <pt x="581" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="288" y="1283" on="1"/>
- <pt x="544" y="1604" on="1"/>
- <pt x="763" y="1604" on="1"/>
- <pt x="1019" y="1283" on="1"/>
- <pt x="896" y="1283" on="1"/>
- <pt x="655" y="1485" on="1"/>
- <pt x="652" y="1485" on="1"/>
- <pt x="411" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 95 values pushed */
- 30 29 28 27 26 23 6 24 3 3 1 8 7 2 1 2 3 0 1 22 0 2 2 16 3
- 0 0 0 14 13 10 9 6 5 2 1 6 7 3 21 20 17 16 6 3 18 2 4 48 200
- 25 24 1 19 18 1 2 0 12 11 4 3 1 3 14 30 29 28 27 26 25 24 23 22 21
- 20 19 18 17 16 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ydieresis" xMin="55" yMin="-395" xMax="1173" yMax="1480">
- <component glyphName="y" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="40" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="yen" xMin="49" yMin="0" xMax="1179" yMax="1480">
- <contour>
- <pt x="294" y="0" on="1"/>
- <pt x="294" y="123" on="1"/>
- <pt x="516" y="123" on="1"/>
- <pt x="516" y="407" on="1"/>
- <pt x="171" y="407" on="1"/>
- <pt x="171" y="531" on="1"/>
- <pt x="516" y="531" on="1"/>
- <pt x="516" y="660" on="1"/>
- <pt x="470" y="740" on="1"/>
- <pt x="171" y="740" on="1"/>
- <pt x="171" y="864" on="1"/>
- <pt x="400" y="864" on="1"/>
- <pt x="115" y="1357" on="1"/>
- <pt x="49" y="1357" on="1"/>
- <pt x="49" y="1480" on="1"/>
- <pt x="490" y="1480" on="1"/>
- <pt x="490" y="1357" on="1"/>
- <pt x="341" y="1357" on="1"/>
- <pt x="656" y="813" on="1"/>
- <pt x="658" y="813" on="1"/>
- <pt x="973" y="1357" on="1"/>
- <pt x="825" y="1357" on="1"/>
- <pt x="825" y="1480" on="1"/>
- <pt x="1179" y="1480" on="1"/>
- <pt x="1179" y="1357" on="1"/>
- <pt x="1115" y="1357" on="1"/>
- <pt x="830" y="864" on="1"/>
- <pt x="1059" y="864" on="1"/>
- <pt x="1059" y="740" on="1"/>
- <pt x="759" y="740" on="1"/>
- <pt x="713" y="661" on="1"/>
- <pt x="713" y="531" on="1"/>
- <pt x="1059" y="531" on="1"/>
- <pt x="1059" y="407" on="1"/>
- <pt x="713" y="407" on="1"/>
- <pt x="713" y="123" on="1"/>
- <pt x="935" y="123" on="1"/>
- <pt x="935" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 131 values pushed */
- 19 18 2 10 8 3 30 7 2 8 5 3 0 0 25 24 21 20 17 16 13 12 6 7 14
- 29 28 9 8 6 3 10 32 31 6 5 6 3 3 36 35 2 1 6 3 0 4 4 48 200
- 27 26 11 10 3 34 33 4 3 3 37 0 1 3 0 23 22 15 14 0 3 14 19 18 2
- 30 2 3 37 36 33 32 29 28 27 26 25 24 23 22 21 20 14 13 30 17 16 15 14 13
- 12 11 10 9 8 5 4 1 0 14 13 2 0 0 35 34 31 30 10 3 2 1 4 48 200
- 7 6 3 2 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="z" xMin="123" yMin="0" xMax="1093" yMax="1086">
- <contour>
- <pt x="123" y="0" on="1"/>
- <pt x="123" y="142" on="1"/>
- <pt x="818" y="962" on="1"/>
- <pt x="283" y="962" on="1"/>
- <pt x="283" y="765" on="1"/>
- <pt x="160" y="765" on="1"/>
- <pt x="160" y="1086" on="1"/>
- <pt x="1056" y="1086" on="1"/>
- <pt x="1056" y="962" on="1"/>
- <pt x="361" y="142" on="1"/>
- <pt x="969" y="142" on="1"/>
- <pt x="969" y="345" on="1"/>
- <pt x="1093" y="345" on="1"/>
- <pt x="1093" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 73 values pushed */
- 12 11 5 4 4 2 1 3 0 0 8 3 2 6 2 6 10 9 1 7 2 0 2 4 48
- 200 13 0 1 0 7 6 1 14 8 7 2 12 10 3 9 2 2 10 3 3 0 0 11 10
- 6 1 12 4 3 6 1 5 2 4 48 200 13 12 1 6 5 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="zacute" xMin="123" yMin="0" xMax="1093" yMax="1604">
- <component glyphName="z" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="93" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="zcaron" xMin="123" yMin="0" xMax="1093" yMax="1604">
- <component glyphName="z" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="-6" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="zdotaccent" xMin="123" yMin="0" xMax="1093" yMax="1480">
- <component glyphName="z" x="0" y="0" flags="0x4"/>
- <component glyphName="dotaccent" x="-7" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="zero" xMin="96" yMin="-37" xMax="1132" yMax="1517">
- <contour>
- <pt x="614" y="1517" on="1"/>
- <pt x="854" y="1517" on="0"/>
- <pt x="993" y="1309" on="1"/>
- <pt x="1132" y="1102" on="0"/>
- <pt x="1132" y="742" on="1"/>
- <pt x="1132" y="376" on="0"/>
- <pt x="993" y="170" on="1"/>
- <pt x="854" y="-37" on="0"/>
- <pt x="606" y="-37" on="1"/>
- <pt x="395" y="-37" on="0"/>
- <pt x="263" y="132" on="1"/>
- <pt x="96" y="346" on="0"/>
- <pt x="96" y="741" on="1"/>
- <pt x="96" y="1102" on="0"/>
- <pt x="235" y="1309" on="1"/>
- <pt x="374" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="614" y="1394" on="1"/>
- <pt x="467" y="1394" on="0"/>
- <pt x="388" y="1224" on="1"/>
- <pt x="309" y="1053" on="0"/>
- <pt x="309" y="742" on="1"/>
- <pt x="309" y="431" on="0"/>
- <pt x="388" y="258" on="1"/>
- <pt x="466" y="86" on="0"/>
- <pt x="613" y="86" on="1"/>
- <pt x="920" y="86" on="0"/>
- <pt x="920" y="740" on="1"/>
- <pt x="920" y="1057" on="0"/>
- <pt x="841" y="1225" on="1"/>
- <pt x="761" y="1394" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 27 values pushed */
- 0 0 24 5 8 16 5 0 48 200 8 2 0 0 14 0 0 26 39 4 20 39 12 48 200
- 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- </glyf>
-
- <name>
- <namerecord nameID="0" platformID="1" platEncID="0" langID="0x0">
- Copyright (c) 2001 by Bigelow &amp; Holmes Inc. Instructions copyright (c) 2001 by URW++.
- </namerecord>
- <namerecord nameID="1" platformID="1" platEncID="0" langID="0x0">
- Luxi Mono
- </namerecord>
- <namerecord nameID="2" platformID="1" platEncID="0" langID="0x0">
- Regular
- </namerecord>
- <namerecord nameID="3" platformID="1" platEncID="0" langID="0x0">
- Luxi Mono Regular: B&amp;H
- </namerecord>
- <namerecord nameID="4" platformID="1" platEncID="0" langID="0x0">
- Luxi Mono Regular
- </namerecord>
- <namerecord nameID="5" platformID="1" platEncID="0" langID="0x0">
- 1.2 : October 12, 2001
- </namerecord>
- <namerecord nameID="6" platformID="1" platEncID="0" langID="0x0">
- LuxiMono
- </namerecord>
- <namerecord nameID="7" platformID="1" platEncID="0" langID="0x0">
- Luxi is a registered trademark of Bigelow &amp; Holmes Inc.
- </namerecord>
- <namerecord nameID="8" platformID="1" platEncID="0" langID="0x0">
- Bigelow &amp; Holmes Inc.
- </namerecord>
- <namerecord nameID="9" platformID="1" platEncID="0" langID="0x0">
- Kris Holmes and Charles Bigelow
- </namerecord>
- <namerecord nameID="11" platformID="1" platEncID="0" langID="0x0">
- http://www.urwpp.de
- </namerecord>
- <namerecord nameID="12" platformID="1" platEncID="0" langID="0x0">
- design@bigelowandholmes.com
- </namerecord>
- <namerecord nameID="0" platformID="3" platEncID="1" langID="0x409">
- Copyright (c) 2001 by Bigelow &amp; Holmes Inc. Instructions copyright (c) 2001 by URW++.
- </namerecord>
- <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
- Luxi Mono
- </namerecord>
- <namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
- Regular
- </namerecord>
- <namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
- Luxi Mono Regular: B&amp;H
- </namerecord>
- <namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
- Luxi Mono Regular
- </namerecord>
- <namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
- 1.2 : October 12, 2001
- </namerecord>
- <namerecord nameID="6" platformID="3" platEncID="1" langID="0x409">
- LuxiMono
- </namerecord>
- <namerecord nameID="7" platformID="3" platEncID="1" langID="0x409">
- Luxi is a registered trademark of Bigelow &amp; Holmes Inc.
- </namerecord>
- <namerecord nameID="8" platformID="3" platEncID="1" langID="0x409">
- Bigelow &amp; Holmes Inc.
- </namerecord>
- <namerecord nameID="9" platformID="3" platEncID="1" langID="0x409">
- Kris Holmes and Charles Bigelow
- </namerecord>
- <namerecord nameID="11" platformID="3" platEncID="1" langID="0x409">
- http://www.urwpp.de
- </namerecord>
- <namerecord nameID="12" platformID="3" platEncID="1" langID="0x409">
- design@bigelowandholmes.com
- </namerecord>
- </name>
-
- <post>
- <formatType value="2.0"/>
- <italicAngle value="0.0"/>
- <underlinePosition value="0"/>
- <underlineThickness value="0"/>
- <isFixedPitch value="1"/>
- <minMemType42 value="0"/>
- <maxMemType42 value="0"/>
- <minMemType1 value="0"/>
- <maxMemType1 value="0"/>
- <psNames>
- <!-- This file uses unique glyph names based on the information
- found in the 'post' table. Since these names might not be unique,
- we have to invent artificial names in case of clashes. In order to
- be able to retain the original information, we need a name to
- ps name mapping for those cases where they differ. That's what
- you see below.
- -->
- <psName name=".notdef#1" psName=".notdef"/>
- <psName name=".notdef#10" psName=".notdef"/>
- <psName name=".notdef#11" psName=".notdef"/>
- <psName name=".notdef#12" psName=".notdef"/>
- <psName name=".notdef#13" psName=".notdef"/>
- <psName name=".notdef#14" psName=".notdef"/>
- <psName name=".notdef#15" psName=".notdef"/>
- <psName name=".notdef#16" psName=".notdef"/>
- <psName name=".notdef#17" psName=".notdef"/>
- <psName name=".notdef#18" psName=".notdef"/>
- <psName name=".notdef#2" psName=".notdef"/>
- <psName name=".notdef#3" psName=".notdef"/>
- <psName name=".notdef#4" psName=".notdef"/>
- <psName name=".notdef#5" psName=".notdef"/>
- <psName name=".notdef#6" psName=".notdef"/>
- <psName name=".notdef#7" psName=".notdef"/>
- <psName name=".notdef#8" psName=".notdef"/>
- <psName name=".notdef#9" psName=".notdef"/>
- <psName name="Euro#1" psName="Euro"/>
- <psName name="fi#1" psName="fi"/>
- <psName name="fl#1" psName="fl"/>
- <psName name="foursuperiour#1" psName="foursuperiour"/>
- <psName name="fraction#1" psName="fraction"/>
- <psName name="hyphen#1" psName="hyphen"/>
- <psName name="macron#1" psName="macron"/>
- <psName name="periodcentered#1" psName="periodcentered"/>
- <psName name="semicolon#1" psName="semicolon"/>
- </psNames>
- <extraNames>
- <!-- following are the name that are not taken from the standard Mac glyph order -->
- <psName name="fraction"/>
- <psName name="fl"/>
- <psName name="Euro"/>
- <psName name="tilde"/>
- <psName name="macron"/>
- <psName name="Euro"/>
- <psName name="sfthyphen"/>
- <psName name="periodcentered"/>
- <psName name="Amacron"/>
- <psName name="amacron"/>
- <psName name="Abreve"/>
- <psName name="abreve"/>
- <psName name="Aogonek"/>
- <psName name="aogonek"/>
- <psName name="Ccircumflex"/>
- <psName name="ccircumflex"/>
- <psName name="Cdotaccent"/>
- <psName name="cdotaccent"/>
- <psName name="Dcaron"/>
- <psName name="dcaron"/>
- <psName name="Dcroat"/>
- <psName name="dcroat"/>
- <psName name="Emacron"/>
- <psName name="emacron"/>
- <psName name="Ebreve"/>
- <psName name="ebreve"/>
- <psName name="Edotaccent"/>
- <psName name="edotaccent"/>
- <psName name="Eogonek"/>
- <psName name="eogonek"/>
- <psName name="Ecaron"/>
- <psName name="ecaron"/>
- <psName name="Gcircumflex"/>
- <psName name="gcircumflex"/>
- <psName name="Gdotaccent"/>
- <psName name="gdotaccent"/>
- <psName name="Gcommaaccent"/>
- <psName name="gcommaaccent"/>
- <psName name="Hcircumflex"/>
- <psName name="hcircumflex"/>
- <psName name="Hbar"/>
- <psName name="hbar"/>
- <psName name="Itilde"/>
- <psName name="itilde"/>
- <psName name="Imacron"/>
- <psName name="imacron"/>
- <psName name="Ibreve"/>
- <psName name="ibreve"/>
- <psName name="Iogonek"/>
- <psName name="iogonek"/>
- <psName name="IJ"/>
- <psName name="ij"/>
- <psName name="Jcircumflex"/>
- <psName name="jcircumflex"/>
- <psName name="Kcommaaccent"/>
- <psName name="kcommaaccent"/>
- <psName name="kgreenlandic"/>
- <psName name="Lacute"/>
- <psName name="lacute"/>
- <psName name="Lcommaaccent"/>
- <psName name="lcommaaccent"/>
- <psName name="Lcaron"/>
- <psName name="lcaron"/>
- <psName name="Ldot"/>
- <psName name="ldot"/>
- <psName name="Nacute"/>
- <psName name="nacute"/>
- <psName name="Ncommaaccent"/>
- <psName name="ncommaaccent"/>
- <psName name="Ncaron"/>
- <psName name="ncaron"/>
- <psName name="napostrophe"/>
- <psName name="Eng"/>
- <psName name="eng"/>
- <psName name="Omacron"/>
- <psName name="omacron"/>
- <psName name="Obreve"/>
- <psName name="obreve"/>
- <psName name="Ohungarumlaut"/>
- <psName name="ohungarumlaut"/>
- <psName name="Racute"/>
- <psName name="racute"/>
- <psName name="Rcommaaccent"/>
- <psName name="rcommaaccent"/>
- <psName name="Rcaron"/>
- <psName name="rcaron"/>
- <psName name="Sacute"/>
- <psName name="sacute"/>
- <psName name="Scircumflex"/>
- <psName name="scircumflex"/>
- <psName name="Tcommaaccent"/>
- <psName name="tcommaaccent"/>
- <psName name="Tcaron"/>
- <psName name="tcaron"/>
- <psName name="Tbar"/>
- <psName name="tbar"/>
- <psName name="Utilde"/>
- <psName name="utilde"/>
- <psName name="Umacron"/>
- <psName name="umacron"/>
- <psName name="Ubreve"/>
- <psName name="ubreve"/>
- <psName name="Uring"/>
- <psName name="uring"/>
- <psName name="Uhungarumlaut"/>
- <psName name="uhungarumlaut"/>
- <psName name="Uogonek"/>
- <psName name="uogonek"/>
- <psName name="Wcircumflex"/>
- <psName name="wcircumflex"/>
- <psName name="Ycircumflex"/>
- <psName name="ycircumflex"/>
- <psName name="Zacute"/>
- <psName name="zacute"/>
- <psName name="Zdotaccent"/>
- <psName name="zdotaccent"/>
- <psName name="longs"/>
- <psName name="Scommaaccent"/>
- <psName name="scommaaccent"/>
- <psName name="Tcommabelow"/>
- <psName name="tcommabelow"/>
- <psName name="Unterkomma"/>
- <psName name="semicolon"/>
- <psName name="anoteleia"/>
- <psName name="hyphen"/>
- <psName name="nbhyphen"/>
- <psName name="figuredash"/>
- <psName name="afii00208"/>
- <psName name="quotereversed"/>
- <psName name="radicalex"/>
- <psName name="estimated"/>
- <psName name="dotmath"/>
- <psName name="fi"/>
- <psName name="fl"/>
- <psName name="foursuperiour"/>
- <psName name="onesuperiour"/>
- <psName name="twosuperiour"/>
- <psName name="threesuperiour"/>
- <psName name="foursuperiour"/>
- <psName name="dotlessj"/>
- </extraNames>
- </post>
-
- <gasp>
- <gaspRange rangeMaxPPEM="8" rangeGaspBehavior="2"/>
- <gaspRange rangeMaxPPEM="16" rangeGaspBehavior="1"/>
- <gaspRange rangeMaxPPEM="65535" rangeGaspBehavior="3"/>
- </gasp>
-
- <vhea>
- <tableVersion value="1.0"/>
- <ascent value="2033"/>
- <descent value="432"/>
- <lineGap value="0"/>
- <advanceHeightMax value="2465"/>
- <minTopSideBearing value="0"/>
- <minBottomSideBearing value="0"/>
- <yMaxExtent value="2465"/>
- <caretSlopeRise value="0"/>
- <caretSlopeRun value="1"/>
- <reserved0 value="0"/>
- <reserved1 value="0"/>
- <reserved2 value="0"/>
- <reserved3 value="0"/>
- <reserved4 value="0"/>
- <metricDataFormat value="0"/>
- <numberOfVMetrics value="395"/>
- </vhea>
-
- <vmtx>
- <mtx name=".notdef" height="2465" tsb="553"/>
- <mtx name=".notdef#1" height="0" tsb="0"/>
- <mtx name=".notdef#10" height="2465" tsb="0"/>
- <mtx name=".notdef#11" height="2465" tsb="0"/>
- <mtx name=".notdef#12" height="2465" tsb="0"/>
- <mtx name=".notdef#13" height="2465" tsb="0"/>
- <mtx name=".notdef#14" height="2465" tsb="0"/>
- <mtx name=".notdef#15" height="2465" tsb="0"/>
- <mtx name=".notdef#16" height="1229" tsb="0"/>
- <mtx name=".notdef#17" height="2465" tsb="0"/>
- <mtx name=".notdef#18" height="2465" tsb="0"/>
- <mtx name=".notdef#2" height="2465" tsb="0"/>
- <mtx name=".notdef#3" height="2465" tsb="0"/>
- <mtx name=".notdef#4" height="2465" tsb="0"/>
- <mtx name=".notdef#5" height="2465" tsb="0"/>
- <mtx name=".notdef#6" height="2465" tsb="0"/>
- <mtx name=".notdef#7" height="2465" tsb="0"/>
- <mtx name=".notdef#8" height="2465" tsb="0"/>
- <mtx name=".notdef#9" height="2465" tsb="0"/>
- <mtx name="A" height="2465" tsb="553"/>
- <mtx name="AE" height="2465" tsb="553"/>
- <mtx name="Aacute" height="2465" tsb="108"/>
- <mtx name="Abreve" height="2465" tsb="108"/>
- <mtx name="Acircumflex" height="2465" tsb="108"/>
- <mtx name="Adieresis" height="2465" tsb="232"/>
- <mtx name="Agrave" height="2465" tsb="108"/>
- <mtx name="Amacron" height="2465" tsb="305"/>
- <mtx name="Aogonek" height="2465" tsb="553"/>
- <mtx name="Aring" height="2465" tsb="98"/>
- <mtx name="Atilde" height="2465" tsb="194"/>
- <mtx name="B" height="2465" tsb="553"/>
- <mtx name="C" height="2465" tsb="516"/>
- <mtx name="Cacute" height="2465" tsb="108"/>
- <mtx name="Ccaron" height="2465" tsb="108"/>
- <mtx name="Ccedilla" height="2465" tsb="516"/>
- <mtx name="Ccircumflex" height="2465" tsb="108"/>
- <mtx name="Cdotaccent" height="2465" tsb="232"/>
- <mtx name="D" height="2465" tsb="553"/>
- <mtx name="Dcaron" height="2465" tsb="108"/>
- <mtx name="Dcroat" height="2465" tsb="553"/>
- <mtx name="E" height="2465" tsb="553"/>
- <mtx name="Eacute" height="2465" tsb="108"/>
- <mtx name="Ebreve" height="2465" tsb="108"/>
- <mtx name="Ecaron" height="2465" tsb="108"/>
- <mtx name="Ecircumflex" height="2465" tsb="108"/>
- <mtx name="Edieresis" height="2465" tsb="232"/>
- <mtx name="Edotaccent" height="2465" tsb="232"/>
- <mtx name="Egrave" height="2465" tsb="108"/>
- <mtx name="Emacron" height="2465" tsb="305"/>
- <mtx name="Eng" height="2465" tsb="553"/>
- <mtx name="Eogonek" height="2465" tsb="553"/>
- <mtx name="Eth" height="2465" tsb="553"/>
- <mtx name="Euro" height="2465" tsb="516"/>
- <mtx name="Euro#1" height="2465" tsb="516"/>
- <mtx name="F" height="2465" tsb="553"/>
- <mtx name="G" height="2465" tsb="515"/>
- <mtx name="Gbreve" height="2465" tsb="108"/>
- <mtx name="Gcircumflex" height="2465" tsb="108"/>
- <mtx name="Gcommaaccent" height="2465" tsb="515"/>
- <mtx name="Gdotaccent" height="2465" tsb="232"/>
- <mtx name="H" height="2465" tsb="553"/>
- <mtx name="Hbar" height="2465" tsb="553"/>
- <mtx name="Hcircumflex" height="2465" tsb="108"/>
- <mtx name="I" height="2465" tsb="553"/>
- <mtx name="IJ" height="2465" tsb="553"/>
- <mtx name="Iacute" height="2465" tsb="108"/>
- <mtx name="Ibreve" height="2465" tsb="108"/>
- <mtx name="Icircumflex" height="2465" tsb="108"/>
- <mtx name="Idieresis" height="2465" tsb="232"/>
- <mtx name="Idotaccent" height="2465" tsb="232"/>
- <mtx name="Igrave" height="2465" tsb="108"/>
- <mtx name="Imacron" height="2465" tsb="305"/>
- <mtx name="Iogonek" height="2465" tsb="553"/>
- <mtx name="Itilde" height="2465" tsb="194"/>
- <mtx name="J" height="2465" tsb="553"/>
- <mtx name="Jcircumflex" height="2465" tsb="108"/>
- <mtx name="K" height="2465" tsb="553"/>
- <mtx name="Kcommaaccent" height="2465" tsb="553"/>
- <mtx name="L" height="2465" tsb="553"/>
- <mtx name="Lacute" height="2465" tsb="108"/>
- <mtx name="Lcaron" height="2465" tsb="553"/>
- <mtx name="Lcommaaccent" height="2465" tsb="553"/>
- <mtx name="Ldot" height="2465" tsb="553"/>
- <mtx name="Lslash" height="2465" tsb="553"/>
- <mtx name="M" height="2465" tsb="553"/>
- <mtx name="N" height="2465" tsb="553"/>
- <mtx name="Nacute" height="2465" tsb="108"/>
- <mtx name="Ncaron" height="2465" tsb="108"/>
- <mtx name="Ncommaaccent" height="2465" tsb="553"/>
- <mtx name="Ntilde" height="2465" tsb="194"/>
- <mtx name="O" height="2465" tsb="516"/>
- <mtx name="OE" height="2465" tsb="515"/>
- <mtx name="Oacute" height="2465" tsb="108"/>
- <mtx name="Obreve" height="2465" tsb="108"/>
- <mtx name="Ocircumflex" height="2465" tsb="108"/>
- <mtx name="Odieresis" height="2465" tsb="232"/>
- <mtx name="Ograve" height="2465" tsb="108"/>
- <mtx name="Ohungarumlaut" height="2465" tsb="108"/>
- <mtx name="Omacron" height="2465" tsb="305"/>
- <mtx name="Oslash" height="2465" tsb="516"/>
- <mtx name="Otilde" height="2465" tsb="194"/>
- <mtx name="P" height="2465" tsb="553"/>
- <mtx name="Q" height="2465" tsb="516"/>
- <mtx name="R" height="2465" tsb="553"/>
- <mtx name="Racute" height="2465" tsb="108"/>
- <mtx name="Rcaron" height="2465" tsb="108"/>
- <mtx name="Rcommaaccent" height="2465" tsb="553"/>
- <mtx name="S" height="2465" tsb="516"/>
- <mtx name="Sacute" height="2465" tsb="108"/>
- <mtx name="Scaron" height="2465" tsb="108"/>
- <mtx name="Scedilla" height="2465" tsb="516"/>
- <mtx name="Scircumflex" height="2465" tsb="108"/>
- <mtx name="Scommaaccent" height="2465" tsb="516"/>
- <mtx name="T" height="2465" tsb="553"/>
- <mtx name="Tbar" height="2465" tsb="553"/>
- <mtx name="Tcaron" height="2465" tsb="108"/>
- <mtx name="Tcommaaccent" height="2465" tsb="553"/>
- <mtx name="Tcommabelow" height="2465" tsb="553"/>
- <mtx name="Thorn" height="2465" tsb="553"/>
- <mtx name="U" height="2465" tsb="553"/>
- <mtx name="Uacute" height="2465" tsb="108"/>
- <mtx name="Ubreve" height="2465" tsb="108"/>
- <mtx name="Ucircumflex" height="2465" tsb="108"/>
- <mtx name="Udieresis" height="2465" tsb="232"/>
- <mtx name="Ugrave" height="2465" tsb="108"/>
- <mtx name="Uhungarumlaut" height="2465" tsb="108"/>
- <mtx name="Umacron" height="2465" tsb="305"/>
- <mtx name="Unterkomma" height="2465" tsb="2144"/>
- <mtx name="Uogonek" height="2465" tsb="553"/>
- <mtx name="Uring" height="2465" tsb="0"/>
- <mtx name="Utilde" height="2465" tsb="194"/>
- <mtx name="V" height="2465" tsb="553"/>
- <mtx name="W" height="2465" tsb="553"/>
- <mtx name="Wcircumflex" height="2465" tsb="108"/>
- <mtx name="X" height="2465" tsb="553"/>
- <mtx name="Y" height="2465" tsb="553"/>
- <mtx name="Yacute" height="2465" tsb="108"/>
- <mtx name="Ycircumflex" height="2465" tsb="108"/>
- <mtx name="Ydieresis" height="2465" tsb="232"/>
- <mtx name="Z" height="2465" tsb="553"/>
- <mtx name="Zacute" height="2465" tsb="108"/>
- <mtx name="Zcaron" height="2465" tsb="108"/>
- <mtx name="Zdotaccent" height="2465" tsb="232"/>
- <mtx name="a" height="2465" tsb="922"/>
- <mtx name="aacute" height="2465" tsb="429"/>
- <mtx name="abreve" height="2465" tsb="454"/>
- <mtx name="acircumflex" height="2465" tsb="429"/>
- <mtx name="acute" height="2465" tsb="429"/>
- <mtx name="adieresis" height="2465" tsb="553"/>
- <mtx name="ae" height="2465" tsb="923"/>
- <mtx name="afii00208" height="2465" tsb="1367"/>
- <mtx name="agrave" height="2465" tsb="429"/>
- <mtx name="amacron" height="2465" tsb="626"/>
- <mtx name="ampersand" height="2465" tsb="515"/>
- <mtx name="anoteleia" height="2465" tsb="1367"/>
- <mtx name="aogonek" height="2465" tsb="922"/>
- <mtx name="aring" height="2465" tsb="296"/>
- <mtx name="asciicircum" height="2465" tsb="553"/>
- <mtx name="asciitilde" height="2465" tsb="1261"/>
- <mtx name="asterisk" height="2465" tsb="553"/>
- <mtx name="at" height="2465" tsb="516"/>
- <mtx name="atilde" height="2465" tsb="515"/>
- <mtx name="b" height="2465" tsb="454"/>
- <mtx name="backslash" height="2465" tsb="454"/>
- <mtx name="bar" height="2465" tsb="454"/>
- <mtx name="braceleft" height="2465" tsb="454"/>
- <mtx name="braceright" height="2465" tsb="454"/>
- <mtx name="bracketleft" height="2465" tsb="454"/>
- <mtx name="bracketright" height="2465" tsb="454"/>
- <mtx name="breve" height="2465" tsb="454"/>
- <mtx name="brokenbar" height="2465" tsb="454"/>
- <mtx name="bullet" height="2465" tsb="923"/>
- <mtx name="c" height="2465" tsb="923"/>
- <mtx name="cacute" height="2465" tsb="429"/>
- <mtx name="caron" height="2465" tsb="429"/>
- <mtx name="ccaron" height="2465" tsb="429"/>
- <mtx name="ccedilla" height="2465" tsb="923"/>
- <mtx name="ccircumflex" height="2465" tsb="429"/>
- <mtx name="cdotaccent" height="2465" tsb="553"/>
- <mtx name="cedilla" height="2465" tsb="2033"/>
- <mtx name="cent" height="2465" tsb="553"/>
- <mtx name="circumflex" height="2465" tsb="429"/>
- <mtx name="colon" height="2465" tsb="947"/>
- <mtx name="comma" height="2465" tsb="1737"/>
- <mtx name="copyright" height="2465" tsb="516"/>
- <mtx name="currency" height="2465" tsb="833"/>
- <mtx name="d" height="2465" tsb="454"/>
- <mtx name="dagger" height="2465" tsb="553"/>
- <mtx name="daggerdbl" height="2465" tsb="553"/>
- <mtx name="dcaron" height="2465" tsb="454"/>
- <mtx name="dcroat" height="2465" tsb="454"/>
- <mtx name="degree" height="2465" tsb="516"/>
- <mtx name="dieresis" height="2465" tsb="553"/>
- <mtx name="divide" height="2465" tsb="799"/>
- <mtx name="dollar" height="2465" tsb="429"/>
- <mtx name="dotaccent" height="2465" tsb="553"/>
- <mtx name="dotlessi" height="2465" tsb="947"/>
- <mtx name="dotlessj" height="2465" tsb="947"/>
- <mtx name="dotmath" height="2465" tsb="1367"/>
- <mtx name="e" height="2465" tsb="923"/>
- <mtx name="eacute" height="2465" tsb="429"/>
- <mtx name="ebreve" height="2465" tsb="454"/>
- <mtx name="ecaron" height="2465" tsb="429"/>
- <mtx name="ecircumflex" height="2465" tsb="429"/>
- <mtx name="edieresis" height="2465" tsb="553"/>
- <mtx name="edotaccent" height="2465" tsb="553"/>
- <mtx name="egrave" height="2465" tsb="429"/>
- <mtx name="eight" height="2465" tsb="516"/>
- <mtx name="ellipsis" height="2465" tsb="1786"/>
- <mtx name="emacron" height="2465" tsb="626"/>
- <mtx name="emdash" height="2465" tsb="1367"/>
- <mtx name="endash" height="2465" tsb="1342"/>
- <mtx name="eng" height="2465" tsb="923"/>
- <mtx name="eogonek" height="2465" tsb="923"/>
- <mtx name="equal" height="2465" tsb="1145"/>
- <mtx name="estimated" height="2465" tsb="923"/>
- <mtx name="eth" height="2465" tsb="419"/>
- <mtx name="exclam" height="2465" tsb="553"/>
- <mtx name="exclamdown" height="2465" tsb="947"/>
- <mtx name="f" height="2465" tsb="429"/>
- <mtx name="fi" height="2465" tsb="429"/>
- <mtx name="fi#1" height="2465" tsb="429"/>
- <mtx name="figuredash" height="2465" tsb="1342"/>
- <mtx name="five" height="2465" tsb="553"/>
- <mtx name="fl" height="2465" tsb="429"/>
- <mtx name="fl#1" height="2465" tsb="429"/>
- <mtx name="florin" height="2465" tsb="516"/>
- <mtx name="four" height="2465" tsb="553"/>
- <mtx name="foursuperiour" height="2465" tsb="516"/>
- <mtx name="foursuperiour#1" height="2465" tsb="516"/>
- <mtx name="fraction" height="2465" tsb="516"/>
- <mtx name="fraction#1" height="2465" tsb="516"/>
- <mtx name="g" height="2465" tsb="922"/>
- <mtx name="gbreve" height="2465" tsb="454"/>
- <mtx name="gcircumflex" height="2465" tsb="429"/>
- <mtx name="gcommaaccent" height="2465" tsb="296"/>
- <mtx name="gdotaccent" height="2465" tsb="553"/>
- <mtx name="germandbls" height="2465" tsb="429"/>
- <mtx name="grave" height="2465" tsb="429"/>
- <mtx name="greater" height="2465" tsb="799"/>
- <mtx name="guillemotleft" height="2465" tsb="1046"/>
- <mtx name="guillemotright" height="2465" tsb="1046"/>
- <mtx name="guilsinglleft" height="2465" tsb="1046"/>
- <mtx name="guilsinglright" height="2465" tsb="1046"/>
- <mtx name="h" height="2465" tsb="454"/>
- <mtx name="hbar" height="2465" tsb="454"/>
- <mtx name="hcircumflex" height="2465" tsb="34"/>
- <mtx name="hungarumlaut" height="2465" tsb="429"/>
- <mtx name="hyphen" height="2465" tsb="1342"/>
- <mtx name="hyphen#1" height="2465" tsb="1342"/>
- <mtx name="i" height="2465" tsb="454"/>
- <mtx name="iacute" height="2465" tsb="429"/>
- <mtx name="ibreve" height="2465" tsb="454"/>
- <mtx name="icircumflex" height="2465" tsb="429"/>
- <mtx name="idieresis" height="2465" tsb="553"/>
- <mtx name="igrave" height="2465" tsb="429"/>
- <mtx name="ij" height="2465" tsb="454"/>
- <mtx name="imacron" height="2465" tsb="626"/>
- <mtx name="iogonek" height="2465" tsb="454"/>
- <mtx name="itilde" height="2465" tsb="515"/>
- <mtx name="j" height="2465" tsb="454"/>
- <mtx name="jcircumflex" height="2465" tsb="429"/>
- <mtx name="k" height="2465" tsb="454"/>
- <mtx name="kcommaaccent" height="2465" tsb="454"/>
- <mtx name="kgreenlandic" height="2465" tsb="947"/>
- <mtx name="l" height="2465" tsb="454"/>
- <mtx name="lacute" height="2465" tsb="34"/>
- <mtx name="lcaron" height="2465" tsb="454"/>
- <mtx name="lcommaaccent" height="2465" tsb="454"/>
- <mtx name="ldot" height="2465" tsb="454"/>
- <mtx name="less" height="2465" tsb="799"/>
- <mtx name="logicalnot" height="2465" tsb="1342"/>
- <mtx name="longs" height="2465" tsb="429"/>
- <mtx name="lslash" height="2465" tsb="454"/>
- <mtx name="m" height="2465" tsb="923"/>
- <mtx name="macron" height="2465" tsb="626"/>
- <mtx name="macron#1" height="2465" tsb="429"/>
- <mtx name="minus" height="2465" tsb="1342"/>
- <mtx name="mu" height="2465" tsb="947"/>
- <mtx name="multiply" height="2465" tsb="1001"/>
- <mtx name="n" height="2465" tsb="923"/>
- <mtx name="nacute" height="2465" tsb="429"/>
- <mtx name="napostrophe" height="2465" tsb="454"/>
- <mtx name="nbhyphen" height="2465" tsb="1342"/>
- <mtx name="ncaron" height="2465" tsb="429"/>
- <mtx name="ncommaaccent" height="2465" tsb="923"/>
- <mtx name="nine" height="2465" tsb="516"/>
- <mtx name="nonbreakingspace" height="2465" tsb="2033"/>
- <mtx name="ntilde" height="2465" tsb="515"/>
- <mtx name="numbersign" height="2465" tsb="553"/>
- <mtx name="o" height="2465" tsb="923"/>
- <mtx name="oacute" height="2465" tsb="429"/>
- <mtx name="obreve" height="2465" tsb="454"/>
- <mtx name="ocircumflex" height="2465" tsb="429"/>
- <mtx name="odieresis" height="2465" tsb="553"/>
- <mtx name="oe" height="2465" tsb="922"/>
- <mtx name="ogonek" height="2465" tsb="2033"/>
- <mtx name="ograve" height="2465" tsb="429"/>
- <mtx name="ohungarumlaut" height="2465" tsb="429"/>
- <mtx name="omacron" height="2465" tsb="626"/>
- <mtx name="one" height="2465" tsb="516"/>
- <mtx name="onehalf" height="2465" tsb="516"/>
- <mtx name="onequarter" height="2465" tsb="516"/>
- <mtx name="onesuperior" height="2465" tsb="516"/>
- <mtx name="onesuperiour" height="2465" tsb="516"/>
- <mtx name="ordfeminine" height="2465" tsb="516"/>
- <mtx name="ordmasculine" height="2465" tsb="516"/>
- <mtx name="oslash" height="2465" tsb="923"/>
- <mtx name="otilde" height="2465" tsb="515"/>
- <mtx name="p" height="2465" tsb="923"/>
- <mtx name="paragraph" height="2465" tsb="540"/>
- <mtx name="parenleft" height="2465" tsb="454"/>
- <mtx name="parenright" height="2465" tsb="454"/>
- <mtx name="percent" height="2465" tsb="516"/>
- <mtx name="period" height="2465" tsb="1737"/>
- <mtx name="periodcentered" height="2465" tsb="1367"/>
- <mtx name="periodcentered#1" height="2465" tsb="1367"/>
- <mtx name="perthousand" height="2465" tsb="553"/>
- <mtx name="plus" height="2465" tsb="900"/>
- <mtx name="plusminus" height="2465" tsb="799"/>
- <mtx name="q" height="2465" tsb="923"/>
- <mtx name="question" height="2465" tsb="516"/>
- <mtx name="questiondown" height="2465" tsb="947"/>
- <mtx name="quotedbl" height="2465" tsb="454"/>
- <mtx name="quotedblbase" height="2465" tsb="1786"/>
- <mtx name="quotedblleft" height="2465" tsb="454"/>
- <mtx name="quotedblright" height="2465" tsb="454"/>
- <mtx name="quoteleft" height="2465" tsb="454"/>
- <mtx name="quotereversed" height="2465" tsb="2033"/>
- <mtx name="quoteright" height="2465" tsb="454"/>
- <mtx name="quotesinglbase" height="2465" tsb="1737"/>
- <mtx name="quotesingle" height="2465" tsb="454"/>
- <mtx name="r" height="2465" tsb="923"/>
- <mtx name="racute" height="2465" tsb="429"/>
- <mtx name="radicalex" height="2465" tsb="429"/>
- <mtx name="rcaron" height="2465" tsb="429"/>
- <mtx name="rcommaaccent" height="2465" tsb="923"/>
- <mtx name="registered" height="2465" tsb="516"/>
- <mtx name="ring" height="2465" tsb="296"/>
- <mtx name="s" height="2465" tsb="922"/>
- <mtx name="sacute" height="2465" tsb="429"/>
- <mtx name="scaron" height="2465" tsb="429"/>
- <mtx name="scedilla" height="2465" tsb="922"/>
- <mtx name="scircumflex" height="2465" tsb="429"/>
- <mtx name="scommaaccent" height="2465" tsb="922"/>
- <mtx name="section" height="2465" tsb="515"/>
- <mtx name="semicolon" height="2465" tsb="947"/>
- <mtx name="semicolon#1" height="2465" tsb="947"/>
- <mtx name="seven" height="2465" tsb="553"/>
- <mtx name="sfthyphen" height="2465" tsb="1342"/>
- <mtx name="six" height="2465" tsb="516"/>
- <mtx name="slash" height="2465" tsb="454"/>
- <mtx name="space" height="2465" tsb="2033"/>
- <mtx name="sterling" height="2465" tsb="516"/>
- <mtx name="t" height="2465" tsb="701"/>
- <mtx name="tbar" height="2465" tsb="701"/>
- <mtx name="tcaron" height="2465" tsb="345"/>
- <mtx name="tcommaaccent" height="2465" tsb="701"/>
- <mtx name="tcommabelow" height="2465" tsb="701"/>
- <mtx name="thorn" height="2465" tsb="454"/>
- <mtx name="three" height="2465" tsb="516"/>
- <mtx name="threequarters" height="2465" tsb="515"/>
- <mtx name="threesuperior" height="2465" tsb="515"/>
- <mtx name="threesuperiour" height="2465" tsb="515"/>
- <mtx name="tilde" height="2465" tsb="515"/>
- <mtx name="trademark" height="2465" tsb="553"/>
- <mtx name="two" height="2465" tsb="516"/>
- <mtx name="twosuperior" height="2465" tsb="515"/>
- <mtx name="twosuperiour" height="2465" tsb="516"/>
- <mtx name="u" height="2465" tsb="947"/>
- <mtx name="uacute" height="2465" tsb="429"/>
- <mtx name="ubreve" height="2465" tsb="454"/>
- <mtx name="ucircumflex" height="2465" tsb="429"/>
- <mtx name="udieresis" height="2465" tsb="553"/>
- <mtx name="ugrave" height="2465" tsb="429"/>
- <mtx name="uhungarumlaut" height="2465" tsb="429"/>
- <mtx name="umacron" height="2465" tsb="626"/>
- <mtx name="underscore" height="2465" tsb="2033"/>
- <mtx name="uogonek" height="2465" tsb="947"/>
- <mtx name="uring" height="2465" tsb="296"/>
- <mtx name="utilde" height="2465" tsb="515"/>
- <mtx name="v" height="2465" tsb="947"/>
- <mtx name="w" height="2465" tsb="947"/>
- <mtx name="wcircumflex" height="2465" tsb="429"/>
- <mtx name="x" height="2465" tsb="947"/>
- <mtx name="y" height="2465" tsb="947"/>
- <mtx name="yacute" height="2465" tsb="429"/>
- <mtx name="ycircumflex" height="2465" tsb="429"/>
- <mtx name="ydieresis" height="2465" tsb="553"/>
- <mtx name="yen" height="2465" tsb="553"/>
- <mtx name="z" height="2465" tsb="947"/>
- <mtx name="zacute" height="2465" tsb="429"/>
- <mtx name="zcaron" height="2465" tsb="429"/>
- <mtx name="zdotaccent" height="2465" tsb="553"/>
- <mtx name="zero" height="2465" tsb="516"/>
- </vmtx>
-
-</ttFont>
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxirr.ttf b/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxirr.ttf
deleted file mode 100644
index daa8ad8cc..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxirr.ttf
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxirr.ttx b/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxirr.ttx
deleted file mode 100644
index 27191d0a7..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxirr.ttx
+++ /dev/null
@@ -1,30264 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="2.4">
-
- <GlyphOrder>
- <!-- The 'id' attribute is only for humans; it is ignored when parsed. -->
- <GlyphID id="0" name=".notdef"/>
- <GlyphID id="1" name=".notdef#1"/>
- <GlyphID id="2" name=".notdef#2"/>
- <GlyphID id="3" name="space"/>
- <GlyphID id="4" name="exclam"/>
- <GlyphID id="5" name="quotedbl"/>
- <GlyphID id="6" name="numbersign"/>
- <GlyphID id="7" name="dollar"/>
- <GlyphID id="8" name="percent"/>
- <GlyphID id="9" name="ampersand"/>
- <GlyphID id="10" name="quotesingle"/>
- <GlyphID id="11" name="parenleft"/>
- <GlyphID id="12" name="parenright"/>
- <GlyphID id="13" name="asterisk"/>
- <GlyphID id="14" name="plus"/>
- <GlyphID id="15" name="comma"/>
- <GlyphID id="16" name="hyphen"/>
- <GlyphID id="17" name="period"/>
- <GlyphID id="18" name="slash"/>
- <GlyphID id="19" name="zero"/>
- <GlyphID id="20" name="one"/>
- <GlyphID id="21" name="two"/>
- <GlyphID id="22" name="three"/>
- <GlyphID id="23" name="four"/>
- <GlyphID id="24" name="five"/>
- <GlyphID id="25" name="six"/>
- <GlyphID id="26" name="seven"/>
- <GlyphID id="27" name="eight"/>
- <GlyphID id="28" name="nine"/>
- <GlyphID id="29" name="colon"/>
- <GlyphID id="30" name="semicolon"/>
- <GlyphID id="31" name="less"/>
- <GlyphID id="32" name="equal"/>
- <GlyphID id="33" name="greater"/>
- <GlyphID id="34" name="question"/>
- <GlyphID id="35" name="at"/>
- <GlyphID id="36" name="A"/>
- <GlyphID id="37" name="B"/>
- <GlyphID id="38" name="C"/>
- <GlyphID id="39" name="D"/>
- <GlyphID id="40" name="E"/>
- <GlyphID id="41" name="F"/>
- <GlyphID id="42" name="G"/>
- <GlyphID id="43" name="H"/>
- <GlyphID id="44" name="I"/>
- <GlyphID id="45" name="J"/>
- <GlyphID id="46" name="K"/>
- <GlyphID id="47" name="L"/>
- <GlyphID id="48" name="M"/>
- <GlyphID id="49" name="N"/>
- <GlyphID id="50" name="O"/>
- <GlyphID id="51" name="P"/>
- <GlyphID id="52" name="Q"/>
- <GlyphID id="53" name="R"/>
- <GlyphID id="54" name="S"/>
- <GlyphID id="55" name="T"/>
- <GlyphID id="56" name="U"/>
- <GlyphID id="57" name="V"/>
- <GlyphID id="58" name="W"/>
- <GlyphID id="59" name="X"/>
- <GlyphID id="60" name="Y"/>
- <GlyphID id="61" name="Z"/>
- <GlyphID id="62" name="bracketleft"/>
- <GlyphID id="63" name="backslash"/>
- <GlyphID id="64" name="bracketright"/>
- <GlyphID id="65" name="asciicircum"/>
- <GlyphID id="66" name="underscore"/>
- <GlyphID id="67" name="grave"/>
- <GlyphID id="68" name="a"/>
- <GlyphID id="69" name="b"/>
- <GlyphID id="70" name="c"/>
- <GlyphID id="71" name="d"/>
- <GlyphID id="72" name="e"/>
- <GlyphID id="73" name="f"/>
- <GlyphID id="74" name="g"/>
- <GlyphID id="75" name="h"/>
- <GlyphID id="76" name="i"/>
- <GlyphID id="77" name="j"/>
- <GlyphID id="78" name="k"/>
- <GlyphID id="79" name="l"/>
- <GlyphID id="80" name="m"/>
- <GlyphID id="81" name="n"/>
- <GlyphID id="82" name="o"/>
- <GlyphID id="83" name="p"/>
- <GlyphID id="84" name="q"/>
- <GlyphID id="85" name="r"/>
- <GlyphID id="86" name="s"/>
- <GlyphID id="87" name="t"/>
- <GlyphID id="88" name="u"/>
- <GlyphID id="89" name="v"/>
- <GlyphID id="90" name="w"/>
- <GlyphID id="91" name="x"/>
- <GlyphID id="92" name="y"/>
- <GlyphID id="93" name="z"/>
- <GlyphID id="94" name="braceleft"/>
- <GlyphID id="95" name="bar"/>
- <GlyphID id="96" name="braceright"/>
- <GlyphID id="97" name="asciitilde"/>
- <GlyphID id="98" name="Adieresis"/>
- <GlyphID id="99" name="Aring"/>
- <GlyphID id="100" name="Ccedilla"/>
- <GlyphID id="101" name="Eacute"/>
- <GlyphID id="102" name="Ntilde"/>
- <GlyphID id="103" name="Odieresis"/>
- <GlyphID id="104" name="Udieresis"/>
- <GlyphID id="105" name="aacute"/>
- <GlyphID id="106" name="agrave"/>
- <GlyphID id="107" name="acircumflex"/>
- <GlyphID id="108" name="adieresis"/>
- <GlyphID id="109" name="atilde"/>
- <GlyphID id="110" name="aring"/>
- <GlyphID id="111" name="ccedilla"/>
- <GlyphID id="112" name="eacute"/>
- <GlyphID id="113" name="egrave"/>
- <GlyphID id="114" name="ecircumflex"/>
- <GlyphID id="115" name="edieresis"/>
- <GlyphID id="116" name="iacute"/>
- <GlyphID id="117" name="igrave"/>
- <GlyphID id="118" name="icircumflex"/>
- <GlyphID id="119" name="idieresis"/>
- <GlyphID id="120" name="ntilde"/>
- <GlyphID id="121" name="oacute"/>
- <GlyphID id="122" name="ograve"/>
- <GlyphID id="123" name="ocircumflex"/>
- <GlyphID id="124" name="odieresis"/>
- <GlyphID id="125" name="otilde"/>
- <GlyphID id="126" name="uacute"/>
- <GlyphID id="127" name="ugrave"/>
- <GlyphID id="128" name="ucircumflex"/>
- <GlyphID id="129" name="udieresis"/>
- <GlyphID id="130" name="dagger"/>
- <GlyphID id="131" name="degree"/>
- <GlyphID id="132" name="cent"/>
- <GlyphID id="133" name="sterling"/>
- <GlyphID id="134" name="section"/>
- <GlyphID id="135" name="bullet"/>
- <GlyphID id="136" name="paragraph"/>
- <GlyphID id="137" name="germandbls"/>
- <GlyphID id="138" name="registered"/>
- <GlyphID id="139" name="copyright"/>
- <GlyphID id="140" name="trademark"/>
- <GlyphID id="141" name="acute"/>
- <GlyphID id="142" name="dieresis"/>
- <GlyphID id="143" name=".notdef#3"/>
- <GlyphID id="144" name="AE"/>
- <GlyphID id="145" name="Oslash"/>
- <GlyphID id="146" name=".notdef#4"/>
- <GlyphID id="147" name="plusminus"/>
- <GlyphID id="148" name=".notdef#5"/>
- <GlyphID id="149" name=".notdef#6"/>
- <GlyphID id="150" name="yen"/>
- <GlyphID id="151" name="mu"/>
- <GlyphID id="152" name=".notdef#7"/>
- <GlyphID id="153" name=".notdef#8"/>
- <GlyphID id="154" name=".notdef#9"/>
- <GlyphID id="155" name=".notdef#10"/>
- <GlyphID id="156" name=".notdef#11"/>
- <GlyphID id="157" name="ordfeminine"/>
- <GlyphID id="158" name="ordmasculine"/>
- <GlyphID id="159" name=".notdef#12"/>
- <GlyphID id="160" name="ae"/>
- <GlyphID id="161" name="oslash"/>
- <GlyphID id="162" name="questiondown"/>
- <GlyphID id="163" name="exclamdown"/>
- <GlyphID id="164" name="logicalnot"/>
- <GlyphID id="165" name=".notdef#13"/>
- <GlyphID id="166" name="florin"/>
- <GlyphID id="167" name=".notdef#14"/>
- <GlyphID id="168" name=".notdef#15"/>
- <GlyphID id="169" name="guillemotleft"/>
- <GlyphID id="170" name="guillemotright"/>
- <GlyphID id="171" name="ellipsis"/>
- <GlyphID id="172" name=".notdef#16"/>
- <GlyphID id="173" name="Agrave"/>
- <GlyphID id="174" name="Atilde"/>
- <GlyphID id="175" name="Otilde"/>
- <GlyphID id="176" name="OE"/>
- <GlyphID id="177" name="oe"/>
- <GlyphID id="178" name="endash"/>
- <GlyphID id="179" name="emdash"/>
- <GlyphID id="180" name="quotedblleft"/>
- <GlyphID id="181" name="quotedblright"/>
- <GlyphID id="182" name="quoteleft"/>
- <GlyphID id="183" name="quoteright"/>
- <GlyphID id="184" name="divide"/>
- <GlyphID id="185" name=".notdef#17"/>
- <GlyphID id="186" name="ydieresis"/>
- <GlyphID id="187" name="Ydieresis"/>
- <GlyphID id="188" name="fraction"/>
- <GlyphID id="189" name="currency"/>
- <GlyphID id="190" name="guilsinglleft"/>
- <GlyphID id="191" name="guilsinglright"/>
- <GlyphID id="192" name="fi"/>
- <GlyphID id="193" name="fl"/>
- <GlyphID id="194" name="daggerdbl"/>
- <GlyphID id="195" name="periodcentered"/>
- <GlyphID id="196" name="quotesinglbase"/>
- <GlyphID id="197" name="quotedblbase"/>
- <GlyphID id="198" name="perthousand"/>
- <GlyphID id="199" name="Acircumflex"/>
- <GlyphID id="200" name="Ecircumflex"/>
- <GlyphID id="201" name="Aacute"/>
- <GlyphID id="202" name="Edieresis"/>
- <GlyphID id="203" name="Egrave"/>
- <GlyphID id="204" name="Iacute"/>
- <GlyphID id="205" name="Icircumflex"/>
- <GlyphID id="206" name="Idieresis"/>
- <GlyphID id="207" name="Igrave"/>
- <GlyphID id="208" name="Oacute"/>
- <GlyphID id="209" name="Ocircumflex"/>
- <GlyphID id="210" name="Euro"/>
- <GlyphID id="211" name="Ograve"/>
- <GlyphID id="212" name="Uacute"/>
- <GlyphID id="213" name="Ucircumflex"/>
- <GlyphID id="214" name="Ugrave"/>
- <GlyphID id="215" name="dotlessi"/>
- <GlyphID id="216" name="circumflex"/>
- <GlyphID id="217" name="tilde"/>
- <GlyphID id="218" name="macron"/>
- <GlyphID id="219" name="breve"/>
- <GlyphID id="220" name="dotaccent"/>
- <GlyphID id="221" name="ring"/>
- <GlyphID id="222" name="cedilla"/>
- <GlyphID id="223" name="hungarumlaut"/>
- <GlyphID id="224" name="ogonek"/>
- <GlyphID id="225" name="caron"/>
- <GlyphID id="226" name="Euro#1"/>
- <GlyphID id="227" name="nonbreakingspace"/>
- <GlyphID id="228" name="brokenbar"/>
- <GlyphID id="229" name="sfthyphen"/>
- <GlyphID id="230" name="macron#1"/>
- <GlyphID id="231" name="twosuperior"/>
- <GlyphID id="232" name="threesuperior"/>
- <GlyphID id="233" name="periodcentered#1"/>
- <GlyphID id="234" name="onesuperior"/>
- <GlyphID id="235" name="onequarter"/>
- <GlyphID id="236" name="onehalf"/>
- <GlyphID id="237" name="threequarters"/>
- <GlyphID id="238" name="Eth"/>
- <GlyphID id="239" name="multiply"/>
- <GlyphID id="240" name="Yacute"/>
- <GlyphID id="241" name="Thorn"/>
- <GlyphID id="242" name="eth"/>
- <GlyphID id="243" name="yacute"/>
- <GlyphID id="244" name="thorn"/>
- <GlyphID id="245" name="Amacron"/>
- <GlyphID id="246" name="amacron"/>
- <GlyphID id="247" name="Abreve"/>
- <GlyphID id="248" name="abreve"/>
- <GlyphID id="249" name="Aogonek"/>
- <GlyphID id="250" name="aogonek"/>
- <GlyphID id="251" name="Cacute"/>
- <GlyphID id="252" name="cacute"/>
- <GlyphID id="253" name="Ccircumflex"/>
- <GlyphID id="254" name="ccircumflex"/>
- <GlyphID id="255" name="Cdotaccent"/>
- <GlyphID id="256" name="cdotaccent"/>
- <GlyphID id="257" name="Ccaron"/>
- <GlyphID id="258" name="ccaron"/>
- <GlyphID id="259" name="Dcaron"/>
- <GlyphID id="260" name="dcaron"/>
- <GlyphID id="261" name="Dcroat"/>
- <GlyphID id="262" name="dcroat"/>
- <GlyphID id="263" name="Emacron"/>
- <GlyphID id="264" name="emacron"/>
- <GlyphID id="265" name="Ebreve"/>
- <GlyphID id="266" name="ebreve"/>
- <GlyphID id="267" name="Edotaccent"/>
- <GlyphID id="268" name="edotaccent"/>
- <GlyphID id="269" name="Eogonek"/>
- <GlyphID id="270" name="eogonek"/>
- <GlyphID id="271" name="Ecaron"/>
- <GlyphID id="272" name="ecaron"/>
- <GlyphID id="273" name="Gcircumflex"/>
- <GlyphID id="274" name="gcircumflex"/>
- <GlyphID id="275" name="Gbreve"/>
- <GlyphID id="276" name="gbreve"/>
- <GlyphID id="277" name="Gdotaccent"/>
- <GlyphID id="278" name="gdotaccent"/>
- <GlyphID id="279" name="Gcommaaccent"/>
- <GlyphID id="280" name="gcommaaccent"/>
- <GlyphID id="281" name="Hcircumflex"/>
- <GlyphID id="282" name="hcircumflex"/>
- <GlyphID id="283" name="Hbar"/>
- <GlyphID id="284" name="hbar"/>
- <GlyphID id="285" name="Itilde"/>
- <GlyphID id="286" name="itilde"/>
- <GlyphID id="287" name="Imacron"/>
- <GlyphID id="288" name="imacron"/>
- <GlyphID id="289" name="Ibreve"/>
- <GlyphID id="290" name="ibreve"/>
- <GlyphID id="291" name="Iogonek"/>
- <GlyphID id="292" name="iogonek"/>
- <GlyphID id="293" name="Idotaccent"/>
- <GlyphID id="294" name="IJ"/>
- <GlyphID id="295" name="ij"/>
- <GlyphID id="296" name="Jcircumflex"/>
- <GlyphID id="297" name="jcircumflex"/>
- <GlyphID id="298" name="Kcommaaccent"/>
- <GlyphID id="299" name="kcommaaccent"/>
- <GlyphID id="300" name="kgreenlandic"/>
- <GlyphID id="301" name="Lacute"/>
- <GlyphID id="302" name="lacute"/>
- <GlyphID id="303" name="Lcommaaccent"/>
- <GlyphID id="304" name="lcommaaccent"/>
- <GlyphID id="305" name="Lcaron"/>
- <GlyphID id="306" name="lcaron"/>
- <GlyphID id="307" name="Ldot"/>
- <GlyphID id="308" name="ldot"/>
- <GlyphID id="309" name="Lslash"/>
- <GlyphID id="310" name="lslash"/>
- <GlyphID id="311" name="Nacute"/>
- <GlyphID id="312" name="nacute"/>
- <GlyphID id="313" name="Ncommaaccent"/>
- <GlyphID id="314" name="ncommaaccent"/>
- <GlyphID id="315" name="Ncaron"/>
- <GlyphID id="316" name="ncaron"/>
- <GlyphID id="317" name="napostrophe"/>
- <GlyphID id="318" name="Eng"/>
- <GlyphID id="319" name="eng"/>
- <GlyphID id="320" name="Omacron"/>
- <GlyphID id="321" name="omacron"/>
- <GlyphID id="322" name="Obreve"/>
- <GlyphID id="323" name="obreve"/>
- <GlyphID id="324" name="Ohungarumlaut"/>
- <GlyphID id="325" name="ohungarumlaut"/>
- <GlyphID id="326" name="Racute"/>
- <GlyphID id="327" name="racute"/>
- <GlyphID id="328" name="Rcommaaccent"/>
- <GlyphID id="329" name="rcommaaccent"/>
- <GlyphID id="330" name="Rcaron"/>
- <GlyphID id="331" name="rcaron"/>
- <GlyphID id="332" name="Sacute"/>
- <GlyphID id="333" name="sacute"/>
- <GlyphID id="334" name="Scircumflex"/>
- <GlyphID id="335" name="scircumflex"/>
- <GlyphID id="336" name="Scedilla"/>
- <GlyphID id="337" name="scedilla"/>
- <GlyphID id="338" name="Scaron"/>
- <GlyphID id="339" name="scaron"/>
- <GlyphID id="340" name="Tcommaaccent"/>
- <GlyphID id="341" name="tcommaaccent"/>
- <GlyphID id="342" name="Tcaron"/>
- <GlyphID id="343" name="tcaron"/>
- <GlyphID id="344" name="Tbar"/>
- <GlyphID id="345" name="tbar"/>
- <GlyphID id="346" name="Utilde"/>
- <GlyphID id="347" name="utilde"/>
- <GlyphID id="348" name="Umacron"/>
- <GlyphID id="349" name="umacron"/>
- <GlyphID id="350" name="Ubreve"/>
- <GlyphID id="351" name="ubreve"/>
- <GlyphID id="352" name="Uring"/>
- <GlyphID id="353" name="uring"/>
- <GlyphID id="354" name="Uhungarumlaut"/>
- <GlyphID id="355" name="uhungarumlaut"/>
- <GlyphID id="356" name="Uogonek"/>
- <GlyphID id="357" name="uogonek"/>
- <GlyphID id="358" name="Wcircumflex"/>
- <GlyphID id="359" name="wcircumflex"/>
- <GlyphID id="360" name="Ycircumflex"/>
- <GlyphID id="361" name="ycircumflex"/>
- <GlyphID id="362" name="Zacute"/>
- <GlyphID id="363" name="zacute"/>
- <GlyphID id="364" name="Zdotaccent"/>
- <GlyphID id="365" name="zdotaccent"/>
- <GlyphID id="366" name="Zcaron"/>
- <GlyphID id="367" name="zcaron"/>
- <GlyphID id="368" name="longs"/>
- <GlyphID id="369" name="Scommaaccent"/>
- <GlyphID id="370" name="scommaaccent"/>
- <GlyphID id="371" name="Tcommabelow"/>
- <GlyphID id="372" name="tcommabelow"/>
- <GlyphID id="373" name="Unterkomma"/>
- <GlyphID id="374" name="semicolon#1"/>
- <GlyphID id="375" name="anoteleia"/>
- <GlyphID id="376" name="hyphen#1"/>
- <GlyphID id="377" name="nbhyphen"/>
- <GlyphID id="378" name="figuredash"/>
- <GlyphID id="379" name="afii00208"/>
- <GlyphID id="380" name="quotereversed"/>
- <GlyphID id="381" name="radicalex"/>
- <GlyphID id="382" name="estimated"/>
- <GlyphID id="383" name="minus"/>
- <GlyphID id="384" name="fraction#1"/>
- <GlyphID id="385" name="dotmath"/>
- <GlyphID id="386" name="fi#1"/>
- <GlyphID id="387" name="fl#1"/>
- <GlyphID id="388" name="foursuperiour"/>
- <GlyphID id="389" name="dotlessj"/>
- <GlyphID id="390" name=".notdef#18"/>
- </GlyphOrder>
-
- <head>
- <!-- Most of this table will be recalculated by the compiler -->
- <tableVersion value="1.0"/>
- <fontRevision value="1.19999694824"/>
- <checkSumAdjustment value="0xc0d96d6c"/>
- <magicNumber value="0x5f0f3cf5"/>
- <flags value="00000000 00001111"/>
- <unitsPerEm value="2048"/>
- <created value="Fri Oct 12 14:06:14 2001"/>
- <modified value="Fri Oct 12 10:57:50 2001"/>
- <xMin value="-416"/>
- <yMin value="-432"/>
- <xMax value="2014"/>
- <yMax value="2033"/>
- <macStyle value="00000000 00000000"/>
- <lowestRecPPEM value="12"/>
- <fontDirectionHint value="2"/>
- <indexToLocFormat value="0"/>
- <glyphDataFormat value="0"/>
- </head>
-
- <hhea>
- <tableVersion value="1.0"/>
- <ascent value="2033"/>
- <descent value="-432"/>
- <lineGap value="0"/>
- <advanceWidthMax value="2048"/>
- <minLeftSideBearing value="-416"/>
- <minRightSideBearing value="-417"/>
- <xMaxExtent value="2014"/>
- <caretSlopeRise value="1"/>
- <caretSlopeRun value="0"/>
- <caretOffset value="0"/>
- <reserved0 value="0"/>
- <reserved1 value="0"/>
- <reserved2 value="0"/>
- <reserved3 value="0"/>
- <metricDataFormat value="0"/>
- <numberOfHMetrics value="391"/>
- </hhea>
-
- <maxp>
- <!-- Most of this table will be recalculated by the compiler -->
- <tableVersion value="0x10000"/>
- <numGlyphs value="391"/>
- <maxPoints value="90"/>
- <maxContours value="7"/>
- <maxCompositePoints value="86"/>
- <maxCompositeContours value="4"/>
- <maxZones value="2"/>
- <maxTwilightPoints value="4"/>
- <maxStorage value="0"/>
- <maxFunctionDefs value="15"/>
- <maxInstructionDefs value="0"/>
- <maxStackElements value="2048"/>
- <maxSizeOfInstructions value="204"/>
- <maxComponentElements value="2"/>
- <maxComponentDepth value="1"/>
- </maxp>
-
- <OS_2>
- <version value="2"/>
- <xAvgCharWidth value="821"/>
- <usWeightClass value="400"/>
- <usWidthClass value="5"/>
- <fsType value="00000000 00000000"/>
- <ySubscriptXSize value="1434"/>
- <ySubscriptYSize value="1331"/>
- <ySubscriptXOffset value="0"/>
- <ySubscriptYOffset value="283"/>
- <ySuperscriptXSize value="1434"/>
- <ySuperscriptYSize value="1331"/>
- <ySuperscriptXOffset value="0"/>
- <ySuperscriptYOffset value="977"/>
- <yStrikeoutSize value="0"/>
- <yStrikeoutPosition value="0"/>
- <sFamilyClass value="5"/>
- <panose>
- <bFamilyType value="2"/>
- <bSerifStyle value="2"/>
- <bWeight value="6"/>
- <bProportion value="3"/>
- <bContrast value="7"/>
- <bStrokeVariation value="0"/>
- <bArmStyle value="0"/>
- <bLetterForm value="0"/>
- <bMidline value="0"/>
- <bXHeight value="0"/>
- </panose>
- <ulUnicodeRange1 value="00000000 00000000 00000000 00000111"/>
- <ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/>
- <ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/>
- <ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/>
- <achVendID value="B&amp;H "/>
- <fsSelection value="00000000 01000000"/>
- <fsFirstCharIndex value="32"/>
- <fsLastCharIndex value="64258"/>
- <sTypoAscender value="1604"/>
- <sTypoDescender value="-420"/>
- <sTypoLineGap value="167"/>
- <usWinAscent value="1934"/>
- <usWinDescent value="432"/>
- <ulCodePageRange1 value="00000000 00000000 00000000 10010011"/>
- <ulCodePageRange2 value="00000000 00000000 00000000 00000000"/>
- <sxHeight value="0"/>
- <sCapHeight value="0"/>
- <usDefaultChar value="0"/>
- <usBreakChar value="0"/>
- <usMaxContex value="0"/>
- </OS_2>
-
- <hmtx>
- <mtx name=".notdef" width="512" lsb="51"/>
- <mtx name=".notdef#1" width="0" lsb="0"/>
- <mtx name=".notdef#10" width="512" lsb="0"/>
- <mtx name=".notdef#11" width="512" lsb="0"/>
- <mtx name=".notdef#12" width="512" lsb="0"/>
- <mtx name=".notdef#13" width="512" lsb="0"/>
- <mtx name=".notdef#14" width="512" lsb="0"/>
- <mtx name=".notdef#15" width="512" lsb="0"/>
- <mtx name=".notdef#16" width="1024" lsb="0"/>
- <mtx name=".notdef#17" width="512" lsb="0"/>
- <mtx name=".notdef#18" width="512" lsb="0"/>
- <mtx name=".notdef#2" width="512" lsb="0"/>
- <mtx name=".notdef#3" width="512" lsb="0"/>
- <mtx name=".notdef#4" width="512" lsb="0"/>
- <mtx name=".notdef#5" width="512" lsb="0"/>
- <mtx name=".notdef#6" width="512" lsb="0"/>
- <mtx name=".notdef#7" width="512" lsb="0"/>
- <mtx name=".notdef#8" width="512" lsb="0"/>
- <mtx name=".notdef#9" width="512" lsb="0"/>
- <mtx name="A" width="1479" lsb="0"/>
- <mtx name="AE" width="1821" lsb="0"/>
- <mtx name="Aacute" width="1479" lsb="0"/>
- <mtx name="Abreve" width="1479" lsb="0"/>
- <mtx name="Acircumflex" width="1479" lsb="0"/>
- <mtx name="Adieresis" width="1479" lsb="0"/>
- <mtx name="Agrave" width="1479" lsb="0"/>
- <mtx name="Amacron" width="1479" lsb="0"/>
- <mtx name="Aogonek" width="1479" lsb="0"/>
- <mtx name="Aring" width="1479" lsb="0"/>
- <mtx name="Atilde" width="1479" lsb="0"/>
- <mtx name="B" width="1366" lsb="47"/>
- <mtx name="C" width="1366" lsb="80"/>
- <mtx name="Cacute" width="1366" lsb="80"/>
- <mtx name="Ccaron" width="1366" lsb="80"/>
- <mtx name="Ccedilla" width="1366" lsb="80"/>
- <mtx name="Ccircumflex" width="1366" lsb="80"/>
- <mtx name="Cdotaccent" width="1366" lsb="80"/>
- <mtx name="D" width="1479" lsb="41"/>
- <mtx name="Dcaron" width="1479" lsb="41"/>
- <mtx name="Dcroat" width="1479" lsb="41"/>
- <mtx name="E" width="1251" lsb="43"/>
- <mtx name="Eacute" width="1251" lsb="43"/>
- <mtx name="Ebreve" width="1251" lsb="43"/>
- <mtx name="Ecaron" width="1251" lsb="43"/>
- <mtx name="Ecircumflex" width="1251" lsb="43"/>
- <mtx name="Edieresis" width="1251" lsb="43"/>
- <mtx name="Edotaccent" width="1251" lsb="43"/>
- <mtx name="Egrave" width="1251" lsb="43"/>
- <mtx name="Emacron" width="1251" lsb="43"/>
- <mtx name="Eng" width="1479" lsb="43"/>
- <mtx name="Eogonek" width="1251" lsb="43"/>
- <mtx name="Eth" width="1479" lsb="41"/>
- <mtx name="Euro" width="1024" lsb="0"/>
- <mtx name="Euro#1" width="1024" lsb="0"/>
- <mtx name="F" width="1139" lsb="43"/>
- <mtx name="G" width="1479" lsb="85"/>
- <mtx name="Gbreve" width="1479" lsb="85"/>
- <mtx name="Gcircumflex" width="1479" lsb="85"/>
- <mtx name="Gcommaaccent" width="1479" lsb="85"/>
- <mtx name="Gdotaccent" width="1479" lsb="85"/>
- <mtx name="H" width="1479" lsb="41"/>
- <mtx name="Hbar" width="1479" lsb="41"/>
- <mtx name="Hcircumflex" width="1479" lsb="41"/>
- <mtx name="I" width="682" lsb="51"/>
- <mtx name="IJ" width="1451" lsb="51"/>
- <mtx name="Iacute" width="682" lsb="51"/>
- <mtx name="Ibreve" width="682" lsb="8"/>
- <mtx name="Icircumflex" width="682" lsb="-11"/>
- <mtx name="Idieresis" width="682" lsb="51"/>
- <mtx name="Idotaccent" width="682" lsb="51"/>
- <mtx name="Igrave" width="682" lsb="39"/>
- <mtx name="Imacron" width="682" lsb="20"/>
- <mtx name="Iogonek" width="682" lsb="51"/>
- <mtx name="Itilde" width="682" lsb="8"/>
- <mtx name="J" width="797" lsb="0"/>
- <mtx name="Jcircumflex" width="797" lsb="0"/>
- <mtx name="K" width="1479" lsb="56"/>
- <mtx name="Kcommaaccent" width="1479" lsb="56"/>
- <mtx name="L" width="1251" lsb="56"/>
- <mtx name="Lacute" width="1251" lsb="56"/>
- <mtx name="Lcaron" width="1251" lsb="56"/>
- <mtx name="Lcommaaccent" width="1251" lsb="56"/>
- <mtx name="Ldot" width="1251" lsb="56"/>
- <mtx name="Lslash" width="1251" lsb="56"/>
- <mtx name="M" width="1821" lsb="48"/>
- <mtx name="N" width="1479" lsb="43"/>
- <mtx name="Nacute" width="1479" lsb="43"/>
- <mtx name="Ncaron" width="1479" lsb="43"/>
- <mtx name="Ncommaaccent" width="1479" lsb="43"/>
- <mtx name="Ntilde" width="1479" lsb="43"/>
- <mtx name="O" width="1479" lsb="80"/>
- <mtx name="OE" width="1821" lsb="80"/>
- <mtx name="Oacute" width="1479" lsb="80"/>
- <mtx name="Obreve" width="1479" lsb="80"/>
- <mtx name="Ocircumflex" width="1479" lsb="80"/>
- <mtx name="Odieresis" width="1479" lsb="80"/>
- <mtx name="Ograve" width="1479" lsb="80"/>
- <mtx name="Ohungarumlaut" width="1479" lsb="80"/>
- <mtx name="Omacron" width="1479" lsb="80"/>
- <mtx name="Oslash" width="1479" lsb="80"/>
- <mtx name="Otilde" width="1479" lsb="80"/>
- <mtx name="P" width="1139" lsb="31"/>
- <mtx name="Q" width="1479" lsb="80"/>
- <mtx name="R" width="1366" lsb="31"/>
- <mtx name="Racute" width="1366" lsb="31"/>
- <mtx name="Rcaron" width="1366" lsb="31"/>
- <mtx name="Rcommaaccent" width="1366" lsb="31"/>
- <mtx name="S" width="1139" lsb="119"/>
- <mtx name="Sacute" width="1139" lsb="119"/>
- <mtx name="Scaron" width="1139" lsb="119"/>
- <mtx name="Scedilla" width="1139" lsb="119"/>
- <mtx name="Scircumflex" width="1139" lsb="119"/>
- <mtx name="Scommaaccent" width="1139" lsb="119"/>
- <mtx name="T" width="1251" lsb="31"/>
- <mtx name="Tbar" width="1251" lsb="31"/>
- <mtx name="Tcaron" width="1251" lsb="31"/>
- <mtx name="Tcommaaccent" width="1251" lsb="31"/>
- <mtx name="Tcommabelow" width="1251" lsb="31"/>
- <mtx name="Thorn" width="1139" lsb="43"/>
- <mtx name="U" width="1479" lsb="19"/>
- <mtx name="Uacute" width="1479" lsb="19"/>
- <mtx name="Ubreve" width="1479" lsb="19"/>
- <mtx name="Ucircumflex" width="1479" lsb="19"/>
- <mtx name="Udieresis" width="1479" lsb="19"/>
- <mtx name="Ugrave" width="1479" lsb="19"/>
- <mtx name="Uhungarumlaut" width="1479" lsb="19"/>
- <mtx name="Umacron" width="1479" lsb="19"/>
- <mtx name="Unterkomma" width="682" lsb="170"/>
- <mtx name="Uogonek" width="1479" lsb="19"/>
- <mtx name="Uring" width="1479" lsb="19"/>
- <mtx name="Utilde" width="1479" lsb="19"/>
- <mtx name="V" width="1479" lsb="0"/>
- <mtx name="W" width="1933" lsb="0"/>
- <mtx name="Wcircumflex" width="1933" lsb="0"/>
- <mtx name="X" width="1479" lsb="12"/>
- <mtx name="Y" width="1479" lsb="0"/>
- <mtx name="Yacute" width="1479" lsb="0"/>
- <mtx name="Ycircumflex" width="1479" lsb="0"/>
- <mtx name="Ydieresis" width="1479" lsb="0"/>
- <mtx name="Z" width="1251" lsb="92"/>
- <mtx name="Zacute" width="1251" lsb="92"/>
- <mtx name="Zcaron" width="1251" lsb="92"/>
- <mtx name="Zdotaccent" width="1251" lsb="92"/>
- <mtx name="a" width="909" lsb="75"/>
- <mtx name="aacute" width="909" lsb="75"/>
- <mtx name="abreve" width="909" lsb="75"/>
- <mtx name="acircumflex" width="909" lsb="75"/>
- <mtx name="acute" width="682" lsb="91"/>
- <mtx name="adieresis" width="909" lsb="75"/>
- <mtx name="ae" width="1366" lsb="75"/>
- <mtx name="afii00208" width="2048" lsb="99"/>
- <mtx name="agrave" width="909" lsb="75"/>
- <mtx name="amacron" width="909" lsb="75"/>
- <mtx name="ampersand" width="1593" lsb="99"/>
- <mtx name="anoteleia" width="512" lsb="133"/>
- <mtx name="aogonek" width="909" lsb="75"/>
- <mtx name="aring" width="909" lsb="75"/>
- <mtx name="asciicircum" width="960" lsb="36"/>
- <mtx name="asciitilde" width="1108" lsb="60"/>
- <mtx name="asterisk" width="1024" lsb="120"/>
- <mtx name="at" width="1886" lsb="140"/>
- <mtx name="atilde" width="909" lsb="75"/>
- <mtx name="b" width="1024" lsb="0"/>
- <mtx name="backslash" width="569" lsb="-30"/>
- <mtx name="bar" width="410" lsb="156"/>
- <mtx name="braceleft" width="983" lsb="148"/>
- <mtx name="braceright" width="983" lsb="222"/>
- <mtx name="bracketleft" width="682" lsb="185"/>
- <mtx name="bracketright" width="682" lsb="93"/>
- <mtx name="breve" width="682" lsb="8"/>
- <mtx name="brokenbar" width="410" lsb="156"/>
- <mtx name="bullet" width="717" lsb="81"/>
- <mtx name="c" width="909" lsb="68"/>
- <mtx name="cacute" width="909" lsb="68"/>
- <mtx name="caron" width="682" lsb="-10"/>
- <mtx name="ccaron" width="909" lsb="68"/>
- <mtx name="ccedilla" width="909" lsb="68"/>
- <mtx name="ccircumflex" width="909" lsb="68"/>
- <mtx name="cdotaccent" width="909" lsb="68"/>
- <mtx name="cedilla" width="682" lsb="168"/>
- <mtx name="cent" width="1024" lsb="123"/>
- <mtx name="circumflex" width="682" lsb="-10"/>
- <mtx name="colon" width="569" lsb="161"/>
- <mtx name="comma" width="512" lsb="133"/>
- <mtx name="copyright" width="1556" lsb="87"/>
- <mtx name="currency" width="1024" lsb="130"/>
- <mtx name="d" width="1024" lsb="68"/>
- <mtx name="dagger" width="1024" lsb="80"/>
- <mtx name="daggerdbl" width="1024" lsb="80"/>
- <mtx name="dcaron" width="1324" lsb="68"/>
- <mtx name="dcroat" width="1024" lsb="68"/>
- <mtx name="degree" width="819" lsb="114"/>
- <mtx name="dieresis" width="682" lsb="57"/>
- <mtx name="divide" width="1155" lsb="84"/>
- <mtx name="dollar" width="1024" lsb="80"/>
- <mtx name="dotaccent" width="682" lsb="242"/>
- <mtx name="dotlessi" width="569" lsb="47"/>
- <mtx name="dotlessj" width="569" lsb="-78"/>
- <mtx name="dotmath" width="512" lsb="133"/>
- <mtx name="e" width="909" lsb="68"/>
- <mtx name="eacute" width="909" lsb="68"/>
- <mtx name="ebreve" width="909" lsb="68"/>
- <mtx name="ecaron" width="909" lsb="68"/>
- <mtx name="ecircumflex" width="909" lsb="68"/>
- <mtx name="edieresis" width="909" lsb="68"/>
- <mtx name="edotaccent" width="909" lsb="68"/>
- <mtx name="egrave" width="909" lsb="68"/>
- <mtx name="eight" width="1024" lsb="40"/>
- <mtx name="ellipsis" width="2048" lsb="243"/>
- <mtx name="emacron" width="909" lsb="68"/>
- <mtx name="emdash" width="2048" lsb="99"/>
- <mtx name="endash" width="1024" lsb="86"/>
- <mtx name="eng" width="1024" lsb="37"/>
- <mtx name="eogonek" width="909" lsb="68"/>
- <mtx name="equal" width="1155" lsb="84"/>
- <mtx name="estimated" width="909" lsb="68"/>
- <mtx name="eth" width="1024" lsb="17"/>
- <mtx name="exclam" width="682" lsb="242"/>
- <mtx name="exclamdown" width="682" lsb="242"/>
- <mtx name="f" width="682" lsb="37"/>
- <mtx name="fi" width="1139" lsb="37"/>
- <mtx name="fi#1" width="1139" lsb="37"/>
- <mtx name="figuredash" width="1024" lsb="86"/>
- <mtx name="five" width="1024" lsb="130"/>
- <mtx name="fl" width="1139" lsb="37"/>
- <mtx name="fl#1" width="1139" lsb="37"/>
- <mtx name="florin" width="1024" lsb="12"/>
- <mtx name="four" width="1024" lsb="25"/>
- <mtx name="foursuperiour" width="614" lsb="31"/>
- <mtx name="fraction" width="342" lsb="-416"/>
- <mtx name="fraction#1" width="342" lsb="-416"/>
- <mtx name="g" width="1024" lsb="53"/>
- <mtx name="gbreve" width="1024" lsb="53"/>
- <mtx name="gcircumflex" width="1024" lsb="53"/>
- <mtx name="gcommaaccent" width="1024" lsb="53"/>
- <mtx name="gdotaccent" width="1024" lsb="53"/>
- <mtx name="germandbls" width="1024" lsb="27"/>
- <mtx name="grave" width="682" lsb="91"/>
- <mtx name="greater" width="1155" lsb="84"/>
- <mtx name="guillemotleft" width="1024" lsb="74"/>
- <mtx name="guillemotright" width="1024" lsb="86"/>
- <mtx name="guilsinglleft" width="682" lsb="86"/>
- <mtx name="guilsinglright" width="682" lsb="123"/>
- <mtx name="h" width="1024" lsb="37"/>
- <mtx name="hbar" width="1024" lsb="37"/>
- <mtx name="hcircumflex" width="1024" lsb="37"/>
- <mtx name="hungarumlaut" width="682" lsb="-5"/>
- <mtx name="hyphen" width="682" lsb="82"/>
- <mtx name="hyphen#1" width="682" lsb="82"/>
- <mtx name="i" width="569" lsb="47"/>
- <mtx name="iacute" width="569" lsb="47"/>
- <mtx name="ibreve" width="569" lsb="-42"/>
- <mtx name="icircumflex" width="569" lsb="-61"/>
- <mtx name="idieresis" width="569" lsb="7"/>
- <mtx name="igrave" width="569" lsb="7"/>
- <mtx name="ij" width="1131" lsb="47"/>
- <mtx name="imacron" width="569" lsb="-40"/>
- <mtx name="iogonek" width="569" lsb="47"/>
- <mtx name="itilde" width="569" lsb="-55"/>
- <mtx name="j" width="569" lsb="-78"/>
- <mtx name="jcircumflex" width="569" lsb="-78"/>
- <mtx name="k" width="1024" lsb="31"/>
- <mtx name="kcommaaccent" width="1024" lsb="31"/>
- <mtx name="kgreenlandic" width="1024" lsb="37"/>
- <mtx name="l" width="569" lsb="47"/>
- <mtx name="lacute" width="569" lsb="47"/>
- <mtx name="lcaron" width="832" lsb="47"/>
- <mtx name="lcommaaccent" width="569" lsb="47"/>
- <mtx name="ldot" width="704" lsb="47"/>
- <mtx name="less" width="1155" lsb="84"/>
- <mtx name="logicalnot" width="1155" lsb="84"/>
- <mtx name="longs" width="569" lsb="37"/>
- <mtx name="lslash" width="569" lsb="47"/>
- <mtx name="m" width="1593" lsb="37"/>
- <mtx name="macron" width="682" lsb="20"/>
- <mtx name="macron#1" width="1024" lsb="99"/>
- <mtx name="minus" width="1628" lsb="222"/>
- <mtx name="mu" width="1024" lsb="12"/>
- <mtx name="multiply" width="1155" lsb="84"/>
- <mtx name="n" width="1024" lsb="37"/>
- <mtx name="nacute" width="1024" lsb="37"/>
- <mtx name="napostrophe" width="1237" lsb="25"/>
- <mtx name="nbhyphen" width="682" lsb="82"/>
- <mtx name="ncaron" width="1024" lsb="37"/>
- <mtx name="ncommaaccent" width="1024" lsb="37"/>
- <mtx name="nine" width="1024" lsb="37"/>
- <mtx name="nonbreakingspace" width="512" lsb="0"/>
- <mtx name="ntilde" width="1024" lsb="37"/>
- <mtx name="numbersign" width="1024" lsb="0"/>
- <mtx name="o" width="1024" lsb="62"/>
- <mtx name="oacute" width="1024" lsb="62"/>
- <mtx name="obreve" width="1024" lsb="62"/>
- <mtx name="ocircumflex" width="1024" lsb="62"/>
- <mtx name="odieresis" width="1024" lsb="62"/>
- <mtx name="oe" width="1479" lsb="62"/>
- <mtx name="ogonek" width="682" lsb="156"/>
- <mtx name="ograve" width="1024" lsb="62"/>
- <mtx name="ohungarumlaut" width="1024" lsb="62"/>
- <mtx name="omacron" width="1024" lsb="62"/>
- <mtx name="one" width="1024" lsb="130"/>
- <mtx name="onehalf" width="1536" lsb="173"/>
- <mtx name="onequarter" width="1536" lsb="173"/>
- <mtx name="onesuperior" width="614" lsb="136"/>
- <mtx name="ordfeminine" width="565" lsb="25"/>
- <mtx name="ordmasculine" width="635" lsb="25"/>
- <mtx name="oslash" width="1024" lsb="62"/>
- <mtx name="otilde" width="1024" lsb="62"/>
- <mtx name="p" width="1024" lsb="0"/>
- <mtx name="paragraph" width="928" lsb="15"/>
- <mtx name="parenleft" width="682" lsb="116"/>
- <mtx name="parenright" width="682" lsb="104"/>
- <mtx name="percent" width="1706" lsb="120"/>
- <mtx name="period" width="512" lsb="133"/>
- <mtx name="periodcentered" width="512" lsb="133"/>
- <mtx name="periodcentered#1" width="512" lsb="133"/>
- <mtx name="perthousand" width="2048" lsb="34"/>
- <mtx name="plus" width="1155" lsb="84"/>
- <mtx name="plusminus" width="1155" lsb="84"/>
- <mtx name="q" width="1024" lsb="68"/>
- <mtx name="question" width="909" lsb="51"/>
- <mtx name="questiondown" width="909" lsb="51"/>
- <mtx name="quotedbl" width="836" lsb="146"/>
- <mtx name="quotedblbase" width="909" lsb="146"/>
- <mtx name="quotedblleft" width="909" lsb="122"/>
- <mtx name="quotedblright" width="909" lsb="146"/>
- <mtx name="quoteleft" width="682" lsb="205"/>
- <mtx name="quotereversed" width="512" lsb="0"/>
- <mtx name="quoteright" width="682" lsb="230"/>
- <mtx name="quotesinglbase" width="682" lsb="230"/>
- <mtx name="quotesingle" width="369" lsb="61"/>
- <mtx name="r" width="682" lsb="31"/>
- <mtx name="racute" width="682" lsb="31"/>
- <mtx name="radicalex" width="1024" lsb="99"/>
- <mtx name="rcaron" width="682" lsb="-12"/>
- <mtx name="rcommaaccent" width="682" lsb="31"/>
- <mtx name="registered" width="1556" lsb="87"/>
- <mtx name="ring" width="682" lsb="114"/>
- <mtx name="s" width="797" lsb="95"/>
- <mtx name="sacute" width="797" lsb="95"/>
- <mtx name="scaron" width="797" lsb="66"/>
- <mtx name="scedilla" width="797" lsb="95"/>
- <mtx name="scircumflex" width="797" lsb="62"/>
- <mtx name="scommaaccent" width="797" lsb="95"/>
- <mtx name="section" width="1024" lsb="75"/>
- <mtx name="semicolon" width="569" lsb="161"/>
- <mtx name="semicolon#1" width="569" lsb="161"/>
- <mtx name="seven" width="1024" lsb="108"/>
- <mtx name="sfthyphen" width="682" lsb="82"/>
- <mtx name="six" width="1024" lsb="49"/>
- <mtx name="slash" width="569" lsb="-30"/>
- <mtx name="space" width="512" lsb="0"/>
- <mtx name="sterling" width="1024" lsb="74"/>
- <mtx name="t" width="569" lsb="25"/>
- <mtx name="tbar" width="569" lsb="25"/>
- <mtx name="tcaron" width="666" lsb="25"/>
- <mtx name="tcommaaccent" width="569" lsb="25"/>
- <mtx name="tcommabelow" width="569" lsb="25"/>
- <mtx name="thorn" width="1024" lsb="0"/>
- <mtx name="three" width="1024" lsb="93"/>
- <mtx name="threequarters" width="1536" lsb="173"/>
- <mtx name="threesuperior" width="614" lsb="86"/>
- <mtx name="tilde" width="682" lsb="8"/>
- <mtx name="trademark" width="2007" lsb="140"/>
- <mtx name="two" width="1024" lsb="68"/>
- <mtx name="twosuperior" width="614" lsb="86"/>
- <mtx name="u" width="1024" lsb="12"/>
- <mtx name="uacute" width="1024" lsb="12"/>
- <mtx name="ubreve" width="1024" lsb="12"/>
- <mtx name="ucircumflex" width="1024" lsb="12"/>
- <mtx name="udieresis" width="1024" lsb="12"/>
- <mtx name="ugrave" width="1024" lsb="12"/>
- <mtx name="uhungarumlaut" width="1024" lsb="12"/>
- <mtx name="umacron" width="1024" lsb="12"/>
- <mtx name="underscore" width="1024" lsb="0"/>
- <mtx name="uogonek" width="1024" lsb="12"/>
- <mtx name="uring" width="1024" lsb="12"/>
- <mtx name="utilde" width="1024" lsb="12"/>
- <mtx name="v" width="1024" lsb="0"/>
- <mtx name="w" width="1479" lsb="0"/>
- <mtx name="wcircumflex" width="1479" lsb="0"/>
- <mtx name="x" width="1024" lsb="0"/>
- <mtx name="y" width="1024" lsb="0"/>
- <mtx name="yacute" width="1024" lsb="0"/>
- <mtx name="ycircumflex" width="1024" lsb="0"/>
- <mtx name="ydieresis" width="1024" lsb="0"/>
- <mtx name="yen" width="1024" lsb="0"/>
- <mtx name="z" width="909" lsb="62"/>
- <mtx name="zacute" width="909" lsb="62"/>
- <mtx name="zcaron" width="909" lsb="62"/>
- <mtx name="zdotaccent" width="909" lsb="62"/>
- <mtx name="zero" width="1024" lsb="56"/>
- </hmtx>
-
- <cmap>
- <tableVersion version="0"/>
- <cmap_format_0 platformID="1" platEncID="0" language="0">
- <map code="0x0" name=".notdef#1"/>
- <map code="0x1" name=".notdef"/>
- <map code="0x2" name=".notdef"/>
- <map code="0x3" name=".notdef"/>
- <map code="0x4" name=".notdef"/>
- <map code="0x5" name=".notdef"/>
- <map code="0x6" name=".notdef"/>
- <map code="0x7" name=".notdef"/>
- <map code="0x8" name=".notdef#1"/>
- <map code="0x9" name="space"/>
- <map code="0xa" name=".notdef"/>
- <map code="0xb" name=".notdef"/>
- <map code="0xc" name=".notdef"/>
- <map code="0xd" name=".notdef#2"/>
- <map code="0xe" name=".notdef"/>
- <map code="0xf" name=".notdef"/>
- <map code="0x10" name=".notdef"/>
- <map code="0x11" name=".notdef"/>
- <map code="0x12" name=".notdef"/>
- <map code="0x13" name=".notdef"/>
- <map code="0x14" name=".notdef"/>
- <map code="0x15" name=".notdef"/>
- <map code="0x16" name=".notdef"/>
- <map code="0x17" name=".notdef"/>
- <map code="0x18" name=".notdef"/>
- <map code="0x19" name=".notdef"/>
- <map code="0x1a" name=".notdef"/>
- <map code="0x1b" name=".notdef"/>
- <map code="0x1c" name=".notdef"/>
- <map code="0x1d" name=".notdef#1"/>
- <map code="0x1e" name=".notdef"/>
- <map code="0x1f" name=".notdef"/>
- <map code="0x20" name="space"/>
- <map code="0x21" name="exclam"/>
- <map code="0x22" name="quotedbl"/>
- <map code="0x23" name="numbersign"/>
- <map code="0x24" name="dollar"/>
- <map code="0x25" name="percent"/>
- <map code="0x26" name="ampersand"/>
- <map code="0x27" name="quotesingle"/>
- <map code="0x28" name="parenleft"/>
- <map code="0x29" name="parenright"/>
- <map code="0x2a" name="asterisk"/>
- <map code="0x2b" name="plus"/>
- <map code="0x2c" name="comma"/>
- <map code="0x2d" name="hyphen"/>
- <map code="0x2e" name="period"/>
- <map code="0x2f" name="slash"/>
- <map code="0x30" name="zero"/>
- <map code="0x31" name="one"/>
- <map code="0x32" name="two"/>
- <map code="0x33" name="three"/>
- <map code="0x34" name="four"/>
- <map code="0x35" name="five"/>
- <map code="0x36" name="six"/>
- <map code="0x37" name="seven"/>
- <map code="0x38" name="eight"/>
- <map code="0x39" name="nine"/>
- <map code="0x3a" name="colon"/>
- <map code="0x3b" name="semicolon"/>
- <map code="0x3c" name="less"/>
- <map code="0x3d" name="equal"/>
- <map code="0x3e" name="greater"/>
- <map code="0x3f" name="question"/>
- <map code="0x40" name="at"/>
- <map code="0x41" name="A"/>
- <map code="0x42" name="B"/>
- <map code="0x43" name="C"/>
- <map code="0x44" name="D"/>
- <map code="0x45" name="E"/>
- <map code="0x46" name="F"/>
- <map code="0x47" name="G"/>
- <map code="0x48" name="H"/>
- <map code="0x49" name="I"/>
- <map code="0x4a" name="J"/>
- <map code="0x4b" name="K"/>
- <map code="0x4c" name="L"/>
- <map code="0x4d" name="M"/>
- <map code="0x4e" name="N"/>
- <map code="0x4f" name="O"/>
- <map code="0x50" name="P"/>
- <map code="0x51" name="Q"/>
- <map code="0x52" name="R"/>
- <map code="0x53" name="S"/>
- <map code="0x54" name="T"/>
- <map code="0x55" name="U"/>
- <map code="0x56" name="V"/>
- <map code="0x57" name="W"/>
- <map code="0x58" name="X"/>
- <map code="0x59" name="Y"/>
- <map code="0x5a" name="Z"/>
- <map code="0x5b" name="bracketleft"/>
- <map code="0x5c" name="backslash"/>
- <map code="0x5d" name="bracketright"/>
- <map code="0x5e" name="asciicircum"/>
- <map code="0x5f" name="underscore"/>
- <map code="0x60" name="grave"/>
- <map code="0x61" name="a"/>
- <map code="0x62" name="b"/>
- <map code="0x63" name="c"/>
- <map code="0x64" name="d"/>
- <map code="0x65" name="e"/>
- <map code="0x66" name="f"/>
- <map code="0x67" name="g"/>
- <map code="0x68" name="h"/>
- <map code="0x69" name="i"/>
- <map code="0x6a" name="j"/>
- <map code="0x6b" name="k"/>
- <map code="0x6c" name="l"/>
- <map code="0x6d" name="m"/>
- <map code="0x6e" name="n"/>
- <map code="0x6f" name="o"/>
- <map code="0x70" name="p"/>
- <map code="0x71" name="q"/>
- <map code="0x72" name="r"/>
- <map code="0x73" name="s"/>
- <map code="0x74" name="t"/>
- <map code="0x75" name="u"/>
- <map code="0x76" name="v"/>
- <map code="0x77" name="w"/>
- <map code="0x78" name="x"/>
- <map code="0x79" name="y"/>
- <map code="0x7a" name="z"/>
- <map code="0x7b" name="braceleft"/>
- <map code="0x7c" name="bar"/>
- <map code="0x7d" name="braceright"/>
- <map code="0x7e" name="asciitilde"/>
- <map code="0x7f" name=".notdef"/>
- <map code="0x80" name="Adieresis"/>
- <map code="0x81" name="Aring"/>
- <map code="0x82" name="Ccedilla"/>
- <map code="0x83" name="Eacute"/>
- <map code="0x84" name="Ntilde"/>
- <map code="0x85" name="Odieresis"/>
- <map code="0x86" name="Udieresis"/>
- <map code="0x87" name="aacute"/>
- <map code="0x88" name="agrave"/>
- <map code="0x89" name="acircumflex"/>
- <map code="0x8a" name="adieresis"/>
- <map code="0x8b" name="atilde"/>
- <map code="0x8c" name="aring"/>
- <map code="0x8d" name="ccedilla"/>
- <map code="0x8e" name="eacute"/>
- <map code="0x8f" name="egrave"/>
- <map code="0x90" name="ecircumflex"/>
- <map code="0x91" name="edieresis"/>
- <map code="0x92" name="iacute"/>
- <map code="0x93" name="igrave"/>
- <map code="0x94" name="icircumflex"/>
- <map code="0x95" name="idieresis"/>
- <map code="0x96" name="ntilde"/>
- <map code="0x97" name="oacute"/>
- <map code="0x98" name="ograve"/>
- <map code="0x99" name="ocircumflex"/>
- <map code="0x9a" name="odieresis"/>
- <map code="0x9b" name="otilde"/>
- <map code="0x9c" name="uacute"/>
- <map code="0x9d" name="ugrave"/>
- <map code="0x9e" name="ucircumflex"/>
- <map code="0x9f" name="udieresis"/>
- <map code="0xa0" name="dagger"/>
- <map code="0xa1" name="degree"/>
- <map code="0xa2" name="cent"/>
- <map code="0xa3" name="sterling"/>
- <map code="0xa4" name="section"/>
- <map code="0xa5" name="bullet"/>
- <map code="0xa6" name="paragraph"/>
- <map code="0xa7" name="germandbls"/>
- <map code="0xa8" name="registered"/>
- <map code="0xa9" name="copyright"/>
- <map code="0xaa" name="trademark"/>
- <map code="0xab" name="acute"/>
- <map code="0xac" name="dieresis"/>
- <map code="0xad" name=".notdef"/>
- <map code="0xae" name="AE"/>
- <map code="0xaf" name="Oslash"/>
- <map code="0xb0" name=".notdef"/>
- <map code="0xb1" name="plusminus"/>
- <map code="0xb2" name=".notdef"/>
- <map code="0xb3" name=".notdef"/>
- <map code="0xb4" name="yen"/>
- <map code="0xb5" name="mu"/>
- <map code="0xb6" name=".notdef"/>
- <map code="0xb7" name=".notdef"/>
- <map code="0xb8" name=".notdef"/>
- <map code="0xb9" name=".notdef"/>
- <map code="0xba" name=".notdef"/>
- <map code="0xbb" name="ordfeminine"/>
- <map code="0xbc" name="ordmasculine"/>
- <map code="0xbd" name=".notdef"/>
- <map code="0xbe" name="ae"/>
- <map code="0xbf" name="oslash"/>
- <map code="0xc0" name="questiondown"/>
- <map code="0xc1" name="exclamdown"/>
- <map code="0xc2" name="logicalnot"/>
- <map code="0xc3" name=".notdef"/>
- <map code="0xc4" name="florin"/>
- <map code="0xc5" name=".notdef"/>
- <map code="0xc6" name=".notdef"/>
- <map code="0xc7" name="guillemotleft"/>
- <map code="0xc8" name="guillemotright"/>
- <map code="0xc9" name="ellipsis"/>
- <map code="0xca" name=".notdef#16"/>
- <map code="0xcb" name="Agrave"/>
- <map code="0xcc" name="Atilde"/>
- <map code="0xcd" name="Otilde"/>
- <map code="0xce" name="OE"/>
- <map code="0xcf" name="oe"/>
- <map code="0xd0" name="endash"/>
- <map code="0xd1" name="emdash"/>
- <map code="0xd2" name="quotedblleft"/>
- <map code="0xd3" name="quotedblright"/>
- <map code="0xd4" name="quoteleft"/>
- <map code="0xd5" name="quoteright"/>
- <map code="0xd6" name="divide"/>
- <map code="0xd7" name=".notdef"/>
- <map code="0xd8" name="ydieresis"/>
- <map code="0xd9" name="Ydieresis"/>
- <map code="0xda" name="fraction"/>
- <map code="0xdb" name="currency"/>
- <map code="0xdc" name="guilsinglleft"/>
- <map code="0xdd" name="guilsinglright"/>
- <map code="0xde" name="fi"/>
- <map code="0xdf" name="fl"/>
- <map code="0xe0" name="daggerdbl"/>
- <map code="0xe1" name="periodcentered"/>
- <map code="0xe2" name="quotesinglbase"/>
- <map code="0xe3" name="quotedblbase"/>
- <map code="0xe4" name="perthousand"/>
- <map code="0xe5" name="Acircumflex"/>
- <map code="0xe6" name="Ecircumflex"/>
- <map code="0xe7" name="Aacute"/>
- <map code="0xe8" name="Edieresis"/>
- <map code="0xe9" name="Egrave"/>
- <map code="0xea" name="Iacute"/>
- <map code="0xeb" name="Icircumflex"/>
- <map code="0xec" name="Idieresis"/>
- <map code="0xed" name="Igrave"/>
- <map code="0xee" name="Oacute"/>
- <map code="0xef" name="Ocircumflex"/>
- <map code="0xf0" name="Euro"/>
- <map code="0xf1" name="Ograve"/>
- <map code="0xf2" name="Uacute"/>
- <map code="0xf3" name="Ucircumflex"/>
- <map code="0xf4" name="Ugrave"/>
- <map code="0xf5" name="dotlessi"/>
- <map code="0xf6" name="circumflex"/>
- <map code="0xf7" name="tilde"/>
- <map code="0xf8" name="macron"/>
- <map code="0xf9" name="breve"/>
- <map code="0xfa" name="dotaccent"/>
- <map code="0xfb" name="ring"/>
- <map code="0xfc" name="cedilla"/>
- <map code="0xfd" name="hungarumlaut"/>
- <map code="0xfe" name="ogonek"/>
- <map code="0xff" name="caron"/>
- </cmap_format_0>
- <cmap_format_4 platformID="3" platEncID="1" language="0">
- <map code="0x20" name="space"/><!-- SPACE -->
- <map code="0x21" name="exclam"/><!-- EXCLAMATION MARK -->
- <map code="0x22" name="quotedbl"/><!-- QUOTATION MARK -->
- <map code="0x23" name="numbersign"/><!-- NUMBER SIGN -->
- <map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
- <map code="0x25" name="percent"/><!-- PERCENT SIGN -->
- <map code="0x26" name="ampersand"/><!-- AMPERSAND -->
- <map code="0x27" name="quotesingle"/><!-- APOSTROPHE -->
- <map code="0x28" name="parenleft"/><!-- LEFT PARENTHESIS -->
- <map code="0x29" name="parenright"/><!-- RIGHT PARENTHESIS -->
- <map code="0x2a" name="asterisk"/><!-- ASTERISK -->
- <map code="0x2b" name="plus"/><!-- PLUS SIGN -->
- <map code="0x2c" name="comma"/><!-- COMMA -->
- <map code="0x2d" name="hyphen"/><!-- HYPHEN-MINUS -->
- <map code="0x2e" name="period"/><!-- FULL STOP -->
- <map code="0x2f" name="slash"/><!-- SOLIDUS -->
- <map code="0x30" name="zero"/><!-- DIGIT ZERO -->
- <map code="0x31" name="one"/><!-- DIGIT ONE -->
- <map code="0x32" name="two"/><!-- DIGIT TWO -->
- <map code="0x33" name="three"/><!-- DIGIT THREE -->
- <map code="0x34" name="four"/><!-- DIGIT FOUR -->
- <map code="0x35" name="five"/><!-- DIGIT FIVE -->
- <map code="0x36" name="six"/><!-- DIGIT SIX -->
- <map code="0x37" name="seven"/><!-- DIGIT SEVEN -->
- <map code="0x38" name="eight"/><!-- DIGIT EIGHT -->
- <map code="0x39" name="nine"/><!-- DIGIT NINE -->
- <map code="0x3a" name="colon"/><!-- COLON -->
- <map code="0x3b" name="semicolon"/><!-- SEMICOLON -->
- <map code="0x3c" name="less"/><!-- LESS-THAN SIGN -->
- <map code="0x3d" name="equal"/><!-- EQUALS SIGN -->
- <map code="0x3e" name="greater"/><!-- GREATER-THAN SIGN -->
- <map code="0x3f" name="question"/><!-- QUESTION MARK -->
- <map code="0x40" name="at"/><!-- COMMERCIAL AT -->
- <map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
- <map code="0x42" name="B"/><!-- LATIN CAPITAL LETTER B -->
- <map code="0x43" name="C"/><!-- LATIN CAPITAL LETTER C -->
- <map code="0x44" name="D"/><!-- LATIN CAPITAL LETTER D -->
- <map code="0x45" name="E"/><!-- LATIN CAPITAL LETTER E -->
- <map code="0x46" name="F"/><!-- LATIN CAPITAL LETTER F -->
- <map code="0x47" name="G"/><!-- LATIN CAPITAL LETTER G -->
- <map code="0x48" name="H"/><!-- LATIN CAPITAL LETTER H -->
- <map code="0x49" name="I"/><!-- LATIN CAPITAL LETTER I -->
- <map code="0x4a" name="J"/><!-- LATIN CAPITAL LETTER J -->
- <map code="0x4b" name="K"/><!-- LATIN CAPITAL LETTER K -->
- <map code="0x4c" name="L"/><!-- LATIN CAPITAL LETTER L -->
- <map code="0x4d" name="M"/><!-- LATIN CAPITAL LETTER M -->
- <map code="0x4e" name="N"/><!-- LATIN CAPITAL LETTER N -->
- <map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
- <map code="0x50" name="P"/><!-- LATIN CAPITAL LETTER P -->
- <map code="0x51" name="Q"/><!-- LATIN CAPITAL LETTER Q -->
- <map code="0x52" name="R"/><!-- LATIN CAPITAL LETTER R -->
- <map code="0x53" name="S"/><!-- LATIN CAPITAL LETTER S -->
- <map code="0x54" name="T"/><!-- LATIN CAPITAL LETTER T -->
- <map code="0x55" name="U"/><!-- LATIN CAPITAL LETTER U -->
- <map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
- <map code="0x57" name="W"/><!-- LATIN CAPITAL LETTER W -->
- <map code="0x58" name="X"/><!-- LATIN CAPITAL LETTER X -->
- <map code="0x59" name="Y"/><!-- LATIN CAPITAL LETTER Y -->
- <map code="0x5a" name="Z"/><!-- LATIN CAPITAL LETTER Z -->
- <map code="0x5b" name="bracketleft"/><!-- LEFT SQUARE BRACKET -->
- <map code="0x5c" name="backslash"/><!-- REVERSE SOLIDUS -->
- <map code="0x5d" name="bracketright"/><!-- RIGHT SQUARE BRACKET -->
- <map code="0x5e" name="asciicircum"/><!-- CIRCUMFLEX ACCENT -->
- <map code="0x5f" name="underscore"/><!-- LOW LINE -->
- <map code="0x60" name="grave"/><!-- GRAVE ACCENT -->
- <map code="0x61" name="a"/><!-- LATIN SMALL LETTER A -->
- <map code="0x62" name="b"/><!-- LATIN SMALL LETTER B -->
- <map code="0x63" name="c"/><!-- LATIN SMALL LETTER C -->
- <map code="0x64" name="d"/><!-- LATIN SMALL LETTER D -->
- <map code="0x65" name="e"/><!-- LATIN SMALL LETTER E -->
- <map code="0x66" name="f"/><!-- LATIN SMALL LETTER F -->
- <map code="0x67" name="g"/><!-- LATIN SMALL LETTER G -->
- <map code="0x68" name="h"/><!-- LATIN SMALL LETTER H -->
- <map code="0x69" name="i"/><!-- LATIN SMALL LETTER I -->
- <map code="0x6a" name="j"/><!-- LATIN SMALL LETTER J -->
- <map code="0x6b" name="k"/><!-- LATIN SMALL LETTER K -->
- <map code="0x6c" name="l"/><!-- LATIN SMALL LETTER L -->
- <map code="0x6d" name="m"/><!-- LATIN SMALL LETTER M -->
- <map code="0x6e" name="n"/><!-- LATIN SMALL LETTER N -->
- <map code="0x6f" name="o"/><!-- LATIN SMALL LETTER O -->
- <map code="0x70" name="p"/><!-- LATIN SMALL LETTER P -->
- <map code="0x71" name="q"/><!-- LATIN SMALL LETTER Q -->
- <map code="0x72" name="r"/><!-- LATIN SMALL LETTER R -->
- <map code="0x73" name="s"/><!-- LATIN SMALL LETTER S -->
- <map code="0x74" name="t"/><!-- LATIN SMALL LETTER T -->
- <map code="0x75" name="u"/><!-- LATIN SMALL LETTER U -->
- <map code="0x76" name="v"/><!-- LATIN SMALL LETTER V -->
- <map code="0x77" name="w"/><!-- LATIN SMALL LETTER W -->
- <map code="0x78" name="x"/><!-- LATIN SMALL LETTER X -->
- <map code="0x79" name="y"/><!-- LATIN SMALL LETTER Y -->
- <map code="0x7a" name="z"/><!-- LATIN SMALL LETTER Z -->
- <map code="0x7b" name="braceleft"/><!-- LEFT CURLY BRACKET -->
- <map code="0x7c" name="bar"/><!-- VERTICAL LINE -->
- <map code="0x7d" name="braceright"/><!-- RIGHT CURLY BRACKET -->
- <map code="0x7e" name="asciitilde"/><!-- TILDE -->
- <map code="0x80" name="Euro#1"/><!-- &lt;control> -->
- <map code="0xa0" name="nonbreakingspace"/><!-- NO-BREAK SPACE -->
- <map code="0xa1" name="exclamdown"/><!-- INVERTED EXCLAMATION MARK -->
- <map code="0xa2" name="cent"/><!-- CENT SIGN -->
- <map code="0xa3" name="sterling"/><!-- POUND SIGN -->
- <map code="0xa4" name="currency"/><!-- CURRENCY SIGN -->
- <map code="0xa5" name="yen"/><!-- YEN SIGN -->
- <map code="0xa6" name="brokenbar"/><!-- BROKEN BAR -->
- <map code="0xa7" name="section"/><!-- SECTION SIGN -->
- <map code="0xa8" name="dieresis"/><!-- DIAERESIS -->
- <map code="0xa9" name="copyright"/><!-- COPYRIGHT SIGN -->
- <map code="0xaa" name="ordfeminine"/><!-- FEMININE ORDINAL INDICATOR -->
- <map code="0xab" name="guillemotleft"/><!-- LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -->
- <map code="0xac" name="logicalnot"/><!-- NOT SIGN -->
- <map code="0xad" name="sfthyphen"/><!-- SOFT HYPHEN -->
- <map code="0xae" name="registered"/><!-- REGISTERED SIGN -->
- <map code="0xaf" name="macron#1"/><!-- MACRON -->
- <map code="0xb0" name="degree"/><!-- DEGREE SIGN -->
- <map code="0xb1" name="plusminus"/><!-- PLUS-MINUS SIGN -->
- <map code="0xb2" name="twosuperior"/><!-- SUPERSCRIPT TWO -->
- <map code="0xb3" name="threesuperior"/><!-- SUPERSCRIPT THREE -->
- <map code="0xb4" name="acute"/><!-- ACUTE ACCENT -->
- <map code="0xb5" name="mu"/><!-- MICRO SIGN -->
- <map code="0xb6" name="paragraph"/><!-- PILCROW SIGN -->
- <map code="0xb7" name="periodcentered#1"/><!-- MIDDLE DOT -->
- <map code="0xb8" name="cedilla"/><!-- CEDILLA -->
- <map code="0xb9" name="onesuperior"/><!-- SUPERSCRIPT ONE -->
- <map code="0xba" name="ordmasculine"/><!-- MASCULINE ORDINAL INDICATOR -->
- <map code="0xbb" name="guillemotright"/><!-- RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
- <map code="0xbc" name="onequarter"/><!-- VULGAR FRACTION ONE QUARTER -->
- <map code="0xbd" name="onehalf"/><!-- VULGAR FRACTION ONE HALF -->
- <map code="0xbe" name="threequarters"/><!-- VULGAR FRACTION THREE QUARTERS -->
- <map code="0xbf" name="questiondown"/><!-- INVERTED QUESTION MARK -->
- <map code="0xc0" name="Agrave"/><!-- LATIN CAPITAL LETTER A WITH GRAVE -->
- <map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
- <map code="0xc2" name="Acircumflex"/><!-- LATIN CAPITAL LETTER A WITH CIRCUMFLEX -->
- <map code="0xc3" name="Atilde"/><!-- LATIN CAPITAL LETTER A WITH TILDE -->
- <map code="0xc4" name="Adieresis"/><!-- LATIN CAPITAL LETTER A WITH DIAERESIS -->
- <map code="0xc5" name="Aring"/><!-- LATIN CAPITAL LETTER A WITH RING ABOVE -->
- <map code="0xc6" name="AE"/><!-- LATIN CAPITAL LETTER AE -->
- <map code="0xc7" name="Ccedilla"/><!-- LATIN CAPITAL LETTER C WITH CEDILLA -->
- <map code="0xc8" name="Egrave"/><!-- LATIN CAPITAL LETTER E WITH GRAVE -->
- <map code="0xc9" name="Eacute"/><!-- LATIN CAPITAL LETTER E WITH ACUTE -->
- <map code="0xca" name="Ecircumflex"/><!-- LATIN CAPITAL LETTER E WITH CIRCUMFLEX -->
- <map code="0xcb" name="Edieresis"/><!-- LATIN CAPITAL LETTER E WITH DIAERESIS -->
- <map code="0xcc" name="Igrave"/><!-- LATIN CAPITAL LETTER I WITH GRAVE -->
- <map code="0xcd" name="Iacute"/><!-- LATIN CAPITAL LETTER I WITH ACUTE -->
- <map code="0xce" name="Icircumflex"/><!-- LATIN CAPITAL LETTER I WITH CIRCUMFLEX -->
- <map code="0xcf" name="Idieresis"/><!-- LATIN CAPITAL LETTER I WITH DIAERESIS -->
- <map code="0xd0" name="Eth"/><!-- LATIN CAPITAL LETTER ETH -->
- <map code="0xd1" name="Ntilde"/><!-- LATIN CAPITAL LETTER N WITH TILDE -->
- <map code="0xd2" name="Ograve"/><!-- LATIN CAPITAL LETTER O WITH GRAVE -->
- <map code="0xd3" name="Oacute"/><!-- LATIN CAPITAL LETTER O WITH ACUTE -->
- <map code="0xd4" name="Ocircumflex"/><!-- LATIN CAPITAL LETTER O WITH CIRCUMFLEX -->
- <map code="0xd5" name="Otilde"/><!-- LATIN CAPITAL LETTER O WITH TILDE -->
- <map code="0xd6" name="Odieresis"/><!-- LATIN CAPITAL LETTER O WITH DIAERESIS -->
- <map code="0xd7" name="multiply"/><!-- MULTIPLICATION SIGN -->
- <map code="0xd8" name="Oslash"/><!-- LATIN CAPITAL LETTER O WITH STROKE -->
- <map code="0xd9" name="Ugrave"/><!-- LATIN CAPITAL LETTER U WITH GRAVE -->
- <map code="0xda" name="Uacute"/><!-- LATIN CAPITAL LETTER U WITH ACUTE -->
- <map code="0xdb" name="Ucircumflex"/><!-- LATIN CAPITAL LETTER U WITH CIRCUMFLEX -->
- <map code="0xdc" name="Udieresis"/><!-- LATIN CAPITAL LETTER U WITH DIAERESIS -->
- <map code="0xdd" name="Yacute"/><!-- LATIN CAPITAL LETTER Y WITH ACUTE -->
- <map code="0xde" name="Thorn"/><!-- LATIN CAPITAL LETTER THORN -->
- <map code="0xdf" name="germandbls"/><!-- LATIN SMALL LETTER SHARP S -->
- <map code="0xe0" name="agrave"/><!-- LATIN SMALL LETTER A WITH GRAVE -->
- <map code="0xe1" name="aacute"/><!-- LATIN SMALL LETTER A WITH ACUTE -->
- <map code="0xe2" name="acircumflex"/><!-- LATIN SMALL LETTER A WITH CIRCUMFLEX -->
- <map code="0xe3" name="atilde"/><!-- LATIN SMALL LETTER A WITH TILDE -->
- <map code="0xe4" name="adieresis"/><!-- LATIN SMALL LETTER A WITH DIAERESIS -->
- <map code="0xe5" name="aring"/><!-- LATIN SMALL LETTER A WITH RING ABOVE -->
- <map code="0xe6" name="ae"/><!-- LATIN SMALL LETTER AE -->
- <map code="0xe7" name="ccedilla"/><!-- LATIN SMALL LETTER C WITH CEDILLA -->
- <map code="0xe8" name="egrave"/><!-- LATIN SMALL LETTER E WITH GRAVE -->
- <map code="0xe9" name="eacute"/><!-- LATIN SMALL LETTER E WITH ACUTE -->
- <map code="0xea" name="ecircumflex"/><!-- LATIN SMALL LETTER E WITH CIRCUMFLEX -->
- <map code="0xeb" name="edieresis"/><!-- LATIN SMALL LETTER E WITH DIAERESIS -->
- <map code="0xec" name="igrave"/><!-- LATIN SMALL LETTER I WITH GRAVE -->
- <map code="0xed" name="iacute"/><!-- LATIN SMALL LETTER I WITH ACUTE -->
- <map code="0xee" name="icircumflex"/><!-- LATIN SMALL LETTER I WITH CIRCUMFLEX -->
- <map code="0xef" name="idieresis"/><!-- LATIN SMALL LETTER I WITH DIAERESIS -->
- <map code="0xf0" name="eth"/><!-- LATIN SMALL LETTER ETH -->
- <map code="0xf1" name="ntilde"/><!-- LATIN SMALL LETTER N WITH TILDE -->
- <map code="0xf2" name="ograve"/><!-- LATIN SMALL LETTER O WITH GRAVE -->
- <map code="0xf3" name="oacute"/><!-- LATIN SMALL LETTER O WITH ACUTE -->
- <map code="0xf4" name="ocircumflex"/><!-- LATIN SMALL LETTER O WITH CIRCUMFLEX -->
- <map code="0xf5" name="otilde"/><!-- LATIN SMALL LETTER O WITH TILDE -->
- <map code="0xf6" name="odieresis"/><!-- LATIN SMALL LETTER O WITH DIAERESIS -->
- <map code="0xf7" name="divide"/><!-- DIVISION SIGN -->
- <map code="0xf8" name="oslash"/><!-- LATIN SMALL LETTER O WITH STROKE -->
- <map code="0xf9" name="ugrave"/><!-- LATIN SMALL LETTER U WITH GRAVE -->
- <map code="0xfa" name="uacute"/><!-- LATIN SMALL LETTER U WITH ACUTE -->
- <map code="0xfb" name="ucircumflex"/><!-- LATIN SMALL LETTER U WITH CIRCUMFLEX -->
- <map code="0xfc" name="udieresis"/><!-- LATIN SMALL LETTER U WITH DIAERESIS -->
- <map code="0xfd" name="yacute"/><!-- LATIN SMALL LETTER Y WITH ACUTE -->
- <map code="0xfe" name="thorn"/><!-- LATIN SMALL LETTER THORN -->
- <map code="0xff" name="ydieresis"/><!-- LATIN SMALL LETTER Y WITH DIAERESIS -->
- <map code="0x100" name="Amacron"/><!-- LATIN CAPITAL LETTER A WITH MACRON -->
- <map code="0x101" name="amacron"/><!-- LATIN SMALL LETTER A WITH MACRON -->
- <map code="0x102" name="Abreve"/><!-- LATIN CAPITAL LETTER A WITH BREVE -->
- <map code="0x103" name="abreve"/><!-- LATIN SMALL LETTER A WITH BREVE -->
- <map code="0x104" name="Aogonek"/><!-- LATIN CAPITAL LETTER A WITH OGONEK -->
- <map code="0x105" name="aogonek"/><!-- LATIN SMALL LETTER A WITH OGONEK -->
- <map code="0x106" name="Cacute"/><!-- LATIN CAPITAL LETTER C WITH ACUTE -->
- <map code="0x107" name="cacute"/><!-- LATIN SMALL LETTER C WITH ACUTE -->
- <map code="0x108" name="Ccircumflex"/><!-- LATIN CAPITAL LETTER C WITH CIRCUMFLEX -->
- <map code="0x109" name="ccircumflex"/><!-- LATIN SMALL LETTER C WITH CIRCUMFLEX -->
- <map code="0x10a" name="Cdotaccent"/><!-- LATIN CAPITAL LETTER C WITH DOT ABOVE -->
- <map code="0x10b" name="cdotaccent"/><!-- LATIN SMALL LETTER C WITH DOT ABOVE -->
- <map code="0x10c" name="Ccaron"/><!-- LATIN CAPITAL LETTER C WITH CARON -->
- <map code="0x10d" name="ccaron"/><!-- LATIN SMALL LETTER C WITH CARON -->
- <map code="0x10e" name="Dcaron"/><!-- LATIN CAPITAL LETTER D WITH CARON -->
- <map code="0x10f" name="dcaron"/><!-- LATIN SMALL LETTER D WITH CARON -->
- <map code="0x110" name="Dcroat"/><!-- LATIN CAPITAL LETTER D WITH STROKE -->
- <map code="0x111" name="dcroat"/><!-- LATIN SMALL LETTER D WITH STROKE -->
- <map code="0x112" name="Emacron"/><!-- LATIN CAPITAL LETTER E WITH MACRON -->
- <map code="0x113" name="emacron"/><!-- LATIN SMALL LETTER E WITH MACRON -->
- <map code="0x114" name="Ebreve"/><!-- LATIN CAPITAL LETTER E WITH BREVE -->
- <map code="0x115" name="ebreve"/><!-- LATIN SMALL LETTER E WITH BREVE -->
- <map code="0x116" name="Edotaccent"/><!-- LATIN CAPITAL LETTER E WITH DOT ABOVE -->
- <map code="0x117" name="edotaccent"/><!-- LATIN SMALL LETTER E WITH DOT ABOVE -->
- <map code="0x118" name="Eogonek"/><!-- LATIN CAPITAL LETTER E WITH OGONEK -->
- <map code="0x119" name="eogonek"/><!-- LATIN SMALL LETTER E WITH OGONEK -->
- <map code="0x11a" name="Ecaron"/><!-- LATIN CAPITAL LETTER E WITH CARON -->
- <map code="0x11b" name="ecaron"/><!-- LATIN SMALL LETTER E WITH CARON -->
- <map code="0x11c" name="Gcircumflex"/><!-- LATIN CAPITAL LETTER G WITH CIRCUMFLEX -->
- <map code="0x11d" name="gcircumflex"/><!-- LATIN SMALL LETTER G WITH CIRCUMFLEX -->
- <map code="0x11e" name="Gbreve"/><!-- LATIN CAPITAL LETTER G WITH BREVE -->
- <map code="0x11f" name="gbreve"/><!-- LATIN SMALL LETTER G WITH BREVE -->
- <map code="0x120" name="Gdotaccent"/><!-- LATIN CAPITAL LETTER G WITH DOT ABOVE -->
- <map code="0x121" name="gdotaccent"/><!-- LATIN SMALL LETTER G WITH DOT ABOVE -->
- <map code="0x122" name="Gcommaaccent"/><!-- LATIN CAPITAL LETTER G WITH CEDILLA -->
- <map code="0x123" name="gcommaaccent"/><!-- LATIN SMALL LETTER G WITH CEDILLA -->
- <map code="0x124" name="Hcircumflex"/><!-- LATIN CAPITAL LETTER H WITH CIRCUMFLEX -->
- <map code="0x125" name="hcircumflex"/><!-- LATIN SMALL LETTER H WITH CIRCUMFLEX -->
- <map code="0x126" name="Hbar"/><!-- LATIN CAPITAL LETTER H WITH STROKE -->
- <map code="0x127" name="hbar"/><!-- LATIN SMALL LETTER H WITH STROKE -->
- <map code="0x128" name="Itilde"/><!-- LATIN CAPITAL LETTER I WITH TILDE -->
- <map code="0x129" name="itilde"/><!-- LATIN SMALL LETTER I WITH TILDE -->
- <map code="0x12a" name="Imacron"/><!-- LATIN CAPITAL LETTER I WITH MACRON -->
- <map code="0x12b" name="imacron"/><!-- LATIN SMALL LETTER I WITH MACRON -->
- <map code="0x12c" name="Ibreve"/><!-- LATIN CAPITAL LETTER I WITH BREVE -->
- <map code="0x12d" name="ibreve"/><!-- LATIN SMALL LETTER I WITH BREVE -->
- <map code="0x12e" name="Iogonek"/><!-- LATIN CAPITAL LETTER I WITH OGONEK -->
- <map code="0x12f" name="iogonek"/><!-- LATIN SMALL LETTER I WITH OGONEK -->
- <map code="0x130" name="Idotaccent"/><!-- LATIN CAPITAL LETTER I WITH DOT ABOVE -->
- <map code="0x131" name="dotlessi"/><!-- LATIN SMALL LETTER DOTLESS I -->
- <map code="0x132" name="IJ"/><!-- LATIN CAPITAL LIGATURE IJ -->
- <map code="0x133" name="ij"/><!-- LATIN SMALL LIGATURE IJ -->
- <map code="0x134" name="Jcircumflex"/><!-- LATIN CAPITAL LETTER J WITH CIRCUMFLEX -->
- <map code="0x135" name="jcircumflex"/><!-- LATIN SMALL LETTER J WITH CIRCUMFLEX -->
- <map code="0x136" name="Kcommaaccent"/><!-- LATIN CAPITAL LETTER K WITH CEDILLA -->
- <map code="0x137" name="kcommaaccent"/><!-- LATIN SMALL LETTER K WITH CEDILLA -->
- <map code="0x138" name="kgreenlandic"/><!-- LATIN SMALL LETTER KRA -->
- <map code="0x139" name="Lacute"/><!-- LATIN CAPITAL LETTER L WITH ACUTE -->
- <map code="0x13a" name="lacute"/><!-- LATIN SMALL LETTER L WITH ACUTE -->
- <map code="0x13b" name="Lcommaaccent"/><!-- LATIN CAPITAL LETTER L WITH CEDILLA -->
- <map code="0x13c" name="lcommaaccent"/><!-- LATIN SMALL LETTER L WITH CEDILLA -->
- <map code="0x13d" name="Lcaron"/><!-- LATIN CAPITAL LETTER L WITH CARON -->
- <map code="0x13e" name="lcaron"/><!-- LATIN SMALL LETTER L WITH CARON -->
- <map code="0x13f" name="Ldot"/><!-- LATIN CAPITAL LETTER L WITH MIDDLE DOT -->
- <map code="0x140" name="ldot"/><!-- LATIN SMALL LETTER L WITH MIDDLE DOT -->
- <map code="0x141" name="Lslash"/><!-- LATIN CAPITAL LETTER L WITH STROKE -->
- <map code="0x142" name="lslash"/><!-- LATIN SMALL LETTER L WITH STROKE -->
- <map code="0x143" name="Nacute"/><!-- LATIN CAPITAL LETTER N WITH ACUTE -->
- <map code="0x144" name="nacute"/><!-- LATIN SMALL LETTER N WITH ACUTE -->
- <map code="0x145" name="Ncommaaccent"/><!-- LATIN CAPITAL LETTER N WITH CEDILLA -->
- <map code="0x146" name="ncommaaccent"/><!-- LATIN SMALL LETTER N WITH CEDILLA -->
- <map code="0x147" name="Ncaron"/><!-- LATIN CAPITAL LETTER N WITH CARON -->
- <map code="0x148" name="ncaron"/><!-- LATIN SMALL LETTER N WITH CARON -->
- <map code="0x149" name="napostrophe"/><!-- LATIN SMALL LETTER N PRECEDED BY APOSTROPHE -->
- <map code="0x14a" name="Eng"/><!-- LATIN CAPITAL LETTER ENG -->
- <map code="0x14b" name="eng"/><!-- LATIN SMALL LETTER ENG -->
- <map code="0x14c" name="Omacron"/><!-- LATIN CAPITAL LETTER O WITH MACRON -->
- <map code="0x14d" name="omacron"/><!-- LATIN SMALL LETTER O WITH MACRON -->
- <map code="0x14e" name="Obreve"/><!-- LATIN CAPITAL LETTER O WITH BREVE -->
- <map code="0x14f" name="obreve"/><!-- LATIN SMALL LETTER O WITH BREVE -->
- <map code="0x150" name="Ohungarumlaut"/><!-- LATIN CAPITAL LETTER O WITH DOUBLE ACUTE -->
- <map code="0x151" name="ohungarumlaut"/><!-- LATIN SMALL LETTER O WITH DOUBLE ACUTE -->
- <map code="0x152" name="OE"/><!-- LATIN CAPITAL LIGATURE OE -->
- <map code="0x153" name="oe"/><!-- LATIN SMALL LIGATURE OE -->
- <map code="0x154" name="Racute"/><!-- LATIN CAPITAL LETTER R WITH ACUTE -->
- <map code="0x155" name="racute"/><!-- LATIN SMALL LETTER R WITH ACUTE -->
- <map code="0x156" name="Rcommaaccent"/><!-- LATIN CAPITAL LETTER R WITH CEDILLA -->
- <map code="0x157" name="rcommaaccent"/><!-- LATIN SMALL LETTER R WITH CEDILLA -->
- <map code="0x158" name="Rcaron"/><!-- LATIN CAPITAL LETTER R WITH CARON -->
- <map code="0x159" name="rcaron"/><!-- LATIN SMALL LETTER R WITH CARON -->
- <map code="0x15a" name="Sacute"/><!-- LATIN CAPITAL LETTER S WITH ACUTE -->
- <map code="0x15b" name="sacute"/><!-- LATIN SMALL LETTER S WITH ACUTE -->
- <map code="0x15c" name="Scircumflex"/><!-- LATIN CAPITAL LETTER S WITH CIRCUMFLEX -->
- <map code="0x15d" name="scircumflex"/><!-- LATIN SMALL LETTER S WITH CIRCUMFLEX -->
- <map code="0x15e" name="Scedilla"/><!-- LATIN CAPITAL LETTER S WITH CEDILLA -->
- <map code="0x15f" name="scedilla"/><!-- LATIN SMALL LETTER S WITH CEDILLA -->
- <map code="0x160" name="Scaron"/><!-- LATIN CAPITAL LETTER S WITH CARON -->
- <map code="0x161" name="scaron"/><!-- LATIN SMALL LETTER S WITH CARON -->
- <map code="0x162" name="Tcommaaccent"/><!-- LATIN CAPITAL LETTER T WITH CEDILLA -->
- <map code="0x163" name="tcommaaccent"/><!-- LATIN SMALL LETTER T WITH CEDILLA -->
- <map code="0x164" name="Tcaron"/><!-- LATIN CAPITAL LETTER T WITH CARON -->
- <map code="0x165" name="tcaron"/><!-- LATIN SMALL LETTER T WITH CARON -->
- <map code="0x166" name="Tbar"/><!-- LATIN CAPITAL LETTER T WITH STROKE -->
- <map code="0x167" name="tbar"/><!-- LATIN SMALL LETTER T WITH STROKE -->
- <map code="0x168" name="Utilde"/><!-- LATIN CAPITAL LETTER U WITH TILDE -->
- <map code="0x169" name="utilde"/><!-- LATIN SMALL LETTER U WITH TILDE -->
- <map code="0x16a" name="Umacron"/><!-- LATIN CAPITAL LETTER U WITH MACRON -->
- <map code="0x16b" name="umacron"/><!-- LATIN SMALL LETTER U WITH MACRON -->
- <map code="0x16c" name="Ubreve"/><!-- LATIN CAPITAL LETTER U WITH BREVE -->
- <map code="0x16d" name="ubreve"/><!-- LATIN SMALL LETTER U WITH BREVE -->
- <map code="0x16e" name="Uring"/><!-- LATIN CAPITAL LETTER U WITH RING ABOVE -->
- <map code="0x16f" name="uring"/><!-- LATIN SMALL LETTER U WITH RING ABOVE -->
- <map code="0x170" name="Uhungarumlaut"/><!-- LATIN CAPITAL LETTER U WITH DOUBLE ACUTE -->
- <map code="0x171" name="uhungarumlaut"/><!-- LATIN SMALL LETTER U WITH DOUBLE ACUTE -->
- <map code="0x172" name="Uogonek"/><!-- LATIN CAPITAL LETTER U WITH OGONEK -->
- <map code="0x173" name="uogonek"/><!-- LATIN SMALL LETTER U WITH OGONEK -->
- <map code="0x174" name="Wcircumflex"/><!-- LATIN CAPITAL LETTER W WITH CIRCUMFLEX -->
- <map code="0x175" name="wcircumflex"/><!-- LATIN SMALL LETTER W WITH CIRCUMFLEX -->
- <map code="0x176" name="Ycircumflex"/><!-- LATIN CAPITAL LETTER Y WITH CIRCUMFLEX -->
- <map code="0x177" name="ycircumflex"/><!-- LATIN SMALL LETTER Y WITH CIRCUMFLEX -->
- <map code="0x178" name="Ydieresis"/><!-- LATIN CAPITAL LETTER Y WITH DIAERESIS -->
- <map code="0x179" name="Zacute"/><!-- LATIN CAPITAL LETTER Z WITH ACUTE -->
- <map code="0x17a" name="zacute"/><!-- LATIN SMALL LETTER Z WITH ACUTE -->
- <map code="0x17b" name="Zdotaccent"/><!-- LATIN CAPITAL LETTER Z WITH DOT ABOVE -->
- <map code="0x17c" name="zdotaccent"/><!-- LATIN SMALL LETTER Z WITH DOT ABOVE -->
- <map code="0x17d" name="Zcaron"/><!-- LATIN CAPITAL LETTER Z WITH CARON -->
- <map code="0x17e" name="zcaron"/><!-- LATIN SMALL LETTER Z WITH CARON -->
- <map code="0x17f" name="longs"/><!-- LATIN SMALL LETTER LONG S -->
- <map code="0x192" name="florin"/><!-- LATIN SMALL LETTER F WITH HOOK -->
- <map code="0x218" name="Scommaaccent"/><!-- LATIN CAPITAL LETTER S WITH COMMA BELOW -->
- <map code="0x219" name="scommaaccent"/><!-- LATIN SMALL LETTER S WITH COMMA BELOW -->
- <map code="0x21a" name="Tcommabelow"/><!-- LATIN CAPITAL LETTER T WITH COMMA BELOW -->
- <map code="0x21b" name="tcommabelow"/><!-- LATIN SMALL LETTER T WITH COMMA BELOW -->
- <map code="0x2c6" name="circumflex"/><!-- MODIFIER LETTER CIRCUMFLEX ACCENT -->
- <map code="0x2c7" name="caron"/><!-- CARON -->
- <map code="0x2c9" name="macron"/><!-- MODIFIER LETTER MACRON -->
- <map code="0x2d8" name="breve"/><!-- BREVE -->
- <map code="0x2d9" name="dotaccent"/><!-- DOT ABOVE -->
- <map code="0x2da" name="ring"/><!-- RING ABOVE -->
- <map code="0x2db" name="ogonek"/><!-- OGONEK -->
- <map code="0x2dc" name="tilde"/><!-- SMALL TILDE -->
- <map code="0x2dd" name="hungarumlaut"/><!-- DOUBLE ACUTE ACCENT -->
- <map code="0x326" name="Unterkomma"/><!-- COMBINING COMMA BELOW -->
- <map code="0x37e" name="semicolon#1"/><!-- GREEK QUESTION MARK -->
- <map code="0x387" name="anoteleia"/><!-- GREEK ANO TELEIA -->
- <map code="0x2010" name="hyphen#1"/><!-- HYPHEN -->
- <map code="0x2011" name="nbhyphen"/><!-- NON-BREAKING HYPHEN -->
- <map code="0x2012" name="figuredash"/><!-- FIGURE DASH -->
- <map code="0x2013" name="endash"/><!-- EN DASH -->
- <map code="0x2014" name="emdash"/><!-- EM DASH -->
- <map code="0x2015" name="afii00208"/><!-- HORIZONTAL BAR -->
- <map code="0x2018" name="quoteleft"/><!-- LEFT SINGLE QUOTATION MARK -->
- <map code="0x2019" name="quoteright"/><!-- RIGHT SINGLE QUOTATION MARK -->
- <map code="0x201a" name="quotesinglbase"/><!-- SINGLE LOW-9 QUOTATION MARK -->
- <map code="0x201b" name="quotereversed"/><!-- SINGLE HIGH-REVERSED-9 QUOTATION MARK -->
- <map code="0x201c" name="quotedblleft"/><!-- LEFT DOUBLE QUOTATION MARK -->
- <map code="0x201d" name="quotedblright"/><!-- RIGHT DOUBLE QUOTATION MARK -->
- <map code="0x201e" name="quotedblbase"/><!-- DOUBLE LOW-9 QUOTATION MARK -->
- <map code="0x2020" name="dagger"/><!-- DAGGER -->
- <map code="0x2021" name="daggerdbl"/><!-- DOUBLE DAGGER -->
- <map code="0x2022" name="bullet"/><!-- BULLET -->
- <map code="0x2026" name="ellipsis"/><!-- HORIZONTAL ELLIPSIS -->
- <map code="0x2030" name="perthousand"/><!-- PER MILLE SIGN -->
- <map code="0x2039" name="guilsinglleft"/><!-- SINGLE LEFT-POINTING ANGLE QUOTATION MARK -->
- <map code="0x203a" name="guilsinglright"/><!-- SINGLE RIGHT-POINTING ANGLE QUOTATION MARK -->
- <map code="0x203e" name="radicalex"/><!-- OVERLINE -->
- <map code="0x2044" name="fraction"/><!-- FRACTION SLASH -->
- <map code="0x20ac" name="Euro"/><!-- EURO SIGN -->
- <map code="0x2122" name="trademark"/><!-- TRADE MARK SIGN -->
- <map code="0x212e" name="estimated"/><!-- ESTIMATED SYMBOL -->
- <map code="0x2212" name="minus"/><!-- MINUS SIGN -->
- <map code="0x2215" name="fraction#1"/><!-- DIVISION SLASH -->
- <map code="0x2219" name="periodcentered"/><!-- BULLET OPERATOR -->
- <map code="0x22c5" name="dotmath"/><!-- DOT OPERATOR -->
- <map code="0xea01" name="fi#1"/><!-- Private Use -->
- <map code="0xea02" name="fl#1"/><!-- Private Use -->
- <map code="0xf001" name="fi"/><!-- Private Use -->
- <map code="0xf002" name="fl"/><!-- Private Use -->
- <map code="0xf004" name="foursuperiour"/><!-- Private Use -->
- <map code="0xf6be" name="dotlessj"/><!-- Private Use -->
- <map code="0xfb01" name="fi"/><!-- LATIN SMALL LIGATURE FI -->
- <map code="0xfb02" name="fl"/><!-- LATIN SMALL LIGATURE FL -->
- </cmap_format_4>
- </cmap>
-
- <fpgm>
- <assembly>
- NPUSHB[ ] /* 15 values pushed */
- 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- FDEF[ ]
- SLOOP[ ]
- MDAP[1]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- MDAP[1]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP1[ ]
- SRP2[ ]
- IP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP1[ ]
- SRP2[ ]
- SLOOP[ ]
- IP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- SLOOP[ ]
- MIRP[11101]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- SLOOP[ ]
- MIRP[10100]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- SLOOP[ ]
- MDRP[11101]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- SLOOP[ ]
- MDRP[10100]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- MIRP[11101]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- MIRP[10100]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- MDRP[11101]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- MDRP[10100]
- ENDF[ ]
- FDEF[ ]
- MDRP[00100]
- ENDF[ ]
- FDEF[ ]
- MDRP[00000]
- ENDF[ ]
- FDEF[ ]
- SVTCA[0]
- NPUSHB[ ] /* 10 values pushed */
- 1 0 0 1 1 2 2 3 3 0
- SZPS[ ]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SZPS[ ]
- ENDF[ ]
- </assembly>
- </fpgm>
-
- <prep>
- <assembly>
- PUSHB[ ] /* 2 values pushed */
- 48 1
- PUSHW[ ] /* 1 value pushed */
- 329
- RTG[ ]
- SCANCTRL[ ]
- SCANTYPE[ ]
- SCVTCI[ ]
- </assembly>
- </prep>
-
- <cvt>
- <cv index="0" value="1480"/>
- <cv index="1" value="1086"/>
- <cv index="2" value="0"/>
- <cv index="3" value="-512"/>
- <cv index="4" value="196"/>
- <cv index="5" value="200"/>
- <cv index="6" value="247"/>
- <cv index="7" value="84"/>
- <cv index="8" value="87"/>
- <cv index="9" value="101"/>
- <cv index="10" value="212"/>
- <cv index="11" value="63"/>
- <cv index="12" value="125"/>
- <cv index="13" value="172"/>
- <cv index="14" value="65"/>
- <cv index="15" value="114"/>
- <cv index="16" value="183"/>
- <cv index="17" value="70"/>
- <cv index="18" value="171"/>
- <cv index="19" value="149"/>
- <cv index="20" value="140"/>
- <cv index="21" value="77"/>
- <cv index="22" value="121"/>
- <cv index="23" value="138"/>
- <cv index="24" value="159"/>
- <cv index="25" value="53"/>
- <cv index="26" value="165"/>
- <cv index="27" value="285"/>
- <cv index="28" value="186"/>
- <cv index="29" value="128"/>
- <cv index="30" value="193"/>
- <cv index="31" value="145"/>
- <cv index="32" value="210"/>
- <cv index="33" value="220"/>
- <cv index="34" value="230"/>
- <cv index="35" value="94"/>
- <cv index="36" value="227"/>
- <cv index="37" value="213"/>
- <cv index="38" value="68"/>
- <cv index="39" value="131"/>
- <cv index="40" value="217"/>
- <cv index="41" value="104"/>
- <cv index="42" value="80"/>
- <cv index="43" value="108"/>
- <cv index="44" value="126"/>
- <cv index="45" value="39"/>
- <cv index="46" value="90"/>
- <cv index="47" value="147"/>
- <cv index="48" value="135"/>
- </cvt>
-
- <loca>
- <!-- The 'loca' table will be calculated by the compiler -->
- </loca>
-
- <glyf>
-
- <!-- The xMin, yMin, xMax and yMax values
- will be recalculated by the compiler. -->
-
- <TTGlyph name=".notdef" xMin="51" yMin="0" xMax="461" yMax="1480">
- <contour>
- <pt x="51" y="0" on="1"/>
- <pt x="51" y="1480" on="1"/>
- <pt x="461" y="1480" on="1"/>
- <pt x="461" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="410" y="51" on="1"/>
- <pt x="410" y="1429" on="1"/>
- <pt x="102" y="1429" on="1"/>
- <pt x="102" y="51" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 16 values pushed */
- 5 6 2 1 4 7 3 0 5 4 2 3 6 7 1 0
- MDAP[1]
- ALIGNRP[ ]
- MDRP[11100]
- ALIGNRP[ ]
- MDAP[1]
- ALIGNRP[ ]
- MDRP[11100]
- ALIGNRP[ ]
- SVTCA[0]
- MDAP[1]
- ALIGNRP[ ]
- MDRP[11100]
- ALIGNRP[ ]
- MDAP[1]
- ALIGNRP[ ]
- MDRP[11100]
- ALIGNRP[ ]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name=".notdef#1"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#10"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#11"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#12"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#13"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#14"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#15"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#16"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#17"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#18"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#2"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#3"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#4"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#5"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#6"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#7"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#8"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#9"/><!-- contains no outline data -->
-
- <TTGlyph name="A" xMin="0" yMin="0" xMax="1479" yMax="1499">
- <contour>
- <pt x="0" y="0" on="1"/>
- <pt x="0" y="62" on="1"/>
- <pt x="22" y="63" on="1"/>
- <pt x="86" y="67" on="0"/>
- <pt x="102" y="87" on="1"/>
- <pt x="117" y="103" on="0"/>
- <pt x="139" y="154" on="1"/>
- <pt x="185" y="259" on="1"/>
- <pt x="706" y="1499" on="1"/>
- <pt x="776" y="1499" on="1"/>
- <pt x="1295" y="252" on="1"/>
- <pt x="1345" y="149" on="1"/>
- <pt x="1385" y="67" on="0"/>
- <pt x="1457" y="63" on="1"/>
- <pt x="1479" y="62" on="1"/>
- <pt x="1479" y="0" on="1"/>
- <pt x="990" y="0" on="1"/>
- <pt x="990" y="62" on="1"/>
- <pt x="1008" y="62" on="1"/>
- <pt x="1111" y="62" on="0"/>
- <pt x="1111" y="106" on="1"/>
- <pt x="1111" y="160" on="0"/>
- <pt x="1069" y="259" on="1"/>
- <pt x="986" y="456" on="1"/>
- <pt x="352" y="456" on="1"/>
- <pt x="267" y="259" on="1"/>
- <pt x="250" y="220" on="0"/>
- <pt x="245" y="205" on="1"/>
- <pt x="223" y="135" on="1"/>
- <pt x="217" y="116" on="0"/>
- <pt x="217" y="102" on="1"/>
- <pt x="217" y="62" on="0"/>
- <pt x="309" y="62" on="1"/>
- <pt x="325" y="62" on="1"/>
- <pt x="325" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="385" y="537" on="1"/>
- <pt x="950" y="537" on="1"/>
- <pt x="669" y="1211" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 61 values pushed */
- 33 32 18 17 14 10 7 1 8 23 0 3 37 9 8 3 13 35 0 0 24 23 7 1 35
- 1 4 48 84 36 35 1 34 16 15 0 3 2 0 14 37 36 35 34 33 32 30 24 23 20
- 18 17 16 15 14 10 9 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="AE" xMin="0" yMin="0" xMax="1771" yMax="1480">
- <contour>
- <pt x="0" y="0" on="1"/>
- <pt x="0" y="62" on="1"/>
- <pt x="17" y="63" on="1"/>
- <pt x="78" y="68" on="0"/>
- <pt x="128" y="151" on="1"/>
- <pt x="194" y="258" on="1"/>
- <pt x="938" y="1480" on="1"/>
- <pt x="1716" y="1480" on="1"/>
- <pt x="1716" y="1221" on="1"/>
- <pt x="1605" y="1221" on="1"/>
- <pt x="1604" y="1240" on="1"/>
- <pt x="1598" y="1324" on="1"/>
- <pt x="1597" y="1380" on="0"/>
- <pt x="1580" y="1390" on="1"/>
- <pt x="1563" y="1399" on="0"/>
- <pt x="1525" y="1399" on="1"/>
- <pt x="1422" y="1400" on="1"/>
- <pt x="1151" y="1400" on="1"/>
- <pt x="1151" y="808" on="1"/>
- <pt x="1379" y="808" on="1"/>
- <pt x="1442" y="811" on="1"/>
- <pt x="1490" y="812" on="0"/>
- <pt x="1500" y="823" on="1"/>
- <pt x="1507" y="833" on="0"/>
- <pt x="1510" y="859" on="1"/>
- <pt x="1511" y="866" on="1"/>
- <pt x="1510" y="873" on="1"/>
- <pt x="1512" y="878" on="0"/>
- <pt x="1512" y="883" on="1"/>
- <pt x="1512" y="897" on="1"/>
- <pt x="1513" y="913" on="1"/>
- <pt x="1515" y="931" on="1"/>
- <pt x="1607" y="931" on="1"/>
- <pt x="1607" y="605" on="1"/>
- <pt x="1515" y="605" on="1"/>
- <pt x="1513" y="623" on="1"/>
- <pt x="1506" y="708" on="0"/>
- <pt x="1482" y="717" on="1"/>
- <pt x="1457" y="728" on="0"/>
- <pt x="1379" y="728" on="1"/>
- <pt x="1151" y="728" on="1"/>
- <pt x="1151" y="259" on="1"/>
- <pt x="1152" y="123" on="0"/>
- <pt x="1191" y="105" on="1"/>
- <pt x="1227" y="86" on="0"/>
- <pt x="1321" y="86" on="1"/>
- <pt x="1427" y="86" on="1"/>
- <pt x="1568" y="92" on="1"/>
- <pt x="1651" y="93" on="0"/>
- <pt x="1656" y="162" on="1"/>
- <pt x="1659" y="253" on="1"/>
- <pt x="1660" y="271" on="1"/>
- <pt x="1771" y="271" on="1"/>
- <pt x="1771" y="0" on="1"/>
- <pt x="756" y="0" on="1"/>
- <pt x="756" y="62" on="1"/>
- <pt x="774" y="63" on="1"/>
- <pt x="842" y="68" on="1"/>
- <pt x="910" y="73" on="0"/>
- <pt x="921" y="95" on="1"/>
- <pt x="932" y="115" on="0"/>
- <pt x="935" y="160" on="1"/>
- <pt x="941" y="259" on="1"/>
- <pt x="941" y="456" on="1"/>
- <pt x="403" y="456" on="1"/>
- <pt x="281" y="258" on="1"/>
- <pt x="255" y="215" on="0"/>
- <pt x="235" y="179" on="1"/>
- <pt x="229" y="167" on="1"/>
- <pt x="219" y="150" on="0"/>
- <pt x="212" y="138" on="1"/>
- <pt x="205" y="125" on="1"/>
- <pt x="204" y="122" on="0"/>
- <pt x="202" y="120" on="1"/>
- <pt x="192" y="105" on="0"/>
- <pt x="192" y="91" on="1"/>
- <pt x="192" y="65" on="0"/>
- <pt x="265" y="65" on="1"/>
- <pt x="269" y="65" on="1"/>
- <pt x="274" y="65" on="0"/>
- <pt x="288" y="64" on="1"/>
- <pt x="306" y="64" on="1"/>
- <pt x="328" y="63" on="1"/>
- <pt x="351" y="62" on="1"/>
- <pt x="351" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="455" y="537" on="1"/>
- <pt x="941" y="537" on="1"/>
- <pt x="941" y="1338" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 147 values pushed */
- 87 32 31 29 28 11 9 8 8 16 18 3 34 33 2 39 85 3 83 81 80 78 77 62 55
- 52 51 49 47 46 45 41 1 15 63 0 3 0 0 17 16 21 1 6 40 39 21 1 18 64
- 63 7 1 85 3 4 48 84 19 18 1 86 85 1 84 54 53 0 3 3 0 7 6 0 14
- 51 49 2 7 32 3 26 25 47 46 45 39 34 31 29 28 26 25 19 16 11 9 14 32 17
- 3 85 84 83 81 80 78 77 64 55 54 6 1 0 13 13 75 62 0 0 87 86 63 62 32
- 3 17 1 4 48 196 53 52 1 8 7 1 33 32 1 41 40 18 17 3 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Aacute" xMin="0" yMin="0" xMax="1479" yMax="1925">
- <contour>
- <pt x="0" y="0" on="1"/>
- <pt x="0" y="62" on="1"/>
- <pt x="22" y="63" on="1"/>
- <pt x="86" y="67" on="0"/>
- <pt x="102" y="87" on="1"/>
- <pt x="117" y="103" on="0"/>
- <pt x="139" y="154" on="1"/>
- <pt x="185" y="259" on="1"/>
- <pt x="706" y="1499" on="1"/>
- <pt x="776" y="1499" on="1"/>
- <pt x="1295" y="252" on="1"/>
- <pt x="1345" y="149" on="1"/>
- <pt x="1385" y="67" on="0"/>
- <pt x="1457" y="63" on="1"/>
- <pt x="1479" y="62" on="1"/>
- <pt x="1479" y="0" on="1"/>
- <pt x="990" y="0" on="1"/>
- <pt x="990" y="62" on="1"/>
- <pt x="1008" y="62" on="1"/>
- <pt x="1111" y="62" on="0"/>
- <pt x="1111" y="106" on="1"/>
- <pt x="1111" y="160" on="0"/>
- <pt x="1069" y="259" on="1"/>
- <pt x="986" y="456" on="1"/>
- <pt x="352" y="456" on="1"/>
- <pt x="267" y="259" on="1"/>
- <pt x="250" y="220" on="0"/>
- <pt x="245" y="205" on="1"/>
- <pt x="223" y="135" on="1"/>
- <pt x="217" y="116" on="0"/>
- <pt x="217" y="102" on="1"/>
- <pt x="217" y="62" on="0"/>
- <pt x="309" y="62" on="1"/>
- <pt x="325" y="62" on="1"/>
- <pt x="325" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="385" y="537" on="1"/>
- <pt x="950" y="537" on="1"/>
- <pt x="669" y="1211" on="1"/>
- </contour>
- <contour>
- <pt x="613" y="1604" on="1"/>
- <pt x="854" y="1925" on="1"/>
- <pt x="1113" y="1925" on="1"/>
- <pt x="706" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 41 38 37 9 8 5 39 35 3 33 32 18 17 14 10 7 1 8 23 0 3 0 0 24 23
- 7 1 35 1 4 48 84 40 39 1 36 35 1 34 16 15 0 3 3 0 14 41 40 39 38
- 37 36 35 34 33 32 30 24 23 20 18 17 16 15 14 10 9 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Abreve" xMin="0" yMin="0" xMax="1479" yMax="1925">
- <contour>
- <pt x="0" y="0" on="1"/>
- <pt x="0" y="62" on="1"/>
- <pt x="22" y="63" on="1"/>
- <pt x="86" y="67" on="0"/>
- <pt x="102" y="87" on="1"/>
- <pt x="117" y="103" on="0"/>
- <pt x="139" y="154" on="1"/>
- <pt x="185" y="259" on="1"/>
- <pt x="706" y="1499" on="1"/>
- <pt x="776" y="1499" on="1"/>
- <pt x="1295" y="252" on="1"/>
- <pt x="1345" y="149" on="1"/>
- <pt x="1385" y="67" on="0"/>
- <pt x="1457" y="63" on="1"/>
- <pt x="1479" y="62" on="1"/>
- <pt x="1479" y="0" on="1"/>
- <pt x="990" y="0" on="1"/>
- <pt x="990" y="62" on="1"/>
- <pt x="1008" y="62" on="1"/>
- <pt x="1111" y="62" on="0"/>
- <pt x="1111" y="106" on="1"/>
- <pt x="1111" y="160" on="0"/>
- <pt x="1069" y="259" on="1"/>
- <pt x="986" y="456" on="1"/>
- <pt x="352" y="456" on="1"/>
- <pt x="267" y="259" on="1"/>
- <pt x="250" y="220" on="0"/>
- <pt x="245" y="205" on="1"/>
- <pt x="223" y="135" on="1"/>
- <pt x="217" y="116" on="0"/>
- <pt x="217" y="102" on="1"/>
- <pt x="217" y="62" on="0"/>
- <pt x="309" y="62" on="1"/>
- <pt x="325" y="62" on="1"/>
- <pt x="325" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="385" y="537" on="1"/>
- <pt x="950" y="537" on="1"/>
- <pt x="669" y="1211" on="1"/>
- </contour>
- <contour>
- <pt x="408" y="1925" on="1"/>
- <pt x="473" y="1925" on="1"/>
- <pt x="500" y="1835" on="0"/>
- <pt x="560" y="1793" on="1"/>
- <pt x="628" y="1746" on="0"/>
- <pt x="741" y="1746" on="1"/>
- <pt x="867" y="1746" on="0"/>
- <pt x="937" y="1805" on="1"/>
- <pt x="985" y="1845" on="0"/>
- <pt x="1010" y="1925" on="1"/>
- <pt x="1074" y="1925" on="1"/>
- <pt x="1055" y="1790" on="0"/>
- <pt x="983" y="1709" on="1"/>
- <pt x="889" y="1604" on="0"/>
- <pt x="741" y="1604" on="1"/>
- <pt x="587" y="1604" on="0"/>
- <pt x="492" y="1719" on="1"/>
- <pt x="427" y="1797" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 0 0 43 20 52 48 84 33 32 18 17 14 10 7 1 8 23 0 3 48 47 39 38 37 9
- 8 7 13 52 35 0 0 24 23 7 1 35 1 4 48 84 36 35 1 34 16 15 0 3 2
- 0 14 48 47 39 38 37 36 35 34 33 32 30 24 23 20 18 17 16 15 14 10 9 8 7
- 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Acircumflex" xMin="0" yMin="0" xMax="1479" yMax="1925">
- <contour>
- <pt x="0" y="0" on="1"/>
- <pt x="0" y="62" on="1"/>
- <pt x="22" y="63" on="1"/>
- <pt x="86" y="67" on="0"/>
- <pt x="102" y="87" on="1"/>
- <pt x="117" y="103" on="0"/>
- <pt x="139" y="154" on="1"/>
- <pt x="185" y="259" on="1"/>
- <pt x="706" y="1499" on="1"/>
- <pt x="776" y="1499" on="1"/>
- <pt x="1295" y="252" on="1"/>
- <pt x="1345" y="149" on="1"/>
- <pt x="1385" y="67" on="0"/>
- <pt x="1457" y="63" on="1"/>
- <pt x="1479" y="62" on="1"/>
- <pt x="1479" y="0" on="1"/>
- <pt x="990" y="0" on="1"/>
- <pt x="990" y="62" on="1"/>
- <pt x="1008" y="62" on="1"/>
- <pt x="1111" y="62" on="0"/>
- <pt x="1111" y="106" on="1"/>
- <pt x="1111" y="160" on="0"/>
- <pt x="1069" y="259" on="1"/>
- <pt x="986" y="456" on="1"/>
- <pt x="352" y="456" on="1"/>
- <pt x="267" y="259" on="1"/>
- <pt x="250" y="220" on="0"/>
- <pt x="245" y="205" on="1"/>
- <pt x="223" y="135" on="1"/>
- <pt x="217" y="116" on="0"/>
- <pt x="217" y="102" on="1"/>
- <pt x="217" y="62" on="0"/>
- <pt x="309" y="62" on="1"/>
- <pt x="325" y="62" on="1"/>
- <pt x="325" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="385" y="537" on="1"/>
- <pt x="950" y="537" on="1"/>
- <pt x="669" y="1211" on="1"/>
- </contour>
- <contour>
- <pt x="389" y="1604" on="1"/>
- <pt x="630" y="1925" on="1"/>
- <pt x="852" y="1925" on="1"/>
- <pt x="1092" y="1604" on="1"/>
- <pt x="1006" y="1604" on="1"/>
- <pt x="741" y="1826" on="1"/>
- <pt x="475" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 44 43 42 41 38 37 9 8 8 39 35 3 33 32 18 17 14 10 7 1 8 23 0 3 0
- 0 24 23 7 1 35 1 4 48 84 40 39 1 36 35 1 34 16 15 0 3 3 0 14 44
- 43 42 41 40 39 38 37 36 35 34 33 32 30 24 23 20 18 17 16 15 14 10 9 8 7
- 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Adieresis" xMin="0" yMin="0" xMax="1479" yMax="1777">
- <contour>
- <pt x="0" y="0" on="1"/>
- <pt x="0" y="62" on="1"/>
- <pt x="22" y="63" on="1"/>
- <pt x="86" y="67" on="0"/>
- <pt x="102" y="87" on="1"/>
- <pt x="117" y="103" on="0"/>
- <pt x="139" y="154" on="1"/>
- <pt x="185" y="259" on="1"/>
- <pt x="706" y="1499" on="1"/>
- <pt x="776" y="1499" on="1"/>
- <pt x="1295" y="252" on="1"/>
- <pt x="1345" y="149" on="1"/>
- <pt x="1385" y="67" on="0"/>
- <pt x="1457" y="63" on="1"/>
- <pt x="1479" y="62" on="1"/>
- <pt x="1479" y="0" on="1"/>
- <pt x="990" y="0" on="1"/>
- <pt x="990" y="62" on="1"/>
- <pt x="1008" y="62" on="1"/>
- <pt x="1111" y="62" on="0"/>
- <pt x="1111" y="106" on="1"/>
- <pt x="1111" y="160" on="0"/>
- <pt x="1069" y="259" on="1"/>
- <pt x="986" y="456" on="1"/>
- <pt x="352" y="456" on="1"/>
- <pt x="267" y="259" on="1"/>
- <pt x="250" y="220" on="0"/>
- <pt x="245" y="205" on="1"/>
- <pt x="223" y="135" on="1"/>
- <pt x="217" y="116" on="0"/>
- <pt x="217" y="102" on="1"/>
- <pt x="217" y="62" on="0"/>
- <pt x="309" y="62" on="1"/>
- <pt x="325" y="62" on="1"/>
- <pt x="325" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="385" y="537" on="1"/>
- <pt x="950" y="537" on="1"/>
- <pt x="669" y="1211" on="1"/>
- </contour>
- <contour>
- <pt x="457" y="1604" on="1"/>
- <pt x="457" y="1777" on="1"/>
- <pt x="630" y="1777" on="1"/>
- <pt x="630" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="852" y="1604" on="1"/>
- <pt x="852" y="1777" on="1"/>
- <pt x="1025" y="1777" on="1"/>
- <pt x="1025" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 112 values pushed */
- 37 9 8 3 38 35 3 33 32 18 17 14 10 7 1 8 23 0 3 0 0 45 42 41 38
- 13 3 39 24 23 7 1 35 2 4 48 84 44 43 40 39 3 36 35 1 34 16 15 0 3
- 3 0 14 36 23 18 17 16 5 44 42 3 37 9 8 3 42 40 3 15 14 10 3 13 20
- 44 35 34 33 32 24 7 1 0 8 13 30 38 0 0 43 42 13 1 44 41 40 13 1 38
- 2 4 48 196 45 44 1 39 38 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Agrave" xMin="0" yMin="0" xMax="1479" yMax="1925">
- <contour>
- <pt x="0" y="0" on="1"/>
- <pt x="0" y="62" on="1"/>
- <pt x="22" y="63" on="1"/>
- <pt x="86" y="67" on="0"/>
- <pt x="102" y="87" on="1"/>
- <pt x="117" y="103" on="0"/>
- <pt x="139" y="154" on="1"/>
- <pt x="185" y="259" on="1"/>
- <pt x="706" y="1499" on="1"/>
- <pt x="776" y="1499" on="1"/>
- <pt x="1295" y="252" on="1"/>
- <pt x="1345" y="149" on="1"/>
- <pt x="1385" y="67" on="0"/>
- <pt x="1457" y="63" on="1"/>
- <pt x="1479" y="62" on="1"/>
- <pt x="1479" y="0" on="1"/>
- <pt x="990" y="0" on="1"/>
- <pt x="990" y="62" on="1"/>
- <pt x="1008" y="62" on="1"/>
- <pt x="1111" y="62" on="0"/>
- <pt x="1111" y="106" on="1"/>
- <pt x="1111" y="160" on="0"/>
- <pt x="1069" y="259" on="1"/>
- <pt x="986" y="456" on="1"/>
- <pt x="352" y="456" on="1"/>
- <pt x="267" y="259" on="1"/>
- <pt x="250" y="220" on="0"/>
- <pt x="245" y="205" on="1"/>
- <pt x="223" y="135" on="1"/>
- <pt x="217" y="116" on="0"/>
- <pt x="217" y="102" on="1"/>
- <pt x="217" y="62" on="0"/>
- <pt x="309" y="62" on="1"/>
- <pt x="325" y="62" on="1"/>
- <pt x="325" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="385" y="537" on="1"/>
- <pt x="950" y="537" on="1"/>
- <pt x="669" y="1211" on="1"/>
- </contour>
- <contour>
- <pt x="874" y="1604" on="1"/>
- <pt x="781" y="1604" on="1"/>
- <pt x="374" y="1925" on="1"/>
- <pt x="633" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 39 38 37 9 8 5 40 35 3 33 32 18 17 14 10 7 1 8 23 0 3 0 0 24 23
- 7 1 35 1 4 48 84 41 40 1 36 35 1 34 16 15 0 3 3 0 14 41 40 39 38
- 37 36 35 34 33 32 30 24 23 20 18 17 16 15 14 10 9 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Amacron" xMin="0" yMin="0" xMax="1479" yMax="1727">
- <contour>
- <pt x="0" y="0" on="1"/>
- <pt x="0" y="62" on="1"/>
- <pt x="22" y="63" on="1"/>
- <pt x="86" y="67" on="0"/>
- <pt x="102" y="87" on="1"/>
- <pt x="117" y="103" on="0"/>
- <pt x="139" y="154" on="1"/>
- <pt x="185" y="259" on="1"/>
- <pt x="706" y="1499" on="1"/>
- <pt x="776" y="1499" on="1"/>
- <pt x="1295" y="252" on="1"/>
- <pt x="1345" y="149" on="1"/>
- <pt x="1385" y="67" on="0"/>
- <pt x="1457" y="63" on="1"/>
- <pt x="1479" y="62" on="1"/>
- <pt x="1479" y="0" on="1"/>
- <pt x="990" y="0" on="1"/>
- <pt x="990" y="62" on="1"/>
- <pt x="1008" y="62" on="1"/>
- <pt x="1111" y="62" on="0"/>
- <pt x="1111" y="106" on="1"/>
- <pt x="1111" y="160" on="0"/>
- <pt x="1069" y="259" on="1"/>
- <pt x="986" y="456" on="1"/>
- <pt x="352" y="456" on="1"/>
- <pt x="267" y="259" on="1"/>
- <pt x="250" y="220" on="0"/>
- <pt x="245" y="205" on="1"/>
- <pt x="223" y="135" on="1"/>
- <pt x="217" y="116" on="0"/>
- <pt x="217" y="102" on="1"/>
- <pt x="217" y="62" on="0"/>
- <pt x="309" y="62" on="1"/>
- <pt x="325" y="62" on="1"/>
- <pt x="325" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="385" y="537" on="1"/>
- <pt x="950" y="537" on="1"/>
- <pt x="669" y="1211" on="1"/>
- </contour>
- <contour>
- <pt x="420" y="1604" on="1"/>
- <pt x="420" y="1727" on="1"/>
- <pt x="1062" y="1727" on="1"/>
- <pt x="1062" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 37 9 8 3 38 35 3 33 32 18 17 14 10 7 1 8 23 0 3 0 0 41 38 12 1
- 39 24 23 7 1 35 2 4 48 84 40 39 1 36 35 1 34 16 15 0 3 3 0 14 41
- 40 39 38 37 36 35 34 33 32 30 24 23 20 18 17 16 15 14 10 9 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Aogonek" xMin="0" yMin="-370" xMax="1479" yMax="1499">
- <contour>
- <pt x="0" y="0" on="1"/>
- <pt x="0" y="62" on="1"/>
- <pt x="22" y="63" on="1"/>
- <pt x="86" y="67" on="0"/>
- <pt x="102" y="87" on="1"/>
- <pt x="117" y="103" on="0"/>
- <pt x="139" y="154" on="1"/>
- <pt x="185" y="259" on="1"/>
- <pt x="706" y="1499" on="1"/>
- <pt x="776" y="1499" on="1"/>
- <pt x="1295" y="252" on="1"/>
- <pt x="1345" y="149" on="1"/>
- <pt x="1385" y="67" on="0"/>
- <pt x="1457" y="63" on="1"/>
- <pt x="1479" y="62" on="1"/>
- <pt x="1479" y="0" on="1"/>
- <pt x="990" y="0" on="1"/>
- <pt x="990" y="62" on="1"/>
- <pt x="1008" y="62" on="1"/>
- <pt x="1111" y="62" on="0"/>
- <pt x="1111" y="106" on="1"/>
- <pt x="1111" y="160" on="0"/>
- <pt x="1069" y="259" on="1"/>
- <pt x="986" y="456" on="1"/>
- <pt x="352" y="456" on="1"/>
- <pt x="267" y="259" on="1"/>
- <pt x="250" y="220" on="0"/>
- <pt x="245" y="205" on="1"/>
- <pt x="223" y="135" on="1"/>
- <pt x="217" y="116" on="0"/>
- <pt x="217" y="102" on="1"/>
- <pt x="217" y="62" on="0"/>
- <pt x="309" y="62" on="1"/>
- <pt x="325" y="62" on="1"/>
- <pt x="325" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="385" y="537" on="1"/>
- <pt x="950" y="537" on="1"/>
- <pt x="669" y="1211" on="1"/>
- </contour>
- <contour>
- <pt x="1454" y="-273" on="1"/>
- <pt x="1454" y="-341" on="1"/>
- <pt x="1383" y="-370" on="0"/>
- <pt x="1305" y="-370" on="1"/>
- <pt x="1085" y="-370" on="0"/>
- <pt x="1085" y="-211" on="1"/>
- <pt x="1085" y="-90" on="0"/>
- <pt x="1243" y="0" on="1"/>
- <pt x="1350" y="0" on="1"/>
- <pt x="1221" y="-81" on="0"/>
- <pt x="1221" y="-182" on="1"/>
- <pt x="1221" y="-289" on="0"/>
- <pt x="1354" y="-289" on="1"/>
- <pt x="1405" y="-289" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 0 0 50 7 41 48 84 33 32 18 17 14 10 7 1 8 23 0 3 37 9 8 3 13 35
- 39 38 41 0 0 0 24 23 7 1 35 1 4 48 84 36 35 1 46 45 34 16 15 0 5
- 2 0 14 0 0 48 48 43 48 196 46 45 43 39 38 37 36 35 34 33 32 30 24 23 20
- 18 17 16 15 14 10 9 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Aring" xMin="0" yMin="0" xMax="1479" yMax="1934">
- <contour>
- <pt x="0" y="0" on="1"/>
- <pt x="0" y="62" on="1"/>
- <pt x="22" y="63" on="1"/>
- <pt x="86" y="67" on="0"/>
- <pt x="102" y="87" on="1"/>
- <pt x="117" y="103" on="0"/>
- <pt x="139" y="154" on="1"/>
- <pt x="185" y="259" on="1"/>
- <pt x="706" y="1499" on="1"/>
- <pt x="776" y="1499" on="1"/>
- <pt x="1295" y="252" on="1"/>
- <pt x="1345" y="149" on="1"/>
- <pt x="1385" y="67" on="0"/>
- <pt x="1457" y="63" on="1"/>
- <pt x="1479" y="62" on="1"/>
- <pt x="1479" y="0" on="1"/>
- <pt x="990" y="0" on="1"/>
- <pt x="990" y="62" on="1"/>
- <pt x="1008" y="62" on="1"/>
- <pt x="1111" y="62" on="0"/>
- <pt x="1111" y="106" on="1"/>
- <pt x="1111" y="160" on="0"/>
- <pt x="1069" y="259" on="1"/>
- <pt x="986" y="456" on="1"/>
- <pt x="352" y="456" on="1"/>
- <pt x="267" y="259" on="1"/>
- <pt x="250" y="220" on="0"/>
- <pt x="245" y="205" on="1"/>
- <pt x="223" y="135" on="1"/>
- <pt x="217" y="116" on="0"/>
- <pt x="217" y="102" on="1"/>
- <pt x="217" y="62" on="0"/>
- <pt x="309" y="62" on="1"/>
- <pt x="325" y="62" on="1"/>
- <pt x="325" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="385" y="537" on="1"/>
- <pt x="950" y="537" on="1"/>
- <pt x="669" y="1211" on="1"/>
- </contour>
- <contour>
- <pt x="741" y="1934" on="1"/>
- <pt x="835" y="1934" on="0"/>
- <pt x="901" y="1868" on="1"/>
- <pt x="968" y="1802" on="0"/>
- <pt x="968" y="1708" on="1"/>
- <pt x="968" y="1612" on="0"/>
- <pt x="901" y="1546" on="1"/>
- <pt x="835" y="1480" on="0"/>
- <pt x="739" y="1480" on="1"/>
- <pt x="656" y="1480" on="0"/>
- <pt x="594" y="1534" on="1"/>
- <pt x="514" y="1603" on="0"/>
- <pt x="514" y="1707" on="1"/>
- <pt x="514" y="1802" on="0"/>
- <pt x="580" y="1868" on="1"/>
- <pt x="646" y="1934" on="0"/>
- </contour>
- <contour>
- <pt x="741" y="1866" on="1"/>
- <pt x="675" y="1866" on="0"/>
- <pt x="628" y="1819" on="1"/>
- <pt x="582" y="1773" on="0"/>
- <pt x="582" y="1708" on="1"/>
- <pt x="582" y="1642" on="0"/>
- <pt x="628" y="1595" on="1"/>
- <pt x="674" y="1548" on="0"/>
- <pt x="739" y="1548" on="1"/>
- <pt x="800" y="1548" on="0"/>
- <pt x="844" y="1585" on="1"/>
- <pt x="900" y="1633" on="0"/>
- <pt x="900" y="1708" on="1"/>
- <pt x="900" y="1774" on="0"/>
- <pt x="853" y="1820" on="1"/>
- <pt x="806" y="1866" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 93 values pushed */
- 0 0 62 17 46 54 17 38 48 84 46 0 1 37 0 35 2 0 33 32 18 17 14 10 7
- 1 8 23 0 3 1 9 8 2 13 38 0 0 0 0 24 23 7 1 35 1 4 48 84 36
- 35 1 34 16 15 0 3 2 0 14 0 0 66 17 42 58 17 50 48 196 50 42 37 36 35
- 34 33 32 30 24 23 20 18 17 16 15 14 10 9 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Atilde" xMin="0" yMin="0" xMax="1479" yMax="1839">
- <contour>
- <pt x="0" y="0" on="1"/>
- <pt x="0" y="62" on="1"/>
- <pt x="22" y="63" on="1"/>
- <pt x="86" y="67" on="0"/>
- <pt x="102" y="87" on="1"/>
- <pt x="117" y="103" on="0"/>
- <pt x="139" y="154" on="1"/>
- <pt x="185" y="259" on="1"/>
- <pt x="706" y="1499" on="1"/>
- <pt x="776" y="1499" on="1"/>
- <pt x="1295" y="252" on="1"/>
- <pt x="1345" y="149" on="1"/>
- <pt x="1385" y="67" on="0"/>
- <pt x="1457" y="63" on="1"/>
- <pt x="1479" y="62" on="1"/>
- <pt x="1479" y="0" on="1"/>
- <pt x="990" y="0" on="1"/>
- <pt x="990" y="62" on="1"/>
- <pt x="1008" y="62" on="1"/>
- <pt x="1111" y="62" on="0"/>
- <pt x="1111" y="106" on="1"/>
- <pt x="1111" y="160" on="0"/>
- <pt x="1069" y="259" on="1"/>
- <pt x="986" y="456" on="1"/>
- <pt x="352" y="456" on="1"/>
- <pt x="267" y="259" on="1"/>
- <pt x="250" y="220" on="0"/>
- <pt x="245" y="205" on="1"/>
- <pt x="223" y="135" on="1"/>
- <pt x="217" y="116" on="0"/>
- <pt x="217" y="102" on="1"/>
- <pt x="217" y="62" on="0"/>
- <pt x="309" y="62" on="1"/>
- <pt x="325" y="62" on="1"/>
- <pt x="325" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="385" y="537" on="1"/>
- <pt x="950" y="537" on="1"/>
- <pt x="669" y="1211" on="1"/>
- </contour>
- <contour>
- <pt x="408" y="1604" on="1"/>
- <pt x="435" y="1744" on="0"/>
- <pt x="504" y="1797" on="1"/>
- <pt x="558" y="1839" on="0"/>
- <pt x="635" y="1839" on="1"/>
- <pt x="700" y="1839" on="0"/>
- <pt x="753" y="1801" on="1"/>
- <pt x="788" y="1776" on="1"/>
- <pt x="840" y="1739" on="0"/>
- <pt x="894" y="1739" on="1"/>
- <pt x="989" y="1739" on="0"/>
- <pt x="1012" y="1838" on="1"/>
- <pt x="1074" y="1838" on="1"/>
- <pt x="1046" y="1699" on="0"/>
- <pt x="978" y="1646" on="1"/>
- <pt x="924" y="1604" on="0"/>
- <pt x="847" y="1604" on="1"/>
- <pt x="784" y="1604" on="0"/>
- <pt x="729" y="1642" on="1"/>
- <pt x="694" y="1666" on="1"/>
- <pt x="639" y="1704" on="0"/>
- <pt x="588" y="1704" on="1"/>
- <pt x="499" y="1704" on="0"/>
- <pt x="470" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 0 0 59 20 42 47 20 54 48 84 33 32 18 17 14 10 7 1 8 23 0 3 61 50 49
- 38 37 9 8 7 13 54 42 35 0 0 24 23 7 1 35 1 4 48 84 36 35 1 34 16
- 15 0 3 2 0 14 61 50 49 38 37 36 35 34 33 32 30 24 23 20 18 17 16 15 14
- 10 9 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="B" xMin="47" yMin="0" xMax="1245" yMax="1480">
- <contour>
- <pt x="788" y="767" on="1"/>
- <pt x="968" y="742" on="0"/>
- <pt x="1066" y="687" on="1"/>
- <pt x="1245" y="586" on="0"/>
- <pt x="1245" y="371" on="1"/>
- <pt x="1245" y="202" on="0"/>
- <pt x="1130" y="103" on="1"/>
- <pt x="1010" y="0" on="0"/>
- <pt x="676" y="0" on="1"/>
- <pt x="47" y="0" on="1"/>
- <pt x="47" y="62" on="1"/>
- <pt x="66" y="63" on="1"/>
- <pt x="133" y="68" on="1"/>
- <pt x="209" y="74" on="0"/>
- <pt x="219" y="115" on="1"/>
- <pt x="232" y="177" on="0"/>
- <pt x="232" y="259" on="1"/>
- <pt x="232" y="1221" on="1"/>
- <pt x="232" y="1280" on="0"/>
- <pt x="225" y="1333" on="1"/>
- <pt x="219" y="1372" on="0"/>
- <pt x="211" y="1384" on="1"/>
- <pt x="193" y="1410" on="0"/>
- <pt x="133" y="1413" on="1"/>
- <pt x="66" y="1417" on="1"/>
- <pt x="47" y="1419" on="1"/>
- <pt x="47" y="1480" on="1"/>
- <pt x="705" y="1480" on="1"/>
- <pt x="932" y="1480" on="0"/>
- <pt x="1016" y="1437" on="1"/>
- <pt x="1184" y="1351" on="0"/>
- <pt x="1184" y="1150" on="1"/>
- <pt x="1184" y="995" on="0"/>
- <pt x="1091" y="899" on="1"/>
- <pt x="1025" y="830" on="0"/>
- <pt x="913" y="795" on="1"/>
- <pt x="872" y="782" on="0"/>
- </contour>
- <contour>
- <pt x="439" y="734" on="1"/>
- <pt x="439" y="259" on="1"/>
- <pt x="442" y="172" on="1"/>
- <pt x="445" y="97" on="0"/>
- <pt x="493" y="82" on="1"/>
- <pt x="537" y="68" on="0"/>
- <pt x="637" y="68" on="1"/>
- <pt x="1026" y="68" on="0"/>
- <pt x="1026" y="368" on="1"/>
- <pt x="1026" y="591" on="0"/>
- <pt x="857" y="670" on="1"/>
- <pt x="726" y="731" on="0"/>
- </contour>
- <contour>
- <pt x="439" y="802" on="1"/>
- <pt x="550" y="802" on="1"/>
- <pt x="775" y="802" on="0"/>
- <pt x="871" y="877" on="1"/>
- <pt x="968" y="952" on="0"/>
- <pt x="968" y="1129" on="1"/>
- <pt x="968" y="1312" on="0"/>
- <pt x="853" y="1367" on="1"/>
- <pt x="757" y="1413" on="0"/>
- <pt x="539" y="1413" on="1"/>
- <pt x="439" y="1413" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 66 values pushed */
- 17 26 16 9 43 59 58 50 49 43 38 37 0 8 26 8 3 9 8 1 0 27 26 0 14
- 0 0 54 10 31 45 33 4 48 196 26 17 9 16 58 50 27 8 0 5 13 31 4 37 0
- 0 59 49 38 37 32 3 16 1 4 48 196 17 16 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="C" xMin="80" yMin="-37" xMax="1269" yMax="1517">
- <contour>
- <pt x="1269" y="79" on="1"/>
- <pt x="1060" y="-37" on="0"/>
- <pt x="809" y="-37" on="1"/>
- <pt x="472" y="-37" on="0"/>
- <pt x="276" y="173" on="1"/>
- <pt x="80" y="383" on="0"/>
- <pt x="80" y="745" on="1"/>
- <pt x="80" y="1105" on="0"/>
- <pt x="268" y="1311" on="1"/>
- <pt x="455" y="1517" on="0"/>
- <pt x="789" y="1517" on="1"/>
- <pt x="996" y="1517" on="0"/>
- <pt x="1244" y="1443" on="1"/>
- <pt x="1244" y="1160" on="1"/>
- <pt x="1120" y="1160" on="1"/>
- <pt x="1119" y="1180" on="1"/>
- <pt x="1119" y="1185" on="0"/>
- <pt x="1118" y="1212" on="1"/>
- <pt x="1118" y="1223" on="1"/>
- <pt x="1118" y="1233" on="1"/>
- <pt x="1118" y="1239" on="1"/>
- <pt x="1118" y="1326" on="0"/>
- <pt x="1049" y="1381" on="1"/>
- <pt x="963" y="1450" on="0"/>
- <pt x="806" y="1450" on="1"/>
- <pt x="573" y="1450" on="0"/>
- <pt x="440" y="1261" on="1"/>
- <pt x="308" y="1073" on="0"/>
- <pt x="308" y="750" on="1"/>
- <pt x="308" y="425" on="0"/>
- <pt x="462" y="243" on="1"/>
- <pt x="615" y="62" on="0"/>
- <pt x="880" y="62" on="1"/>
- <pt x="1057" y="62" on="0"/>
- <pt x="1269" y="175" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 0 0 32 9 2 24 17 10 48 84 10 0 2 2 1 1 34 20 19 18 17 14 13 12 0
- 9 0 2 3 0 0 14 0 0 28 34 6 48 196 34 0 2 13 12 20 19 18 17 14 5
- 13 6 12 13 12 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Cacute" xMin="80" yMin="-37" xMax="1269" yMax="1925">
- <contour>
- <pt x="1269" y="79" on="1"/>
- <pt x="1060" y="-37" on="0"/>
- <pt x="809" y="-37" on="1"/>
- <pt x="472" y="-37" on="0"/>
- <pt x="276" y="173" on="1"/>
- <pt x="80" y="383" on="0"/>
- <pt x="80" y="745" on="1"/>
- <pt x="80" y="1105" on="0"/>
- <pt x="268" y="1311" on="1"/>
- <pt x="455" y="1517" on="0"/>
- <pt x="789" y="1517" on="1"/>
- <pt x="996" y="1517" on="0"/>
- <pt x="1244" y="1443" on="1"/>
- <pt x="1244" y="1160" on="1"/>
- <pt x="1120" y="1160" on="1"/>
- <pt x="1119" y="1180" on="1"/>
- <pt x="1119" y="1185" on="0"/>
- <pt x="1118" y="1212" on="1"/>
- <pt x="1118" y="1223" on="1"/>
- <pt x="1118" y="1233" on="1"/>
- <pt x="1118" y="1239" on="1"/>
- <pt x="1118" y="1326" on="0"/>
- <pt x="1049" y="1381" on="1"/>
- <pt x="963" y="1450" on="0"/>
- <pt x="806" y="1450" on="1"/>
- <pt x="573" y="1450" on="0"/>
- <pt x="440" y="1261" on="1"/>
- <pt x="308" y="1073" on="0"/>
- <pt x="308" y="750" on="1"/>
- <pt x="308" y="425" on="0"/>
- <pt x="462" y="243" on="1"/>
- <pt x="615" y="62" on="0"/>
- <pt x="880" y="62" on="1"/>
- <pt x="1057" y="62" on="0"/>
- <pt x="1269" y="175" on="1"/>
- </contour>
- <contour>
- <pt x="703" y="1604" on="1"/>
- <pt x="944" y="1925" on="1"/>
- <pt x="1203" y="1925" on="1"/>
- <pt x="796" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 73 values pushed */
- 0 0 32 9 2 24 17 10 48 84 10 0 2 2 1 38 35 2 36 0 3 0 1 1 34
- 20 19 18 17 14 13 12 0 9 0 2 3 0 0 37 36 1 0 14 0 0 28 34 6 48
- 196 34 0 2 13 12 38 37 36 35 20 19 18 17 14 9 13 6 12 13 12 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ccaron" xMin="80" yMin="-37" xMax="1269" yMax="1925">
- <contour>
- <pt x="1269" y="79" on="1"/>
- <pt x="1060" y="-37" on="0"/>
- <pt x="809" y="-37" on="1"/>
- <pt x="472" y="-37" on="0"/>
- <pt x="276" y="173" on="1"/>
- <pt x="80" y="383" on="0"/>
- <pt x="80" y="745" on="1"/>
- <pt x="80" y="1105" on="0"/>
- <pt x="268" y="1311" on="1"/>
- <pt x="455" y="1517" on="0"/>
- <pt x="789" y="1517" on="1"/>
- <pt x="996" y="1517" on="0"/>
- <pt x="1244" y="1443" on="1"/>
- <pt x="1244" y="1160" on="1"/>
- <pt x="1120" y="1160" on="1"/>
- <pt x="1119" y="1180" on="1"/>
- <pt x="1119" y="1185" on="0"/>
- <pt x="1118" y="1212" on="1"/>
- <pt x="1118" y="1223" on="1"/>
- <pt x="1118" y="1233" on="1"/>
- <pt x="1118" y="1239" on="1"/>
- <pt x="1118" y="1326" on="0"/>
- <pt x="1049" y="1381" on="1"/>
- <pt x="963" y="1450" on="0"/>
- <pt x="806" y="1450" on="1"/>
- <pt x="573" y="1450" on="0"/>
- <pt x="440" y="1261" on="1"/>
- <pt x="308" y="1073" on="0"/>
- <pt x="308" y="750" on="1"/>
- <pt x="308" y="425" on="0"/>
- <pt x="462" y="243" on="1"/>
- <pt x="615" y="62" on="0"/>
- <pt x="880" y="62" on="1"/>
- <pt x="1057" y="62" on="0"/>
- <pt x="1269" y="175" on="1"/>
- </contour>
- <contour>
- <pt x="1146" y="1925" on="1"/>
- <pt x="906" y="1604" on="1"/>
- <pt x="684" y="1604" on="1"/>
- <pt x="443" y="1925" on="1"/>
- <pt x="529" y="1925" on="1"/>
- <pt x="795" y="1703" on="1"/>
- <pt x="1060" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 76 values pushed */
- 0 0 32 9 2 24 17 10 48 84 10 0 2 2 1 1 34 20 19 18 17 14 13 12 0
- 9 0 2 3 0 0 41 40 39 38 35 5 13 36 37 36 1 0 14 0 0 28 34 6 48
- 196 34 0 2 13 12 41 40 39 38 37 36 35 20 19 18 17 14 12 13 6 12 13 12 1
- 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ccedilla" xMin="80" yMin="-432" xMax="1269" yMax="1517">
- <contour>
- <pt x="1269" y="79" on="1"/>
- <pt x="1058" y="-37" on="0"/>
- <pt x="809" y="-37" on="1"/>
- <pt x="472" y="-37" on="0"/>
- <pt x="276" y="173" on="1"/>
- <pt x="80" y="383" on="0"/>
- <pt x="80" y="745" on="1"/>
- <pt x="80" y="1105" on="0"/>
- <pt x="268" y="1311" on="1"/>
- <pt x="455" y="1517" on="0"/>
- <pt x="789" y="1517" on="1"/>
- <pt x="996" y="1517" on="0"/>
- <pt x="1244" y="1443" on="1"/>
- <pt x="1244" y="1160" on="1"/>
- <pt x="1120" y="1160" on="1"/>
- <pt x="1119" y="1180" on="1"/>
- <pt x="1119" y="1185" on="0"/>
- <pt x="1118" y="1212" on="1"/>
- <pt x="1118" y="1223" on="1"/>
- <pt x="1118" y="1233" on="1"/>
- <pt x="1118" y="1239" on="1"/>
- <pt x="1118" y="1326" on="0"/>
- <pt x="1049" y="1381" on="1"/>
- <pt x="963" y="1450" on="0"/>
- <pt x="806" y="1450" on="1"/>
- <pt x="572" y="1450" on="0"/>
- <pt x="440" y="1261" on="1"/>
- <pt x="308" y="1072" on="0"/>
- <pt x="308" y="750" on="1"/>
- <pt x="308" y="425" on="0"/>
- <pt x="462" y="243" on="1"/>
- <pt x="615" y="62" on="0"/>
- <pt x="880" y="62" on="1"/>
- <pt x="1057" y="62" on="0"/>
- <pt x="1269" y="175" on="1"/>
- </contour>
- <contour>
- <pt x="619" y="-411" on="1"/>
- <pt x="619" y="-343" on="1"/>
- <pt x="681" y="-359" on="0"/>
- <pt x="720" y="-359" on="1"/>
- <pt x="827" y="-359" on="0"/>
- <pt x="827" y="-277" on="1"/>
- <pt x="827" y="-179" on="0"/>
- <pt x="640" y="-175" on="1"/>
- <pt x="735" y="0" on="1"/>
- <pt x="814" y="0" on="1"/>
- <pt x="748" y="-119" on="1"/>
- <pt x="965" y="-138" on="0"/>
- <pt x="965" y="-266" on="1"/>
- <pt x="965" y="-336" on="0"/>
- <pt x="907" y="-384" on="1"/>
- <pt x="850" y="-432" on="0"/>
- <pt x="763" y="-432" on="1"/>
- <pt x="695" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 82 values pushed */
- 0 0 38 17 51 32 9 2 24 17 10 48 84 10 0 2 2 1 1 34 20 19 18 17 14
- 13 12 0 9 0 2 3 0 0 1 45 44 43 42 36 35 6 13 51 2 0 14 0 0 40
- 48 47 28 34 6 48 196 34 0 2 13 12 45 44 43 42 36 35 20 19 18 17 14 11 13
- 47 6 12 13 12 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ccircumflex" xMin="80" yMin="-37" xMax="1269" yMax="1925">
- <contour>
- <pt x="1269" y="79" on="1"/>
- <pt x="1060" y="-37" on="0"/>
- <pt x="809" y="-37" on="1"/>
- <pt x="472" y="-37" on="0"/>
- <pt x="276" y="173" on="1"/>
- <pt x="80" y="383" on="0"/>
- <pt x="80" y="745" on="1"/>
- <pt x="80" y="1105" on="0"/>
- <pt x="268" y="1311" on="1"/>
- <pt x="455" y="1517" on="0"/>
- <pt x="789" y="1517" on="1"/>
- <pt x="996" y="1517" on="0"/>
- <pt x="1244" y="1443" on="1"/>
- <pt x="1244" y="1160" on="1"/>
- <pt x="1120" y="1160" on="1"/>
- <pt x="1119" y="1180" on="1"/>
- <pt x="1119" y="1185" on="0"/>
- <pt x="1118" y="1212" on="1"/>
- <pt x="1118" y="1223" on="1"/>
- <pt x="1118" y="1233" on="1"/>
- <pt x="1118" y="1239" on="1"/>
- <pt x="1118" y="1326" on="0"/>
- <pt x="1049" y="1381" on="1"/>
- <pt x="963" y="1450" on="0"/>
- <pt x="806" y="1450" on="1"/>
- <pt x="573" y="1450" on="0"/>
- <pt x="440" y="1261" on="1"/>
- <pt x="308" y="1073" on="0"/>
- <pt x="308" y="750" on="1"/>
- <pt x="308" y="425" on="0"/>
- <pt x="462" y="243" on="1"/>
- <pt x="615" y="62" on="0"/>
- <pt x="880" y="62" on="1"/>
- <pt x="1057" y="62" on="0"/>
- <pt x="1269" y="175" on="1"/>
- </contour>
- <contour>
- <pt x="443" y="1604" on="1"/>
- <pt x="684" y="1925" on="1"/>
- <pt x="906" y="1925" on="1"/>
- <pt x="1146" y="1604" on="1"/>
- <pt x="1060" y="1604" on="1"/>
- <pt x="795" y="1826" on="1"/>
- <pt x="529" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 79 values pushed */
- 0 0 32 9 2 24 17 10 48 84 10 0 2 2 1 41 40 39 38 35 5 36 0 3 0
- 1 1 34 20 19 18 17 14 13 12 0 9 0 2 3 0 0 37 36 1 0 14 0 0 28
- 34 6 48 196 34 0 2 13 12 41 40 39 38 37 36 35 20 19 18 17 14 12 13 6 12
- 13 12 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Cdotaccent" xMin="80" yMin="-37" xMax="1269" yMax="1801">
- <contour>
- <pt x="1269" y="79" on="1"/>
- <pt x="1060" y="-37" on="0"/>
- <pt x="809" y="-37" on="1"/>
- <pt x="472" y="-37" on="0"/>
- <pt x="276" y="173" on="1"/>
- <pt x="80" y="383" on="0"/>
- <pt x="80" y="745" on="1"/>
- <pt x="80" y="1105" on="0"/>
- <pt x="268" y="1311" on="1"/>
- <pt x="455" y="1517" on="0"/>
- <pt x="789" y="1517" on="1"/>
- <pt x="996" y="1517" on="0"/>
- <pt x="1244" y="1443" on="1"/>
- <pt x="1244" y="1160" on="1"/>
- <pt x="1120" y="1160" on="1"/>
- <pt x="1119" y="1180" on="1"/>
- <pt x="1119" y="1185" on="0"/>
- <pt x="1118" y="1212" on="1"/>
- <pt x="1118" y="1223" on="1"/>
- <pt x="1118" y="1233" on="1"/>
- <pt x="1118" y="1239" on="1"/>
- <pt x="1118" y="1326" on="0"/>
- <pt x="1049" y="1381" on="1"/>
- <pt x="963" y="1450" on="0"/>
- <pt x="806" y="1450" on="1"/>
- <pt x="573" y="1450" on="0"/>
- <pt x="440" y="1261" on="1"/>
- <pt x="308" y="1073" on="0"/>
- <pt x="308" y="750" on="1"/>
- <pt x="308" y="425" on="0"/>
- <pt x="462" y="243" on="1"/>
- <pt x="615" y="62" on="0"/>
- <pt x="880" y="62" on="1"/>
- <pt x="1057" y="62" on="0"/>
- <pt x="1269" y="175" on="1"/>
- </contour>
- <contour>
- <pt x="696" y="1604" on="1"/>
- <pt x="696" y="1801" on="1"/>
- <pt x="893" y="1801" on="1"/>
- <pt x="893" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 89 values pushed */
- 0 0 32 9 2 24 17 10 48 84 10 0 2 2 1 1 34 20 19 18 17 14 13 12 0
- 9 0 2 3 0 0 0 0 38 35 5 1 36 1 4 48 84 37 36 1 0 14 0 0 28
- 34 6 48 196 20 19 18 17 14 5 12 37 3 34 0 2 13 12 6 35 0 0 36 35 4
- 1 37 1 4 48 196 38 37 1 13 12 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="D" xMin="41" yMin="0" xMax="1399" yMax="1489">
- <contour>
- <pt x="465" y="1480" on="1"/>
- <pt x="536" y="1481" on="1"/>
- <pt x="608" y="1484" on="1"/>
- <pt x="680" y="1485" on="1"/>
- <pt x="989" y="1489" on="0"/>
- <pt x="1176" y="1335" on="1"/>
- <pt x="1399" y="1152" on="0"/>
- <pt x="1399" y="772" on="1"/>
- <pt x="1399" y="414" on="0"/>
- <pt x="1208" y="207" on="1"/>
- <pt x="1017" y="0" on="0"/>
- <pt x="687" y="0" on="1"/>
- <pt x="41" y="0" on="1"/>
- <pt x="41" y="62" on="1"/>
- <pt x="60" y="63" on="1"/>
- <pt x="127" y="68" on="1"/>
- <pt x="203" y="74" on="0"/>
- <pt x="213" y="115" on="1"/>
- <pt x="226" y="177" on="0"/>
- <pt x="226" y="259" on="1"/>
- <pt x="226" y="1221" on="1"/>
- <pt x="226" y="1280" on="0"/>
- <pt x="219" y="1333" on="1"/>
- <pt x="213" y="1372" on="0"/>
- <pt x="205" y="1384" on="1"/>
- <pt x="187" y="1410" on="0"/>
- <pt x="127" y="1413" on="1"/>
- <pt x="60" y="1417" on="1"/>
- <pt x="41" y="1419" on="1"/>
- <pt x="41" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="436" y="1413" on="1"/>
- <pt x="436" y="259" on="1"/>
- <pt x="440" y="181" on="1"/>
- <pt x="444" y="110" on="0"/>
- <pt x="498" y="87" on="1"/>
- <pt x="544" y="68" on="0"/>
- <pt x="638" y="68" on="1"/>
- <pt x="894" y="68" on="0"/>
- <pt x="1032" y="243" on="1"/>
- <pt x="1171" y="419" on="0"/>
- <pt x="1171" y="743" on="1"/>
- <pt x="1171" y="1098" on="0"/>
- <pt x="1021" y="1256" on="1"/>
- <pt x="871" y="1413" on="0"/>
- <pt x="532" y="1413" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 54 values pushed */
- 20 29 19 12 36 44 36 31 30 4 0 11 3 12 11 1 0 29 0 0 14 0 0 40 34
- 7 48 196 29 20 12 19 44 11 0 3 13 7 30 0 0 31 30 32 1 19 1 4 48 196
- 20 19 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Dcaron" xMin="41" yMin="0" xMax="1399" yMax="1925">
- <contour>
- <pt x="465" y="1480" on="1"/>
- <pt x="536" y="1481" on="1"/>
- <pt x="608" y="1484" on="1"/>
- <pt x="680" y="1485" on="1"/>
- <pt x="989" y="1489" on="0"/>
- <pt x="1176" y="1335" on="1"/>
- <pt x="1399" y="1152" on="0"/>
- <pt x="1399" y="772" on="1"/>
- <pt x="1399" y="414" on="0"/>
- <pt x="1208" y="207" on="1"/>
- <pt x="1017" y="0" on="0"/>
- <pt x="687" y="0" on="1"/>
- <pt x="41" y="0" on="1"/>
- <pt x="41" y="62" on="1"/>
- <pt x="60" y="63" on="1"/>
- <pt x="127" y="68" on="1"/>
- <pt x="203" y="74" on="0"/>
- <pt x="213" y="115" on="1"/>
- <pt x="226" y="177" on="0"/>
- <pt x="226" y="259" on="1"/>
- <pt x="226" y="1221" on="1"/>
- <pt x="226" y="1280" on="0"/>
- <pt x="219" y="1333" on="1"/>
- <pt x="213" y="1372" on="0"/>
- <pt x="205" y="1384" on="1"/>
- <pt x="187" y="1410" on="0"/>
- <pt x="127" y="1413" on="1"/>
- <pt x="60" y="1417" on="1"/>
- <pt x="41" y="1419" on="1"/>
- <pt x="41" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="436" y="1413" on="1"/>
- <pt x="436" y="259" on="1"/>
- <pt x="440" y="181" on="1"/>
- <pt x="444" y="110" on="0"/>
- <pt x="498" y="87" on="1"/>
- <pt x="544" y="68" on="0"/>
- <pt x="638" y="68" on="1"/>
- <pt x="894" y="68" on="0"/>
- <pt x="1032" y="243" on="1"/>
- <pt x="1171" y="419" on="0"/>
- <pt x="1171" y="743" on="1"/>
- <pt x="1171" y="1098" on="0"/>
- <pt x="1021" y="1256" on="1"/>
- <pt x="871" y="1413" on="0"/>
- <pt x="532" y="1413" on="1"/>
- </contour>
- <contour>
- <pt x="1046" y="1925" on="1"/>
- <pt x="806" y="1604" on="1"/>
- <pt x="584" y="1604" on="1"/>
- <pt x="343" y="1925" on="1"/>
- <pt x="429" y="1925" on="1"/>
- <pt x="695" y="1703" on="1"/>
- <pt x="960" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 20 29 19 12 36 44 36 31 30 4 0 11 3 51 50 49 48 45 5 13 46 47 46 1 12
- 11 1 2 0 29 0 0 14 0 0 40 34 7 48 196 29 20 12 19 49 48 2 30 19 3
- 51 50 47 46 45 44 11 0 8 13 7 30 0 0 31 30 32 1 19 1 4 48 196 20 19
- 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Dcroat" xMin="41" yMin="0" xMax="1399" yMax="1489">
- <contour>
- <pt x="226" y="716" on="1"/>
- <pt x="41" y="716" on="1"/>
- <pt x="41" y="783" on="1"/>
- <pt x="226" y="783" on="1"/>
- <pt x="226" y="1221" on="1"/>
- <pt x="226" y="1280" on="0"/>
- <pt x="219" y="1333" on="1"/>
- <pt x="213" y="1372" on="0"/>
- <pt x="205" y="1384" on="1"/>
- <pt x="187" y="1410" on="0"/>
- <pt x="127" y="1413" on="1"/>
- <pt x="60" y="1417" on="1"/>
- <pt x="41" y="1419" on="1"/>
- <pt x="41" y="1480" on="1"/>
- <pt x="465" y="1480" on="1"/>
- <pt x="536" y="1481" on="1"/>
- <pt x="608" y="1484" on="1"/>
- <pt x="680" y="1485" on="1"/>
- <pt x="989" y="1489" on="0"/>
- <pt x="1176" y="1335" on="1"/>
- <pt x="1399" y="1151" on="0"/>
- <pt x="1399" y="772" on="1"/>
- <pt x="1399" y="414" on="0"/>
- <pt x="1208" y="207" on="1"/>
- <pt x="1017" y="0" on="0"/>
- <pt x="687" y="0" on="1"/>
- <pt x="41" y="0" on="1"/>
- <pt x="41" y="62" on="1"/>
- <pt x="60" y="63" on="1"/>
- <pt x="127" y="68" on="1"/>
- <pt x="203" y="74" on="0"/>
- <pt x="213" y="115" on="1"/>
- <pt x="226" y="177" on="0"/>
- <pt x="226" y="259" on="1"/>
- </contour>
- <contour>
- <pt x="436" y="716" on="1"/>
- <pt x="436" y="259" on="1"/>
- <pt x="440" y="181" on="1"/>
- <pt x="444" y="110" on="0"/>
- <pt x="498" y="87" on="1"/>
- <pt x="544" y="68" on="0"/>
- <pt x="638" y="68" on="1"/>
- <pt x="894" y="68" on="0"/>
- <pt x="1032" y="243" on="1"/>
- <pt x="1171" y="419" on="0"/>
- <pt x="1171" y="743" on="1"/>
- <pt x="1171" y="1098" on="0"/>
- <pt x="1021" y="1256" on="1"/>
- <pt x="871" y="1413" on="0"/>
- <pt x="532" y="1413" on="1"/>
- <pt x="436" y="1413" on="1"/>
- <pt x="436" y="783" on="1"/>
- <pt x="781" y="783" on="1"/>
- <pt x="781" y="716" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 33 26 4 13 49 48 2 13 2 3 40 40 35 2 0 25 3 0 0 52 34 1 0 14 3
- 2 1 4 48 84 51 50 3 2 3 26 25 1 2 0 14 13 0 14 0 0 44 34 21 48
- 196 26 33 13 4 52 51 48 25 14 5 13 21 34 2 1 0 0 0 50 49 35 34 32 3
- 0 1 4 48 196 33 4 3 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="E" xMin="43" yMin="0" xMax="1202" yMax="1480">
- <contour>
- <pt x="1146" y="1480" on="1"/>
- <pt x="1146" y="1221" on="1"/>
- <pt x="1035" y="1221" on="1"/>
- <pt x="1034" y="1240" on="1"/>
- <pt x="1029" y="1324" on="1"/>
- <pt x="1028" y="1379" on="0"/>
- <pt x="1010" y="1390" on="1"/>
- <pt x="993" y="1399" on="0"/>
- <pt x="956" y="1399" on="1"/>
- <pt x="853" y="1400" on="1"/>
- <pt x="438" y="1400" on="1"/>
- <pt x="438" y="808" on="1"/>
- <pt x="801" y="809" on="1"/>
- <pt x="864" y="811" on="1"/>
- <pt x="917" y="812" on="0"/>
- <pt x="925" y="827" on="1"/>
- <pt x="933" y="840" on="0"/>
- <pt x="933" y="872" on="1"/>
- <pt x="933" y="884" on="0"/>
- <pt x="935" y="913" on="1"/>
- <pt x="936" y="931" on="1"/>
- <pt x="1017" y="931" on="1"/>
- <pt x="1017" y="605" on="1"/>
- <pt x="936" y="605" on="1"/>
- <pt x="935" y="623" on="1"/>
- <pt x="929" y="710" on="0"/>
- <pt x="905" y="717" on="1"/>
- <pt x="880" y="728" on="0"/>
- <pt x="801" y="728" on="1"/>
- <pt x="438" y="728" on="1"/>
- <pt x="438" y="259" on="1"/>
- <pt x="438" y="123" on="0"/>
- <pt x="478" y="105" on="1"/>
- <pt x="514" y="86" on="0"/>
- <pt x="608" y="86" on="1"/>
- <pt x="858" y="86" on="1"/>
- <pt x="1005" y="86" on="0"/>
- <pt x="1043" y="100" on="1"/>
- <pt x="1083" y="113" on="0"/>
- <pt x="1086" y="162" on="1"/>
- <pt x="1090" y="253" on="1"/>
- <pt x="1091" y="271" on="1"/>
- <pt x="1202" y="271" on="1"/>
- <pt x="1202" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="129" y="68" on="1"/>
- <pt x="205" y="74" on="0"/>
- <pt x="215" y="115" on="1"/>
- <pt x="228" y="177" on="0"/>
- <pt x="228" y="259" on="1"/>
- <pt x="228" y="1221" on="1"/>
- <pt x="228" y="1280" on="0"/>
- <pt x="221" y="1333" on="1"/>
- <pt x="215" y="1372" on="0"/>
- <pt x="207" y="1384" on="1"/>
- <pt x="189" y="1410" on="0"/>
- <pt x="129" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 101 values pushed */
- 52 61 51 44 21 20 12 11 2 1 6 9 28 3 42 41 30 26 23 22 6 28 34 3 0
- 0 10 9 21 1 0 35 34 7 1 43 2 4 48 84 29 28 1 44 43 1 2 0 61 0
- 0 14 61 52 44 51 41 2 2 0 21 3 35 34 28 26 23 20 12 9 8 21 10 3 0
- 0 30 29 11 10 32 3 51 1 4 48 196 43 42 1 1 0 1 22 21 1 52 51 1 4
- 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Eacute" xMin="43" yMin="0" xMax="1202" yMax="1925">
- <contour>
- <pt x="1146" y="1480" on="1"/>
- <pt x="1146" y="1221" on="1"/>
- <pt x="1035" y="1221" on="1"/>
- <pt x="1034" y="1240" on="1"/>
- <pt x="1029" y="1324" on="1"/>
- <pt x="1028" y="1379" on="0"/>
- <pt x="1010" y="1390" on="1"/>
- <pt x="993" y="1399" on="0"/>
- <pt x="956" y="1399" on="1"/>
- <pt x="853" y="1400" on="1"/>
- <pt x="438" y="1400" on="1"/>
- <pt x="438" y="808" on="1"/>
- <pt x="801" y="809" on="1"/>
- <pt x="864" y="811" on="1"/>
- <pt x="917" y="812" on="0"/>
- <pt x="925" y="827" on="1"/>
- <pt x="933" y="840" on="0"/>
- <pt x="933" y="872" on="1"/>
- <pt x="933" y="884" on="0"/>
- <pt x="935" y="913" on="1"/>
- <pt x="936" y="931" on="1"/>
- <pt x="1017" y="931" on="1"/>
- <pt x="1017" y="605" on="1"/>
- <pt x="936" y="605" on="1"/>
- <pt x="935" y="623" on="1"/>
- <pt x="929" y="710" on="0"/>
- <pt x="905" y="717" on="1"/>
- <pt x="880" y="728" on="0"/>
- <pt x="801" y="728" on="1"/>
- <pt x="438" y="728" on="1"/>
- <pt x="438" y="259" on="1"/>
- <pt x="438" y="123" on="0"/>
- <pt x="478" y="105" on="1"/>
- <pt x="514" y="86" on="0"/>
- <pt x="608" y="86" on="1"/>
- <pt x="858" y="86" on="1"/>
- <pt x="1005" y="86" on="0"/>
- <pt x="1043" y="100" on="1"/>
- <pt x="1083" y="113" on="0"/>
- <pt x="1086" y="162" on="1"/>
- <pt x="1090" y="253" on="1"/>
- <pt x="1091" y="271" on="1"/>
- <pt x="1202" y="271" on="1"/>
- <pt x="1202" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="129" y="68" on="1"/>
- <pt x="205" y="74" on="0"/>
- <pt x="215" y="115" on="1"/>
- <pt x="228" y="177" on="0"/>
- <pt x="228" y="259" on="1"/>
- <pt x="228" y="1221" on="1"/>
- <pt x="228" y="1280" on="0"/>
- <pt x="221" y="1333" on="1"/>
- <pt x="215" y="1372" on="0"/>
- <pt x="207" y="1384" on="1"/>
- <pt x="189" y="1410" on="0"/>
- <pt x="129" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="413" y="1604" on="1"/>
- <pt x="654" y="1925" on="1"/>
- <pt x="913" y="1925" on="1"/>
- <pt x="506" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 117 values pushed */
- 52 61 51 44 65 62 2 63 0 3 21 20 12 11 2 1 6 9 28 3 42 41 30 26 23
- 22 6 28 34 3 0 0 10 9 21 1 0 35 34 7 1 43 2 4 48 84 64 63 1 29
- 28 1 44 43 1 3 0 61 0 0 14 61 52 44 51 41 2 2 0 21 3 65 64 63 35
- 34 28 26 23 20 12 9 11 21 10 3 62 10 51 2 0 0 30 29 11 10 32 3 51 1
- 4 48 196 43 42 1 1 0 1 22 21 1 52 51 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ebreve" xMin="43" yMin="0" xMax="1202" yMax="1925">
- <contour>
- <pt x="1146" y="1480" on="1"/>
- <pt x="1146" y="1221" on="1"/>
- <pt x="1035" y="1221" on="1"/>
- <pt x="1034" y="1240" on="1"/>
- <pt x="1029" y="1324" on="1"/>
- <pt x="1028" y="1379" on="0"/>
- <pt x="1010" y="1390" on="1"/>
- <pt x="993" y="1399" on="0"/>
- <pt x="956" y="1399" on="1"/>
- <pt x="853" y="1400" on="1"/>
- <pt x="438" y="1400" on="1"/>
- <pt x="438" y="808" on="1"/>
- <pt x="801" y="809" on="1"/>
- <pt x="864" y="811" on="1"/>
- <pt x="917" y="812" on="0"/>
- <pt x="925" y="827" on="1"/>
- <pt x="933" y="840" on="0"/>
- <pt x="933" y="872" on="1"/>
- <pt x="933" y="884" on="0"/>
- <pt x="935" y="913" on="1"/>
- <pt x="936" y="931" on="1"/>
- <pt x="1017" y="931" on="1"/>
- <pt x="1017" y="605" on="1"/>
- <pt x="936" y="605" on="1"/>
- <pt x="935" y="623" on="1"/>
- <pt x="929" y="710" on="0"/>
- <pt x="905" y="717" on="1"/>
- <pt x="880" y="728" on="0"/>
- <pt x="801" y="728" on="1"/>
- <pt x="438" y="728" on="1"/>
- <pt x="438" y="259" on="1"/>
- <pt x="438" y="123" on="0"/>
- <pt x="478" y="105" on="1"/>
- <pt x="514" y="86" on="0"/>
- <pt x="608" y="86" on="1"/>
- <pt x="858" y="86" on="1"/>
- <pt x="1005" y="86" on="0"/>
- <pt x="1043" y="100" on="1"/>
- <pt x="1083" y="113" on="0"/>
- <pt x="1086" y="162" on="1"/>
- <pt x="1090" y="253" on="1"/>
- <pt x="1091" y="271" on="1"/>
- <pt x="1202" y="271" on="1"/>
- <pt x="1202" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="129" y="68" on="1"/>
- <pt x="205" y="74" on="0"/>
- <pt x="215" y="115" on="1"/>
- <pt x="228" y="177" on="0"/>
- <pt x="228" y="259" on="1"/>
- <pt x="228" y="1221" on="1"/>
- <pt x="228" y="1280" on="0"/>
- <pt x="221" y="1333" on="1"/>
- <pt x="215" y="1372" on="0"/>
- <pt x="207" y="1384" on="1"/>
- <pt x="189" y="1410" on="0"/>
- <pt x="129" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="315" y="1925" on="1"/>
- <pt x="380" y="1925" on="1"/>
- <pt x="407" y="1835" on="0"/>
- <pt x="467" y="1793" on="1"/>
- <pt x="535" y="1746" on="0"/>
- <pt x="648" y="1746" on="1"/>
- <pt x="774" y="1746" on="0"/>
- <pt x="844" y="1805" on="1"/>
- <pt x="893" y="1845" on="0"/>
- <pt x="917" y="1925" on="1"/>
- <pt x="981" y="1925" on="1"/>
- <pt x="962" y="1790" on="0"/>
- <pt x="890" y="1709" on="1"/>
- <pt x="796" y="1604" on="0"/>
- <pt x="648" y="1604" on="1"/>
- <pt x="494" y="1604" on="0"/>
- <pt x="399" y="1719" on="1"/>
- <pt x="334" y="1797" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 124 values pushed */
- 0 0 67 20 76 48 84 52 61 51 44 21 20 12 11 2 1 6 9 28 3 42 41 30 26
- 23 22 6 28 34 3 72 71 63 62 4 13 76 0 0 0 10 9 21 1 0 35 34 7 1
- 43 2 4 48 84 29 28 1 44 43 1 2 0 61 0 0 14 61 52 44 51 41 2 2 0
- 21 3 72 71 35 34 28 26 23 20 12 9 10 21 10 3 63 62 2 10 51 3 0 0 30
- 29 11 10 32 3 51 1 4 48 196 43 42 1 1 0 1 22 21 1 52 51 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ecaron" xMin="43" yMin="0" xMax="1202" yMax="1925">
- <contour>
- <pt x="1146" y="1480" on="1"/>
- <pt x="1146" y="1221" on="1"/>
- <pt x="1035" y="1221" on="1"/>
- <pt x="1034" y="1240" on="1"/>
- <pt x="1029" y="1324" on="1"/>
- <pt x="1028" y="1379" on="0"/>
- <pt x="1010" y="1390" on="1"/>
- <pt x="993" y="1399" on="0"/>
- <pt x="956" y="1399" on="1"/>
- <pt x="853" y="1400" on="1"/>
- <pt x="438" y="1400" on="1"/>
- <pt x="438" y="808" on="1"/>
- <pt x="801" y="809" on="1"/>
- <pt x="864" y="811" on="1"/>
- <pt x="917" y="812" on="0"/>
- <pt x="925" y="827" on="1"/>
- <pt x="933" y="840" on="0"/>
- <pt x="933" y="872" on="1"/>
- <pt x="933" y="884" on="0"/>
- <pt x="935" y="913" on="1"/>
- <pt x="936" y="931" on="1"/>
- <pt x="1017" y="931" on="1"/>
- <pt x="1017" y="605" on="1"/>
- <pt x="936" y="605" on="1"/>
- <pt x="935" y="623" on="1"/>
- <pt x="929" y="710" on="0"/>
- <pt x="905" y="717" on="1"/>
- <pt x="880" y="728" on="0"/>
- <pt x="801" y="728" on="1"/>
- <pt x="438" y="728" on="1"/>
- <pt x="438" y="259" on="1"/>
- <pt x="438" y="123" on="0"/>
- <pt x="478" y="105" on="1"/>
- <pt x="514" y="86" on="0"/>
- <pt x="608" y="86" on="1"/>
- <pt x="858" y="86" on="1"/>
- <pt x="1005" y="86" on="0"/>
- <pt x="1043" y="100" on="1"/>
- <pt x="1083" y="113" on="0"/>
- <pt x="1086" y="162" on="1"/>
- <pt x="1090" y="253" on="1"/>
- <pt x="1091" y="271" on="1"/>
- <pt x="1202" y="271" on="1"/>
- <pt x="1202" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="129" y="68" on="1"/>
- <pt x="205" y="74" on="0"/>
- <pt x="215" y="115" on="1"/>
- <pt x="228" y="177" on="0"/>
- <pt x="228" y="259" on="1"/>
- <pt x="228" y="1221" on="1"/>
- <pt x="228" y="1280" on="0"/>
- <pt x="221" y="1333" on="1"/>
- <pt x="215" y="1372" on="0"/>
- <pt x="207" y="1384" on="1"/>
- <pt x="189" y="1410" on="0"/>
- <pt x="129" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="1024" y="1925" on="1"/>
- <pt x="784" y="1604" on="1"/>
- <pt x="562" y="1604" on="1"/>
- <pt x="321" y="1925" on="1"/>
- <pt x="407" y="1925" on="1"/>
- <pt x="673" y="1703" on="1"/>
- <pt x="938" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 123 values pushed */
- 52 61 51 44 21 20 12 11 2 1 6 9 28 3 42 41 30 26 23 22 6 28 34 3 68
- 67 66 65 62 5 13 63 0 0 10 9 21 1 0 35 34 7 1 43 2 4 48 84 64 63
- 1 29 28 1 44 43 1 3 0 61 0 0 14 61 52 44 51 62 41 2 3 0 21 3 68
- 67 64 63 35 34 28 26 23 20 12 9 12 21 10 3 66 65 2 10 51 3 0 0 30 29
- 11 10 32 3 51 1 4 48 196 43 42 1 1 0 1 22 21 1 52 51 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ecircumflex" xMin="43" yMin="0" xMax="1202" yMax="1925">
- <contour>
- <pt x="1146" y="1480" on="1"/>
- <pt x="1146" y="1221" on="1"/>
- <pt x="1035" y="1221" on="1"/>
- <pt x="1034" y="1240" on="1"/>
- <pt x="1029" y="1324" on="1"/>
- <pt x="1028" y="1379" on="0"/>
- <pt x="1010" y="1390" on="1"/>
- <pt x="993" y="1399" on="0"/>
- <pt x="956" y="1399" on="1"/>
- <pt x="853" y="1400" on="1"/>
- <pt x="438" y="1400" on="1"/>
- <pt x="438" y="808" on="1"/>
- <pt x="801" y="809" on="1"/>
- <pt x="864" y="811" on="1"/>
- <pt x="917" y="812" on="0"/>
- <pt x="925" y="827" on="1"/>
- <pt x="933" y="840" on="0"/>
- <pt x="933" y="872" on="1"/>
- <pt x="933" y="884" on="0"/>
- <pt x="935" y="913" on="1"/>
- <pt x="936" y="931" on="1"/>
- <pt x="1017" y="931" on="1"/>
- <pt x="1017" y="605" on="1"/>
- <pt x="936" y="605" on="1"/>
- <pt x="935" y="623" on="1"/>
- <pt x="929" y="710" on="0"/>
- <pt x="905" y="717" on="1"/>
- <pt x="880" y="728" on="0"/>
- <pt x="801" y="728" on="1"/>
- <pt x="438" y="728" on="1"/>
- <pt x="438" y="259" on="1"/>
- <pt x="438" y="123" on="0"/>
- <pt x="478" y="105" on="1"/>
- <pt x="514" y="86" on="0"/>
- <pt x="608" y="86" on="1"/>
- <pt x="858" y="86" on="1"/>
- <pt x="1005" y="86" on="0"/>
- <pt x="1043" y="100" on="1"/>
- <pt x="1083" y="113" on="0"/>
- <pt x="1086" y="162" on="1"/>
- <pt x="1090" y="253" on="1"/>
- <pt x="1091" y="271" on="1"/>
- <pt x="1202" y="271" on="1"/>
- <pt x="1202" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="129" y="68" on="1"/>
- <pt x="205" y="74" on="0"/>
- <pt x="215" y="115" on="1"/>
- <pt x="228" y="177" on="0"/>
- <pt x="228" y="259" on="1"/>
- <pt x="228" y="1221" on="1"/>
- <pt x="228" y="1280" on="0"/>
- <pt x="221" y="1333" on="1"/>
- <pt x="215" y="1372" on="0"/>
- <pt x="207" y="1384" on="1"/>
- <pt x="189" y="1410" on="0"/>
- <pt x="129" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="265" y="1604" on="1"/>
- <pt x="506" y="1925" on="1"/>
- <pt x="728" y="1925" on="1"/>
- <pt x="968" y="1604" on="1"/>
- <pt x="882" y="1604" on="1"/>
- <pt x="617" y="1826" on="1"/>
- <pt x="351" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 124 values pushed */
- 52 61 51 44 68 67 66 65 62 5 63 0 3 21 20 12 11 2 1 6 9 28 3 42 41
- 30 26 23 22 6 28 34 3 0 0 10 9 21 1 0 35 34 7 1 43 2 4 48 84 64
- 63 1 29 28 1 44 43 1 3 0 61 0 0 14 61 52 44 51 41 2 2 0 21 3 67
- 66 65 64 63 35 34 28 26 23 20 12 9 13 21 10 3 68 62 2 10 51 3 0 0 30
- 29 11 10 32 3 51 1 4 48 196 43 42 1 1 0 1 22 21 1 52 51 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Edieresis" xMin="43" yMin="0" xMax="1202" yMax="1777">
- <contour>
- <pt x="1146" y="1480" on="1"/>
- <pt x="1146" y="1221" on="1"/>
- <pt x="1035" y="1221" on="1"/>
- <pt x="1034" y="1240" on="1"/>
- <pt x="1029" y="1324" on="1"/>
- <pt x="1028" y="1379" on="0"/>
- <pt x="1010" y="1390" on="1"/>
- <pt x="993" y="1399" on="0"/>
- <pt x="956" y="1399" on="1"/>
- <pt x="853" y="1400" on="1"/>
- <pt x="438" y="1400" on="1"/>
- <pt x="438" y="808" on="1"/>
- <pt x="801" y="809" on="1"/>
- <pt x="864" y="811" on="1"/>
- <pt x="917" y="812" on="0"/>
- <pt x="925" y="827" on="1"/>
- <pt x="933" y="840" on="0"/>
- <pt x="933" y="872" on="1"/>
- <pt x="933" y="884" on="0"/>
- <pt x="935" y="913" on="1"/>
- <pt x="936" y="931" on="1"/>
- <pt x="1017" y="931" on="1"/>
- <pt x="1017" y="605" on="1"/>
- <pt x="936" y="605" on="1"/>
- <pt x="935" y="623" on="1"/>
- <pt x="929" y="710" on="0"/>
- <pt x="905" y="717" on="1"/>
- <pt x="880" y="728" on="0"/>
- <pt x="801" y="728" on="1"/>
- <pt x="438" y="728" on="1"/>
- <pt x="438" y="259" on="1"/>
- <pt x="438" y="123" on="0"/>
- <pt x="478" y="105" on="1"/>
- <pt x="514" y="86" on="0"/>
- <pt x="608" y="86" on="1"/>
- <pt x="858" y="86" on="1"/>
- <pt x="1005" y="86" on="0"/>
- <pt x="1043" y="100" on="1"/>
- <pt x="1083" y="113" on="0"/>
- <pt x="1086" y="162" on="1"/>
- <pt x="1090" y="253" on="1"/>
- <pt x="1091" y="271" on="1"/>
- <pt x="1202" y="271" on="1"/>
- <pt x="1202" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="129" y="68" on="1"/>
- <pt x="205" y="74" on="0"/>
- <pt x="215" y="115" on="1"/>
- <pt x="228" y="177" on="0"/>
- <pt x="228" y="259" on="1"/>
- <pt x="228" y="1221" on="1"/>
- <pt x="228" y="1280" on="0"/>
- <pt x="221" y="1333" on="1"/>
- <pt x="215" y="1372" on="0"/>
- <pt x="207" y="1384" on="1"/>
- <pt x="189" y="1410" on="0"/>
- <pt x="129" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="326" y="1604" on="1"/>
- <pt x="326" y="1777" on="1"/>
- <pt x="499" y="1777" on="1"/>
- <pt x="499" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="721" y="1604" on="1"/>
- <pt x="721" y="1777" on="1"/>
- <pt x="894" y="1777" on="1"/>
- <pt x="894" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 136 values pushed */
- 52 61 51 44 21 20 12 11 2 1 6 9 28 3 42 41 30 26 23 22 6 28 34 3 0
- 0 69 66 65 62 13 3 63 10 9 21 1 0 35 34 7 1 43 3 4 48 84 68 67 64
- 63 3 29 28 1 44 43 1 3 0 61 0 0 14 61 52 44 51 41 2 2 0 21 3 26
- 23 20 3 21 68 3 35 28 12 9 4 68 66 3 34 66 64 2 0 0 67 66 13 1 68
- 65 64 13 1 62 30 29 11 10 32 3 51 3 4 48 196 69 68 1 63 62 1 43 42 1
- 1 0 1 22 21 1 52 51 1 6 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Edotaccent" xMin="43" yMin="0" xMax="1202" yMax="1801">
- <contour>
- <pt x="1146" y="1480" on="1"/>
- <pt x="1146" y="1221" on="1"/>
- <pt x="1035" y="1221" on="1"/>
- <pt x="1034" y="1240" on="1"/>
- <pt x="1029" y="1324" on="1"/>
- <pt x="1028" y="1379" on="0"/>
- <pt x="1010" y="1390" on="1"/>
- <pt x="993" y="1399" on="0"/>
- <pt x="956" y="1399" on="1"/>
- <pt x="853" y="1400" on="1"/>
- <pt x="438" y="1400" on="1"/>
- <pt x="438" y="808" on="1"/>
- <pt x="801" y="809" on="1"/>
- <pt x="864" y="811" on="1"/>
- <pt x="917" y="812" on="0"/>
- <pt x="925" y="827" on="1"/>
- <pt x="933" y="840" on="0"/>
- <pt x="933" y="872" on="1"/>
- <pt x="933" y="884" on="0"/>
- <pt x="935" y="913" on="1"/>
- <pt x="936" y="931" on="1"/>
- <pt x="1017" y="931" on="1"/>
- <pt x="1017" y="605" on="1"/>
- <pt x="936" y="605" on="1"/>
- <pt x="935" y="623" on="1"/>
- <pt x="929" y="710" on="0"/>
- <pt x="905" y="717" on="1"/>
- <pt x="880" y="728" on="0"/>
- <pt x="801" y="728" on="1"/>
- <pt x="438" y="728" on="1"/>
- <pt x="438" y="259" on="1"/>
- <pt x="438" y="123" on="0"/>
- <pt x="478" y="105" on="1"/>
- <pt x="514" y="86" on="0"/>
- <pt x="608" y="86" on="1"/>
- <pt x="858" y="86" on="1"/>
- <pt x="1005" y="86" on="0"/>
- <pt x="1043" y="100" on="1"/>
- <pt x="1083" y="113" on="0"/>
- <pt x="1086" y="162" on="1"/>
- <pt x="1090" y="253" on="1"/>
- <pt x="1091" y="271" on="1"/>
- <pt x="1202" y="271" on="1"/>
- <pt x="1202" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="129" y="68" on="1"/>
- <pt x="205" y="74" on="0"/>
- <pt x="215" y="115" on="1"/>
- <pt x="228" y="177" on="0"/>
- <pt x="228" y="259" on="1"/>
- <pt x="228" y="1221" on="1"/>
- <pt x="228" y="1280" on="0"/>
- <pt x="221" y="1333" on="1"/>
- <pt x="215" y="1372" on="0"/>
- <pt x="207" y="1384" on="1"/>
- <pt x="189" y="1410" on="0"/>
- <pt x="129" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="536" y="1604" on="1"/>
- <pt x="536" y="1801" on="1"/>
- <pt x="733" y="1801" on="1"/>
- <pt x="733" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 120 values pushed */
- 52 61 51 44 21 20 12 11 2 1 6 9 28 3 42 41 30 26 23 22 6 28 34 3 0
- 0 65 62 5 1 63 10 9 21 1 0 35 34 7 1 43 3 4 48 84 64 63 1 29 28
- 1 44 43 1 3 0 61 0 0 14 61 52 44 51 41 2 2 0 21 3 35 28 26 23 20
- 12 9 7 21 64 3 34 64 62 2 0 0 65 64 4 1 62 30 29 11 10 32 3 51 2
- 4 48 196 63 62 1 43 42 1 1 0 1 22 21 1 52 51 1 5 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Egrave" xMin="43" yMin="0" xMax="1202" yMax="1925">
- <contour>
- <pt x="1146" y="1480" on="1"/>
- <pt x="1146" y="1221" on="1"/>
- <pt x="1035" y="1221" on="1"/>
- <pt x="1034" y="1240" on="1"/>
- <pt x="1029" y="1324" on="1"/>
- <pt x="1028" y="1379" on="0"/>
- <pt x="1010" y="1390" on="1"/>
- <pt x="993" y="1399" on="0"/>
- <pt x="956" y="1399" on="1"/>
- <pt x="853" y="1400" on="1"/>
- <pt x="438" y="1400" on="1"/>
- <pt x="438" y="808" on="1"/>
- <pt x="801" y="809" on="1"/>
- <pt x="864" y="811" on="1"/>
- <pt x="917" y="812" on="0"/>
- <pt x="925" y="827" on="1"/>
- <pt x="933" y="840" on="0"/>
- <pt x="933" y="872" on="1"/>
- <pt x="933" y="884" on="0"/>
- <pt x="935" y="913" on="1"/>
- <pt x="936" y="931" on="1"/>
- <pt x="1017" y="931" on="1"/>
- <pt x="1017" y="605" on="1"/>
- <pt x="936" y="605" on="1"/>
- <pt x="935" y="623" on="1"/>
- <pt x="929" y="710" on="0"/>
- <pt x="905" y="717" on="1"/>
- <pt x="880" y="728" on="0"/>
- <pt x="801" y="728" on="1"/>
- <pt x="438" y="728" on="1"/>
- <pt x="438" y="259" on="1"/>
- <pt x="438" y="123" on="0"/>
- <pt x="478" y="105" on="1"/>
- <pt x="514" y="86" on="0"/>
- <pt x="608" y="86" on="1"/>
- <pt x="858" y="86" on="1"/>
- <pt x="1005" y="86" on="0"/>
- <pt x="1043" y="100" on="1"/>
- <pt x="1083" y="113" on="0"/>
- <pt x="1086" y="162" on="1"/>
- <pt x="1090" y="253" on="1"/>
- <pt x="1091" y="271" on="1"/>
- <pt x="1202" y="271" on="1"/>
- <pt x="1202" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="129" y="68" on="1"/>
- <pt x="205" y="74" on="0"/>
- <pt x="215" y="115" on="1"/>
- <pt x="228" y="177" on="0"/>
- <pt x="228" y="259" on="1"/>
- <pt x="228" y="1221" on="1"/>
- <pt x="228" y="1280" on="0"/>
- <pt x="221" y="1333" on="1"/>
- <pt x="215" y="1372" on="0"/>
- <pt x="207" y="1384" on="1"/>
- <pt x="189" y="1410" on="0"/>
- <pt x="129" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="792" y="1604" on="1"/>
- <pt x="699" y="1604" on="1"/>
- <pt x="292" y="1925" on="1"/>
- <pt x="551" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 117 values pushed */
- 52 61 51 44 63 62 2 64 0 3 21 20 12 11 2 1 6 9 28 3 42 41 30 26 23
- 22 6 28 34 3 0 0 10 9 21 1 0 35 34 7 1 43 2 4 48 84 65 64 1 29
- 28 1 44 43 1 3 0 61 0 0 14 61 52 44 51 41 2 2 0 21 3 65 63 62 35
- 34 28 26 23 20 12 9 11 21 10 3 64 10 51 2 0 0 30 29 11 10 32 3 51 1
- 4 48 196 43 42 1 1 0 1 22 21 1 52 51 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Emacron" xMin="43" yMin="0" xMax="1202" yMax="1727">
- <contour>
- <pt x="1146" y="1480" on="1"/>
- <pt x="1146" y="1221" on="1"/>
- <pt x="1035" y="1221" on="1"/>
- <pt x="1034" y="1240" on="1"/>
- <pt x="1029" y="1324" on="1"/>
- <pt x="1028" y="1379" on="0"/>
- <pt x="1010" y="1390" on="1"/>
- <pt x="993" y="1399" on="0"/>
- <pt x="956" y="1399" on="1"/>
- <pt x="853" y="1400" on="1"/>
- <pt x="438" y="1400" on="1"/>
- <pt x="438" y="808" on="1"/>
- <pt x="801" y="809" on="1"/>
- <pt x="864" y="811" on="1"/>
- <pt x="917" y="812" on="0"/>
- <pt x="925" y="827" on="1"/>
- <pt x="933" y="840" on="0"/>
- <pt x="933" y="872" on="1"/>
- <pt x="933" y="884" on="0"/>
- <pt x="935" y="913" on="1"/>
- <pt x="936" y="931" on="1"/>
- <pt x="1017" y="931" on="1"/>
- <pt x="1017" y="605" on="1"/>
- <pt x="936" y="605" on="1"/>
- <pt x="935" y="623" on="1"/>
- <pt x="929" y="710" on="0"/>
- <pt x="905" y="717" on="1"/>
- <pt x="880" y="728" on="0"/>
- <pt x="801" y="728" on="1"/>
- <pt x="438" y="728" on="1"/>
- <pt x="438" y="259" on="1"/>
- <pt x="438" y="123" on="0"/>
- <pt x="478" y="105" on="1"/>
- <pt x="514" y="86" on="0"/>
- <pt x="608" y="86" on="1"/>
- <pt x="858" y="86" on="1"/>
- <pt x="1005" y="86" on="0"/>
- <pt x="1043" y="100" on="1"/>
- <pt x="1083" y="113" on="0"/>
- <pt x="1086" y="162" on="1"/>
- <pt x="1090" y="253" on="1"/>
- <pt x="1091" y="271" on="1"/>
- <pt x="1202" y="271" on="1"/>
- <pt x="1202" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="129" y="68" on="1"/>
- <pt x="205" y="74" on="0"/>
- <pt x="215" y="115" on="1"/>
- <pt x="228" y="177" on="0"/>
- <pt x="228" y="259" on="1"/>
- <pt x="228" y="1221" on="1"/>
- <pt x="228" y="1280" on="0"/>
- <pt x="221" y="1333" on="1"/>
- <pt x="215" y="1372" on="0"/>
- <pt x="207" y="1384" on="1"/>
- <pt x="189" y="1410" on="0"/>
- <pt x="129" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="339" y="1604" on="1"/>
- <pt x="339" y="1727" on="1"/>
- <pt x="981" y="1727" on="1"/>
- <pt x="981" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 117 values pushed */
- 52 61 51 44 21 20 12 11 2 1 6 9 28 3 42 41 30 26 23 22 6 28 34 3 0
- 0 65 62 12 1 63 10 9 21 1 0 35 34 7 1 43 3 4 48 84 64 63 1 29 28
- 1 44 43 1 3 0 61 0 0 14 61 52 44 51 41 2 2 0 21 3 65 64 35 34 28
- 26 23 20 12 9 10 21 10 3 63 62 2 10 51 3 0 0 30 29 11 10 32 3 51 1
- 4 48 196 43 42 1 1 0 1 22 21 1 52 51 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Eng" xMin="43" yMin="-296" xMax="1435" yMax="1480">
- <contour>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="130" y="68" on="1"/>
- <pt x="194" y="73" on="0"/>
- <pt x="229" y="140" on="0"/>
- <pt x="229" y="259" on="1"/>
- <pt x="229" y="1221" on="1"/>
- <pt x="230" y="1335" on="0"/>
- <pt x="211" y="1377" on="1"/>
- <pt x="196" y="1409" on="0"/>
- <pt x="130" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- <pt x="376" y="1480" on="1"/>
- <pt x="1159" y="331" on="1"/>
- <pt x="1159" y="1221" on="1"/>
- <pt x="1153" y="1320" on="1"/>
- <pt x="1149" y="1384" on="0"/>
- <pt x="1130" y="1397" on="1"/>
- <pt x="1112" y="1410" on="0"/>
- <pt x="1061" y="1413" on="1"/>
- <pt x="993" y="1417" on="1"/>
- <pt x="974" y="1419" on="1"/>
- <pt x="974" y="1480" on="1"/>
- <pt x="1435" y="1480" on="1"/>
- <pt x="1435" y="1419" on="1"/>
- <pt x="1417" y="1417" on="1"/>
- <pt x="1349" y="1413" on="1"/>
- <pt x="1281" y="1408" on="0"/>
- <pt x="1270" y="1386" on="1"/>
- <pt x="1259" y="1367" on="0"/>
- <pt x="1256" y="1320" on="1"/>
- <pt x="1250" y="1221" on="1"/>
- <pt x="1250" y="0" on="1"/>
- <pt x="1250" y="-134" on="0"/>
- <pt x="1171" y="-215" on="1"/>
- <pt x="1092" y="-296" on="0"/>
- <pt x="956" y="-296" on="1"/>
- <pt x="864" y="-296" on="0"/>
- <pt x="742" y="-270" on="1"/>
- <pt x="742" y="-26" on="1"/>
- <pt x="853" y="-26" on="1"/>
- <pt x="854" y="-47" on="1"/>
- <pt x="854" y="-53" on="0"/>
- <pt x="856" y="-72" on="1"/>
- <pt x="857" y="-84" on="0"/>
- <pt x="857" y="-91" on="1"/>
- <pt x="858" y="-107" on="1"/>
- <pt x="858" y="-111" on="0"/>
- <pt x="858" y="-119" on="1"/>
- <pt x="858" y="-222" on="0"/>
- <pt x="983" y="-222" on="1"/>
- <pt x="1152" y="-222" on="0"/>
- <pt x="1152" y="-10" on="1"/>
- <pt x="1152" y="0" on="1"/>
- <pt x="322" y="1220" on="1"/>
- <pt x="322" y="259" on="1"/>
- <pt x="321" y="144" on="0"/>
- <pt x="340" y="104" on="1"/>
- <pt x="355" y="72" on="0"/>
- <pt x="421" y="68" on="1"/>
- <pt x="489" y="63" on="1"/>
- <pt x="508" y="62" on="1"/>
- <pt x="508" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 97 values pushed */
- 0 0 53 21 39 48 84 7 14 64 58 57 34 27 24 17 16 6 1 10 14 0 3 55 43
- 42 41 4 13 39 0 65 56 35 0 3 0 26 25 15 14 0 3 14 14 7 56 55 43 25
- 24 5 16 41 3 65 64 15 3 41 57 3 27 26 2 13 34 1 0 6 0 0 17 16 35
- 1 34 58 57 35 1 6 2 4 48 196 35 34 1 42 41 1 7 6 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Eogonek" xMin="43" yMin="-370" xMax="1202" yMax="1480">
- <contour>
- <pt x="1146" y="1480" on="1"/>
- <pt x="1146" y="1221" on="1"/>
- <pt x="1035" y="1221" on="1"/>
- <pt x="1034" y="1240" on="1"/>
- <pt x="1029" y="1324" on="1"/>
- <pt x="1028" y="1379" on="0"/>
- <pt x="1010" y="1390" on="1"/>
- <pt x="993" y="1399" on="0"/>
- <pt x="956" y="1399" on="1"/>
- <pt x="853" y="1400" on="1"/>
- <pt x="438" y="1400" on="1"/>
- <pt x="438" y="808" on="1"/>
- <pt x="801" y="809" on="1"/>
- <pt x="864" y="811" on="1"/>
- <pt x="917" y="812" on="0"/>
- <pt x="925" y="828" on="1"/>
- <pt x="933" y="841" on="0"/>
- <pt x="933" y="872" on="1"/>
- <pt x="933" y="884" on="0"/>
- <pt x="935" y="913" on="1"/>
- <pt x="936" y="931" on="1"/>
- <pt x="1017" y="931" on="1"/>
- <pt x="1017" y="605" on="1"/>
- <pt x="936" y="605" on="1"/>
- <pt x="935" y="623" on="1"/>
- <pt x="929" y="710" on="0"/>
- <pt x="905" y="717" on="1"/>
- <pt x="880" y="728" on="0"/>
- <pt x="801" y="728" on="1"/>
- <pt x="438" y="728" on="1"/>
- <pt x="438" y="259" on="1"/>
- <pt x="438" y="123" on="0"/>
- <pt x="478" y="105" on="1"/>
- <pt x="514" y="86" on="0"/>
- <pt x="608" y="86" on="1"/>
- <pt x="858" y="86" on="1"/>
- <pt x="1005" y="86" on="0"/>
- <pt x="1043" y="100" on="1"/>
- <pt x="1083" y="113" on="0"/>
- <pt x="1086" y="162" on="1"/>
- <pt x="1090" y="253" on="1"/>
- <pt x="1091" y="271" on="1"/>
- <pt x="1202" y="271" on="1"/>
- <pt x="1202" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="129" y="68" on="1"/>
- <pt x="205" y="74" on="0"/>
- <pt x="215" y="115" on="1"/>
- <pt x="228" y="177" on="0"/>
- <pt x="228" y="259" on="1"/>
- <pt x="228" y="1221" on="1"/>
- <pt x="228" y="1280" on="0"/>
- <pt x="221" y="1333" on="1"/>
- <pt x="215" y="1372" on="0"/>
- <pt x="207" y="1384" on="1"/>
- <pt x="189" y="1410" on="0"/>
- <pt x="129" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="1140" y="-273" on="1"/>
- <pt x="1140" y="-341" on="1"/>
- <pt x="1069" y="-370" on="0"/>
- <pt x="991" y="-370" on="1"/>
- <pt x="771" y="-370" on="0"/>
- <pt x="771" y="-211" on="1"/>
- <pt x="771" y="-89" on="0"/>
- <pt x="929" y="0" on="1"/>
- <pt x="1036" y="0" on="1"/>
- <pt x="907" y="-80" on="0"/>
- <pt x="907" y="-182" on="1"/>
- <pt x="907" y="-289" on="0"/>
- <pt x="1040" y="-289" on="1"/>
- <pt x="1091" y="-289" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 127 values pushed */
- 0 0 74 7 65 48 84 52 61 51 44 21 20 12 11 2 1 6 9 28 3 42 41 30 26
- 23 22 6 28 34 3 63 62 65 43 0 0 10 9 21 1 0 35 34 7 1 43 2 4 48
- 84 29 28 1 70 69 44 43 3 2 0 61 0 0 14 0 0 72 48 67 48 196 61 52 44
- 51 70 63 62 41 2 5 0 21 3 67 69 67 35 34 28 26 23 20 12 9 10 21 10 3
- 0 0 30 29 11 10 32 3 51 1 4 48 196 43 42 1 1 0 1 22 21 1 52 51 1
- 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Eth" xMin="41" yMin="0" xMax="1399" yMax="1489">
- <contour>
- <pt x="226" y="716" on="1"/>
- <pt x="41" y="716" on="1"/>
- <pt x="41" y="783" on="1"/>
- <pt x="226" y="783" on="1"/>
- <pt x="226" y="1221" on="1"/>
- <pt x="226" y="1280" on="0"/>
- <pt x="219" y="1333" on="1"/>
- <pt x="213" y="1372" on="0"/>
- <pt x="205" y="1384" on="1"/>
- <pt x="187" y="1410" on="0"/>
- <pt x="127" y="1413" on="1"/>
- <pt x="60" y="1417" on="1"/>
- <pt x="41" y="1419" on="1"/>
- <pt x="41" y="1480" on="1"/>
- <pt x="465" y="1480" on="1"/>
- <pt x="536" y="1481" on="1"/>
- <pt x="608" y="1484" on="1"/>
- <pt x="680" y="1485" on="1"/>
- <pt x="989" y="1489" on="0"/>
- <pt x="1176" y="1335" on="1"/>
- <pt x="1399" y="1151" on="0"/>
- <pt x="1399" y="772" on="1"/>
- <pt x="1399" y="414" on="0"/>
- <pt x="1208" y="207" on="1"/>
- <pt x="1017" y="0" on="0"/>
- <pt x="687" y="0" on="1"/>
- <pt x="41" y="0" on="1"/>
- <pt x="41" y="62" on="1"/>
- <pt x="60" y="63" on="1"/>
- <pt x="127" y="68" on="1"/>
- <pt x="203" y="74" on="0"/>
- <pt x="213" y="115" on="1"/>
- <pt x="226" y="177" on="0"/>
- <pt x="226" y="259" on="1"/>
- </contour>
- <contour>
- <pt x="436" y="716" on="1"/>
- <pt x="436" y="259" on="1"/>
- <pt x="440" y="181" on="1"/>
- <pt x="444" y="110" on="0"/>
- <pt x="498" y="87" on="1"/>
- <pt x="544" y="68" on="0"/>
- <pt x="638" y="68" on="1"/>
- <pt x="894" y="68" on="0"/>
- <pt x="1032" y="243" on="1"/>
- <pt x="1171" y="419" on="0"/>
- <pt x="1171" y="743" on="1"/>
- <pt x="1171" y="1098" on="0"/>
- <pt x="1021" y="1256" on="1"/>
- <pt x="871" y="1413" on="0"/>
- <pt x="532" y="1413" on="1"/>
- <pt x="436" y="1413" on="1"/>
- <pt x="436" y="783" on="1"/>
- <pt x="781" y="783" on="1"/>
- <pt x="781" y="716" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 33 26 4 13 49 48 2 13 2 3 40 40 35 2 0 25 3 0 0 52 34 1 0 14 3
- 2 1 4 48 84 51 50 3 2 3 26 25 1 2 0 14 13 0 14 0 0 44 34 21 48
- 196 26 33 13 4 52 51 48 25 14 5 13 21 34 2 1 0 0 0 50 49 35 34 32 3
- 0 1 4 48 196 33 4 3 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Euro" xMin="0" yMin="-37" xMax="967" yMax="1517">
- <contour>
- <pt x="0" y="580" on="1"/>
- <pt x="26" y="642" on="1"/>
- <pt x="122" y="642" on="1"/>
- <pt x="119" y="698" on="0"/>
- <pt x="119" y="733" on="1"/>
- <pt x="119" y="759" on="0"/>
- <pt x="121" y="809" on="1"/>
- <pt x="122" y="837" on="0"/>
- <pt x="123" y="851" on="1"/>
- <pt x="0" y="851" on="1"/>
- <pt x="26" y="913" on="1"/>
- <pt x="130" y="913" on="1"/>
- <pt x="155" y="1070" on="0"/>
- <pt x="184" y="1151" on="1"/>
- <pt x="315" y="1517" on="0"/>
- <pt x="669" y="1517" on="1"/>
- <pt x="824" y="1517" on="0"/>
- <pt x="967" y="1443" on="1"/>
- <pt x="967" y="1184" on="1"/>
- <pt x="868" y="1184" on="1"/>
- <pt x="867" y="1239" on="1"/>
- <pt x="863" y="1450" on="0"/>
- <pt x="679" y="1450" on="1"/>
- <pt x="510" y="1450" on="0"/>
- <pt x="415" y="1270" on="1"/>
- <pt x="347" y="1142" on="0"/>
- <pt x="325" y="913" on="1"/>
- <pt x="854" y="913" on="1"/>
- <pt x="828" y="851" on="1"/>
- <pt x="320" y="851" on="1"/>
- <pt x="316" y="786" on="0"/>
- <pt x="316" y="733" on="1"/>
- <pt x="316" y="724" on="0"/>
- <pt x="317" y="692" on="1"/>
- <pt x="318" y="664" on="0"/>
- <pt x="319" y="642" on="1"/>
- <pt x="741" y="642" on="1"/>
- <pt x="716" y="580" on="1"/>
- <pt x="324" y="580" on="1"/>
- <pt x="404" y="62" on="0"/>
- <pt x="719" y="62" on="1"/>
- <pt x="836" y="62" on="0"/>
- <pt x="957" y="138" on="1"/>
- <pt x="957" y="45" on="1"/>
- <pt x="834" y="-37" on="0"/>
- <pt x="674" y="-37" on="1"/>
- <pt x="421" y="-37" on="0"/>
- <pt x="272" y="174" on="1"/>
- <pt x="167" y="323" on="0"/>
- <pt x="129" y="580" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 98 values pushed */
- 0 0 40 9 45 22 38 15 48 84 45 2 15 0 1 19 18 17 3 0 10 3 0 1 43
- 42 2 0 2 3 0 0 0 29 28 9 8 11 3 10 49 38 37 0 11 3 1 2 4 48
- 84 27 26 11 10 3 36 35 2 1 3 2 0 14 0 0 31 5 4 48 196 49 43 42 38
- 37 36 35 29 28 27 26 19 11 10 9 8 2 1 0 19 13 4 17 18 17 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Euro#1" xMin="0" yMin="-37" xMax="967" yMax="1517">
- <contour>
- <pt x="0" y="580" on="1"/>
- <pt x="26" y="642" on="1"/>
- <pt x="122" y="642" on="1"/>
- <pt x="119" y="698" on="0"/>
- <pt x="119" y="733" on="1"/>
- <pt x="119" y="759" on="0"/>
- <pt x="121" y="809" on="1"/>
- <pt x="122" y="837" on="0"/>
- <pt x="123" y="851" on="1"/>
- <pt x="0" y="851" on="1"/>
- <pt x="26" y="913" on="1"/>
- <pt x="130" y="913" on="1"/>
- <pt x="155" y="1070" on="0"/>
- <pt x="184" y="1151" on="1"/>
- <pt x="315" y="1517" on="0"/>
- <pt x="669" y="1517" on="1"/>
- <pt x="824" y="1517" on="0"/>
- <pt x="967" y="1443" on="1"/>
- <pt x="967" y="1184" on="1"/>
- <pt x="868" y="1184" on="1"/>
- <pt x="867" y="1239" on="1"/>
- <pt x="863" y="1450" on="0"/>
- <pt x="679" y="1450" on="1"/>
- <pt x="510" y="1450" on="0"/>
- <pt x="415" y="1270" on="1"/>
- <pt x="347" y="1142" on="0"/>
- <pt x="325" y="913" on="1"/>
- <pt x="854" y="913" on="1"/>
- <pt x="828" y="851" on="1"/>
- <pt x="320" y="851" on="1"/>
- <pt x="316" y="786" on="0"/>
- <pt x="316" y="733" on="1"/>
- <pt x="316" y="724" on="0"/>
- <pt x="317" y="692" on="1"/>
- <pt x="318" y="664" on="0"/>
- <pt x="319" y="642" on="1"/>
- <pt x="741" y="642" on="1"/>
- <pt x="716" y="580" on="1"/>
- <pt x="324" y="580" on="1"/>
- <pt x="404" y="62" on="0"/>
- <pt x="719" y="62" on="1"/>
- <pt x="836" y="62" on="0"/>
- <pt x="957" y="138" on="1"/>
- <pt x="957" y="45" on="1"/>
- <pt x="834" y="-37" on="0"/>
- <pt x="674" y="-37" on="1"/>
- <pt x="421" y="-37" on="0"/>
- <pt x="272" y="174" on="1"/>
- <pt x="167" y="323" on="0"/>
- <pt x="129" y="580" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 98 values pushed */
- 0 0 40 9 45 22 38 15 48 84 45 2 15 0 1 19 18 17 3 0 10 3 0 1 43
- 42 2 0 2 3 0 0 0 29 28 9 8 11 3 10 49 38 37 0 11 3 1 2 4 48
- 84 27 26 11 10 3 36 35 2 1 3 2 0 14 0 0 31 5 4 48 196 49 43 42 38
- 37 36 35 29 28 27 26 19 11 10 9 8 2 1 0 19 13 4 17 18 17 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="F" xMin="43" yMin="0" xMax="1058" yMax="1480">
- <contour>
- <pt x="1058" y="1480" on="1"/>
- <pt x="1058" y="1221" on="1"/>
- <pt x="947" y="1221" on="1"/>
- <pt x="946" y="1240" on="1"/>
- <pt x="941" y="1324" on="1"/>
- <pt x="940" y="1380" on="0"/>
- <pt x="922" y="1390" on="1"/>
- <pt x="905" y="1399" on="0"/>
- <pt x="868" y="1399" on="1"/>
- <pt x="765" y="1400" on="1"/>
- <pt x="438" y="1400" on="1"/>
- <pt x="438" y="799" on="1"/>
- <pt x="725" y="799" on="1"/>
- <pt x="788" y="801" on="1"/>
- <pt x="839" y="802" on="0"/>
- <pt x="848" y="815" on="1"/>
- <pt x="855" y="827" on="0"/>
- <pt x="857" y="857" on="1"/>
- <pt x="858" y="878" on="1"/>
- <pt x="860" y="903" on="1"/>
- <pt x="861" y="921" on="1"/>
- <pt x="941" y="921" on="1"/>
- <pt x="941" y="594" on="1"/>
- <pt x="861" y="594" on="1"/>
- <pt x="860" y="613" on="1"/>
- <pt x="854" y="701" on="0"/>
- <pt x="829" y="708" on="1"/>
- <pt x="803" y="718" on="0"/>
- <pt x="725" y="718" on="1"/>
- <pt x="438" y="718" on="1"/>
- <pt x="438" y="259" on="1"/>
- <pt x="438" y="123" on="0"/>
- <pt x="467" y="95" on="1"/>
- <pt x="491" y="68" on="0"/>
- <pt x="551" y="68" on="1"/>
- <pt x="553" y="68" on="1"/>
- <pt x="569" y="67" on="0"/>
- <pt x="629" y="63" on="1"/>
- <pt x="648" y="62" on="1"/>
- <pt x="648" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="129" y="68" on="1"/>
- <pt x="205" y="74" on="0"/>
- <pt x="215" y="115" on="1"/>
- <pt x="228" y="177" on="0"/>
- <pt x="228" y="259" on="1"/>
- <pt x="228" y="1221" on="1"/>
- <pt x="228" y="1280" on="0"/>
- <pt x="221" y="1333" on="1"/>
- <pt x="215" y="1372" on="0"/>
- <pt x="207" y="1384" on="1"/>
- <pt x="189" y="1410" on="0"/>
- <pt x="129" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 91 values pushed */
- 48 57 47 40 30 39 21 20 2 1 4 9 11 3 23 22 2 28 39 3 0 0 10 9 21
- 1 0 29 28 7 1 11 2 4 48 84 12 11 1 40 39 1 2 0 57 0 0 14 57 48
- 40 47 39 30 2 0 21 2 28 23 20 12 9 5 21 10 3 0 0 30 29 11 10 32 3
- 47 1 4 48 196 1 0 1 22 21 1 48 47 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="G" xMin="85" yMin="-37" xMax="1458" yMax="1518">
- <contour>
- <pt x="1285" y="36" on="1"/>
- <pt x="994" y="-37" on="0"/>
- <pt x="805" y="-37" on="1"/>
- <pt x="475" y="-37" on="0"/>
- <pt x="280" y="175" on="1"/>
- <pt x="85" y="386" on="0"/>
- <pt x="85" y="745" on="1"/>
- <pt x="85" y="1112" on="0"/>
- <pt x="275" y="1315" on="1"/>
- <pt x="464" y="1518" on="0"/>
- <pt x="815" y="1518" on="1"/>
- <pt x="1047" y="1518" on="0"/>
- <pt x="1282" y="1441" on="1"/>
- <pt x="1282" y="1172" on="1"/>
- <pt x="1171" y="1172" on="1"/>
- <pt x="1170" y="1192" on="1"/>
- <pt x="1168" y="1217" on="0"/>
- <pt x="1168" y="1242" on="1"/>
- <pt x="1168" y="1249" on="1"/>
- <pt x="1168" y="1333" on="0"/>
- <pt x="1094" y="1385" on="1"/>
- <pt x="1001" y="1450" on="0"/>
- <pt x="825" y="1450" on="1"/>
- <pt x="575" y="1450" on="0"/>
- <pt x="444" y="1263" on="1"/>
- <pt x="313" y="1077" on="0"/>
- <pt x="313" y="733" on="1"/>
- <pt x="313" y="386" on="0"/>
- <pt x="475" y="214" on="1"/>
- <pt x="633" y="47" on="0"/>
- <pt x="864" y="47" on="1"/>
- <pt x="948" y="47" on="0"/>
- <pt x="1076" y="80" on="1"/>
- <pt x="1076" y="371" on="1"/>
- <pt x="1077" y="487" on="0"/>
- <pt x="1058" y="527" on="1"/>
- <pt x="1043" y="557" on="0"/>
- <pt x="977" y="562" on="1"/>
- <pt x="909" y="568" on="1"/>
- <pt x="891" y="569" on="1"/>
- <pt x="891" y="630" on="1"/>
- <pt x="1458" y="630" on="1"/>
- <pt x="1458" y="569" on="1"/>
- <pt x="1440" y="568" on="1"/>
- <pt x="1384" y="562" on="1"/>
- <pt x="1317" y="556" on="0"/>
- <pt x="1305" y="535" on="1"/>
- <pt x="1294" y="516" on="0"/>
- <pt x="1291" y="470" on="1"/>
- <pt x="1285" y="371" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 84 values pushed */
- 0 0 30 7 2 22 17 10 48 84 10 0 2 2 1 18 17 14 13 12 5 0 40 3 0
- 1 49 42 39 33 32 0 6 40 2 3 0 41 40 1 0 14 0 0 26 34 6 48 196 18
- 17 14 3 12 32 3 42 41 2 13 0 40 39 6 32 0 0 33 32 32 1 0 1 4 48
- 196 49 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Gbreve" xMin="85" yMin="-37" xMax="1458" yMax="1925">
- <contour>
- <pt x="1285" y="36" on="1"/>
- <pt x="994" y="-37" on="0"/>
- <pt x="805" y="-37" on="1"/>
- <pt x="475" y="-37" on="0"/>
- <pt x="280" y="175" on="1"/>
- <pt x="85" y="386" on="0"/>
- <pt x="85" y="745" on="1"/>
- <pt x="85" y="1112" on="0"/>
- <pt x="275" y="1315" on="1"/>
- <pt x="464" y="1518" on="0"/>
- <pt x="815" y="1518" on="1"/>
- <pt x="1047" y="1518" on="0"/>
- <pt x="1282" y="1441" on="1"/>
- <pt x="1282" y="1172" on="1"/>
- <pt x="1171" y="1172" on="1"/>
- <pt x="1170" y="1192" on="1"/>
- <pt x="1168" y="1217" on="0"/>
- <pt x="1168" y="1242" on="1"/>
- <pt x="1168" y="1249" on="1"/>
- <pt x="1168" y="1333" on="0"/>
- <pt x="1094" y="1385" on="1"/>
- <pt x="1001" y="1450" on="0"/>
- <pt x="825" y="1450" on="1"/>
- <pt x="575" y="1450" on="0"/>
- <pt x="444" y="1263" on="1"/>
- <pt x="313" y="1077" on="0"/>
- <pt x="313" y="733" on="1"/>
- <pt x="313" y="386" on="0"/>
- <pt x="475" y="214" on="1"/>
- <pt x="633" y="47" on="0"/>
- <pt x="864" y="47" on="1"/>
- <pt x="948" y="47" on="0"/>
- <pt x="1076" y="80" on="1"/>
- <pt x="1076" y="371" on="1"/>
- <pt x="1077" y="487" on="0"/>
- <pt x="1058" y="527" on="1"/>
- <pt x="1043" y="557" on="0"/>
- <pt x="977" y="562" on="1"/>
- <pt x="909" y="568" on="1"/>
- <pt x="891" y="569" on="1"/>
- <pt x="891" y="630" on="1"/>
- <pt x="1458" y="630" on="1"/>
- <pt x="1458" y="569" on="1"/>
- <pt x="1440" y="568" on="1"/>
- <pt x="1384" y="562" on="1"/>
- <pt x="1317" y="556" on="0"/>
- <pt x="1305" y="535" on="1"/>
- <pt x="1294" y="516" on="0"/>
- <pt x="1291" y="470" on="1"/>
- <pt x="1285" y="371" on="1"/>
- </contour>
- <contour>
- <pt x="488" y="1925" on="1"/>
- <pt x="553" y="1925" on="1"/>
- <pt x="580" y="1835" on="0"/>
- <pt x="640" y="1793" on="1"/>
- <pt x="708" y="1746" on="0"/>
- <pt x="821" y="1746" on="1"/>
- <pt x="947" y="1746" on="0"/>
- <pt x="1017" y="1805" on="1"/>
- <pt x="1066" y="1845" on="0"/>
- <pt x="1090" y="1925" on="1"/>
- <pt x="1154" y="1925" on="1"/>
- <pt x="1135" y="1790" on="0"/>
- <pt x="1063" y="1709" on="1"/>
- <pt x="969" y="1604" on="0"/>
- <pt x="821" y="1604" on="1"/>
- <pt x="667" y="1604" on="0"/>
- <pt x="572" y="1719" on="1"/>
- <pt x="507" y="1796" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 103 values pushed */
- 0 0 55 20 64 30 7 2 22 17 10 48 84 10 0 2 2 1 18 17 14 13 12 5 0
- 40 3 0 1 49 42 39 33 32 0 6 40 2 3 0 1 60 59 51 50 4 13 64 0 0
- 41 40 1 0 14 0 0 26 34 6 48 196 60 59 18 17 14 5 12 32 3 42 41 2 13
- 0 51 50 40 39 4 13 6 32 0 0 33 32 32 1 0 1 4 48 196 49 0 1 13 12
- 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Gcircumflex" xMin="85" yMin="-37" xMax="1458" yMax="1925">
- <contour>
- <pt x="1285" y="36" on="1"/>
- <pt x="994" y="-37" on="0"/>
- <pt x="805" y="-37" on="1"/>
- <pt x="475" y="-37" on="0"/>
- <pt x="280" y="175" on="1"/>
- <pt x="85" y="386" on="0"/>
- <pt x="85" y="745" on="1"/>
- <pt x="85" y="1112" on="0"/>
- <pt x="275" y="1315" on="1"/>
- <pt x="464" y="1518" on="0"/>
- <pt x="815" y="1518" on="1"/>
- <pt x="1047" y="1518" on="0"/>
- <pt x="1282" y="1441" on="1"/>
- <pt x="1282" y="1172" on="1"/>
- <pt x="1171" y="1172" on="1"/>
- <pt x="1170" y="1192" on="1"/>
- <pt x="1168" y="1217" on="0"/>
- <pt x="1168" y="1242" on="1"/>
- <pt x="1168" y="1249" on="1"/>
- <pt x="1168" y="1333" on="0"/>
- <pt x="1094" y="1385" on="1"/>
- <pt x="1001" y="1450" on="0"/>
- <pt x="825" y="1450" on="1"/>
- <pt x="575" y="1450" on="0"/>
- <pt x="444" y="1263" on="1"/>
- <pt x="313" y="1077" on="0"/>
- <pt x="313" y="733" on="1"/>
- <pt x="313" y="386" on="0"/>
- <pt x="475" y="214" on="1"/>
- <pt x="633" y="47" on="0"/>
- <pt x="864" y="47" on="1"/>
- <pt x="948" y="47" on="0"/>
- <pt x="1076" y="80" on="1"/>
- <pt x="1076" y="371" on="1"/>
- <pt x="1077" y="487" on="0"/>
- <pt x="1058" y="527" on="1"/>
- <pt x="1043" y="557" on="0"/>
- <pt x="977" y="562" on="1"/>
- <pt x="909" y="568" on="1"/>
- <pt x="891" y="569" on="1"/>
- <pt x="891" y="630" on="1"/>
- <pt x="1458" y="630" on="1"/>
- <pt x="1458" y="569" on="1"/>
- <pt x="1440" y="568" on="1"/>
- <pt x="1384" y="562" on="1"/>
- <pt x="1317" y="556" on="0"/>
- <pt x="1305" y="535" on="1"/>
- <pt x="1294" y="516" on="0"/>
- <pt x="1291" y="470" on="1"/>
- <pt x="1285" y="371" on="1"/>
- </contour>
- <contour>
- <pt x="469" y="1604" on="1"/>
- <pt x="710" y="1925" on="1"/>
- <pt x="932" y="1925" on="1"/>
- <pt x="1172" y="1604" on="1"/>
- <pt x="1086" y="1604" on="1"/>
- <pt x="821" y="1826" on="1"/>
- <pt x="555" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 108 values pushed */
- 0 0 30 7 2 22 17 10 48 84 10 0 2 2 1 56 55 54 53 50 5 51 0 3 0
- 1 18 17 14 13 12 5 0 40 3 0 1 49 42 39 33 32 0 6 40 2 3 0 52 51
- 1 41 40 1 2 0 14 0 0 26 34 6 48 196 54 53 18 17 14 5 12 32 3 42 41
- 2 13 0 56 55 52 51 50 40 39 7 13 6 32 0 0 33 32 32 1 0 1 4 48 196
- 49 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Gcommaaccent" xMin="85" yMin="-432" xMax="1458" yMax="1518">
- <contour>
- <pt x="1285" y="36" on="1"/>
- <pt x="994" y="-37" on="0"/>
- <pt x="805" y="-37" on="1"/>
- <pt x="475" y="-37" on="0"/>
- <pt x="280" y="175" on="1"/>
- <pt x="85" y="386" on="0"/>
- <pt x="85" y="745" on="1"/>
- <pt x="85" y="1112" on="0"/>
- <pt x="275" y="1315" on="1"/>
- <pt x="464" y="1518" on="0"/>
- <pt x="815" y="1518" on="1"/>
- <pt x="1047" y="1518" on="0"/>
- <pt x="1282" y="1441" on="1"/>
- <pt x="1282" y="1172" on="1"/>
- <pt x="1171" y="1172" on="1"/>
- <pt x="1170" y="1192" on="1"/>
- <pt x="1168" y="1217" on="0"/>
- <pt x="1168" y="1242" on="1"/>
- <pt x="1168" y="1249" on="1"/>
- <pt x="1168" y="1333" on="0"/>
- <pt x="1094" y="1385" on="1"/>
- <pt x="1001" y="1450" on="0"/>
- <pt x="825" y="1450" on="1"/>
- <pt x="575" y="1450" on="0"/>
- <pt x="444" y="1263" on="1"/>
- <pt x="313" y="1077" on="0"/>
- <pt x="313" y="733" on="1"/>
- <pt x="313" y="386" on="0"/>
- <pt x="475" y="214" on="1"/>
- <pt x="633" y="47" on="0"/>
- <pt x="864" y="47" on="1"/>
- <pt x="948" y="47" on="0"/>
- <pt x="1076" y="80" on="1"/>
- <pt x="1076" y="371" on="1"/>
- <pt x="1077" y="486" on="0"/>
- <pt x="1058" y="527" on="1"/>
- <pt x="1042" y="557" on="0"/>
- <pt x="977" y="562" on="1"/>
- <pt x="909" y="568" on="1"/>
- <pt x="891" y="569" on="1"/>
- <pt x="891" y="630" on="1"/>
- <pt x="1458" y="630" on="1"/>
- <pt x="1458" y="569" on="1"/>
- <pt x="1440" y="568" on="1"/>
- <pt x="1384" y="562" on="1"/>
- <pt x="1317" y="556" on="0"/>
- <pt x="1305" y="535" on="1"/>
- <pt x="1294" y="516" on="0"/>
- <pt x="1291" y="470" on="1"/>
- <pt x="1285" y="371" on="1"/>
- </contour>
- <contour>
- <pt x="614" y="-421" on="1"/>
- <pt x="614" y="-349" on="1"/>
- <pt x="663" y="-359" on="0"/>
- <pt x="718" y="-359" on="1"/>
- <pt x="821" y="-359" on="0"/>
- <pt x="821" y="-279" on="1"/>
- <pt x="821" y="-190" on="0"/>
- <pt x="663" y="-175" on="1"/>
- <pt x="663" y="-111" on="1"/>
- <pt x="798" y="-114" on="0"/>
- <pt x="863" y="-143" on="1"/>
- <pt x="956" y="-185" on="0"/>
- <pt x="956" y="-280" on="1"/>
- <pt x="956" y="-432" on="0"/>
- <pt x="739" y="-432" on="1"/>
- <pt x="679" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 107 values pushed */
- 0 0 53 17 64 30 7 2 22 17 10 48 84 10 0 2 2 1 18 17 14 13 12 5 0
- 40 3 0 1 49 42 39 33 32 0 6 40 2 3 0 1 58 57 51 50 4 13 64 2 0
- 41 40 1 0 14 0 0 55 48 62 26 34 6 48 196 18 17 14 3 12 32 3 42 41 2
- 13 0 58 57 51 50 40 39 6 13 62 6 32 0 0 33 32 32 1 0 1 4 48 196 49
- 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Gdotaccent" xMin="85" yMin="-37" xMax="1458" yMax="1801">
- <contour>
- <pt x="1285" y="36" on="1"/>
- <pt x="994" y="-37" on="0"/>
- <pt x="805" y="-37" on="1"/>
- <pt x="475" y="-37" on="0"/>
- <pt x="280" y="175" on="1"/>
- <pt x="85" y="386" on="0"/>
- <pt x="85" y="745" on="1"/>
- <pt x="85" y="1112" on="0"/>
- <pt x="275" y="1315" on="1"/>
- <pt x="464" y="1518" on="0"/>
- <pt x="815" y="1518" on="1"/>
- <pt x="1047" y="1518" on="0"/>
- <pt x="1282" y="1441" on="1"/>
- <pt x="1282" y="1172" on="1"/>
- <pt x="1171" y="1172" on="1"/>
- <pt x="1170" y="1192" on="1"/>
- <pt x="1168" y="1217" on="0"/>
- <pt x="1168" y="1242" on="1"/>
- <pt x="1168" y="1249" on="1"/>
- <pt x="1168" y="1333" on="0"/>
- <pt x="1094" y="1385" on="1"/>
- <pt x="1001" y="1450" on="0"/>
- <pt x="825" y="1450" on="1"/>
- <pt x="575" y="1450" on="0"/>
- <pt x="444" y="1263" on="1"/>
- <pt x="313" y="1077" on="0"/>
- <pt x="313" y="733" on="1"/>
- <pt x="313" y="386" on="0"/>
- <pt x="475" y="214" on="1"/>
- <pt x="633" y="47" on="0"/>
- <pt x="864" y="47" on="1"/>
- <pt x="948" y="47" on="0"/>
- <pt x="1076" y="80" on="1"/>
- <pt x="1076" y="371" on="1"/>
- <pt x="1077" y="487" on="0"/>
- <pt x="1058" y="527" on="1"/>
- <pt x="1043" y="557" on="0"/>
- <pt x="977" y="562" on="1"/>
- <pt x="909" y="568" on="1"/>
- <pt x="891" y="569" on="1"/>
- <pt x="891" y="630" on="1"/>
- <pt x="1458" y="630" on="1"/>
- <pt x="1458" y="569" on="1"/>
- <pt x="1440" y="568" on="1"/>
- <pt x="1384" y="562" on="1"/>
- <pt x="1317" y="556" on="0"/>
- <pt x="1305" y="535" on="1"/>
- <pt x="1294" y="516" on="0"/>
- <pt x="1291" y="470" on="1"/>
- <pt x="1285" y="371" on="1"/>
- </contour>
- <contour>
- <pt x="722" y="1604" on="1"/>
- <pt x="722" y="1801" on="1"/>
- <pt x="919" y="1801" on="1"/>
- <pt x="919" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 111 values pushed */
- 0 0 30 7 2 22 17 10 48 84 10 0 2 2 1 18 17 14 13 12 5 0 40 3 0
- 1 49 42 39 33 32 0 6 40 2 3 0 0 0 53 50 5 1 51 1 4 48 84 52 51
- 1 41 40 1 2 0 14 0 0 26 34 6 48 196 18 17 14 3 12 32 3 40 39 2 52
- 50 3 42 41 2 13 0 6 50 0 0 53 52 4 1 50 33 32 32 1 0 2 4 48 196
- 51 50 1 49 0 1 13 12 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="H" xMin="41" yMin="0" xMax="1438" yMax="1480">
- <contour>
- <pt x="436" y="812" on="1"/>
- <pt x="1043" y="812" on="1"/>
- <pt x="1043" y="1221" on="1"/>
- <pt x="1043" y="1280" on="0"/>
- <pt x="1036" y="1333" on="1"/>
- <pt x="1030" y="1372" on="0"/>
- <pt x="1022" y="1384" on="1"/>
- <pt x="1003" y="1409" on="0"/>
- <pt x="945" y="1413" on="1"/>
- <pt x="877" y="1417" on="1"/>
- <pt x="858" y="1419" on="1"/>
- <pt x="858" y="1480" on="1"/>
- <pt x="1438" y="1480" on="1"/>
- <pt x="1438" y="1419" on="1"/>
- <pt x="1420" y="1417" on="1"/>
- <pt x="1352" y="1413" on="1"/>
- <pt x="1277" y="1408" on="0"/>
- <pt x="1267" y="1366" on="1"/>
- <pt x="1252" y="1305" on="0"/>
- <pt x="1253" y="1221" on="1"/>
- <pt x="1253" y="259" on="1"/>
- <pt x="1253" y="203" on="0"/>
- <pt x="1261" y="147" on="1"/>
- <pt x="1268" y="96" on="0"/>
- <pt x="1293" y="82" on="1"/>
- <pt x="1314" y="71" on="0"/>
- <pt x="1352" y="68" on="1"/>
- <pt x="1420" y="63" on="1"/>
- <pt x="1438" y="62" on="1"/>
- <pt x="1438" y="0" on="1"/>
- <pt x="858" y="0" on="1"/>
- <pt x="858" y="62" on="1"/>
- <pt x="877" y="63" on="1"/>
- <pt x="945" y="68" on="1"/>
- <pt x="1020" y="74" on="0"/>
- <pt x="1030" y="115" on="1"/>
- <pt x="1043" y="177" on="0"/>
- <pt x="1043" y="259" on="1"/>
- <pt x="1043" y="726" on="1"/>
- <pt x="436" y="726" on="1"/>
- <pt x="436" y="259" on="1"/>
- <pt x="436" y="200" on="0"/>
- <pt x="443" y="147" on="1"/>
- <pt x="449" y="109" on="0"/>
- <pt x="457" y="97" on="1"/>
- <pt x="476" y="72" on="0"/>
- <pt x="534" y="68" on="1"/>
- <pt x="602" y="63" on="1"/>
- <pt x="621" y="62" on="1"/>
- <pt x="621" y="0" on="1"/>
- <pt x="41" y="0" on="1"/>
- <pt x="41" y="62" on="1"/>
- <pt x="60" y="63" on="1"/>
- <pt x="128" y="68" on="1"/>
- <pt x="192" y="73" on="0"/>
- <pt x="226" y="139" on="0"/>
- <pt x="226" y="259" on="1"/>
- <pt x="226" y="1221" on="1"/>
- <pt x="226" y="1280" on="0"/>
- <pt x="219" y="1333" on="1"/>
- <pt x="213" y="1372" on="0"/>
- <pt x="205" y="1384" on="1"/>
- <pt x="186" y="1409" on="0"/>
- <pt x="128" y="1413" on="1"/>
- <pt x="60" y="1417" on="1"/>
- <pt x="41" y="1419" on="1"/>
- <pt x="41" y="1480" on="1"/>
- <pt x="621" y="1480" on="1"/>
- <pt x="621" y="1419" on="1"/>
- <pt x="602" y="1417" on="1"/>
- <pt x="534" y="1413" on="1"/>
- <pt x="459" y="1408" on="0"/>
- <pt x="449" y="1366" on="1"/>
- <pt x="436" y="1302" on="0"/>
- <pt x="436" y="1221" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 88 values pushed */
- 74 67 57 66 56 50 40 49 37 30 20 29 19 12 2 11 0 0 39 38 7 1 0 1 4
- 48 84 1 0 1 50 49 30 29 3 2 0 67 66 12 11 0 3 14 67 74 66 57 50 56
- 49 40 30 37 29 20 12 19 11 2 0 0 38 37 2 1 32 3 19 74 40 39 0 32 3
- 56 2 4 48 196 20 19 1 57 56 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Hbar" xMin="41" yMin="0" xMax="1438" yMax="1480">
- <contour>
- <pt x="1043" y="726" on="1"/>
- <pt x="436" y="726" on="1"/>
- <pt x="436" y="259" on="1"/>
- <pt x="436" y="200" on="0"/>
- <pt x="443" y="147" on="1"/>
- <pt x="449" y="109" on="0"/>
- <pt x="457" y="97" on="1"/>
- <pt x="476" y="72" on="0"/>
- <pt x="534" y="68" on="1"/>
- <pt x="602" y="63" on="1"/>
- <pt x="621" y="62" on="1"/>
- <pt x="621" y="0" on="1"/>
- <pt x="41" y="0" on="1"/>
- <pt x="41" y="62" on="1"/>
- <pt x="60" y="63" on="1"/>
- <pt x="128" y="68" on="1"/>
- <pt x="192" y="73" on="0"/>
- <pt x="226" y="139" on="0"/>
- <pt x="226" y="259" on="1"/>
- <pt x="226" y="1086" on="1"/>
- <pt x="41" y="1086" on="1"/>
- <pt x="41" y="1160" on="1"/>
- <pt x="226" y="1160" on="1"/>
- <pt x="226" y="1221" on="1"/>
- <pt x="226" y="1280" on="0"/>
- <pt x="219" y="1333" on="1"/>
- <pt x="213" y="1372" on="0"/>
- <pt x="205" y="1384" on="1"/>
- <pt x="186" y="1409" on="0"/>
- <pt x="128" y="1413" on="1"/>
- <pt x="60" y="1417" on="1"/>
- <pt x="41" y="1419" on="1"/>
- <pt x="41" y="1480" on="1"/>
- <pt x="621" y="1480" on="1"/>
- <pt x="621" y="1419" on="1"/>
- <pt x="602" y="1417" on="1"/>
- <pt x="534" y="1413" on="1"/>
- <pt x="459" y="1408" on="0"/>
- <pt x="449" y="1366" on="1"/>
- <pt x="436" y="1302" on="0"/>
- <pt x="436" y="1221" on="1"/>
- <pt x="436" y="1160" on="1"/>
- <pt x="1043" y="1160" on="1"/>
- <pt x="1043" y="1221" on="1"/>
- <pt x="1043" y="1280" on="0"/>
- <pt x="1036" y="1333" on="1"/>
- <pt x="1030" y="1372" on="0"/>
- <pt x="1022" y="1384" on="1"/>
- <pt x="1003" y="1409" on="0"/>
- <pt x="945" y="1413" on="1"/>
- <pt x="877" y="1417" on="1"/>
- <pt x="858" y="1419" on="1"/>
- <pt x="858" y="1480" on="1"/>
- <pt x="1438" y="1480" on="1"/>
- <pt x="1438" y="1419" on="1"/>
- <pt x="1420" y="1417" on="1"/>
- <pt x="1352" y="1413" on="1"/>
- <pt x="1277" y="1408" on="0"/>
- <pt x="1267" y="1366" on="1"/>
- <pt x="1252" y="1305" on="0"/>
- <pt x="1253" y="1221" on="1"/>
- <pt x="1253" y="1160" on="1"/>
- <pt x="1438" y="1160" on="1"/>
- <pt x="1438" y="1086" on="1"/>
- <pt x="1253" y="1086" on="1"/>
- <pt x="1253" y="259" on="1"/>
- <pt x="1253" y="203" on="0"/>
- <pt x="1261" y="147" on="1"/>
- <pt x="1268" y="96" on="0"/>
- <pt x="1293" y="82" on="1"/>
- <pt x="1314" y="71" on="0"/>
- <pt x="1352" y="68" on="1"/>
- <pt x="1420" y="63" on="1"/>
- <pt x="1438" y="62" on="1"/>
- <pt x="1438" y="0" on="1"/>
- <pt x="858" y="0" on="1"/>
- <pt x="858" y="62" on="1"/>
- <pt x="877" y="63" on="1"/>
- <pt x="945" y="68" on="1"/>
- <pt x="1020" y="74" on="0"/>
- <pt x="1030" y="115" on="1"/>
- <pt x="1043" y="177" on="0"/>
- <pt x="1043" y="259" on="1"/>
- </contour>
- <contour>
- <pt x="436" y="812" on="1"/>
- <pt x="1043" y="812" on="1"/>
- <pt x="1043" y="1086" on="1"/>
- <pt x="436" y="1086" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 121 values pushed */
- 82 75 65 74 60 53 43 52 40 33 23 32 18 12 2 11 0 0 62 61 42 41 22 21 21
- 5 19 1 0 7 1 83 2 4 48 84 84 83 1 75 74 12 11 3 2 0 53 52 33 32
- 0 3 86 85 64 63 20 19 1 5 14 75 82 74 65 53 60 52 43 33 40 32 23 12 18
- 11 2 63 62 2 13 60 21 20 18 0 0 85 84 82 43 42 0 32 5 60 86 83 41 40
- 2 1 32 5 18 2 4 48 196 65 64 61 60 3 23 22 19 18 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Hcircumflex" xMin="41" yMin="0" xMax="1438" yMax="1925">
- <contour>
- <pt x="436" y="812" on="1"/>
- <pt x="1043" y="812" on="1"/>
- <pt x="1043" y="1221" on="1"/>
- <pt x="1043" y="1280" on="0"/>
- <pt x="1036" y="1333" on="1"/>
- <pt x="1030" y="1372" on="0"/>
- <pt x="1022" y="1384" on="1"/>
- <pt x="1003" y="1409" on="0"/>
- <pt x="945" y="1413" on="1"/>
- <pt x="877" y="1417" on="1"/>
- <pt x="858" y="1419" on="1"/>
- <pt x="858" y="1480" on="1"/>
- <pt x="1438" y="1480" on="1"/>
- <pt x="1438" y="1419" on="1"/>
- <pt x="1420" y="1417" on="1"/>
- <pt x="1352" y="1413" on="1"/>
- <pt x="1277" y="1408" on="0"/>
- <pt x="1267" y="1366" on="1"/>
- <pt x="1252" y="1305" on="0"/>
- <pt x="1253" y="1221" on="1"/>
- <pt x="1253" y="259" on="1"/>
- <pt x="1253" y="203" on="0"/>
- <pt x="1261" y="147" on="1"/>
- <pt x="1268" y="96" on="0"/>
- <pt x="1293" y="82" on="1"/>
- <pt x="1314" y="71" on="0"/>
- <pt x="1352" y="68" on="1"/>
- <pt x="1420" y="63" on="1"/>
- <pt x="1438" y="62" on="1"/>
- <pt x="1438" y="0" on="1"/>
- <pt x="858" y="0" on="1"/>
- <pt x="858" y="62" on="1"/>
- <pt x="877" y="63" on="1"/>
- <pt x="945" y="68" on="1"/>
- <pt x="1020" y="74" on="0"/>
- <pt x="1030" y="115" on="1"/>
- <pt x="1043" y="177" on="0"/>
- <pt x="1043" y="259" on="1"/>
- <pt x="1043" y="726" on="1"/>
- <pt x="436" y="726" on="1"/>
- <pt x="436" y="259" on="1"/>
- <pt x="436" y="200" on="0"/>
- <pt x="443" y="147" on="1"/>
- <pt x="449" y="109" on="0"/>
- <pt x="457" y="97" on="1"/>
- <pt x="476" y="72" on="0"/>
- <pt x="534" y="68" on="1"/>
- <pt x="602" y="63" on="1"/>
- <pt x="621" y="62" on="1"/>
- <pt x="621" y="0" on="1"/>
- <pt x="41" y="0" on="1"/>
- <pt x="41" y="62" on="1"/>
- <pt x="60" y="63" on="1"/>
- <pt x="128" y="68" on="1"/>
- <pt x="192" y="73" on="0"/>
- <pt x="226" y="139" on="0"/>
- <pt x="226" y="259" on="1"/>
- <pt x="226" y="1221" on="1"/>
- <pt x="226" y="1280" on="0"/>
- <pt x="219" y="1333" on="1"/>
- <pt x="213" y="1372" on="0"/>
- <pt x="205" y="1384" on="1"/>
- <pt x="186" y="1409" on="0"/>
- <pt x="128" y="1413" on="1"/>
- <pt x="60" y="1417" on="1"/>
- <pt x="41" y="1419" on="1"/>
- <pt x="41" y="1480" on="1"/>
- <pt x="621" y="1480" on="1"/>
- <pt x="621" y="1419" on="1"/>
- <pt x="602" y="1417" on="1"/>
- <pt x="534" y="1413" on="1"/>
- <pt x="459" y="1408" on="0"/>
- <pt x="449" y="1366" on="1"/>
- <pt x="436" y="1302" on="0"/>
- <pt x="436" y="1221" on="1"/>
- </contour>
- <contour>
- <pt x="388" y="1604" on="1"/>
- <pt x="629" y="1925" on="1"/>
- <pt x="851" y="1925" on="1"/>
- <pt x="1091" y="1604" on="1"/>
- <pt x="1005" y="1604" on="1"/>
- <pt x="740" y="1826" on="1"/>
- <pt x="474" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 117 values pushed */
- 74 67 57 66 56 50 40 49 37 30 20 29 19 12 2 11 81 80 79 78 75 5 76 11 3
- 0 0 39 38 7 1 0 1 4 48 84 77 76 1 1 0 1 50 49 30 29 3 3 0 67
- 66 12 11 0 3 14 67 74 66 57 50 56 49 40 30 37 29 20 12 19 11 2 78 19 1
- 2 81 80 79 77 76 5 1 0 3 75 0 56 2 0 0 38 37 2 1 32 3 19 74 40
- 39 0 32 3 56 2 4 48 196 20 19 1 57 56 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="I" xMin="51" yMin="0" xMax="631" yMax="1480">
- <contour>
- <pt x="236" y="259" on="1"/>
- <pt x="236" y="1221" on="1"/>
- <pt x="236" y="1280" on="0"/>
- <pt x="229" y="1333" on="1"/>
- <pt x="223" y="1372" on="0"/>
- <pt x="215" y="1384" on="1"/>
- <pt x="197" y="1410" on="0"/>
- <pt x="137" y="1413" on="1"/>
- <pt x="70" y="1417" on="1"/>
- <pt x="51" y="1419" on="1"/>
- <pt x="51" y="1480" on="1"/>
- <pt x="631" y="1480" on="1"/>
- <pt x="631" y="1419" on="1"/>
- <pt x="612" y="1417" on="1"/>
- <pt x="544" y="1413" on="1"/>
- <pt x="469" y="1408" on="0"/>
- <pt x="459" y="1366" on="1"/>
- <pt x="446" y="1302" on="0"/>
- <pt x="446" y="1221" on="1"/>
- <pt x="446" y="259" on="1"/>
- <pt x="446" y="200" on="0"/>
- <pt x="453" y="147" on="1"/>
- <pt x="459" y="109" on="0"/>
- <pt x="467" y="97" on="1"/>
- <pt x="486" y="72" on="0"/>
- <pt x="544" y="68" on="1"/>
- <pt x="612" y="63" on="1"/>
- <pt x="631" y="62" on="1"/>
- <pt x="631" y="0" on="1"/>
- <pt x="51" y="0" on="1"/>
- <pt x="51" y="62" on="1"/>
- <pt x="70" y="63" on="1"/>
- <pt x="137" y="68" on="1"/>
- <pt x="213" y="74" on="0"/>
- <pt x="223" y="115" on="1"/>
- <pt x="236" y="177" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 39 values pushed */
- 0 29 19 28 18 11 1 10 29 28 1 0 11 10 0 14 29 0 28 19 11 18 10 1 0
- 0 19 18 32 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="IJ" xMin="51" yMin="-297" xMax="1420" yMax="1480">
- <component glyphName="I" x="0" y="0" flags="0x4"/>
- <component glyphName="J" x="654" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="Iacute" xMin="51" yMin="0" xMax="637" yMax="1925">
- <contour>
- <pt x="236" y="259" on="1"/>
- <pt x="236" y="1221" on="1"/>
- <pt x="236" y="1280" on="0"/>
- <pt x="229" y="1333" on="1"/>
- <pt x="223" y="1372" on="0"/>
- <pt x="215" y="1384" on="1"/>
- <pt x="197" y="1410" on="0"/>
- <pt x="137" y="1413" on="1"/>
- <pt x="70" y="1417" on="1"/>
- <pt x="51" y="1419" on="1"/>
- <pt x="51" y="1480" on="1"/>
- <pt x="631" y="1480" on="1"/>
- <pt x="631" y="1419" on="1"/>
- <pt x="612" y="1417" on="1"/>
- <pt x="544" y="1413" on="1"/>
- <pt x="469" y="1408" on="0"/>
- <pt x="459" y="1366" on="1"/>
- <pt x="446" y="1302" on="0"/>
- <pt x="446" y="1221" on="1"/>
- <pt x="446" y="259" on="1"/>
- <pt x="446" y="200" on="0"/>
- <pt x="453" y="147" on="1"/>
- <pt x="459" y="109" on="0"/>
- <pt x="467" y="97" on="1"/>
- <pt x="486" y="72" on="0"/>
- <pt x="544" y="68" on="1"/>
- <pt x="612" y="63" on="1"/>
- <pt x="631" y="62" on="1"/>
- <pt x="631" y="0" on="1"/>
- <pt x="51" y="0" on="1"/>
- <pt x="51" y="62" on="1"/>
- <pt x="70" y="63" on="1"/>
- <pt x="137" y="68" on="1"/>
- <pt x="213" y="74" on="0"/>
- <pt x="223" y="115" on="1"/>
- <pt x="236" y="177" on="0"/>
- </contour>
- <contour>
- <pt x="137" y="1604" on="1"/>
- <pt x="378" y="1925" on="1"/>
- <pt x="637" y="1925" on="1"/>
- <pt x="230" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 58 values pushed */
- 0 29 19 28 18 11 1 10 39 36 2 37 10 3 38 37 1 29 28 1 2 0 11 10 0
- 14 29 0 28 19 11 18 10 1 37 18 0 2 38 18 39 36 0 0 0 19 18 32 1 0
- 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ibreve" xMin="8" yMin="0" xMax="674" yMax="1925">
- <contour>
- <pt x="236" y="259" on="1"/>
- <pt x="236" y="1221" on="1"/>
- <pt x="236" y="1280" on="0"/>
- <pt x="229" y="1333" on="1"/>
- <pt x="223" y="1372" on="0"/>
- <pt x="215" y="1384" on="1"/>
- <pt x="197" y="1410" on="0"/>
- <pt x="137" y="1413" on="1"/>
- <pt x="70" y="1417" on="1"/>
- <pt x="51" y="1419" on="1"/>
- <pt x="51" y="1480" on="1"/>
- <pt x="631" y="1480" on="1"/>
- <pt x="631" y="1419" on="1"/>
- <pt x="612" y="1417" on="1"/>
- <pt x="544" y="1413" on="1"/>
- <pt x="469" y="1408" on="0"/>
- <pt x="459" y="1366" on="1"/>
- <pt x="446" y="1302" on="0"/>
- <pt x="446" y="1221" on="1"/>
- <pt x="446" y="259" on="1"/>
- <pt x="446" y="200" on="0"/>
- <pt x="453" y="147" on="1"/>
- <pt x="459" y="109" on="0"/>
- <pt x="467" y="97" on="1"/>
- <pt x="486" y="72" on="0"/>
- <pt x="544" y="68" on="1"/>
- <pt x="612" y="63" on="1"/>
- <pt x="631" y="62" on="1"/>
- <pt x="631" y="0" on="1"/>
- <pt x="51" y="0" on="1"/>
- <pt x="51" y="62" on="1"/>
- <pt x="70" y="63" on="1"/>
- <pt x="137" y="68" on="1"/>
- <pt x="213" y="74" on="0"/>
- <pt x="223" y="115" on="1"/>
- <pt x="236" y="177" on="0"/>
- </contour>
- <contour>
- <pt x="8" y="1925" on="1"/>
- <pt x="73" y="1925" on="1"/>
- <pt x="100" y="1835" on="0"/>
- <pt x="160" y="1793" on="1"/>
- <pt x="228" y="1746" on="0"/>
- <pt x="341" y="1746" on="1"/>
- <pt x="467" y="1746" on="0"/>
- <pt x="537" y="1805" on="1"/>
- <pt x="586" y="1845" on="0"/>
- <pt x="610" y="1925" on="1"/>
- <pt x="674" y="1925" on="1"/>
- <pt x="655" y="1790" on="0"/>
- <pt x="583" y="1709" on="1"/>
- <pt x="489" y="1604" on="0"/>
- <pt x="341" y="1604" on="1"/>
- <pt x="187" y="1604" on="0"/>
- <pt x="92" y="1719" on="1"/>
- <pt x="27" y="1797" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 0 0 41 20 50 48 84 0 29 19 28 18 11 1 10 46 45 37 36 4 13 50 10 29 28
- 1 0 11 10 0 14 29 0 28 19 11 18 10 1 46 45 2 13 18 37 36 0 0 0 19
- 18 37 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Icircumflex" xMin="-11" yMin="0" xMax="692" yMax="1925">
- <contour>
- <pt x="236" y="259" on="1"/>
- <pt x="236" y="1221" on="1"/>
- <pt x="236" y="1280" on="0"/>
- <pt x="229" y="1333" on="1"/>
- <pt x="223" y="1372" on="0"/>
- <pt x="215" y="1384" on="1"/>
- <pt x="197" y="1410" on="0"/>
- <pt x="137" y="1413" on="1"/>
- <pt x="70" y="1417" on="1"/>
- <pt x="51" y="1419" on="1"/>
- <pt x="51" y="1480" on="1"/>
- <pt x="631" y="1480" on="1"/>
- <pt x="631" y="1419" on="1"/>
- <pt x="612" y="1417" on="1"/>
- <pt x="544" y="1413" on="1"/>
- <pt x="469" y="1408" on="0"/>
- <pt x="459" y="1366" on="1"/>
- <pt x="446" y="1302" on="0"/>
- <pt x="446" y="1221" on="1"/>
- <pt x="446" y="259" on="1"/>
- <pt x="446" y="200" on="0"/>
- <pt x="453" y="147" on="1"/>
- <pt x="459" y="109" on="0"/>
- <pt x="467" y="97" on="1"/>
- <pt x="486" y="72" on="0"/>
- <pt x="544" y="68" on="1"/>
- <pt x="612" y="63" on="1"/>
- <pt x="631" y="62" on="1"/>
- <pt x="631" y="0" on="1"/>
- <pt x="51" y="0" on="1"/>
- <pt x="51" y="62" on="1"/>
- <pt x="70" y="63" on="1"/>
- <pt x="137" y="68" on="1"/>
- <pt x="213" y="74" on="0"/>
- <pt x="223" y="115" on="1"/>
- <pt x="236" y="177" on="0"/>
- </contour>
- <contour>
- <pt x="-11" y="1604" on="1"/>
- <pt x="230" y="1925" on="1"/>
- <pt x="452" y="1925" on="1"/>
- <pt x="692" y="1604" on="1"/>
- <pt x="606" y="1604" on="1"/>
- <pt x="341" y="1826" on="1"/>
- <pt x="75" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 68 values pushed */
- 0 29 19 28 18 11 1 10 42 41 40 39 36 5 37 10 3 38 37 1 29 28 1 2 0
- 11 10 0 14 29 0 28 19 11 18 10 1 41 18 0 2 40 39 38 3 13 18 42 37 36
- 3 13 0 0 0 19 18 32 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Idieresis" xMin="51" yMin="0" xMax="631" yMax="1777">
- <contour>
- <pt x="236" y="259" on="1"/>
- <pt x="236" y="1221" on="1"/>
- <pt x="236" y="1280" on="0"/>
- <pt x="229" y="1333" on="1"/>
- <pt x="223" y="1372" on="0"/>
- <pt x="215" y="1384" on="1"/>
- <pt x="197" y="1410" on="0"/>
- <pt x="137" y="1413" on="1"/>
- <pt x="70" y="1417" on="1"/>
- <pt x="51" y="1419" on="1"/>
- <pt x="51" y="1480" on="1"/>
- <pt x="631" y="1480" on="1"/>
- <pt x="631" y="1419" on="1"/>
- <pt x="612" y="1417" on="1"/>
- <pt x="544" y="1413" on="1"/>
- <pt x="469" y="1408" on="0"/>
- <pt x="459" y="1366" on="1"/>
- <pt x="446" y="1302" on="0"/>
- <pt x="446" y="1221" on="1"/>
- <pt x="446" y="259" on="1"/>
- <pt x="446" y="200" on="0"/>
- <pt x="453" y="147" on="1"/>
- <pt x="459" y="109" on="0"/>
- <pt x="467" y="97" on="1"/>
- <pt x="486" y="72" on="0"/>
- <pt x="544" y="68" on="1"/>
- <pt x="612" y="63" on="1"/>
- <pt x="631" y="62" on="1"/>
- <pt x="631" y="0" on="1"/>
- <pt x="51" y="0" on="1"/>
- <pt x="51" y="62" on="1"/>
- <pt x="70" y="63" on="1"/>
- <pt x="137" y="68" on="1"/>
- <pt x="213" y="74" on="0"/>
- <pt x="223" y="115" on="1"/>
- <pt x="236" y="177" on="0"/>
- </contour>
- <contour>
- <pt x="57" y="1604" on="1"/>
- <pt x="57" y="1777" on="1"/>
- <pt x="230" y="1777" on="1"/>
- <pt x="230" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="452" y="1604" on="1"/>
- <pt x="452" y="1777" on="1"/>
- <pt x="625" y="1777" on="1"/>
- <pt x="625" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 75 values pushed */
- 0 29 19 28 18 11 1 10 0 0 43 40 39 36 13 3 37 1 4 48 84 42 41 38 37
- 3 29 28 1 2 0 11 10 0 14 29 0 28 19 11 18 10 1 0 0 41 40 13 1 42
- 39 38 13 1 36 19 18 32 1 0 3 4 48 196 43 42 1 37 36 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Idotaccent" xMin="51" yMin="0" xMax="631" yMax="1801">
- <contour>
- <pt x="236" y="259" on="1"/>
- <pt x="236" y="1221" on="1"/>
- <pt x="236" y="1280" on="0"/>
- <pt x="229" y="1333" on="1"/>
- <pt x="223" y="1372" on="0"/>
- <pt x="215" y="1384" on="1"/>
- <pt x="197" y="1410" on="0"/>
- <pt x="137" y="1413" on="1"/>
- <pt x="70" y="1417" on="1"/>
- <pt x="51" y="1419" on="1"/>
- <pt x="51" y="1480" on="1"/>
- <pt x="631" y="1480" on="1"/>
- <pt x="631" y="1419" on="1"/>
- <pt x="612" y="1417" on="1"/>
- <pt x="544" y="1413" on="1"/>
- <pt x="469" y="1408" on="0"/>
- <pt x="459" y="1366" on="1"/>
- <pt x="446" y="1302" on="0"/>
- <pt x="446" y="1221" on="1"/>
- <pt x="446" y="259" on="1"/>
- <pt x="446" y="200" on="0"/>
- <pt x="453" y="147" on="1"/>
- <pt x="459" y="109" on="0"/>
- <pt x="467" y="97" on="1"/>
- <pt x="486" y="72" on="0"/>
- <pt x="544" y="68" on="1"/>
- <pt x="612" y="63" on="1"/>
- <pt x="631" y="62" on="1"/>
- <pt x="631" y="0" on="1"/>
- <pt x="51" y="0" on="1"/>
- <pt x="51" y="62" on="1"/>
- <pt x="70" y="63" on="1"/>
- <pt x="137" y="68" on="1"/>
- <pt x="213" y="74" on="0"/>
- <pt x="223" y="115" on="1"/>
- <pt x="236" y="177" on="0"/>
- </contour>
- <contour>
- <pt x="242" y="1604" on="1"/>
- <pt x="242" y="1801" on="1"/>
- <pt x="439" y="1801" on="1"/>
- <pt x="439" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 63 values pushed */
- 0 29 19 28 18 11 1 10 0 0 39 36 5 1 37 1 4 48 84 38 37 1 29 28 1
- 2 0 11 10 0 14 29 0 28 19 11 18 10 1 0 0 39 38 4 1 36 19 18 32 1
- 0 2 4 48 196 37 36 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Igrave" xMin="39" yMin="0" xMax="631" yMax="1925">
- <contour>
- <pt x="236" y="259" on="1"/>
- <pt x="236" y="1221" on="1"/>
- <pt x="236" y="1280" on="0"/>
- <pt x="229" y="1333" on="1"/>
- <pt x="223" y="1372" on="0"/>
- <pt x="215" y="1384" on="1"/>
- <pt x="197" y="1410" on="0"/>
- <pt x="137" y="1413" on="1"/>
- <pt x="70" y="1417" on="1"/>
- <pt x="51" y="1419" on="1"/>
- <pt x="51" y="1480" on="1"/>
- <pt x="631" y="1480" on="1"/>
- <pt x="631" y="1419" on="1"/>
- <pt x="612" y="1417" on="1"/>
- <pt x="544" y="1413" on="1"/>
- <pt x="469" y="1408" on="0"/>
- <pt x="459" y="1366" on="1"/>
- <pt x="446" y="1302" on="0"/>
- <pt x="446" y="1221" on="1"/>
- <pt x="446" y="259" on="1"/>
- <pt x="446" y="200" on="0"/>
- <pt x="453" y="147" on="1"/>
- <pt x="459" y="109" on="0"/>
- <pt x="467" y="97" on="1"/>
- <pt x="486" y="72" on="0"/>
- <pt x="544" y="68" on="1"/>
- <pt x="612" y="63" on="1"/>
- <pt x="631" y="62" on="1"/>
- <pt x="631" y="0" on="1"/>
- <pt x="51" y="0" on="1"/>
- <pt x="51" y="62" on="1"/>
- <pt x="70" y="63" on="1"/>
- <pt x="137" y="68" on="1"/>
- <pt x="213" y="74" on="0"/>
- <pt x="223" y="115" on="1"/>
- <pt x="236" y="177" on="0"/>
- </contour>
- <contour>
- <pt x="539" y="1604" on="1"/>
- <pt x="446" y="1604" on="1"/>
- <pt x="39" y="1925" on="1"/>
- <pt x="298" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 58 values pushed */
- 0 29 19 28 18 11 1 10 37 36 2 38 10 3 39 38 1 29 28 1 2 0 11 10 0
- 14 29 0 28 19 11 18 10 1 39 18 0 2 36 18 38 0 0 0 37 19 18 32 2 0
- 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Imacron" xMin="20" yMin="0" xMax="662" yMax="1727">
- <contour>
- <pt x="236" y="259" on="1"/>
- <pt x="236" y="1221" on="1"/>
- <pt x="236" y="1280" on="0"/>
- <pt x="229" y="1333" on="1"/>
- <pt x="223" y="1372" on="0"/>
- <pt x="215" y="1384" on="1"/>
- <pt x="197" y="1410" on="0"/>
- <pt x="137" y="1413" on="1"/>
- <pt x="70" y="1417" on="1"/>
- <pt x="51" y="1419" on="1"/>
- <pt x="51" y="1480" on="1"/>
- <pt x="631" y="1480" on="1"/>
- <pt x="631" y="1419" on="1"/>
- <pt x="612" y="1417" on="1"/>
- <pt x="544" y="1413" on="1"/>
- <pt x="469" y="1408" on="0"/>
- <pt x="459" y="1366" on="1"/>
- <pt x="446" y="1302" on="0"/>
- <pt x="446" y="1221" on="1"/>
- <pt x="446" y="259" on="1"/>
- <pt x="446" y="200" on="0"/>
- <pt x="453" y="147" on="1"/>
- <pt x="459" y="109" on="0"/>
- <pt x="467" y="97" on="1"/>
- <pt x="486" y="72" on="0"/>
- <pt x="544" y="68" on="1"/>
- <pt x="612" y="63" on="1"/>
- <pt x="631" y="62" on="1"/>
- <pt x="631" y="0" on="1"/>
- <pt x="51" y="0" on="1"/>
- <pt x="51" y="62" on="1"/>
- <pt x="70" y="63" on="1"/>
- <pt x="137" y="68" on="1"/>
- <pt x="213" y="74" on="0"/>
- <pt x="223" y="115" on="1"/>
- <pt x="236" y="177" on="0"/>
- </contour>
- <contour>
- <pt x="20" y="1604" on="1"/>
- <pt x="20" y="1727" on="1"/>
- <pt x="662" y="1727" on="1"/>
- <pt x="662" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 0 29 19 28 18 11 1 10 0 0 39 36 12 1 37 1 4 48 84 38 37 1 29 28 1
- 2 0 11 10 0 14 29 0 28 19 11 18 10 1 39 38 2 13 18 37 36 0 0 0 19
- 18 32 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Iogonek" xMin="51" yMin="-370" xMax="631" yMax="1480">
- <contour>
- <pt x="236" y="259" on="1"/>
- <pt x="236" y="1221" on="1"/>
- <pt x="236" y="1280" on="0"/>
- <pt x="229" y="1333" on="1"/>
- <pt x="223" y="1372" on="0"/>
- <pt x="215" y="1384" on="1"/>
- <pt x="197" y="1410" on="0"/>
- <pt x="137" y="1413" on="1"/>
- <pt x="70" y="1417" on="1"/>
- <pt x="51" y="1419" on="1"/>
- <pt x="51" y="1480" on="1"/>
- <pt x="631" y="1480" on="1"/>
- <pt x="631" y="1419" on="1"/>
- <pt x="612" y="1417" on="1"/>
- <pt x="544" y="1413" on="1"/>
- <pt x="469" y="1408" on="0"/>
- <pt x="459" y="1366" on="1"/>
- <pt x="446" y="1302" on="0"/>
- <pt x="446" y="1221" on="1"/>
- <pt x="446" y="259" on="1"/>
- <pt x="446" y="200" on="0"/>
- <pt x="453" y="147" on="1"/>
- <pt x="459" y="109" on="0"/>
- <pt x="467" y="97" on="1"/>
- <pt x="486" y="72" on="0"/>
- <pt x="544" y="68" on="1"/>
- <pt x="612" y="63" on="1"/>
- <pt x="631" y="62" on="1"/>
- <pt x="631" y="0" on="1"/>
- <pt x="51" y="0" on="1"/>
- <pt x="51" y="62" on="1"/>
- <pt x="70" y="63" on="1"/>
- <pt x="137" y="68" on="1"/>
- <pt x="213" y="74" on="0"/>
- <pt x="223" y="115" on="1"/>
- <pt x="236" y="177" on="0"/>
- </contour>
- <contour>
- <pt x="581" y="-273" on="1"/>
- <pt x="581" y="-341" on="1"/>
- <pt x="510" y="-370" on="0"/>
- <pt x="432" y="-370" on="1"/>
- <pt x="212" y="-370" on="0"/>
- <pt x="212" y="-211" on="1"/>
- <pt x="212" y="-89" on="0"/>
- <pt x="370" y="0" on="1"/>
- <pt x="477" y="0" on="1"/>
- <pt x="348" y="-80" on="0"/>
- <pt x="348" y="-182" on="1"/>
- <pt x="348" y="-289" on="0"/>
- <pt x="481" y="-289" on="1"/>
- <pt x="532" y="-289" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 0 0 48 7 39 48 84 0 29 19 28 18 11 1 10 37 36 39 28 44 43 29 28 3 0
- 11 10 0 14 0 0 46 48 41 48 196 29 0 28 19 11 18 10 1 43 18 0 2 44 37
- 36 3 13 18 41 0 0 0 19 18 32 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Itilde" xMin="8" yMin="0" xMax="674" yMax="1839">
- <contour>
- <pt x="236" y="259" on="1"/>
- <pt x="236" y="1221" on="1"/>
- <pt x="236" y="1280" on="0"/>
- <pt x="229" y="1333" on="1"/>
- <pt x="223" y="1372" on="0"/>
- <pt x="215" y="1384" on="1"/>
- <pt x="197" y="1410" on="0"/>
- <pt x="137" y="1413" on="1"/>
- <pt x="70" y="1417" on="1"/>
- <pt x="51" y="1419" on="1"/>
- <pt x="51" y="1480" on="1"/>
- <pt x="631" y="1480" on="1"/>
- <pt x="631" y="1419" on="1"/>
- <pt x="612" y="1417" on="1"/>
- <pt x="544" y="1413" on="1"/>
- <pt x="469" y="1408" on="0"/>
- <pt x="459" y="1366" on="1"/>
- <pt x="446" y="1302" on="0"/>
- <pt x="446" y="1221" on="1"/>
- <pt x="446" y="259" on="1"/>
- <pt x="446" y="200" on="0"/>
- <pt x="453" y="147" on="1"/>
- <pt x="459" y="109" on="0"/>
- <pt x="467" y="97" on="1"/>
- <pt x="486" y="72" on="0"/>
- <pt x="544" y="68" on="1"/>
- <pt x="612" y="63" on="1"/>
- <pt x="631" y="62" on="1"/>
- <pt x="631" y="0" on="1"/>
- <pt x="51" y="0" on="1"/>
- <pt x="51" y="62" on="1"/>
- <pt x="70" y="63" on="1"/>
- <pt x="137" y="68" on="1"/>
- <pt x="213" y="74" on="0"/>
- <pt x="223" y="115" on="1"/>
- <pt x="236" y="177" on="0"/>
- </contour>
- <contour>
- <pt x="8" y="1604" on="1"/>
- <pt x="35" y="1744" on="0"/>
- <pt x="104" y="1797" on="1"/>
- <pt x="158" y="1839" on="0"/>
- <pt x="235" y="1839" on="1"/>
- <pt x="300" y="1839" on="0"/>
- <pt x="353" y="1801" on="1"/>
- <pt x="388" y="1776" on="1"/>
- <pt x="440" y="1739" on="0"/>
- <pt x="494" y="1739" on="1"/>
- <pt x="589" y="1739" on="0"/>
- <pt x="612" y="1838" on="1"/>
- <pt x="674" y="1838" on="1"/>
- <pt x="646" y="1699" on="0"/>
- <pt x="578" y="1646" on="1"/>
- <pt x="524" y="1604" on="0"/>
- <pt x="447" y="1604" on="1"/>
- <pt x="384" y="1604" on="0"/>
- <pt x="329" y="1642" on="1"/>
- <pt x="294" y="1666" on="1"/>
- <pt x="239" y="1704" on="0"/>
- <pt x="187" y="1704" on="1"/>
- <pt x="99" y="1704" on="0"/>
- <pt x="70" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 66 values pushed */
- 0 0 57 20 40 45 20 52 48 84 0 29 19 28 18 11 1 10 59 48 47 36 4 13 52
- 40 10 29 28 1 0 11 10 0 14 29 0 28 19 11 18 10 1 48 47 2 13 18 59 36
- 0 0 0 19 18 37 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="J" xMin="0" yMin="-297" xMax="766" yMax="1480">
- <contour>
- <pt x="0" y="-276" on="1"/>
- <pt x="0" y="-46" on="1"/>
- <pt x="117" y="-46" on="1"/>
- <pt x="119" y="-70" on="1"/>
- <pt x="127" y="-160" on="0"/>
- <pt x="147" y="-185" on="1"/>
- <pt x="171" y="-215" on="0"/>
- <pt x="234" y="-215" on="1"/>
- <pt x="333" y="-215" on="0"/>
- <pt x="353" y="-124" on="1"/>
- <pt x="371" y="-45" on="0"/>
- <pt x="371" y="148" on="1"/>
- <pt x="371" y="1221" on="1"/>
- <pt x="372" y="1340" on="0"/>
- <pt x="354" y="1377" on="1"/>
- <pt x="339" y="1409" on="0"/>
- <pt x="273" y="1413" on="1"/>
- <pt x="205" y="1417" on="1"/>
- <pt x="186" y="1419" on="1"/>
- <pt x="186" y="1480" on="1"/>
- <pt x="766" y="1480" on="1"/>
- <pt x="766" y="1419" on="1"/>
- <pt x="747" y="1417" on="1"/>
- <pt x="680" y="1413" on="1"/>
- <pt x="612" y="1408" on="0"/>
- <pt x="601" y="1386" on="1"/>
- <pt x="590" y="1366" on="0"/>
- <pt x="587" y="1320" on="1"/>
- <pt x="581" y="1221" on="1"/>
- <pt x="581" y="270" on="1"/>
- <pt x="581" y="-35" on="0"/>
- <pt x="482" y="-156" on="1"/>
- <pt x="366" y="-297" on="0"/>
- <pt x="159" y="-297" on="1"/>
- <pt x="97" y="-297" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 0 0 7 7 33 48 84 12 19 1 29 28 21 11 4 19 2 3 0 1 2 1 0 3 13
- 33 2 0 20 19 0 14 19 12 2 11 0 2 21 20 2 13 28 0 0 29 28 32 1 11
- 1 4 48 196 12 11 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Jcircumflex" xMin="0" yMin="-297" xMax="827" yMax="1925">
- <contour>
- <pt x="0" y="-276" on="1"/>
- <pt x="0" y="-46" on="1"/>
- <pt x="117" y="-46" on="1"/>
- <pt x="119" y="-70" on="1"/>
- <pt x="127" y="-160" on="0"/>
- <pt x="147" y="-185" on="1"/>
- <pt x="171" y="-215" on="0"/>
- <pt x="234" y="-215" on="1"/>
- <pt x="333" y="-215" on="0"/>
- <pt x="353" y="-124" on="1"/>
- <pt x="371" y="-45" on="0"/>
- <pt x="371" y="148" on="1"/>
- <pt x="371" y="1221" on="1"/>
- <pt x="372" y="1340" on="0"/>
- <pt x="354" y="1377" on="1"/>
- <pt x="339" y="1409" on="0"/>
- <pt x="273" y="1413" on="1"/>
- <pt x="205" y="1417" on="1"/>
- <pt x="186" y="1419" on="1"/>
- <pt x="186" y="1480" on="1"/>
- <pt x="766" y="1480" on="1"/>
- <pt x="766" y="1419" on="1"/>
- <pt x="747" y="1417" on="1"/>
- <pt x="680" y="1413" on="1"/>
- <pt x="612" y="1408" on="0"/>
- <pt x="601" y="1386" on="1"/>
- <pt x="590" y="1366" on="0"/>
- <pt x="587" y="1320" on="1"/>
- <pt x="581" y="1221" on="1"/>
- <pt x="581" y="270" on="1"/>
- <pt x="581" y="-35" on="0"/>
- <pt x="482" y="-156" on="1"/>
- <pt x="366" y="-297" on="0"/>
- <pt x="159" y="-297" on="1"/>
- <pt x="97" y="-297" on="0"/>
- </contour>
- <contour>
- <pt x="124" y="1604" on="1"/>
- <pt x="365" y="1925" on="1"/>
- <pt x="587" y="1925" on="1"/>
- <pt x="827" y="1604" on="1"/>
- <pt x="741" y="1604" on="1"/>
- <pt x="476" y="1826" on="1"/>
- <pt x="210" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 0 0 7 7 33 48 84 12 19 41 40 39 38 35 5 36 19 3 1 29 28 21 11 4 19
- 2 3 0 1 2 1 0 3 13 33 2 0 37 36 1 0 20 19 0 14 19 12 40 28 11
- 2 41 36 35 2 4 11 0 3 39 38 37 21 20 5 13 28 0 0 29 28 32 1 11 1
- 4 48 196 12 11 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="K" xMin="56" yMin="0" xMax="1463" yMax="1480">
- <contour>
- <pt x="451" y="754" on="1"/>
- <pt x="899" y="1221" on="1"/>
- <pt x="950" y="1275" on="0"/>
- <pt x="983" y="1322" on="1"/>
- <pt x="1018" y="1371" on="0"/>
- <pt x="1036" y="1387" on="1"/>
- <pt x="1046" y="1397" on="0"/>
- <pt x="1046" y="1402" on="1"/>
- <pt x="1046" y="1416" on="0"/>
- <pt x="990" y="1417" on="1"/>
- <pt x="901" y="1419" on="1"/>
- <pt x="883" y="1419" on="1"/>
- <pt x="883" y="1480" on="1"/>
- <pt x="1339" y="1480" on="1"/>
- <pt x="1339" y="1419" on="1"/>
- <pt x="1322" y="1417" on="1"/>
- <pt x="1261" y="1416" on="1"/>
- <pt x="1207" y="1416" on="0"/>
- <pt x="1160" y="1377" on="1"/>
- <pt x="1115" y="1341" on="0"/>
- <pt x="996" y="1220" on="1"/>
- <pt x="618" y="835" on="1"/>
- <pt x="1136" y="258" on="1"/>
- <pt x="1240" y="150" on="1"/>
- <pt x="1303" y="84" on="0"/>
- <pt x="1334" y="76" on="1"/>
- <pt x="1365" y="67" on="0"/>
- <pt x="1442" y="63" on="1"/>
- <pt x="1463" y="62" on="1"/>
- <pt x="1463" y="0" on="1"/>
- <pt x="858" y="0" on="1"/>
- <pt x="858" y="62" on="1"/>
- <pt x="876" y="62" on="1"/>
- <pt x="1000" y="62" on="0"/>
- <pt x="1000" y="86" on="1"/>
- <pt x="1000" y="120" on="0"/>
- <pt x="876" y="262" on="1"/>
- <pt x="451" y="748" on="1"/>
- <pt x="451" y="259" on="1"/>
- <pt x="456" y="160" on="1"/>
- <pt x="458" y="90" on="0"/>
- <pt x="484" y="79" on="1"/>
- <pt x="510" y="69" on="0"/>
- <pt x="593" y="63" on="1"/>
- <pt x="611" y="62" on="1"/>
- <pt x="611" y="0" on="1"/>
- <pt x="56" y="0" on="1"/>
- <pt x="56" y="62" on="1"/>
- <pt x="75" y="63" on="1"/>
- <pt x="142" y="68" on="1"/>
- <pt x="218" y="74" on="0"/>
- <pt x="228" y="115" on="1"/>
- <pt x="241" y="177" on="0"/>
- <pt x="241" y="259" on="1"/>
- <pt x="241" y="1221" on="1"/>
- <pt x="241" y="1280" on="0"/>
- <pt x="234" y="1333" on="1"/>
- <pt x="228" y="1372" on="0"/>
- <pt x="220" y="1384" on="1"/>
- <pt x="202" y="1410" on="0"/>
- <pt x="142" y="1413" on="1"/>
- <pt x="75" y="1417" on="1"/>
- <pt x="56" y="1419" on="1"/>
- <pt x="56" y="1480" on="1"/>
- <pt x="636" y="1480" on="1"/>
- <pt x="636" y="1419" on="1"/>
- <pt x="617" y="1417" on="1"/>
- <pt x="549" y="1413" on="1"/>
- <pt x="474" y="1408" on="0"/>
- <pt x="464" y="1366" on="1"/>
- <pt x="451" y="1302" on="0"/>
- <pt x="451" y="1221" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 71 64 54 63 53 46 44 38 37 32 31 28 22 21 14 11 10 0 12 12 29 3 46 45 30
- 29 3 0 64 63 13 12 0 3 14 64 71 63 54 46 53 45 44 32 31 30 29 28 22 21
- 14 13 12 11 10 14 13 34 7 0 0 0 71 38 37 0 32 3 53 1 4 48 196 54 53
- 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Kcommaaccent" xMin="56" yMin="-432" xMax="1463" yMax="1480">
- <contour>
- <pt x="451" y="754" on="1"/>
- <pt x="899" y="1221" on="1"/>
- <pt x="950" y="1274" on="0"/>
- <pt x="983" y="1322" on="1"/>
- <pt x="1018" y="1371" on="0"/>
- <pt x="1036" y="1387" on="1"/>
- <pt x="1046" y="1397" on="0"/>
- <pt x="1046" y="1402" on="1"/>
- <pt x="1046" y="1416" on="0"/>
- <pt x="990" y="1417" on="1"/>
- <pt x="901" y="1419" on="1"/>
- <pt x="883" y="1419" on="1"/>
- <pt x="883" y="1480" on="1"/>
- <pt x="1339" y="1480" on="1"/>
- <pt x="1339" y="1419" on="1"/>
- <pt x="1322" y="1417" on="1"/>
- <pt x="1261" y="1416" on="1"/>
- <pt x="1207" y="1416" on="0"/>
- <pt x="1160" y="1377" on="1"/>
- <pt x="1115" y="1341" on="0"/>
- <pt x="996" y="1220" on="1"/>
- <pt x="618" y="835" on="1"/>
- <pt x="1136" y="258" on="1"/>
- <pt x="1240" y="150" on="1"/>
- <pt x="1303" y="84" on="0"/>
- <pt x="1334" y="76" on="1"/>
- <pt x="1365" y="67" on="0"/>
- <pt x="1442" y="63" on="1"/>
- <pt x="1463" y="62" on="1"/>
- <pt x="1463" y="0" on="1"/>
- <pt x="858" y="0" on="1"/>
- <pt x="858" y="62" on="1"/>
- <pt x="876" y="62" on="1"/>
- <pt x="1000" y="62" on="0"/>
- <pt x="1000" y="86" on="1"/>
- <pt x="1000" y="120" on="0"/>
- <pt x="876" y="262" on="1"/>
- <pt x="451" y="748" on="1"/>
- <pt x="451" y="259" on="1"/>
- <pt x="456" y="160" on="1"/>
- <pt x="458" y="90" on="0"/>
- <pt x="484" y="79" on="1"/>
- <pt x="510" y="69" on="0"/>
- <pt x="593" y="63" on="1"/>
- <pt x="611" y="62" on="1"/>
- <pt x="611" y="0" on="1"/>
- <pt x="56" y="0" on="1"/>
- <pt x="56" y="62" on="1"/>
- <pt x="75" y="63" on="1"/>
- <pt x="142" y="68" on="1"/>
- <pt x="218" y="74" on="0"/>
- <pt x="228" y="115" on="1"/>
- <pt x="241" y="177" on="0"/>
- <pt x="241" y="259" on="1"/>
- <pt x="241" y="1221" on="1"/>
- <pt x="241" y="1280" on="0"/>
- <pt x="234" y="1333" on="1"/>
- <pt x="228" y="1372" on="0"/>
- <pt x="220" y="1384" on="1"/>
- <pt x="202" y="1410" on="0"/>
- <pt x="142" y="1413" on="1"/>
- <pt x="75" y="1417" on="1"/>
- <pt x="56" y="1419" on="1"/>
- <pt x="56" y="1480" on="1"/>
- <pt x="636" y="1480" on="1"/>
- <pt x="636" y="1419" on="1"/>
- <pt x="617" y="1417" on="1"/>
- <pt x="549" y="1413" on="1"/>
- <pt x="474" y="1408" on="0"/>
- <pt x="464" y="1366" on="1"/>
- <pt x="451" y="1302" on="0"/>
- <pt x="451" y="1221" on="1"/>
- </contour>
- <contour>
- <pt x="562" y="-421" on="1"/>
- <pt x="562" y="-349" on="1"/>
- <pt x="611" y="-359" on="0"/>
- <pt x="666" y="-359" on="1"/>
- <pt x="769" y="-359" on="0"/>
- <pt x="769" y="-279" on="1"/>
- <pt x="769" y="-190" on="0"/>
- <pt x="611" y="-175" on="1"/>
- <pt x="611" y="-111" on="1"/>
- <pt x="745" y="-114" on="0"/>
- <pt x="811" y="-143" on="1"/>
- <pt x="904" y="-185" on="0"/>
- <pt x="904" y="-280" on="1"/>
- <pt x="904" y="-432" on="0"/>
- <pt x="687" y="-432" on="1"/>
- <pt x="628" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 106 values pushed */
- 0 0 75 17 86 48 84 71 64 54 63 53 46 44 38 37 32 31 28 22 21 14 11 10 0
- 12 12 29 3 80 79 73 72 4 13 86 29 46 45 30 29 3 0 64 63 13 12 0 3 14
- 0 0 77 48 84 48 196 64 71 63 54 46 53 80 79 73 72 45 44 32 31 30 29 28 22
- 21 14 13 12 11 10 18 13 84 34 7 3 12 0 0 0 71 38 37 0 32 3 53 1 4
- 48 196 54 53 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="L" xMin="56" yMin="0" xMax="1203" yMax="1480">
- <contour>
- <pt x="1096" y="276" on="1"/>
- <pt x="1098" y="296" on="1"/>
- <pt x="1203" y="296" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="56" y="0" on="1"/>
- <pt x="56" y="62" on="1"/>
- <pt x="75" y="63" on="1"/>
- <pt x="142" y="68" on="1"/>
- <pt x="218" y="74" on="0"/>
- <pt x="228" y="115" on="1"/>
- <pt x="241" y="177" on="0"/>
- <pt x="241" y="259" on="1"/>
- <pt x="241" y="1221" on="1"/>
- <pt x="241" y="1280" on="0"/>
- <pt x="234" y="1333" on="1"/>
- <pt x="228" y="1372" on="0"/>
- <pt x="220" y="1384" on="1"/>
- <pt x="202" y="1410" on="0"/>
- <pt x="142" y="1413" on="1"/>
- <pt x="75" y="1417" on="1"/>
- <pt x="56" y="1419" on="1"/>
- <pt x="56" y="1480" on="1"/>
- <pt x="636" y="1480" on="1"/>
- <pt x="636" y="1419" on="1"/>
- <pt x="617" y="1417" on="1"/>
- <pt x="549" y="1413" on="1"/>
- <pt x="474" y="1408" on="0"/>
- <pt x="464" y="1366" on="1"/>
- <pt x="451" y="1302" on="0"/>
- <pt x="451" y="1221" on="1"/>
- <pt x="451" y="259" on="1"/>
- <pt x="451" y="108" on="0"/>
- <pt x="478" y="101" on="1"/>
- <pt x="509" y="86" on="0"/>
- <pt x="623" y="86" on="1"/>
- <pt x="859" y="86" on="1"/>
- <pt x="1001" y="86" on="0"/>
- <pt x="1046" y="103" on="1"/>
- <pt x="1092" y="121" on="0"/>
- <pt x="1094" y="175" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 66 values pushed */
- 29 22 12 21 11 4 32 30 2 1 4 21 34 3 0 0 35 34 7 1 3 1 4 48 84
- 4 3 1 0 22 21 0 14 22 29 21 12 4 11 35 34 32 1 4 2 29 3 0 0 30
- 29 32 1 11 1 4 48 196 3 2 1 12 11 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Lacute" xMin="56" yMin="0" xMax="1203" yMax="1925">
- <contour>
- <pt x="1096" y="276" on="1"/>
- <pt x="1098" y="296" on="1"/>
- <pt x="1203" y="296" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="56" y="0" on="1"/>
- <pt x="56" y="62" on="1"/>
- <pt x="75" y="63" on="1"/>
- <pt x="142" y="68" on="1"/>
- <pt x="218" y="74" on="0"/>
- <pt x="228" y="115" on="1"/>
- <pt x="241" y="177" on="0"/>
- <pt x="241" y="259" on="1"/>
- <pt x="241" y="1221" on="1"/>
- <pt x="241" y="1280" on="0"/>
- <pt x="234" y="1333" on="1"/>
- <pt x="228" y="1372" on="0"/>
- <pt x="220" y="1384" on="1"/>
- <pt x="202" y="1410" on="0"/>
- <pt x="142" y="1413" on="1"/>
- <pt x="75" y="1417" on="1"/>
- <pt x="56" y="1419" on="1"/>
- <pt x="56" y="1480" on="1"/>
- <pt x="636" y="1480" on="1"/>
- <pt x="636" y="1419" on="1"/>
- <pt x="617" y="1417" on="1"/>
- <pt x="549" y="1413" on="1"/>
- <pt x="474" y="1408" on="0"/>
- <pt x="464" y="1366" on="1"/>
- <pt x="451" y="1302" on="0"/>
- <pt x="451" y="1221" on="1"/>
- <pt x="451" y="259" on="1"/>
- <pt x="451" y="108" on="0"/>
- <pt x="478" y="101" on="1"/>
- <pt x="509" y="86" on="0"/>
- <pt x="623" y="86" on="1"/>
- <pt x="859" y="86" on="1"/>
- <pt x="1001" y="86" on="0"/>
- <pt x="1046" y="103" on="1"/>
- <pt x="1092" y="121" on="0"/>
- <pt x="1094" y="175" on="1"/>
- </contour>
- <contour>
- <pt x="309" y="1604" on="1"/>
- <pt x="550" y="1925" on="1"/>
- <pt x="809" y="1925" on="1"/>
- <pt x="402" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 84 values pushed */
- 29 22 12 21 11 4 43 40 2 41 21 3 32 30 2 1 4 21 34 3 0 0 35 34 7
- 1 3 1 4 48 84 42 41 1 4 3 1 2 0 22 21 0 14 22 29 21 12 4 11 42
- 41 35 34 32 1 6 2 29 3 43 40 2 29 11 3 0 0 30 29 32 1 11 1 4 48
- 196 3 2 1 12 11 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Lcaron" xMin="56" yMin="0" xMax="1203" yMax="1480">
- <contour>
- <pt x="1096" y="276" on="1"/>
- <pt x="1098" y="296" on="1"/>
- <pt x="1203" y="296" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="56" y="0" on="1"/>
- <pt x="56" y="62" on="1"/>
- <pt x="75" y="63" on="1"/>
- <pt x="142" y="68" on="1"/>
- <pt x="218" y="74" on="0"/>
- <pt x="228" y="115" on="1"/>
- <pt x="241" y="177" on="0"/>
- <pt x="241" y="259" on="1"/>
- <pt x="241" y="1221" on="1"/>
- <pt x="241" y="1280" on="0"/>
- <pt x="234" y="1333" on="1"/>
- <pt x="228" y="1372" on="0"/>
- <pt x="220" y="1384" on="1"/>
- <pt x="202" y="1410" on="0"/>
- <pt x="142" y="1413" on="1"/>
- <pt x="75" y="1417" on="1"/>
- <pt x="56" y="1419" on="1"/>
- <pt x="56" y="1480" on="1"/>
- <pt x="636" y="1480" on="1"/>
- <pt x="636" y="1419" on="1"/>
- <pt x="617" y="1417" on="1"/>
- <pt x="549" y="1413" on="1"/>
- <pt x="474" y="1408" on="0"/>
- <pt x="464" y="1366" on="1"/>
- <pt x="451" y="1302" on="0"/>
- <pt x="451" y="1221" on="1"/>
- <pt x="451" y="259" on="1"/>
- <pt x="451" y="108" on="0"/>
- <pt x="478" y="101" on="1"/>
- <pt x="509" y="86" on="0"/>
- <pt x="623" y="86" on="1"/>
- <pt x="859" y="86" on="1"/>
- <pt x="1001" y="86" on="0"/>
- <pt x="1046" y="103" on="1"/>
- <pt x="1092" y="121" on="0"/>
- <pt x="1094" y="175" on="1"/>
- </contour>
- <contour>
- <pt x="888" y="1283" on="1"/>
- <pt x="809" y="1283" on="1"/>
- <pt x="809" y="1480" on="1"/>
- <pt x="1006" y="1480" on="1"/>
- <pt x="1006" y="1309" on="1"/>
- <pt x="1006" y="1146" on="0"/>
- <pt x="944" y="1081" on="1"/>
- <pt x="897" y="1032" on="0"/>
- <pt x="809" y="1026" on="1"/>
- <pt x="809" y="1076" on="1"/>
- <pt x="888" y="1082" on="0"/>
- <pt x="888" y="1231" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 94 values pushed */
- 29 22 12 21 11 4 51 49 48 44 41 40 32 30 2 1 10 21 34 3 0 0 35 34 7
- 1 3 1 4 48 84 4 3 1 0 43 42 22 21 0 3 14 22 29 21 12 4 11 1 2
- 43 2 51 40 35 3 43 41 3 34 32 2 41 29 3 0 0 49 48 42 41 4 3 43 30
- 29 32 1 11 2 4 48 196 44 43 1 3 2 1 12 11 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Lcommaaccent" xMin="56" yMin="-432" xMax="1203" yMax="1480">
- <contour>
- <pt x="1096" y="276" on="1"/>
- <pt x="1098" y="296" on="1"/>
- <pt x="1203" y="296" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="56" y="0" on="1"/>
- <pt x="56" y="62" on="1"/>
- <pt x="75" y="63" on="1"/>
- <pt x="142" y="68" on="1"/>
- <pt x="218" y="74" on="0"/>
- <pt x="228" y="115" on="1"/>
- <pt x="241" y="177" on="0"/>
- <pt x="241" y="259" on="1"/>
- <pt x="241" y="1221" on="1"/>
- <pt x="241" y="1280" on="0"/>
- <pt x="234" y="1333" on="1"/>
- <pt x="228" y="1372" on="0"/>
- <pt x="220" y="1384" on="1"/>
- <pt x="202" y="1410" on="0"/>
- <pt x="142" y="1413" on="1"/>
- <pt x="75" y="1417" on="1"/>
- <pt x="56" y="1419" on="1"/>
- <pt x="56" y="1480" on="1"/>
- <pt x="636" y="1480" on="1"/>
- <pt x="636" y="1419" on="1"/>
- <pt x="617" y="1417" on="1"/>
- <pt x="549" y="1413" on="1"/>
- <pt x="474" y="1408" on="0"/>
- <pt x="464" y="1366" on="1"/>
- <pt x="451" y="1302" on="0"/>
- <pt x="451" y="1221" on="1"/>
- <pt x="451" y="259" on="1"/>
- <pt x="451" y="108" on="0"/>
- <pt x="478" y="101" on="1"/>
- <pt x="509" y="86" on="0"/>
- <pt x="623" y="86" on="1"/>
- <pt x="859" y="86" on="1"/>
- <pt x="1001" y="86" on="0"/>
- <pt x="1046" y="103" on="1"/>
- <pt x="1092" y="121" on="0"/>
- <pt x="1094" y="175" on="1"/>
- </contour>
- <contour>
- <pt x="451" y="-421" on="1"/>
- <pt x="451" y="-349" on="1"/>
- <pt x="500" y="-359" on="0"/>
- <pt x="555" y="-359" on="1"/>
- <pt x="658" y="-359" on="0"/>
- <pt x="658" y="-279" on="1"/>
- <pt x="658" y="-190" on="0"/>
- <pt x="500" y="-175" on="1"/>
- <pt x="500" y="-111" on="1"/>
- <pt x="634" y="-114" on="0"/>
- <pt x="700" y="-143" on="1"/>
- <pt x="793" y="-185" on="0"/>
- <pt x="793" y="-280" on="1"/>
- <pt x="793" y="-432" on="0"/>
- <pt x="576" y="-432" on="1"/>
- <pt x="517" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 94 values pushed */
- 0 0 43 17 54 48 84 29 22 12 21 11 4 32 30 2 1 4 21 34 3 48 47 41 40
- 4 13 54 3 0 0 35 34 7 1 3 1 4 48 84 4 3 1 0 22 21 0 14 0 0
- 45 48 52 48 196 22 29 21 12 4 11 52 52 48 47 35 34 32 1 7 2 29 3 0 0
- 41 40 30 29 32 3 11 1 4 48 196 3 2 1 12 11 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ldot" xMin="56" yMin="0" xMax="1203" yMax="1480">
- <contour>
- <pt x="1096" y="276" on="1"/>
- <pt x="1098" y="296" on="1"/>
- <pt x="1203" y="296" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="56" y="0" on="1"/>
- <pt x="56" y="62" on="1"/>
- <pt x="75" y="63" on="1"/>
- <pt x="142" y="68" on="1"/>
- <pt x="218" y="74" on="0"/>
- <pt x="228" y="115" on="1"/>
- <pt x="241" y="177" on="0"/>
- <pt x="241" y="259" on="1"/>
- <pt x="241" y="1221" on="1"/>
- <pt x="241" y="1280" on="0"/>
- <pt x="234" y="1333" on="1"/>
- <pt x="228" y="1372" on="0"/>
- <pt x="220" y="1384" on="1"/>
- <pt x="202" y="1410" on="0"/>
- <pt x="142" y="1413" on="1"/>
- <pt x="75" y="1417" on="1"/>
- <pt x="56" y="1419" on="1"/>
- <pt x="56" y="1480" on="1"/>
- <pt x="636" y="1480" on="1"/>
- <pt x="636" y="1419" on="1"/>
- <pt x="617" y="1417" on="1"/>
- <pt x="549" y="1413" on="1"/>
- <pt x="474" y="1408" on="0"/>
- <pt x="464" y="1366" on="1"/>
- <pt x="451" y="1302" on="0"/>
- <pt x="451" y="1221" on="1"/>
- <pt x="451" y="259" on="1"/>
- <pt x="451" y="108" on="0"/>
- <pt x="478" y="101" on="1"/>
- <pt x="509" y="86" on="0"/>
- <pt x="623" y="86" on="1"/>
- <pt x="859" y="86" on="1"/>
- <pt x="1001" y="86" on="0"/>
- <pt x="1046" y="103" on="1"/>
- <pt x="1092" y="121" on="0"/>
- <pt x="1094" y="175" on="1"/>
- </contour>
- <contour>
- <pt x="870" y="642" on="1"/>
- <pt x="870" y="839" on="1"/>
- <pt x="1067" y="839" on="1"/>
- <pt x="1067" y="642" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 29 22 12 21 11 4 32 30 2 1 4 40 34 3 0 0 43 40 5 1 41 35 34 7 1
- 3 2 4 48 84 42 41 1 4 3 1 2 0 22 21 0 14 22 29 21 12 4 11 1 2
- 42 2 35 34 32 3 40 29 3 0 0 41 40 4 1 42 30 29 32 1 11 2 4 48 196
- 43 42 1 3 2 1 12 11 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Lslash" xMin="56" yMin="0" xMax="1203" yMax="1480">
- <contour>
- <pt x="241" y="748" on="1"/>
- <pt x="56" y="641" on="1"/>
- <pt x="56" y="726" on="1"/>
- <pt x="241" y="833" on="1"/>
- <pt x="241" y="1221" on="1"/>
- <pt x="241" y="1280" on="0"/>
- <pt x="234" y="1333" on="1"/>
- <pt x="228" y="1372" on="0"/>
- <pt x="220" y="1384" on="1"/>
- <pt x="202" y="1410" on="0"/>
- <pt x="142" y="1413" on="1"/>
- <pt x="75" y="1417" on="1"/>
- <pt x="56" y="1419" on="1"/>
- <pt x="56" y="1480" on="1"/>
- <pt x="636" y="1480" on="1"/>
- <pt x="636" y="1419" on="1"/>
- <pt x="617" y="1417" on="1"/>
- <pt x="549" y="1413" on="1"/>
- <pt x="474" y="1408" on="0"/>
- <pt x="464" y="1366" on="1"/>
- <pt x="451" y="1302" on="0"/>
- <pt x="451" y="1221" on="1"/>
- <pt x="451" y="954" on="1"/>
- <pt x="722" y="1110" on="1"/>
- <pt x="722" y="1025" on="1"/>
- <pt x="451" y="869" on="1"/>
- <pt x="451" y="259" on="1"/>
- <pt x="451" y="108" on="0"/>
- <pt x="478" y="101" on="1"/>
- <pt x="509" y="86" on="0"/>
- <pt x="623" y="86" on="1"/>
- <pt x="859" y="86" on="1"/>
- <pt x="1001" y="86" on="0"/>
- <pt x="1046" y="103" on="1"/>
- <pt x="1092" y="121" on="0"/>
- <pt x="1094" y="175" on="1"/>
- <pt x="1096" y="276" on="1"/>
- <pt x="1098" y="296" on="1"/>
- <pt x="1203" y="296" on="1"/>
- <pt x="1203" y="0" on="1"/>
- <pt x="56" y="0" on="1"/>
- <pt x="56" y="62" on="1"/>
- <pt x="75" y="63" on="1"/>
- <pt x="142" y="68" on="1"/>
- <pt x="218" y="74" on="0"/>
- <pt x="228" y="115" on="1"/>
- <pt x="241" y="177" on="0"/>
- <pt x="241" y="259" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 47 40 21 14 4 13 38 37 28 26 25 24 23 22 3 2 1 0 12 13 30 3 0 0 31
- 30 7 1 39 1 4 48 84 40 39 1 0 14 13 0 14 40 47 14 21 13 4 37 31 30
- 28 24 23 6 38 21 3 2 1 0 0 0 26 25 22 21 32 3 0 1 4 48 196 39 38
- 1 47 4 3 0 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="M" xMin="48" yMin="0" xMax="1773" yMax="1480">
- <contour>
- <pt x="461" y="1480" on="1"/>
- <pt x="934" y="389" on="1"/>
- <pt x="1400" y="1480" on="1"/>
- <pt x="1773" y="1480" on="1"/>
- <pt x="1773" y="1419" on="1"/>
- <pt x="1754" y="1417" on="1"/>
- <pt x="1686" y="1413" on="1"/>
- <pt x="1618" y="1408" on="0"/>
- <pt x="1607" y="1386" on="1"/>
- <pt x="1597" y="1366" on="0"/>
- <pt x="1594" y="1320" on="1"/>
- <pt x="1588" y="1221" on="1"/>
- <pt x="1588" y="259" on="1"/>
- <pt x="1594" y="160" on="1"/>
- <pt x="1598" y="93" on="0"/>
- <pt x="1620" y="82" on="1"/>
- <pt x="1639" y="71" on="0"/>
- <pt x="1686" y="68" on="1"/>
- <pt x="1754" y="63" on="1"/>
- <pt x="1773" y="62" on="1"/>
- <pt x="1773" y="0" on="1"/>
- <pt x="1209" y="0" on="1"/>
- <pt x="1209" y="62" on="1"/>
- <pt x="1227" y="63" on="1"/>
- <pt x="1294" y="68" on="1"/>
- <pt x="1361" y="73" on="0"/>
- <pt x="1372" y="95" on="1"/>
- <pt x="1383" y="114" on="0"/>
- <pt x="1386" y="160" on="1"/>
- <pt x="1392" y="259" on="1"/>
- <pt x="1392" y="1276" on="1"/>
- <pt x="901" y="118" on="1"/>
- <pt x="828" y="118" on="1"/>
- <pt x="343" y="1231" on="1"/>
- <pt x="343" y="259" on="1"/>
- <pt x="343" y="203" on="0"/>
- <pt x="351" y="147" on="1"/>
- <pt x="358" y="96" on="0"/>
- <pt x="383" y="82" on="1"/>
- <pt x="404" y="71" on="0"/>
- <pt x="442" y="68" on="1"/>
- <pt x="510" y="63" on="1"/>
- <pt x="528" y="62" on="1"/>
- <pt x="528" y="0" on="1"/>
- <pt x="48" y="0" on="1"/>
- <pt x="48" y="62" on="1"/>
- <pt x="67" y="63" on="1"/>
- <pt x="135" y="68" on="1"/>
- <pt x="199" y="73" on="0"/>
- <pt x="233" y="139" on="0"/>
- <pt x="233" y="259" on="1"/>
- <pt x="234" y="1221" on="1"/>
- <pt x="235" y="1335" on="0"/>
- <pt x="216" y="1377" on="1"/>
- <pt x="201" y="1409" on="0"/>
- <pt x="135" y="1413" on="1"/>
- <pt x="67" y="1417" on="1"/>
- <pt x="48" y="1419" on="1"/>
- <pt x="48" y="1480" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 51 58 50 44 34 43 33 32 31 30 29 22 19 12 11 4 1 11 0 20 3 44 43 21 20
- 3 0 58 3 2 0 0 3 14 58 51 44 50 43 34 2 11 29 2 32 31 22 21 1 0
- 6 29 33 3 20 19 4 3 4 13 11 51 50 33 0 0 30 29 4 1 11 1 4 48 196
- 12 11 1 34 33 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="N" xMin="43" yMin="-20" xMax="1435" yMax="1480">
- <contour>
- <pt x="376" y="1480" on="1"/>
- <pt x="1159" y="331" on="1"/>
- <pt x="1159" y="1221" on="1"/>
- <pt x="1153" y="1320" on="1"/>
- <pt x="1149" y="1387" on="0"/>
- <pt x="1127" y="1399" on="1"/>
- <pt x="1107" y="1410" on="0"/>
- <pt x="1061" y="1413" on="1"/>
- <pt x="993" y="1417" on="1"/>
- <pt x="974" y="1419" on="1"/>
- <pt x="974" y="1480" on="1"/>
- <pt x="1435" y="1480" on="1"/>
- <pt x="1435" y="1419" on="1"/>
- <pt x="1417" y="1417" on="1"/>
- <pt x="1349" y="1413" on="1"/>
- <pt x="1281" y="1409" on="0"/>
- <pt x="1270" y="1386" on="1"/>
- <pt x="1259" y="1366" on="0"/>
- <pt x="1256" y="1320" on="1"/>
- <pt x="1250" y="1221" on="1"/>
- <pt x="1250" y="-20" on="1"/>
- <pt x="1180" y="-20" on="1"/>
- <pt x="322" y="1220" on="1"/>
- <pt x="322" y="259" on="1"/>
- <pt x="321" y="144" on="0"/>
- <pt x="340" y="104" on="1"/>
- <pt x="355" y="72" on="0"/>
- <pt x="421" y="68" on="1"/>
- <pt x="489" y="63" on="1"/>
- <pt x="508" y="62" on="1"/>
- <pt x="508" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="130" y="68" on="1"/>
- <pt x="194" y="73" on="0"/>
- <pt x="229" y="140" on="0"/>
- <pt x="229" y="259" on="1"/>
- <pt x="229" y="1221" on="1"/>
- <pt x="230" y="1336" on="0"/>
- <pt x="211" y="1377" on="1"/>
- <pt x="196" y="1409" on="0"/>
- <pt x="130" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 76 values pushed */
- 38 45 37 31 23 30 22 19 12 9 2 1 6 0 30 3 21 20 30 31 30 1 0 45 11
- 10 0 0 3 14 45 38 31 37 30 23 21 19 1 2 10 9 0 3 1 22 3 12 11 2
- 13 19 0 0 2 1 35 1 19 23 22 35 1 37 2 4 48 196 20 19 1 38 37 1 2
- 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Nacute" xMin="43" yMin="-20" xMax="1435" yMax="1925">
- <contour>
- <pt x="376" y="1480" on="1"/>
- <pt x="1159" y="331" on="1"/>
- <pt x="1159" y="1221" on="1"/>
- <pt x="1153" y="1320" on="1"/>
- <pt x="1149" y="1387" on="0"/>
- <pt x="1127" y="1399" on="1"/>
- <pt x="1107" y="1410" on="0"/>
- <pt x="1061" y="1413" on="1"/>
- <pt x="993" y="1417" on="1"/>
- <pt x="974" y="1419" on="1"/>
- <pt x="974" y="1480" on="1"/>
- <pt x="1435" y="1480" on="1"/>
- <pt x="1435" y="1419" on="1"/>
- <pt x="1417" y="1417" on="1"/>
- <pt x="1349" y="1413" on="1"/>
- <pt x="1281" y="1409" on="0"/>
- <pt x="1270" y="1386" on="1"/>
- <pt x="1259" y="1366" on="0"/>
- <pt x="1256" y="1320" on="1"/>
- <pt x="1250" y="1221" on="1"/>
- <pt x="1250" y="-20" on="1"/>
- <pt x="1180" y="-20" on="1"/>
- <pt x="322" y="1220" on="1"/>
- <pt x="322" y="259" on="1"/>
- <pt x="321" y="144" on="0"/>
- <pt x="340" y="104" on="1"/>
- <pt x="355" y="72" on="0"/>
- <pt x="421" y="68" on="1"/>
- <pt x="489" y="63" on="1"/>
- <pt x="508" y="62" on="1"/>
- <pt x="508" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="130" y="68" on="1"/>
- <pt x="194" y="73" on="0"/>
- <pt x="229" y="140" on="0"/>
- <pt x="229" y="259" on="1"/>
- <pt x="229" y="1221" on="1"/>
- <pt x="230" y="1336" on="0"/>
- <pt x="211" y="1377" on="1"/>
- <pt x="196" y="1409" on="0"/>
- <pt x="130" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="646" y="1604" on="1"/>
- <pt x="887" y="1925" on="1"/>
- <pt x="1146" y="1925" on="1"/>
- <pt x="739" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 90 values pushed */
- 38 45 37 31 23 30 49 46 2 47 0 3 22 19 12 9 2 1 6 0 30 3 21 20 30
- 48 47 1 31 30 1 2 0 45 11 10 0 0 3 14 45 38 31 37 30 23 21 19 1 2
- 49 48 47 46 10 9 0 7 1 22 3 12 11 2 13 19 0 0 2 1 35 1 19 23 22
- 35 1 37 2 4 48 196 20 19 1 38 37 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ncaron" xMin="43" yMin="-20" xMax="1435" yMax="1925">
- <contour>
- <pt x="376" y="1480" on="1"/>
- <pt x="1159" y="331" on="1"/>
- <pt x="1159" y="1221" on="1"/>
- <pt x="1153" y="1320" on="1"/>
- <pt x="1149" y="1387" on="0"/>
- <pt x="1127" y="1399" on="1"/>
- <pt x="1107" y="1410" on="0"/>
- <pt x="1061" y="1413" on="1"/>
- <pt x="993" y="1417" on="1"/>
- <pt x="974" y="1419" on="1"/>
- <pt x="974" y="1480" on="1"/>
- <pt x="1435" y="1480" on="1"/>
- <pt x="1435" y="1419" on="1"/>
- <pt x="1417" y="1417" on="1"/>
- <pt x="1349" y="1413" on="1"/>
- <pt x="1281" y="1409" on="0"/>
- <pt x="1270" y="1386" on="1"/>
- <pt x="1259" y="1366" on="0"/>
- <pt x="1256" y="1320" on="1"/>
- <pt x="1250" y="1221" on="1"/>
- <pt x="1250" y="-20" on="1"/>
- <pt x="1180" y="-20" on="1"/>
- <pt x="322" y="1220" on="1"/>
- <pt x="322" y="259" on="1"/>
- <pt x="321" y="144" on="0"/>
- <pt x="340" y="104" on="1"/>
- <pt x="355" y="72" on="0"/>
- <pt x="421" y="68" on="1"/>
- <pt x="489" y="63" on="1"/>
- <pt x="508" y="62" on="1"/>
- <pt x="508" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="130" y="68" on="1"/>
- <pt x="194" y="73" on="0"/>
- <pt x="229" y="140" on="0"/>
- <pt x="229" y="259" on="1"/>
- <pt x="229" y="1221" on="1"/>
- <pt x="230" y="1336" on="0"/>
- <pt x="211" y="1377" on="1"/>
- <pt x="196" y="1409" on="0"/>
- <pt x="130" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="1073" y="1925" on="1"/>
- <pt x="833" y="1604" on="1"/>
- <pt x="611" y="1604" on="1"/>
- <pt x="370" y="1925" on="1"/>
- <pt x="456" y="1925" on="1"/>
- <pt x="722" y="1703" on="1"/>
- <pt x="987" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 95 values pushed */
- 38 45 37 31 23 30 22 19 12 9 2 1 6 0 30 3 52 51 50 49 46 5 13 47 21
- 20 30 48 47 1 31 30 1 2 0 45 11 10 0 0 3 14 45 38 31 37 30 23 21 19
- 1 2 52 51 50 49 48 47 46 10 9 0 10 1 22 3 12 11 2 13 19 0 0 2 1
- 35 1 19 23 22 35 1 37 2 4 48 196 20 19 1 38 37 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ncommaaccent" xMin="43" yMin="-432" xMax="1435" yMax="1480">
- <contour>
- <pt x="376" y="1480" on="1"/>
- <pt x="1159" y="331" on="1"/>
- <pt x="1159" y="1221" on="1"/>
- <pt x="1153" y="1320" on="1"/>
- <pt x="1150" y="1384" on="0"/>
- <pt x="1130" y="1397" on="1"/>
- <pt x="1112" y="1410" on="0"/>
- <pt x="1061" y="1413" on="1"/>
- <pt x="993" y="1417" on="1"/>
- <pt x="974" y="1419" on="1"/>
- <pt x="974" y="1480" on="1"/>
- <pt x="1435" y="1480" on="1"/>
- <pt x="1435" y="1419" on="1"/>
- <pt x="1417" y="1417" on="1"/>
- <pt x="1349" y="1413" on="1"/>
- <pt x="1281" y="1408" on="0"/>
- <pt x="1270" y="1386" on="1"/>
- <pt x="1259" y="1367" on="0"/>
- <pt x="1256" y="1320" on="1"/>
- <pt x="1250" y="1221" on="1"/>
- <pt x="1250" y="-20" on="1"/>
- <pt x="1180" y="-20" on="1"/>
- <pt x="322" y="1220" on="1"/>
- <pt x="322" y="259" on="1"/>
- <pt x="321" y="144" on="0"/>
- <pt x="340" y="104" on="1"/>
- <pt x="355" y="72" on="0"/>
- <pt x="421" y="68" on="1"/>
- <pt x="489" y="63" on="1"/>
- <pt x="508" y="62" on="1"/>
- <pt x="508" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="130" y="68" on="1"/>
- <pt x="194" y="73" on="0"/>
- <pt x="229" y="140" on="0"/>
- <pt x="229" y="259" on="1"/>
- <pt x="229" y="1221" on="1"/>
- <pt x="230" y="1335" on="0"/>
- <pt x="211" y="1377" on="1"/>
- <pt x="196" y="1409" on="0"/>
- <pt x="130" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="582" y="-421" on="1"/>
- <pt x="582" y="-349" on="1"/>
- <pt x="631" y="-359" on="0"/>
- <pt x="686" y="-359" on="1"/>
- <pt x="789" y="-359" on="0"/>
- <pt x="789" y="-279" on="1"/>
- <pt x="789" y="-190" on="0"/>
- <pt x="631" y="-175" on="1"/>
- <pt x="631" y="-111" on="1"/>
- <pt x="765" y="-114" on="0"/>
- <pt x="831" y="-143" on="1"/>
- <pt x="924" y="-185" on="0"/>
- <pt x="924" y="-280" on="1"/>
- <pt x="924" y="-432" on="0"/>
- <pt x="707" y="-432" on="1"/>
- <pt x="647" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 103 values pushed */
- 0 0 49 17 60 48 84 38 45 37 31 23 30 22 19 12 9 2 1 6 0 30 3 54 53
- 47 46 21 20 6 13 60 30 31 30 1 0 45 11 10 0 0 3 14 0 0 51 48 58 48
- 196 45 38 31 37 30 23 21 19 1 2 58 58 54 53 47 46 10 9 0 8 1 22 3 12
- 11 2 13 19 0 0 2 1 35 1 19 23 22 35 1 37 2 4 48 196 20 19 1 38 37
- 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ntilde" xMin="43" yMin="-20" xMax="1435" yMax="1839">
- <contour>
- <pt x="376" y="1480" on="1"/>
- <pt x="1159" y="331" on="1"/>
- <pt x="1159" y="1221" on="1"/>
- <pt x="1153" y="1320" on="1"/>
- <pt x="1149" y="1387" on="0"/>
- <pt x="1127" y="1399" on="1"/>
- <pt x="1107" y="1410" on="0"/>
- <pt x="1061" y="1413" on="1"/>
- <pt x="993" y="1417" on="1"/>
- <pt x="974" y="1419" on="1"/>
- <pt x="974" y="1480" on="1"/>
- <pt x="1435" y="1480" on="1"/>
- <pt x="1435" y="1419" on="1"/>
- <pt x="1417" y="1417" on="1"/>
- <pt x="1349" y="1413" on="1"/>
- <pt x="1281" y="1409" on="0"/>
- <pt x="1270" y="1386" on="1"/>
- <pt x="1259" y="1366" on="0"/>
- <pt x="1256" y="1320" on="1"/>
- <pt x="1250" y="1221" on="1"/>
- <pt x="1250" y="-20" on="1"/>
- <pt x="1180" y="-20" on="1"/>
- <pt x="322" y="1220" on="1"/>
- <pt x="322" y="259" on="1"/>
- <pt x="321" y="144" on="0"/>
- <pt x="340" y="104" on="1"/>
- <pt x="355" y="72" on="0"/>
- <pt x="421" y="68" on="1"/>
- <pt x="489" y="63" on="1"/>
- <pt x="508" y="62" on="1"/>
- <pt x="508" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="130" y="68" on="1"/>
- <pt x="194" y="73" on="0"/>
- <pt x="229" y="140" on="0"/>
- <pt x="229" y="259" on="1"/>
- <pt x="229" y="1221" on="1"/>
- <pt x="230" y="1336" on="0"/>
- <pt x="211" y="1377" on="1"/>
- <pt x="196" y="1409" on="0"/>
- <pt x="130" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="425" y="1604" on="1"/>
- <pt x="452" y="1744" on="0"/>
- <pt x="521" y="1797" on="1"/>
- <pt x="574" y="1839" on="0"/>
- <pt x="652" y="1839" on="1"/>
- <pt x="717" y="1839" on="0"/>
- <pt x="770" y="1801" on="1"/>
- <pt x="805" y="1776" on="1"/>
- <pt x="857" y="1739" on="0"/>
- <pt x="911" y="1739" on="1"/>
- <pt x="1007" y="1739" on="0"/>
- <pt x="1029" y="1838" on="1"/>
- <pt x="1091" y="1838" on="1"/>
- <pt x="1063" y="1699" on="0"/>
- <pt x="995" y="1646" on="1"/>
- <pt x="941" y="1604" on="0"/>
- <pt x="864" y="1604" on="1"/>
- <pt x="801" y="1604" on="0"/>
- <pt x="746" y="1642" on="1"/>
- <pt x="711" y="1666" on="1"/>
- <pt x="656" y="1704" on="0"/>
- <pt x="604" y="1704" on="1"/>
- <pt x="516" y="1704" on="0"/>
- <pt x="487" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 99 values pushed */
- 0 0 67 20 50 55 20 62 48 84 38 45 37 31 23 30 22 19 12 9 2 1 6 0 30
- 3 69 58 57 46 4 13 62 50 0 21 20 30 31 30 1 0 45 11 10 0 0 3 14 45
- 38 31 37 30 23 21 19 1 2 69 58 57 46 10 9 0 7 1 22 3 12 11 2 13 19
- 0 0 2 1 35 1 19 23 22 35 1 37 2 4 48 196 20 19 1 38 37 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="O" xMin="80" yMin="-37" xMax="1398" yMax="1517">
- <contour>
- <pt x="739" y="1517" on="1"/>
- <pt x="1044" y="1517" on="0"/>
- <pt x="1221" y="1309" on="1"/>
- <pt x="1398" y="1101" on="0"/>
- <pt x="1398" y="742" on="1"/>
- <pt x="1398" y="377" on="0"/>
- <pt x="1220" y="170" on="1"/>
- <pt x="1043" y="-37" on="0"/>
- <pt x="729" y="-37" on="1"/>
- <pt x="461" y="-37" on="0"/>
- <pt x="292" y="133" on="1"/>
- <pt x="80" y="347" on="0"/>
- <pt x="80" y="740" on="1"/>
- <pt x="80" y="1100" on="0"/>
- <pt x="257" y="1308" on="1"/>
- <pt x="435" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="739" y="1450" on="1"/>
- <pt x="538" y="1450" on="0"/>
- <pt x="423" y="1261" on="1"/>
- <pt x="308" y="1072" on="0"/>
- <pt x="308" y="741" on="1"/>
- <pt x="308" y="413" on="0"/>
- <pt x="422" y="222" on="1"/>
- <pt x="536" y="31" on="0"/>
- <pt x="734" y="31" on="1"/>
- <pt x="918" y="31" on="0"/>
- <pt x="1030" y="182" on="1"/>
- <pt x="1170" y="371" on="0"/>
- <pt x="1170" y="743" on="1"/>
- <pt x="1170" y="1074" on="0"/>
- <pt x="1055" y="1261" on="1"/>
- <pt x="939" y="1450" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 27 values pushed */
- 0 0 24 17 8 16 17 0 48 84 8 2 0 0 14 0 0 28 34 4 20 34 12 48 196
- 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="OE" xMin="80" yMin="-37" xMax="1771" yMax="1517">
- <contour>
- <pt x="973" y="1408" on="1"/>
- <pt x="973" y="1480" on="1"/>
- <pt x="1715" y="1480" on="1"/>
- <pt x="1715" y="1221" on="1"/>
- <pt x="1604" y="1221" on="1"/>
- <pt x="1603" y="1240" on="1"/>
- <pt x="1601" y="1274" on="1"/>
- <pt x="1598" y="1311" on="0"/>
- <pt x="1598" y="1321" on="1"/>
- <pt x="1598" y="1324" on="1"/>
- <pt x="1598" y="1378" on="0"/>
- <pt x="1581" y="1389" on="1"/>
- <pt x="1566" y="1399" on="0"/>
- <pt x="1525" y="1399" on="1"/>
- <pt x="1422" y="1400" on="1"/>
- <pt x="1198" y="1400" on="1"/>
- <pt x="1198" y="808" on="1"/>
- <pt x="1382" y="809" on="1"/>
- <pt x="1445" y="811" on="1"/>
- <pt x="1495" y="812" on="0"/>
- <pt x="1504" y="825" on="1"/>
- <pt x="1512" y="836" on="0"/>
- <pt x="1514" y="867" on="1"/>
- <pt x="1514" y="869" on="1"/>
- <pt x="1514" y="871" on="1"/>
- <pt x="1515" y="881" on="1"/>
- <pt x="1515" y="885" on="0"/>
- <pt x="1516" y="895" on="1"/>
- <pt x="1517" y="911" on="0"/>
- <pt x="1517" y="913" on="1"/>
- <pt x="1518" y="931" on="1"/>
- <pt x="1610" y="931" on="1"/>
- <pt x="1610" y="605" on="1"/>
- <pt x="1518" y="605" on="1"/>
- <pt x="1517" y="623" on="1"/>
- <pt x="1511" y="711" on="0"/>
- <pt x="1486" y="717" on="1"/>
- <pt x="1461" y="728" on="0"/>
- <pt x="1382" y="728" on="1"/>
- <pt x="1198" y="728" on="1"/>
- <pt x="1198" y="259" on="1"/>
- <pt x="1198" y="122" on="0"/>
- <pt x="1238" y="105" on="1"/>
- <pt x="1274" y="86" on="0"/>
- <pt x="1369" y="86" on="1"/>
- <pt x="1466" y="86" on="1"/>
- <pt x="1567" y="92" on="1"/>
- <pt x="1650" y="97" on="0"/>
- <pt x="1655" y="162" on="1"/>
- <pt x="1658" y="234" on="1"/>
- <pt x="1660" y="253" on="1"/>
- <pt x="1771" y="253" on="1"/>
- <pt x="1771" y="0" on="1"/>
- <pt x="973" y="0" on="1"/>
- <pt x="973" y="73" on="1"/>
- <pt x="904" y="15" on="0"/>
- <pt x="856" y="-6" on="1"/>
- <pt x="828" y="-19" on="0"/>
- <pt x="786" y="-26" on="1"/>
- <pt x="721" y="-37" on="0"/>
- <pt x="681" y="-37" on="1"/>
- <pt x="629" y="-37" on="0"/>
- <pt x="524" y="-12" on="1"/>
- <pt x="379" y="23" on="0"/>
- <pt x="281" y="134" on="1"/>
- <pt x="80" y="363" on="0"/>
- <pt x="80" y="741" on="1"/>
- <pt x="80" y="1091" on="0"/>
- <pt x="246" y="1304" on="1"/>
- <pt x="411" y="1517" on="0"/>
- <pt x="678" y="1517" on="1"/>
- <pt x="842" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="973" y="610" on="1"/>
- <pt x="973" y="870" on="1"/>
- <pt x="973" y="1190" on="0"/>
- <pt x="910" y="1320" on="1"/>
- <pt x="848" y="1450" on="0"/>
- <pt x="694" y="1450" on="1"/>
- <pt x="516" y="1450" on="0"/>
- <pt x="410" y="1255" on="1"/>
- <pt x="303" y="1060" on="0"/>
- <pt x="303" y="740" on="1"/>
- <pt x="303" y="420" on="0"/>
- <pt x="410" y="226" on="1"/>
- <pt x="516" y="31" on="0"/>
- <pt x="694" y="31" on="1"/>
- <pt x="864" y="31" on="0"/>
- <pt x="924" y="194" on="1"/>
- <pt x="973" y="327" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 133 values pushed */
- 0 0 85 17 60 77 17 70 48 84 70 0 60 2 0 1 14 2 73 31 30 24 23 22 16
- 9 8 4 3 11 14 38 3 72 54 51 50 45 44 42 40 36 33 32 11 38 52 3 0 0
- 15 14 21 1 1 1 4 48 84 39 38 1 53 52 1 2 0 2 1 0 14 0 0 81 33
- 66 48 196 50 2 31 2 45 44 42 38 36 33 30 24 23 22 14 9 8 4 14 31 15 3
- 66 0 0 0 73 72 54 53 1 0 36 5 15 1 4 48 196 52 51 1 3 2 1 32 31
- 1 40 39 16 15 3 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Oacute" xMin="80" yMin="-37" xMax="1398" yMax="1925">
- <contour>
- <pt x="739" y="1517" on="1"/>
- <pt x="1044" y="1517" on="0"/>
- <pt x="1221" y="1309" on="1"/>
- <pt x="1398" y="1101" on="0"/>
- <pt x="1398" y="742" on="1"/>
- <pt x="1398" y="377" on="0"/>
- <pt x="1220" y="170" on="1"/>
- <pt x="1043" y="-37" on="0"/>
- <pt x="729" y="-37" on="1"/>
- <pt x="461" y="-37" on="0"/>
- <pt x="292" y="133" on="1"/>
- <pt x="80" y="347" on="0"/>
- <pt x="80" y="740" on="1"/>
- <pt x="80" y="1100" on="0"/>
- <pt x="257" y="1308" on="1"/>
- <pt x="435" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="739" y="1450" on="1"/>
- <pt x="538" y="1450" on="0"/>
- <pt x="423" y="1261" on="1"/>
- <pt x="308" y="1072" on="0"/>
- <pt x="308" y="741" on="1"/>
- <pt x="308" y="413" on="0"/>
- <pt x="422" y="222" on="1"/>
- <pt x="536" y="31" on="0"/>
- <pt x="734" y="31" on="1"/>
- <pt x="918" y="31" on="0"/>
- <pt x="1030" y="182" on="1"/>
- <pt x="1170" y="371" on="0"/>
- <pt x="1170" y="743" on="1"/>
- <pt x="1170" y="1074" on="0"/>
- <pt x="1055" y="1261" on="1"/>
- <pt x="939" y="1450" on="0"/>
- </contour>
- <contour>
- <pt x="585" y="1604" on="1"/>
- <pt x="826" y="1925" on="1"/>
- <pt x="1085" y="1925" on="1"/>
- <pt x="678" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 43 values pushed */
- 0 0 24 17 8 16 17 0 48 84 8 2 0 0 1 35 32 2 33 0 3 0 34 33 1
- 0 14 0 0 28 34 4 20 34 12 48 196 35 34 33 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Obreve" xMin="80" yMin="-37" xMax="1398" yMax="1925">
- <contour>
- <pt x="739" y="1517" on="1"/>
- <pt x="1044" y="1517" on="0"/>
- <pt x="1221" y="1309" on="1"/>
- <pt x="1398" y="1101" on="0"/>
- <pt x="1398" y="742" on="1"/>
- <pt x="1398" y="377" on="0"/>
- <pt x="1220" y="170" on="1"/>
- <pt x="1043" y="-37" on="0"/>
- <pt x="729" y="-37" on="1"/>
- <pt x="461" y="-37" on="0"/>
- <pt x="292" y="133" on="1"/>
- <pt x="80" y="347" on="0"/>
- <pt x="80" y="740" on="1"/>
- <pt x="80" y="1100" on="0"/>
- <pt x="257" y="1308" on="1"/>
- <pt x="435" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="739" y="1450" on="1"/>
- <pt x="538" y="1450" on="0"/>
- <pt x="423" y="1261" on="1"/>
- <pt x="308" y="1072" on="0"/>
- <pt x="308" y="741" on="1"/>
- <pt x="308" y="413" on="0"/>
- <pt x="422" y="222" on="1"/>
- <pt x="536" y="31" on="0"/>
- <pt x="734" y="31" on="1"/>
- <pt x="918" y="31" on="0"/>
- <pt x="1030" y="182" on="1"/>
- <pt x="1170" y="371" on="0"/>
- <pt x="1170" y="743" on="1"/>
- <pt x="1170" y="1074" on="0"/>
- <pt x="1055" y="1261" on="1"/>
- <pt x="939" y="1450" on="0"/>
- </contour>
- <contour>
- <pt x="406" y="1925" on="1"/>
- <pt x="471" y="1925" on="1"/>
- <pt x="498" y="1835" on="0"/>
- <pt x="558" y="1793" on="1"/>
- <pt x="626" y="1746" on="0"/>
- <pt x="739" y="1746" on="1"/>
- <pt x="865" y="1746" on="0"/>
- <pt x="935" y="1805" on="1"/>
- <pt x="984" y="1845" on="0"/>
- <pt x="1008" y="1925" on="1"/>
- <pt x="1072" y="1925" on="1"/>
- <pt x="1053" y="1790" on="0"/>
- <pt x="981" y="1709" on="1"/>
- <pt x="887" y="1604" on="0"/>
- <pt x="739" y="1604" on="1"/>
- <pt x="585" y="1604" on="0"/>
- <pt x="490" y="1719" on="1"/>
- <pt x="425" y="1796" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 0 0 37 20 46 24 38 8 16 38 0 48 84 8 2 0 0 1 42 41 33 32 4 13 46
- 0 0 14 0 0 28 34 4 20 34 12 48 196 42 41 33 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ocircumflex" xMin="80" yMin="-37" xMax="1398" yMax="1925">
- <contour>
- <pt x="739" y="1517" on="1"/>
- <pt x="1044" y="1517" on="0"/>
- <pt x="1221" y="1309" on="1"/>
- <pt x="1398" y="1101" on="0"/>
- <pt x="1398" y="742" on="1"/>
- <pt x="1398" y="377" on="0"/>
- <pt x="1220" y="170" on="1"/>
- <pt x="1043" y="-37" on="0"/>
- <pt x="729" y="-37" on="1"/>
- <pt x="461" y="-37" on="0"/>
- <pt x="292" y="133" on="1"/>
- <pt x="80" y="347" on="0"/>
- <pt x="80" y="740" on="1"/>
- <pt x="80" y="1100" on="0"/>
- <pt x="257" y="1308" on="1"/>
- <pt x="435" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="739" y="1450" on="1"/>
- <pt x="538" y="1450" on="0"/>
- <pt x="423" y="1261" on="1"/>
- <pt x="308" y="1072" on="0"/>
- <pt x="308" y="741" on="1"/>
- <pt x="308" y="413" on="0"/>
- <pt x="422" y="222" on="1"/>
- <pt x="536" y="31" on="0"/>
- <pt x="734" y="31" on="1"/>
- <pt x="918" y="31" on="0"/>
- <pt x="1030" y="182" on="1"/>
- <pt x="1170" y="371" on="0"/>
- <pt x="1170" y="743" on="1"/>
- <pt x="1170" y="1074" on="0"/>
- <pt x="1055" y="1261" on="1"/>
- <pt x="939" y="1450" on="0"/>
- </contour>
- <contour>
- <pt x="388" y="1604" on="1"/>
- <pt x="629" y="1925" on="1"/>
- <pt x="851" y="1925" on="1"/>
- <pt x="1091" y="1604" on="1"/>
- <pt x="1005" y="1604" on="1"/>
- <pt x="740" y="1826" on="1"/>
- <pt x="474" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 49 values pushed */
- 0 0 24 17 8 16 17 0 48 84 8 2 0 0 1 38 37 36 35 32 5 33 0 3 0
- 34 33 1 0 14 0 0 28 34 4 20 34 12 48 196 38 37 36 35 34 33 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Odieresis" xMin="80" yMin="-37" xMax="1398" yMax="1777">
- <contour>
- <pt x="739" y="1517" on="1"/>
- <pt x="1044" y="1517" on="0"/>
- <pt x="1221" y="1309" on="1"/>
- <pt x="1398" y="1101" on="0"/>
- <pt x="1398" y="742" on="1"/>
- <pt x="1398" y="377" on="0"/>
- <pt x="1220" y="170" on="1"/>
- <pt x="1043" y="-37" on="0"/>
- <pt x="729" y="-37" on="1"/>
- <pt x="461" y="-37" on="0"/>
- <pt x="292" y="133" on="1"/>
- <pt x="80" y="347" on="0"/>
- <pt x="80" y="740" on="1"/>
- <pt x="80" y="1100" on="0"/>
- <pt x="257" y="1308" on="1"/>
- <pt x="435" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="739" y="1450" on="1"/>
- <pt x="538" y="1450" on="0"/>
- <pt x="423" y="1261" on="1"/>
- <pt x="308" y="1072" on="0"/>
- <pt x="308" y="741" on="1"/>
- <pt x="308" y="413" on="0"/>
- <pt x="422" y="222" on="1"/>
- <pt x="536" y="31" on="0"/>
- <pt x="734" y="31" on="1"/>
- <pt x="918" y="31" on="0"/>
- <pt x="1030" y="182" on="1"/>
- <pt x="1170" y="371" on="0"/>
- <pt x="1170" y="743" on="1"/>
- <pt x="1170" y="1074" on="0"/>
- <pt x="1055" y="1261" on="1"/>
- <pt x="939" y="1450" on="0"/>
- </contour>
- <contour>
- <pt x="455" y="1604" on="1"/>
- <pt x="455" y="1777" on="1"/>
- <pt x="628" y="1777" on="1"/>
- <pt x="628" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="850" y="1604" on="1"/>
- <pt x="850" y="1777" on="1"/>
- <pt x="1023" y="1777" on="1"/>
- <pt x="1023" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 0 0 24 17 8 16 17 0 48 84 8 2 0 0 0 0 39 36 35 32 13 3 33 1 4
- 48 84 38 37 34 33 3 0 14 0 0 28 34 4 20 34 12 48 196 4 38 12 32 0 0
- 37 36 13 1 38 35 34 13 1 32 2 4 48 196 39 38 1 33 32 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ograve" xMin="80" yMin="-37" xMax="1398" yMax="1925">
- <contour>
- <pt x="739" y="1517" on="1"/>
- <pt x="1044" y="1517" on="0"/>
- <pt x="1221" y="1309" on="1"/>
- <pt x="1398" y="1101" on="0"/>
- <pt x="1398" y="742" on="1"/>
- <pt x="1398" y="377" on="0"/>
- <pt x="1220" y="170" on="1"/>
- <pt x="1043" y="-37" on="0"/>
- <pt x="729" y="-37" on="1"/>
- <pt x="461" y="-37" on="0"/>
- <pt x="292" y="133" on="1"/>
- <pt x="80" y="347" on="0"/>
- <pt x="80" y="740" on="1"/>
- <pt x="80" y="1100" on="0"/>
- <pt x="257" y="1308" on="1"/>
- <pt x="435" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="739" y="1450" on="1"/>
- <pt x="538" y="1450" on="0"/>
- <pt x="423" y="1261" on="1"/>
- <pt x="308" y="1072" on="0"/>
- <pt x="308" y="741" on="1"/>
- <pt x="308" y="413" on="0"/>
- <pt x="422" y="222" on="1"/>
- <pt x="536" y="31" on="0"/>
- <pt x="734" y="31" on="1"/>
- <pt x="918" y="31" on="0"/>
- <pt x="1030" y="182" on="1"/>
- <pt x="1170" y="371" on="0"/>
- <pt x="1170" y="743" on="1"/>
- <pt x="1170" y="1074" on="0"/>
- <pt x="1055" y="1261" on="1"/>
- <pt x="939" y="1450" on="0"/>
- </contour>
- <contour>
- <pt x="893" y="1604" on="1"/>
- <pt x="800" y="1604" on="1"/>
- <pt x="393" y="1925" on="1"/>
- <pt x="652" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 43 values pushed */
- 0 0 24 17 8 16 17 0 48 84 8 2 0 0 1 33 32 2 34 0 3 0 35 34 1
- 0 14 0 0 28 34 4 20 34 12 48 196 35 34 33 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ohungarumlaut" xMin="80" yMin="-37" xMax="1398" yMax="1925">
- <contour>
- <pt x="739" y="1517" on="1"/>
- <pt x="1044" y="1517" on="0"/>
- <pt x="1221" y="1309" on="1"/>
- <pt x="1398" y="1101" on="0"/>
- <pt x="1398" y="742" on="1"/>
- <pt x="1398" y="377" on="0"/>
- <pt x="1220" y="170" on="1"/>
- <pt x="1043" y="-37" on="0"/>
- <pt x="729" y="-37" on="1"/>
- <pt x="461" y="-37" on="0"/>
- <pt x="292" y="133" on="1"/>
- <pt x="80" y="347" on="0"/>
- <pt x="80" y="740" on="1"/>
- <pt x="80" y="1100" on="0"/>
- <pt x="257" y="1308" on="1"/>
- <pt x="435" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="739" y="1450" on="1"/>
- <pt x="538" y="1450" on="0"/>
- <pt x="423" y="1261" on="1"/>
- <pt x="308" y="1072" on="0"/>
- <pt x="308" y="741" on="1"/>
- <pt x="308" y="413" on="0"/>
- <pt x="422" y="222" on="1"/>
- <pt x="536" y="31" on="0"/>
- <pt x="734" y="31" on="1"/>
- <pt x="918" y="31" on="0"/>
- <pt x="1030" y="182" on="1"/>
- <pt x="1170" y="371" on="0"/>
- <pt x="1170" y="743" on="1"/>
- <pt x="1170" y="1074" on="0"/>
- <pt x="1055" y="1261" on="1"/>
- <pt x="939" y="1450" on="0"/>
- </contour>
- <contour>
- <pt x="492" y="1604" on="1"/>
- <pt x="706" y="1925" on="1"/>
- <pt x="875" y="1925" on="1"/>
- <pt x="554" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="801" y="1604" on="1"/>
- <pt x="1014" y="1925" on="1"/>
- <pt x="1183" y="1925" on="1"/>
- <pt x="862" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 51 values pushed */
- 0 0 24 17 8 16 17 0 48 84 8 2 0 0 1 39 36 35 32 4 33 0 3 0 38
- 37 34 33 3 0 14 0 0 28 34 4 20 34 12 48 196 39 38 37 36 35 34 33 32 12
- 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Omacron" xMin="80" yMin="-37" xMax="1398" yMax="1727">
- <contour>
- <pt x="739" y="1517" on="1"/>
- <pt x="1044" y="1517" on="0"/>
- <pt x="1221" y="1309" on="1"/>
- <pt x="1398" y="1101" on="0"/>
- <pt x="1398" y="742" on="1"/>
- <pt x="1398" y="377" on="0"/>
- <pt x="1220" y="170" on="1"/>
- <pt x="1043" y="-37" on="0"/>
- <pt x="729" y="-37" on="1"/>
- <pt x="461" y="-37" on="0"/>
- <pt x="292" y="133" on="1"/>
- <pt x="80" y="347" on="0"/>
- <pt x="80" y="740" on="1"/>
- <pt x="80" y="1100" on="0"/>
- <pt x="257" y="1308" on="1"/>
- <pt x="435" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="739" y="1450" on="1"/>
- <pt x="538" y="1450" on="0"/>
- <pt x="423" y="1261" on="1"/>
- <pt x="308" y="1072" on="0"/>
- <pt x="308" y="741" on="1"/>
- <pt x="308" y="413" on="0"/>
- <pt x="422" y="222" on="1"/>
- <pt x="536" y="31" on="0"/>
- <pt x="734" y="31" on="1"/>
- <pt x="918" y="31" on="0"/>
- <pt x="1030" y="182" on="1"/>
- <pt x="1170" y="371" on="0"/>
- <pt x="1170" y="743" on="1"/>
- <pt x="1170" y="1074" on="0"/>
- <pt x="1055" y="1261" on="1"/>
- <pt x="939" y="1450" on="0"/>
- </contour>
- <contour>
- <pt x="418" y="1604" on="1"/>
- <pt x="418" y="1727" on="1"/>
- <pt x="1060" y="1727" on="1"/>
- <pt x="1060" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 46 values pushed */
- 0 0 24 17 8 16 17 0 48 84 8 2 0 0 0 0 35 32 12 1 33 1 4 48 84
- 34 33 1 0 14 0 0 28 34 4 20 34 12 48 196 35 34 33 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Oslash" xMin="80" yMin="-37" xMax="1398" yMax="1517">
- <contour>
- <pt x="80" y="-37" on="1"/>
- <pt x="253" y="181" on="1"/>
- <pt x="176" y="282" on="0"/>
- <pt x="137" y="387" on="1"/>
- <pt x="80" y="542" on="0"/>
- <pt x="80" y="741" on="1"/>
- <pt x="80" y="1101" on="0"/>
- <pt x="257" y="1309" on="1"/>
- <pt x="434" y="1517" on="0"/>
- <pt x="739" y="1517" on="1"/>
- <pt x="994" y="1517" on="0"/>
- <pt x="1178" y="1352" on="1"/>
- <pt x="1309" y="1517" on="1"/>
- <pt x="1398" y="1517" on="1"/>
- <pt x="1226" y="1298" on="1"/>
- <pt x="1303" y="1198" on="0"/>
- <pt x="1341" y="1094" on="1"/>
- <pt x="1398" y="938" on="0"/>
- <pt x="1398" y="739" on="1"/>
- <pt x="1398" y="380" on="0"/>
- <pt x="1221" y="172" on="1"/>
- <pt x="1044" y="-37" on="0"/>
- <pt x="739" y="-37" on="1"/>
- <pt x="485" y="-37" on="0"/>
- <pt x="305" y="124" on="1"/>
- <pt x="179" y="-37" on="1"/>
- </contour>
- <contour>
- <pt x="407" y="254" on="1"/>
- <pt x="463" y="154" on="0"/>
- <pt x="526" y="104" on="1"/>
- <pt x="617" y="31" on="0"/>
- <pt x="739" y="31" on="1"/>
- <pt x="940" y="31" on="0"/>
- <pt x="1055" y="220" on="1"/>
- <pt x="1170" y="409" on="0"/>
- <pt x="1170" y="738" on="1"/>
- <pt x="1170" y="973" on="0"/>
- <pt x="1107" y="1147" on="1"/>
- </contour>
- <contour>
- <pt x="1074" y="1220" on="1"/>
- <pt x="1017" y="1323" on="0"/>
- <pt x="954" y="1374" on="1"/>
- <pt x="862" y="1450" on="0"/>
- <pt x="738" y="1450" on="1"/>
- <pt x="538" y="1450" on="0"/>
- <pt x="423" y="1261" on="1"/>
- <pt x="308" y="1072" on="0"/>
- <pt x="308" y="744" on="1"/>
- <pt x="308" y="505" on="0"/>
- <pt x="371" y="332" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 67 values pushed */
- 0 0 41 17 9 30 17 22 48 84 22 2 9 0 1 1 47 37 36 26 24 14 11 1 8
- 0 2 3 0 0 1 13 12 2 13 0 0 1 25 0 2 0 14 0 0 45 34 5 34 34
- 18 48 196 47 37 36 26 25 24 18 14 13 12 11 5 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Otilde" xMin="80" yMin="-37" xMax="1398" yMax="1839">
- <contour>
- <pt x="739" y="1517" on="1"/>
- <pt x="1044" y="1517" on="0"/>
- <pt x="1221" y="1309" on="1"/>
- <pt x="1398" y="1101" on="0"/>
- <pt x="1398" y="742" on="1"/>
- <pt x="1398" y="377" on="0"/>
- <pt x="1220" y="170" on="1"/>
- <pt x="1043" y="-37" on="0"/>
- <pt x="729" y="-37" on="1"/>
- <pt x="461" y="-37" on="0"/>
- <pt x="292" y="133" on="1"/>
- <pt x="80" y="347" on="0"/>
- <pt x="80" y="740" on="1"/>
- <pt x="80" y="1100" on="0"/>
- <pt x="257" y="1308" on="1"/>
- <pt x="435" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="739" y="1450" on="1"/>
- <pt x="538" y="1450" on="0"/>
- <pt x="423" y="1261" on="1"/>
- <pt x="308" y="1072" on="0"/>
- <pt x="308" y="741" on="1"/>
- <pt x="308" y="413" on="0"/>
- <pt x="422" y="222" on="1"/>
- <pt x="536" y="31" on="0"/>
- <pt x="734" y="31" on="1"/>
- <pt x="918" y="31" on="0"/>
- <pt x="1030" y="182" on="1"/>
- <pt x="1170" y="371" on="0"/>
- <pt x="1170" y="743" on="1"/>
- <pt x="1170" y="1074" on="0"/>
- <pt x="1055" y="1261" on="1"/>
- <pt x="939" y="1450" on="0"/>
- </contour>
- <contour>
- <pt x="406" y="1604" on="1"/>
- <pt x="433" y="1743" on="0"/>
- <pt x="502" y="1797" on="1"/>
- <pt x="555" y="1839" on="0"/>
- <pt x="633" y="1839" on="1"/>
- <pt x="698" y="1839" on="0"/>
- <pt x="751" y="1801" on="1"/>
- <pt x="786" y="1776" on="1"/>
- <pt x="838" y="1739" on="0"/>
- <pt x="892" y="1739" on="1"/>
- <pt x="988" y="1739" on="0"/>
- <pt x="1010" y="1838" on="1"/>
- <pt x="1072" y="1838" on="1"/>
- <pt x="1044" y="1699" on="0"/>
- <pt x="976" y="1646" on="1"/>
- <pt x="922" y="1604" on="0"/>
- <pt x="845" y="1604" on="1"/>
- <pt x="782" y="1604" on="0"/>
- <pt x="727" y="1642" on="1"/>
- <pt x="692" y="1666" on="1"/>
- <pt x="637" y="1704" on="0"/>
- <pt x="585" y="1704" on="1"/>
- <pt x="497" y="1704" on="0"/>
- <pt x="468" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 48 values pushed */
- 0 0 53 20 36 41 20 48 24 17 8 16 17 0 48 84 8 2 0 0 1 55 44 43 32
- 4 13 48 36 0 0 14 0 0 28 34 4 20 34 12 48 196 55 44 43 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="P" xMin="31" yMin="0" xMax="1108" yMax="1492">
- <contour>
- <pt x="462" y="1480" on="1"/>
- <pt x="608" y="1485" on="1"/>
- <pt x="676" y="1487" on="1"/>
- <pt x="836" y="1492" on="0"/>
- <pt x="947" y="1427" on="1"/>
- <pt x="1108" y="1333" on="0"/>
- <pt x="1108" y="1095" on="1"/>
- <pt x="1108" y="617" on="0"/>
- <pt x="478" y="617" on="1"/>
- <pt x="424" y="617" on="1"/>
- <pt x="424" y="259" on="1"/>
- <pt x="423" y="144" on="0"/>
- <pt x="442" y="104" on="1"/>
- <pt x="457" y="72" on="0"/>
- <pt x="523" y="68" on="1"/>
- <pt x="591" y="63" on="1"/>
- <pt x="634" y="62" on="1"/>
- <pt x="634" y="0" on="1"/>
- <pt x="31" y="0" on="1"/>
- <pt x="31" y="62" on="1"/>
- <pt x="50" y="63" on="1"/>
- <pt x="117" y="68" on="1"/>
- <pt x="193" y="74" on="0"/>
- <pt x="203" y="115" on="1"/>
- <pt x="216" y="177" on="0"/>
- <pt x="216" y="259" on="1"/>
- <pt x="216" y="1221" on="1"/>
- <pt x="216" y="1280" on="0"/>
- <pt x="209" y="1333" on="1"/>
- <pt x="203" y="1372" on="0"/>
- <pt x="195" y="1384" on="1"/>
- <pt x="177" y="1410" on="0"/>
- <pt x="117" y="1413" on="1"/>
- <pt x="50" y="1417" on="1"/>
- <pt x="31" y="1419" on="1"/>
- <pt x="31" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="424" y="685" on="1"/>
- <pt x="490" y="685" on="1"/>
- <pt x="886" y="685" on="0"/>
- <pt x="886" y="1091" on="1"/>
- <pt x="886" y="1265" on="0"/>
- <pt x="810" y="1339" on="1"/>
- <pt x="735" y="1413" on="0"/>
- <pt x="559" y="1413" on="1"/>
- <pt x="424" y="1413" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 26 35 25 18 10 17 44 43 37 36 9 8 6 0 17 3 18 17 1 0 35 0 0 14 0
- 0 39 33 6 48 196 35 26 18 25 17 10 43 37 8 0 4 13 6 9 0 0 44 36 10
- 9 32 3 25 1 4 48 196 26 25 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Q" xMin="80" yMin="-298" xMax="1711" yMax="1517">
- <contour>
- <pt x="1711" y="-174" on="1"/>
- <pt x="1463" y="-298" on="1"/>
- <pt x="1211" y="-224" on="0"/>
- <pt x="926" y="-49" on="1"/>
- <pt x="885" y="-24" on="1"/>
- <pt x="809" y="-37" on="0"/>
- <pt x="739" y="-37" on="1"/>
- <pt x="434" y="-37" on="0"/>
- <pt x="257" y="171" on="1"/>
- <pt x="80" y="380" on="0"/>
- <pt x="80" y="740" on="1"/>
- <pt x="80" y="1099" on="0"/>
- <pt x="257" y="1308" on="1"/>
- <pt x="434" y="1517" on="0"/>
- <pt x="739" y="1517" on="1"/>
- <pt x="1045" y="1517" on="0"/>
- <pt x="1222" y="1308" on="1"/>
- <pt x="1398" y="1100" on="0"/>
- <pt x="1398" y="740" on="1"/>
- <pt x="1398" y="413" on="0"/>
- <pt x="1247" y="204" on="1"/>
- <pt x="1145" y="62" on="0"/>
- <pt x="974" y="1" on="1"/>
- <pt x="1211" y="-136" on="0"/>
- </contour>
- <contour>
- <pt x="740" y="1450" on="1"/>
- <pt x="540" y="1450" on="0"/>
- <pt x="424" y="1262" on="1"/>
- <pt x="308" y="1074" on="0"/>
- <pt x="308" y="748" on="1"/>
- <pt x="308" y="442" on="0"/>
- <pt x="403" y="256" on="1"/>
- <pt x="518" y="31" on="0"/>
- <pt x="740" y="31" on="1"/>
- <pt x="941" y="31" on="0"/>
- <pt x="1056" y="220" on="1"/>
- <pt x="1170" y="409" on="0"/>
- <pt x="1170" y="740" on="1"/>
- <pt x="1170" y="1073" on="0"/>
- <pt x="1056" y="1261" on="1"/>
- <pt x="940" y="1450" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 0 0 32 17 6 24 17 14 48 84 14 0 6 2 1 1 22 0 2 2 0 0 1 4 1
- 0 3 13 2 0 14 0 0 36 34 18 28 34 10 48 196 22 18 10 4 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="R" xMin="31" yMin="0" xMax="1354" yMax="1492">
- <contour>
- <pt x="387" y="1480" on="1"/>
- <pt x="485" y="1482" on="1"/>
- <pt x="567" y="1485" on="1"/>
- <pt x="647" y="1487" on="1"/>
- <pt x="827" y="1492" on="0"/>
- <pt x="948" y="1423" on="1"/>
- <pt x="1106" y="1332" on="0"/>
- <pt x="1106" y="1112" on="1"/>
- <pt x="1106" y="924" on="0"/>
- <pt x="993" y="811" on="1"/>
- <pt x="926" y="745" on="0"/>
- <pt x="800" y="697" on="1"/>
- <pt x="1090" y="261" on="1"/>
- <pt x="1183" y="132" on="1"/>
- <pt x="1226" y="71" on="0"/>
- <pt x="1291" y="66" on="1"/>
- <pt x="1333" y="63" on="1"/>
- <pt x="1354" y="62" on="1"/>
- <pt x="1354" y="0" on="1"/>
- <pt x="1001" y="0" on="1"/>
- <pt x="597" y="651" on="1"/>
- <pt x="426" y="651" on="1"/>
- <pt x="426" y="259" on="1"/>
- <pt x="431" y="160" on="1"/>
- <pt x="433" y="90" on="0"/>
- <pt x="459" y="79" on="1"/>
- <pt x="485" y="69" on="0"/>
- <pt x="568" y="63" on="1"/>
- <pt x="586" y="62" on="1"/>
- <pt x="586" y="0" on="1"/>
- <pt x="31" y="0" on="1"/>
- <pt x="31" y="62" on="1"/>
- <pt x="50" y="63" on="1"/>
- <pt x="117" y="68" on="1"/>
- <pt x="193" y="74" on="0"/>
- <pt x="203" y="115" on="1"/>
- <pt x="216" y="177" on="0"/>
- <pt x="216" y="259" on="1"/>
- <pt x="216" y="1221" on="1"/>
- <pt x="216" y="1280" on="0"/>
- <pt x="209" y="1333" on="1"/>
- <pt x="203" y="1372" on="0"/>
- <pt x="195" y="1384" on="1"/>
- <pt x="177" y="1410" on="0"/>
- <pt x="117" y="1413" on="1"/>
- <pt x="50" y="1417" on="1"/>
- <pt x="31" y="1419" on="1"/>
- <pt x="31" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="426" y="719" on="1"/>
- <pt x="500" y="719" on="1"/>
- <pt x="890" y="719" on="0"/>
- <pt x="890" y="1094" on="1"/>
- <pt x="890" y="1266" on="0"/>
- <pt x="817" y="1340" on="1"/>
- <pt x="744" y="1413" on="0"/>
- <pt x="568" y="1413" on="1"/>
- <pt x="426" y="1413" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 82 values pushed */
- 38 47 37 30 49 48 11 3 55 20 3 28 22 17 12 4 20 18 3 56 55 1 21 20 1
- 30 29 19 18 3 3 0 47 0 0 14 0 0 51 10 7 48 196 47 38 30 37 0 21 37
- 2 55 49 29 28 20 19 18 17 12 11 10 13 7 21 0 0 56 48 22 21 32 3 37 1
- 4 48 196 38 37 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Racute" xMin="31" yMin="0" xMax="1354" yMax="1925">
- <contour>
- <pt x="387" y="1480" on="1"/>
- <pt x="485" y="1482" on="1"/>
- <pt x="567" y="1485" on="1"/>
- <pt x="647" y="1487" on="1"/>
- <pt x="827" y="1492" on="0"/>
- <pt x="948" y="1423" on="1"/>
- <pt x="1106" y="1332" on="0"/>
- <pt x="1106" y="1112" on="1"/>
- <pt x="1106" y="924" on="0"/>
- <pt x="993" y="811" on="1"/>
- <pt x="926" y="745" on="0"/>
- <pt x="800" y="697" on="1"/>
- <pt x="1090" y="261" on="1"/>
- <pt x="1183" y="132" on="1"/>
- <pt x="1226" y="71" on="0"/>
- <pt x="1291" y="66" on="1"/>
- <pt x="1333" y="63" on="1"/>
- <pt x="1354" y="62" on="1"/>
- <pt x="1354" y="0" on="1"/>
- <pt x="1001" y="0" on="1"/>
- <pt x="597" y="651" on="1"/>
- <pt x="426" y="651" on="1"/>
- <pt x="426" y="259" on="1"/>
- <pt x="431" y="160" on="1"/>
- <pt x="433" y="90" on="0"/>
- <pt x="459" y="79" on="1"/>
- <pt x="485" y="69" on="0"/>
- <pt x="568" y="63" on="1"/>
- <pt x="586" y="62" on="1"/>
- <pt x="586" y="0" on="1"/>
- <pt x="31" y="0" on="1"/>
- <pt x="31" y="62" on="1"/>
- <pt x="50" y="63" on="1"/>
- <pt x="117" y="68" on="1"/>
- <pt x="193" y="74" on="0"/>
- <pt x="203" y="115" on="1"/>
- <pt x="216" y="177" on="0"/>
- <pt x="216" y="259" on="1"/>
- <pt x="216" y="1221" on="1"/>
- <pt x="216" y="1280" on="0"/>
- <pt x="209" y="1333" on="1"/>
- <pt x="203" y="1372" on="0"/>
- <pt x="195" y="1384" on="1"/>
- <pt x="177" y="1410" on="0"/>
- <pt x="117" y="1413" on="1"/>
- <pt x="50" y="1417" on="1"/>
- <pt x="31" y="1419" on="1"/>
- <pt x="31" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="426" y="719" on="1"/>
- <pt x="500" y="719" on="1"/>
- <pt x="890" y="719" on="0"/>
- <pt x="890" y="1094" on="1"/>
- <pt x="890" y="1266" on="0"/>
- <pt x="817" y="1340" on="1"/>
- <pt x="744" y="1413" on="0"/>
- <pt x="568" y="1413" on="1"/>
- <pt x="426" y="1413" on="1"/>
- </contour>
- <contour>
- <pt x="463" y="1604" on="1"/>
- <pt x="704" y="1925" on="1"/>
- <pt x="963" y="1925" on="1"/>
- <pt x="556" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 95 values pushed */
- 38 47 37 30 60 57 2 58 0 3 49 48 11 3 55 20 3 28 22 17 12 4 20 18 3
- 59 58 1 56 55 1 21 20 1 30 29 19 18 3 4 0 47 0 0 14 0 0 51 10 7
- 48 196 47 38 30 37 0 21 37 2 60 59 58 57 55 49 29 28 20 19 18 17 12 11 14
- 13 7 21 0 0 56 48 22 21 32 3 37 1 4 48 196 38 37 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Rcaron" xMin="31" yMin="0" xMax="1354" yMax="1925">
- <contour>
- <pt x="387" y="1480" on="1"/>
- <pt x="485" y="1482" on="1"/>
- <pt x="567" y="1485" on="1"/>
- <pt x="647" y="1487" on="1"/>
- <pt x="827" y="1492" on="0"/>
- <pt x="948" y="1423" on="1"/>
- <pt x="1106" y="1332" on="0"/>
- <pt x="1106" y="1112" on="1"/>
- <pt x="1106" y="924" on="0"/>
- <pt x="993" y="811" on="1"/>
- <pt x="926" y="745" on="0"/>
- <pt x="800" y="697" on="1"/>
- <pt x="1090" y="261" on="1"/>
- <pt x="1183" y="132" on="1"/>
- <pt x="1226" y="71" on="0"/>
- <pt x="1291" y="66" on="1"/>
- <pt x="1333" y="63" on="1"/>
- <pt x="1354" y="62" on="1"/>
- <pt x="1354" y="0" on="1"/>
- <pt x="1001" y="0" on="1"/>
- <pt x="597" y="651" on="1"/>
- <pt x="426" y="651" on="1"/>
- <pt x="426" y="259" on="1"/>
- <pt x="431" y="160" on="1"/>
- <pt x="433" y="90" on="0"/>
- <pt x="459" y="79" on="1"/>
- <pt x="485" y="69" on="0"/>
- <pt x="568" y="63" on="1"/>
- <pt x="586" y="62" on="1"/>
- <pt x="586" y="0" on="1"/>
- <pt x="31" y="0" on="1"/>
- <pt x="31" y="62" on="1"/>
- <pt x="50" y="63" on="1"/>
- <pt x="117" y="68" on="1"/>
- <pt x="193" y="74" on="0"/>
- <pt x="203" y="115" on="1"/>
- <pt x="216" y="177" on="0"/>
- <pt x="216" y="259" on="1"/>
- <pt x="216" y="1221" on="1"/>
- <pt x="216" y="1280" on="0"/>
- <pt x="209" y="1333" on="1"/>
- <pt x="203" y="1372" on="0"/>
- <pt x="195" y="1384" on="1"/>
- <pt x="177" y="1410" on="0"/>
- <pt x="117" y="1413" on="1"/>
- <pt x="50" y="1417" on="1"/>
- <pt x="31" y="1419" on="1"/>
- <pt x="31" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="426" y="719" on="1"/>
- <pt x="500" y="719" on="1"/>
- <pt x="890" y="719" on="0"/>
- <pt x="890" y="1094" on="1"/>
- <pt x="890" y="1266" on="0"/>
- <pt x="817" y="1340" on="1"/>
- <pt x="744" y="1413" on="0"/>
- <pt x="568" y="1413" on="1"/>
- <pt x="426" y="1413" on="1"/>
- </contour>
- <contour>
- <pt x="938" y="1925" on="1"/>
- <pt x="698" y="1604" on="1"/>
- <pt x="476" y="1604" on="1"/>
- <pt x="235" y="1925" on="1"/>
- <pt x="321" y="1925" on="1"/>
- <pt x="587" y="1703" on="1"/>
- <pt x="852" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 101 values pushed */
- 38 47 37 30 49 48 11 3 55 20 3 28 22 17 12 4 20 18 3 63 62 61 60 57 5
- 13 58 59 58 1 56 55 1 21 20 1 30 29 19 18 3 4 0 47 0 0 14 0 0 51
- 10 7 48 196 47 38 30 37 61 60 0 3 21 37 3 63 62 59 58 57 55 49 29 28 20
- 19 18 17 12 11 15 13 7 21 0 0 56 48 22 21 32 3 37 1 4 48 196 38 37 1
- 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Rcommaaccent" xMin="31" yMin="-432" xMax="1354" yMax="1491">
- <contour>
- <pt x="387" y="1480" on="1"/>
- <pt x="485" y="1482" on="1"/>
- <pt x="567" y="1485" on="1"/>
- <pt x="647" y="1487" on="1"/>
- <pt x="828" y="1491" on="0"/>
- <pt x="948" y="1423" on="1"/>
- <pt x="1106" y="1332" on="0"/>
- <pt x="1106" y="1112" on="1"/>
- <pt x="1106" y="924" on="0"/>
- <pt x="993" y="811" on="1"/>
- <pt x="926" y="745" on="0"/>
- <pt x="800" y="697" on="1"/>
- <pt x="1090" y="261" on="1"/>
- <pt x="1183" y="132" on="1"/>
- <pt x="1226" y="71" on="0"/>
- <pt x="1291" y="66" on="1"/>
- <pt x="1333" y="63" on="1"/>
- <pt x="1354" y="62" on="1"/>
- <pt x="1354" y="0" on="1"/>
- <pt x="1001" y="0" on="1"/>
- <pt x="597" y="651" on="1"/>
- <pt x="426" y="651" on="1"/>
- <pt x="426" y="259" on="1"/>
- <pt x="431" y="160" on="1"/>
- <pt x="433" y="90" on="0"/>
- <pt x="459" y="79" on="1"/>
- <pt x="485" y="69" on="0"/>
- <pt x="568" y="63" on="1"/>
- <pt x="586" y="62" on="1"/>
- <pt x="586" y="0" on="1"/>
- <pt x="31" y="0" on="1"/>
- <pt x="31" y="62" on="1"/>
- <pt x="50" y="63" on="1"/>
- <pt x="117" y="68" on="1"/>
- <pt x="193" y="74" on="0"/>
- <pt x="203" y="115" on="1"/>
- <pt x="216" y="177" on="0"/>
- <pt x="216" y="259" on="1"/>
- <pt x="216" y="1221" on="1"/>
- <pt x="216" y="1280" on="0"/>
- <pt x="209" y="1333" on="1"/>
- <pt x="203" y="1372" on="0"/>
- <pt x="195" y="1384" on="1"/>
- <pt x="177" y="1410" on="0"/>
- <pt x="117" y="1413" on="1"/>
- <pt x="50" y="1417" on="1"/>
- <pt x="31" y="1419" on="1"/>
- <pt x="31" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="426" y="719" on="1"/>
- <pt x="500" y="719" on="1"/>
- <pt x="890" y="719" on="0"/>
- <pt x="890" y="1094" on="1"/>
- <pt x="890" y="1266" on="0"/>
- <pt x="817" y="1340" on="1"/>
- <pt x="744" y="1413" on="0"/>
- <pt x="568" y="1413" on="1"/>
- <pt x="426" y="1413" on="1"/>
- </contour>
- <contour>
- <pt x="574" y="-421" on="1"/>
- <pt x="574" y="-349" on="1"/>
- <pt x="623" y="-359" on="0"/>
- <pt x="678" y="-359" on="1"/>
- <pt x="781" y="-359" on="0"/>
- <pt x="781" y="-279" on="1"/>
- <pt x="781" y="-190" on="0"/>
- <pt x="623" y="-175" on="1"/>
- <pt x="623" y="-111" on="1"/>
- <pt x="757" y="-114" on="0"/>
- <pt x="823" y="-143" on="1"/>
- <pt x="916" y="-185" on="0"/>
- <pt x="916" y="-280" on="1"/>
- <pt x="916" y="-432" on="0"/>
- <pt x="699" y="-432" on="1"/>
- <pt x="640" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 105 values pushed */
- 0 0 60 17 71 48 84 38 47 37 30 49 48 11 3 55 20 3 28 22 17 12 4 20 18
- 3 65 64 58 57 4 13 71 18 56 55 1 21 20 1 30 29 19 18 3 3 0 47 0 0
- 14 0 0 62 48 69 51 10 7 48 196 47 38 30 37 0 21 37 2 65 64 58 57 55 49
- 29 28 20 19 18 17 12 11 14 13 69 7 21 0 0 56 48 22 21 32 3 37 1 4 48
- 196 38 37 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="S" xMin="119" yMin="-37" xMax="1045" yMax="1517">
- <contour>
- <pt x="119" y="30" on="1"/>
- <pt x="119" y="315" on="1"/>
- <pt x="224" y="315" on="1"/>
- <pt x="225" y="297" on="1"/>
- <pt x="227" y="257" on="0"/>
- <pt x="228" y="228" on="1"/>
- <pt x="228" y="222" on="1"/>
- <pt x="228" y="147" on="0"/>
- <pt x="297" y="99" on="1"/>
- <pt x="386" y="37" on="0"/>
- <pt x="542" y="37" on="1"/>
- <pt x="835" y="37" on="0"/>
- <pt x="835" y="319" on="1"/>
- <pt x="835" y="437" on="0"/>
- <pt x="790" y="498" on="1"/>
- <pt x="746" y="558" on="0"/>
- <pt x="602" y="636" on="1"/>
- <pt x="470" y="707" on="1"/>
- <pt x="130" y="890" on="0"/>
- <pt x="130" y="1129" on="1"/>
- <pt x="130" y="1298" on="0"/>
- <pt x="255" y="1408" on="1"/>
- <pt x="379" y="1517" on="0"/>
- <pt x="581" y="1517" on="1"/>
- <pt x="741" y="1517" on="0"/>
- <pt x="962" y="1454" on="1"/>
- <pt x="962" y="1191" on="1"/>
- <pt x="851" y="1191" on="1"/>
- <pt x="850" y="1208" on="1"/>
- <pt x="847" y="1248" on="0"/>
- <pt x="846" y="1281" on="1"/>
- <pt x="846" y="1287" on="1"/>
- <pt x="846" y="1364" on="0"/>
- <pt x="797" y="1403" on="1"/>
- <pt x="739" y="1450" on="0"/>
- <pt x="596" y="1450" on="1"/>
- <pt x="332" y="1450" on="0"/>
- <pt x="332" y="1196" on="1"/>
- <pt x="332" y="1093" on="0"/>
- <pt x="376" y="1033" on="1"/>
- <pt x="419" y="973" on="0"/>
- <pt x="544" y="906" on="1"/>
- <pt x="676" y="835" on="1"/>
- <pt x="891" y="719" on="0"/>
- <pt x="968" y="626" on="1"/>
- <pt x="1045" y="534" on="0"/>
- <pt x="1045" y="392" on="1"/>
- <pt x="1045" y="206" on="0"/>
- <pt x="906" y="84" on="1"/>
- <pt x="768" y="-37" on="0"/>
- <pt x="536" y="-37" on="1"/>
- <pt x="304" y="-37" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 35 17 23 10 21 50 48 84 50 2 23 0 1 1 31 30 27 26 25 6 5 2 1
- 0 10 0 2 3 0 0 14 0 0 37 5 19 12 10 46 48 196 19 31 30 27 19 6 5
- 2 7 25 0 3 46 25 26 25 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Sacute" xMin="119" yMin="-37" xMax="1045" yMax="1925">
- <contour>
- <pt x="119" y="30" on="1"/>
- <pt x="119" y="315" on="1"/>
- <pt x="224" y="315" on="1"/>
- <pt x="225" y="297" on="1"/>
- <pt x="227" y="257" on="0"/>
- <pt x="228" y="228" on="1"/>
- <pt x="228" y="222" on="1"/>
- <pt x="228" y="147" on="0"/>
- <pt x="297" y="99" on="1"/>
- <pt x="386" y="37" on="0"/>
- <pt x="542" y="37" on="1"/>
- <pt x="835" y="37" on="0"/>
- <pt x="835" y="319" on="1"/>
- <pt x="835" y="437" on="0"/>
- <pt x="790" y="498" on="1"/>
- <pt x="746" y="558" on="0"/>
- <pt x="602" y="636" on="1"/>
- <pt x="470" y="707" on="1"/>
- <pt x="130" y="890" on="0"/>
- <pt x="130" y="1129" on="1"/>
- <pt x="130" y="1298" on="0"/>
- <pt x="255" y="1408" on="1"/>
- <pt x="379" y="1517" on="0"/>
- <pt x="581" y="1517" on="1"/>
- <pt x="741" y="1517" on="0"/>
- <pt x="962" y="1454" on="1"/>
- <pt x="962" y="1191" on="1"/>
- <pt x="851" y="1191" on="1"/>
- <pt x="850" y="1208" on="1"/>
- <pt x="847" y="1248" on="0"/>
- <pt x="846" y="1281" on="1"/>
- <pt x="846" y="1287" on="1"/>
- <pt x="846" y="1364" on="0"/>
- <pt x="797" y="1403" on="1"/>
- <pt x="739" y="1450" on="0"/>
- <pt x="596" y="1450" on="1"/>
- <pt x="332" y="1450" on="0"/>
- <pt x="332" y="1196" on="1"/>
- <pt x="332" y="1093" on="0"/>
- <pt x="376" y="1033" on="1"/>
- <pt x="419" y="973" on="0"/>
- <pt x="544" y="906" on="1"/>
- <pt x="676" y="835" on="1"/>
- <pt x="891" y="719" on="0"/>
- <pt x="968" y="626" on="1"/>
- <pt x="1045" y="534" on="0"/>
- <pt x="1045" y="392" on="1"/>
- <pt x="1045" y="206" on="0"/>
- <pt x="906" y="84" on="1"/>
- <pt x="768" y="-37" on="0"/>
- <pt x="536" y="-37" on="1"/>
- <pt x="304" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="482" y="1604" on="1"/>
- <pt x="723" y="1925" on="1"/>
- <pt x="982" y="1925" on="1"/>
- <pt x="575" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 0 0 35 17 23 10 21 50 48 84 50 2 23 0 1 55 52 2 53 0 3 0 1 1 31
- 30 27 26 25 6 5 2 1 0 10 0 2 3 0 0 54 53 1 0 14 0 0 37 5 19
- 12 10 46 48 196 19 55 53 52 31 30 27 19 6 5 2 10 25 0 3 54 46 25 26 25
- 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Scaron" xMin="119" yMin="-37" xMax="1045" yMax="1925">
- <contour>
- <pt x="119" y="30" on="1"/>
- <pt x="119" y="315" on="1"/>
- <pt x="224" y="315" on="1"/>
- <pt x="225" y="297" on="1"/>
- <pt x="227" y="257" on="0"/>
- <pt x="228" y="228" on="1"/>
- <pt x="228" y="222" on="1"/>
- <pt x="228" y="147" on="0"/>
- <pt x="297" y="99" on="1"/>
- <pt x="386" y="37" on="0"/>
- <pt x="542" y="37" on="1"/>
- <pt x="835" y="37" on="0"/>
- <pt x="835" y="319" on="1"/>
- <pt x="835" y="437" on="0"/>
- <pt x="790" y="498" on="1"/>
- <pt x="746" y="558" on="0"/>
- <pt x="602" y="636" on="1"/>
- <pt x="470" y="707" on="1"/>
- <pt x="130" y="890" on="0"/>
- <pt x="130" y="1129" on="1"/>
- <pt x="130" y="1298" on="0"/>
- <pt x="255" y="1408" on="1"/>
- <pt x="379" y="1517" on="0"/>
- <pt x="581" y="1517" on="1"/>
- <pt x="741" y="1517" on="0"/>
- <pt x="962" y="1454" on="1"/>
- <pt x="962" y="1191" on="1"/>
- <pt x="851" y="1191" on="1"/>
- <pt x="850" y="1208" on="1"/>
- <pt x="847" y="1248" on="0"/>
- <pt x="846" y="1281" on="1"/>
- <pt x="846" y="1287" on="1"/>
- <pt x="846" y="1364" on="0"/>
- <pt x="797" y="1403" on="1"/>
- <pt x="739" y="1450" on="0"/>
- <pt x="596" y="1450" on="1"/>
- <pt x="332" y="1450" on="0"/>
- <pt x="332" y="1196" on="1"/>
- <pt x="332" y="1093" on="0"/>
- <pt x="376" y="1033" on="1"/>
- <pt x="419" y="973" on="0"/>
- <pt x="544" y="906" on="1"/>
- <pt x="676" y="835" on="1"/>
- <pt x="891" y="719" on="0"/>
- <pt x="968" y="626" on="1"/>
- <pt x="1045" y="534" on="0"/>
- <pt x="1045" y="392" on="1"/>
- <pt x="1045" y="206" on="0"/>
- <pt x="906" y="84" on="1"/>
- <pt x="768" y="-37" on="0"/>
- <pt x="536" y="-37" on="1"/>
- <pt x="304" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="926" y="1925" on="1"/>
- <pt x="686" y="1604" on="1"/>
- <pt x="464" y="1604" on="1"/>
- <pt x="223" y="1925" on="1"/>
- <pt x="309" y="1925" on="1"/>
- <pt x="575" y="1703" on="1"/>
- <pt x="840" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 84 values pushed */
- 0 0 35 17 23 10 21 50 48 84 50 2 23 0 1 1 31 30 27 26 25 6 5 2 1
- 0 10 0 2 3 0 0 58 57 56 55 52 5 13 53 54 53 1 0 14 0 0 37 5 19
- 12 10 46 48 196 19 58 57 56 55 54 53 52 31 30 27 19 6 5 2 14 25 0 3 46
- 25 26 25 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Scedilla" xMin="119" yMin="-432" xMax="1045" yMax="1517">
- <contour>
- <pt x="119" y="30" on="1"/>
- <pt x="119" y="315" on="1"/>
- <pt x="224" y="315" on="1"/>
- <pt x="225" y="297" on="1"/>
- <pt x="227" y="257" on="0"/>
- <pt x="228" y="228" on="1"/>
- <pt x="228" y="222" on="1"/>
- <pt x="228" y="147" on="0"/>
- <pt x="297" y="99" on="1"/>
- <pt x="386" y="37" on="0"/>
- <pt x="542" y="37" on="1"/>
- <pt x="835" y="37" on="0"/>
- <pt x="835" y="319" on="1"/>
- <pt x="835" y="437" on="0"/>
- <pt x="790" y="498" on="1"/>
- <pt x="746" y="558" on="0"/>
- <pt x="602" y="636" on="1"/>
- <pt x="470" y="707" on="1"/>
- <pt x="130" y="890" on="0"/>
- <pt x="130" y="1129" on="1"/>
- <pt x="130" y="1299" on="0"/>
- <pt x="255" y="1408" on="1"/>
- <pt x="379" y="1517" on="0"/>
- <pt x="581" y="1517" on="1"/>
- <pt x="741" y="1517" on="0"/>
- <pt x="962" y="1454" on="1"/>
- <pt x="962" y="1191" on="1"/>
- <pt x="851" y="1191" on="1"/>
- <pt x="850" y="1208" on="1"/>
- <pt x="847" y="1248" on="0"/>
- <pt x="846" y="1281" on="1"/>
- <pt x="846" y="1287" on="1"/>
- <pt x="846" y="1364" on="0"/>
- <pt x="797" y="1403" on="1"/>
- <pt x="739" y="1450" on="0"/>
- <pt x="596" y="1450" on="1"/>
- <pt x="332" y="1450" on="0"/>
- <pt x="332" y="1196" on="1"/>
- <pt x="332" y="1093" on="0"/>
- <pt x="376" y="1033" on="1"/>
- <pt x="419" y="973" on="0"/>
- <pt x="544" y="906" on="1"/>
- <pt x="676" y="835" on="1"/>
- <pt x="891" y="719" on="0"/>
- <pt x="968" y="626" on="1"/>
- <pt x="1045" y="534" on="0"/>
- <pt x="1045" y="392" on="1"/>
- <pt x="1045" y="206" on="0"/>
- <pt x="906" y="84" on="1"/>
- <pt x="768" y="-37" on="0"/>
- <pt x="536" y="-37" on="1"/>
- <pt x="304" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="402" y="-411" on="1"/>
- <pt x="402" y="-343" on="1"/>
- <pt x="464" y="-359" on="0"/>
- <pt x="503" y="-359" on="1"/>
- <pt x="610" y="-359" on="0"/>
- <pt x="610" y="-277" on="1"/>
- <pt x="610" y="-179" on="0"/>
- <pt x="423" y="-175" on="1"/>
- <pt x="518" y="0" on="1"/>
- <pt x="597" y="0" on="1"/>
- <pt x="531" y="-119" on="1"/>
- <pt x="748" y="-138" on="0"/>
- <pt x="748" y="-266" on="1"/>
- <pt x="748" y="-336" on="0"/>
- <pt x="690" y="-384" on="1"/>
- <pt x="633" y="-432" on="0"/>
- <pt x="546" y="-432" on="1"/>
- <pt x="478" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 91 values pushed */
- 0 0 55 17 68 35 17 23 10 21 50 48 84 50 2 23 0 1 1 31 30 27 26 25 6
- 5 2 1 0 10 0 2 3 0 0 1 62 61 60 59 53 52 6 13 68 2 0 14 0 0
- 57 48 64 37 5 19 12 10 46 48 196 64 19 64 62 61 60 59 53 52 31 30 27 19 6
- 5 2 14 25 0 3 46 25 26 25 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Scircumflex" xMin="119" yMin="-37" xMax="1045" yMax="1925">
- <contour>
- <pt x="119" y="30" on="1"/>
- <pt x="119" y="315" on="1"/>
- <pt x="224" y="315" on="1"/>
- <pt x="225" y="297" on="1"/>
- <pt x="227" y="257" on="0"/>
- <pt x="228" y="228" on="1"/>
- <pt x="228" y="222" on="1"/>
- <pt x="228" y="147" on="0"/>
- <pt x="297" y="99" on="1"/>
- <pt x="386" y="37" on="0"/>
- <pt x="542" y="37" on="1"/>
- <pt x="835" y="37" on="0"/>
- <pt x="835" y="319" on="1"/>
- <pt x="835" y="437" on="0"/>
- <pt x="790" y="498" on="1"/>
- <pt x="746" y="558" on="0"/>
- <pt x="602" y="636" on="1"/>
- <pt x="470" y="707" on="1"/>
- <pt x="130" y="890" on="0"/>
- <pt x="130" y="1129" on="1"/>
- <pt x="130" y="1298" on="0"/>
- <pt x="255" y="1408" on="1"/>
- <pt x="379" y="1517" on="0"/>
- <pt x="581" y="1517" on="1"/>
- <pt x="741" y="1517" on="0"/>
- <pt x="962" y="1454" on="1"/>
- <pt x="962" y="1191" on="1"/>
- <pt x="851" y="1191" on="1"/>
- <pt x="850" y="1208" on="1"/>
- <pt x="847" y="1248" on="0"/>
- <pt x="846" y="1281" on="1"/>
- <pt x="846" y="1287" on="1"/>
- <pt x="846" y="1364" on="0"/>
- <pt x="797" y="1403" on="1"/>
- <pt x="739" y="1450" on="0"/>
- <pt x="596" y="1450" on="1"/>
- <pt x="332" y="1450" on="0"/>
- <pt x="332" y="1196" on="1"/>
- <pt x="332" y="1093" on="0"/>
- <pt x="376" y="1033" on="1"/>
- <pt x="419" y="973" on="0"/>
- <pt x="544" y="906" on="1"/>
- <pt x="676" y="835" on="1"/>
- <pt x="891" y="719" on="0"/>
- <pt x="968" y="626" on="1"/>
- <pt x="1045" y="534" on="0"/>
- <pt x="1045" y="392" on="1"/>
- <pt x="1045" y="206" on="0"/>
- <pt x="906" y="84" on="1"/>
- <pt x="768" y="-37" on="0"/>
- <pt x="536" y="-37" on="1"/>
- <pt x="304" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="223" y="1604" on="1"/>
- <pt x="464" y="1925" on="1"/>
- <pt x="686" y="1925" on="1"/>
- <pt x="926" y="1604" on="1"/>
- <pt x="840" y="1604" on="1"/>
- <pt x="575" y="1826" on="1"/>
- <pt x="309" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 0 0 35 17 23 10 21 50 48 84 50 2 23 0 1 58 57 56 55 52 5 53 0 3 0
- 1 1 31 30 27 26 25 6 5 2 1 0 10 0 2 3 0 0 54 53 1 0 14 0 0
- 37 5 19 12 10 46 48 196 19 58 57 56 55 54 53 52 31 30 27 19 6 5 2 14 25
- 0 3 46 25 26 25 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Scommaaccent" xMin="119" yMin="-432" xMax="1045" yMax="1517">
- <contour>
- <pt x="119" y="30" on="1"/>
- <pt x="119" y="315" on="1"/>
- <pt x="224" y="315" on="1"/>
- <pt x="225" y="297" on="1"/>
- <pt x="227" y="257" on="0"/>
- <pt x="228" y="228" on="1"/>
- <pt x="228" y="222" on="1"/>
- <pt x="228" y="147" on="0"/>
- <pt x="297" y="99" on="1"/>
- <pt x="386" y="37" on="0"/>
- <pt x="542" y="37" on="1"/>
- <pt x="835" y="37" on="0"/>
- <pt x="835" y="319" on="1"/>
- <pt x="835" y="437" on="0"/>
- <pt x="790" y="498" on="1"/>
- <pt x="746" y="558" on="0"/>
- <pt x="602" y="636" on="1"/>
- <pt x="470" y="707" on="1"/>
- <pt x="130" y="890" on="0"/>
- <pt x="130" y="1129" on="1"/>
- <pt x="130" y="1299" on="0"/>
- <pt x="255" y="1408" on="1"/>
- <pt x="379" y="1517" on="0"/>
- <pt x="581" y="1517" on="1"/>
- <pt x="741" y="1517" on="0"/>
- <pt x="962" y="1454" on="1"/>
- <pt x="962" y="1191" on="1"/>
- <pt x="851" y="1191" on="1"/>
- <pt x="850" y="1208" on="1"/>
- <pt x="847" y="1248" on="0"/>
- <pt x="846" y="1281" on="1"/>
- <pt x="846" y="1287" on="1"/>
- <pt x="846" y="1364" on="0"/>
- <pt x="797" y="1403" on="1"/>
- <pt x="739" y="1450" on="0"/>
- <pt x="596" y="1450" on="1"/>
- <pt x="332" y="1450" on="0"/>
- <pt x="332" y="1196" on="1"/>
- <pt x="332" y="1093" on="0"/>
- <pt x="376" y="1033" on="1"/>
- <pt x="419" y="973" on="0"/>
- <pt x="544" y="906" on="1"/>
- <pt x="676" y="835" on="1"/>
- <pt x="891" y="719" on="0"/>
- <pt x="968" y="626" on="1"/>
- <pt x="1045" y="534" on="0"/>
- <pt x="1045" y="392" on="1"/>
- <pt x="1045" y="206" on="0"/>
- <pt x="906" y="84" on="1"/>
- <pt x="768" y="-37" on="0"/>
- <pt x="536" y="-37" on="1"/>
- <pt x="304" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="442" y="-421" on="1"/>
- <pt x="442" y="-349" on="1"/>
- <pt x="491" y="-359" on="0"/>
- <pt x="546" y="-359" on="1"/>
- <pt x="649" y="-359" on="0"/>
- <pt x="649" y="-279" on="1"/>
- <pt x="649" y="-190" on="0"/>
- <pt x="491" y="-175" on="1"/>
- <pt x="491" y="-111" on="1"/>
- <pt x="625" y="-114" on="0"/>
- <pt x="691" y="-143" on="1"/>
- <pt x="784" y="-185" on="0"/>
- <pt x="784" y="-280" on="1"/>
- <pt x="784" y="-432" on="0"/>
- <pt x="567" y="-432" on="1"/>
- <pt x="507" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 0 0 55 17 66 35 17 23 10 21 50 48 84 50 2 23 0 1 1 31 30 27 26 25 6
- 5 2 1 0 10 0 2 3 0 0 1 60 59 53 52 4 13 66 2 0 14 0 0 57 48
- 64 37 5 19 12 10 46 48 196 64 19 64 60 59 53 52 31 30 27 19 6 5 2 12 25
- 0 3 46 25 26 25 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="T" xMin="31" yMin="0" xMax="1221" yMax="1480">
- <contour>
- <pt x="521" y="1400" on="1"/>
- <pt x="325" y="1400" on="1"/>
- <pt x="222" y="1395" on="1"/>
- <pt x="158" y="1394" on="0"/>
- <pt x="148" y="1371" on="1"/>
- <pt x="140" y="1352" on="0"/>
- <pt x="140" y="1301" on="1"/>
- <pt x="140" y="1287" on="1"/>
- <pt x="139" y="1270" on="1"/>
- <pt x="139" y="1236" on="0"/>
- <pt x="138" y="1230" on="1"/>
- <pt x="136" y="1209" on="1"/>
- <pt x="31" y="1209" on="1"/>
- <pt x="31" y="1480" on="1"/>
- <pt x="1221" y="1480" on="1"/>
- <pt x="1221" y="1209" on="1"/>
- <pt x="1116" y="1209" on="1"/>
- <pt x="1115" y="1230" on="1"/>
- <pt x="1114" y="1253" on="0"/>
- <pt x="1113" y="1287" on="1"/>
- <pt x="1113" y="1303" on="1"/>
- <pt x="1114" y="1366" on="0"/>
- <pt x="1098" y="1381" on="1"/>
- <pt x="1083" y="1395" on="0"/>
- <pt x="1031" y="1395" on="1"/>
- <pt x="928" y="1400" on="1"/>
- <pt x="731" y="1400" on="1"/>
- <pt x="731" y="259" on="1"/>
- <pt x="731" y="203" on="0"/>
- <pt x="739" y="147" on="1"/>
- <pt x="746" y="96" on="0"/>
- <pt x="771" y="82" on="1"/>
- <pt x="792" y="71" on="0"/>
- <pt x="830" y="68" on="1"/>
- <pt x="898" y="63" on="1"/>
- <pt x="941" y="62" on="1"/>
- <pt x="941" y="0" on="1"/>
- <pt x="312" y="0" on="1"/>
- <pt x="312" y="62" on="1"/>
- <pt x="355" y="63" on="1"/>
- <pt x="423" y="68" on="1"/>
- <pt x="498" y="74" on="0"/>
- <pt x="508" y="115" on="1"/>
- <pt x="521" y="177" on="0"/>
- <pt x="521" y="259" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 44 37 27 36 24 20 19 16 15 12 11 7 6 9 0 36 3 0 0 26 25 1 0 21 3
- 13 1 4 48 84 37 36 1 0 14 13 0 14 37 44 36 27 25 24 20 19 16 5 14 26
- 3 11 7 6 1 4 0 12 3 0 0 27 26 32 1 0 1 4 48 196 15 14 1 44 0
- 1 13 12 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Tbar" xMin="31" yMin="0" xMax="1221" yMax="1480">
- <contour>
- <pt x="521" y="715" on="1"/>
- <pt x="218" y="715" on="1"/>
- <pt x="218" y="789" on="1"/>
- <pt x="521" y="789" on="1"/>
- <pt x="521" y="1400" on="1"/>
- <pt x="325" y="1400" on="1"/>
- <pt x="222" y="1395" on="1"/>
- <pt x="158" y="1394" on="0"/>
- <pt x="148" y="1371" on="1"/>
- <pt x="140" y="1352" on="0"/>
- <pt x="140" y="1301" on="1"/>
- <pt x="140" y="1287" on="1"/>
- <pt x="139" y="1270" on="1"/>
- <pt x="139" y="1236" on="0"/>
- <pt x="138" y="1230" on="1"/>
- <pt x="136" y="1209" on="1"/>
- <pt x="31" y="1209" on="1"/>
- <pt x="31" y="1480" on="1"/>
- <pt x="1221" y="1480" on="1"/>
- <pt x="1221" y="1209" on="1"/>
- <pt x="1116" y="1209" on="1"/>
- <pt x="1115" y="1230" on="1"/>
- <pt x="1114" y="1253" on="0"/>
- <pt x="1113" y="1287" on="1"/>
- <pt x="1113" y="1303" on="1"/>
- <pt x="1114" y="1366" on="0"/>
- <pt x="1098" y="1381" on="1"/>
- <pt x="1083" y="1395" on="0"/>
- <pt x="1031" y="1395" on="1"/>
- <pt x="928" y="1400" on="1"/>
- <pt x="731" y="1400" on="1"/>
- <pt x="731" y="789" on="1"/>
- <pt x="1034" y="789" on="1"/>
- <pt x="1034" y="715" on="1"/>
- <pt x="731" y="715" on="1"/>
- <pt x="731" y="259" on="1"/>
- <pt x="731" y="203" on="0"/>
- <pt x="739" y="147" on="1"/>
- <pt x="746" y="96" on="0"/>
- <pt x="771" y="82" on="1"/>
- <pt x="792" y="71" on="0"/>
- <pt x="830" y="68" on="1"/>
- <pt x="898" y="63" on="1"/>
- <pt x="941" y="62" on="1"/>
- <pt x="941" y="0" on="1"/>
- <pt x="312" y="0" on="1"/>
- <pt x="312" y="62" on="1"/>
- <pt x="355" y="63" on="1"/>
- <pt x="423" y="68" on="1"/>
- <pt x="498" y="74" on="0"/>
- <pt x="508" y="115" on="1"/>
- <pt x="521" y="177" on="0"/>
- <pt x="521" y="259" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 102 values pushed */
- 52 45 35 44 28 24 23 20 19 16 15 11 10 9 4 2 3 0 0 30 29 5 4 21 3
- 17 34 33 1 0 21 3 2 2 4 48 84 32 31 3 2 3 45 44 1 2 0 18 17 0
- 14 45 52 44 35 33 32 29 28 24 23 20 7 18 30 3 15 11 10 5 2 1 6 0 16
- 3 0 0 35 34 31 30 32 3 0 1 4 48 196 19 18 1 52 4 3 0 3 17 16 1
- 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Tcaron" xMin="31" yMin="0" xMax="1221" yMax="1925">
- <contour>
- <pt x="521" y="1400" on="1"/>
- <pt x="325" y="1400" on="1"/>
- <pt x="222" y="1395" on="1"/>
- <pt x="158" y="1394" on="0"/>
- <pt x="148" y="1371" on="1"/>
- <pt x="140" y="1352" on="0"/>
- <pt x="140" y="1301" on="1"/>
- <pt x="140" y="1287" on="1"/>
- <pt x="139" y="1270" on="1"/>
- <pt x="139" y="1236" on="0"/>
- <pt x="138" y="1230" on="1"/>
- <pt x="136" y="1209" on="1"/>
- <pt x="31" y="1209" on="1"/>
- <pt x="31" y="1480" on="1"/>
- <pt x="1221" y="1480" on="1"/>
- <pt x="1221" y="1209" on="1"/>
- <pt x="1116" y="1209" on="1"/>
- <pt x="1115" y="1230" on="1"/>
- <pt x="1114" y="1253" on="0"/>
- <pt x="1113" y="1287" on="1"/>
- <pt x="1113" y="1303" on="1"/>
- <pt x="1114" y="1366" on="0"/>
- <pt x="1098" y="1381" on="1"/>
- <pt x="1083" y="1395" on="0"/>
- <pt x="1031" y="1395" on="1"/>
- <pt x="928" y="1400" on="1"/>
- <pt x="731" y="1400" on="1"/>
- <pt x="731" y="259" on="1"/>
- <pt x="731" y="203" on="0"/>
- <pt x="739" y="147" on="1"/>
- <pt x="746" y="96" on="0"/>
- <pt x="771" y="82" on="1"/>
- <pt x="792" y="71" on="0"/>
- <pt x="830" y="68" on="1"/>
- <pt x="898" y="63" on="1"/>
- <pt x="941" y="62" on="1"/>
- <pt x="941" y="0" on="1"/>
- <pt x="312" y="0" on="1"/>
- <pt x="312" y="62" on="1"/>
- <pt x="355" y="63" on="1"/>
- <pt x="423" y="68" on="1"/>
- <pt x="498" y="74" on="0"/>
- <pt x="508" y="115" on="1"/>
- <pt x="521" y="177" on="0"/>
- <pt x="521" y="259" on="1"/>
- </contour>
- <contour>
- <pt x="978" y="1925" on="1"/>
- <pt x="738" y="1604" on="1"/>
- <pt x="516" y="1604" on="1"/>
- <pt x="275" y="1925" on="1"/>
- <pt x="361" y="1925" on="1"/>
- <pt x="627" y="1703" on="1"/>
- <pt x="892" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 103 values pushed */
- 44 37 27 36 24 20 19 16 15 12 11 7 6 9 0 36 3 51 50 49 48 45 5 13 46
- 0 0 26 25 1 0 21 3 13 1 4 48 84 47 46 1 37 36 1 2 0 14 13 0 14
- 37 44 36 27 51 46 45 25 24 20 19 16 8 14 26 3 50 26 0 2 49 48 47 11 7
- 6 1 7 0 12 3 0 0 27 26 32 1 0 1 4 48 196 15 14 1 44 0 1 13 12
- 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Tcommaaccent" xMin="31" yMin="-432" xMax="1221" yMax="1480">
- <contour>
- <pt x="521" y="1400" on="1"/>
- <pt x="325" y="1400" on="1"/>
- <pt x="222" y="1395" on="1"/>
- <pt x="158" y="1394" on="0"/>
- <pt x="148" y="1371" on="1"/>
- <pt x="140" y="1352" on="0"/>
- <pt x="140" y="1301" on="1"/>
- <pt x="140" y="1287" on="1"/>
- <pt x="139" y="1270" on="1"/>
- <pt x="139" y="1236" on="0"/>
- <pt x="138" y="1230" on="1"/>
- <pt x="136" y="1209" on="1"/>
- <pt x="31" y="1209" on="1"/>
- <pt x="31" y="1480" on="1"/>
- <pt x="1221" y="1480" on="1"/>
- <pt x="1221" y="1209" on="1"/>
- <pt x="1116" y="1209" on="1"/>
- <pt x="1115" y="1230" on="1"/>
- <pt x="1114" y="1253" on="0"/>
- <pt x="1113" y="1287" on="1"/>
- <pt x="1113" y="1303" on="1"/>
- <pt x="1114" y="1366" on="0"/>
- <pt x="1098" y="1381" on="1"/>
- <pt x="1083" y="1395" on="0"/>
- <pt x="1031" y="1395" on="1"/>
- <pt x="928" y="1400" on="1"/>
- <pt x="731" y="1400" on="1"/>
- <pt x="731" y="259" on="1"/>
- <pt x="731" y="203" on="0"/>
- <pt x="739" y="147" on="1"/>
- <pt x="744" y="109" on="0"/>
- <pt x="753" y="97" on="1"/>
- <pt x="772" y="72" on="0"/>
- <pt x="830" y="68" on="1"/>
- <pt x="898" y="63" on="1"/>
- <pt x="941" y="62" on="1"/>
- <pt x="941" y="0" on="1"/>
- <pt x="312" y="0" on="1"/>
- <pt x="312" y="62" on="1"/>
- <pt x="355" y="63" on="1"/>
- <pt x="423" y="68" on="1"/>
- <pt x="498" y="74" on="0"/>
- <pt x="508" y="115" on="1"/>
- <pt x="521" y="177" on="0"/>
- <pt x="521" y="259" on="1"/>
- </contour>
- <contour>
- <pt x="484" y="-411" on="1"/>
- <pt x="484" y="-343" on="1"/>
- <pt x="546" y="-359" on="0"/>
- <pt x="585" y="-359" on="1"/>
- <pt x="692" y="-359" on="0"/>
- <pt x="692" y="-277" on="1"/>
- <pt x="692" y="-179" on="0"/>
- <pt x="505" y="-175" on="1"/>
- <pt x="600" y="0" on="1"/>
- <pt x="679" y="0" on="1"/>
- <pt x="613" y="-119" on="1"/>
- <pt x="830" y="-138" on="0"/>
- <pt x="830" y="-266" on="1"/>
- <pt x="830" y="-336" on="0"/>
- <pt x="772" y="-384" on="1"/>
- <pt x="715" y="-432" on="0"/>
- <pt x="628" y="-432" on="1"/>
- <pt x="560" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 117 values pushed */
- 0 0 48 17 61 48 84 44 37 27 36 24 20 19 16 15 12 11 7 6 9 0 36 3 55
- 52 46 45 4 13 61 36 0 0 26 25 1 0 21 3 13 1 4 48 84 54 53 37 36 3
- 0 14 13 0 14 0 0 50 48 57 48 196 37 44 36 27 57 57 25 24 20 19 16 6 14
- 26 3 55 54 53 3 26 0 3 52 46 45 11 7 6 1 7 0 12 3 0 0 27 26 32
- 1 0 1 4 48 196 15 14 1 44 0 1 13 12 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Tcommabelow" xMin="31" yMin="-432" xMax="1221" yMax="1480">
- <contour>
- <pt x="521" y="1400" on="1"/>
- <pt x="325" y="1400" on="1"/>
- <pt x="222" y="1395" on="1"/>
- <pt x="158" y="1394" on="0"/>
- <pt x="148" y="1371" on="1"/>
- <pt x="140" y="1352" on="0"/>
- <pt x="140" y="1301" on="1"/>
- <pt x="140" y="1287" on="1"/>
- <pt x="139" y="1270" on="1"/>
- <pt x="139" y="1236" on="0"/>
- <pt x="138" y="1230" on="1"/>
- <pt x="136" y="1209" on="1"/>
- <pt x="31" y="1209" on="1"/>
- <pt x="31" y="1480" on="1"/>
- <pt x="1221" y="1480" on="1"/>
- <pt x="1221" y="1209" on="1"/>
- <pt x="1116" y="1209" on="1"/>
- <pt x="1115" y="1230" on="1"/>
- <pt x="1114" y="1253" on="0"/>
- <pt x="1113" y="1287" on="1"/>
- <pt x="1113" y="1303" on="1"/>
- <pt x="1114" y="1366" on="0"/>
- <pt x="1098" y="1381" on="1"/>
- <pt x="1083" y="1395" on="0"/>
- <pt x="1031" y="1395" on="1"/>
- <pt x="928" y="1400" on="1"/>
- <pt x="731" y="1400" on="1"/>
- <pt x="731" y="259" on="1"/>
- <pt x="731" y="203" on="0"/>
- <pt x="739" y="147" on="1"/>
- <pt x="744" y="109" on="0"/>
- <pt x="753" y="97" on="1"/>
- <pt x="772" y="72" on="0"/>
- <pt x="830" y="68" on="1"/>
- <pt x="898" y="63" on="1"/>
- <pt x="941" y="62" on="1"/>
- <pt x="941" y="0" on="1"/>
- <pt x="312" y="0" on="1"/>
- <pt x="312" y="62" on="1"/>
- <pt x="355" y="63" on="1"/>
- <pt x="423" y="68" on="1"/>
- <pt x="498" y="74" on="0"/>
- <pt x="508" y="115" on="1"/>
- <pt x="521" y="177" on="0"/>
- <pt x="521" y="259" on="1"/>
- </contour>
- <contour>
- <pt x="472" y="-421" on="1"/>
- <pt x="472" y="-349" on="1"/>
- <pt x="521" y="-359" on="0"/>
- <pt x="576" y="-359" on="1"/>
- <pt x="679" y="-359" on="0"/>
- <pt x="679" y="-279" on="1"/>
- <pt x="679" y="-190" on="0"/>
- <pt x="521" y="-175" on="1"/>
- <pt x="521" y="-111" on="1"/>
- <pt x="655" y="-114" on="0"/>
- <pt x="721" y="-143" on="1"/>
- <pt x="814" y="-185" on="0"/>
- <pt x="814" y="-280" on="1"/>
- <pt x="814" y="-432" on="0"/>
- <pt x="597" y="-432" on="1"/>
- <pt x="538" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 109 values pushed */
- 0 0 48 38 59 48 84 44 37 27 36 24 20 19 16 15 12 11 7 6 9 0 36 3 53
- 52 46 45 4 13 59 36 0 0 26 25 1 0 42 3 13 1 4 48 84 37 36 1 0 14
- 13 0 14 0 0 50 23 57 48 196 37 44 36 27 57 57 25 24 20 19 16 6 14 26 3
- 46 45 11 7 6 1 6 0 12 3 0 0 27 26 37 1 0 1 4 48 196 15 14 1 53
- 52 44 0 3 13 12 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Thorn" xMin="43" yMin="0" xMax="1077" yMax="1480">
- <contour>
- <pt x="438" y="1178" on="1"/>
- <pt x="543" y="1179" on="1"/>
- <pt x="800" y="1181" on="0"/>
- <pt x="930" y="1104" on="1"/>
- <pt x="1077" y="1016" on="0"/>
- <pt x="1077" y="791" on="1"/>
- <pt x="1077" y="315" on="0"/>
- <pt x="443" y="315" on="1"/>
- <pt x="438" y="315" on="1"/>
- <pt x="438" y="259" on="1"/>
- <pt x="438" y="200" on="0"/>
- <pt x="445" y="147" on="1"/>
- <pt x="451" y="109" on="0"/>
- <pt x="459" y="97" on="1"/>
- <pt x="478" y="72" on="0"/>
- <pt x="536" y="68" on="1"/>
- <pt x="604" y="63" on="1"/>
- <pt x="623" y="62" on="1"/>
- <pt x="623" y="0" on="1"/>
- <pt x="43" y="0" on="1"/>
- <pt x="43" y="62" on="1"/>
- <pt x="62" y="63" on="1"/>
- <pt x="129" y="68" on="1"/>
- <pt x="205" y="74" on="0"/>
- <pt x="215" y="115" on="1"/>
- <pt x="228" y="177" on="0"/>
- <pt x="228" y="259" on="1"/>
- <pt x="228" y="1221" on="1"/>
- <pt x="228" y="1280" on="0"/>
- <pt x="221" y="1333" on="1"/>
- <pt x="215" y="1372" on="0"/>
- <pt x="207" y="1384" on="1"/>
- <pt x="189" y="1410" on="0"/>
- <pt x="129" y="1413" on="1"/>
- <pt x="62" y="1417" on="1"/>
- <pt x="43" y="1419" on="1"/>
- <pt x="43" y="1480" on="1"/>
- <pt x="623" y="1480" on="1"/>
- <pt x="623" y="1419" on="1"/>
- <pt x="604" y="1417" on="1"/>
- <pt x="536" y="1413" on="1"/>
- <pt x="461" y="1408" on="0"/>
- <pt x="451" y="1366" on="1"/>
- <pt x="438" y="1302" on="0"/>
- <pt x="438" y="1221" on="1"/>
- </contour>
- <contour>
- <pt x="438" y="382" on="1"/>
- <pt x="455" y="382" on="1"/>
- <pt x="647" y="382" on="0"/>
- <pt x="751" y="489" on="1"/>
- <pt x="855" y="596" on="0"/>
- <pt x="855" y="791" on="1"/>
- <pt x="855" y="959" on="0"/>
- <pt x="769" y="1035" on="1"/>
- <pt x="683" y="1110" on="0"/>
- <pt x="494" y="1110" on="1"/>
- <pt x="438" y="1110" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 68 values pushed */
- 44 37 27 36 26 19 9 18 55 54 46 45 8 7 0 7 36 18 3 19 18 1 0 37 36
- 0 14 0 0 50 33 5 48 196 37 44 36 27 19 26 18 9 54 46 7 3 13 5 0 0
- 0 55 45 44 9 8 0 32 5 26 1 4 48 196 27 26 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="U" xMin="19" yMin="-37" xMax="1456" yMax="1480">
- <contour>
- <pt x="602" y="1480" on="1"/>
- <pt x="602" y="1419" on="1"/>
- <pt x="584" y="1417" on="1"/>
- <pt x="516" y="1413" on="1"/>
- <pt x="448" y="1408" on="0"/>
- <pt x="437" y="1386" on="1"/>
- <pt x="426" y="1367" on="0"/>
- <pt x="423" y="1320" on="1"/>
- <pt x="417" y="1221" on="1"/>
- <pt x="417" y="588" on="1"/>
- <pt x="417" y="360" on="0"/>
- <pt x="429" y="290" on="1"/>
- <pt x="441" y="219" on="0"/>
- <pt x="490" y="156" on="1"/>
- <pt x="587" y="31" on="0"/>
- <pt x="779" y="31" on="1"/>
- <pt x="978" y="31" on="0"/>
- <pt x="1087" y="160" on="1"/>
- <pt x="1143" y="227" on="0"/>
- <pt x="1156" y="319" on="1"/>
- <pt x="1167" y="397" on="0"/>
- <pt x="1167" y="544" on="1"/>
- <pt x="1167" y="1221" on="1"/>
- <pt x="1168" y="1335" on="0"/>
- <pt x="1149" y="1377" on="1"/>
- <pt x="1134" y="1409" on="0"/>
- <pt x="1068" y="1413" on="1"/>
- <pt x="1000" y="1417" on="1"/>
- <pt x="982" y="1419" on="1"/>
- <pt x="982" y="1480" on="1"/>
- <pt x="1456" y="1480" on="1"/>
- <pt x="1456" y="1419" on="1"/>
- <pt x="1437" y="1417" on="1"/>
- <pt x="1369" y="1413" on="1"/>
- <pt x="1294" y="1408" on="0"/>
- <pt x="1284" y="1366" on="1"/>
- <pt x="1271" y="1302" on="0"/>
- <pt x="1271" y="1221" on="1"/>
- <pt x="1271" y="601" on="1"/>
- <pt x="1271" y="394" on="0"/>
- <pt x="1248" y="299" on="1"/>
- <pt x="1224" y="201" on="0"/>
- <pt x="1156" y="120" on="1"/>
- <pt x="1023" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="204" y="-37" on="0"/>
- <pt x="204" y="554" on="1"/>
- <pt x="204" y="1221" on="1"/>
- <pt x="204" y="1280" on="0"/>
- <pt x="197" y="1333" on="1"/>
- <pt x="191" y="1372" on="0"/>
- <pt x="183" y="1384" on="1"/>
- <pt x="165" y="1410" on="0"/>
- <pt x="105" y="1413" on="1"/>
- <pt x="38" y="1417" on="1"/>
- <pt x="19" y="1419" on="1"/>
- <pt x="19" y="1480" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 70 values pushed */
- 0 0 15 17 44 48 84 44 2 47 56 37 30 22 29 1 46 38 21 9 8 1 6 0 2
- 3 0 56 30 29 0 0 3 14 56 47 30 37 29 22 1 0 2 21 8 3 0 0 22 21
- 9 1 37 9 8 32 1 46 2 4 48 196 38 37 1 47 46 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Uacute" xMin="19" yMin="-37" xMax="1456" yMax="1925">
- <contour>
- <pt x="602" y="1480" on="1"/>
- <pt x="602" y="1419" on="1"/>
- <pt x="584" y="1417" on="1"/>
- <pt x="516" y="1413" on="1"/>
- <pt x="448" y="1408" on="0"/>
- <pt x="437" y="1386" on="1"/>
- <pt x="426" y="1367" on="0"/>
- <pt x="423" y="1320" on="1"/>
- <pt x="417" y="1221" on="1"/>
- <pt x="417" y="588" on="1"/>
- <pt x="417" y="360" on="0"/>
- <pt x="429" y="290" on="1"/>
- <pt x="441" y="219" on="0"/>
- <pt x="490" y="156" on="1"/>
- <pt x="587" y="31" on="0"/>
- <pt x="779" y="31" on="1"/>
- <pt x="978" y="31" on="0"/>
- <pt x="1087" y="160" on="1"/>
- <pt x="1143" y="227" on="0"/>
- <pt x="1156" y="319" on="1"/>
- <pt x="1167" y="397" on="0"/>
- <pt x="1167" y="544" on="1"/>
- <pt x="1167" y="1221" on="1"/>
- <pt x="1168" y="1335" on="0"/>
- <pt x="1149" y="1377" on="1"/>
- <pt x="1134" y="1409" on="0"/>
- <pt x="1068" y="1413" on="1"/>
- <pt x="1000" y="1417" on="1"/>
- <pt x="982" y="1419" on="1"/>
- <pt x="982" y="1480" on="1"/>
- <pt x="1456" y="1480" on="1"/>
- <pt x="1456" y="1419" on="1"/>
- <pt x="1437" y="1417" on="1"/>
- <pt x="1369" y="1413" on="1"/>
- <pt x="1294" y="1408" on="0"/>
- <pt x="1284" y="1366" on="1"/>
- <pt x="1271" y="1302" on="0"/>
- <pt x="1271" y="1221" on="1"/>
- <pt x="1271" y="601" on="1"/>
- <pt x="1271" y="394" on="0"/>
- <pt x="1248" y="299" on="1"/>
- <pt x="1224" y="201" on="0"/>
- <pt x="1156" y="120" on="1"/>
- <pt x="1023" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="204" y="-37" on="0"/>
- <pt x="204" y="554" on="1"/>
- <pt x="204" y="1221" on="1"/>
- <pt x="204" y="1280" on="0"/>
- <pt x="197" y="1333" on="1"/>
- <pt x="191" y="1372" on="0"/>
- <pt x="183" y="1384" on="1"/>
- <pt x="165" y="1410" on="0"/>
- <pt x="105" y="1413" on="1"/>
- <pt x="38" y="1417" on="1"/>
- <pt x="19" y="1419" on="1"/>
- <pt x="19" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="650" y="1604" on="1"/>
- <pt x="891" y="1925" on="1"/>
- <pt x="1150" y="1925" on="1"/>
- <pt x="743" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 84 values pushed */
- 0 0 15 17 44 48 84 44 2 47 56 37 30 22 29 60 57 2 58 0 3 1 46 38 21
- 9 8 1 6 0 2 3 0 59 58 1 0 56 30 29 0 0 3 14 56 47 30 37 29 22
- 60 59 58 57 1 0 6 21 8 3 0 0 22 21 9 1 37 9 8 32 1 46 2 4 48
- 196 38 37 1 47 46 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ubreve" xMin="19" yMin="-37" xMax="1456" yMax="1925">
- <contour>
- <pt x="602" y="1480" on="1"/>
- <pt x="602" y="1419" on="1"/>
- <pt x="584" y="1417" on="1"/>
- <pt x="516" y="1413" on="1"/>
- <pt x="448" y="1408" on="0"/>
- <pt x="437" y="1386" on="1"/>
- <pt x="426" y="1367" on="0"/>
- <pt x="423" y="1320" on="1"/>
- <pt x="417" y="1221" on="1"/>
- <pt x="417" y="588" on="1"/>
- <pt x="417" y="360" on="0"/>
- <pt x="429" y="290" on="1"/>
- <pt x="441" y="219" on="0"/>
- <pt x="490" y="156" on="1"/>
- <pt x="587" y="31" on="0"/>
- <pt x="779" y="31" on="1"/>
- <pt x="978" y="31" on="0"/>
- <pt x="1087" y="160" on="1"/>
- <pt x="1143" y="227" on="0"/>
- <pt x="1156" y="319" on="1"/>
- <pt x="1167" y="397" on="0"/>
- <pt x="1167" y="544" on="1"/>
- <pt x="1167" y="1221" on="1"/>
- <pt x="1168" y="1335" on="0"/>
- <pt x="1149" y="1377" on="1"/>
- <pt x="1134" y="1409" on="0"/>
- <pt x="1068" y="1413" on="1"/>
- <pt x="1000" y="1417" on="1"/>
- <pt x="982" y="1419" on="1"/>
- <pt x="982" y="1480" on="1"/>
- <pt x="1456" y="1480" on="1"/>
- <pt x="1456" y="1419" on="1"/>
- <pt x="1437" y="1417" on="1"/>
- <pt x="1369" y="1413" on="1"/>
- <pt x="1294" y="1408" on="0"/>
- <pt x="1284" y="1366" on="1"/>
- <pt x="1271" y="1302" on="0"/>
- <pt x="1271" y="1221" on="1"/>
- <pt x="1271" y="601" on="1"/>
- <pt x="1271" y="394" on="0"/>
- <pt x="1248" y="299" on="1"/>
- <pt x="1224" y="201" on="0"/>
- <pt x="1156" y="120" on="1"/>
- <pt x="1023" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="204" y="-37" on="0"/>
- <pt x="204" y="554" on="1"/>
- <pt x="204" y="1221" on="1"/>
- <pt x="204" y="1280" on="0"/>
- <pt x="197" y="1333" on="1"/>
- <pt x="191" y="1372" on="0"/>
- <pt x="183" y="1384" on="1"/>
- <pt x="165" y="1410" on="0"/>
- <pt x="105" y="1413" on="1"/>
- <pt x="38" y="1417" on="1"/>
- <pt x="19" y="1419" on="1"/>
- <pt x="19" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="442" y="1925" on="1"/>
- <pt x="507" y="1925" on="1"/>
- <pt x="534" y="1835" on="0"/>
- <pt x="594" y="1793" on="1"/>
- <pt x="662" y="1746" on="0"/>
- <pt x="775" y="1746" on="1"/>
- <pt x="901" y="1746" on="0"/>
- <pt x="971" y="1805" on="1"/>
- <pt x="1020" y="1845" on="0"/>
- <pt x="1044" y="1925" on="1"/>
- <pt x="1108" y="1925" on="1"/>
- <pt x="1089" y="1790" on="0"/>
- <pt x="1017" y="1709" on="1"/>
- <pt x="923" y="1604" on="0"/>
- <pt x="775" y="1604" on="1"/>
- <pt x="621" y="1604" on="0"/>
- <pt x="526" y="1719" on="1"/>
- <pt x="461" y="1797" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 0 0 62 20 71 15 38 44 48 84 44 2 47 56 37 30 22 29 1 46 38 21 9 8 1
- 6 0 2 3 0 67 66 58 57 4 13 71 0 56 30 29 0 0 3 14 56 47 30 37 29
- 22 67 66 58 57 1 0 6 21 8 3 0 0 22 21 41 1 37 9 8 37 1 46 2 4
- 48 196 38 37 1 47 46 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ucircumflex" xMin="19" yMin="-37" xMax="1456" yMax="1925">
- <contour>
- <pt x="602" y="1480" on="1"/>
- <pt x="602" y="1419" on="1"/>
- <pt x="584" y="1417" on="1"/>
- <pt x="516" y="1413" on="1"/>
- <pt x="448" y="1408" on="0"/>
- <pt x="437" y="1386" on="1"/>
- <pt x="426" y="1367" on="0"/>
- <pt x="423" y="1320" on="1"/>
- <pt x="417" y="1221" on="1"/>
- <pt x="417" y="588" on="1"/>
- <pt x="417" y="360" on="0"/>
- <pt x="429" y="290" on="1"/>
- <pt x="441" y="219" on="0"/>
- <pt x="490" y="156" on="1"/>
- <pt x="587" y="31" on="0"/>
- <pt x="779" y="31" on="1"/>
- <pt x="978" y="31" on="0"/>
- <pt x="1087" y="160" on="1"/>
- <pt x="1143" y="227" on="0"/>
- <pt x="1156" y="319" on="1"/>
- <pt x="1167" y="397" on="0"/>
- <pt x="1167" y="544" on="1"/>
- <pt x="1167" y="1221" on="1"/>
- <pt x="1168" y="1335" on="0"/>
- <pt x="1149" y="1377" on="1"/>
- <pt x="1134" y="1409" on="0"/>
- <pt x="1068" y="1413" on="1"/>
- <pt x="1000" y="1417" on="1"/>
- <pt x="982" y="1419" on="1"/>
- <pt x="982" y="1480" on="1"/>
- <pt x="1456" y="1480" on="1"/>
- <pt x="1456" y="1419" on="1"/>
- <pt x="1437" y="1417" on="1"/>
- <pt x="1369" y="1413" on="1"/>
- <pt x="1294" y="1408" on="0"/>
- <pt x="1284" y="1366" on="1"/>
- <pt x="1271" y="1302" on="0"/>
- <pt x="1271" y="1221" on="1"/>
- <pt x="1271" y="601" on="1"/>
- <pt x="1271" y="394" on="0"/>
- <pt x="1248" y="299" on="1"/>
- <pt x="1224" y="201" on="0"/>
- <pt x="1156" y="120" on="1"/>
- <pt x="1023" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="204" y="-37" on="0"/>
- <pt x="204" y="554" on="1"/>
- <pt x="204" y="1221" on="1"/>
- <pt x="204" y="1280" on="0"/>
- <pt x="197" y="1333" on="1"/>
- <pt x="191" y="1372" on="0"/>
- <pt x="183" y="1384" on="1"/>
- <pt x="165" y="1410" on="0"/>
- <pt x="105" y="1413" on="1"/>
- <pt x="38" y="1417" on="1"/>
- <pt x="19" y="1419" on="1"/>
- <pt x="19" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="440" y="1604" on="1"/>
- <pt x="681" y="1925" on="1"/>
- <pt x="903" y="1925" on="1"/>
- <pt x="1143" y="1604" on="1"/>
- <pt x="1057" y="1604" on="1"/>
- <pt x="792" y="1826" on="1"/>
- <pt x="526" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 90 values pushed */
- 0 0 15 17 44 48 84 44 2 47 56 37 30 22 29 63 62 61 60 57 5 58 0 3 1
- 46 38 21 9 8 1 6 0 2 3 0 59 58 1 0 56 30 29 0 0 3 14 56 47 30
- 37 29 22 63 62 61 60 59 58 57 1 0 9 21 8 3 0 0 22 21 9 1 37 9 8
- 32 1 46 2 4 48 196 38 37 1 47 46 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Udieresis" xMin="19" yMin="-37" xMax="1456" yMax="1777">
- <contour>
- <pt x="602" y="1480" on="1"/>
- <pt x="602" y="1419" on="1"/>
- <pt x="584" y="1417" on="1"/>
- <pt x="516" y="1413" on="1"/>
- <pt x="448" y="1408" on="0"/>
- <pt x="437" y="1386" on="1"/>
- <pt x="426" y="1367" on="0"/>
- <pt x="423" y="1320" on="1"/>
- <pt x="417" y="1221" on="1"/>
- <pt x="417" y="588" on="1"/>
- <pt x="417" y="360" on="0"/>
- <pt x="429" y="290" on="1"/>
- <pt x="441" y="219" on="0"/>
- <pt x="490" y="156" on="1"/>
- <pt x="587" y="31" on="0"/>
- <pt x="779" y="31" on="1"/>
- <pt x="978" y="31" on="0"/>
- <pt x="1087" y="160" on="1"/>
- <pt x="1143" y="227" on="0"/>
- <pt x="1156" y="319" on="1"/>
- <pt x="1167" y="397" on="0"/>
- <pt x="1167" y="544" on="1"/>
- <pt x="1167" y="1221" on="1"/>
- <pt x="1168" y="1335" on="0"/>
- <pt x="1149" y="1377" on="1"/>
- <pt x="1134" y="1409" on="0"/>
- <pt x="1068" y="1413" on="1"/>
- <pt x="1000" y="1417" on="1"/>
- <pt x="982" y="1419" on="1"/>
- <pt x="982" y="1480" on="1"/>
- <pt x="1456" y="1480" on="1"/>
- <pt x="1456" y="1419" on="1"/>
- <pt x="1437" y="1417" on="1"/>
- <pt x="1369" y="1413" on="1"/>
- <pt x="1294" y="1408" on="0"/>
- <pt x="1284" y="1366" on="1"/>
- <pt x="1271" y="1302" on="0"/>
- <pt x="1271" y="1221" on="1"/>
- <pt x="1271" y="601" on="1"/>
- <pt x="1271" y="394" on="0"/>
- <pt x="1248" y="299" on="1"/>
- <pt x="1224" y="201" on="0"/>
- <pt x="1156" y="120" on="1"/>
- <pt x="1023" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="204" y="-37" on="0"/>
- <pt x="204" y="554" on="1"/>
- <pt x="204" y="1221" on="1"/>
- <pt x="204" y="1280" on="0"/>
- <pt x="197" y="1333" on="1"/>
- <pt x="191" y="1372" on="0"/>
- <pt x="183" y="1384" on="1"/>
- <pt x="165" y="1410" on="0"/>
- <pt x="105" y="1413" on="1"/>
- <pt x="38" y="1417" on="1"/>
- <pt x="19" y="1419" on="1"/>
- <pt x="19" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="508" y="1604" on="1"/>
- <pt x="508" y="1777" on="1"/>
- <pt x="681" y="1777" on="1"/>
- <pt x="681" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="903" y="1604" on="1"/>
- <pt x="903" y="1777" on="1"/>
- <pt x="1076" y="1777" on="1"/>
- <pt x="1076" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 105 values pushed */
- 0 0 15 17 44 48 84 44 2 47 56 37 30 22 29 1 46 38 21 9 8 1 6 0 2
- 3 0 0 0 64 61 60 57 13 3 58 1 4 48 84 63 62 59 58 3 0 56 30 29 0
- 0 3 14 56 47 30 37 29 22 1 0 2 59 57 3 0 0 62 61 13 1 63 60 59 13
- 1 57 22 21 9 1 37 9 8 32 1 46 4 4 48 196 64 63 1 58 57 1 38 37 1
- 47 46 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ugrave" xMin="19" yMin="-37" xMax="1456" yMax="1925">
- <contour>
- <pt x="602" y="1480" on="1"/>
- <pt x="602" y="1419" on="1"/>
- <pt x="584" y="1417" on="1"/>
- <pt x="516" y="1413" on="1"/>
- <pt x="448" y="1408" on="0"/>
- <pt x="437" y="1386" on="1"/>
- <pt x="426" y="1367" on="0"/>
- <pt x="423" y="1320" on="1"/>
- <pt x="417" y="1221" on="1"/>
- <pt x="417" y="588" on="1"/>
- <pt x="417" y="360" on="0"/>
- <pt x="429" y="290" on="1"/>
- <pt x="441" y="219" on="0"/>
- <pt x="490" y="156" on="1"/>
- <pt x="587" y="31" on="0"/>
- <pt x="779" y="31" on="1"/>
- <pt x="978" y="31" on="0"/>
- <pt x="1087" y="160" on="1"/>
- <pt x="1143" y="227" on="0"/>
- <pt x="1156" y="319" on="1"/>
- <pt x="1167" y="397" on="0"/>
- <pt x="1167" y="544" on="1"/>
- <pt x="1167" y="1221" on="1"/>
- <pt x="1168" y="1335" on="0"/>
- <pt x="1149" y="1377" on="1"/>
- <pt x="1134" y="1409" on="0"/>
- <pt x="1068" y="1413" on="1"/>
- <pt x="1000" y="1417" on="1"/>
- <pt x="982" y="1419" on="1"/>
- <pt x="982" y="1480" on="1"/>
- <pt x="1456" y="1480" on="1"/>
- <pt x="1456" y="1419" on="1"/>
- <pt x="1437" y="1417" on="1"/>
- <pt x="1369" y="1413" on="1"/>
- <pt x="1294" y="1408" on="0"/>
- <pt x="1284" y="1366" on="1"/>
- <pt x="1271" y="1302" on="0"/>
- <pt x="1271" y="1221" on="1"/>
- <pt x="1271" y="601" on="1"/>
- <pt x="1271" y="394" on="0"/>
- <pt x="1248" y="299" on="1"/>
- <pt x="1224" y="201" on="0"/>
- <pt x="1156" y="120" on="1"/>
- <pt x="1023" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="204" y="-37" on="0"/>
- <pt x="204" y="554" on="1"/>
- <pt x="204" y="1221" on="1"/>
- <pt x="204" y="1280" on="0"/>
- <pt x="197" y="1333" on="1"/>
- <pt x="191" y="1372" on="0"/>
- <pt x="183" y="1384" on="1"/>
- <pt x="165" y="1410" on="0"/>
- <pt x="105" y="1413" on="1"/>
- <pt x="38" y="1417" on="1"/>
- <pt x="19" y="1419" on="1"/>
- <pt x="19" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="934" y="1604" on="1"/>
- <pt x="841" y="1604" on="1"/>
- <pt x="434" y="1925" on="1"/>
- <pt x="693" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 84 values pushed */
- 0 0 15 17 44 48 84 44 2 47 56 37 30 22 29 58 57 2 59 0 3 1 46 38 21
- 9 8 1 6 0 2 3 0 60 59 1 0 56 30 29 0 0 3 14 56 47 30 37 29 22
- 60 59 58 57 1 0 6 21 8 3 0 0 22 21 9 1 37 9 8 32 1 46 2 4 48
- 196 38 37 1 47 46 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Uhungarumlaut" xMin="19" yMin="-37" xMax="1456" yMax="1925">
- <contour>
- <pt x="602" y="1480" on="1"/>
- <pt x="602" y="1419" on="1"/>
- <pt x="584" y="1417" on="1"/>
- <pt x="516" y="1413" on="1"/>
- <pt x="448" y="1408" on="0"/>
- <pt x="437" y="1386" on="1"/>
- <pt x="426" y="1367" on="0"/>
- <pt x="423" y="1320" on="1"/>
- <pt x="417" y="1221" on="1"/>
- <pt x="417" y="588" on="1"/>
- <pt x="417" y="360" on="0"/>
- <pt x="429" y="290" on="1"/>
- <pt x="441" y="219" on="0"/>
- <pt x="490" y="156" on="1"/>
- <pt x="587" y="31" on="0"/>
- <pt x="779" y="31" on="1"/>
- <pt x="978" y="31" on="0"/>
- <pt x="1087" y="160" on="1"/>
- <pt x="1143" y="227" on="0"/>
- <pt x="1156" y="319" on="1"/>
- <pt x="1167" y="397" on="0"/>
- <pt x="1167" y="544" on="1"/>
- <pt x="1167" y="1221" on="1"/>
- <pt x="1168" y="1335" on="0"/>
- <pt x="1149" y="1377" on="1"/>
- <pt x="1134" y="1409" on="0"/>
- <pt x="1068" y="1413" on="1"/>
- <pt x="1000" y="1417" on="1"/>
- <pt x="982" y="1419" on="1"/>
- <pt x="982" y="1480" on="1"/>
- <pt x="1456" y="1480" on="1"/>
- <pt x="1456" y="1419" on="1"/>
- <pt x="1437" y="1417" on="1"/>
- <pt x="1369" y="1413" on="1"/>
- <pt x="1294" y="1408" on="0"/>
- <pt x="1284" y="1366" on="1"/>
- <pt x="1271" y="1302" on="0"/>
- <pt x="1271" y="1221" on="1"/>
- <pt x="1271" y="601" on="1"/>
- <pt x="1271" y="394" on="0"/>
- <pt x="1248" y="299" on="1"/>
- <pt x="1224" y="201" on="0"/>
- <pt x="1156" y="120" on="1"/>
- <pt x="1023" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="204" y="-37" on="0"/>
- <pt x="204" y="554" on="1"/>
- <pt x="204" y="1221" on="1"/>
- <pt x="204" y="1280" on="0"/>
- <pt x="197" y="1333" on="1"/>
- <pt x="191" y="1372" on="0"/>
- <pt x="183" y="1384" on="1"/>
- <pt x="165" y="1410" on="0"/>
- <pt x="105" y="1413" on="1"/>
- <pt x="38" y="1417" on="1"/>
- <pt x="19" y="1419" on="1"/>
- <pt x="19" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="565" y="1604" on="1"/>
- <pt x="779" y="1925" on="1"/>
- <pt x="948" y="1925" on="1"/>
- <pt x="627" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="874" y="1604" on="1"/>
- <pt x="1087" y="1925" on="1"/>
- <pt x="1256" y="1925" on="1"/>
- <pt x="935" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 95 values pushed */
- 0 0 15 17 44 48 84 44 2 47 56 37 30 22 29 64 61 60 57 4 58 0 3 1 46
- 38 21 9 8 1 6 0 2 3 0 63 62 59 58 3 0 56 30 29 0 0 3 14 56 47
- 30 37 29 22 63 37 21 2 64 62 61 60 59 58 57 1 0 9 21 8 3 0 0 22 21
- 9 1 37 9 8 32 1 46 2 4 48 196 38 37 1 47 46 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Umacron" xMin="19" yMin="-37" xMax="1456" yMax="1727">
- <contour>
- <pt x="602" y="1480" on="1"/>
- <pt x="602" y="1419" on="1"/>
- <pt x="584" y="1417" on="1"/>
- <pt x="516" y="1413" on="1"/>
- <pt x="448" y="1408" on="0"/>
- <pt x="437" y="1386" on="1"/>
- <pt x="426" y="1367" on="0"/>
- <pt x="423" y="1320" on="1"/>
- <pt x="417" y="1221" on="1"/>
- <pt x="417" y="588" on="1"/>
- <pt x="417" y="360" on="0"/>
- <pt x="429" y="290" on="1"/>
- <pt x="441" y="219" on="0"/>
- <pt x="490" y="156" on="1"/>
- <pt x="587" y="31" on="0"/>
- <pt x="779" y="31" on="1"/>
- <pt x="978" y="31" on="0"/>
- <pt x="1087" y="160" on="1"/>
- <pt x="1143" y="227" on="0"/>
- <pt x="1156" y="319" on="1"/>
- <pt x="1167" y="397" on="0"/>
- <pt x="1167" y="544" on="1"/>
- <pt x="1167" y="1221" on="1"/>
- <pt x="1168" y="1335" on="0"/>
- <pt x="1149" y="1377" on="1"/>
- <pt x="1134" y="1409" on="0"/>
- <pt x="1068" y="1413" on="1"/>
- <pt x="1000" y="1417" on="1"/>
- <pt x="982" y="1419" on="1"/>
- <pt x="982" y="1480" on="1"/>
- <pt x="1456" y="1480" on="1"/>
- <pt x="1456" y="1419" on="1"/>
- <pt x="1437" y="1417" on="1"/>
- <pt x="1369" y="1413" on="1"/>
- <pt x="1294" y="1408" on="0"/>
- <pt x="1284" y="1366" on="1"/>
- <pt x="1271" y="1302" on="0"/>
- <pt x="1271" y="1221" on="1"/>
- <pt x="1271" y="601" on="1"/>
- <pt x="1271" y="394" on="0"/>
- <pt x="1248" y="299" on="1"/>
- <pt x="1224" y="201" on="0"/>
- <pt x="1156" y="120" on="1"/>
- <pt x="1023" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="204" y="-37" on="0"/>
- <pt x="204" y="554" on="1"/>
- <pt x="204" y="1221" on="1"/>
- <pt x="204" y="1280" on="0"/>
- <pt x="197" y="1333" on="1"/>
- <pt x="191" y="1372" on="0"/>
- <pt x="183" y="1384" on="1"/>
- <pt x="165" y="1410" on="0"/>
- <pt x="105" y="1413" on="1"/>
- <pt x="38" y="1417" on="1"/>
- <pt x="19" y="1419" on="1"/>
- <pt x="19" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="470" y="1604" on="1"/>
- <pt x="470" y="1727" on="1"/>
- <pt x="1112" y="1727" on="1"/>
- <pt x="1112" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 89 values pushed */
- 0 0 15 17 44 48 84 44 2 47 56 37 30 22 29 1 46 38 21 9 8 1 6 0 2
- 3 0 0 0 60 57 12 1 58 1 4 48 84 59 58 1 0 56 30 29 0 0 3 14 56
- 47 30 37 29 22 60 59 58 57 1 0 6 21 8 3 0 0 22 21 9 1 37 9 8 32
- 1 46 2 4 48 196 38 37 1 47 46 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Unterkomma" xMin="170" yMin="-432" xMax="512" yMax="-111">
- <contour>
- <pt x="170" y="-421" on="1"/>
- <pt x="170" y="-349" on="1"/>
- <pt x="219" y="-359" on="0"/>
- <pt x="274" y="-359" on="1"/>
- <pt x="377" y="-359" on="0"/>
- <pt x="377" y="-279" on="1"/>
- <pt x="377" y="-190" on="0"/>
- <pt x="219" y="-175" on="1"/>
- <pt x="219" y="-111" on="1"/>
- <pt x="353" y="-114" on="0"/>
- <pt x="419" y="-143" on="1"/>
- <pt x="512" y="-185" on="0"/>
- <pt x="512" y="-280" on="1"/>
- <pt x="512" y="-432" on="0"/>
- <pt x="295" y="-432" on="1"/>
- <pt x="236" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 0 0 3 17 14 48 84 14 8 7 1 0 14 0 0 5 48 12 48 196 12 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Uogonek" xMin="19" yMin="-370" xMax="1456" yMax="1480">
- <contour>
- <pt x="602" y="1480" on="1"/>
- <pt x="602" y="1419" on="1"/>
- <pt x="584" y="1417" on="1"/>
- <pt x="516" y="1413" on="1"/>
- <pt x="448" y="1408" on="0"/>
- <pt x="437" y="1386" on="1"/>
- <pt x="426" y="1365" on="0"/>
- <pt x="423" y="1320" on="1"/>
- <pt x="417" y="1221" on="1"/>
- <pt x="417" y="588" on="1"/>
- <pt x="417" y="360" on="0"/>
- <pt x="429" y="290" on="1"/>
- <pt x="441" y="219" on="0"/>
- <pt x="490" y="156" on="1"/>
- <pt x="587" y="31" on="0"/>
- <pt x="779" y="31" on="1"/>
- <pt x="978" y="31" on="0"/>
- <pt x="1087" y="160" on="1"/>
- <pt x="1143" y="227" on="0"/>
- <pt x="1156" y="319" on="1"/>
- <pt x="1167" y="397" on="0"/>
- <pt x="1167" y="544" on="1"/>
- <pt x="1167" y="1221" on="1"/>
- <pt x="1168" y="1335" on="0"/>
- <pt x="1149" y="1377" on="1"/>
- <pt x="1134" y="1409" on="0"/>
- <pt x="1068" y="1413" on="1"/>
- <pt x="1000" y="1417" on="1"/>
- <pt x="982" y="1419" on="1"/>
- <pt x="982" y="1480" on="1"/>
- <pt x="1456" y="1480" on="1"/>
- <pt x="1456" y="1419" on="1"/>
- <pt x="1437" y="1417" on="1"/>
- <pt x="1369" y="1413" on="1"/>
- <pt x="1294" y="1408" on="0"/>
- <pt x="1284" y="1366" on="1"/>
- <pt x="1271" y="1302" on="0"/>
- <pt x="1271" y="1221" on="1"/>
- <pt x="1271" y="601" on="1"/>
- <pt x="1271" y="395" on="0"/>
- <pt x="1248" y="299" on="1"/>
- <pt x="1224" y="201" on="0"/>
- <pt x="1156" y="120" on="1"/>
- <pt x="1023" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="204" y="-37" on="0"/>
- <pt x="204" y="554" on="1"/>
- <pt x="204" y="1221" on="1"/>
- <pt x="204" y="1280" on="0"/>
- <pt x="197" y="1333" on="1"/>
- <pt x="191" y="1372" on="0"/>
- <pt x="183" y="1384" on="1"/>
- <pt x="165" y="1410" on="0"/>
- <pt x="105" y="1413" on="1"/>
- <pt x="38" y="1417" on="1"/>
- <pt x="19" y="1419" on="1"/>
- <pt x="19" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="1034" y="-273" on="1"/>
- <pt x="1034" y="-341" on="1"/>
- <pt x="963" y="-370" on="0"/>
- <pt x="885" y="-370" on="1"/>
- <pt x="665" y="-370" on="0"/>
- <pt x="665" y="-211" on="1"/>
- <pt x="665" y="-90" on="0"/>
- <pt x="823" y="0" on="1"/>
- <pt x="930" y="0" on="1"/>
- <pt x="801" y="-80" on="0"/>
- <pt x="801" y="-182" on="1"/>
- <pt x="801" y="-289" on="0"/>
- <pt x="934" y="-289" on="1"/>
- <pt x="985" y="-289" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 96 values pushed */
- 0 0 69 7 60 15 17 44 48 84 44 2 47 56 37 30 22 29 1 46 38 21 9 8 1
- 6 0 2 3 0 1 65 64 58 57 4 13 60 2 0 56 30 29 0 0 3 14 0 0 67
- 48 62 48 196 56 47 30 37 29 22 62 65 64 62 58 57 1 0 7 21 8 3 0 0 22
- 21 9 1 37 9 8 32 1 46 2 4 48 196 38 37 1 47 46 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Uring" xMin="19" yMin="-37" xMax="1456" yMax="2033">
- <contour>
- <pt x="602" y="1480" on="1"/>
- <pt x="602" y="1419" on="1"/>
- <pt x="584" y="1417" on="1"/>
- <pt x="516" y="1413" on="1"/>
- <pt x="448" y="1408" on="0"/>
- <pt x="437" y="1386" on="1"/>
- <pt x="426" y="1367" on="0"/>
- <pt x="423" y="1320" on="1"/>
- <pt x="417" y="1221" on="1"/>
- <pt x="417" y="588" on="1"/>
- <pt x="417" y="360" on="0"/>
- <pt x="429" y="290" on="1"/>
- <pt x="441" y="219" on="0"/>
- <pt x="490" y="156" on="1"/>
- <pt x="587" y="31" on="0"/>
- <pt x="779" y="31" on="1"/>
- <pt x="978" y="31" on="0"/>
- <pt x="1087" y="160" on="1"/>
- <pt x="1143" y="227" on="0"/>
- <pt x="1156" y="319" on="1"/>
- <pt x="1167" y="397" on="0"/>
- <pt x="1167" y="544" on="1"/>
- <pt x="1167" y="1221" on="1"/>
- <pt x="1168" y="1335" on="0"/>
- <pt x="1149" y="1377" on="1"/>
- <pt x="1134" y="1409" on="0"/>
- <pt x="1068" y="1413" on="1"/>
- <pt x="1000" y="1417" on="1"/>
- <pt x="982" y="1419" on="1"/>
- <pt x="982" y="1480" on="1"/>
- <pt x="1456" y="1480" on="1"/>
- <pt x="1456" y="1419" on="1"/>
- <pt x="1437" y="1417" on="1"/>
- <pt x="1369" y="1413" on="1"/>
- <pt x="1294" y="1408" on="0"/>
- <pt x="1284" y="1366" on="1"/>
- <pt x="1271" y="1302" on="0"/>
- <pt x="1271" y="1221" on="1"/>
- <pt x="1271" y="601" on="1"/>
- <pt x="1271" y="394" on="0"/>
- <pt x="1248" y="299" on="1"/>
- <pt x="1224" y="201" on="0"/>
- <pt x="1156" y="120" on="1"/>
- <pt x="1023" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="204" y="-37" on="0"/>
- <pt x="204" y="554" on="1"/>
- <pt x="204" y="1221" on="1"/>
- <pt x="204" y="1280" on="0"/>
- <pt x="197" y="1333" on="1"/>
- <pt x="191" y="1372" on="0"/>
- <pt x="183" y="1384" on="1"/>
- <pt x="165" y="1410" on="0"/>
- <pt x="105" y="1413" on="1"/>
- <pt x="38" y="1417" on="1"/>
- <pt x="19" y="1419" on="1"/>
- <pt x="19" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="782" y="2033" on="1"/>
- <pt x="876" y="2033" on="0"/>
- <pt x="942" y="1967" on="1"/>
- <pt x="1009" y="1901" on="0"/>
- <pt x="1009" y="1807" on="1"/>
- <pt x="1009" y="1711" on="0"/>
- <pt x="942" y="1645" on="1"/>
- <pt x="875" y="1579" on="0"/>
- <pt x="780" y="1579" on="1"/>
- <pt x="696" y="1579" on="0"/>
- <pt x="635" y="1633" on="1"/>
- <pt x="555" y="1702" on="0"/>
- <pt x="555" y="1806" on="1"/>
- <pt x="555" y="1901" on="0"/>
- <pt x="621" y="1967" on="1"/>
- <pt x="687" y="2033" on="0"/>
- </contour>
- <contour>
- <pt x="782" y="1965" on="1"/>
- <pt x="716" y="1965" on="0"/>
- <pt x="670" y="1919" on="1"/>
- <pt x="623" y="1872" on="0"/>
- <pt x="623" y="1807" on="1"/>
- <pt x="623" y="1741" on="0"/>
- <pt x="669" y="1694" on="1"/>
- <pt x="715" y="1647" on="0"/>
- <pt x="780" y="1647" on="1"/>
- <pt x="841" y="1647" on="0"/>
- <pt x="885" y="1684" on="1"/>
- <pt x="941" y="1733" on="0"/>
- <pt x="941" y="1807" on="1"/>
- <pt x="941" y="1873" on="0"/>
- <pt x="894" y="1919" on="1"/>
- <pt x="847" y="1965" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 93 values pushed */
- 0 0 81 17 65 73 17 57 15 17 44 48 84 44 2 47 56 37 30 22 29 1 46 38 21
- 9 8 1 6 0 2 3 0 65 57 0 56 30 29 0 0 3 14 0 0 85 17 61 77 17
- 69 48 196 56 47 30 37 29 22 69 61 69 61 1 0 4 21 8 3 0 0 22 21 9 1
- 37 9 8 32 1 46 2 4 48 196 38 37 1 47 46 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Utilde" xMin="19" yMin="-37" xMax="1456" yMax="1839">
- <contour>
- <pt x="602" y="1480" on="1"/>
- <pt x="602" y="1419" on="1"/>
- <pt x="584" y="1417" on="1"/>
- <pt x="516" y="1413" on="1"/>
- <pt x="448" y="1408" on="0"/>
- <pt x="437" y="1386" on="1"/>
- <pt x="426" y="1367" on="0"/>
- <pt x="423" y="1320" on="1"/>
- <pt x="417" y="1221" on="1"/>
- <pt x="417" y="588" on="1"/>
- <pt x="417" y="360" on="0"/>
- <pt x="429" y="290" on="1"/>
- <pt x="441" y="219" on="0"/>
- <pt x="490" y="156" on="1"/>
- <pt x="587" y="31" on="0"/>
- <pt x="779" y="31" on="1"/>
- <pt x="978" y="31" on="0"/>
- <pt x="1087" y="160" on="1"/>
- <pt x="1143" y="227" on="0"/>
- <pt x="1156" y="319" on="1"/>
- <pt x="1167" y="397" on="0"/>
- <pt x="1167" y="544" on="1"/>
- <pt x="1167" y="1221" on="1"/>
- <pt x="1168" y="1335" on="0"/>
- <pt x="1149" y="1377" on="1"/>
- <pt x="1134" y="1409" on="0"/>
- <pt x="1068" y="1413" on="1"/>
- <pt x="1000" y="1417" on="1"/>
- <pt x="982" y="1419" on="1"/>
- <pt x="982" y="1480" on="1"/>
- <pt x="1456" y="1480" on="1"/>
- <pt x="1456" y="1419" on="1"/>
- <pt x="1437" y="1417" on="1"/>
- <pt x="1369" y="1413" on="1"/>
- <pt x="1294" y="1408" on="0"/>
- <pt x="1284" y="1366" on="1"/>
- <pt x="1271" y="1302" on="0"/>
- <pt x="1271" y="1221" on="1"/>
- <pt x="1271" y="601" on="1"/>
- <pt x="1271" y="394" on="0"/>
- <pt x="1248" y="299" on="1"/>
- <pt x="1224" y="201" on="0"/>
- <pt x="1156" y="120" on="1"/>
- <pt x="1023" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="204" y="-37" on="0"/>
- <pt x="204" y="554" on="1"/>
- <pt x="204" y="1221" on="1"/>
- <pt x="204" y="1280" on="0"/>
- <pt x="197" y="1333" on="1"/>
- <pt x="191" y="1372" on="0"/>
- <pt x="183" y="1384" on="1"/>
- <pt x="165" y="1410" on="0"/>
- <pt x="105" y="1413" on="1"/>
- <pt x="38" y="1417" on="1"/>
- <pt x="19" y="1419" on="1"/>
- <pt x="19" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="442" y="1604" on="1"/>
- <pt x="469" y="1744" on="0"/>
- <pt x="538" y="1797" on="1"/>
- <pt x="591" y="1839" on="0"/>
- <pt x="669" y="1839" on="1"/>
- <pt x="734" y="1839" on="0"/>
- <pt x="787" y="1801" on="1"/>
- <pt x="822" y="1776" on="1"/>
- <pt x="874" y="1739" on="0"/>
- <pt x="928" y="1739" on="1"/>
- <pt x="1023" y="1739" on="0"/>
- <pt x="1046" y="1838" on="1"/>
- <pt x="1108" y="1838" on="1"/>
- <pt x="1080" y="1699" on="0"/>
- <pt x="1012" y="1646" on="1"/>
- <pt x="958" y="1604" on="0"/>
- <pt x="881" y="1604" on="1"/>
- <pt x="818" y="1604" on="0"/>
- <pt x="763" y="1642" on="1"/>
- <pt x="728" y="1666" on="1"/>
- <pt x="673" y="1704" on="0"/>
- <pt x="622" y="1704" on="1"/>
- <pt x="533" y="1704" on="0"/>
- <pt x="504" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 89 values pushed */
- 0 0 78 20 61 66 20 73 15 38 44 48 84 44 2 47 56 37 30 22 29 1 46 38 21
- 9 8 1 6 0 2 3 0 80 69 68 57 4 13 73 61 0 56 30 29 0 0 3 14 56
- 47 30 37 29 22 80 69 68 57 1 0 6 21 8 3 0 0 22 21 41 1 37 9 8 37
- 1 46 2 4 48 196 38 37 1 47 46 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="V" xMin="0" yMin="-19" xMax="1479" yMax="1480">
- <contour>
- <pt x="724" y="-19" on="1"/>
- <pt x="193" y="1216" on="1"/>
- <pt x="137" y="1342" on="1"/>
- <pt x="113" y="1398" on="0"/>
- <pt x="91" y="1406" on="1"/>
- <pt x="68" y="1414" on="0"/>
- <pt x="21" y="1417" on="1"/>
- <pt x="0" y="1419" on="1"/>
- <pt x="0" y="1480" on="1"/>
- <pt x="543" y="1480" on="1"/>
- <pt x="543" y="1419" on="1"/>
- <pt x="522" y="1419" on="1"/>
- <pt x="367" y="1419" on="0"/>
- <pt x="367" y="1380" on="1"/>
- <pt x="367" y="1366" on="0"/>
- <pt x="401" y="1283" on="1"/>
- <pt x="428" y="1216" on="1"/>
- <pt x="828" y="284" on="1"/>
- <pt x="1210" y="1217" on="1"/>
- <pt x="1230" y="1268" on="1"/>
- <pt x="1262" y="1349" on="0"/>
- <pt x="1262" y="1376" on="1"/>
- <pt x="1262" y="1415" on="0"/>
- <pt x="1193" y="1417" on="1"/>
- <pt x="1117" y="1419" on="1"/>
- <pt x="1095" y="1419" on="1"/>
- <pt x="1095" y="1480" on="1"/>
- <pt x="1479" y="1480" on="1"/>
- <pt x="1479" y="1419" on="1"/>
- <pt x="1457" y="1417" on="1"/>
- <pt x="1394" y="1413" on="0"/>
- <pt x="1377" y="1396" on="1"/>
- <pt x="1359" y="1380" on="0"/>
- <pt x="1341" y="1335" on="1"/>
- <pt x="1294" y="1217" on="1"/>
- <pt x="792" y="-19" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 1 28 25 24 17 16 11 10 7 1 9 8 2 3 0 1 35 0 2 0 27 26 9 8 0
- 3 14 35 28 27 26 25 24 21 17 16 13 11 10 9 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="W" xMin="0" yMin="-19" xMax="1933" yMax="1480">
- <contour>
- <pt x="524" y="-19" on="1"/>
- <pt x="188" y="1215" on="1"/>
- <pt x="155" y="1336" on="0"/>
- <pt x="153" y="1347" on="1"/>
- <pt x="138" y="1416" on="0"/>
- <pt x="80" y="1416" on="1"/>
- <pt x="22" y="1417" on="1"/>
- <pt x="0" y="1419" on="1"/>
- <pt x="0" y="1480" on="1"/>
- <pt x="536" y="1480" on="1"/>
- <pt x="536" y="1419" on="1"/>
- <pt x="516" y="1419" on="1"/>
- <pt x="462" y="1417" on="1"/>
- <pt x="368" y="1414" on="0"/>
- <pt x="368" y="1363" on="1"/>
- <pt x="368" y="1323" on="0"/>
- <pt x="397" y="1215" on="1"/>
- <pt x="630" y="354" on="1"/>
- <pt x="990" y="1462" on="1"/>
- <pt x="1060" y="1462" on="1"/>
- <pt x="1382" y="323" on="1"/>
- <pt x="1658" y="1214" on="1"/>
- <pt x="1701" y="1352" on="0"/>
- <pt x="1701" y="1383" on="1"/>
- <pt x="1701" y="1415" on="0"/>
- <pt x="1613" y="1417" on="1"/>
- <pt x="1545" y="1419" on="1"/>
- <pt x="1526" y="1419" on="1"/>
- <pt x="1526" y="1480" on="1"/>
- <pt x="1933" y="1480" on="1"/>
- <pt x="1933" y="1419" on="1"/>
- <pt x="1916" y="1417" on="1"/>
- <pt x="1856" y="1415" on="1"/>
- <pt x="1796" y="1413" on="0"/>
- <pt x="1777" y="1352" on="1"/>
- <pt x="1734" y="1215" on="1"/>
- <pt x="1352" y="-19" on="1"/>
- <pt x="1285" y="-19" on="1"/>
- <pt x="963" y="1120" on="1"/>
- <pt x="593" y="-19" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 1 38 30 27 26 19 18 11 10 7 9 8 1 3 0 1 1 20 17 2 1 2 3 0 0
- 1 39 37 36 0 4 13 2 0 29 28 9 8 0 3 14 39 38 37 36 30 29 28 27 26
- 23 20 19 18 17 14 11 10 9 8 7 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Wcircumflex" xMin="0" yMin="-19" xMax="1933" yMax="1925">
- <contour>
- <pt x="524" y="-19" on="1"/>
- <pt x="188" y="1215" on="1"/>
- <pt x="155" y="1336" on="0"/>
- <pt x="153" y="1347" on="1"/>
- <pt x="138" y="1416" on="0"/>
- <pt x="80" y="1416" on="1"/>
- <pt x="22" y="1417" on="1"/>
- <pt x="0" y="1419" on="1"/>
- <pt x="0" y="1480" on="1"/>
- <pt x="536" y="1480" on="1"/>
- <pt x="536" y="1419" on="1"/>
- <pt x="516" y="1419" on="1"/>
- <pt x="462" y="1417" on="1"/>
- <pt x="368" y="1414" on="0"/>
- <pt x="368" y="1363" on="1"/>
- <pt x="368" y="1323" on="0"/>
- <pt x="397" y="1215" on="1"/>
- <pt x="630" y="354" on="1"/>
- <pt x="990" y="1462" on="1"/>
- <pt x="1060" y="1462" on="1"/>
- <pt x="1382" y="323" on="1"/>
- <pt x="1658" y="1214" on="1"/>
- <pt x="1701" y="1352" on="0"/>
- <pt x="1701" y="1383" on="1"/>
- <pt x="1701" y="1415" on="0"/>
- <pt x="1613" y="1417" on="1"/>
- <pt x="1545" y="1419" on="1"/>
- <pt x="1526" y="1419" on="1"/>
- <pt x="1526" y="1480" on="1"/>
- <pt x="1933" y="1480" on="1"/>
- <pt x="1933" y="1419" on="1"/>
- <pt x="1916" y="1417" on="1"/>
- <pt x="1856" y="1415" on="1"/>
- <pt x="1796" y="1413" on="0"/>
- <pt x="1777" y="1352" on="1"/>
- <pt x="1734" y="1215" on="1"/>
- <pt x="1352" y="-19" on="1"/>
- <pt x="1285" y="-19" on="1"/>
- <pt x="963" y="1120" on="1"/>
- <pt x="593" y="-19" on="1"/>
- </contour>
- <contour>
- <pt x="679" y="1604" on="1"/>
- <pt x="920" y="1925" on="1"/>
- <pt x="1142" y="1925" on="1"/>
- <pt x="1382" y="1604" on="1"/>
- <pt x="1296" y="1604" on="1"/>
- <pt x="1031" y="1826" on="1"/>
- <pt x="765" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 82 values pushed */
- 46 45 44 43 40 5 41 8 3 1 38 30 27 26 19 18 11 10 7 9 8 1 3 0 1
- 1 20 17 2 1 2 3 0 0 1 39 37 36 0 4 13 2 0 42 41 1 0 29 28 9
- 8 0 3 14 46 45 44 43 42 41 40 39 38 37 36 30 29 28 27 26 23 20 19 18 17
- 14 11 10 9 8 7 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="X" xMin="12" yMin="0" xMax="1466" yMax="1480">
- <contour>
- <pt x="12" y="0" on="1"/>
- <pt x="12" y="62" on="1"/>
- <pt x="26" y="63" on="1"/>
- <pt x="69" y="66" on="1"/>
- <pt x="132" y="72" on="0"/>
- <pt x="187" y="144" on="1"/>
- <pt x="278" y="261" on="1"/>
- <pt x="633" y="729" on="1"/>
- <pt x="302" y="1222" on="1"/>
- <pt x="222" y="1333" on="1"/>
- <pt x="167" y="1411" on="0"/>
- <pt x="107" y="1415" on="1"/>
- <pt x="57" y="1417" on="1"/>
- <pt x="36" y="1419" on="1"/>
- <pt x="36" y="1480" on="1"/>
- <pt x="619" y="1480" on="1"/>
- <pt x="619" y="1419" on="1"/>
- <pt x="601" y="1419" on="1"/>
- <pt x="531" y="1418" on="1"/>
- <pt x="456" y="1417" on="0"/>
- <pt x="456" y="1386" on="1"/>
- <pt x="456" y="1370" on="0"/>
- <pt x="501" y="1310" on="1"/>
- <pt x="509" y="1300" on="0"/>
- <pt x="536" y="1258" on="1"/>
- <pt x="560" y="1223" on="1"/>
- <pt x="801" y="859" on="1"/>
- <pt x="1091" y="1223" on="1"/>
- <pt x="1200" y="1360" on="0"/>
- <pt x="1200" y="1391" on="1"/>
- <pt x="1200" y="1414" on="0"/>
- <pt x="1138" y="1417" on="1"/>
- <pt x="1089" y="1419" on="1"/>
- <pt x="1070" y="1419" on="1"/>
- <pt x="1070" y="1480" on="1"/>
- <pt x="1441" y="1480" on="1"/>
- <pt x="1441" y="1419" on="1"/>
- <pt x="1417" y="1417" on="1"/>
- <pt x="1325" y="1411" on="0"/>
- <pt x="1264" y="1326" on="1"/>
- <pt x="1229" y="1279" on="0"/>
- <pt x="1184" y="1223" on="1"/>
- <pt x="855" y="814" on="1"/>
- <pt x="1220" y="261" on="1"/>
- <pt x="1307" y="137" on="1"/>
- <pt x="1351" y="71" on="0"/>
- <pt x="1394" y="66" on="1"/>
- <pt x="1447" y="63" on="1"/>
- <pt x="1466" y="62" on="1"/>
- <pt x="1466" y="0" on="1"/>
- <pt x="899" y="0" on="1"/>
- <pt x="899" y="62" on="1"/>
- <pt x="916" y="62" on="1"/>
- <pt x="977" y="63" on="1"/>
- <pt x="1064" y="64" on="0"/>
- <pt x="1064" y="99" on="1"/>
- <pt x="1064" y="122" on="0"/>
- <pt x="1023" y="181" on="1"/>
- <pt x="968" y="260" on="1"/>
- <pt x="691" y="676" on="1"/>
- <pt x="376" y="261" on="1"/>
- <pt x="358" y="237" on="1"/>
- <pt x="342" y="216" on="1"/>
- <pt x="331" y="202" on="1"/>
- <pt x="321" y="189" on="1"/>
- <pt x="265" y="115" on="0"/>
- <pt x="265" y="95" on="1"/>
- <pt x="265" y="64" on="0"/>
- <pt x="345" y="63" on="1"/>
- <pt x="405" y="62" on="1"/>
- <pt x="426" y="62" on="1"/>
- <pt x="426" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 67 values pushed */
- 70 69 59 58 52 51 48 43 42 36 33 32 26 17 16 13 8 7 1 19 14 0 3 71 50
- 49 0 3 0 35 34 15 14 0 3 14 71 70 69 66 59 58 55 52 51 50 49 48 43 42
- 36 35 34 33 32 29 26 20 17 16 15 14 13 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Y" xMin="0" yMin="0" xMax="1478" yMax="1480">
- <contour>
- <pt x="627" y="656" on="1"/>
- <pt x="252" y="1215" on="1"/>
- <pt x="193" y="1303" on="1"/>
- <pt x="124" y="1408" on="0"/>
- <pt x="77" y="1415" on="1"/>
- <pt x="19" y="1417" on="1"/>
- <pt x="0" y="1419" on="1"/>
- <pt x="0" y="1480" on="1"/>
- <pt x="573" y="1480" on="1"/>
- <pt x="573" y="1419" on="1"/>
- <pt x="554" y="1419" on="1"/>
- <pt x="483" y="1417" on="1"/>
- <pt x="409" y="1415" on="0"/>
- <pt x="409" y="1380" on="1"/>
- <pt x="409" y="1351" on="0"/>
- <pt x="457" y="1281" on="1"/>
- <pt x="502" y="1215" on="1"/>
- <pt x="816" y="748" on="1"/>
- <pt x="1131" y="1214" on="1"/>
- <pt x="1226" y="1354" on="0"/>
- <pt x="1226" y="1389" on="1"/>
- <pt x="1226" y="1414" on="0"/>
- <pt x="1143" y="1417" on="1"/>
- <pt x="1087" y="1419" on="1"/>
- <pt x="1069" y="1419" on="1"/>
- <pt x="1069" y="1480" on="1"/>
- <pt x="1478" y="1480" on="1"/>
- <pt x="1478" y="1419" on="1"/>
- <pt x="1459" y="1417" on="1"/>
- <pt x="1458" y="1417" on="0"/>
- <pt x="1453" y="1418" on="1"/>
- <pt x="1450" y="1415" on="0"/>
- <pt x="1447" y="1415" on="1"/>
- <pt x="1426" y="1416" on="1"/>
- <pt x="1353" y="1419" on="0"/>
- <pt x="1297" y="1333" on="1"/>
- <pt x="1295" y="1329" on="0"/>
- <pt x="1288" y="1319" on="1"/>
- <pt x="1282" y="1310" on="0"/>
- <pt x="1275" y="1301" on="1"/>
- <pt x="1246" y="1258" on="0"/>
- <pt x="1217" y="1215" on="1"/>
- <pt x="837" y="656" on="1"/>
- <pt x="837" y="259" on="1"/>
- <pt x="836" y="140" on="0"/>
- <pt x="854" y="104" on="1"/>
- <pt x="869" y="72" on="0"/>
- <pt x="935" y="68" on="1"/>
- <pt x="1003" y="63" on="1"/>
- <pt x="1022" y="62" on="1"/>
- <pt x="1022" y="0" on="1"/>
- <pt x="442" y="0" on="1"/>
- <pt x="442" y="62" on="1"/>
- <pt x="460" y="63" on="1"/>
- <pt x="528" y="68" on="1"/>
- <pt x="603" y="74" on="0"/>
- <pt x="613" y="115" on="1"/>
- <pt x="627" y="175" on="0"/>
- <pt x="627" y="259" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 58 51 43 50 33 32 30 42 33 32 30 27 24 23 17 10 9 6 4 0 13 7 50 3 51
- 50 1 0 26 25 8 7 0 3 14 51 58 50 43 17 42 0 2 27 26 25 24 23 5 13
- 20 42 10 9 8 7 6 4 6 13 13 0 0 0 43 42 32 1 0 1 4 48 196 58 0
- 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Yacute" xMin="0" yMin="0" xMax="1478" yMax="1925">
- <contour>
- <pt x="627" y="656" on="1"/>
- <pt x="252" y="1215" on="1"/>
- <pt x="193" y="1303" on="1"/>
- <pt x="124" y="1408" on="0"/>
- <pt x="77" y="1415" on="1"/>
- <pt x="19" y="1417" on="1"/>
- <pt x="0" y="1419" on="1"/>
- <pt x="0" y="1480" on="1"/>
- <pt x="573" y="1480" on="1"/>
- <pt x="573" y="1419" on="1"/>
- <pt x="554" y="1419" on="1"/>
- <pt x="483" y="1417" on="1"/>
- <pt x="409" y="1415" on="0"/>
- <pt x="409" y="1380" on="1"/>
- <pt x="409" y="1351" on="0"/>
- <pt x="457" y="1281" on="1"/>
- <pt x="502" y="1215" on="1"/>
- <pt x="816" y="748" on="1"/>
- <pt x="1131" y="1214" on="1"/>
- <pt x="1226" y="1354" on="0"/>
- <pt x="1226" y="1389" on="1"/>
- <pt x="1226" y="1414" on="0"/>
- <pt x="1143" y="1417" on="1"/>
- <pt x="1087" y="1419" on="1"/>
- <pt x="1069" y="1419" on="1"/>
- <pt x="1069" y="1480" on="1"/>
- <pt x="1478" y="1480" on="1"/>
- <pt x="1478" y="1419" on="1"/>
- <pt x="1459" y="1417" on="1"/>
- <pt x="1458" y="1417" on="0"/>
- <pt x="1453" y="1418" on="1"/>
- <pt x="1450" y="1415" on="0"/>
- <pt x="1447" y="1415" on="1"/>
- <pt x="1426" y="1416" on="1"/>
- <pt x="1353" y="1419" on="0"/>
- <pt x="1297" y="1333" on="1"/>
- <pt x="1295" y="1329" on="0"/>
- <pt x="1288" y="1319" on="1"/>
- <pt x="1282" y="1310" on="0"/>
- <pt x="1275" y="1301" on="1"/>
- <pt x="1246" y="1258" on="0"/>
- <pt x="1217" y="1215" on="1"/>
- <pt x="837" y="656" on="1"/>
- <pt x="837" y="259" on="1"/>
- <pt x="836" y="140" on="0"/>
- <pt x="854" y="104" on="1"/>
- <pt x="869" y="72" on="0"/>
- <pt x="935" y="68" on="1"/>
- <pt x="1003" y="63" on="1"/>
- <pt x="1022" y="62" on="1"/>
- <pt x="1022" y="0" on="1"/>
- <pt x="442" y="0" on="1"/>
- <pt x="442" y="62" on="1"/>
- <pt x="460" y="63" on="1"/>
- <pt x="528" y="68" on="1"/>
- <pt x="603" y="74" on="0"/>
- <pt x="613" y="115" on="1"/>
- <pt x="627" y="175" on="0"/>
- <pt x="627" y="259" on="1"/>
- </contour>
- <contour>
- <pt x="649" y="1604" on="1"/>
- <pt x="890" y="1925" on="1"/>
- <pt x="1149" y="1925" on="1"/>
- <pt x="742" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 92 values pushed */
- 58 51 43 50 62 59 2 60 7 3 33 32 30 42 33 32 30 27 24 23 17 10 9 6 4
- 0 13 7 50 3 61 60 1 51 50 1 2 0 26 25 8 7 0 3 14 51 58 50 43 62
- 59 17 3 42 0 3 61 60 27 26 25 24 23 7 13 20 42 10 9 8 7 6 4 6 13
- 13 0 0 0 43 42 32 1 0 1 4 48 196 58 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ycircumflex" xMin="0" yMin="0" xMax="1478" yMax="1925">
- <contour>
- <pt x="627" y="656" on="1"/>
- <pt x="252" y="1215" on="1"/>
- <pt x="193" y="1303" on="1"/>
- <pt x="124" y="1408" on="0"/>
- <pt x="77" y="1415" on="1"/>
- <pt x="19" y="1417" on="1"/>
- <pt x="0" y="1419" on="1"/>
- <pt x="0" y="1480" on="1"/>
- <pt x="573" y="1480" on="1"/>
- <pt x="573" y="1419" on="1"/>
- <pt x="554" y="1419" on="1"/>
- <pt x="483" y="1417" on="1"/>
- <pt x="409" y="1415" on="0"/>
- <pt x="409" y="1380" on="1"/>
- <pt x="409" y="1351" on="0"/>
- <pt x="457" y="1281" on="1"/>
- <pt x="502" y="1215" on="1"/>
- <pt x="816" y="748" on="1"/>
- <pt x="1131" y="1214" on="1"/>
- <pt x="1226" y="1354" on="0"/>
- <pt x="1226" y="1389" on="1"/>
- <pt x="1226" y="1414" on="0"/>
- <pt x="1143" y="1417" on="1"/>
- <pt x="1087" y="1419" on="1"/>
- <pt x="1069" y="1419" on="1"/>
- <pt x="1069" y="1480" on="1"/>
- <pt x="1478" y="1480" on="1"/>
- <pt x="1478" y="1419" on="1"/>
- <pt x="1459" y="1417" on="1"/>
- <pt x="1458" y="1417" on="0"/>
- <pt x="1453" y="1418" on="1"/>
- <pt x="1450" y="1415" on="0"/>
- <pt x="1447" y="1415" on="1"/>
- <pt x="1426" y="1416" on="1"/>
- <pt x="1353" y="1419" on="0"/>
- <pt x="1297" y="1333" on="1"/>
- <pt x="1295" y="1329" on="0"/>
- <pt x="1288" y="1319" on="1"/>
- <pt x="1282" y="1310" on="0"/>
- <pt x="1275" y="1301" on="1"/>
- <pt x="1246" y="1258" on="0"/>
- <pt x="1217" y="1215" on="1"/>
- <pt x="837" y="656" on="1"/>
- <pt x="837" y="259" on="1"/>
- <pt x="836" y="140" on="0"/>
- <pt x="854" y="104" on="1"/>
- <pt x="869" y="72" on="0"/>
- <pt x="935" y="68" on="1"/>
- <pt x="1003" y="63" on="1"/>
- <pt x="1022" y="62" on="1"/>
- <pt x="1022" y="0" on="1"/>
- <pt x="442" y="0" on="1"/>
- <pt x="442" y="62" on="1"/>
- <pt x="460" y="63" on="1"/>
- <pt x="528" y="68" on="1"/>
- <pt x="603" y="74" on="0"/>
- <pt x="613" y="115" on="1"/>
- <pt x="627" y="175" on="0"/>
- <pt x="627" y="259" on="1"/>
- </contour>
- <contour>
- <pt x="469" y="1604" on="1"/>
- <pt x="710" y="1925" on="1"/>
- <pt x="932" y="1925" on="1"/>
- <pt x="1172" y="1604" on="1"/>
- <pt x="1086" y="1604" on="1"/>
- <pt x="821" y="1826" on="1"/>
- <pt x="555" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 98 values pushed */
- 58 51 43 50 65 64 63 62 59 5 60 7 3 33 32 30 42 33 32 30 27 24 23 17 10
- 9 6 4 0 13 7 50 3 61 60 1 51 50 1 2 0 26 25 8 7 0 3 14 51 58
- 50 43 64 60 17 3 42 0 3 63 62 61 27 26 25 24 23 8 13 20 42 65 59 10 9
- 8 7 6 4 8 13 13 0 0 0 43 42 32 1 0 1 4 48 196 58 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ydieresis" xMin="0" yMin="0" xMax="1478" yMax="1777">
- <contour>
- <pt x="627" y="656" on="1"/>
- <pt x="252" y="1215" on="1"/>
- <pt x="193" y="1303" on="1"/>
- <pt x="124" y="1408" on="0"/>
- <pt x="77" y="1415" on="1"/>
- <pt x="19" y="1417" on="1"/>
- <pt x="0" y="1419" on="1"/>
- <pt x="0" y="1480" on="1"/>
- <pt x="573" y="1480" on="1"/>
- <pt x="573" y="1419" on="1"/>
- <pt x="554" y="1419" on="1"/>
- <pt x="483" y="1417" on="1"/>
- <pt x="409" y="1415" on="0"/>
- <pt x="409" y="1380" on="1"/>
- <pt x="409" y="1351" on="0"/>
- <pt x="457" y="1281" on="1"/>
- <pt x="502" y="1215" on="1"/>
- <pt x="816" y="748" on="1"/>
- <pt x="1131" y="1214" on="1"/>
- <pt x="1226" y="1354" on="0"/>
- <pt x="1226" y="1389" on="1"/>
- <pt x="1226" y="1414" on="0"/>
- <pt x="1143" y="1417" on="1"/>
- <pt x="1087" y="1419" on="1"/>
- <pt x="1069" y="1419" on="1"/>
- <pt x="1069" y="1480" on="1"/>
- <pt x="1478" y="1480" on="1"/>
- <pt x="1478" y="1419" on="1"/>
- <pt x="1459" y="1417" on="1"/>
- <pt x="1458" y="1417" on="0"/>
- <pt x="1453" y="1418" on="1"/>
- <pt x="1450" y="1415" on="0"/>
- <pt x="1447" y="1415" on="1"/>
- <pt x="1426" y="1416" on="1"/>
- <pt x="1353" y="1419" on="0"/>
- <pt x="1297" y="1333" on="1"/>
- <pt x="1295" y="1329" on="0"/>
- <pt x="1288" y="1319" on="1"/>
- <pt x="1282" y="1310" on="0"/>
- <pt x="1275" y="1301" on="1"/>
- <pt x="1246" y="1258" on="0"/>
- <pt x="1217" y="1215" on="1"/>
- <pt x="837" y="656" on="1"/>
- <pt x="837" y="259" on="1"/>
- <pt x="836" y="140" on="0"/>
- <pt x="854" y="104" on="1"/>
- <pt x="869" y="72" on="0"/>
- <pt x="935" y="68" on="1"/>
- <pt x="1003" y="63" on="1"/>
- <pt x="1022" y="62" on="1"/>
- <pt x="1022" y="0" on="1"/>
- <pt x="442" y="0" on="1"/>
- <pt x="442" y="62" on="1"/>
- <pt x="460" y="63" on="1"/>
- <pt x="528" y="68" on="1"/>
- <pt x="603" y="74" on="0"/>
- <pt x="613" y="115" on="1"/>
- <pt x="627" y="175" on="0"/>
- <pt x="627" y="259" on="1"/>
- </contour>
- <contour>
- <pt x="537" y="1604" on="1"/>
- <pt x="537" y="1777" on="1"/>
- <pt x="710" y="1777" on="1"/>
- <pt x="710" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="932" y="1604" on="1"/>
- <pt x="932" y="1777" on="1"/>
- <pt x="1105" y="1777" on="1"/>
- <pt x="1105" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 121 values pushed */
- 58 51 43 50 33 32 30 42 33 32 30 27 24 23 17 10 9 6 4 0 13 7 50 3 0
- 0 66 63 62 59 13 3 60 1 4 48 84 65 64 61 60 3 51 50 1 2 0 26 25 8
- 7 0 3 14 51 58 50 43 25 24 23 3 65 63 3 17 42 61 2 10 9 8 3 0 59
- 3 27 26 2 13 20 65 7 6 4 3 13 13 59 0 0 64 63 13 1 65 62 61 13 1
- 59 43 42 32 1 0 3 4 48 196 66 65 1 60 59 1 58 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Z" xMin="92" yMin="0" xMax="1129" yMax="1480">
- <contour>
- <pt x="92" y="0" on="1"/>
- <pt x="92" y="80" on="1"/>
- <pt x="887" y="1400" on="1"/>
- <pt x="436" y="1400" on="1"/>
- <pt x="327" y="1396" on="1"/>
- <pt x="263" y="1395" on="0"/>
- <pt x="252" y="1377" on="1"/>
- <pt x="242" y="1360" on="0"/>
- <pt x="242" y="1322" on="1"/>
- <pt x="239" y="1209" on="1"/>
- <pt x="237" y="1184" on="1"/>
- <pt x="126" y="1184" on="1"/>
- <pt x="126" y="1480" on="1"/>
- <pt x="1122" y="1480" on="1"/>
- <pt x="1122" y="1413" on="1"/>
- <pt x="331" y="93" on="1"/>
- <pt x="779" y="93" on="1"/>
- <pt x="945" y="99" on="1"/>
- <pt x="1008" y="100" on="0"/>
- <pt x="1012" y="165" on="1"/>
- <pt x="1016" y="265" on="1"/>
- <pt x="1017" y="284" on="1"/>
- <pt x="1129" y="284" on="1"/>
- <pt x="1129" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 63 values pushed */
- 14 12 2 2 22 21 11 10 4 2 15 3 1 15 0 2 0 0 3 2 21 1 12 16 15
- 35 1 0 2 4 48 84 23 0 1 0 13 12 0 14 21 16 15 14 13 10 3 2 8 22
- 11 3 1 0 11 23 22 1 12 11 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Zacute" xMin="92" yMin="0" xMax="1129" yMax="1925">
- <contour>
- <pt x="92" y="0" on="1"/>
- <pt x="92" y="80" on="1"/>
- <pt x="887" y="1400" on="1"/>
- <pt x="436" y="1400" on="1"/>
- <pt x="327" y="1396" on="1"/>
- <pt x="263" y="1395" on="0"/>
- <pt x="252" y="1377" on="1"/>
- <pt x="242" y="1360" on="0"/>
- <pt x="242" y="1322" on="1"/>
- <pt x="239" y="1209" on="1"/>
- <pt x="237" y="1184" on="1"/>
- <pt x="126" y="1184" on="1"/>
- <pt x="126" y="1480" on="1"/>
- <pt x="1122" y="1480" on="1"/>
- <pt x="1122" y="1413" on="1"/>
- <pt x="331" y="93" on="1"/>
- <pt x="779" y="93" on="1"/>
- <pt x="945" y="99" on="1"/>
- <pt x="1008" y="100" on="0"/>
- <pt x="1012" y="165" on="1"/>
- <pt x="1016" y="265" on="1"/>
- <pt x="1017" y="284" on="1"/>
- <pt x="1129" y="284" on="1"/>
- <pt x="1129" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="510" y="1604" on="1"/>
- <pt x="751" y="1925" on="1"/>
- <pt x="1010" y="1925" on="1"/>
- <pt x="603" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 27 24 2 25 12 3 14 12 2 2 22 21 11 10 4 2 15 3 1 15 0 2 0 0 3
- 2 21 1 12 16 15 35 1 0 2 4 48 84 26 25 1 23 0 1 2 0 13 12 0 14
- 27 26 25 24 21 16 15 14 13 10 3 2 12 22 11 3 1 0 11 23 22 1 12 11 1
- 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Zcaron" xMin="92" yMin="0" xMax="1129" yMax="1925">
- <contour>
- <pt x="92" y="0" on="1"/>
- <pt x="92" y="80" on="1"/>
- <pt x="887" y="1400" on="1"/>
- <pt x="436" y="1400" on="1"/>
- <pt x="327" y="1396" on="1"/>
- <pt x="263" y="1395" on="0"/>
- <pt x="252" y="1377" on="1"/>
- <pt x="242" y="1360" on="0"/>
- <pt x="242" y="1322" on="1"/>
- <pt x="239" y="1209" on="1"/>
- <pt x="237" y="1184" on="1"/>
- <pt x="126" y="1184" on="1"/>
- <pt x="126" y="1480" on="1"/>
- <pt x="1122" y="1480" on="1"/>
- <pt x="1122" y="1413" on="1"/>
- <pt x="331" y="93" on="1"/>
- <pt x="779" y="93" on="1"/>
- <pt x="945" y="99" on="1"/>
- <pt x="1008" y="100" on="0"/>
- <pt x="1012" y="165" on="1"/>
- <pt x="1016" y="265" on="1"/>
- <pt x="1017" y="284" on="1"/>
- <pt x="1129" y="284" on="1"/>
- <pt x="1129" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="979" y="1925" on="1"/>
- <pt x="739" y="1604" on="1"/>
- <pt x="517" y="1604" on="1"/>
- <pt x="276" y="1925" on="1"/>
- <pt x="362" y="1925" on="1"/>
- <pt x="628" y="1703" on="1"/>
- <pt x="893" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 82 values pushed */
- 14 12 2 2 22 21 11 10 4 2 15 3 1 15 0 2 30 29 28 27 24 5 13 25 0
- 0 3 2 21 1 12 16 15 35 1 0 2 4 48 84 26 25 1 23 0 1 2 0 13 12
- 0 14 30 29 28 27 26 25 24 21 16 15 14 13 10 3 2 15 22 11 3 1 0 11 23
- 22 1 12 11 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Zdotaccent" xMin="92" yMin="0" xMax="1129" yMax="1801">
- <contour>
- <pt x="92" y="0" on="1"/>
- <pt x="92" y="80" on="1"/>
- <pt x="887" y="1400" on="1"/>
- <pt x="436" y="1400" on="1"/>
- <pt x="327" y="1396" on="1"/>
- <pt x="263" y="1395" on="0"/>
- <pt x="252" y="1377" on="1"/>
- <pt x="242" y="1360" on="0"/>
- <pt x="242" y="1322" on="1"/>
- <pt x="239" y="1209" on="1"/>
- <pt x="237" y="1184" on="1"/>
- <pt x="126" y="1184" on="1"/>
- <pt x="126" y="1480" on="1"/>
- <pt x="1122" y="1480" on="1"/>
- <pt x="1122" y="1413" on="1"/>
- <pt x="331" y="93" on="1"/>
- <pt x="779" y="93" on="1"/>
- <pt x="945" y="99" on="1"/>
- <pt x="1008" y="100" on="0"/>
- <pt x="1012" y="165" on="1"/>
- <pt x="1016" y="265" on="1"/>
- <pt x="1017" y="284" on="1"/>
- <pt x="1129" y="284" on="1"/>
- <pt x="1129" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="512" y="1604" on="1"/>
- <pt x="512" y="1801" on="1"/>
- <pt x="709" y="1801" on="1"/>
- <pt x="709" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 90 values pushed */
- 14 12 2 2 22 21 11 10 4 2 15 3 1 15 0 2 0 0 27 24 5 1 25 3 2
- 21 1 12 16 15 35 1 0 3 4 48 84 26 25 1 23 0 1 2 0 13 12 0 14 21
- 16 14 13 2 5 22 26 3 15 10 3 3 24 11 3 1 0 11 0 0 27 26 4 1 24
- 1 4 48 196 25 24 1 23 22 1 12 11 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="a" xMin="75" yMin="-25" xMax="904" yMax="1110">
- <contour>
- <pt x="629" y="149" on="1"/>
- <pt x="513" y="-25" on="0"/>
- <pt x="344" y="-25" on="1"/>
- <pt x="221" y="-25" on="0"/>
- <pt x="148" y="55" on="1"/>
- <pt x="75" y="136" on="0"/>
- <pt x="75" y="273" on="1"/>
- <pt x="75" y="642" on="0"/>
- <pt x="543" y="642" on="1"/>
- <pt x="584" y="642" on="1"/>
- <pt x="584" y="777" on="1"/>
- <pt x="584" y="940" on="0"/>
- <pt x="558" y="986" on="1"/>
- <pt x="532" y="1034" on="0"/>
- <pt x="445" y="1034" on="1"/>
- <pt x="361" y="1034" on="0"/>
- <pt x="327" y="996" on="1"/>
- <pt x="293" y="958" on="0"/>
- <pt x="293" y="863" on="1"/>
- <pt x="293" y="845" on="1"/>
- <pt x="157" y="845" on="1"/>
- <pt x="157" y="1019" on="1"/>
- <pt x="305" y="1110" on="0"/>
- <pt x="473" y="1110" on="1"/>
- <pt x="639" y="1110" on="0"/>
- <pt x="710" y="1036" on="1"/>
- <pt x="781" y="962" on="0"/>
- <pt x="781" y="785" on="1"/>
- <pt x="781" y="301" on="1"/>
- <pt x="781" y="156" on="0"/>
- <pt x="794" y="110" on="1"/>
- <pt x="807" y="65" on="0"/>
- <pt x="847" y="65" on="1"/>
- <pt x="863" y="65" on="0"/>
- <pt x="898" y="74" on="1"/>
- <pt x="904" y="0" on="1"/>
- <pt x="828" y="-25" on="0"/>
- <pt x="792" y="-25" on="1"/>
- <pt x="668" y="-25" on="0"/>
- </contour>
- <contour>
- <pt x="584" y="171" on="1"/>
- <pt x="584" y="580" on="1"/>
- <pt x="538" y="580" on="1"/>
- <pt x="288" y="580" on="0"/>
- <pt x="288" y="312" on="1"/>
- <pt x="288" y="93" on="0"/>
- <pt x="431" y="93" on="1"/>
- <pt x="503" y="93" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 0 0 45 22 2 14 21 23 48 84 37 2 23 1 2 2 28 35 1 1 41 40 39 27 21
- 20 19 18 10 9 8 0 12 1 2 3 0 0 1 35 2 0 14 0 0 43 10 6 48 196
- 35 28 0 27 9 2 41 19 18 8 4 9 20 3 6 20 0 0 40 39 10 9 4 3 27
- 1 4 48 196 28 27 1 21 20 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="aacute" xMin="75" yMin="-25" xMax="904" yMax="1604">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="192" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="abreve" xMin="75" yMin="-25" xMax="904" yMax="1604">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="breve" x="133" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="acircumflex" xMin="75" yMin="-25" xMax="904" yMax="1604">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="133" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="acute" xMin="91" yMin="1283" xMax="591" yMax="1604">
- <contour>
- <pt x="91" y="1283" on="1"/>
- <pt x="332" y="1604" on="1"/>
- <pt x="591" y="1604" on="1"/>
- <pt x="184" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 12 values pushed */
- 3 0 1 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="adieresis" xMin="75" yMin="-25" xMax="904" yMax="1456">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="134" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ae" xMin="75" yMin="-25" xMax="1304" yMax="1111">
- <contour>
- <pt x="649" y="181" on="1"/>
- <pt x="582" y="71" on="0"/>
- <pt x="525" y="27" on="1"/>
- <pt x="457" y="-25" on="0"/>
- <pt x="347" y="-25" on="1"/>
- <pt x="221" y="-25" on="0"/>
- <pt x="148" y="55" on="1"/>
- <pt x="75" y="136" on="0"/>
- <pt x="75" y="273" on="1"/>
- <pt x="75" y="642" on="0"/>
- <pt x="542" y="642" on="1"/>
- <pt x="583" y="642" on="1"/>
- <pt x="583" y="777" on="1"/>
- <pt x="583" y="939" on="0"/>
- <pt x="558" y="986" on="1"/>
- <pt x="533" y="1034" on="0"/>
- <pt x="445" y="1034" on="1"/>
- <pt x="361" y="1034" on="0"/>
- <pt x="326" y="996" on="1"/>
- <pt x="292" y="958" on="0"/>
- <pt x="292" y="863" on="1"/>
- <pt x="292" y="845" on="1"/>
- <pt x="156" y="845" on="1"/>
- <pt x="156" y="1019" on="1"/>
- <pt x="304" y="1110" on="0"/>
- <pt x="469" y="1110" on="1"/>
- <pt x="643" y="1110" on="0"/>
- <pt x="732" y="1009" on="1"/>
- <pt x="848" y="1111" on="0"/>
- <pt x="975" y="1111" on="1"/>
- <pt x="1304" y="1111" on="0"/>
- <pt x="1304" y="605" on="1"/>
- <pt x="1304" y="586" on="1"/>
- <pt x="781" y="586" on="1"/>
- <pt x="785" y="348" on="0"/>
- <pt x="838" y="233" on="1"/>
- <pt x="910" y="75" on="0"/>
- <pt x="1067" y="75" on="1"/>
- <pt x="1159" y="75" on="0"/>
- <pt x="1304" y="150" on="1"/>
- <pt x="1304" y="49" on="1"/>
- <pt x="1158" y="-25" on="0"/>
- <pt x="1029" y="-25" on="1"/>
- <pt x="890" y="-25" on="0"/>
- <pt x="780" y="51" on="1"/>
- <pt x="715" y="96" on="0"/>
- </contour>
- <contour>
- <pt x="583" y="171" on="1"/>
- <pt x="583" y="580" on="1"/>
- <pt x="538" y="580" on="1"/>
- <pt x="288" y="580" on="0"/>
- <pt x="288" y="312" on="1"/>
- <pt x="288" y="93" on="0"/>
- <pt x="431" y="93" on="1"/>
- <pt x="502" y="93" on="0"/>
- </contour>
- <contour>
- <pt x="781" y="648" on="1"/>
- <pt x="1095" y="648" on="1"/>
- <pt x="1095" y="692" on="1"/>
- <pt x="1095" y="890" on="0"/>
- <pt x="1067" y="966" on="1"/>
- <pt x="1038" y="1043" on="0"/>
- <pt x="963" y="1043" on="1"/>
- <pt x="864" y="1043" on="0"/>
- <pt x="818" y="925" on="1"/>
- <pt x="784" y="837" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 112 values pushed */
- 0 0 60 17 29 52 22 4 37 9 42 16 21 25 48 84 42 2 29 1 25 1 4 2 1
- 56 27 23 22 21 20 12 7 1 54 3 0 31 11 10 3 54 32 3 1 48 47 46 40 39
- 0 6 32 2 3 0 0 0 33 32 14 1 54 1 4 48 84 55 54 1 0 14 0 0 50
- 10 8 48 196 48 21 20 10 4 11 22 3 56 55 54 40 39 33 32 31 27 0 10 13 11
- 8 22 47 46 12 11 3 23 22 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="afii00208" xMin="99" yMin="543" xMax="1950" yMax="642">
- <contour>
- <pt x="99" y="543" on="1"/>
- <pt x="99" y="642" on="1"/>
- <pt x="1950" y="642" on="1"/>
- <pt x="1950" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 9 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="agrave" xMin="75" yMin="-25" xMax="904" yMax="1604">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="75" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="amacron" xMin="75" yMin="-25" xMax="904" yMax="1406">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="macron" x="120" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ampersand" xMin="99" yMin="-37" xMax="1541" yMax="1518">
- <contour>
- <pt x="1152" y="0" on="1"/>
- <pt x="1058" y="103" on="1"/>
- <pt x="833" y="-37" on="0"/>
- <pt x="618" y="-37" on="1"/>
- <pt x="394" y="-37" on="0"/>
- <pt x="246" y="97" on="1"/>
- <pt x="99" y="231" on="0"/>
- <pt x="99" y="437" on="1"/>
- <pt x="99" y="632" on="0"/>
- <pt x="238" y="756" on="1"/>
- <pt x="322" y="830" on="0"/>
- <pt x="482" y="888" on="1"/>
- <pt x="358" y="1058" on="0"/>
- <pt x="358" y="1193" on="1"/>
- <pt x="358" y="1339" on="0"/>
- <pt x="460" y="1428" on="1"/>
- <pt x="562" y="1518" on="0"/>
- <pt x="736" y="1518" on="1"/>
- <pt x="908" y="1518" on="0"/>
- <pt x="1006" y="1439" on="1"/>
- <pt x="1105" y="1361" on="0"/>
- <pt x="1105" y="1224" on="1"/>
- <pt x="1105" y="1066" on="0"/>
- <pt x="971" y="963" on="1"/>
- <pt x="890" y="901" on="0"/>
- <pt x="736" y="851" on="1"/>
- <pt x="791" y="777" on="1"/>
- <pt x="932" y="584" on="1"/>
- <pt x="1077" y="389" on="1"/>
- <pt x="1152" y="286" on="1"/>
- <pt x="1242" y="417" on="0"/>
- <pt x="1242" y="603" on="1"/>
- <pt x="1240" y="660" on="1"/>
- <pt x="1239" y="719" on="0"/>
- <pt x="1175" y="719" on="1"/>
- <pt x="1163" y="719" on="0"/>
- <pt x="1125" y="722" on="1"/>
- <pt x="1091" y="724" on="1"/>
- <pt x="1072" y="725" on="1"/>
- <pt x="1072" y="786" on="1"/>
- <pt x="1541" y="786" on="1"/>
- <pt x="1541" y="725" on="1"/>
- <pt x="1520" y="724" on="1"/>
- <pt x="1440" y="720" on="1"/>
- <pt x="1398" y="718" on="0"/>
- <pt x="1391" y="698" on="1"/>
- <pt x="1384" y="680" on="0"/>
- <pt x="1384" y="641" on="1"/>
- <pt x="1384" y="472" on="0"/>
- <pt x="1198" y="236" on="1"/>
- <pt x="1203" y="231" on="1"/>
- <pt x="1209" y="224" on="1"/>
- <pt x="1219" y="214" on="0"/>
- <pt x="1225" y="207" on="1"/>
- <pt x="1228" y="204" on="1"/>
- <pt x="1240" y="192" on="1"/>
- <pt x="1252" y="178" on="0"/>
- <pt x="1269" y="161" on="1"/>
- <pt x="1301" y="127" on="0"/>
- <pt x="1321" y="110" on="1"/>
- <pt x="1368" y="72" on="0"/>
- <pt x="1424" y="69" on="1"/>
- <pt x="1515" y="63" on="1"/>
- <pt x="1528" y="62" on="1"/>
- <pt x="1528" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1013" y="155" on="1"/>
- <pt x="775" y="432" on="0"/>
- <pt x="513" y="835" on="1"/>
- <pt x="417" y="787" on="0"/>
- <pt x="368" y="724" on="1"/>
- <pt x="297" y="633" on="0"/>
- <pt x="297" y="494" on="1"/>
- <pt x="297" y="306" on="0"/>
- <pt x="414" y="191" on="1"/>
- <pt x="531" y="75" on="0"/>
- <pt x="723" y="75" on="1"/>
- <pt x="879" y="75" on="0"/>
- </contour>
- <contour>
- <pt x="702" y="896" on="1"/>
- <pt x="800" y="961" on="0"/>
- <pt x="848" y="1028" on="1"/>
- <pt x="920" y="1125" on="0"/>
- <pt x="920" y="1250" on="1"/>
- <pt x="920" y="1450" on="0"/>
- <pt x="742" y="1450" on="1"/>
- <pt x="656" y="1450" on="0"/>
- <pt x="606" y="1396" on="1"/>
- <pt x="555" y="1343" on="0"/>
- <pt x="555" y="1254" on="1"/>
- <pt x="555" y="1116" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 0 0 83 17 17 75 15 3 48 84 17 0 3 2 1 77 67 25 11 4 0 39 3 0 65
- 63 49 41 38 31 29 1 8 39 0 3 40 39 1 64 0 1 2 0 14 0 0 87 5 13
- 81 16 21 71 5 7 48 196 77 67 65 64 63 49 41 40 39 38 31 29 25 21 13 11 7
- 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="anoteleia" xMin="133" yMin="491" xMax="380" yMax="738">
- <contour>
- <pt x="133" y="491" on="1"/>
- <pt x="133" y="738" on="1"/>
- <pt x="380" y="738" on="1"/>
- <pt x="380" y="491" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 3 0 6 1 1 1 4 48 84 2 1 1 0 14 0 0 3 2 6 1 0 1 4
- 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="aogonek" xMin="75" yMin="-370" xMax="917" yMax="1110">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="ogonek" x="392" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="aring" xMin="75" yMin="-25" xMax="904" yMax="1737">
- <contour>
- <pt x="629" y="149" on="1"/>
- <pt x="513" y="-25" on="0"/>
- <pt x="344" y="-25" on="1"/>
- <pt x="221" y="-25" on="0"/>
- <pt x="148" y="55" on="1"/>
- <pt x="75" y="136" on="0"/>
- <pt x="75" y="273" on="1"/>
- <pt x="75" y="642" on="0"/>
- <pt x="543" y="642" on="1"/>
- <pt x="584" y="642" on="1"/>
- <pt x="584" y="777" on="1"/>
- <pt x="584" y="940" on="0"/>
- <pt x="558" y="986" on="1"/>
- <pt x="532" y="1034" on="0"/>
- <pt x="445" y="1034" on="1"/>
- <pt x="361" y="1034" on="0"/>
- <pt x="327" y="996" on="1"/>
- <pt x="293" y="958" on="0"/>
- <pt x="293" y="863" on="1"/>
- <pt x="293" y="845" on="1"/>
- <pt x="157" y="845" on="1"/>
- <pt x="157" y="1019" on="1"/>
- <pt x="305" y="1110" on="0"/>
- <pt x="473" y="1110" on="1"/>
- <pt x="639" y="1110" on="0"/>
- <pt x="710" y="1036" on="1"/>
- <pt x="781" y="962" on="0"/>
- <pt x="781" y="785" on="1"/>
- <pt x="781" y="301" on="1"/>
- <pt x="781" y="156" on="0"/>
- <pt x="794" y="110" on="1"/>
- <pt x="807" y="65" on="0"/>
- <pt x="847" y="65" on="1"/>
- <pt x="863" y="65" on="0"/>
- <pt x="898" y="74" on="1"/>
- <pt x="904" y="0" on="1"/>
- <pt x="828" y="-25" on="0"/>
- <pt x="792" y="-25" on="1"/>
- <pt x="668" y="-25" on="0"/>
- </contour>
- <contour>
- <pt x="584" y="171" on="1"/>
- <pt x="584" y="580" on="1"/>
- <pt x="538" y="580" on="1"/>
- <pt x="288" y="580" on="0"/>
- <pt x="288" y="312" on="1"/>
- <pt x="288" y="93" on="0"/>
- <pt x="431" y="93" on="1"/>
- <pt x="503" y="93" on="0"/>
- </contour>
- <contour>
- <pt x="475" y="1737" on="1"/>
- <pt x="569" y="1737" on="0"/>
- <pt x="635" y="1671" on="1"/>
- <pt x="702" y="1605" on="0"/>
- <pt x="702" y="1511" on="1"/>
- <pt x="702" y="1415" on="0"/>
- <pt x="635" y="1349" on="1"/>
- <pt x="569" y="1283" on="0"/>
- <pt x="473" y="1283" on="1"/>
- <pt x="390" y="1283" on="0"/>
- <pt x="328" y="1337" on="1"/>
- <pt x="248" y="1406" on="0"/>
- <pt x="248" y="1510" on="1"/>
- <pt x="248" y="1605" on="0"/>
- <pt x="314" y="1671" on="1"/>
- <pt x="381" y="1737" on="0"/>
- </contour>
- <contour>
- <pt x="475" y="1669" on="1"/>
- <pt x="409" y="1669" on="0"/>
- <pt x="363" y="1623" on="1"/>
- <pt x="316" y="1576" on="0"/>
- <pt x="316" y="1511" on="1"/>
- <pt x="316" y="1445" on="0"/>
- <pt x="362" y="1398" on="1"/>
- <pt x="409" y="1351" on="0"/>
- <pt x="473" y="1351" on="1"/>
- <pt x="534" y="1351" on="0"/>
- <pt x="578" y="1388" on="1"/>
- <pt x="634" y="1436" on="0"/>
- <pt x="634" y="1511" on="1"/>
- <pt x="634" y="1577" on="0"/>
- <pt x="588" y="1623" on="1"/>
- <pt x="541" y="1669" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 109 values pushed */
- 0 0 71 17 55 63 17 47 45 22 2 14 21 23 48 84 37 2 23 1 2 2 28 35 1
- 1 41 40 39 27 21 20 19 18 10 9 8 0 12 1 2 3 0 0 1 55 47 1 0 1
- 35 2 0 14 0 0 75 17 51 67 17 59 43 10 6 48 196 35 28 51 51 0 2 27 9
- 3 59 59 41 19 18 8 5 9 20 3 6 20 0 0 40 39 10 9 4 3 27 1 4 48
- 196 28 27 1 21 20 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- MDAP[1]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="asciicircum" xMin="36" yMin="592" xMax="924" yMax="1480">
- <contour>
- <pt x="36" y="592" on="1"/>
- <pt x="480" y="1480" on="1"/>
- <pt x="924" y="592" on="1"/>
- <pt x="797" y="592" on="1"/>
- <pt x="480" y="1224" on="1"/>
- <pt x="162" y="592" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 5 4 3 2 1 0 14 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="asciitilde" xMin="60" yMin="421" xMax="1047" yMax="763">
- <contour>
- <pt x="122" y="444" on="1"/>
- <pt x="60" y="444" on="1"/>
- <pt x="70" y="583" on="0"/>
- <pt x="115" y="656" on="1"/>
- <pt x="181" y="763" on="0"/>
- <pt x="324" y="763" on="1"/>
- <pt x="447" y="763" on="0"/>
- <pt x="582" y="648" on="1"/>
- <pt x="622" y="614" on="1"/>
- <pt x="728" y="524" on="0"/>
- <pt x="813" y="524" on="1"/>
- <pt x="899" y="524" on="0"/>
- <pt x="950" y="605" on="1"/>
- <pt x="984" y="659" on="0"/>
- <pt x="985" y="740" on="1"/>
- <pt x="1047" y="740" on="1"/>
- <pt x="1037" y="600" on="0"/>
- <pt x="992" y="528" on="1"/>
- <pt x="926" y="421" on="0"/>
- <pt x="783" y="421" on="1"/>
- <pt x="660" y="421" on="0"/>
- <pt x="525" y="536" on="1"/>
- <pt x="485" y="570" on="1"/>
- <pt x="378" y="661" on="0"/>
- <pt x="294" y="661" on="1"/>
- <pt x="208" y="661" on="0"/>
- <pt x="157" y="580" on="1"/>
- <pt x="123" y="526" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 21 values pushed */
- 0 0 24 41 5 10 41 19 48 84 19 15 14 5 1 0 14 15 14 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="asterisk" xMin="120" yMin="734" xMax="905" yMax="1480">
- <contour>
- <pt x="577" y="1152" on="1"/>
- <pt x="859" y="1282" on="1"/>
- <pt x="905" y="1142" on="1"/>
- <pt x="600" y="1081" on="1"/>
- <pt x="601" y="1085" on="0"/>
- <pt x="601" y="1090" on="1"/>
- <pt x="601" y="1094" on="1"/>
- <pt x="601" y="1097" on="1"/>
- <pt x="601" y="1126" on="0"/>
- </contour>
- <contour>
- <pt x="589" y="1049" on="1"/>
- <pt x="801" y="821" on="1"/>
- <pt x="681" y="734" on="1"/>
- <pt x="530" y="1005" on="1"/>
- <pt x="570" y="1015" on="0"/>
- </contour>
- <contour>
- <pt x="495" y="1005" on="1"/>
- <pt x="344" y="734" on="1"/>
- <pt x="224" y="821" on="1"/>
- <pt x="435" y="1049" on="1"/>
- <pt x="457" y="1013" on="0"/>
- </contour>
- <contour>
- <pt x="425" y="1081" on="1"/>
- <pt x="120" y="1142" on="1"/>
- <pt x="166" y="1282" on="1"/>
- <pt x="448" y="1152" on="1"/>
- <pt x="424" y="1125" on="0"/>
- <pt x="424" y="1097" on="1"/>
- <pt x="424" y="1094" on="1"/>
- <pt x="424" y="1090" on="1"/>
- <pt x="425" y="1085" on="0"/>
- </contour>
- <contour>
- <pt x="476" y="1172" on="1"/>
- <pt x="438" y="1480" on="1"/>
- <pt x="586" y="1480" on="1"/>
- <pt x="549" y="1172" on="1"/>
- <pt x="526" y="1181" on="0"/>
- <pt x="512" y="1181" on="1"/>
- <pt x="498" y="1181" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 70 values pushed */
- 33 1 33 31 28 26 25 24 22 21 20 7 6 5 2 1 0 15 29 1 3 0 1 1 19
- 17 16 15 14 12 11 10 9 3 10 1 2 3 0 0 30 29 0 14 31 30 29 28 26 25
- 24 22 21 20 19 17 16 15 14 12 11 10 9 7 6 5 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MDAP[1]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="at" xMin="140" yMin="-37" xMax="1747" yMax="1517">
- <contour>
- <pt x="1151" y="44" on="1"/>
- <pt x="969" y="-37" on="0"/>
- <pt x="802" y="-37" on="1"/>
- <pt x="517" y="-37" on="0"/>
- <pt x="329" y="137" on="1"/>
- <pt x="140" y="310" on="0"/>
- <pt x="140" y="580" on="1"/>
- <pt x="140" y="913" on="0"/>
- <pt x="386" y="1195" on="1"/>
- <pt x="668" y="1517" on="0"/>
- <pt x="1080" y="1517" on="1"/>
- <pt x="1367" y="1517" on="0"/>
- <pt x="1557" y="1337" on="1"/>
- <pt x="1747" y="1158" on="0"/>
- <pt x="1747" y="889" on="1"/>
- <pt x="1747" y="651" on="0"/>
- <pt x="1597" y="473" on="1"/>
- <pt x="1448" y="295" on="0"/>
- <pt x="1247" y="295" on="1"/>
- <pt x="1073" y="295" on="0"/>
- <pt x="1073" y="435" on="1"/>
- <pt x="1073" y="475" on="0"/>
- <pt x="1082" y="507" on="1"/>
- <pt x="1106" y="593" on="1"/>
- <pt x="1115" y="635" on="1"/>
- <pt x="1094" y="635" on="1"/>
- <pt x="1000" y="480" on="0"/>
- <pt x="922" y="404" on="1"/>
- <pt x="812" y="296" on="0"/>
- <pt x="703" y="296" on="1"/>
- <pt x="524" y="296" on="0"/>
- <pt x="524" y="529" on="1"/>
- <pt x="524" y="766" on="0"/>
- <pt x="690" y="970" on="1"/>
- <pt x="856" y="1173" on="0"/>
- <pt x="1051" y="1173" on="1"/>
- <pt x="1093" y="1173" on="0"/>
- <pt x="1133" y="1162" on="1"/>
- <pt x="1214" y="1140" on="1"/>
- <pt x="1216" y="1139" on="0"/>
- <pt x="1220" y="1138" on="1"/>
- <pt x="1224" y="1137" on="1"/>
- <pt x="1229" y="1136" on="1"/>
- <pt x="1237" y="1134" on="0"/>
- <pt x="1241" y="1133" on="1"/>
- <pt x="1336" y="1133" on="1"/>
- <pt x="1220" y="560" on="1"/>
- <pt x="1209" y="506" on="0"/>
- <pt x="1209" y="463" on="1"/>
- <pt x="1209" y="370" on="0"/>
- <pt x="1311" y="370" on="1"/>
- <pt x="1450" y="370" on="0"/>
- <pt x="1567" y="537" on="1"/>
- <pt x="1685" y="705" on="0"/>
- <pt x="1685" y="901" on="1"/>
- <pt x="1685" y="1136" on="0"/>
- <pt x="1509" y="1296" on="1"/>
- <pt x="1332" y="1456" on="0"/>
- <pt x="1075" y="1456" on="1"/>
- <pt x="740" y="1456" on="0"/>
- <pt x="471" y="1189" on="1"/>
- <pt x="202" y="922" on="0"/>
- <pt x="202" y="592" on="1"/>
- <pt x="202" y="343" on="0"/>
- <pt x="372" y="184" on="1"/>
- <pt x="542" y="25" on="0"/>
- <pt x="801" y="25" on="1"/>
- <pt x="956" y="25" on="0"/>
- <pt x="1129" y="100" on="1"/>
- </contour>
- <contour>
- <pt x="1124" y="819" on="1"/>
- <pt x="1166" y="1030" on="1"/>
- <pt x="1081" y="1073" on="0"/>
- <pt x="989" y="1073" on="1"/>
- <pt x="850" y="1073" on="0"/>
- <pt x="760" y="931" on="1"/>
- <pt x="669" y="789" on="0"/>
- <pt x="669" y="581" on="1"/>
- <pt x="669" y="419" on="0"/>
- <pt x="760" y="419" on="1"/>
- <pt x="836" y="419" on="0"/>
- <pt x="926" y="519" on="1"/>
- <pt x="1011" y="615" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 76 values pushed */
- 0 0 78 22 29 72 9 35 66 11 2 58 11 10 50 21 18 48 84 10 0 2 2 35 29
- 18 1 1 70 69 68 45 44 35 29 25 24 23 18 0 12 0 2 3 0 0 14 0 0 76
- 47 31 62 11 6 54 11 14 48 48 20 48 196 70 69 68 45 44 31 25 24 23 20 14 6
- 0
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="atilde" xMin="75" yMin="-25" xMax="904" yMax="1518">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="tilde" x="119" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="b" xMin="0" yMin="-25" xMax="956" yMax="1579">
- <contour>
- <pt x="121" y="-12" on="1"/>
- <pt x="121" y="1320" on="1"/>
- <pt x="119" y="1419" on="1"/>
- <pt x="119" y="1487" on="0"/>
- <pt x="94" y="1501" on="1"/>
- <pt x="72" y="1513" on="0"/>
- <pt x="19" y="1516" on="1"/>
- <pt x="0" y="1517" on="1"/>
- <pt x="0" y="1579" on="1"/>
- <pt x="318" y="1579" on="1"/>
- <pt x="318" y="907" on="1"/>
- <pt x="377" y="999" on="0"/>
- <pt x="432" y="1044" on="1"/>
- <pt x="512" y="1110" on="0"/>
- <pt x="610" y="1110" on="1"/>
- <pt x="770" y="1110" on="0"/>
- <pt x="863" y="968" on="1"/>
- <pt x="956" y="826" on="0"/>
- <pt x="956" y="575" on="1"/>
- <pt x="956" y="293" on="0"/>
- <pt x="835" y="134" on="1"/>
- <pt x="714" y="-25" on="0"/>
- <pt x="503" y="-25" on="1"/>
- <pt x="429" y="-25" on="0"/>
- <pt x="318" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="318" y="77" on="1"/>
- <pt x="399" y="54" on="0"/>
- <pt x="449" y="54" on="1"/>
- <pt x="585" y="54" on="0"/>
- <pt x="664" y="181" on="1"/>
- <pt x="743" y="308" on="0"/>
- <pt x="743" y="536" on="1"/>
- <pt x="743" y="983" on="0"/>
- <pt x="542" y="983" on="1"/>
- <pt x="449" y="983" on="0"/>
- <pt x="318" y="837" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 73 values pushed */
- 0 0 33 29 14 27 21 22 48 84 22 2 14 1 1 7 1 2 8 1 3 0 1 1 35
- 25 10 3 1 2 3 0 0 1 24 0 2 0 9 8 1 0 14 0 0 31 10 18 48 196
- 18 9 8 7 0 0 0 35 25 24 10 9 4 4 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="backslash" xMin="-30" yMin="-296" xMax="600" yMax="1481">
- <contour>
- <pt x="600" y="-296" on="1"/>
- <pt x="496" y="-296" on="1"/>
- <pt x="-30" y="1481" on="1"/>
- <pt x="74" y="1481" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 9 values pushed */
- 3 2 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="bar" xMin="156" yMin="-296" xMax="255" yMax="1579">
- <contour>
- <pt x="156" y="-296" on="1"/>
- <pt x="156" y="1579" on="1"/>
- <pt x="255" y="1579" on="1"/>
- <pt x="255" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 3 2 1 0 14 0 0 3 2 9 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="braceleft" xMin="148" yMin="-296" xMax="761" yMax="1579">
- <contour>
- <pt x="148" y="611" on="1"/>
- <pt x="148" y="672" on="1"/>
- <pt x="226" y="672" on="1"/>
- <pt x="407" y="672" on="0"/>
- <pt x="407" y="840" on="1"/>
- <pt x="407" y="882" on="0"/>
- <pt x="393" y="953" on="1"/>
- <pt x="383" y="1003" on="1"/>
- <pt x="365" y="1100" on="1"/>
- <pt x="346" y="1202" on="0"/>
- <pt x="346" y="1268" on="1"/>
- <pt x="346" y="1403" on="0"/>
- <pt x="446" y="1491" on="1"/>
- <pt x="546" y="1579" on="0"/>
- <pt x="701" y="1579" on="1"/>
- <pt x="761" y="1579" on="1"/>
- <pt x="761" y="1517" on="1"/>
- <pt x="701" y="1517" on="1"/>
- <pt x="506" y="1517" on="0"/>
- <pt x="506" y="1349" on="1"/>
- <pt x="506" y="1313" on="0"/>
- <pt x="513" y="1286" on="1"/>
- <pt x="525" y="1239" on="1"/>
- <pt x="539" y="1169" on="1"/>
- <pt x="557" y="1079" on="0"/>
- <pt x="557" y="990" on="1"/>
- <pt x="557" y="835" on="0"/>
- <pt x="476" y="740" on="1"/>
- <pt x="428" y="685" on="0"/>
- <pt x="337" y="642" on="1"/>
- <pt x="435" y="595" on="0"/>
- <pt x="485" y="532" on="1"/>
- <pt x="557" y="439" on="0"/>
- <pt x="557" y="291" on="1"/>
- <pt x="557" y="202" on="0"/>
- <pt x="539" y="114" on="1"/>
- <pt x="525" y="45" on="1"/>
- <pt x="513" y="-2" on="1"/>
- <pt x="506" y="-29" on="0"/>
- <pt x="506" y="-69" on="1"/>
- <pt x="506" y="-234" on="0"/>
- <pt x="701" y="-234" on="1"/>
- <pt x="761" y="-234" on="1"/>
- <pt x="761" y="-296" on="1"/>
- <pt x="701" y="-296" on="1"/>
- <pt x="546" y="-296" on="0"/>
- <pt x="446" y="-208" on="1"/>
- <pt x="346" y="-120" on="0"/>
- <pt x="346" y="17" on="1"/>
- <pt x="346" y="81" on="0"/>
- <pt x="365" y="183" on="1"/>
- <pt x="383" y="280" on="1"/>
- <pt x="393" y="330" on="1"/>
- <pt x="407" y="401" on="0"/>
- <pt x="407" y="443" on="1"/>
- <pt x="407" y="611" on="0"/>
- <pt x="226" y="611" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 45 values pushed */
- 56 44 43 42 41 29 22 17 16 15 14 2 1 0 14 0 0 39 24 48 19 24 10 48 196
- 56 54 48 44 43 42 41 33 29 25 22 17 16 15 14 10 4 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="braceright" xMin="222" yMin="-296" xMax="835" yMax="1579">
- <contour>
- <pt x="835" y="672" on="1"/>
- <pt x="835" y="611" on="1"/>
- <pt x="758" y="611" on="1"/>
- <pt x="576" y="611" on="0"/>
- <pt x="576" y="444" on="1"/>
- <pt x="576" y="399" on="0"/>
- <pt x="590" y="330" on="1"/>
- <pt x="600" y="280" on="1"/>
- <pt x="618" y="183" on="1"/>
- <pt x="638" y="74" on="0"/>
- <pt x="638" y="16" on="1"/>
- <pt x="638" y="-120" on="0"/>
- <pt x="538" y="-208" on="1"/>
- <pt x="438" y="-296" on="0"/>
- <pt x="283" y="-296" on="1"/>
- <pt x="222" y="-296" on="1"/>
- <pt x="222" y="-234" on="1"/>
- <pt x="282" y="-234" on="1"/>
- <pt x="478" y="-234" on="0"/>
- <pt x="478" y="-68" on="1"/>
- <pt x="478" y="-34" on="0"/>
- <pt x="470" y="-2" on="1"/>
- <pt x="458" y="45" on="1"/>
- <pt x="445" y="114" on="1"/>
- <pt x="427" y="209" on="0"/>
- <pt x="427" y="293" on="1"/>
- <pt x="427" y="448" on="0"/>
- <pt x="508" y="543" on="1"/>
- <pt x="556" y="598" on="0"/>
- <pt x="647" y="642" on="1"/>
- <pt x="549" y="688" on="0"/>
- <pt x="499" y="752" on="1"/>
- <pt x="427" y="844" on="0"/>
- <pt x="427" y="992" on="1"/>
- <pt x="427" y="1073" on="0"/>
- <pt x="445" y="1169" on="1"/>
- <pt x="458" y="1239" on="1"/>
- <pt x="470" y="1286" on="1"/>
- <pt x="478" y="1318" on="0"/>
- <pt x="478" y="1352" on="1"/>
- <pt x="478" y="1517" on="0"/>
- <pt x="282" y="1517" on="1"/>
- <pt x="222" y="1517" on="1"/>
- <pt x="222" y="1579" on="1"/>
- <pt x="283" y="1579" on="1"/>
- <pt x="438" y="1579" on="0"/>
- <pt x="538" y="1491" on="1"/>
- <pt x="638" y="1403" on="0"/>
- <pt x="638" y="1266" on="1"/>
- <pt x="638" y="1209" on="0"/>
- <pt x="618" y="1100" on="1"/>
- <pt x="600" y="1003" on="1"/>
- <pt x="590" y="953" on="1"/>
- <pt x="576" y="884" on="0"/>
- <pt x="576" y="840" on="1"/>
- <pt x="576" y="672" on="0"/>
- <pt x="758" y="672" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 56 44 43 42 41 36 29 22 17 16 15 14 2 1 0 14 0 0 39 24 48 19 24 10 48
- 196 56 54 48 44 43 42 41 36 33 29 25 22 17 16 15 14 10 4 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="bracketleft" xMin="185" yMin="-296" xMax="589" yMax="1579">
- <contour>
- <pt x="185" y="-296" on="1"/>
- <pt x="185" y="1579" on="1"/>
- <pt x="589" y="1579" on="1"/>
- <pt x="589" y="1517" on="1"/>
- <pt x="358" y="1517" on="1"/>
- <pt x="358" y="-234" on="1"/>
- <pt x="589" y="-234" on="1"/>
- <pt x="589" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 0 0 4 3 14 1 1 6 5 14 1 0 2 4 48 84 2 1 1 7 0 1 2 0 14
- 7 6 3 2 4 13 4 0 0 5 4 13 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="bracketright" xMin="93" yMin="-296" xMax="497" yMax="1579">
- <contour>
- <pt x="93" y="-296" on="1"/>
- <pt x="93" y="-234" on="1"/>
- <pt x="325" y="-234" on="1"/>
- <pt x="325" y="1517" on="1"/>
- <pt x="93" y="1517" on="1"/>
- <pt x="93" y="1579" on="1"/>
- <pt x="497" y="1579" on="1"/>
- <pt x="497" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 0 0 4 3 14 1 5 2 1 14 1 0 2 4 48 84 6 5 1 7 0 1 2 0 14
- 5 4 1 0 4 13 2 0 0 3 2 13 1 6 1 4 48 196 7 6 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="breve" xMin="8" yMin="1283" xMax="674" yMax="1604">
- <contour>
- <pt x="8" y="1604" on="1"/>
- <pt x="73" y="1604" on="1"/>
- <pt x="100" y="1514" on="0"/>
- <pt x="160" y="1472" on="1"/>
- <pt x="228" y="1425" on="0"/>
- <pt x="341" y="1425" on="1"/>
- <pt x="467" y="1425" on="0"/>
- <pt x="537" y="1484" on="1"/>
- <pt x="586" y="1524" on="0"/>
- <pt x="610" y="1604" on="1"/>
- <pt x="674" y="1604" on="1"/>
- <pt x="655" y="1469" on="0"/>
- <pt x="583" y="1388" on="1"/>
- <pt x="489" y="1283" on="0"/>
- <pt x="341" y="1283" on="1"/>
- <pt x="187" y="1283" on="0"/>
- <pt x="92" y="1398" on="1"/>
- <pt x="27" y="1476" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 17 values pushed */
- 0 0 5 20 14 48 84 14 10 9 1 0 14 10 9 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="brokenbar" xMin="156" yMin="-296" xMax="255" yMax="1579">
- <contour>
- <pt x="156" y="-296" on="1"/>
- <pt x="156" y="444" on="1"/>
- <pt x="255" y="444" on="1"/>
- <pt x="255" y="-296" on="1"/>
- </contour>
- <contour>
- <pt x="156" y="839" on="1"/>
- <pt x="156" y="1579" on="1"/>
- <pt x="255" y="1579" on="1"/>
- <pt x="255" y="839" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 28 values pushed */
- 7 6 5 4 3 2 1 0 14 0 0 7 6 3 2 9 3 0 1 4 48 196 5 4 1
- 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="bullet" xMin="81" yMin="555" xMax="636" yMax="1110">
- <contour>
- <pt x="359" y="1110" on="1"/>
- <pt x="474" y="1110" on="0"/>
- <pt x="555" y="1028" on="1"/>
- <pt x="636" y="946" on="0"/>
- <pt x="636" y="831" on="1"/>
- <pt x="636" y="717" on="0"/>
- <pt x="554" y="636" on="1"/>
- <pt x="472" y="555" on="0"/>
- <pt x="354" y="555" on="1"/>
- <pt x="255" y="555" on="0"/>
- <pt x="179" y="621" on="1"/>
- <pt x="81" y="707" on="0"/>
- <pt x="81" y="833" on="1"/>
- <pt x="81" y="948" on="0"/>
- <pt x="163" y="1029" on="1"/>
- <pt x="244" y="1110" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 15 values pushed */
- 0 0 0 8 48 84 8 14 0 0 4 12 48 196 12
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="c" xMin="68" yMin="-25" xMax="848" yMax="1110">
- <contour>
- <pt x="848" y="37" on="1"/>
- <pt x="696" y="-25" on="0"/>
- <pt x="568" y="-25" on="1"/>
- <pt x="350" y="-25" on="0"/>
- <pt x="209" y="137" on="1"/>
- <pt x="68" y="298" on="0"/>
- <pt x="68" y="550" on="1"/>
- <pt x="68" y="800" on="0"/>
- <pt x="202" y="955" on="1"/>
- <pt x="336" y="1110" on="0"/>
- <pt x="557" y="1110" on="1"/>
- <pt x="689" y="1110" on="0"/>
- <pt x="848" y="1061" on="1"/>
- <pt x="848" y="802" on="1"/>
- <pt x="724" y="802" on="1"/>
- <pt x="724" y="820" on="1"/>
- <pt x="724" y="1043" on="0"/>
- <pt x="557" y="1043" on="1"/>
- <pt x="434" y="1043" on="0"/>
- <pt x="359" y="914" on="1"/>
- <pt x="284" y="786" on="0"/>
- <pt x="284" y="577" on="1"/>
- <pt x="284" y="339" on="0"/>
- <pt x="377" y="206" on="1"/>
- <pt x="470" y="73" on="0"/>
- <pt x="632" y="73" on="1"/>
- <pt x="710" y="73" on="0"/>
- <pt x="848" y="123" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 46 values pushed */
- 0 0 25 9 2 17 17 10 48 84 10 1 2 2 1 1 27 15 14 13 12 0 6 1 2
- 3 0 0 14 0 0 21 10 6 48 196 15 14 6 0 27 13 12 0 3 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="cacute" xMin="68" yMin="-25" xMax="907" yMax="1604">
- <component glyphName="c" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="316" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="caron" xMin="-10" yMin="1283" xMax="693" yMax="1604">
- <contour>
- <pt x="693" y="1604" on="1"/>
- <pt x="453" y="1283" on="1"/>
- <pt x="231" y="1283" on="1"/>
- <pt x="-10" y="1604" on="1"/>
- <pt x="76" y="1604" on="1"/>
- <pt x="342" y="1382" on="1"/>
- <pt x="607" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 6 5 4 3 0 5 13 1 2 1 1 0 14 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ccaron" xMin="68" yMin="-25" xMax="909" yMax="1604">
- <component glyphName="c" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="216" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ccedilla" xMin="68" yMin="-432" xMax="848" yMax="1110">
- <component glyphName="c" x="0" y="0" flags="0x4"/>
- <component glyphName="cedilla" x="198" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ccircumflex" xMin="68" yMin="-25" xMax="909" yMax="1604">
- <contour>
- <pt x="848" y="37" on="1"/>
- <pt x="696" y="-25" on="0"/>
- <pt x="568" y="-25" on="1"/>
- <pt x="350" y="-25" on="0"/>
- <pt x="209" y="137" on="1"/>
- <pt x="68" y="298" on="0"/>
- <pt x="68" y="550" on="1"/>
- <pt x="68" y="800" on="0"/>
- <pt x="202" y="955" on="1"/>
- <pt x="336" y="1110" on="0"/>
- <pt x="557" y="1110" on="1"/>
- <pt x="689" y="1110" on="0"/>
- <pt x="848" y="1061" on="1"/>
- <pt x="848" y="802" on="1"/>
- <pt x="724" y="802" on="1"/>
- <pt x="724" y="820" on="1"/>
- <pt x="724" y="1043" on="0"/>
- <pt x="557" y="1043" on="1"/>
- <pt x="434" y="1043" on="0"/>
- <pt x="359" y="914" on="1"/>
- <pt x="284" y="786" on="0"/>
- <pt x="284" y="577" on="1"/>
- <pt x="284" y="339" on="0"/>
- <pt x="377" y="206" on="1"/>
- <pt x="470" y="73" on="0"/>
- <pt x="632" y="73" on="1"/>
- <pt x="710" y="73" on="0"/>
- <pt x="848" y="123" on="1"/>
- </contour>
- <contour>
- <pt x="206" y="1283" on="1"/>
- <pt x="447" y="1604" on="1"/>
- <pt x="669" y="1604" on="1"/>
- <pt x="909" y="1283" on="1"/>
- <pt x="823" y="1283" on="1"/>
- <pt x="558" y="1505" on="1"/>
- <pt x="292" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 78 values pushed */
- 0 0 25 9 2 17 17 10 48 84 10 1 2 2 1 33 29 0 2 0 1 1 34 32 31
- 28 4 0 1 3 0 0 1 1 27 15 14 13 12 0 6 1 2 3 0 0 30 29 1 0
- 14 0 0 21 10 6 48 196 31 0 34 33 32 30 29 28 15 14 8 13 6 0 27 13 12
- 0 3 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="cdotaccent" xMin="68" yMin="-25" xMax="848" yMax="1480">
- <contour>
- <pt x="848" y="37" on="1"/>
- <pt x="696" y="-25" on="0"/>
- <pt x="568" y="-25" on="1"/>
- <pt x="350" y="-25" on="0"/>
- <pt x="209" y="137" on="1"/>
- <pt x="68" y="298" on="0"/>
- <pt x="68" y="550" on="1"/>
- <pt x="68" y="800" on="0"/>
- <pt x="202" y="955" on="1"/>
- <pt x="336" y="1110" on="0"/>
- <pt x="557" y="1110" on="1"/>
- <pt x="689" y="1110" on="0"/>
- <pt x="848" y="1061" on="1"/>
- <pt x="848" y="802" on="1"/>
- <pt x="724" y="802" on="1"/>
- <pt x="724" y="820" on="1"/>
- <pt x="724" y="1043" on="0"/>
- <pt x="557" y="1043" on="1"/>
- <pt x="434" y="1043" on="0"/>
- <pt x="359" y="914" on="1"/>
- <pt x="284" y="786" on="0"/>
- <pt x="284" y="577" on="1"/>
- <pt x="284" y="339" on="0"/>
- <pt x="377" y="206" on="1"/>
- <pt x="470" y="73" on="0"/>
- <pt x="632" y="73" on="1"/>
- <pt x="710" y="73" on="0"/>
- <pt x="848" y="123" on="1"/>
- </contour>
- <contour>
- <pt x="463" y="1283" on="1"/>
- <pt x="463" y="1480" on="1"/>
- <pt x="660" y="1480" on="1"/>
- <pt x="660" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 79 values pushed */
- 0 0 25 9 2 17 17 10 48 84 10 1 2 2 1 1 27 15 14 13 12 0 6 1 2
- 3 0 0 0 0 31 28 5 1 29 1 4 48 84 30 29 0 14 0 0 21 10 6 48 196
- 15 14 2 0 30 3 6 28 0 0 29 28 4 1 30 1 4 48 196 31 30 1 27 13 12
- 0 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="cedilla" xMin="168" yMin="-432" xMax="514" yMax="0">
- <contour>
- <pt x="168" y="-411" on="1"/>
- <pt x="168" y="-343" on="1"/>
- <pt x="230" y="-359" on="0"/>
- <pt x="269" y="-359" on="1"/>
- <pt x="376" y="-359" on="0"/>
- <pt x="376" y="-277" on="1"/>
- <pt x="376" y="-179" on="0"/>
- <pt x="189" y="-175" on="1"/>
- <pt x="284" y="0" on="1"/>
- <pt x="363" y="0" on="1"/>
- <pt x="297" y="-119" on="1"/>
- <pt x="394" y="-127" on="0"/>
- <pt x="441" y="-152" on="1"/>
- <pt x="514" y="-189" on="0"/>
- <pt x="514" y="-266" on="1"/>
- <pt x="514" y="-336" on="0"/>
- <pt x="456" y="-384" on="1"/>
- <pt x="399" y="-432" on="0"/>
- <pt x="312" y="-432" on="1"/>
- <pt x="244" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 29 values pushed */
- 0 0 3 17 18 48 84 18 10 9 8 7 1 0 14 0 0 5 48 14 48 196 14 10 9
- 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="cent" xMin="123" yMin="0" xMax="962" yMax="1480">
- <contour>
- <pt x="598" y="0" on="1"/>
- <pt x="598" y="176" on="1"/>
- <pt x="402" y="198" on="0"/>
- <pt x="282" y="322" on="1"/>
- <pt x="123" y="484" on="0"/>
- <pt x="123" y="751" on="1"/>
- <pt x="123" y="1011" on="0"/>
- <pt x="260" y="1154" on="1"/>
- <pt x="340" y="1238" on="0"/>
- <pt x="455" y="1276" on="1"/>
- <pt x="503" y="1292" on="0"/>
- <pt x="598" y="1308" on="1"/>
- <pt x="598" y="1480" on="1"/>
- <pt x="660" y="1480" on="1"/>
- <pt x="660" y="1313" on="1"/>
- <pt x="820" y="1299" on="0"/>
- <pt x="962" y="1252" on="1"/>
- <pt x="962" y="999" on="1"/>
- <pt x="851" y="999" on="1"/>
- <pt x="850" y="1018" on="1"/>
- <pt x="848" y="1043" on="1"/>
- <pt x="848" y="1053" on="0"/>
- <pt x="847" y="1063" on="1"/>
- <pt x="846" y="1074" on="1"/>
- <pt x="846" y="1083" on="0"/>
- <pt x="846" y="1091" on="1"/>
- <pt x="844" y="1169" on="0"/>
- <pt x="806" y="1201" on="1"/>
- <pt x="766" y="1234" on="0"/>
- <pt x="660" y="1242" on="1"/>
- <pt x="660" y="273" on="1"/>
- <pt x="692" y="270" on="0"/>
- <pt x="709" y="270" on="1"/>
- <pt x="800" y="270" on="0"/>
- <pt x="962" y="331" on="1"/>
- <pt x="962" y="234" on="1"/>
- <pt x="825" y="181" on="0"/>
- <pt x="660" y="171" on="1"/>
- <pt x="660" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="598" y="280" on="1"/>
- <pt x="598" y="1243" on="1"/>
- <pt x="535" y="1225" on="0"/>
- <pt x="504" y="1205" on="1"/>
- <pt x="333" y="1093" on="0"/>
- <pt x="333" y="733" on="1"/>
- <pt x="333" y="497" on="0"/>
- <pt x="429" y="382" on="1"/>
- <pt x="471" y="332" on="0"/>
- <pt x="523" y="307" on="1"/>
- <pt x="548" y="295" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 61 values pushed */
- 40 39 38 37 35 34 32 30 29 18 17 16 14 13 12 11 1 0 14 0 0 44 10 5 48
- 196 18 16 13 2 5 0 0 0 40 39 12 11 1 0 11 5 13 1 4 48 196 35 34 17
- 16 3 38 37 30 29 14 13 5 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="circumflex" xMin="-10" yMin="1283" xMax="693" yMax="1604">
- <contour>
- <pt x="-10" y="1283" on="1"/>
- <pt x="231" y="1604" on="1"/>
- <pt x="453" y="1604" on="1"/>
- <pt x="693" y="1283" on="1"/>
- <pt x="607" y="1283" on="1"/>
- <pt x="342" y="1505" on="1"/>
- <pt x="76" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 27 values pushed */
- 1 5 1 0 2 0 1 6 4 3 0 4 13 0 0 2 1 1 0 14 6 5 4 3 2
- 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="colon" xMin="161" yMin="0" xMax="408" yMax="1086">
- <contour>
- <pt x="161" y="0" on="1"/>
- <pt x="161" y="247" on="1"/>
- <pt x="408" y="247" on="1"/>
- <pt x="408" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="161" y="839" on="1"/>
- <pt x="161" y="1086" on="1"/>
- <pt x="408" y="1086" on="1"/>
- <pt x="408" y="839" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 43 values pushed */
- 0 0 7 4 6 1 5 2 1 6 1 0 2 4 48 84 3 0 1 0 6 5 1 14 0
- 0 7 6 3 2 6 3 0 1 4 48 196 5 4 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="comma" xMin="133" yMin="-321" xMax="380" yMax="247">
- <contour>
- <pt x="232" y="0" on="1"/>
- <pt x="133" y="0" on="1"/>
- <pt x="133" y="247" on="1"/>
- <pt x="380" y="247" on="1"/>
- <pt x="380" y="32" on="1"/>
- <pt x="380" y="-107" on="0"/>
- <pt x="363" y="-151" on="1"/>
- <pt x="341" y="-216" on="0"/>
- <pt x="270" y="-270" on="1"/>
- <pt x="210" y="-317" on="0"/>
- <pt x="133" y="-321" on="1"/>
- <pt x="133" y="-259" on="1"/>
- <pt x="232" y="-251" on="0"/>
- <pt x="232" y="-65" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 37 values pushed */
- 13 11 10 4 1 0 6 13 2 3 2 1 0 14 13 0 2 3 1 3 0 0 4 3 6
- 1 1 1 4 48 196 11 10 2 1 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="copyright" xMin="87" yMin="49" xMax="1469" yMax="1431">
- <contour>
- <pt x="779" y="1431" on="1"/>
- <pt x="1063" y="1431" on="0"/>
- <pt x="1266" y="1229" on="1"/>
- <pt x="1469" y="1027" on="0"/>
- <pt x="1469" y="741" on="1"/>
- <pt x="1469" y="452" on="0"/>
- <pt x="1265" y="251" on="1"/>
- <pt x="1062" y="49" on="0"/>
- <pt x="770" y="49" on="1"/>
- <pt x="519" y="49" on="0"/>
- <pt x="331" y="213" on="1"/>
- <pt x="87" y="426" on="0"/>
- <pt x="87" y="740" on="1"/>
- <pt x="87" y="1027" on="0"/>
- <pt x="290" y="1229" on="1"/>
- <pt x="493" y="1431" on="0"/>
- </contour>
- <contour>
- <pt x="778" y="1369" on="1"/>
- <pt x="518" y="1369" on="0"/>
- <pt x="334" y="1185" on="1"/>
- <pt x="149" y="1001" on="0"/>
- <pt x="149" y="740" on="1"/>
- <pt x="149" y="483" on="0"/>
- <pt x="333" y="297" on="1"/>
- <pt x="516" y="111" on="0"/>
- <pt x="773" y="111" on="1"/>
- <pt x="1010" y="111" on="0"/>
- <pt x="1184" y="259" on="1"/>
- <pt x="1407" y="450" on="0"/>
- <pt x="1407" y="742" on="1"/>
- <pt x="1407" y="1002" on="0"/>
- <pt x="1222" y="1185" on="1"/>
- <pt x="1037" y="1369" on="0"/>
- </contour>
- <contour>
- <pt x="1071" y="364" on="1"/>
- <pt x="939" y="313" on="0"/>
- <pt x="800" y="313" on="1"/>
- <pt x="594" y="313" on="0"/>
- <pt x="480" y="426" on="1"/>
- <pt x="365" y="539" on="0"/>
- <pt x="365" y="741" on="1"/>
- <pt x="365" y="944" on="0"/>
- <pt x="477" y="1056" on="1"/>
- <pt x="589" y="1168" on="0"/>
- <pt x="796" y="1168" on="1"/>
- <pt x="916" y="1168" on="0"/>
- <pt x="1057" y="1132" on="1"/>
- <pt x="1057" y="964" on="1"/>
- <pt x="975" y="964" on="1"/>
- <pt x="975" y="974" on="1"/>
- <pt x="975" y="1049" on="0"/>
- <pt x="934" y="1081" on="1"/>
- <pt x="893" y="1113" on="0"/>
- <pt x="799" y="1113" on="1"/>
- <pt x="545" y="1113" on="0"/>
- <pt x="545" y="745" on="1"/>
- <pt x="545" y="381" on="0"/>
- <pt x="834" y="381" on="1"/>
- <pt x="936" y="381" on="0"/>
- <pt x="1071" y="442" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 67 values pushed */
- 0 0 55 17 34 51 25 42 24 11 8 16 11 0 48 84 8 2 0 0 42 34 1 1 57
- 47 46 45 44 42 34 32 8 0 2 3 0 0 14 0 0 53 16 38 28 11 4 20 11 12
- 48 196 57 32 2 13 4 44 47 46 38 12 44 45 44 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="currency" xMin="130" yMin="414" xMax="893" yMax="1178">
- <contour>
- <pt x="322" y="545" on="1"/>
- <pt x="192" y="414" on="1"/>
- <pt x="130" y="476" on="1"/>
- <pt x="261" y="607" on="1"/>
- <pt x="197" y="695" on="0"/>
- <pt x="197" y="796" on="1"/>
- <pt x="197" y="898" on="0"/>
- <pt x="261" y="985" on="1"/>
- <pt x="130" y="1116" on="1"/>
- <pt x="192" y="1178" on="1"/>
- <pt x="322" y="1047" on="1"/>
- <pt x="415" y="1110" on="0"/>
- <pt x="512" y="1110" on="1"/>
- <pt x="609" y="1110" on="0"/>
- <pt x="701" y="1047" on="1"/>
- <pt x="832" y="1178" on="1"/>
- <pt x="893" y="1116" on="1"/>
- <pt x="762" y="985" on="1"/>
- <pt x="826" y="897" on="0"/>
- <pt x="826" y="796" on="1"/>
- <pt x="826" y="695" on="0"/>
- <pt x="762" y="607" on="1"/>
- <pt x="893" y="476" on="1"/>
- <pt x="832" y="414" on="1"/>
- <pt x="701" y="545" on="1"/>
- <pt x="610" y="482" on="0"/>
- <pt x="512" y="482" on="1"/>
- <pt x="415" y="482" on="0"/>
- </contour>
- <contour>
- <pt x="512" y="1012" on="1"/>
- <pt x="422" y="1012" on="0"/>
- <pt x="359" y="950" on="1"/>
- <pt x="296" y="887" on="0"/>
- <pt x="296" y="799" on="1"/>
- <pt x="296" y="716" on="0"/>
- <pt x="346" y="656" on="1"/>
- <pt x="410" y="580" on="0"/>
- <pt x="512" y="580" on="1"/>
- <pt x="603" y="580" on="0"/>
- <pt x="665" y="643" on="1"/>
- <pt x="727" y="705" on="0"/>
- <pt x="727" y="796" on="1"/>
- <pt x="727" y="887" on="0"/>
- <pt x="664" y="949" on="1"/>
- <pt x="601" y="1012" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 68 values pushed */
- 0 0 36 9 26 28 9 12 48 84 12 1 1 16 15 9 8 4 13 1 0 1 24 23 22
- 21 17 14 10 7 3 2 1 0 12 13 26 1 0 14 0 0 40 9 19 32 9 5 48 196
- 24 23 22 21 19 17 16 15 14 10 9 8 7 5 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="d" xMin="68" yMin="-25" xMax="1024" yMax="1579">
- <contour>
- <pt x="706" y="0" on="1"/>
- <pt x="706" y="179" on="1"/>
- <pt x="648" y="87" on="0"/>
- <pt x="592" y="41" on="1"/>
- <pt x="512" y="-25" on="0"/>
- <pt x="414" y="-25" on="1"/>
- <pt x="254" y="-25" on="0"/>
- <pt x="161" y="118" on="1"/>
- <pt x="68" y="260" on="0"/>
- <pt x="68" y="510" on="1"/>
- <pt x="68" y="793" on="0"/>
- <pt x="189" y="951" on="1"/>
- <pt x="310" y="1110" on="0"/>
- <pt x="523" y="1110" on="1"/>
- <pt x="597" y="1110" on="0"/>
- <pt x="706" y="1086" on="1"/>
- <pt x="706" y="1320" on="1"/>
- <pt x="704" y="1419" on="1"/>
- <pt x="703" y="1488" on="0"/>
- <pt x="679" y="1501" on="1"/>
- <pt x="657" y="1513" on="0"/>
- <pt x="604" y="1516" on="1"/>
- <pt x="585" y="1517" on="1"/>
- <pt x="585" y="1579" on="1"/>
- <pt x="903" y="1579" on="1"/>
- <pt x="903" y="259" on="1"/>
- <pt x="905" y="160" on="1"/>
- <pt x="905" y="92" on="0"/>
- <pt x="930" y="78" on="1"/>
- <pt x="953" y="66" on="0"/>
- <pt x="1006" y="63" on="1"/>
- <pt x="1024" y="62" on="1"/>
- <pt x="1024" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="706" y="1008" on="1"/>
- <pt x="626" y="1032" on="0"/>
- <pt x="576" y="1032" on="1"/>
- <pt x="439" y="1032" on="0"/>
- <pt x="360" y="905" on="1"/>
- <pt x="281" y="778" on="0"/>
- <pt x="281" y="550" on="1"/>
- <pt x="281" y="103" on="0"/>
- <pt x="482" y="103" on="1"/>
- <pt x="576" y="103" on="0"/>
- <pt x="706" y="248" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 78 values pushed */
- 0 0 41 29 5 35 21 13 48 84 13 1 5 2 1 22 16 2 23 1 3 0 1 43 33
- 31 25 15 1 6 1 0 3 0 24 23 1 32 0 1 2 0 14 0 0 39 10 9 48 196
- 32 31 2 13 24 23 22 9 0 0 0 43 33 16 15 1 0 4 5 24 1 4 48 196 25
- 24 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dagger" xMin="80" yMin="-296" xMax="944" yMax="1480">
- <contour>
- <pt x="413" y="-296" on="1"/>
- <pt x="462" y="857" on="1"/>
- <pt x="80" y="814" on="1"/>
- <pt x="80" y="962" on="1"/>
- <pt x="462" y="919" on="1"/>
- <pt x="413" y="1480" on="1"/>
- <pt x="610" y="1480" on="1"/>
- <pt x="561" y="919" on="1"/>
- <pt x="944" y="962" on="1"/>
- <pt x="944" y="814" on="1"/>
- <pt x="561" y="857" on="1"/>
- <pt x="610" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 42 values pushed */
- 1 10 9 8 7 4 3 2 1 8 5 2 3 0 11 0 1 0 6 5 0 14 11 10 7
- 6 5 4 1 0 8 8 2 3 9 8 1 3 2 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="daggerdbl" xMin="80" yMin="-296" xMax="944" yMax="1480">
- <contour>
- <pt x="413" y="-296" on="1"/>
- <pt x="462" y="265" on="1"/>
- <pt x="80" y="222" on="1"/>
- <pt x="80" y="370" on="1"/>
- <pt x="462" y="327" on="1"/>
- <pt x="462" y="857" on="1"/>
- <pt x="80" y="814" on="1"/>
- <pt x="80" y="962" on="1"/>
- <pt x="462" y="919" on="1"/>
- <pt x="413" y="1480" on="1"/>
- <pt x="610" y="1480" on="1"/>
- <pt x="561" y="919" on="1"/>
- <pt x="944" y="962" on="1"/>
- <pt x="944" y="814" on="1"/>
- <pt x="561" y="857" on="1"/>
- <pt x="561" y="327" on="1"/>
- <pt x="944" y="370" on="1"/>
- <pt x="944" y="222" on="1"/>
- <pt x="561" y="265" on="1"/>
- <pt x="610" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 1 18 17 16 15 14 13 12 11 8 7 6 5 4 3 2 1 16 9 2 3 0 19 0 1
- 0 10 9 0 14 19 10 2 12 11 3 9 0 2 1 2 3 0 0 18 15 14 11 9 3
- 1 1 4 48 196 17 16 13 12 3 8 5 4 1 3 7 6 3 2 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dcaron" xMin="68" yMin="-25" xMax="1298" yMax="1579">
- <contour>
- <pt x="706" y="179" on="1"/>
- <pt x="648" y="87" on="0"/>
- <pt x="592" y="41" on="1"/>
- <pt x="512" y="-25" on="0"/>
- <pt x="414" y="-25" on="1"/>
- <pt x="254" y="-25" on="0"/>
- <pt x="161" y="118" on="1"/>
- <pt x="68" y="260" on="0"/>
- <pt x="68" y="510" on="1"/>
- <pt x="68" y="793" on="0"/>
- <pt x="189" y="951" on="1"/>
- <pt x="310" y="1110" on="0"/>
- <pt x="523" y="1110" on="1"/>
- <pt x="597" y="1110" on="0"/>
- <pt x="706" y="1086" on="1"/>
- <pt x="706" y="1320" on="1"/>
- <pt x="704" y="1419" on="1"/>
- <pt x="703" y="1488" on="0"/>
- <pt x="679" y="1501" on="1"/>
- <pt x="657" y="1513" on="0"/>
- <pt x="604" y="1516" on="1"/>
- <pt x="585" y="1517" on="1"/>
- <pt x="585" y="1579" on="1"/>
- <pt x="903" y="1579" on="1"/>
- <pt x="903" y="259" on="1"/>
- <pt x="905" y="160" on="1"/>
- <pt x="905" y="92" on="0"/>
- <pt x="930" y="78" on="1"/>
- <pt x="953" y="66" on="0"/>
- <pt x="1006" y="63" on="1"/>
- <pt x="1024" y="62" on="1"/>
- <pt x="1024" y="0" on="1"/>
- <pt x="706" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="706" y="1008" on="1"/>
- <pt x="626" y="1032" on="0"/>
- <pt x="576" y="1032" on="1"/>
- <pt x="439" y="1032" on="0"/>
- <pt x="360" y="905" on="1"/>
- <pt x="281" y="778" on="0"/>
- <pt x="281" y="550" on="1"/>
- <pt x="281" y="103" on="0"/>
- <pt x="482" y="103" on="1"/>
- <pt x="576" y="103" on="0"/>
- <pt x="706" y="248" on="1"/>
- </contour>
- <contour>
- <pt x="1180" y="1382" on="1"/>
- <pt x="1101" y="1382" on="1"/>
- <pt x="1101" y="1579" on="1"/>
- <pt x="1298" y="1579" on="1"/>
- <pt x="1298" y="1408" on="1"/>
- <pt x="1298" y="1245" on="0"/>
- <pt x="1236" y="1180" on="1"/>
- <pt x="1188" y="1131" on="0"/>
- <pt x="1101" y="1125" on="1"/>
- <pt x="1101" y="1175" on="1"/>
- <pt x="1180" y="1181" on="0"/>
- <pt x="1180" y="1330" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 104 values pushed */
- 0 0 41 29 4 35 21 12 48 84 12 1 4 2 1 55 53 52 48 45 44 21 15 8 22
- 1 3 0 1 43 33 30 24 14 0 6 1 31 3 0 47 46 23 22 3 32 31 1 2 0
- 14 0 0 39 10 8 48 196 55 44 2 47 45 3 31 30 2 45 23 3 22 21 8 0 0
- 0 53 52 46 45 4 3 47 43 33 32 15 14 0 4 5 23 2 4 48 196 48 47 1 24
- 23 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dcroat" xMin="68" yMin="-25" xMax="1024" yMax="1579">
- <contour>
- <pt x="706" y="0" on="1"/>
- <pt x="706" y="179" on="1"/>
- <pt x="648" y="87" on="0"/>
- <pt x="592" y="41" on="1"/>
- <pt x="512" y="-25" on="0"/>
- <pt x="414" y="-25" on="1"/>
- <pt x="254" y="-25" on="0"/>
- <pt x="161" y="118" on="1"/>
- <pt x="68" y="260" on="0"/>
- <pt x="68" y="510" on="1"/>
- <pt x="68" y="793" on="0"/>
- <pt x="189" y="951" on="1"/>
- <pt x="310" y="1110" on="0"/>
- <pt x="523" y="1110" on="1"/>
- <pt x="597" y="1110" on="0"/>
- <pt x="706" y="1086" on="1"/>
- <pt x="706" y="1246" on="1"/>
- <pt x="410" y="1246" on="1"/>
- <pt x="410" y="1308" on="1"/>
- <pt x="706" y="1308" on="1"/>
- <pt x="706" y="1320" on="1"/>
- <pt x="704" y="1419" on="1"/>
- <pt x="703" y="1488" on="0"/>
- <pt x="679" y="1501" on="1"/>
- <pt x="657" y="1513" on="0"/>
- <pt x="604" y="1516" on="1"/>
- <pt x="585" y="1517" on="1"/>
- <pt x="585" y="1579" on="1"/>
- <pt x="903" y="1579" on="1"/>
- <pt x="903" y="1308" on="1"/>
- <pt x="1024" y="1308" on="1"/>
- <pt x="1024" y="1246" on="1"/>
- <pt x="903" y="1246" on="1"/>
- <pt x="903" y="259" on="1"/>
- <pt x="905" y="160" on="1"/>
- <pt x="905" y="92" on="0"/>
- <pt x="930" y="78" on="1"/>
- <pt x="953" y="66" on="0"/>
- <pt x="1006" y="63" on="1"/>
- <pt x="1024" y="62" on="1"/>
- <pt x="1024" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="706" y="1008" on="1"/>
- <pt x="626" y="1032" on="0"/>
- <pt x="576" y="1032" on="1"/>
- <pt x="439" y="1032" on="0"/>
- <pt x="360" y="905" on="1"/>
- <pt x="281" y="778" on="0"/>
- <pt x="281" y="550" on="1"/>
- <pt x="281" y="103" on="0"/>
- <pt x="482" y="103" on="1"/>
- <pt x="576" y="103" on="0"/>
- <pt x="706" y="248" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 104 values pushed */
- 0 0 49 29 5 43 21 13 48 84 13 1 5 2 26 20 2 27 18 3 1 51 41 39 33
- 15 1 6 1 0 3 0 0 0 32 31 17 16 14 3 18 1 4 48 84 28 27 1 30 29
- 19 18 3 40 0 1 3 0 14 0 0 47 10 9 48 196 40 39 31 30 4 13 28 27 26
- 18 17 4 13 9 0 0 0 51 41 20 19 16 15 1 0 4 7 28 1 4 48 196 33 32
- 29 28 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="degree" xMin="114" yMin="925" xMax="706" yMax="1517">
- <contour>
- <pt x="410" y="1517" on="1"/>
- <pt x="531" y="1517" on="0"/>
- <pt x="619" y="1430" on="1"/>
- <pt x="706" y="1344" on="0"/>
- <pt x="706" y="1222" on="1"/>
- <pt x="706" y="1098" on="0"/>
- <pt x="619" y="1012" on="1"/>
- <pt x="531" y="925" on="0"/>
- <pt x="406" y="925" on="1"/>
- <pt x="300" y="925" on="0"/>
- <pt x="219" y="995" on="1"/>
- <pt x="114" y="1087" on="0"/>
- <pt x="114" y="1221" on="1"/>
- <pt x="114" y="1344" on="0"/>
- <pt x="201" y="1430" on="1"/>
- <pt x="289" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="410" y="1431" on="1"/>
- <pt x="323" y="1431" on="0"/>
- <pt x="262" y="1370" on="1"/>
- <pt x="200" y="1308" on="0"/>
- <pt x="200" y="1221" on="1"/>
- <pt x="200" y="1136" on="0"/>
- <pt x="262" y="1074" on="1"/>
- <pt x="323" y="1012" on="0"/>
- <pt x="409" y="1012" on="1"/>
- <pt x="488" y="1012" on="0"/>
- <pt x="546" y="1062" on="1"/>
- <pt x="620" y="1125" on="0"/>
- <pt x="620" y="1222" on="1"/>
- <pt x="620" y="1309" on="0"/>
- <pt x="558" y="1370" on="1"/>
- <pt x="496" y="1431" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 28 values pushed */
- 0 0 24 8 16 7 0 48 84 0 0 1 8 0 0 14 0 0 28 8 4 20 8 12 48
- 196 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MDRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dieresis" xMin="57" yMin="1283" xMax="625" yMax="1456">
- <contour>
- <pt x="57" y="1283" on="1"/>
- <pt x="57" y="1456" on="1"/>
- <pt x="230" y="1456" on="1"/>
- <pt x="230" y="1283" on="1"/>
- </contour>
- <contour>
- <pt x="452" y="1283" on="1"/>
- <pt x="452" y="1456" on="1"/>
- <pt x="625" y="1456" on="1"/>
- <pt x="625" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 0 0 7 4 3 0 13 3 1 1 4 48 84 6 5 2 1 3 0 14 0 0 5 4 13
- 1 6 3 2 13 1 0 2 4 48 196 7 6 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="divide" xMin="84" yMin="99" xMax="1071" yMax="1086">
- <contour>
- <pt x="479" y="99" on="1"/>
- <pt x="479" y="296" on="1"/>
- <pt x="676" y="296" on="1"/>
- <pt x="676" y="99" on="1"/>
- </contour>
- <contour>
- <pt x="84" y="543" on="1"/>
- <pt x="84" y="642" on="1"/>
- <pt x="1071" y="642" on="1"/>
- <pt x="1071" y="543" on="1"/>
- </contour>
- <contour>
- <pt x="479" y="888" on="1"/>
- <pt x="479" y="1086" on="1"/>
- <pt x="676" y="1086" on="1"/>
- <pt x="676" y="888" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 60 values pushed */
- 0 0 11 8 5 1 9 7 4 9 1 5 2 1 5 1 0 3 4 48 84 6 5 1 3
- 0 1 2 0 10 9 1 14 7 6 2 13 2 5 4 0 0 0 11 10 3 2 4 3 0
- 1 4 48 196 9 8 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dollar" xMin="80" yMin="-123" xMax="931" yMax="1604">
- <contour>
- <pt x="495" y="-123" on="1"/>
- <pt x="495" y="0" on="1"/>
- <pt x="283" y="0" on="0"/>
- <pt x="80" y="86" on="1"/>
- <pt x="80" y="333" on="1"/>
- <pt x="191" y="333" on="1"/>
- <pt x="192" y="315" on="1"/>
- <pt x="194" y="279" on="0"/>
- <pt x="195" y="253" on="1"/>
- <pt x="195" y="247" on="1"/>
- <pt x="195" y="166" on="0"/>
- <pt x="267" y="116" on="1"/>
- <pt x="340" y="65" on="0"/>
- <pt x="456" y="65" on="1"/>
- <pt x="495" y="66" on="1"/>
- <pt x="495" y="673" on="1"/>
- <pt x="303" y="785" on="0"/>
- <pt x="224" y="875" on="1"/>
- <pt x="129" y="981" on="0"/>
- <pt x="129" y="1130" on="1"/>
- <pt x="129" y="1271" on="0"/>
- <pt x="213" y="1360" on="1"/>
- <pt x="275" y="1425" on="0"/>
- <pt x="379" y="1460" on="1"/>
- <pt x="417" y="1472" on="0"/>
- <pt x="495" y="1487" on="1"/>
- <pt x="495" y="1604" on="1"/>
- <pt x="556" y="1604" on="1"/>
- <pt x="557" y="1485" on="1"/>
- <pt x="728" y="1477" on="0"/>
- <pt x="913" y="1408" on="1"/>
- <pt x="913" y="1178" on="1"/>
- <pt x="802" y="1178" on="1"/>
- <pt x="801" y="1197" on="1"/>
- <pt x="799" y="1220" on="1"/>
- <pt x="799" y="1225" on="0"/>
- <pt x="798" y="1238" on="1"/>
- <pt x="797" y="1253" on="0"/>
- <pt x="797" y="1258" on="1"/>
- <pt x="797" y="1262" on="1"/>
- <pt x="797" y="1326" on="0"/>
- <pt x="748" y="1366" on="1"/>
- <pt x="687" y="1417" on="0"/>
- <pt x="576" y="1417" on="1"/>
- <pt x="557" y="1417" on="1"/>
- <pt x="557" y="837" on="1"/>
- <pt x="581" y="822" on="1"/>
- <pt x="610" y="803" on="1"/>
- <pt x="632" y="789" on="1"/>
- <pt x="662" y="770" on="1"/>
- <pt x="826" y="665" on="0"/>
- <pt x="874" y="603" on="1"/>
- <pt x="931" y="530" on="0"/>
- <pt x="931" y="412" on="1"/>
- <pt x="931" y="228" on="0"/>
- <pt x="799" y="110" on="1"/>
- <pt x="709" y="29" on="0"/>
- <pt x="557" y="-3" on="1"/>
- <pt x="557" y="-123" on="1"/>
- </contour>
- <contour>
- <pt x="557" y="78" on="1"/>
- <pt x="648" y="110" on="0"/>
- <pt x="693" y="162" on="1"/>
- <pt x="759" y="237" on="0"/>
- <pt x="759" y="357" on="1"/>
- <pt x="759" y="506" on="0"/>
- <pt x="603" y="607" on="1"/>
- <pt x="557" y="637" on="1"/>
- </contour>
- <contour>
- <pt x="495" y="879" on="1"/>
- <pt x="495" y="1410" on="1"/>
- <pt x="414" y="1397" on="0"/>
- <pt x="365" y="1343" on="1"/>
- <pt x="301" y="1273" on="0"/>
- <pt x="301" y="1167" on="1"/>
- <pt x="301" y="1012" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 94 values pushed */
- 68 67 66 59 58 57 45 44 43 39 38 32 31 30 28 27 26 25 15 14 9 8 5 4 3
- 1 0 14 0 0 72 18 19 63 18 53 48 196 43 39 38 32 4 30 28 3 27 28 0 2
- 19 19 9 8 5 4 0 3 3 53 30 0 0 66 59 58 57 45 44 28 11 6 0 1 4
- 48 196 31 30 1 68 67 26 25 15 14 1 0 7 4 3 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dotaccent" xMin="242" yMin="1283" xMax="439" yMax="1480">
- <contour>
- <pt x="242" y="1283" on="1"/>
- <pt x="242" y="1480" on="1"/>
- <pt x="439" y="1480" on="1"/>
- <pt x="439" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 30 values pushed */
- 0 0 3 0 5 1 1 1 4 48 84 2 1 0 14 0 0 3 2 4 1 0 1 4 48
- 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dotlessi" xMin="47" yMin="0" xMax="536" yMax="1086">
- <contour>
- <pt x="536" y="62" on="1"/>
- <pt x="536" y="0" on="1"/>
- <pt x="47" y="0" on="1"/>
- <pt x="47" y="62" on="1"/>
- <pt x="66" y="63" on="1"/>
- <pt x="174" y="70" on="0"/>
- <pt x="180" y="87" on="1"/>
- <pt x="191" y="106" on="0"/>
- <pt x="191" y="160" on="1"/>
- <pt x="193" y="259" on="1"/>
- <pt x="193" y="827" on="1"/>
- <pt x="191" y="925" on="1"/>
- <pt x="190" y="999" on="0"/>
- <pt x="169" y="1007" on="1"/>
- <pt x="149" y="1018" on="0"/>
- <pt x="66" y="1023" on="1"/>
- <pt x="47" y="1024" on="1"/>
- <pt x="47" y="1086" on="1"/>
- <pt x="390" y="1086" on="1"/>
- <pt x="390" y="259" on="1"/>
- <pt x="392" y="160" on="1"/>
- <pt x="393" y="86" on="0"/>
- <pt x="414" y="78" on="1"/>
- <pt x="435" y="68" on="0"/>
- <pt x="517" y="63" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 49 values pushed */
- 19 16 13 10 9 6 3 0 8 17 1 3 2 1 1 0 18 17 1 14 1 0 2 13 18
- 17 16 13 6 3 2 6 13 9 0 0 19 18 4 1 9 1 4 48 196 10 9 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dotlessj" xMin="-78" yMin="-419" xMax="459" yMax="1086">
- <contour>
- <pt x="-78" y="-380" on="1"/>
- <pt x="-78" y="-136" on="1"/>
- <pt x="21" y="-136" on="1"/>
- <pt x="22" y="-154" on="1"/>
- <pt x="26" y="-272" on="0"/>
- <pt x="47" y="-311" on="1"/>
- <pt x="72" y="-358" on="0"/>
- <pt x="133" y="-358" on="1"/>
- <pt x="262" y="-358" on="0"/>
- <pt x="262" y="-185" on="1"/>
- <pt x="262" y="-82" on="1"/>
- <pt x="262" y="827" on="1"/>
- <pt x="260" y="925" on="1"/>
- <pt x="260" y="993" on="0"/>
- <pt x="235" y="1007" on="1"/>
- <pt x="214" y="1019" on="0"/>
- <pt x="159" y="1023" on="1"/>
- <pt x="141" y="1024" on="1"/>
- <pt x="141" y="1086" on="1"/>
- <pt x="459" y="1086" on="1"/>
- <pt x="459" y="12" on="1"/>
- <pt x="459" y="-419" on="0"/>
- <pt x="127" y="-419" on="1"/>
- <pt x="51" y="-419" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 58 values pushed */
- 0 0 7 11 22 48 84 1 20 17 11 3 18 2 3 0 1 10 9 2 1 0 5 13 22
- 2 0 19 18 1 14 18 17 2 3 9 0 3 0 0 11 10 9 4 2 19 1 4 48 196
- 20 19 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dotmath" xMin="133" yMin="491" xMax="380" yMax="738">
- <contour>
- <pt x="133" y="491" on="1"/>
- <pt x="133" y="738" on="1"/>
- <pt x="380" y="738" on="1"/>
- <pt x="380" y="491" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 3 0 6 1 1 1 4 48 84 2 1 1 0 14 0 0 3 2 6 1 0 1 4
- 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="e" xMin="68" yMin="-25" xMax="848" yMax="1110">
- <contour>
- <pt x="848" y="49" on="1"/>
- <pt x="682" y="-25" on="0"/>
- <pt x="542" y="-25" on="1"/>
- <pt x="322" y="-25" on="0"/>
- <pt x="195" y="124" on="1"/>
- <pt x="68" y="273" on="0"/>
- <pt x="68" y="536" on="1"/>
- <pt x="68" y="796" on="0"/>
- <pt x="185" y="953" on="1"/>
- <pt x="301" y="1110" on="0"/>
- <pt x="496" y="1110" on="1"/>
- <pt x="677" y="1110" on="0"/>
- <pt x="763" y="988" on="1"/>
- <pt x="848" y="866" on="0"/>
- <pt x="848" y="605" on="1"/>
- <pt x="848" y="586" on="1"/>
- <pt x="284" y="586" on="1"/>
- <pt x="287" y="442" on="0"/>
- <pt x="302" y="368" on="1"/>
- <pt x="362" y="75" on="0"/>
- <pt x="600" y="75" on="1"/>
- <pt x="722" y="75" on="0"/>
- <pt x="848" y="150" on="1"/>
- </contour>
- <contour>
- <pt x="284" y="648" on="1"/>
- <pt x="638" y="648" on="1"/>
- <pt x="639" y="692" on="1"/>
- <pt x="643" y="869" on="0"/>
- <pt x="611" y="957" on="1"/>
- <pt x="580" y="1043" on="0"/>
- <pt x="486" y="1043" on="1"/>
- <pt x="382" y="1043" on="0"/>
- <pt x="325" y="901" on="1"/>
- <pt x="286" y="803" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 50 values pushed */
- 0 0 29 17 10 20 9 2 48 84 10 1 2 2 14 23 15 2 1 22 0 2 15 2 3
- 0 0 0 16 15 14 1 23 1 4 48 84 24 23 1 0 14 24 23 22 16 15 14 6 0
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="eacute" xMin="68" yMin="-25" xMax="848" yMax="1604">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="211" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ebreve" xMin="68" yMin="-25" xMax="848" yMax="1604">
- <contour>
- <pt x="848" y="49" on="1"/>
- <pt x="682" y="-25" on="0"/>
- <pt x="542" y="-25" on="1"/>
- <pt x="322" y="-25" on="0"/>
- <pt x="195" y="124" on="1"/>
- <pt x="68" y="273" on="0"/>
- <pt x="68" y="536" on="1"/>
- <pt x="68" y="796" on="0"/>
- <pt x="185" y="953" on="1"/>
- <pt x="301" y="1110" on="0"/>
- <pt x="496" y="1110" on="1"/>
- <pt x="677" y="1110" on="0"/>
- <pt x="763" y="988" on="1"/>
- <pt x="848" y="866" on="0"/>
- <pt x="848" y="605" on="1"/>
- <pt x="848" y="586" on="1"/>
- <pt x="284" y="586" on="1"/>
- <pt x="287" y="442" on="0"/>
- <pt x="302" y="368" on="1"/>
- <pt x="362" y="75" on="0"/>
- <pt x="600" y="75" on="1"/>
- <pt x="722" y="75" on="0"/>
- <pt x="848" y="150" on="1"/>
- </contour>
- <contour>
- <pt x="284" y="648" on="1"/>
- <pt x="638" y="648" on="1"/>
- <pt x="639" y="692" on="1"/>
- <pt x="643" y="869" on="0"/>
- <pt x="611" y="957" on="1"/>
- <pt x="580" y="1043" on="0"/>
- <pt x="486" y="1043" on="1"/>
- <pt x="382" y="1043" on="0"/>
- <pt x="325" y="901" on="1"/>
- <pt x="286" y="803" on="0"/>
- </contour>
- <contour>
- <pt x="160" y="1604" on="1"/>
- <pt x="225" y="1604" on="1"/>
- <pt x="252" y="1514" on="0"/>
- <pt x="312" y="1472" on="1"/>
- <pt x="380" y="1425" on="0"/>
- <pt x="493" y="1425" on="1"/>
- <pt x="619" y="1425" on="0"/>
- <pt x="689" y="1484" on="1"/>
- <pt x="737" y="1523" on="0"/>
- <pt x="762" y="1604" on="1"/>
- <pt x="826" y="1604" on="1"/>
- <pt x="807" y="1469" on="0"/>
- <pt x="735" y="1388" on="1"/>
- <pt x="640" y="1283" on="0"/>
- <pt x="493" y="1283" on="1"/>
- <pt x="340" y="1283" on="0"/>
- <pt x="244" y="1398" on="1"/>
- <pt x="179" y="1475" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 67 values pushed */
- 0 0 38 20 47 29 17 10 20 9 2 48 84 10 1 2 2 14 23 15 2 1 22 0 2
- 15 2 3 0 1 43 42 34 33 4 13 47 1 0 0 0 16 15 14 1 23 1 4 48 84
- 24 23 1 0 14 43 42 34 33 24 23 22 16 15 14 6 0
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ecaron" xMin="68" yMin="-25" xMax="848" yMax="1604">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="152" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ecircumflex" xMin="68" yMin="-25" xMax="848" yMax="1604">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="152" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="edieresis" xMin="68" yMin="-25" xMax="848" yMax="1456">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="153" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="edotaccent" xMin="68" yMin="-25" xMax="848" yMax="1480">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="dotaccent" x="153" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="egrave" xMin="68" yMin="-25" xMax="848" yMax="1604">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="94" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="eight" xMin="40" yMin="-37" xMax="977" yMax="1518">
- <contour>
- <pt x="342" y="797" on="1"/>
- <pt x="222" y="881" on="0"/>
- <pt x="173" y="949" on="1"/>
- <pt x="114" y="1029" on="0"/>
- <pt x="114" y="1148" on="1"/>
- <pt x="114" y="1317" on="0"/>
- <pt x="223" y="1417" on="1"/>
- <pt x="331" y="1518" on="0"/>
- <pt x="517" y="1518" on="1"/>
- <pt x="698" y="1518" on="0"/>
- <pt x="807" y="1430" on="1"/>
- <pt x="916" y="1342" on="0"/>
- <pt x="916" y="1196" on="1"/>
- <pt x="916" y="1062" on="0"/>
- <pt x="811" y="952" on="1"/>
- <pt x="747" y="886" on="0"/>
- <pt x="627" y="816" on="1"/>
- <pt x="677" y="787" on="1"/>
- <pt x="843" y="691" on="0"/>
- <pt x="911" y="599" on="1"/>
- <pt x="977" y="510" on="0"/>
- <pt x="977" y="383" on="1"/>
- <pt x="977" y="204" on="0"/>
- <pt x="840" y="84" on="1"/>
- <pt x="703" y="-37" on="0"/>
- <pt x="500" y="-37" on="1"/>
- <pt x="301" y="-37" on="0"/>
- <pt x="171" y="76" on="1"/>
- <pt x="40" y="188" on="0"/>
- <pt x="40" y="364" on="1"/>
- <pt x="40" y="541" on="0"/>
- <pt x="152" y="664" on="1"/>
- <pt x="218" y="735" on="0"/>
- </contour>
- <contour>
- <pt x="569" y="850" on="1"/>
- <pt x="743" y="986" on="0"/>
- <pt x="743" y="1187" on="1"/>
- <pt x="743" y="1304" on="0"/>
- <pt x="675" y="1377" on="1"/>
- <pt x="608" y="1450" on="0"/>
- <pt x="505" y="1450" on="1"/>
- <pt x="407" y="1450" on="0"/>
- <pt x="347" y="1386" on="1"/>
- <pt x="286" y="1323" on="0"/>
- <pt x="286" y="1219" on="1"/>
- <pt x="286" y="1107" on="0"/>
- <pt x="344" y="1042" on="1"/>
- <pt x="392" y="988" on="0"/>
- <pt x="510" y="896" on="1"/>
- </contour>
- <contour>
- <pt x="386" y="754" on="1"/>
- <pt x="237" y="607" on="0"/>
- <pt x="237" y="388" on="1"/>
- <pt x="237" y="225" on="0"/>
- <pt x="315" y="128" on="1"/>
- <pt x="392" y="31" on="0"/>
- <pt x="520" y="31" on="1"/>
- <pt x="630" y="31" on="0"/>
- <pt x="705" y="116" on="1"/>
- <pt x="780" y="200" on="0"/>
- <pt x="780" y="321" on="1"/>
- <pt x="780" y="442" on="0"/>
- <pt x="700" y="523" on="1"/>
- <pt x="637" y="588" on="0"/>
- <pt x="501" y="678" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 51 values pushed */
- 0 0 54 17 25 39 17 8 48 84 25 2 8 0 1 1 48 33 16 0 4 0 2 3 0
- 0 14 0 0 58 5 21 50 5 29 43 18 4 35 18 12 48 196 48 33 29 21 16 12 4
- 0
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ellipsis" xMin="243" yMin="0" xMax="1806" yMax="197">
- <contour>
- <pt x="243" y="0" on="1"/>
- <pt x="243" y="197" on="1"/>
- <pt x="440" y="197" on="1"/>
- <pt x="440" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="926" y="0" on="1"/>
- <pt x="926" y="197" on="1"/>
- <pt x="1123" y="197" on="1"/>
- <pt x="1123" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1608" y="0" on="1"/>
- <pt x="1608" y="197" on="1"/>
- <pt x="1806" y="197" on="1"/>
- <pt x="1806" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 56 values pushed */
- 0 0 10 9 6 5 2 1 5 5 0 1 4 48 84 11 8 7 4 3 0 5 0 14 0
- 0 9 8 4 1 10 7 6 4 1 4 3 2 4 1 0 3 4 48 196 11 10 1 5 4
- 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="emacron" xMin="68" yMin="-25" xMax="848" yMax="1406">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="macron" x="153" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="emdash" xMin="99" yMin="543" xMax="1950" yMax="642">
- <contour>
- <pt x="99" y="543" on="1"/>
- <pt x="99" y="642" on="1"/>
- <pt x="1950" y="642" on="1"/>
- <pt x="1950" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 9 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="endash" xMin="86" yMin="543" xMax="937" yMax="666">
- <contour>
- <pt x="86" y="543" on="1"/>
- <pt x="86" y="666" on="1"/>
- <pt x="937" y="666" on="1"/>
- <pt x="937" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 12 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="eng" xMin="37" yMin="-419" xMax="897" yMax="1110">
- <contour>
- <pt x="37" y="0" on="1"/>
- <pt x="37" y="62" on="1"/>
- <pt x="56" y="63" on="1"/>
- <pt x="129" y="67" on="0"/>
- <pt x="142" y="89" on="1"/>
- <pt x="155" y="108" on="0"/>
- <pt x="156" y="160" on="1"/>
- <pt x="158" y="259" on="1"/>
- <pt x="158" y="827" on="1"/>
- <pt x="156" y="925" on="1"/>
- <pt x="156" y="993" on="0"/>
- <pt x="131" y="1007" on="1"/>
- <pt x="110" y="1019" on="0"/>
- <pt x="56" y="1023" on="1"/>
- <pt x="37" y="1024" on="1"/>
- <pt x="37" y="1086" on="1"/>
- <pt x="356" y="1086" on="1"/>
- <pt x="356" y="907" on="1"/>
- <pt x="420" y="999" on="0"/>
- <pt x="480" y="1044" on="1"/>
- <pt x="566" y="1110" on="0"/>
- <pt x="667" y="1110" on="1"/>
- <pt x="791" y="1110" on="0"/>
- <pt x="844" y="1032" on="1"/>
- <pt x="897" y="954" on="0"/>
- <pt x="897" y="765" on="1"/>
- <pt x="897" y="12" on="1"/>
- <pt x="897" y="-419" on="0"/>
- <pt x="536" y="-419" on="1"/>
- <pt x="438" y="-419" on="0"/>
- <pt x="311" y="-380" on="1"/>
- <pt x="311" y="-136" on="1"/>
- <pt x="422" y="-136" on="1"/>
- <pt x="423" y="-154" on="1"/>
- <pt x="428" y="-277" on="0"/>
- <pt x="451" y="-314" on="1"/>
- <pt x="478" y="-358" on="0"/>
- <pt x="550" y="-358" on="1"/>
- <pt x="700" y="-358" on="0"/>
- <pt x="700" y="-185" on="1"/>
- <pt x="700" y="-82" on="1"/>
- <pt x="700" y="734" on="1"/>
- <pt x="697" y="811" on="1"/>
- <pt x="694" y="900" on="0"/>
- <pt x="672" y="937" on="1"/>
- <pt x="647" y="981" on="0"/>
- <pt x="592" y="981" on="1"/>
- <pt x="476" y="981" on="0"/>
- <pt x="356" y="840" on="1"/>
- <pt x="356" y="259" on="1"/>
- <pt x="357" y="160" on="1"/>
- <pt x="358" y="91" on="0"/>
- <pt x="383" y="78" on="1"/>
- <pt x="405" y="66" on="0"/>
- <pt x="458" y="63" on="1"/>
- <pt x="477" y="62" on="1"/>
- <pt x="477" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 88 values pushed */
- 0 0 46 29 21 37 11 28 48 84 21 1 55 49 48 41 26 25 17 14 8 7 1 11 15
- 0 3 40 39 32 31 30 5 13 28 0 56 0 1 0 16 15 1 14 56 55 32 3 39 16
- 3 15 14 1 0 4 13 7 0 0 41 40 39 4 2 25 49 48 17 16 4 3 7 2 4
- 48 196 26 25 1 31 30 1 8 7 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="eogonek" xMin="68" yMin="-370" xMax="848" yMax="1110">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="ogonek" x="281" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="equal" xMin="84" yMin="358" xMax="1071" yMax="827">
- <contour>
- <pt x="84" y="358" on="1"/>
- <pt x="84" y="456" on="1"/>
- <pt x="1071" y="456" on="1"/>
- <pt x="1071" y="358" on="1"/>
- </contour>
- <contour>
- <pt x="84" y="728" on="1"/>
- <pt x="84" y="827" on="1"/>
- <pt x="1071" y="827" on="1"/>
- <pt x="1071" y="728" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 33 values pushed */
- 0 0 7 4 9 1 5 2 1 9 1 0 2 4 48 84 6 5 1 3 0 1 2 0 14
- 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="estimated" xMin="68" yMin="-25" xMax="848" yMax="1110">
- <contour>
- <pt x="848" y="49" on="1"/>
- <pt x="682" y="-25" on="0"/>
- <pt x="542" y="-25" on="1"/>
- <pt x="322" y="-25" on="0"/>
- <pt x="195" y="124" on="1"/>
- <pt x="68" y="273" on="0"/>
- <pt x="68" y="536" on="1"/>
- <pt x="68" y="796" on="0"/>
- <pt x="185" y="953" on="1"/>
- <pt x="301" y="1110" on="0"/>
- <pt x="496" y="1110" on="1"/>
- <pt x="677" y="1110" on="0"/>
- <pt x="763" y="988" on="1"/>
- <pt x="848" y="866" on="0"/>
- <pt x="848" y="605" on="1"/>
- <pt x="848" y="586" on="1"/>
- <pt x="284" y="586" on="1"/>
- <pt x="287" y="442" on="0"/>
- <pt x="302" y="368" on="1"/>
- <pt x="362" y="75" on="0"/>
- <pt x="600" y="75" on="1"/>
- <pt x="722" y="75" on="0"/>
- <pt x="848" y="150" on="1"/>
- </contour>
- <contour>
- <pt x="284" y="648" on="1"/>
- <pt x="638" y="648" on="1"/>
- <pt x="639" y="692" on="1"/>
- <pt x="643" y="869" on="0"/>
- <pt x="611" y="957" on="1"/>
- <pt x="580" y="1043" on="0"/>
- <pt x="486" y="1043" on="1"/>
- <pt x="382" y="1043" on="0"/>
- <pt x="325" y="901" on="1"/>
- <pt x="286" y="803" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 50 values pushed */
- 0 0 29 17 10 20 9 2 48 84 10 1 2 2 14 23 15 2 1 22 0 2 15 2 3
- 0 0 0 16 15 14 1 23 1 4 48 84 24 23 1 0 14 24 23 22 16 15 14 6 0
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="eth" xMin="17" yMin="-25" xMax="962" yMax="1585">
- <contour>
- <pt x="597" y="1078" on="1"/>
- <pt x="530" y="1184" on="0"/>
- <pt x="399" y="1317" on="1"/>
- <pt x="107" y="1119" on="1"/>
- <pt x="71" y="1172" on="1"/>
- <pt x="350" y="1357" on="1"/>
- <pt x="193" y="1492" on="0"/>
- <pt x="17" y="1507" on="1"/>
- <pt x="17" y="1579" on="1"/>
- <pt x="265" y="1579" on="0"/>
- <pt x="479" y="1444" on="1"/>
- <pt x="689" y="1585" on="1"/>
- <pt x="724" y="1535" on="1"/>
- <pt x="527" y="1404" on="1"/>
- <pt x="646" y="1317" on="0"/>
- <pt x="711" y="1248" on="1"/>
- <pt x="962" y="979" on="0"/>
- <pt x="962" y="586" on="1"/>
- <pt x="962" y="298" on="0"/>
- <pt x="843" y="137" on="1"/>
- <pt x="725" y="-25" on="0"/>
- <pt x="511" y="-25" on="1"/>
- <pt x="307" y="-25" on="0"/>
- <pt x="184" y="127" on="1"/>
- <pt x="62" y="279" on="0"/>
- <pt x="62" y="531" on="1"/>
- <pt x="62" y="781" on="0"/>
- <pt x="184" y="933" on="1"/>
- <pt x="307" y="1086" on="0"/>
- <pt x="503" y="1086" on="1"/>
- <pt x="542" y="1086" on="0"/>
- </contour>
- <contour>
- <pt x="511" y="1018" on="1"/>
- <pt x="406" y="1018" on="0"/>
- <pt x="342" y="884" on="1"/>
- <pt x="277" y="750" on="0"/>
- <pt x="277" y="531" on="1"/>
- <pt x="277" y="311" on="0"/>
- <pt x="342" y="177" on="1"/>
- <pt x="406" y="43" on="0"/>
- <pt x="512" y="43" on="1"/>
- <pt x="617" y="43" on="0"/>
- <pt x="681" y="176" on="1"/>
- <pt x="746" y="310" on="0"/>
- <pt x="746" y="525" on="1"/>
- <pt x="746" y="729" on="0"/>
- <pt x="693" y="859" on="1"/>
- <pt x="628" y="1018" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 69 values pushed */
- 0 0 39 17 21 31 17 29 48 84 29 1 21 2 1 1 13 10 5 4 3 2 6 0 1
- 3 0 0 1 1 0 1 2 2 0 0 1 12 11 8 7 4 13 0 0 14 0 0 43 10
- 17 35 10 25 48 196 25 17 13 12 11 10 8 7 5 4 3 2 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="exclam" xMin="242" yMin="0" xMax="439" yMax="1480">
- <contour>
- <pt x="242" y="0" on="1"/>
- <pt x="242" y="197" on="1"/>
- <pt x="439" y="197" on="1"/>
- <pt x="439" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="310" y="395" on="1"/>
- <pt x="242" y="1184" on="1"/>
- <pt x="242" y="1480" on="1"/>
- <pt x="439" y="1480" on="1"/>
- <pt x="439" y="1184" on="1"/>
- <pt x="372" y="395" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 52 values pushed */
- 9 8 5 4 4 6 1 3 0 0 2 1 5 1 0 1 4 48 84 3 0 1 0 7 6
- 0 14 9 4 2 2 0 3 0 0 8 7 3 2 4 3 0 1 4 48 196 6 5 1 0
- 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="exclamdown" xMin="242" yMin="-395" xMax="439" yMax="1086">
- <contour>
- <pt x="439" y="1086" on="1"/>
- <pt x="439" y="888" on="1"/>
- <pt x="242" y="888" on="1"/>
- <pt x="242" y="1086" on="1"/>
- </contour>
- <contour>
- <pt x="372" y="691" on="1"/>
- <pt x="439" y="-99" on="1"/>
- <pt x="439" y="-395" on="1"/>
- <pt x="242" y="-395" on="1"/>
- <pt x="242" y="-99" on="1"/>
- <pt x="310" y="691" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 60 values pushed */
- 1 9 4 2 1 2 3 0 1 8 5 2 2 6 3 0 0 0 2 1 5 1 0 1 4
- 48 84 7 6 1 0 3 0 1 14 9 4 2 0 2 3 0 0 6 5 1 0 4 3 2
- 1 4 48 196 8 7 3 2 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="f" xMin="37" yMin="0" xMax="719" yMax="1604">
- <contour>
- <pt x="55" y="0" on="1"/>
- <pt x="55" y="62" on="1"/>
- <pt x="74" y="63" on="1"/>
- <pt x="151" y="68" on="0"/>
- <pt x="163" y="92" on="1"/>
- <pt x="174" y="112" on="0"/>
- <pt x="174" y="160" on="1"/>
- <pt x="176" y="259" on="1"/>
- <pt x="176" y="999" on="1"/>
- <pt x="37" y="999" on="1"/>
- <pt x="37" y="1086" on="1"/>
- <pt x="176" y="1086" on="1"/>
- <pt x="176" y="1138" on="1"/>
- <pt x="176" y="1401" on="0"/>
- <pt x="245" y="1502" on="1"/>
- <pt x="314" y="1604" on="0"/>
- <pt x="489" y="1604" on="1"/>
- <pt x="617" y="1604" on="0"/>
- <pt x="719" y="1530" on="1"/>
- <pt x="719" y="1295" on="1"/>
- <pt x="608" y="1295" on="1"/>
- <pt x="607" y="1314" on="1"/>
- <pt x="605" y="1353" on="0"/>
- <pt x="604" y="1380" on="1"/>
- <pt x="604" y="1385" on="1"/>
- <pt x="604" y="1540" on="0"/>
- <pt x="496" y="1540" on="1"/>
- <pt x="376" y="1540" on="0"/>
- <pt x="374" y="1357" on="1"/>
- <pt x="373" y="1257" on="1"/>
- <pt x="373" y="1086" on="1"/>
- <pt x="596" y="1086" on="1"/>
- <pt x="596" y="1005" on="1"/>
- <pt x="373" y="1005" on="1"/>
- <pt x="373" y="259" on="1"/>
- <pt x="375" y="160" on="1"/>
- <pt x="376" y="88" on="0"/>
- <pt x="408" y="75" on="1"/>
- <pt x="434" y="63" on="0"/>
- <pt x="500" y="63" on="1"/>
- <pt x="544" y="62" on="1"/>
- <pt x="544" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 95 values pushed */
- 0 0 26 11 16 48 84 40 34 7 1 4 8 0 3 29 24 23 20 19 18 12 7 13 16
- 10 0 0 33 32 7 1 10 1 4 9 8 1 10 1 6 48 84 41 0 1 0 31 30 11
- 10 1 3 14 41 40 32 31 24 23 20 7 18 29 3 10 9 1 0 4 13 7 0 0 34
- 33 30 29 4 3 7 1 4 48 196 19 18 1 12 11 8 7 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fi" xMin="37" yMin="0" xMax="1104" yMax="1604">
- <contour>
- <pt x="786" y="1283" on="1"/>
- <pt x="786" y="1480" on="1"/>
- <pt x="959" y="1480" on="1"/>
- <pt x="959" y="1283" on="1"/>
- </contour>
- <contour>
- <pt x="55" y="0" on="1"/>
- <pt x="55" y="62" on="1"/>
- <pt x="74" y="63" on="1"/>
- <pt x="151" y="68" on="0"/>
- <pt x="163" y="92" on="1"/>
- <pt x="174" y="112" on="0"/>
- <pt x="174" y="160" on="1"/>
- <pt x="176" y="259" on="1"/>
- <pt x="176" y="999" on="1"/>
- <pt x="37" y="999" on="1"/>
- <pt x="37" y="1086" on="1"/>
- <pt x="176" y="1086" on="1"/>
- <pt x="176" y="1138" on="1"/>
- <pt x="176" y="1394" on="0"/>
- <pt x="243" y="1499" on="1"/>
- <pt x="311" y="1604" on="0"/>
- <pt x="471" y="1604" on="1"/>
- <pt x="585" y="1604" on="0"/>
- <pt x="687" y="1530" on="1"/>
- <pt x="687" y="1308" on="1"/>
- <pt x="576" y="1308" on="1"/>
- <pt x="575" y="1324" on="1"/>
- <pt x="574" y="1357" on="0"/>
- <pt x="573" y="1375" on="1"/>
- <pt x="573" y="1383" on="0"/>
- <pt x="573" y="1386" on="1"/>
- <pt x="573" y="1540" on="0"/>
- <pt x="480" y="1540" on="1"/>
- <pt x="376" y="1540" on="0"/>
- <pt x="374" y="1357" on="1"/>
- <pt x="373" y="1257" on="1"/>
- <pt x="373" y="1086" on="1"/>
- <pt x="959" y="1086" on="1"/>
- <pt x="959" y="259" on="1"/>
- <pt x="961" y="160" on="1"/>
- <pt x="962" y="86" on="0"/>
- <pt x="983" y="78" on="1"/>
- <pt x="1003" y="68" on="0"/>
- <pt x="1086" y="63" on="1"/>
- <pt x="1104" y="62" on="1"/>
- <pt x="1104" y="0" on="1"/>
- <pt x="616" y="0" on="1"/>
- <pt x="616" y="62" on="1"/>
- <pt x="678" y="63" on="1"/>
- <pt x="759" y="63" on="0"/>
- <pt x="760" y="160" on="1"/>
- <pt x="761" y="259" on="1"/>
- <pt x="761" y="1005" on="1"/>
- <pt x="373" y="1005" on="1"/>
- <pt x="373" y="259" on="1"/>
- <pt x="375" y="160" on="1"/>
- <pt x="376" y="88" on="0"/>
- <pt x="408" y="75" on="1"/>
- <pt x="434" y="63" on="0"/>
- <pt x="500" y="63" on="1"/>
- <pt x="544" y="62" on="1"/>
- <pt x="544" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 138 values pushed */
- 0 0 31 11 20 48 84 49 45 24 23 2 1 0 3 34 16 2 0 14 3 59 53 50 43
- 37 11 5 7 12 4 3 22 20 1 0 0 52 51 7 1 14 1 4 13 12 1 14 1 6
- 3 0 5 1 1 1 4 48 84 60 45 44 4 3 0 36 35 15 14 1 3 2 1 0 14
- 45 49 49 50 22 2 60 59 24 3 22 34 3 44 43 2 13 2 14 13 5 4 4 13 11
- 0 0 51 50 4 1 2 53 52 35 34 4 3 11 1 0 13 1 2 3 4 48 196 23 22
- 1 16 15 12 11 3 37 36 3 2 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fi#1" xMin="37" yMin="0" xMax="1104" yMax="1604">
- <contour>
- <pt x="786" y="1283" on="1"/>
- <pt x="786" y="1480" on="1"/>
- <pt x="959" y="1480" on="1"/>
- <pt x="959" y="1283" on="1"/>
- </contour>
- <contour>
- <pt x="55" y="0" on="1"/>
- <pt x="55" y="62" on="1"/>
- <pt x="74" y="63" on="1"/>
- <pt x="151" y="68" on="0"/>
- <pt x="163" y="92" on="1"/>
- <pt x="174" y="112" on="0"/>
- <pt x="174" y="160" on="1"/>
- <pt x="176" y="259" on="1"/>
- <pt x="176" y="999" on="1"/>
- <pt x="37" y="999" on="1"/>
- <pt x="37" y="1086" on="1"/>
- <pt x="176" y="1086" on="1"/>
- <pt x="176" y="1138" on="1"/>
- <pt x="176" y="1394" on="0"/>
- <pt x="243" y="1499" on="1"/>
- <pt x="311" y="1604" on="0"/>
- <pt x="471" y="1604" on="1"/>
- <pt x="585" y="1604" on="0"/>
- <pt x="687" y="1530" on="1"/>
- <pt x="687" y="1308" on="1"/>
- <pt x="576" y="1308" on="1"/>
- <pt x="575" y="1324" on="1"/>
- <pt x="574" y="1357" on="0"/>
- <pt x="573" y="1375" on="1"/>
- <pt x="573" y="1383" on="0"/>
- <pt x="573" y="1386" on="1"/>
- <pt x="573" y="1540" on="0"/>
- <pt x="480" y="1540" on="1"/>
- <pt x="376" y="1540" on="0"/>
- <pt x="374" y="1357" on="1"/>
- <pt x="373" y="1257" on="1"/>
- <pt x="373" y="1086" on="1"/>
- <pt x="959" y="1086" on="1"/>
- <pt x="959" y="259" on="1"/>
- <pt x="961" y="160" on="1"/>
- <pt x="962" y="86" on="0"/>
- <pt x="983" y="78" on="1"/>
- <pt x="1003" y="68" on="0"/>
- <pt x="1086" y="63" on="1"/>
- <pt x="1104" y="62" on="1"/>
- <pt x="1104" y="0" on="1"/>
- <pt x="616" y="0" on="1"/>
- <pt x="616" y="62" on="1"/>
- <pt x="678" y="63" on="1"/>
- <pt x="759" y="63" on="0"/>
- <pt x="760" y="160" on="1"/>
- <pt x="761" y="259" on="1"/>
- <pt x="761" y="1005" on="1"/>
- <pt x="373" y="1005" on="1"/>
- <pt x="373" y="259" on="1"/>
- <pt x="375" y="160" on="1"/>
- <pt x="376" y="88" on="0"/>
- <pt x="408" y="75" on="1"/>
- <pt x="434" y="63" on="0"/>
- <pt x="500" y="63" on="1"/>
- <pt x="544" y="62" on="1"/>
- <pt x="544" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 138 values pushed */
- 0 0 31 11 20 48 84 49 45 24 23 2 1 0 3 34 16 2 0 14 3 59 53 50 43
- 37 11 5 7 12 4 3 22 20 1 0 0 52 51 7 1 14 1 4 13 12 1 14 1 6
- 3 0 5 1 1 1 4 48 84 60 45 44 4 3 0 36 35 15 14 1 3 2 1 0 14
- 45 49 49 50 22 2 60 59 24 3 22 34 3 44 43 2 13 2 14 13 5 4 4 13 11
- 0 0 51 50 4 1 2 53 52 35 34 4 3 11 1 0 13 1 2 3 4 48 196 23 22
- 1 16 15 12 11 3 37 36 3 2 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="figuredash" xMin="86" yMin="543" xMax="937" yMax="666">
- <contour>
- <pt x="86" y="543" on="1"/>
- <pt x="86" y="666" on="1"/>
- <pt x="937" y="666" on="1"/>
- <pt x="937" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 12 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="five" xMin="130" yMin="-37" xMax="907" yMax="1480">
- <contour>
- <pt x="130" y="-3" on="1"/>
- <pt x="130" y="247" on="1"/>
- <pt x="229" y="247" on="1"/>
- <pt x="230" y="223" on="1"/>
- <pt x="232" y="147" on="1"/>
- <pt x="235" y="25" on="0"/>
- <pt x="406" y="25" on="1"/>
- <pt x="541" y="25" on="0"/>
- <pt x="619" y="134" on="1"/>
- <pt x="697" y="244" on="0"/>
- <pt x="697" y="421" on="1"/>
- <pt x="697" y="820" on="0"/>
- <pt x="192" y="820" on="1"/>
- <pt x="155" y="820" on="1"/>
- <pt x="155" y="1480" on="1"/>
- <pt x="876" y="1480" on="1"/>
- <pt x="876" y="1308" on="1"/>
- <pt x="216" y="1308" on="1"/>
- <pt x="216" y="894" on="1"/>
- <pt x="308" y="894" on="1"/>
- <pt x="592" y="894" on="0"/>
- <pt x="749" y="769" on="1"/>
- <pt x="907" y="644" on="0"/>
- <pt x="907" y="420" on="1"/>
- <pt x="907" y="210" on="0"/>
- <pt x="764" y="87" on="1"/>
- <pt x="621" y="-37" on="0"/>
- <pt x="384" y="-37" on="1"/>
- <pt x="270" y="-37" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 0 0 6 11 27 48 84 27 2 1 19 18 13 12 2 1 6 16 2 3 0 1 0 2 0
- 0 0 17 16 13 1 14 1 4 48 84 15 14 0 14 0 0 10 10 23 48 196 19 2 2
- 15 17 3 12 17 13 2 23 15 0 0 18 17 11 1 13 1 4 48 196 16 15 1 14 13
- 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fl" xMin="37" yMin="0" xMax="1104" yMax="1604">
- <contour>
- <pt x="55" y="0" on="1"/>
- <pt x="55" y="62" on="1"/>
- <pt x="74" y="63" on="1"/>
- <pt x="151" y="68" on="0"/>
- <pt x="163" y="92" on="1"/>
- <pt x="174" y="112" on="0"/>
- <pt x="174" y="160" on="1"/>
- <pt x="176" y="259" on="1"/>
- <pt x="176" y="999" on="1"/>
- <pt x="37" y="999" on="1"/>
- <pt x="37" y="1086" on="1"/>
- <pt x="176" y="1086" on="1"/>
- <pt x="176" y="1138" on="1"/>
- <pt x="176" y="1313" on="0"/>
- <pt x="192" y="1384" on="1"/>
- <pt x="208" y="1457" on="0"/>
- <pt x="260" y="1514" on="1"/>
- <pt x="342" y="1604" on="0"/>
- <pt x="468" y="1604" on="1"/>
- <pt x="518" y="1604" on="0"/>
- <pt x="632" y="1579" on="1"/>
- <pt x="959" y="1579" on="1"/>
- <pt x="959" y="259" on="1"/>
- <pt x="961" y="160" on="1"/>
- <pt x="962" y="86" on="0"/>
- <pt x="983" y="78" on="1"/>
- <pt x="1003" y="68" on="0"/>
- <pt x="1086" y="63" on="1"/>
- <pt x="1104" y="62" on="1"/>
- <pt x="1104" y="0" on="1"/>
- <pt x="616" y="0" on="1"/>
- <pt x="616" y="62" on="1"/>
- <pt x="678" y="63" on="1"/>
- <pt x="759" y="63" on="0"/>
- <pt x="760" y="160" on="1"/>
- <pt x="761" y="259" on="1"/>
- <pt x="761" y="1437" on="1"/>
- <pt x="604" y="1540" on="0"/>
- <pt x="486" y="1540" on="1"/>
- <pt x="376" y="1540" on="0"/>
- <pt x="374" y="1357" on="1"/>
- <pt x="373" y="1257" on="1"/>
- <pt x="373" y="1086" on="1"/>
- <pt x="546" y="1086" on="1"/>
- <pt x="546" y="1005" on="1"/>
- <pt x="373" y="1005" on="1"/>
- <pt x="373" y="259" on="1"/>
- <pt x="375" y="160" on="1"/>
- <pt x="376" y="88" on="0"/>
- <pt x="408" y="75" on="1"/>
- <pt x="434" y="63" on="0"/>
- <pt x="500" y="63" on="1"/>
- <pt x="544" y="62" on="1"/>
- <pt x="544" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 115 values pushed */
- 0 0 38 11 18 48 84 34 30 41 36 12 3 20 10 3 52 46 35 28 22 7 1 7 8
- 0 3 18 20 0 0 45 44 7 1 10 1 4 9 8 1 10 1 6 48 84 21 20 1 53
- 30 29 0 3 2 0 43 42 11 10 1 3 14 30 34 53 52 44 43 34 20 6 35 41 3
- 29 28 2 13 21 10 9 1 0 4 13 7 0 0 36 35 4 1 21 46 45 42 41 4 3
- 7 2 4 48 196 22 21 1 12 11 8 7 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fl#1" xMin="37" yMin="0" xMax="1104" yMax="1604">
- <contour>
- <pt x="55" y="0" on="1"/>
- <pt x="55" y="62" on="1"/>
- <pt x="74" y="63" on="1"/>
- <pt x="151" y="68" on="0"/>
- <pt x="163" y="92" on="1"/>
- <pt x="174" y="112" on="0"/>
- <pt x="174" y="160" on="1"/>
- <pt x="176" y="259" on="1"/>
- <pt x="176" y="999" on="1"/>
- <pt x="37" y="999" on="1"/>
- <pt x="37" y="1086" on="1"/>
- <pt x="176" y="1086" on="1"/>
- <pt x="176" y="1138" on="1"/>
- <pt x="176" y="1313" on="0"/>
- <pt x="192" y="1384" on="1"/>
- <pt x="208" y="1457" on="0"/>
- <pt x="260" y="1514" on="1"/>
- <pt x="342" y="1604" on="0"/>
- <pt x="468" y="1604" on="1"/>
- <pt x="518" y="1604" on="0"/>
- <pt x="632" y="1579" on="1"/>
- <pt x="959" y="1579" on="1"/>
- <pt x="959" y="259" on="1"/>
- <pt x="961" y="160" on="1"/>
- <pt x="962" y="86" on="0"/>
- <pt x="983" y="78" on="1"/>
- <pt x="1003" y="68" on="0"/>
- <pt x="1086" y="63" on="1"/>
- <pt x="1104" y="62" on="1"/>
- <pt x="1104" y="0" on="1"/>
- <pt x="616" y="0" on="1"/>
- <pt x="616" y="62" on="1"/>
- <pt x="678" y="63" on="1"/>
- <pt x="759" y="63" on="0"/>
- <pt x="760" y="160" on="1"/>
- <pt x="761" y="259" on="1"/>
- <pt x="761" y="1437" on="1"/>
- <pt x="604" y="1540" on="0"/>
- <pt x="486" y="1540" on="1"/>
- <pt x="376" y="1540" on="0"/>
- <pt x="374" y="1357" on="1"/>
- <pt x="373" y="1257" on="1"/>
- <pt x="373" y="1086" on="1"/>
- <pt x="546" y="1086" on="1"/>
- <pt x="546" y="1005" on="1"/>
- <pt x="373" y="1005" on="1"/>
- <pt x="373" y="259" on="1"/>
- <pt x="375" y="160" on="1"/>
- <pt x="376" y="88" on="0"/>
- <pt x="408" y="75" on="1"/>
- <pt x="434" y="63" on="0"/>
- <pt x="500" y="63" on="1"/>
- <pt x="544" y="62" on="1"/>
- <pt x="544" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 115 values pushed */
- 0 0 38 11 18 48 84 34 30 41 36 12 3 20 10 3 52 46 35 28 22 7 1 7 8
- 0 3 18 20 0 0 45 44 7 1 10 1 4 9 8 1 10 1 6 48 84 21 20 1 53
- 30 29 0 3 2 0 43 42 11 10 1 3 14 30 34 53 52 44 43 34 20 6 35 41 3
- 29 28 2 13 21 10 9 1 0 4 13 7 0 0 36 35 4 1 21 46 45 42 41 4 3
- 7 2 4 48 196 22 21 1 12 11 8 7 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="florin" xMin="12" yMin="-296" xMax="949" yMax="1505">
- <contour>
- <pt x="12" y="-296" on="1"/>
- <pt x="218" y="740" on="1"/>
- <pt x="16" y="740" on="1"/>
- <pt x="16" y="802" on="1"/>
- <pt x="230" y="802" on="1"/>
- <pt x="254" y="922" on="1"/>
- <pt x="308" y="1196" on="0"/>
- <pt x="446" y="1351" on="1"/>
- <pt x="583" y="1505" on="0"/>
- <pt x="772" y="1505" on="1"/>
- <pt x="852" y="1505" on="0"/>
- <pt x="949" y="1475" on="1"/>
- <pt x="949" y="1246" on="1"/>
- <pt x="851" y="1246" on="1"/>
- <pt x="848" y="1293" on="0"/>
- <pt x="847" y="1320" on="1"/>
- <pt x="842" y="1444" on="0"/>
- <pt x="723" y="1444" on="1"/>
- <pt x="605" y="1444" on="0"/>
- <pt x="552" y="1316" on="1"/>
- <pt x="509" y="1212" on="0"/>
- <pt x="463" y="979" on="1"/>
- <pt x="428" y="802" on="1"/>
- <pt x="678" y="802" on="1"/>
- <pt x="678" y="740" on="1"/>
- <pt x="415" y="740" on="1"/>
- <pt x="209" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 60 values pushed */
- 0 0 17 11 9 48 84 9 0 1 13 12 11 3 0 3 3 0 0 0 25 24 2 1 14
- 3 3 1 4 48 84 23 22 4 3 3 26 0 1 2 0 14 26 25 24 23 22 13 4 3
- 2 1 0 11 13 11 12 11 1 0
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="four" xMin="25" yMin="0" xMax="975" yMax="1505">
- <contour>
- <pt x="630" y="419" on="1"/>
- <pt x="25" y="419" on="1"/>
- <pt x="25" y="518" on="1"/>
- <pt x="692" y="1505" on="1"/>
- <pt x="803" y="1505" on="1"/>
- <pt x="803" y="568" on="1"/>
- <pt x="975" y="568" on="1"/>
- <pt x="975" y="419" on="1"/>
- <pt x="803" y="419" on="1"/>
- <pt x="803" y="259" on="1"/>
- <pt x="809" y="160" on="1"/>
- <pt x="813" y="94" on="0"/>
- <pt x="834" y="84" on="1"/>
- <pt x="852" y="73" on="0"/>
- <pt x="901" y="68" on="1"/>
- <pt x="944" y="63" on="1"/>
- <pt x="963" y="62" on="1"/>
- <pt x="963" y="0" on="1"/>
- <pt x="445" y="0" on="1"/>
- <pt x="445" y="62" on="1"/>
- <pt x="463" y="63" on="1"/>
- <pt x="542" y="68" on="1"/>
- <pt x="605" y="73" on="0"/>
- <pt x="618" y="124" on="1"/>
- <pt x="630" y="166" on="0"/>
- <pt x="630" y="259" on="1"/>
- </contour>
- <contour>
- <pt x="136" y="568" on="1"/>
- <pt x="630" y="568" on="1"/>
- <pt x="630" y="1299" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 25 18 2 5 0 2 16 9 2 0 17 3 28 4 3 3 13 5 0 0 27 26 6 5 19
- 3 0 1 4 48 84 8 7 1 0 3 18 17 1 2 0 14 18 25 17 16 2 6 4 3
- 3 4 0 2 26 2 1 3 13 0 0 0 28 27 25 0 13 3 4 1 4 48 196 7 6
- 1 9 8 5 4 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="foursuperiour" xMin="31" yMin="772" xMax="582" yMax="1522">
- <contour>
- <pt x="284" y="772" on="1"/>
- <pt x="284" y="810" on="1"/>
- <pt x="293" y="811" on="1"/>
- <pt x="343" y="812" on="0"/>
- <pt x="357" y="819" on="1"/>
- <pt x="372" y="828" on="0"/>
- <pt x="374" y="859" on="1"/>
- <pt x="377" y="909" on="1"/>
- <pt x="377" y="977" on="1"/>
- <pt x="31" y="977" on="1"/>
- <pt x="31" y="1043" on="1"/>
- <pt x="399" y="1522" on="1"/>
- <pt x="490" y="1522" on="1"/>
- <pt x="490" y="1066" on="1"/>
- <pt x="582" y="1066" on="1"/>
- <pt x="582" y="977" on="1"/>
- <pt x="490" y="977" on="1"/>
- <pt x="490" y="909" on="1"/>
- <pt x="493" y="859" on="1"/>
- <pt x="495" y="824" on="0"/>
- <pt x="515" y="817" on="1"/>
- <pt x="531" y="812" on="0"/>
- <pt x="567" y="811" on="1"/>
- <pt x="576" y="810" on="1"/>
- <pt x="576" y="772" on="1"/>
- </contour>
- <contour>
- <pt x="97" y="1066" on="1"/>
- <pt x="377" y="1066" on="1"/>
- <pt x="377" y="1429" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 10 13 8 2 23 17 7 1 4 8 0 3 27 12 11 3 13 13 0 0 16 15 9 8 46
- 3 13 1 4 48 84 26 25 14 13 3 24 0 1 2 0 14 11 12 7 2 24 23 15 14
- 4 13 12 25 10 9 1 0 5 13 7 0 0 27 26 8 7 15 3 12 1 4 48 196 17
- 16 13 12 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fraction" xMin="-416" yMin="-37" xMax="759" yMax="1517">
- <contour>
- <pt x="-416" y="-37" on="1"/>
- <pt x="672" y="1517" on="1"/>
- <pt x="759" y="1517" on="1"/>
- <pt x="-330" y="-37" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 9 values pushed */
- 3 2 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fraction#1" xMin="-416" yMin="-37" xMax="759" yMax="1517">
- <contour>
- <pt x="-416" y="-37" on="1"/>
- <pt x="672" y="1517" on="1"/>
- <pt x="759" y="1517" on="1"/>
- <pt x="-330" y="-37" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 9 values pushed */
- 3 2 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="g" xMin="53" yMin="-419" xMax="991" yMax="1110">
- <contour>
- <pt x="258" y="42" on="1"/>
- <pt x="145" y="96" on="0"/>
- <pt x="145" y="182" on="1"/>
- <pt x="145" y="266" on="0"/>
- <pt x="300" y="367" on="1"/>
- <pt x="326" y="384" on="1"/>
- <pt x="231" y="432" on="0"/>
- <pt x="183" y="497" on="1"/>
- <pt x="114" y="589" on="0"/>
- <pt x="114" y="732" on="1"/>
- <pt x="114" y="908" on="0"/>
- <pt x="209" y="1009" on="1"/>
- <pt x="303" y="1110" on="0"/>
- <pt x="462" y="1110" on="1"/>
- <pt x="539" y="1110" on="0"/>
- <pt x="640" y="1070" on="1"/>
- <pt x="991" y="1098" on="1"/>
- <pt x="940" y="978" on="1"/>
- <pt x="702" y="1020" on="1"/>
- <pt x="830" y="889" on="0"/>
- <pt x="830" y="731" on="1"/>
- <pt x="830" y="569" on="0"/>
- <pt x="728" y="456" on="1"/>
- <pt x="626" y="342" on="0"/>
- <pt x="481" y="342" on="1"/>
- <pt x="437" y="342" on="0"/>
- <pt x="394" y="360" on="1"/>
- <pt x="318" y="298" on="0"/>
- <pt x="318" y="243" on="1"/>
- <pt x="318" y="195" on="0"/>
- <pt x="369" y="183" on="1"/>
- <pt x="410" y="173" on="0"/>
- <pt x="499" y="173" on="1"/>
- <pt x="561" y="173" on="1"/>
- <pt x="757" y="173" on="0"/>
- <pt x="845" y="114" on="1"/>
- <pt x="933" y="55" on="0"/>
- <pt x="933" y="-73" on="1"/>
- <pt x="933" y="-225" on="0"/>
- <pt x="795" y="-322" on="1"/>
- <pt x="658" y="-419" on="0"/>
- <pt x="446" y="-419" on="1"/>
- <pt x="269" y="-419" on="0"/>
- <pt x="161" y="-354" on="1"/>
- <pt x="53" y="-289" on="0"/>
- <pt x="53" y="-183" on="1"/>
- <pt x="53" y="-51" on="0"/>
- </contour>
- <contour>
- <pt x="472" y="1043" on="1"/>
- <pt x="312" y="1043" on="0"/>
- <pt x="312" y="731" on="1"/>
- <pt x="312" y="410" on="0"/>
- <pt x="472" y="410" on="1"/>
- <pt x="633" y="410" on="0"/>
- <pt x="633" y="725" on="1"/>
- <pt x="633" y="1043" on="0"/>
- </contour>
- <contour>
- <pt x="310" y="25" on="1"/>
- <pt x="248" y="-38" on="0"/>
- <pt x="248" y="-144" on="1"/>
- <pt x="248" y="-238" on="0"/>
- <pt x="313" y="-295" on="1"/>
- <pt x="379" y="-352" on="0"/>
- <pt x="480" y="-352" on="1"/>
- <pt x="589" y="-352" on="0"/>
- <pt x="665" y="-284" on="1"/>
- <pt x="741" y="-217" on="0"/>
- <pt x="741" y="-123" on="1"/>
- <pt x="741" y="25" on="0"/>
- <pt x="541" y="25" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 75 values pushed */
- 0 0 61 17 41 51 17 24 47 17 13 48 84 13 1 24 1 33 32 26 24 18 17 15 5
- 0 9 1 55 3 0 1 16 1 0 41 55 67 55 1 0 14 0 0 65 30 37 57 30 45
- 53 5 20 49 5 9 48 196 67 55 45 37 33 32 28 26 20 18 17 16 15 9 5 2 0
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="gbreve" xMin="53" yMin="-419" xMax="991" yMax="1604">
- <component glyphName="g" x="0" y="0" flags="0x4"/>
- <component glyphName="breve" x="127" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="gcircumflex" xMin="53" yMin="-419" xMax="991" yMax="1604">
- <contour>
- <pt x="258" y="42" on="1"/>
- <pt x="145" y="96" on="0"/>
- <pt x="145" y="182" on="1"/>
- <pt x="145" y="266" on="0"/>
- <pt x="300" y="367" on="1"/>
- <pt x="326" y="384" on="1"/>
- <pt x="231" y="432" on="0"/>
- <pt x="183" y="497" on="1"/>
- <pt x="114" y="589" on="0"/>
- <pt x="114" y="732" on="1"/>
- <pt x="114" y="908" on="0"/>
- <pt x="209" y="1009" on="1"/>
- <pt x="303" y="1110" on="0"/>
- <pt x="462" y="1110" on="1"/>
- <pt x="539" y="1110" on="0"/>
- <pt x="640" y="1070" on="1"/>
- <pt x="991" y="1098" on="1"/>
- <pt x="940" y="978" on="1"/>
- <pt x="702" y="1020" on="1"/>
- <pt x="830" y="889" on="0"/>
- <pt x="830" y="731" on="1"/>
- <pt x="830" y="569" on="0"/>
- <pt x="728" y="456" on="1"/>
- <pt x="626" y="342" on="0"/>
- <pt x="481" y="342" on="1"/>
- <pt x="437" y="342" on="0"/>
- <pt x="394" y="360" on="1"/>
- <pt x="318" y="298" on="0"/>
- <pt x="318" y="243" on="1"/>
- <pt x="318" y="195" on="0"/>
- <pt x="369" y="183" on="1"/>
- <pt x="410" y="173" on="0"/>
- <pt x="499" y="173" on="1"/>
- <pt x="561" y="173" on="1"/>
- <pt x="757" y="173" on="0"/>
- <pt x="845" y="114" on="1"/>
- <pt x="933" y="55" on="0"/>
- <pt x="933" y="-73" on="1"/>
- <pt x="933" y="-225" on="0"/>
- <pt x="795" y="-322" on="1"/>
- <pt x="658" y="-419" on="0"/>
- <pt x="446" y="-419" on="1"/>
- <pt x="269" y="-419" on="0"/>
- <pt x="161" y="-354" on="1"/>
- <pt x="53" y="-289" on="0"/>
- <pt x="53" y="-183" on="1"/>
- <pt x="53" y="-51" on="0"/>
- </contour>
- <contour>
- <pt x="472" y="1043" on="1"/>
- <pt x="312" y="1043" on="0"/>
- <pt x="312" y="731" on="1"/>
- <pt x="312" y="410" on="0"/>
- <pt x="472" y="410" on="1"/>
- <pt x="633" y="410" on="0"/>
- <pt x="633" y="725" on="1"/>
- <pt x="633" y="1043" on="0"/>
- </contour>
- <contour>
- <pt x="310" y="25" on="1"/>
- <pt x="248" y="-38" on="0"/>
- <pt x="248" y="-144" on="1"/>
- <pt x="248" y="-238" on="0"/>
- <pt x="313" y="-295" on="1"/>
- <pt x="379" y="-352" on="0"/>
- <pt x="480" y="-352" on="1"/>
- <pt x="589" y="-352" on="0"/>
- <pt x="665" y="-284" on="1"/>
- <pt x="741" y="-217" on="0"/>
- <pt x="741" y="-123" on="1"/>
- <pt x="741" y="25" on="0"/>
- <pt x="541" y="25" on="1"/>
- </contour>
- <contour>
- <pt x="141" y="1283" on="1"/>
- <pt x="382" y="1604" on="1"/>
- <pt x="604" y="1604" on="1"/>
- <pt x="844" y="1283" on="1"/>
- <pt x="758" y="1283" on="1"/>
- <pt x="493" y="1505" on="1"/>
- <pt x="227" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 101 values pushed */
- 0 0 61 17 41 51 17 24 47 17 13 48 84 13 1 1 73 69 0 2 0 1 1 74 72
- 71 68 16 5 0 1 3 0 0 24 1 33 32 26 24 18 17 15 5 0 9 1 55 3 0
- 41 55 70 69 1 67 55 1 2 0 14 0 0 65 30 37 57 30 45 53 5 20 49 5 9
- 48 196 74 73 72 71 70 69 68 67 55 45 37 33 32 28 26 20 18 17 16 15 9 5 2
- 0
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="gcommaaccent" xMin="53" yMin="-419" xMax="991" yMax="1737">
- <contour>
- <pt x="258" y="42" on="1"/>
- <pt x="145" y="96" on="0"/>
- <pt x="145" y="182" on="1"/>
- <pt x="145" y="266" on="0"/>
- <pt x="300" y="367" on="1"/>
- <pt x="326" y="384" on="1"/>
- <pt x="231" y="432" on="0"/>
- <pt x="183" y="497" on="1"/>
- <pt x="114" y="589" on="0"/>
- <pt x="114" y="732" on="1"/>
- <pt x="114" y="908" on="0"/>
- <pt x="209" y="1009" on="1"/>
- <pt x="303" y="1110" on="0"/>
- <pt x="462" y="1110" on="1"/>
- <pt x="539" y="1110" on="0"/>
- <pt x="640" y="1070" on="1"/>
- <pt x="991" y="1098" on="1"/>
- <pt x="940" y="978" on="1"/>
- <pt x="702" y="1020" on="1"/>
- <pt x="830" y="889" on="0"/>
- <pt x="830" y="731" on="1"/>
- <pt x="830" y="569" on="0"/>
- <pt x="728" y="456" on="1"/>
- <pt x="626" y="342" on="0"/>
- <pt x="481" y="342" on="1"/>
- <pt x="437" y="342" on="0"/>
- <pt x="394" y="360" on="1"/>
- <pt x="318" y="298" on="0"/>
- <pt x="318" y="243" on="1"/>
- <pt x="318" y="195" on="0"/>
- <pt x="369" y="183" on="1"/>
- <pt x="410" y="173" on="0"/>
- <pt x="499" y="173" on="1"/>
- <pt x="561" y="173" on="1"/>
- <pt x="757" y="173" on="0"/>
- <pt x="845" y="114" on="1"/>
- <pt x="933" y="55" on="0"/>
- <pt x="933" y="-73" on="1"/>
- <pt x="933" y="-225" on="0"/>
- <pt x="795" y="-322" on="1"/>
- <pt x="658" y="-419" on="0"/>
- <pt x="446" y="-419" on="1"/>
- <pt x="269" y="-419" on="0"/>
- <pt x="161" y="-354" on="1"/>
- <pt x="53" y="-289" on="0"/>
- <pt x="53" y="-183" on="1"/>
- <pt x="53" y="-51" on="0"/>
- </contour>
- <contour>
- <pt x="472" y="1043" on="1"/>
- <pt x="312" y="1043" on="0"/>
- <pt x="312" y="731" on="1"/>
- <pt x="312" y="410" on="0"/>
- <pt x="472" y="410" on="1"/>
- <pt x="633" y="410" on="0"/>
- <pt x="633" y="725" on="1"/>
- <pt x="633" y="1043" on="0"/>
- </contour>
- <contour>
- <pt x="310" y="25" on="1"/>
- <pt x="248" y="-38" on="0"/>
- <pt x="248" y="-144" on="1"/>
- <pt x="248" y="-238" on="0"/>
- <pt x="313" y="-295" on="1"/>
- <pt x="379" y="-352" on="0"/>
- <pt x="480" y="-352" on="1"/>
- <pt x="589" y="-352" on="0"/>
- <pt x="665" y="-284" on="1"/>
- <pt x="741" y="-217" on="0"/>
- <pt x="741" y="-123" on="1"/>
- <pt x="741" y="25" on="0"/>
- <pt x="541" y="25" on="1"/>
- </contour>
- <contour>
- <pt x="487" y="1480" on="1"/>
- <pt x="566" y="1480" on="1"/>
- <pt x="566" y="1283" on="1"/>
- <pt x="369" y="1283" on="1"/>
- <pt x="369" y="1455" on="1"/>
- <pt x="369" y="1616" on="0"/>
- <pt x="431" y="1682" on="1"/>
- <pt x="478" y="1732" on="0"/>
- <pt x="566" y="1737" on="1"/>
- <pt x="566" y="1688" on="1"/>
- <pt x="487" y="1681" on="0"/>
- <pt x="487" y="1532" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 121 values pushed */
- 0 0 61 17 41 51 17 24 47 17 13 48 84 13 1 1 16 70 1 2 0 24 1 33 32
- 26 24 18 17 15 5 0 9 1 55 3 0 79 77 76 72 69 68 6 13 70 41 55 71 70
- 1 67 55 1 2 0 14 0 0 65 30 37 57 30 45 53 5 20 49 5 9 48 196 79 68
- 67 33 32 26 6 69 71 3 18 17 16 15 4 13 37 20 69 55 5 0 3 13 45 28 9
- 2 4 12 71 0 0 77 76 70 69 4 3 71 1 4 48 196 72 71 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="gdotaccent" xMin="53" yMin="-419" xMax="991" yMax="1480">
- <contour>
- <pt x="258" y="42" on="1"/>
- <pt x="145" y="96" on="0"/>
- <pt x="145" y="182" on="1"/>
- <pt x="145" y="266" on="0"/>
- <pt x="300" y="367" on="1"/>
- <pt x="326" y="384" on="1"/>
- <pt x="231" y="432" on="0"/>
- <pt x="183" y="497" on="1"/>
- <pt x="114" y="589" on="0"/>
- <pt x="114" y="732" on="1"/>
- <pt x="114" y="908" on="0"/>
- <pt x="209" y="1009" on="1"/>
- <pt x="303" y="1110" on="0"/>
- <pt x="462" y="1110" on="1"/>
- <pt x="539" y="1110" on="0"/>
- <pt x="640" y="1070" on="1"/>
- <pt x="991" y="1098" on="1"/>
- <pt x="940" y="978" on="1"/>
- <pt x="702" y="1020" on="1"/>
- <pt x="830" y="889" on="0"/>
- <pt x="830" y="731" on="1"/>
- <pt x="830" y="569" on="0"/>
- <pt x="728" y="456" on="1"/>
- <pt x="626" y="342" on="0"/>
- <pt x="481" y="342" on="1"/>
- <pt x="437" y="342" on="0"/>
- <pt x="394" y="360" on="1"/>
- <pt x="318" y="298" on="0"/>
- <pt x="318" y="243" on="1"/>
- <pt x="318" y="195" on="0"/>
- <pt x="369" y="183" on="1"/>
- <pt x="410" y="173" on="0"/>
- <pt x="499" y="173" on="1"/>
- <pt x="561" y="173" on="1"/>
- <pt x="757" y="173" on="0"/>
- <pt x="845" y="114" on="1"/>
- <pt x="933" y="55" on="0"/>
- <pt x="933" y="-73" on="1"/>
- <pt x="933" y="-225" on="0"/>
- <pt x="795" y="-322" on="1"/>
- <pt x="658" y="-419" on="0"/>
- <pt x="446" y="-419" on="1"/>
- <pt x="269" y="-419" on="0"/>
- <pt x="161" y="-354" on="1"/>
- <pt x="53" y="-289" on="0"/>
- <pt x="53" y="-183" on="1"/>
- <pt x="53" y="-51" on="0"/>
- </contour>
- <contour>
- <pt x="472" y="1043" on="1"/>
- <pt x="312" y="1043" on="0"/>
- <pt x="312" y="731" on="1"/>
- <pt x="312" y="410" on="0"/>
- <pt x="472" y="410" on="1"/>
- <pt x="633" y="410" on="0"/>
- <pt x="633" y="725" on="1"/>
- <pt x="633" y="1043" on="0"/>
- </contour>
- <contour>
- <pt x="310" y="25" on="1"/>
- <pt x="248" y="-38" on="0"/>
- <pt x="248" y="-144" on="1"/>
- <pt x="248" y="-238" on="0"/>
- <pt x="313" y="-295" on="1"/>
- <pt x="379" y="-352" on="0"/>
- <pt x="480" y="-352" on="1"/>
- <pt x="589" y="-352" on="0"/>
- <pt x="665" y="-284" on="1"/>
- <pt x="741" y="-217" on="0"/>
- <pt x="741" y="-123" on="1"/>
- <pt x="741" y="25" on="0"/>
- <pt x="541" y="25" on="1"/>
- </contour>
- <contour>
- <pt x="369" y="1283" on="1"/>
- <pt x="369" y="1480" on="1"/>
- <pt x="566" y="1480" on="1"/>
- <pt x="566" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 120 values pushed */
- 0 0 61 17 41 51 17 24 47 17 13 48 84 13 1 1 16 68 1 2 0 24 1 33 32
- 26 24 18 17 15 5 0 9 1 55 3 0 1 41 2 0 0 0 71 68 5 1 69 1 4
- 48 84 67 55 1 0 70 69 0 14 0 0 65 30 37 57 30 45 53 5 20 49 5 9 48
- 196 67 33 32 26 4 70 68 3 18 17 16 15 4 13 37 20 70 55 5 0 3 13 45 28
- 9 2 4 12 68 0 0 71 70 4 1 68 1 4 48 196 69 68 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="germandbls" xMin="27" yMin="-25" xMax="993" yMax="1604">
- <contour>
- <pt x="530" y="4" on="1"/>
- <pt x="530" y="228" on="1"/>
- <pt x="617" y="228" on="1"/>
- <pt x="618" y="210" on="1"/>
- <pt x="622" y="139" on="1"/>
- <pt x="628" y="36" on="0"/>
- <pt x="712" y="36" on="1"/>
- <pt x="765" y="36" on="0"/>
- <pt x="799" y="84" on="1"/>
- <pt x="833" y="133" on="0"/>
- <pt x="833" y="204" on="1"/>
- <pt x="833" y="313" on="0"/>
- <pt x="712" y="451" on="1"/>
- <pt x="597" y="582" on="1"/>
- <pt x="451" y="749" on="0"/>
- <pt x="451" y="835" on="1"/>
- <pt x="451" y="911" on="0"/>
- <pt x="535" y="1017" on="1"/>
- <pt x="562" y="1051" on="1"/>
- <pt x="641" y="1151" on="0"/>
- <pt x="641" y="1304" on="1"/>
- <pt x="641" y="1542" on="0"/>
- <pt x="490" y="1542" on="1"/>
- <pt x="391" y="1542" on="0"/>
- <pt x="365" y="1445" on="1"/>
- <pt x="345" y="1371" on="0"/>
- <pt x="345" y="1216" on="1"/>
- <pt x="345" y="259" on="1"/>
- <pt x="350" y="159" on="1"/>
- <pt x="351" y="96" on="0"/>
- <pt x="370" y="80" on="1"/>
- <pt x="389" y="66" on="0"/>
- <pt x="438" y="63" on="1"/>
- <pt x="456" y="62" on="1"/>
- <pt x="456" y="0" on="1"/>
- <pt x="27" y="0" on="1"/>
- <pt x="27" y="62" on="1"/>
- <pt x="45" y="63" on="1"/>
- <pt x="120" y="67" on="0"/>
- <pt x="132" y="89" on="1"/>
- <pt x="145" y="108" on="0"/>
- <pt x="146" y="160" on="1"/>
- <pt x="148" y="259" on="1"/>
- <pt x="148" y="1112" on="1"/>
- <pt x="148" y="1383" on="0"/>
- <pt x="226" y="1493" on="1"/>
- <pt x="305" y="1604" on="0"/>
- <pt x="497" y="1604" on="1"/>
- <pt x="649" y="1604" on="0"/>
- <pt x="737" y="1536" on="1"/>
- <pt x="826" y="1469" on="0"/>
- <pt x="826" y="1358" on="1"/>
- <pt x="826" y="1252" on="0"/>
- <pt x="693" y="1108" on="1"/>
- <pt x="656" y="1068" on="1"/>
- <pt x="623" y="1034" on="1"/>
- <pt x="579" y="989" on="0"/>
- <pt x="579" y="939" on="1"/>
- <pt x="579" y="882" on="0"/>
- <pt x="642" y="812" on="1"/>
- <pt x="701" y="746" on="1"/>
- <pt x="803" y="630" on="1"/>
- <pt x="926" y="490" on="0"/>
- <pt x="959" y="430" on="1"/>
- <pt x="993" y="367" on="0"/>
- <pt x="993" y="282" on="1"/>
- <pt x="993" y="154" on="0"/>
- <pt x="908" y="64" on="1"/>
- <pt x="823" y="-25" on="0"/>
- <pt x="701" y="-25" on="1"/>
- <pt x="645" y="-25" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 0 0 22 11 47 6 11 69 48 84 69 2 43 42 36 33 27 26 2 1 0 9 13 47 34
- 35 34 1 0 14 0 0 20 16 51 10 24 65 48 196 15 34 33 15 3 0 26 3 2 65
- 57 51 3 12 0 36 35 42 0 0 27 26 4 1 42 1 4 48 196 1 0 1 43 42 1
- 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- MDRP[00000]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="grave" xMin="91" yMin="1283" xMax="591" yMax="1604">
- <contour>
- <pt x="591" y="1283" on="1"/>
- <pt x="498" y="1283" on="1"/>
- <pt x="91" y="1604" on="1"/>
- <pt x="350" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 12 values pushed */
- 1 0 2 3 2 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="greater" xMin="84" yMin="99" xMax="1071" yMax="1086">
- <contour>
- <pt x="84" y="1086" on="1"/>
- <pt x="1071" y="592" on="1"/>
- <pt x="84" y="99" on="1"/>
- <pt x="84" y="209" on="1"/>
- <pt x="848" y="591" on="1"/>
- <pt x="848" y="593" on="1"/>
- <pt x="84" y="976" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 15 values pushed */
- 6 5 4 3 2 1 0 14 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="guillemotleft" xMin="74" yMin="111" xMax="938" yMax="975">
- <contour>
- <pt x="547" y="936" on="1"/>
- <pt x="273" y="543" on="1"/>
- <pt x="547" y="151" on="1"/>
- <pt x="497" y="111" on="1"/>
- <pt x="74" y="543" on="1"/>
- <pt x="497" y="975" on="1"/>
- </contour>
- <contour>
- <pt x="938" y="936" on="1"/>
- <pt x="664" y="543" on="1"/>
- <pt x="938" y="151" on="1"/>
- <pt x="888" y="111" on="1"/>
- <pt x="465" y="543" on="1"/>
- <pt x="888" y="975" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 11 10 9 8 7 6 5 4 3 2 1 0 14 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="guillemotright" xMin="86" yMin="111" xMax="950" yMax="975">
- <contour>
- <pt x="477" y="149" on="1"/>
- <pt x="750" y="543" on="1"/>
- <pt x="477" y="934" on="1"/>
- <pt x="527" y="975" on="1"/>
- <pt x="950" y="543" on="1"/>
- <pt x="527" y="111" on="1"/>
- </contour>
- <contour>
- <pt x="86" y="149" on="1"/>
- <pt x="359" y="543" on="1"/>
- <pt x="86" y="934" on="1"/>
- <pt x="136" y="975" on="1"/>
- <pt x="559" y="543" on="1"/>
- <pt x="136" y="111" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 11 10 9 8 7 6 5 4 3 2 1 0 14 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="guilsinglleft" xMin="86" yMin="111" xMax="559" yMax="975">
- <contour>
- <pt x="559" y="936" on="1"/>
- <pt x="285" y="543" on="1"/>
- <pt x="559" y="151" on="1"/>
- <pt x="509" y="111" on="1"/>
- <pt x="86" y="543" on="1"/>
- <pt x="509" y="975" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 5 4 3 2 1 0 14 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="guilsinglright" xMin="123" yMin="111" xMax="596" yMax="975">
- <contour>
- <pt x="123" y="149" on="1"/>
- <pt x="396" y="543" on="1"/>
- <pt x="123" y="934" on="1"/>
- <pt x="173" y="975" on="1"/>
- <pt x="596" y="543" on="1"/>
- <pt x="173" y="111" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 5 4 3 2 1 0 14 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="h" xMin="37" yMin="0" xMax="1018" yMax="1579">
- <contour>
- <pt x="37" y="0" on="1"/>
- <pt x="37" y="62" on="1"/>
- <pt x="56" y="63" on="1"/>
- <pt x="129" y="67" on="0"/>
- <pt x="142" y="89" on="1"/>
- <pt x="155" y="108" on="0"/>
- <pt x="156" y="160" on="1"/>
- <pt x="158" y="259" on="1"/>
- <pt x="158" y="1320" on="1"/>
- <pt x="156" y="1419" on="1"/>
- <pt x="156" y="1487" on="0"/>
- <pt x="131" y="1501" on="1"/>
- <pt x="109" y="1513" on="0"/>
- <pt x="56" y="1516" on="1"/>
- <pt x="37" y="1517" on="1"/>
- <pt x="37" y="1579" on="1"/>
- <pt x="356" y="1579" on="1"/>
- <pt x="356" y="907" on="1"/>
- <pt x="420" y="999" on="0"/>
- <pt x="480" y="1044" on="1"/>
- <pt x="566" y="1110" on="0"/>
- <pt x="667" y="1110" on="1"/>
- <pt x="791" y="1110" on="0"/>
- <pt x="844" y="1032" on="1"/>
- <pt x="897" y="954" on="0"/>
- <pt x="897" y="765" on="1"/>
- <pt x="897" y="259" on="1"/>
- <pt x="899" y="160" on="1"/>
- <pt x="899" y="92" on="0"/>
- <pt x="924" y="78" on="1"/>
- <pt x="946" y="66" on="0"/>
- <pt x="1000" y="63" on="1"/>
- <pt x="1018" y="62" on="1"/>
- <pt x="1018" y="0" on="1"/>
- <pt x="579" y="0" on="1"/>
- <pt x="579" y="62" on="1"/>
- <pt x="598" y="63" on="1"/>
- <pt x="675" y="68" on="0"/>
- <pt x="687" y="92" on="1"/>
- <pt x="698" y="112" on="0"/>
- <pt x="698" y="160" on="1"/>
- <pt x="700" y="259" on="1"/>
- <pt x="700" y="734" on="1"/>
- <pt x="697" y="811" on="1"/>
- <pt x="694" y="900" on="0"/>
- <pt x="672" y="937" on="1"/>
- <pt x="647" y="981" on="0"/>
- <pt x="592" y="981" on="1"/>
- <pt x="477" y="981" on="0"/>
- <pt x="356" y="840" on="1"/>
- <pt x="356" y="259" on="1"/>
- <pt x="357" y="160" on="1"/>
- <pt x="358" y="91" on="0"/>
- <pt x="383" y="78" on="1"/>
- <pt x="405" y="66" on="0"/>
- <pt x="458" y="63" on="1"/>
- <pt x="477" y="62" on="1"/>
- <pt x="477" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 94 values pushed */
- 0 0 47 29 21 48 84 21 1 51 57 1 14 8 2 15 1 3 0 1 50 49 42 41 35
- 32 26 25 17 7 1 11 1 0 3 0 16 15 1 57 34 33 0 3 2 0 14 57 51 51
- 35 34 3 41 16 3 33 32 2 13 25 15 14 1 0 4 13 7 0 0 42 41 4 1 25
- 50 49 17 16 4 3 7 2 4 48 196 26 25 1 8 7 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hbar" xMin="37" yMin="0" xMax="1018" yMax="1579">
- <contour>
- <pt x="37" y="0" on="1"/>
- <pt x="37" y="62" on="1"/>
- <pt x="56" y="63" on="1"/>
- <pt x="129" y="67" on="0"/>
- <pt x="142" y="89" on="1"/>
- <pt x="155" y="108" on="0"/>
- <pt x="156" y="160" on="1"/>
- <pt x="158" y="259" on="1"/>
- <pt x="158" y="1246" on="1"/>
- <pt x="37" y="1246" on="1"/>
- <pt x="37" y="1308" on="1"/>
- <pt x="158" y="1308" on="1"/>
- <pt x="158" y="1320" on="1"/>
- <pt x="156" y="1419" on="1"/>
- <pt x="156" y="1487" on="0"/>
- <pt x="131" y="1501" on="1"/>
- <pt x="109" y="1513" on="0"/>
- <pt x="56" y="1516" on="1"/>
- <pt x="37" y="1517" on="1"/>
- <pt x="37" y="1579" on="1"/>
- <pt x="356" y="1579" on="1"/>
- <pt x="356" y="1308" on="1"/>
- <pt x="666" y="1308" on="1"/>
- <pt x="666" y="1246" on="1"/>
- <pt x="356" y="1246" on="1"/>
- <pt x="356" y="907" on="1"/>
- <pt x="420" y="999" on="0"/>
- <pt x="480" y="1044" on="1"/>
- <pt x="566" y="1110" on="0"/>
- <pt x="667" y="1110" on="1"/>
- <pt x="791" y="1110" on="0"/>
- <pt x="844" y="1032" on="1"/>
- <pt x="897" y="954" on="0"/>
- <pt x="897" y="765" on="1"/>
- <pt x="897" y="259" on="1"/>
- <pt x="899" y="160" on="1"/>
- <pt x="899" y="92" on="0"/>
- <pt x="924" y="78" on="1"/>
- <pt x="946" y="66" on="0"/>
- <pt x="1000" y="63" on="1"/>
- <pt x="1018" y="62" on="1"/>
- <pt x="1018" y="0" on="1"/>
- <pt x="579" y="0" on="1"/>
- <pt x="579" y="62" on="1"/>
- <pt x="598" y="63" on="1"/>
- <pt x="675" y="68" on="0"/>
- <pt x="687" y="92" on="1"/>
- <pt x="698" y="112" on="0"/>
- <pt x="698" y="160" on="1"/>
- <pt x="700" y="259" on="1"/>
- <pt x="700" y="734" on="1"/>
- <pt x="697" y="811" on="1"/>
- <pt x="694" y="900" on="0"/>
- <pt x="672" y="937" on="1"/>
- <pt x="647" y="981" on="0"/>
- <pt x="592" y="981" on="1"/>
- <pt x="477" y="981" on="0"/>
- <pt x="356" y="840" on="1"/>
- <pt x="356" y="259" on="1"/>
- <pt x="357" y="160" on="1"/>
- <pt x="358" y="91" on="0"/>
- <pt x="383" y="78" on="1"/>
- <pt x="405" y="66" on="0"/>
- <pt x="458" y="63" on="1"/>
- <pt x="477" y="62" on="1"/>
- <pt x="477" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 118 values pushed */
- 0 0 55 29 29 48 84 29 1 59 65 18 12 2 19 10 3 1 58 57 50 49 43 40 34
- 33 25 7 1 11 1 0 3 0 0 0 24 23 9 8 14 3 10 1 4 48 84 20 19 1
- 22 21 11 10 3 65 42 41 0 3 3 0 14 65 59 59 43 42 23 22 5 49 20 3 41
- 40 2 13 33 19 18 10 9 1 0 6 13 7 0 0 50 49 4 1 33 58 57 25 24 21
- 20 4 5 7 2 4 48 196 34 33 1 12 11 8 7 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hcircumflex" xMin="37" yMin="0" xMax="1018" yMax="1999">
- <contour>
- <pt x="37" y="0" on="1"/>
- <pt x="37" y="62" on="1"/>
- <pt x="56" y="63" on="1"/>
- <pt x="129" y="67" on="0"/>
- <pt x="142" y="89" on="1"/>
- <pt x="155" y="108" on="0"/>
- <pt x="156" y="160" on="1"/>
- <pt x="158" y="259" on="1"/>
- <pt x="158" y="1320" on="1"/>
- <pt x="156" y="1419" on="1"/>
- <pt x="156" y="1487" on="0"/>
- <pt x="131" y="1501" on="1"/>
- <pt x="109" y="1513" on="0"/>
- <pt x="56" y="1516" on="1"/>
- <pt x="37" y="1517" on="1"/>
- <pt x="37" y="1579" on="1"/>
- <pt x="356" y="1579" on="1"/>
- <pt x="356" y="907" on="1"/>
- <pt x="420" y="999" on="0"/>
- <pt x="480" y="1044" on="1"/>
- <pt x="566" y="1110" on="0"/>
- <pt x="667" y="1110" on="1"/>
- <pt x="791" y="1110" on="0"/>
- <pt x="844" y="1032" on="1"/>
- <pt x="897" y="954" on="0"/>
- <pt x="897" y="765" on="1"/>
- <pt x="897" y="259" on="1"/>
- <pt x="899" y="160" on="1"/>
- <pt x="899" y="92" on="0"/>
- <pt x="924" y="78" on="1"/>
- <pt x="946" y="66" on="0"/>
- <pt x="1000" y="63" on="1"/>
- <pt x="1018" y="62" on="1"/>
- <pt x="1018" y="0" on="1"/>
- <pt x="579" y="0" on="1"/>
- <pt x="579" y="62" on="1"/>
- <pt x="598" y="63" on="1"/>
- <pt x="675" y="68" on="0"/>
- <pt x="687" y="92" on="1"/>
- <pt x="698" y="112" on="0"/>
- <pt x="698" y="160" on="1"/>
- <pt x="700" y="259" on="1"/>
- <pt x="700" y="734" on="1"/>
- <pt x="697" y="811" on="1"/>
- <pt x="694" y="900" on="0"/>
- <pt x="672" y="937" on="1"/>
- <pt x="647" y="981" on="0"/>
- <pt x="592" y="981" on="1"/>
- <pt x="477" y="981" on="0"/>
- <pt x="356" y="840" on="1"/>
- <pt x="356" y="259" on="1"/>
- <pt x="357" y="160" on="1"/>
- <pt x="358" y="91" on="0"/>
- <pt x="383" y="78" on="1"/>
- <pt x="405" y="66" on="0"/>
- <pt x="458" y="63" on="1"/>
- <pt x="477" y="62" on="1"/>
- <pt x="477" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="171" y="1678" on="1"/>
- <pt x="412" y="1999" on="1"/>
- <pt x="634" y="1999" on="1"/>
- <pt x="874" y="1678" on="1"/>
- <pt x="788" y="1678" on="1"/>
- <pt x="523" y="1900" on="1"/>
- <pt x="257" y="1678" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 121 values pushed */
- 0 0 47 39 21 48 84 21 1 51 57 64 63 62 61 58 5 59 15 3 1 14 8 2 15
- 1 3 0 1 50 49 42 41 35 32 26 25 17 7 1 11 1 0 3 0 60 59 1 16 15
- 1 57 34 33 0 3 3 0 14 57 51 62 61 2 25 41 3 63 60 59 51 35 34 6 41
- 16 3 64 58 2 16 7 3 33 32 2 13 25 15 14 1 0 4 13 7 0 0 42 41 5
- 1 25 50 49 17 16 5 3 7 2 4 48 196 26 25 1 8 7 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hungarumlaut" xMin="-5" yMin="1283" xMax="686" yMax="1604">
- <contour>
- <pt x="-5" y="1283" on="1"/>
- <pt x="209" y="1604" on="1"/>
- <pt x="378" y="1604" on="1"/>
- <pt x="57" y="1283" on="1"/>
- </contour>
- <contour>
- <pt x="304" y="1283" on="1"/>
- <pt x="517" y="1604" on="1"/>
- <pt x="686" y="1604" on="1"/>
- <pt x="365" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 22 values pushed */
- 7 4 3 0 4 13 1 6 5 2 1 3 0 14 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hyphen" xMin="82" yMin="543" xMax="600" yMax="666">
- <contour>
- <pt x="82" y="543" on="1"/>
- <pt x="82" y="666" on="1"/>
- <pt x="600" y="666" on="1"/>
- <pt x="600" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 12 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hyphen#1" xMin="82" yMin="543" xMax="600" yMax="666">
- <contour>
- <pt x="82" y="543" on="1"/>
- <pt x="82" y="666" on="1"/>
- <pt x="600" y="666" on="1"/>
- <pt x="600" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 12 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="i" xMin="47" yMin="0" xMax="536" yMax="1480">
- <contour>
- <pt x="193" y="1283" on="1"/>
- <pt x="193" y="1480" on="1"/>
- <pt x="390" y="1480" on="1"/>
- <pt x="390" y="1283" on="1"/>
- </contour>
- <contour>
- <pt x="47" y="0" on="1"/>
- <pt x="47" y="62" on="1"/>
- <pt x="66" y="63" on="1"/>
- <pt x="174" y="70" on="0"/>
- <pt x="180" y="87" on="1"/>
- <pt x="191" y="106" on="0"/>
- <pt x="191" y="160" on="1"/>
- <pt x="193" y="259" on="1"/>
- <pt x="193" y="827" on="1"/>
- <pt x="191" y="925" on="1"/>
- <pt x="190" y="999" on="0"/>
- <pt x="169" y="1007" on="1"/>
- <pt x="149" y="1018" on="0"/>
- <pt x="66" y="1023" on="1"/>
- <pt x="47" y="1024" on="1"/>
- <pt x="47" y="1086" on="1"/>
- <pt x="390" y="1086" on="1"/>
- <pt x="390" y="259" on="1"/>
- <pt x="392" y="160" on="1"/>
- <pt x="393" y="86" on="0"/>
- <pt x="414" y="78" on="1"/>
- <pt x="435" y="68" on="0"/>
- <pt x="517" y="63" on="1"/>
- <pt x="536" y="62" on="1"/>
- <pt x="536" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 67 values pushed */
- 27 21 18 15 12 11 8 5 8 19 4 3 0 0 3 0 5 1 1 1 4 48 84 28 4
- 1 0 20 19 1 2 1 0 14 28 27 2 13 2 19 18 15 8 5 4 6 13 0 0 0
- 21 20 3 2 4 3 0 1 4 48 196 12 11 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="iacute" xMin="47" yMin="0" xMax="576" yMax="1604">
- <component glyphName="dotlessi" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="-15" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ibreve" xMin="-42" yMin="0" xMax="624" yMax="1604">
- <contour>
- <pt x="535" y="62" on="1"/>
- <pt x="535" y="0" on="1"/>
- <pt x="46" y="0" on="1"/>
- <pt x="46" y="62" on="1"/>
- <pt x="65" y="63" on="1"/>
- <pt x="173" y="70" on="0"/>
- <pt x="179" y="87" on="1"/>
- <pt x="189" y="106" on="0"/>
- <pt x="190" y="160" on="1"/>
- <pt x="192" y="259" on="1"/>
- <pt x="192" y="827" on="1"/>
- <pt x="190" y="925" on="1"/>
- <pt x="189" y="999" on="0"/>
- <pt x="168" y="1007" on="1"/>
- <pt x="149" y="1018" on="0"/>
- <pt x="65" y="1023" on="1"/>
- <pt x="46" y="1024" on="1"/>
- <pt x="46" y="1086" on="1"/>
- <pt x="389" y="1086" on="1"/>
- <pt x="389" y="259" on="1"/>
- <pt x="391" y="160" on="1"/>
- <pt x="392" y="85" on="0"/>
- <pt x="414" y="78" on="1"/>
- <pt x="437" y="68" on="0"/>
- <pt x="516" y="63" on="1"/>
- </contour>
- <contour>
- <pt x="-42" y="1604" on="1"/>
- <pt x="23" y="1604" on="1"/>
- <pt x="50" y="1514" on="0"/>
- <pt x="110" y="1472" on="1"/>
- <pt x="178" y="1425" on="0"/>
- <pt x="291" y="1425" on="1"/>
- <pt x="417" y="1425" on="0"/>
- <pt x="487" y="1484" on="1"/>
- <pt x="536" y="1524" on="0"/>
- <pt x="560" y="1604" on="1"/>
- <pt x="624" y="1604" on="1"/>
- <pt x="605" y="1469" on="0"/>
- <pt x="533" y="1388" on="1"/>
- <pt x="439" y="1283" on="0"/>
- <pt x="291" y="1283" on="1"/>
- <pt x="137" y="1283" on="0"/>
- <pt x="42" y="1398" on="1"/>
- <pt x="-23" y="1476" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 66 values pushed */
- 0 0 30 20 39 48 84 19 16 13 10 9 3 0 7 17 1 3 35 34 26 25 4 13 39
- 17 2 1 1 0 18 17 1 14 35 34 1 0 4 13 18 26 25 17 16 13 3 2 7 13
- 9 0 0 19 18 4 1 9 1 4 48 196 10 9 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="icircumflex" xMin="-61" yMin="0" xMax="642" yMax="1604">
- <component glyphName="dotlessi" x="-1" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="-51" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="idieresis" xMin="7" yMin="0" xMax="575" yMax="1456">
- <contour>
- <pt x="535" y="62" on="1"/>
- <pt x="535" y="0" on="1"/>
- <pt x="46" y="0" on="1"/>
- <pt x="46" y="62" on="1"/>
- <pt x="65" y="63" on="1"/>
- <pt x="173" y="70" on="0"/>
- <pt x="179" y="87" on="1"/>
- <pt x="189" y="106" on="0"/>
- <pt x="190" y="160" on="1"/>
- <pt x="192" y="259" on="1"/>
- <pt x="192" y="827" on="1"/>
- <pt x="190" y="925" on="1"/>
- <pt x="189" y="999" on="0"/>
- <pt x="168" y="1007" on="1"/>
- <pt x="149" y="1018" on="0"/>
- <pt x="65" y="1023" on="1"/>
- <pt x="46" y="1024" on="1"/>
- <pt x="46" y="1086" on="1"/>
- <pt x="389" y="1086" on="1"/>
- <pt x="389" y="259" on="1"/>
- <pt x="391" y="160" on="1"/>
- <pt x="392" y="86" on="0"/>
- <pt x="414" y="78" on="1"/>
- <pt x="437" y="68" on="0"/>
- <pt x="516" y="63" on="1"/>
- </contour>
- <contour>
- <pt x="7" y="1283" on="1"/>
- <pt x="7" y="1456" on="1"/>
- <pt x="180" y="1456" on="1"/>
- <pt x="180" y="1283" on="1"/>
- </contour>
- <contour>
- <pt x="402" y="1283" on="1"/>
- <pt x="402" y="1456" on="1"/>
- <pt x="575" y="1456" on="1"/>
- <pt x="575" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 19 16 13 10 9 3 0 7 17 1 3 0 0 32 29 28 25 13 3 26 1 4 48 84 31
- 30 27 26 3 2 1 1 2 0 18 17 1 14 1 0 2 31 29 3 17 16 13 3 2 5
- 27 25 3 0 0 30 29 13 1 31 28 27 13 1 25 19 18 4 1 9 3 4 48 196 32
- 31 1 26 25 1 10 9 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="igrave" xMin="7" yMin="0" xMax="535" yMax="1604">
- <component glyphName="dotlessi" x="-1" y="0" flags="0x4"/>
- <component glyphName="grave" x="-84" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ij" xMin="47" yMin="-419" xMax="1021" yMax="1480">
- <component glyphName="i" x="0" y="0" flags="0x4"/>
- <component glyphName="j" x="562" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="imacron" xMin="-40" yMin="0" xMax="602" yMax="1406">
- <component glyphName="dotlessi" x="-1" y="0" flags="0x4"/>
- <component glyphName="macron" x="-60" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="iogonek" xMin="47" yMin="-370" xMax="536" yMax="1480">
- <component glyphName="i" x="0" y="0" flags="0x4"/>
- <component glyphName="ogonek" x="-39" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="itilde" xMin="-55" yMin="0" xMax="611" yMax="1518">
- <contour>
- <pt x="535" y="62" on="1"/>
- <pt x="535" y="0" on="1"/>
- <pt x="46" y="0" on="1"/>
- <pt x="46" y="62" on="1"/>
- <pt x="65" y="63" on="1"/>
- <pt x="173" y="70" on="0"/>
- <pt x="179" y="87" on="1"/>
- <pt x="189" y="106" on="0"/>
- <pt x="190" y="160" on="1"/>
- <pt x="192" y="259" on="1"/>
- <pt x="192" y="827" on="1"/>
- <pt x="190" y="925" on="1"/>
- <pt x="189" y="999" on="0"/>
- <pt x="168" y="1007" on="1"/>
- <pt x="149" y="1018" on="0"/>
- <pt x="65" y="1023" on="1"/>
- <pt x="46" y="1024" on="1"/>
- <pt x="46" y="1086" on="1"/>
- <pt x="389" y="1086" on="1"/>
- <pt x="389" y="259" on="1"/>
- <pt x="391" y="160" on="1"/>
- <pt x="392" y="86" on="0"/>
- <pt x="414" y="78" on="1"/>
- <pt x="437" y="68" on="0"/>
- <pt x="516" y="63" on="1"/>
- </contour>
- <contour>
- <pt x="-55" y="1283" on="1"/>
- <pt x="-28" y="1423" on="0"/>
- <pt x="41" y="1476" on="1"/>
- <pt x="95" y="1518" on="0"/>
- <pt x="172" y="1518" on="1"/>
- <pt x="237" y="1518" on="0"/>
- <pt x="290" y="1480" on="1"/>
- <pt x="325" y="1455" on="1"/>
- <pt x="377" y="1418" on="0"/>
- <pt x="431" y="1418" on="1"/>
- <pt x="527" y="1418" on="0"/>
- <pt x="549" y="1517" on="1"/>
- <pt x="611" y="1517" on="1"/>
- <pt x="583" y="1378" on="0"/>
- <pt x="515" y="1325" on="1"/>
- <pt x="461" y="1283" on="0"/>
- <pt x="384" y="1283" on="1"/>
- <pt x="321" y="1283" on="0"/>
- <pt x="266" y="1321" on="1"/>
- <pt x="231" y="1345" on="1"/>
- <pt x="176" y="1383" on="0"/>
- <pt x="124" y="1383" on="1"/>
- <pt x="36" y="1383" on="0"/>
- <pt x="7" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 0 0 46 20 29 34 20 41 48 84 29 0 41 1 48 41 25 3 0 17 3 0 19 16 13
- 10 9 3 0 7 17 1 3 1 37 36 2 13 0 0 2 1 1 0 18 17 1 14 37 36
- 1 0 4 13 18 48 25 17 16 13 3 2 7 13 9 0 0 19 18 5 1 9 1 4 48
- 196 10 9 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="j" xMin="-78" yMin="-419" xMax="459" yMax="1480">
- <contour>
- <pt x="-78" y="-380" on="1"/>
- <pt x="-78" y="-136" on="1"/>
- <pt x="21" y="-136" on="1"/>
- <pt x="22" y="-154" on="1"/>
- <pt x="26" y="-268" on="0"/>
- <pt x="47" y="-306" on="1"/>
- <pt x="72" y="-352" on="0"/>
- <pt x="133" y="-352" on="1"/>
- <pt x="262" y="-352" on="0"/>
- <pt x="262" y="-185" on="1"/>
- <pt x="262" y="-82" on="1"/>
- <pt x="262" y="827" on="1"/>
- <pt x="260" y="925" on="1"/>
- <pt x="260" y="993" on="0"/>
- <pt x="235" y="1007" on="1"/>
- <pt x="214" y="1019" on="0"/>
- <pt x="159" y="1023" on="1"/>
- <pt x="141" y="1024" on="1"/>
- <pt x="141" y="1086" on="1"/>
- <pt x="459" y="1086" on="1"/>
- <pt x="459" y="12" on="1"/>
- <pt x="459" y="-419" on="0"/>
- <pt x="127" y="-419" on="1"/>
- <pt x="51" y="-419" on="0"/>
- </contour>
- <contour>
- <pt x="262" y="1283" on="1"/>
- <pt x="262" y="1480" on="1"/>
- <pt x="459" y="1480" on="1"/>
- <pt x="459" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 76 values pushed */
- 0 0 7 17 22 48 84 1 20 17 11 3 18 2 3 0 1 10 9 2 1 0 5 13 22
- 2 0 0 0 27 24 5 1 25 1 4 48 84 26 25 0 19 18 1 14 18 17 2 3 9
- 0 3 0 0 25 24 11 10 9 4 4 19 1 4 48 196 27 26 20 19 3 1 0 1 2
- 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="jcircumflex" xMin="-78" yMin="-419" xMax="656" yMax="1604">
- <contour>
- <pt x="-78" y="-380" on="1"/>
- <pt x="-78" y="-136" on="1"/>
- <pt x="21" y="-136" on="1"/>
- <pt x="22" y="-154" on="1"/>
- <pt x="26" y="-268" on="0"/>
- <pt x="47" y="-306" on="1"/>
- <pt x="72" y="-352" on="0"/>
- <pt x="133" y="-352" on="1"/>
- <pt x="262" y="-352" on="0"/>
- <pt x="262" y="-185" on="1"/>
- <pt x="262" y="-82" on="1"/>
- <pt x="262" y="827" on="1"/>
- <pt x="260" y="925" on="1"/>
- <pt x="260" y="993" on="0"/>
- <pt x="235" y="1007" on="1"/>
- <pt x="214" y="1019" on="0"/>
- <pt x="159" y="1023" on="1"/>
- <pt x="141" y="1024" on="1"/>
- <pt x="141" y="1086" on="1"/>
- <pt x="459" y="1086" on="1"/>
- <pt x="459" y="12" on="1"/>
- <pt x="459" y="-419" on="0"/>
- <pt x="127" y="-419" on="1"/>
- <pt x="51" y="-419" on="0"/>
- </contour>
- <contour>
- <pt x="-47" y="1283" on="1"/>
- <pt x="194" y="1604" on="1"/>
- <pt x="416" y="1604" on="1"/>
- <pt x="656" y="1283" on="1"/>
- <pt x="570" y="1283" on="1"/>
- <pt x="305" y="1505" on="1"/>
- <pt x="40" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 92 values pushed */
- 0 0 7 17 22 48 84 1 29 25 0 2 0 1 30 28 27 24 4 0 18 3 0 1 20
- 17 11 3 18 2 3 0 1 10 9 2 1 0 5 13 22 2 0 26 25 1 0 19 18 1
- 14 29 26 2 19 9 3 30 25 24 18 17 2 6 9 0 3 28 27 2 13 19 0 0 20
- 19 4 1 9 1 4 48 196 11 10 9 2 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="k" xMin="31" yMin="0" xMax="1024" yMax="1579">
- <contour>
- <pt x="31" y="0" on="1"/>
- <pt x="31" y="62" on="1"/>
- <pt x="50" y="63" on="1"/>
- <pt x="123" y="67" on="0"/>
- <pt x="136" y="89" on="1"/>
- <pt x="149" y="108" on="0"/>
- <pt x="150" y="160" on="1"/>
- <pt x="152" y="259" on="1"/>
- <pt x="152" y="1320" on="1"/>
- <pt x="150" y="1419" on="1"/>
- <pt x="150" y="1487" on="0"/>
- <pt x="125" y="1501" on="1"/>
- <pt x="103" y="1513" on="0"/>
- <pt x="50" y="1516" on="1"/>
- <pt x="31" y="1517" on="1"/>
- <pt x="31" y="1579" on="1"/>
- <pt x="349" y="1579" on="1"/>
- <pt x="349" y="583" on="1"/>
- <pt x="396" y="583" on="1"/>
- <pt x="586" y="825" on="1"/>
- <pt x="664" y="925" on="1"/>
- <pt x="704" y="979" on="1"/>
- <pt x="717" y="996" on="0"/>
- <pt x="717" y="1005" on="1"/>
- <pt x="717" y="1022" on="0"/>
- <pt x="683" y="1022" on="1"/>
- <pt x="678" y="1022" on="1"/>
- <pt x="673" y="1022" on="1"/>
- <pt x="667" y="1022" on="1"/>
- <pt x="661" y="1023" on="1"/>
- <pt x="651" y="1023" on="0"/>
- <pt x="640" y="1024" on="1"/>
- <pt x="632" y="1024" on="1"/>
- <pt x="631" y="1024" on="1"/>
- <pt x="609" y="1024" on="1"/>
- <pt x="609" y="1086" on="1"/>
- <pt x="946" y="1086" on="1"/>
- <pt x="946" y="1024" on="1"/>
- <pt x="928" y="1023" on="1"/>
- <pt x="840" y="1018" on="0"/>
- <pt x="819" y="998" on="1"/>
- <pt x="796" y="980" on="0"/>
- <pt x="757" y="928" on="1"/>
- <pt x="686" y="835" on="1"/>
- <pt x="539" y="640" on="1"/>
- <pt x="811" y="253" on="1"/>
- <pt x="896" y="132" on="0"/>
- <pt x="930" y="98" on="1"/>
- <pt x="964" y="66" on="0"/>
- <pt x="1005" y="63" on="1"/>
- <pt x="1024" y="62" on="1"/>
- <pt x="1024" y="0" on="1"/>
- <pt x="769" y="0" on="1"/>
- <pt x="396" y="534" on="1"/>
- <pt x="349" y="534" on="1"/>
- <pt x="349" y="259" on="1"/>
- <pt x="351" y="160" on="1"/>
- <pt x="352" y="91" on="0"/>
- <pt x="376" y="78" on="1"/>
- <pt x="398" y="66" on="0"/>
- <pt x="452" y="63" on="1"/>
- <pt x="470" y="62" on="1"/>
- <pt x="470" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 90 values pushed */
- 14 8 2 15 35 3 61 55 54 53 50 44 37 34 33 32 31 28 27 26 25 18 17 7 1
- 19 35 0 3 16 15 1 62 52 51 0 3 2 0 36 35 1 14 62 61 53 52 51 50 44
- 37 36 35 34 33 32 31 28 27 26 25 18 19 13 23 16 15 14 1 0 4 13 7 0 0
- 55 54 17 16 4 3 7 1 4 48 196 8 7 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="kcommaaccent" xMin="31" yMin="-432" xMax="1024" yMax="1579">
- <component glyphName="k" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="276" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="kgreenlandic" xMin="37" yMin="0" xMax="1024" yMax="1086">
- <contour>
- <pt x="476" y="62" on="1"/>
- <pt x="476" y="0" on="1"/>
- <pt x="37" y="0" on="1"/>
- <pt x="37" y="62" on="1"/>
- <pt x="56" y="63" on="1"/>
- <pt x="129" y="67" on="0"/>
- <pt x="142" y="89" on="1"/>
- <pt x="155" y="108" on="0"/>
- <pt x="156" y="160" on="1"/>
- <pt x="158" y="259" on="1"/>
- <pt x="158" y="827" on="1"/>
- <pt x="156" y="925" on="1"/>
- <pt x="156" y="993" on="0"/>
- <pt x="131" y="1007" on="1"/>
- <pt x="111" y="1019" on="0"/>
- <pt x="56" y="1023" on="1"/>
- <pt x="37" y="1024" on="1"/>
- <pt x="37" y="1086" on="1"/>
- <pt x="355" y="1086" on="1"/>
- <pt x="355" y="583" on="1"/>
- <pt x="402" y="583" on="1"/>
- <pt x="592" y="825" on="1"/>
- <pt x="670" y="925" on="1"/>
- <pt x="710" y="979" on="1"/>
- <pt x="723" y="996" on="0"/>
- <pt x="723" y="1005" on="1"/>
- <pt x="723" y="1022" on="0"/>
- <pt x="689" y="1022" on="1"/>
- <pt x="684" y="1022" on="1"/>
- <pt x="679" y="1022" on="1"/>
- <pt x="673" y="1022" on="1"/>
- <pt x="667" y="1023" on="1"/>
- <pt x="657" y="1023" on="0"/>
- <pt x="646" y="1024" on="1"/>
- <pt x="638" y="1024" on="1"/>
- <pt x="637" y="1024" on="1"/>
- <pt x="615" y="1024" on="1"/>
- <pt x="615" y="1086" on="1"/>
- <pt x="952" y="1086" on="1"/>
- <pt x="952" y="1024" on="1"/>
- <pt x="934" y="1023" on="1"/>
- <pt x="846" y="1018" on="0"/>
- <pt x="825" y="998" on="1"/>
- <pt x="802" y="980" on="0"/>
- <pt x="763" y="928" on="1"/>
- <pt x="692" y="835" on="1"/>
- <pt x="545" y="640" on="1"/>
- <pt x="817" y="253" on="1"/>
- <pt x="949" y="64" on="0"/>
- <pt x="1011" y="62" on="1"/>
- <pt x="1024" y="62" on="1"/>
- <pt x="1024" y="0" on="1"/>
- <pt x="775" y="0" on="1"/>
- <pt x="402" y="534" on="1"/>
- <pt x="355" y="534" on="1"/>
- <pt x="355" y="259" on="1"/>
- <pt x="357" y="160" on="1"/>
- <pt x="358" y="91" on="0"/>
- <pt x="382" y="78" on="1"/>
- <pt x="404" y="66" on="0"/>
- <pt x="458" y="63" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 55 54 53 50 49 46 39 36 35 34 33 30 29 28 27 20 19 16 10 9 3 0 22 17 1
- 3 52 51 2 1 3 0 38 37 18 17 1 3 14 53 52 51 50 49 46 39 38 37 36 35
- 34 33 30 29 28 27 20 1 0 20 13 25 18 17 16 3 2 4 13 9 0 0 55 54 19
- 18 4 3 9 1 4 48 196 10 9 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="l" xMin="47" yMin="0" xMax="536" yMax="1579">
- <contour>
- <pt x="47" y="0" on="1"/>
- <pt x="47" y="62" on="1"/>
- <pt x="66" y="63" on="1"/>
- <pt x="174" y="70" on="0"/>
- <pt x="180" y="87" on="1"/>
- <pt x="191" y="106" on="0"/>
- <pt x="191" y="160" on="1"/>
- <pt x="193" y="259" on="1"/>
- <pt x="193" y="1320" on="1"/>
- <pt x="191" y="1419" on="1"/>
- <pt x="190" y="1493" on="0"/>
- <pt x="169" y="1501" on="1"/>
- <pt x="148" y="1511" on="0"/>
- <pt x="66" y="1516" on="1"/>
- <pt x="47" y="1517" on="1"/>
- <pt x="47" y="1579" on="1"/>
- <pt x="390" y="1579" on="1"/>
- <pt x="390" y="259" on="1"/>
- <pt x="392" y="160" on="1"/>
- <pt x="393" y="86" on="0"/>
- <pt x="414" y="78" on="1"/>
- <pt x="435" y="68" on="0"/>
- <pt x="517" y="63" on="1"/>
- <pt x="536" y="62" on="1"/>
- <pt x="536" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 48 values pushed */
- 23 17 14 8 7 4 1 7 15 0 3 16 15 1 24 0 1 2 0 14 24 23 2 13 16
- 15 14 4 1 0 5 13 7 0 0 17 16 4 1 7 1 4 48 196 8 7 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="lacute" xMin="47" yMin="0" xMax="576" yMax="1999">
- <component glyphName="l" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="-15" y="395" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="lcaron" xMin="47" yMin="0" xMax="785" yMax="1579">
- <contour>
- <pt x="536" y="62" on="1"/>
- <pt x="536" y="0" on="1"/>
- <pt x="47" y="0" on="1"/>
- <pt x="47" y="62" on="1"/>
- <pt x="66" y="63" on="1"/>
- <pt x="174" y="70" on="0"/>
- <pt x="180" y="87" on="1"/>
- <pt x="191" y="106" on="0"/>
- <pt x="191" y="160" on="1"/>
- <pt x="193" y="259" on="1"/>
- <pt x="193" y="1320" on="1"/>
- <pt x="191" y="1419" on="1"/>
- <pt x="190" y="1493" on="0"/>
- <pt x="169" y="1501" on="1"/>
- <pt x="148" y="1511" on="0"/>
- <pt x="66" y="1516" on="1"/>
- <pt x="47" y="1517" on="1"/>
- <pt x="47" y="1579" on="1"/>
- <pt x="390" y="1579" on="1"/>
- <pt x="390" y="259" on="1"/>
- <pt x="392" y="160" on="1"/>
- <pt x="393" y="86" on="0"/>
- <pt x="414" y="78" on="1"/>
- <pt x="435" y="68" on="0"/>
- <pt x="517" y="63" on="1"/>
- </contour>
- <contour>
- <pt x="667" y="1382" on="1"/>
- <pt x="588" y="1382" on="1"/>
- <pt x="588" y="1579" on="1"/>
- <pt x="785" y="1579" on="1"/>
- <pt x="785" y="1408" on="1"/>
- <pt x="785" y="1245" on="0"/>
- <pt x="723" y="1180" on="1"/>
- <pt x="675" y="1131" on="0"/>
- <pt x="588" y="1125" on="1"/>
- <pt x="588" y="1175" on="1"/>
- <pt x="667" y="1181" on="0"/>
- <pt x="667" y="1330" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 36 34 33 29 26 25 19 16 10 9 6 3 0 13 17 1 3 28 27 18 17 3 2 1 1
- 2 0 14 36 25 2 28 26 3 1 0 2 26 18 3 17 16 6 3 2 5 13 9 0 0
- 34 33 27 26 4 3 28 19 18 4 1 9 2 4 48 196 29 28 1 10 9 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="lcommaaccent" xMin="47" yMin="-432" xMax="536" yMax="1579">
- <component glyphName="l" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="-26" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ldot" xMin="47" yMin="0" xMax="742" yMax="1579">
- <contour>
- <pt x="536" y="62" on="1"/>
- <pt x="536" y="0" on="1"/>
- <pt x="47" y="0" on="1"/>
- <pt x="47" y="62" on="1"/>
- <pt x="66" y="63" on="1"/>
- <pt x="174" y="70" on="0"/>
- <pt x="180" y="87" on="1"/>
- <pt x="191" y="106" on="0"/>
- <pt x="191" y="160" on="1"/>
- <pt x="193" y="259" on="1"/>
- <pt x="193" y="1320" on="1"/>
- <pt x="191" y="1419" on="1"/>
- <pt x="190" y="1493" on="0"/>
- <pt x="169" y="1501" on="1"/>
- <pt x="148" y="1511" on="0"/>
- <pt x="66" y="1516" on="1"/>
- <pt x="47" y="1517" on="1"/>
- <pt x="47" y="1579" on="1"/>
- <pt x="390" y="1579" on="1"/>
- <pt x="390" y="259" on="1"/>
- <pt x="392" y="160" on="1"/>
- <pt x="393" y="86" on="0"/>
- <pt x="414" y="78" on="1"/>
- <pt x="435" y="68" on="0"/>
- <pt x="517" y="63" on="1"/>
- </contour>
- <contour>
- <pt x="545" y="691" on="1"/>
- <pt x="545" y="888" on="1"/>
- <pt x="742" y="888" on="1"/>
- <pt x="742" y="691" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 76 values pushed */
- 16 10 2 17 26 3 19 9 6 3 0 5 25 1 3 0 0 28 25 5 1 26 1 4 48
- 84 27 26 1 18 17 1 2 1 1 3 0 14 1 0 2 25 18 3 17 16 6 3 2 5
- 13 9 0 0 26 25 4 1 27 19 18 4 1 9 2 4 48 196 28 27 1 10 9 1 2
- 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="less" xMin="84" yMin="99" xMax="1071" yMax="1086">
- <contour>
- <pt x="1071" y="99" on="1"/>
- <pt x="84" y="592" on="1"/>
- <pt x="1071" y="1086" on="1"/>
- <pt x="1071" y="975" on="1"/>
- <pt x="307" y="593" on="1"/>
- <pt x="307" y="591" on="1"/>
- <pt x="1071" y="209" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 15 values pushed */
- 6 5 4 3 2 1 0 14 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="logicalnot" xMin="84" yMin="296" xMax="1022" yMax="790">
- <contour>
- <pt x="923" y="296" on="1"/>
- <pt x="923" y="691" on="1"/>
- <pt x="84" y="691" on="1"/>
- <pt x="84" y="790" on="1"/>
- <pt x="1022" y="790" on="1"/>
- <pt x="1022" y="691" on="1"/>
- <pt x="1022" y="691" on="1"/>
- <pt x="1022" y="296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 41 values pushed */
- 7 0 1 0 0 6 5 2 1 9 3 3 1 4 48 84 4 3 1 0 14 3 2 0 0
- 0 1 0 9 1 4 1 4 48 196 7 6 5 4 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="longs" xMin="37" yMin="0" xMax="719" yMax="1604">
- <contour>
- <pt x="176" y="999" on="1"/>
- <pt x="37" y="999" on="1"/>
- <pt x="37" y="1086" on="1"/>
- <pt x="176" y="1086" on="1"/>
- <pt x="176" y="1138" on="1"/>
- <pt x="176" y="1401" on="0"/>
- <pt x="245" y="1502" on="1"/>
- <pt x="314" y="1604" on="0"/>
- <pt x="489" y="1604" on="1"/>
- <pt x="617" y="1604" on="0"/>
- <pt x="719" y="1530" on="1"/>
- <pt x="719" y="1295" on="1"/>
- <pt x="608" y="1295" on="1"/>
- <pt x="607" y="1314" on="1"/>
- <pt x="605" y="1353" on="0"/>
- <pt x="604" y="1380" on="1"/>
- <pt x="604" y="1385" on="1"/>
- <pt x="604" y="1540" on="0"/>
- <pt x="496" y="1540" on="1"/>
- <pt x="376" y="1540" on="0"/>
- <pt x="374" y="1357" on="1"/>
- <pt x="373" y="1257" on="1"/>
- <pt x="373" y="259" on="1"/>
- <pt x="375" y="160" on="1"/>
- <pt x="376" y="88" on="0"/>
- <pt x="408" y="75" on="1"/>
- <pt x="434" y="63" on="0"/>
- <pt x="500" y="63" on="1"/>
- <pt x="544" y="62" on="1"/>
- <pt x="544" y="0" on="1"/>
- <pt x="55" y="0" on="1"/>
- <pt x="55" y="62" on="1"/>
- <pt x="74" y="63" on="1"/>
- <pt x="151" y="68" on="0"/>
- <pt x="163" y="92" on="1"/>
- <pt x="174" y="112" on="0"/>
- <pt x="174" y="160" on="1"/>
- <pt x="176" y="259" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 82 values pushed */
- 0 0 18 38 8 48 84 37 31 28 22 4 0 29 3 21 16 15 12 11 10 4 7 13 8
- 2 0 0 1 0 8 1 2 1 4 48 84 30 29 1 0 3 2 1 14 29 28 16 15 12
- 5 10 21 3 31 30 2 1 4 13 0 0 0 22 21 5 1 0 1 4 48 196 11 10 1
- 37 4 3 0 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="lslash" xMin="47" yMin="0" xMax="536" yMax="1579">
- <contour>
- <pt x="47" y="0" on="1"/>
- <pt x="47" y="62" on="1"/>
- <pt x="66" y="63" on="1"/>
- <pt x="174" y="70" on="0"/>
- <pt x="180" y="87" on="1"/>
- <pt x="191" y="106" on="0"/>
- <pt x="191" y="160" on="1"/>
- <pt x="193" y="259" on="1"/>
- <pt x="193" y="783" on="1"/>
- <pt x="47" y="699" on="1"/>
- <pt x="47" y="784" on="1"/>
- <pt x="193" y="868" on="1"/>
- <pt x="193" y="1320" on="1"/>
- <pt x="191" y="1419" on="1"/>
- <pt x="190" y="1493" on="0"/>
- <pt x="169" y="1501" on="1"/>
- <pt x="148" y="1511" on="0"/>
- <pt x="66" y="1516" on="1"/>
- <pt x="47" y="1517" on="1"/>
- <pt x="47" y="1579" on="1"/>
- <pt x="390" y="1579" on="1"/>
- <pt x="390" y="982" on="1"/>
- <pt x="536" y="1066" on="1"/>
- <pt x="536" y="981" on="1"/>
- <pt x="390" y="897" on="1"/>
- <pt x="390" y="259" on="1"/>
- <pt x="392" y="160" on="1"/>
- <pt x="393" y="86" on="0"/>
- <pt x="414" y="78" on="1"/>
- <pt x="435" y="68" on="0"/>
- <pt x="517" y="63" on="1"/>
- <pt x="536" y="62" on="1"/>
- <pt x="536" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 64 values pushed */
- 31 25 24 23 22 21 18 12 11 10 9 8 7 4 1 15 19 0 3 20 19 1 32 0 1
- 2 0 14 32 31 23 22 4 13 20 19 18 10 9 4 1 0 7 13 7 0 0 25 24 21
- 20 4 3 7 1 4 48 196 12 11 8 7 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="m" xMin="37" yMin="0" xMax="1584" yMax="1110">
- <contour>
- <pt x="37" y="0" on="1"/>
- <pt x="37" y="62" on="1"/>
- <pt x="56" y="63" on="1"/>
- <pt x="129" y="67" on="0"/>
- <pt x="142" y="89" on="1"/>
- <pt x="155" y="108" on="0"/>
- <pt x="156" y="160" on="1"/>
- <pt x="158" y="259" on="1"/>
- <pt x="158" y="827" on="1"/>
- <pt x="156" y="925" on="1"/>
- <pt x="156" y="993" on="0"/>
- <pt x="131" y="1007" on="1"/>
- <pt x="111" y="1019" on="0"/>
- <pt x="56" y="1023" on="1"/>
- <pt x="37" y="1024" on="1"/>
- <pt x="37" y="1086" on="1"/>
- <pt x="355" y="1086" on="1"/>
- <pt x="355" y="907" on="1"/>
- <pt x="420" y="999" on="0"/>
- <pt x="480" y="1044" on="1"/>
- <pt x="566" y="1110" on="0"/>
- <pt x="667" y="1110" on="1"/>
- <pt x="764" y="1110" on="0"/>
- <pt x="826" y="1056" on="1"/>
- <pt x="880" y="1009" on="0"/>
- <pt x="909" y="904" on="1"/>
- <pt x="972" y="997" on="0"/>
- <pt x="1033" y="1043" on="1"/>
- <pt x="1120" y="1110" on="0"/>
- <pt x="1226" y="1110" on="1"/>
- <pt x="1356" y="1110" on="0"/>
- <pt x="1409" y="1033" on="1"/>
- <pt x="1463" y="956" on="0"/>
- <pt x="1463" y="765" on="1"/>
- <pt x="1463" y="259" on="1"/>
- <pt x="1465" y="160" on="1"/>
- <pt x="1466" y="91" on="0"/>
- <pt x="1490" y="78" on="1"/>
- <pt x="1512" y="66" on="0"/>
- <pt x="1566" y="63" on="1"/>
- <pt x="1584" y="62" on="1"/>
- <pt x="1584" y="0" on="1"/>
- <pt x="1145" y="0" on="1"/>
- <pt x="1145" y="62" on="1"/>
- <pt x="1164" y="63" on="1"/>
- <pt x="1237" y="67" on="0"/>
- <pt x="1251" y="89" on="1"/>
- <pt x="1263" y="109" on="0"/>
- <pt x="1264" y="160" on="1"/>
- <pt x="1266" y="259" on="1"/>
- <pt x="1266" y="734" on="1"/>
- <pt x="1264" y="811" on="1"/>
- <pt x="1262" y="894" on="0"/>
- <pt x="1240" y="933" on="1"/>
- <pt x="1212" y="981" on="0"/>
- <pt x="1151" y="981" on="1"/>
- <pt x="1031" y="981" on="0"/>
- <pt x="909" y="840" on="1"/>
- <pt x="909" y="259" on="1"/>
- <pt x="911" y="160" on="1"/>
- <pt x="911" y="91" on="0"/>
- <pt x="936" y="78" on="1"/>
- <pt x="958" y="66" on="0"/>
- <pt x="1012" y="63" on="1"/>
- <pt x="1030" y="62" on="1"/>
- <pt x="1030" y="0" on="1"/>
- <pt x="591" y="0" on="1"/>
- <pt x="591" y="62" on="1"/>
- <pt x="610" y="63" on="1"/>
- <pt x="683" y="68" on="0"/>
- <pt x="696" y="89" on="1"/>
- <pt x="709" y="109" on="0"/>
- <pt x="710" y="160" on="1"/>
- <pt x="712" y="259" on="1"/>
- <pt x="712" y="734" on="1"/>
- <pt x="710" y="811" on="1"/>
- <pt x="708" y="895" on="0"/>
- <pt x="685" y="934" on="1"/>
- <pt x="658" y="981" on="0"/>
- <pt x="598" y="981" on="1"/>
- <pt x="477" y="981" on="0"/>
- <pt x="355" y="840" on="1"/>
- <pt x="355" y="259" on="1"/>
- <pt x="357" y="160" on="1"/>
- <pt x="358" y="91" on="0"/>
- <pt x="382" y="78" on="1"/>
- <pt x="404" y="66" on="0"/>
- <pt x="458" y="63" on="1"/>
- <pt x="476" y="62" on="1"/>
- <pt x="476" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 114 values pushed */
- 0 0 79 29 21 55 29 29 48 84 29 1 21 1 88 82 81 74 73 67 64 58 57 50 49
- 43 40 34 33 25 17 14 8 7 1 21 15 0 3 89 66 65 42 41 0 5 0 16 15 1
- 14 65 64 43 42 4 49 25 3 89 88 67 66 4 73 16 3 41 40 2 13 33 15 14 1
- 0 4 13 7 0 0 50 49 4 1 33 58 57 25 4 2 73 82 81 17 16 4 3 7 3
- 4 48 196 34 33 1 74 73 1 8 7 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="macron" xMin="20" yMin="1283" xMax="662" yMax="1406">
- <contour>
- <pt x="20" y="1283" on="1"/>
- <pt x="20" y="1406" on="1"/>
- <pt x="662" y="1406" on="1"/>
- <pt x="662" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 12 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="macron#1" xMin="99" yMin="1480" xMax="926" yMax="1604">
- <contour>
- <pt x="99" y="1480" on="1"/>
- <pt x="99" y="1604" on="1"/>
- <pt x="926" y="1604" on="1"/>
- <pt x="926" y="1480" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 12 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="minus" xMin="222" yMin="543" xMax="1406" yMax="642">
- <contour>
- <pt x="222" y="543" on="1"/>
- <pt x="222" y="642" on="1"/>
- <pt x="1406" y="642" on="1"/>
- <pt x="1406" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 9 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="mu" xMin="12" yMin="-296" xMax="993" yMax="1086">
- <contour>
- <pt x="331" y="-22" on="1"/>
- <pt x="331" y="-296" on="1"/>
- <pt x="133" y="-296" on="1"/>
- <pt x="133" y="321" on="1"/>
- <pt x="133" y="827" on="1"/>
- <pt x="131" y="925" on="1"/>
- <pt x="131" y="993" on="0"/>
- <pt x="106" y="1007" on="1"/>
- <pt x="86" y="1019" on="0"/>
- <pt x="31" y="1023" on="1"/>
- <pt x="12" y="1024" on="1"/>
- <pt x="12" y="1086" on="1"/>
- <pt x="331" y="1086" on="1"/>
- <pt x="331" y="352" on="1"/>
- <pt x="333" y="274" on="1"/>
- <pt x="335" y="188" on="0"/>
- <pt x="357" y="150" on="1"/>
- <pt x="383" y="105" on="0"/>
- <pt x="439" y="105" on="1"/>
- <pt x="554" y="105" on="0"/>
- <pt x="675" y="245" on="1"/>
- <pt x="675" y="827" on="1"/>
- <pt x="673" y="925" on="1"/>
- <pt x="672" y="994" on="0"/>
- <pt x="648" y="1007" on="1"/>
- <pt x="627" y="1019" on="0"/>
- <pt x="573" y="1023" on="1"/>
- <pt x="554" y="1024" on="1"/>
- <pt x="554" y="1086" on="1"/>
- <pt x="872" y="1086" on="1"/>
- <pt x="872" y="259" on="1"/>
- <pt x="874" y="160" on="1"/>
- <pt x="874" y="92" on="0"/>
- <pt x="899" y="78" on="1"/>
- <pt x="921" y="66" on="0"/>
- <pt x="974" y="63" on="1"/>
- <pt x="993" y="62" on="1"/>
- <pt x="993" y="0" on="1"/>
- <pt x="675" y="0" on="1"/>
- <pt x="675" y="179" on="1"/>
- <pt x="533" y="-25" on="0"/>
- <pt x="368" y="-25" on="1"/>
- <pt x="352" y="-25" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 0 0 18 29 41 48 84 41 2 39 36 30 27 21 20 13 10 4 3 10 11 37 3 0 37
- 1 2 38 37 1 2 1 1 2 0 29 28 12 11 1 3 14 28 27 2 20 0 3 37 36
- 2 13 29 11 10 2 0 0 39 38 21 20 4 3 29 13 12 1 0 4 3 2 2 4 48
- 196 30 29 1 4 3 2 2 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="multiply" xMin="84" yMin="99" xMax="1071" yMax="1086">
- <contour>
- <pt x="84" y="169" on="1"/>
- <pt x="507" y="592" on="1"/>
- <pt x="84" y="1016" on="1"/>
- <pt x="153" y="1086" on="1"/>
- <pt x="577" y="662" on="1"/>
- <pt x="1001" y="1086" on="1"/>
- <pt x="1071" y="1016" on="1"/>
- <pt x="647" y="592" on="1"/>
- <pt x="1071" y="169" on="1"/>
- <pt x="1001" y="99" on="1"/>
- <pt x="577" y="523" on="1"/>
- <pt x="154" y="99" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 30 values pushed */
- 1 11 10 9 8 7 6 5 4 3 2 1 0 12 13 1 0 14 11 10 9 8 7 6 5
- 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="n" xMin="37" yMin="0" xMax="1018" yMax="1110">
- <contour>
- <pt x="37" y="0" on="1"/>
- <pt x="37" y="62" on="1"/>
- <pt x="56" y="63" on="1"/>
- <pt x="129" y="67" on="0"/>
- <pt x="142" y="89" on="1"/>
- <pt x="155" y="108" on="0"/>
- <pt x="156" y="160" on="1"/>
- <pt x="158" y="259" on="1"/>
- <pt x="158" y="827" on="1"/>
- <pt x="156" y="925" on="1"/>
- <pt x="156" y="993" on="0"/>
- <pt x="131" y="1007" on="1"/>
- <pt x="111" y="1019" on="0"/>
- <pt x="56" y="1023" on="1"/>
- <pt x="37" y="1024" on="1"/>
- <pt x="37" y="1086" on="1"/>
- <pt x="356" y="1086" on="1"/>
- <pt x="356" y="907" on="1"/>
- <pt x="420" y="999" on="0"/>
- <pt x="480" y="1044" on="1"/>
- <pt x="566" y="1110" on="0"/>
- <pt x="667" y="1110" on="1"/>
- <pt x="791" y="1110" on="0"/>
- <pt x="844" y="1032" on="1"/>
- <pt x="897" y="954" on="0"/>
- <pt x="897" y="765" on="1"/>
- <pt x="897" y="259" on="1"/>
- <pt x="899" y="160" on="1"/>
- <pt x="899" y="92" on="0"/>
- <pt x="924" y="78" on="1"/>
- <pt x="946" y="66" on="0"/>
- <pt x="1000" y="63" on="1"/>
- <pt x="1018" y="62" on="1"/>
- <pt x="1018" y="0" on="1"/>
- <pt x="579" y="0" on="1"/>
- <pt x="579" y="62" on="1"/>
- <pt x="598" y="63" on="1"/>
- <pt x="675" y="68" on="0"/>
- <pt x="687" y="92" on="1"/>
- <pt x="698" y="112" on="0"/>
- <pt x="698" y="160" on="1"/>
- <pt x="700" y="259" on="1"/>
- <pt x="700" y="734" on="1"/>
- <pt x="697" y="811" on="1"/>
- <pt x="694" y="900" on="0"/>
- <pt x="672" y="937" on="1"/>
- <pt x="647" y="981" on="0"/>
- <pt x="592" y="981" on="1"/>
- <pt x="477" y="981" on="0"/>
- <pt x="356" y="840" on="1"/>
- <pt x="356" y="259" on="1"/>
- <pt x="357" y="160" on="1"/>
- <pt x="358" y="91" on="0"/>
- <pt x="383" y="78" on="1"/>
- <pt x="405" y="66" on="0"/>
- <pt x="458" y="63" on="1"/>
- <pt x="477" y="62" on="1"/>
- <pt x="477" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 0 0 47 29 21 48 84 21 1 51 57 50 49 42 41 35 32 26 25 17 14 8 7 1 13
- 15 0 3 57 34 33 0 3 0 16 15 1 14 57 51 51 35 34 3 41 16 3 33 32 2
- 13 25 15 14 1 0 4 13 7 0 0 42 41 4 1 25 50 49 17 16 4 3 7 2 4
- 48 196 26 25 1 8 7 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="nacute" xMin="37" yMin="0" xMax="1018" yMax="1604">
- <component glyphName="n" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="271" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="napostrophe" xMin="25" yMin="0" xMax="1230" yMax="1579">
- <contour>
- <pt x="249" y="0" on="1"/>
- <pt x="249" y="62" on="1"/>
- <pt x="268" y="63" on="1"/>
- <pt x="341" y="68" on="0"/>
- <pt x="354" y="89" on="1"/>
- <pt x="367" y="109" on="0"/>
- <pt x="368" y="160" on="1"/>
- <pt x="370" y="259" on="1"/>
- <pt x="370" y="827" on="1"/>
- <pt x="368" y="925" on="1"/>
- <pt x="367" y="994" on="0"/>
- <pt x="343" y="1007" on="1"/>
- <pt x="322" y="1019" on="0"/>
- <pt x="268" y="1023" on="1"/>
- <pt x="249" y="1024" on="1"/>
- <pt x="249" y="1086" on="1"/>
- <pt x="568" y="1086" on="1"/>
- <pt x="568" y="907" on="1"/>
- <pt x="632" y="998" on="0"/>
- <pt x="692" y="1044" on="1"/>
- <pt x="777" y="1110" on="0"/>
- <pt x="879" y="1110" on="1"/>
- <pt x="1003" y="1110" on="0"/>
- <pt x="1056" y="1032" on="1"/>
- <pt x="1109" y="954" on="0"/>
- <pt x="1109" y="765" on="1"/>
- <pt x="1109" y="259" on="1"/>
- <pt x="1111" y="160" on="1"/>
- <pt x="1112" y="91" on="0"/>
- <pt x="1136" y="78" on="1"/>
- <pt x="1158" y="66" on="0"/>
- <pt x="1212" y="63" on="1"/>
- <pt x="1230" y="62" on="1"/>
- <pt x="1230" y="0" on="1"/>
- <pt x="791" y="0" on="1"/>
- <pt x="791" y="62" on="1"/>
- <pt x="810" y="63" on="1"/>
- <pt x="883" y="68" on="0"/>
- <pt x="897" y="89" on="1"/>
- <pt x="909" y="109" on="0"/>
- <pt x="910" y="160" on="1"/>
- <pt x="912" y="259" on="1"/>
- <pt x="912" y="734" on="1"/>
- <pt x="909" y="811" on="1"/>
- <pt x="906" y="900" on="0"/>
- <pt x="884" y="937" on="1"/>
- <pt x="859" y="981" on="0"/>
- <pt x="804" y="981" on="1"/>
- <pt x="689" y="981" on="0"/>
- <pt x="568" y="840" on="1"/>
- <pt x="568" y="259" on="1"/>
- <pt x="569" y="160" on="1"/>
- <pt x="570" y="91" on="0"/>
- <pt x="595" y="78" on="1"/>
- <pt x="617" y="66" on="0"/>
- <pt x="670" y="63" on="1"/>
- <pt x="689" y="62" on="1"/>
- <pt x="689" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="104" y="1382" on="1"/>
- <pt x="25" y="1382" on="1"/>
- <pt x="25" y="1579" on="1"/>
- <pt x="222" y="1579" on="1"/>
- <pt x="222" y="1408" on="1"/>
- <pt x="222" y="1245" on="0"/>
- <pt x="160" y="1180" on="1"/>
- <pt x="113" y="1131" on="0"/>
- <pt x="25" y="1125" on="1"/>
- <pt x="25" y="1175" on="1"/>
- <pt x="104" y="1181" on="0"/>
- <pt x="104" y="1330" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 116 values pushed */
- 0 0 47 29 21 48 84 21 1 51 57 69 67 66 62 59 58 6 60 15 3 50 49 42 41
- 35 32 26 25 17 14 8 7 1 13 15 0 3 61 60 1 57 34 33 0 3 2 0 16 15
- 1 14 57 51 51 35 34 3 41 16 3 15 14 1 0 4 7 61 3 69 58 2 61 59 3
- 33 32 2 13 25 0 0 62 61 4 1 59 42 41 4 1 25 50 49 17 16 4 3 7 3
- 4 48 196 67 66 60 59 3 26 25 1 8 7 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="nbhyphen" xMin="82" yMin="543" xMax="600" yMax="666">
- <contour>
- <pt x="82" y="543" on="1"/>
- <pt x="82" y="666" on="1"/>
- <pt x="600" y="666" on="1"/>
- <pt x="600" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 12 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ncaron" xMin="37" yMin="0" xMax="1018" yMax="1604">
- <component glyphName="n" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="162" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ncommaaccent" xMin="37" yMin="-432" xMax="1018" yMax="1110">
- <component glyphName="n" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="233" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="nine" xMin="37" yMin="-37" xMax="975" yMax="1518">
- <contour>
- <pt x="764" y="723" on="1"/>
- <pt x="713" y="637" on="0"/>
- <pt x="654" y="593" on="1"/>
- <pt x="568" y="530" on="0"/>
- <pt x="449" y="530" on="1"/>
- <pt x="269" y="530" on="0"/>
- <pt x="153" y="659" on="1"/>
- <pt x="37" y="789" on="0"/>
- <pt x="37" y="993" on="1"/>
- <pt x="37" y="1216" on="0"/>
- <pt x="171" y="1367" on="1"/>
- <pt x="305" y="1518" on="0"/>
- <pt x="502" y="1518" on="1"/>
- <pt x="721" y="1518" on="0"/>
- <pt x="848" y="1320" on="1"/>
- <pt x="975" y="1121" on="0"/>
- <pt x="975" y="779" on="1"/>
- <pt x="975" y="402" on="0"/>
- <pt x="827" y="183" on="1"/>
- <pt x="679" y="-37" on="0"/>
- <pt x="416" y="-37" on="1"/>
- <pt x="251" y="-37" on="0"/>
- <pt x="120" y="29" on="1"/>
- <pt x="120" y="253" on="1"/>
- <pt x="219" y="253" on="1"/>
- <pt x="220" y="232" on="1"/>
- <pt x="225" y="120" on="0"/>
- <pt x="270" y="75" on="1"/>
- <pt x="313" y="31" on="0"/>
- <pt x="412" y="31" on="1"/>
- <pt x="600" y="31" on="0"/>
- <pt x="694" y="269" on="1"/>
- <pt x="761" y="439" on="0"/>
- </contour>
- <contour>
- <pt x="472" y="1450" on="1"/>
- <pt x="364" y="1450" on="0"/>
- <pt x="301" y="1333" on="1"/>
- <pt x="237" y="1215" on="0"/>
- <pt x="237" y="1018" on="1"/>
- <pt x="237" y="600" on="0"/>
- <pt x="499" y="600" on="1"/>
- <pt x="610" y="600" on="0"/>
- <pt x="684" y="695" on="1"/>
- <pt x="759" y="791" on="0"/>
- <pt x="759" y="940" on="1"/>
- <pt x="759" y="1128" on="0"/>
- <pt x="691" y="1271" on="1"/>
- <pt x="606" y="1450" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 54 values pushed */
- 0 0 39 17 4 33 17 12 29 17 20 48 84 20 2 12 0 4 1 1 24 23 22 4 0
- 5 0 2 3 0 0 14 0 0 43 10 16 37 5 8 48 196 24 0 2 13 16 22 8 22
- 23 22 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="nonbreakingspace"/><!-- contains no outline data -->
-
- <TTGlyph name="ntilde" xMin="37" yMin="0" xMax="1018" yMax="1518">
- <component glyphName="n" x="0" y="0" flags="0x4"/>
- <component glyphName="tilde" x="175" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="numbersign" xMin="0" yMin="0" xMax="1024" yMax="1480">
- <contour>
- <pt x="93" y="0" on="1"/>
- <pt x="207" y="456" on="1"/>
- <pt x="0" y="456" on="1"/>
- <pt x="19" y="555" on="1"/>
- <pt x="232" y="555" on="1"/>
- <pt x="324" y="925" on="1"/>
- <pt x="93" y="925" on="1"/>
- <pt x="112" y="1024" on="1"/>
- <pt x="349" y="1024" on="1"/>
- <pt x="463" y="1480" on="1"/>
- <pt x="566" y="1480" on="1"/>
- <pt x="451" y="1024" on="1"/>
- <pt x="715" y="1024" on="1"/>
- <pt x="829" y="1480" on="1"/>
- <pt x="932" y="1480" on="1"/>
- <pt x="818" y="1024" on="1"/>
- <pt x="1024" y="1024" on="1"/>
- <pt x="1006" y="925" on="1"/>
- <pt x="793" y="925" on="1"/>
- <pt x="701" y="555" on="1"/>
- <pt x="931" y="555" on="1"/>
- <pt x="913" y="456" on="1"/>
- <pt x="676" y="456" on="1"/>
- <pt x="562" y="0" on="1"/>
- <pt x="459" y="0" on="1"/>
- <pt x="573" y="456" on="1"/>
- <pt x="310" y="456" on="1"/>
- <pt x="195" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="334" y="555" on="1"/>
- <pt x="598" y="555" on="1"/>
- <pt x="690" y="925" on="1"/>
- <pt x="427" y="925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 14 13 10 9 4 13 7 27 24 23 0 4 13 1 0 0 31 30 18 17 6 5 9 5 7
- 26 25 22 21 2 1 9 5 3 2 4 48 84 16 15 12 11 8 7 5 29 28 20 19 4
- 3 5 2 0 14 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12
- 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="o" xMin="62" yMin="-25" xMax="962" yMax="1110">
- <contour>
- <pt x="512" y="1110" on="1"/>
- <pt x="719" y="1110" on="0"/>
- <pt x="840" y="957" on="1"/>
- <pt x="962" y="805" on="0"/>
- <pt x="962" y="544" on="1"/>
- <pt x="962" y="279" on="0"/>
- <pt x="840" y="127" on="1"/>
- <pt x="719" y="-25" on="0"/>
- <pt x="506" y="-25" on="1"/>
- <pt x="324" y="-25" on="0"/>
- <pt x="209" y="99" on="1"/>
- <pt x="62" y="257" on="0"/>
- <pt x="62" y="543" on="1"/>
- <pt x="62" y="805" on="0"/>
- <pt x="183" y="957" on="1"/>
- <pt x="305" y="1110" on="0"/>
- </contour>
- <contour>
- <pt x="512" y="1043" on="1"/>
- <pt x="404" y="1043" on="0"/>
- <pt x="341" y="908" on="1"/>
- <pt x="278" y="772" on="0"/>
- <pt x="278" y="538" on="1"/>
- <pt x="278" y="43" on="0"/>
- <pt x="517" y="43" on="1"/>
- <pt x="607" y="43" on="0"/>
- <pt x="667" y="147" on="1"/>
- <pt x="747" y="286" on="0"/>
- <pt x="747" y="545" on="1"/>
- <pt x="747" y="772" on="0"/>
- <pt x="683" y="908" on="1"/>
- <pt x="620" y="1043" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 27 values pushed */
- 0 0 22 17 8 16 17 0 48 84 8 2 0 1 14 0 0 26 10 4 20 10 12 48 196
- 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="oacute" xMin="62" yMin="-25" xMax="962" yMax="1604">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="255" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="obreve" xMin="62" yMin="-25" xMax="962" yMax="1604">
- <contour>
- <pt x="512" y="1110" on="1"/>
- <pt x="719" y="1110" on="0"/>
- <pt x="840" y="957" on="1"/>
- <pt x="962" y="805" on="0"/>
- <pt x="962" y="544" on="1"/>
- <pt x="962" y="279" on="0"/>
- <pt x="840" y="127" on="1"/>
- <pt x="719" y="-25" on="0"/>
- <pt x="506" y="-25" on="1"/>
- <pt x="324" y="-25" on="0"/>
- <pt x="209" y="99" on="1"/>
- <pt x="62" y="257" on="0"/>
- <pt x="62" y="543" on="1"/>
- <pt x="62" y="805" on="0"/>
- <pt x="183" y="957" on="1"/>
- <pt x="305" y="1110" on="0"/>
- </contour>
- <contour>
- <pt x="512" y="1043" on="1"/>
- <pt x="404" y="1043" on="0"/>
- <pt x="341" y="908" on="1"/>
- <pt x="278" y="772" on="0"/>
- <pt x="278" y="538" on="1"/>
- <pt x="278" y="43" on="0"/>
- <pt x="517" y="43" on="1"/>
- <pt x="607" y="43" on="0"/>
- <pt x="667" y="147" on="1"/>
- <pt x="747" y="286" on="0"/>
- <pt x="747" y="545" on="1"/>
- <pt x="747" y="772" on="0"/>
- <pt x="683" y="908" on="1"/>
- <pt x="620" y="1043" on="0"/>
- </contour>
- <contour>
- <pt x="179" y="1604" on="1"/>
- <pt x="244" y="1604" on="1"/>
- <pt x="271" y="1514" on="0"/>
- <pt x="331" y="1472" on="1"/>
- <pt x="399" y="1425" on="0"/>
- <pt x="512" y="1425" on="1"/>
- <pt x="638" y="1425" on="0"/>
- <pt x="708" y="1484" on="1"/>
- <pt x="756" y="1523" on="0"/>
- <pt x="781" y="1604" on="1"/>
- <pt x="845" y="1604" on="1"/>
- <pt x="826" y="1469" on="0"/>
- <pt x="754" y="1388" on="1"/>
- <pt x="659" y="1283" on="0"/>
- <pt x="512" y="1283" on="1"/>
- <pt x="359" y="1283" on="0"/>
- <pt x="263" y="1398" on="1"/>
- <pt x="198" y="1475" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 0 0 35 20 44 22 38 8 16 38 0 48 84 8 2 0 1 1 40 39 31 30 4 13 44
- 1 0 14 0 0 26 40 4 20 40 12 48 196 40 39 31 30 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ocircumflex" xMin="62" yMin="-25" xMax="962" yMax="1604">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="171" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="odieresis" xMin="62" yMin="-25" xMax="962" yMax="1456">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="172" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="oe" xMin="62" yMin="-25" xMax="1417" yMax="1110">
- <contour>
- <pt x="790" y="927" on="1"/>
- <pt x="906" y="1109" on="0"/>
- <pt x="1071" y="1109" on="1"/>
- <pt x="1234" y="1109" on="0"/>
- <pt x="1325" y="977" on="1"/>
- <pt x="1417" y="845" on="0"/>
- <pt x="1417" y="603" on="1"/>
- <pt x="1417" y="585" on="1"/>
- <pt x="904" y="585" on="1"/>
- <pt x="909" y="345" on="0"/>
- <pt x="960" y="230" on="1"/>
- <pt x="1031" y="74" on="0"/>
- <pt x="1184" y="74" on="1"/>
- <pt x="1284" y="74" on="0"/>
- <pt x="1417" y="146" on="1"/>
- <pt x="1417" y="46" on="1"/>
- <pt x="1268" y="-25" on="0"/>
- <pt x="1144" y="-25" on="1"/>
- <pt x="1008" y="-25" on="0"/>
- <pt x="907" y="54" on="1"/>
- <pt x="847" y="100" on="0"/>
- <pt x="790" y="188" on="1"/>
- <pt x="718" y="71" on="0"/>
- <pt x="664" y="27" on="1"/>
- <pt x="600" y="-25" on="0"/>
- <pt x="495" y="-25" on="1"/>
- <pt x="304" y="-25" on="0"/>
- <pt x="183" y="134" on="1"/>
- <pt x="62" y="292" on="0"/>
- <pt x="62" y="543" on="1"/>
- <pt x="62" y="791" on="0"/>
- <pt x="183" y="951" on="1"/>
- <pt x="303" y="1110" on="0"/>
- <pt x="491" y="1110" on="1"/>
- <pt x="614" y="1110" on="0"/>
- <pt x="698" y="1042" on="1"/>
- <pt x="747" y="1003" on="0"/>
- </contour>
- <contour>
- <pt x="500" y="1047" on="1"/>
- <pt x="273" y="1047" on="0"/>
- <pt x="273" y="532" on="1"/>
- <pt x="273" y="38" on="0"/>
- <pt x="503" y="38" on="1"/>
- <pt x="629" y="38" on="0"/>
- <pt x="665" y="197" on="1"/>
- <pt x="692" y="317" on="0"/>
- <pt x="692" y="550" on="1"/>
- <pt x="692" y="823" on="0"/>
- <pt x="649" y="934" on="1"/>
- <pt x="606" y="1047" on="0"/>
- </contour>
- <contour>
- <pt x="905" y="648" on="1"/>
- <pt x="1207" y="648" on="1"/>
- <pt x="1207" y="692" on="1"/>
- <pt x="1207" y="1049" on="0"/>
- <pt x="1064" y="1049" on="1"/>
- <pt x="973" y="1049" on="0"/>
- <pt x="935" y="919" on="1"/>
- <pt x="907" y="827" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 0 0 53 11 2 41 11 25 37 11 33 12 9 17 48 84 33 1 25 2 17 2 2 1 1
- 51 0 2 1 49 3 0 6 49 7 2 1 21 15 14 3 7 2 3 0 0 0 8 7 14
- 1 49 1 4 48 84 50 49 1 0 14 0 0 39 10 29 48 196 51 50 49 45 29 21 15
- 14 8 7 6 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ogonek" xMin="156" yMin="-370" xMax="525" yMax="0">
- <contour>
- <pt x="525" y="-273" on="1"/>
- <pt x="525" y="-341" on="1"/>
- <pt x="454" y="-370" on="0"/>
- <pt x="376" y="-370" on="1"/>
- <pt x="156" y="-370" on="0"/>
- <pt x="156" y="-211" on="1"/>
- <pt x="156" y="-89" on="0"/>
- <pt x="314" y="0" on="1"/>
- <pt x="421" y="0" on="1"/>
- <pt x="292" y="-80" on="0"/>
- <pt x="292" y="-182" on="1"/>
- <pt x="292" y="-289" on="0"/>
- <pt x="425" y="-289" on="1"/>
- <pt x="476" y="-289" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 0 0 12 7 3 48 84 8 7 3 1 0 14 0 0 10 48 5 48 196 8 7 5 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ograve" xMin="62" yMin="-25" xMax="962" yMax="1604">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="88" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ohungarumlaut" xMin="62" yMin="-25" xMax="962" yMax="1604">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="hungarumlaut" x="258" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="omacron" xMin="62" yMin="-25" xMax="962" yMax="1406">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="macron" x="171" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="one" xMin="130" yMin="0" xMax="895" yMax="1493">
- <contour>
- <pt x="611" y="1493" on="1"/>
- <pt x="611" y="259" on="1"/>
- <pt x="617" y="160" on="1"/>
- <pt x="622" y="89" on="0"/>
- <pt x="666" y="75" on="1"/>
- <pt x="701" y="63" on="0"/>
- <pt x="778" y="63" on="1"/>
- <pt x="895" y="62" on="1"/>
- <pt x="895" y="0" on="1"/>
- <pt x="130" y="0" on="1"/>
- <pt x="130" y="62" on="1"/>
- <pt x="247" y="63" on="1"/>
- <pt x="296" y="64" on="0"/>
- <pt x="357" y="74" on="1"/>
- <pt x="384" y="80" on="0"/>
- <pt x="392" y="92" on="1"/>
- <pt x="414" y="129" on="0"/>
- <pt x="414" y="259" on="1"/>
- <pt x="414" y="1177" on="1"/>
- <pt x="408" y="1278" on="1"/>
- <pt x="404" y="1349" on="0"/>
- <pt x="367" y="1349" on="1"/>
- <pt x="338" y="1349" on="0"/>
- <pt x="229" y="1329" on="1"/>
- <pt x="130" y="1311" on="1"/>
- <pt x="130" y="1373" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 42 values pushed */
- 17 9 25 24 18 7 1 0 6 13 21 8 9 8 1 0 14 9 17 8 7 2 13 0 25
- 24 17 0 0 1 0 4 1 17 1 4 48 196 18 17 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="onehalf" xMin="173" yMin="-37" xMax="1388" yMax="1517">
- <contour>
- <pt x="173" y="-37" on="1"/>
- <pt x="1261" y="1517" on="1"/>
- <pt x="1347" y="1517" on="1"/>
- <pt x="259" y="-37" on="1"/>
- </contour>
- <contour>
- <pt x="173" y="772" on="1"/>
- <pt x="173" y="810" on="1"/>
- <pt x="207" y="811" on="1"/>
- <pt x="252" y="815" on="1"/>
- <pt x="295" y="818" on="0"/>
- <pt x="302" y="840" on="1"/>
- <pt x="309" y="859" on="0"/>
- <pt x="309" y="909" on="1"/>
- <pt x="309" y="1344" on="1"/>
- <pt x="306" y="1395" on="1"/>
- <pt x="304" y="1431" on="0"/>
- <pt x="285" y="1431" on="1"/>
- <pt x="269" y="1431" on="0"/>
- <pt x="216" y="1421" on="1"/>
- <pt x="173" y="1413" on="1"/>
- <pt x="173" y="1453" on="1"/>
- <pt x="432" y="1517" on="1"/>
- <pt x="432" y="909" on="1"/>
- <pt x="432" y="848" on="0"/>
- <pt x="442" y="831" on="1"/>
- <pt x="451" y="816" on="0"/>
- <pt x="490" y="814" on="1"/>
- <pt x="534" y="811" on="1"/>
- <pt x="568" y="810" on="1"/>
- <pt x="568" y="772" on="1"/>
- </contour>
- <contour>
- <pt x="918" y="0" on="1"/>
- <pt x="918" y="49" on="1"/>
- <pt x="959" y="165" on="0"/>
- <pt x="1070" y="267" on="1"/>
- <pt x="1111" y="305" on="1"/>
- <pt x="1258" y="441" on="0"/>
- <pt x="1258" y="562" on="1"/>
- <pt x="1258" y="718" on="0"/>
- <pt x="1121" y="718" on="1"/>
- <pt x="1061" y="718" on="0"/>
- <pt x="995" y="669" on="1"/>
- <pt x="995" y="579" on="1"/>
- <pt x="936" y="579" on="1"/>
- <pt x="936" y="715" on="1"/>
- <pt x="1045" y="758" on="0"/>
- <pt x="1145" y="758" on="1"/>
- <pt x="1253" y="758" on="0"/>
- <pt x="1321" y="702" on="1"/>
- <pt x="1388" y="646" on="0"/>
- <pt x="1388" y="560" on="1"/>
- <pt x="1388" y="452" on="0"/>
- <pt x="1257" y="356" on="1"/>
- <pt x="1226" y="334" on="0"/>
- <pt x="1202" y="318" on="1"/>
- <pt x="1152" y="281" on="1"/>
- <pt x="1040" y="199" on="0"/>
- <pt x="1030" y="105" on="1"/>
- <pt x="1386" y="105" on="1"/>
- <pt x="1386" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 106 values pushed */
- 0 0 37 45 44 48 84 44 44 42 41 40 39 5 4 55 3 30 55 29 2 27 21 20 19
- 18 12 11 5 2 1 10 13 15 4 3 0 29 0 0 56 55 43 1 29 1 4 48 84 57
- 29 1 28 4 1 2 0 14 0 0 35 44 48 48 196 57 56 55 42 41 40 39 30 29 28
- 27 2 1 13 13 48 20 19 18 5 4 3 0 6 13 11 0 0 21 20 12 1 11 1 4
- 48 196 12 11 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="onequarter" xMin="173" yMin="-37" xMax="1364" yMax="1517">
- <contour>
- <pt x="173" y="-37" on="1"/>
- <pt x="1261" y="1517" on="1"/>
- <pt x="1347" y="1517" on="1"/>
- <pt x="259" y="-37" on="1"/>
- </contour>
- <contour>
- <pt x="1065" y="0" on="1"/>
- <pt x="1065" y="39" on="1"/>
- <pt x="1075" y="39" on="1"/>
- <pt x="1125" y="39" on="0"/>
- <pt x="1139" y="48" on="1"/>
- <pt x="1153" y="57" on="0"/>
- <pt x="1155" y="88" on="1"/>
- <pt x="1158" y="137" on="1"/>
- <pt x="1158" y="205" on="1"/>
- <pt x="813" y="205" on="1"/>
- <pt x="813" y="271" on="1"/>
- <pt x="1181" y="751" on="1"/>
- <pt x="1271" y="751" on="1"/>
- <pt x="1271" y="294" on="1"/>
- <pt x="1364" y="294" on="1"/>
- <pt x="1364" y="205" on="1"/>
- <pt x="1271" y="205" on="1"/>
- <pt x="1271" y="137" on="1"/>
- <pt x="1274" y="88" on="1"/>
- <pt x="1276" y="52" on="0"/>
- <pt x="1297" y="45" on="1"/>
- <pt x="1313" y="39" on="0"/>
- <pt x="1348" y="39" on="1"/>
- <pt x="1358" y="39" on="1"/>
- <pt x="1358" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="878" y="294" on="1"/>
- <pt x="1158" y="294" on="1"/>
- <pt x="1158" y="658" on="1"/>
- </contour>
- <contour>
- <pt x="173" y="772" on="1"/>
- <pt x="173" y="810" on="1"/>
- <pt x="207" y="811" on="1"/>
- <pt x="252" y="815" on="1"/>
- <pt x="295" y="818" on="0"/>
- <pt x="302" y="840" on="1"/>
- <pt x="309" y="859" on="0"/>
- <pt x="309" y="909" on="1"/>
- <pt x="309" y="1344" on="1"/>
- <pt x="306" y="1395" on="1"/>
- <pt x="304" y="1431" on="0"/>
- <pt x="285" y="1431" on="1"/>
- <pt x="269" y="1431" on="0"/>
- <pt x="216" y="1421" on="1"/>
- <pt x="173" y="1413" on="1"/>
- <pt x="173" y="1453" on="1"/>
- <pt x="432" y="1517" on="1"/>
- <pt x="432" y="909" on="1"/>
- <pt x="432" y="848" on="0"/>
- <pt x="442" y="831" on="1"/>
- <pt x="451" y="816" on="0"/>
- <pt x="490" y="814" on="1"/>
- <pt x="534" y="811" on="1"/>
- <pt x="568" y="810" on="1"/>
- <pt x="568" y="772" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 129 values pushed */
- 31 16 15 3 32 17 3 14 17 12 2 27 26 21 11 6 5 6 12 4 3 55 49 48 47
- 46 40 39 33 2 1 10 13 43 32 3 0 4 0 0 30 29 18 17 46 3 12 1 4 48
- 84 56 32 1 20 19 13 12 3 28 4 1 3 0 14 15 1 2 16 11 3 56 55 29 14
- 13 6 5 4 8 11 48 3 28 27 26 19 18 2 6 13 16 47 46 33 32 3 0 6 13
- 39 0 0 49 48 12 1 39 31 30 12 11 15 3 16 2 4 48 196 40 39 1 21 20 17
- 16 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="onesuperior" xMin="136" yMin="772" xMax="531" yMax="1517">
- <contour>
- <pt x="136" y="772" on="1"/>
- <pt x="136" y="810" on="1"/>
- <pt x="170" y="811" on="1"/>
- <pt x="215" y="815" on="1"/>
- <pt x="258" y="818" on="0"/>
- <pt x="265" y="840" on="1"/>
- <pt x="272" y="860" on="0"/>
- <pt x="272" y="909" on="1"/>
- <pt x="272" y="1344" on="1"/>
- <pt x="269" y="1395" on="1"/>
- <pt x="267" y="1431" on="0"/>
- <pt x="248" y="1431" on="1"/>
- <pt x="234" y="1431" on="0"/>
- <pt x="179" y="1421" on="1"/>
- <pt x="136" y="1413" on="1"/>
- <pt x="136" y="1453" on="1"/>
- <pt x="395" y="1517" on="1"/>
- <pt x="395" y="909" on="1"/>
- <pt x="395" y="848" on="0"/>
- <pt x="405" y="831" on="1"/>
- <pt x="414" y="816" on="0"/>
- <pt x="453" y="814" on="1"/>
- <pt x="497" y="811" on="1"/>
- <pt x="531" y="810" on="1"/>
- <pt x="531" y="772" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 23 17 16 15 14 8 7 1 8 13 11 0 24 0 1 0 14 24 23 2 13 16 15 14 1
- 0 4 13 7 0 0 17 16 12 1 7 1 4 48 196 8 7 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ordfeminine" xMin="25" yMin="830" xMax="561" yMax="1517">
- <contour>
- <pt x="363" y="925" on="1"/>
- <pt x="282" y="830" on="0"/>
- <pt x="193" y="830" on="1"/>
- <pt x="25" y="830" on="0"/>
- <pt x="25" y="1007" on="1"/>
- <pt x="25" y="1222" on="0"/>
- <pt x="317" y="1222" on="1"/>
- <pt x="363" y="1222" on="1"/>
- <pt x="363" y="1283" on="1"/>
- <pt x="363" y="1388" on="0"/>
- <pt x="341" y="1426" on="1"/>
- <pt x="318" y="1465" on="0"/>
- <pt x="257" y="1465" on="1"/>
- <pt x="161" y="1465" on="0"/>
- <pt x="161" y="1356" on="1"/>
- <pt x="161" y="1338" on="1"/>
- <pt x="59" y="1338" on="1"/>
- <pt x="59" y="1462" on="1"/>
- <pt x="157" y="1517" on="0"/>
- <pt x="276" y="1517" on="1"/>
- <pt x="401" y="1517" on="0"/>
- <pt x="450" y="1466" on="1"/>
- <pt x="499" y="1416" on="0"/>
- <pt x="499" y="1283" on="1"/>
- <pt x="499" y="1024" on="1"/>
- <pt x="499" y="919" on="0"/>
- <pt x="539" y="919" on="1"/>
- <pt x="547" y="919" on="0"/>
- <pt x="561" y="922" on="1"/>
- <pt x="561" y="866" on="1"/>
- <pt x="512" y="830" on="0"/>
- <pt x="466" y="830" on="1"/>
- <pt x="392" y="830" on="0"/>
- </contour>
- <contour>
- <pt x="363" y="989" on="1"/>
- <pt x="363" y="1171" on="1"/>
- <pt x="326" y="1171" on="1"/>
- <pt x="173" y="1171" on="0"/>
- <pt x="173" y="1018" on="1"/>
- <pt x="173" y="915" on="0"/>
- <pt x="249" y="915" on="1"/>
- <pt x="300" y="915" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 78 values pushed */
- 0 0 39 7 2 12 25 19 48 84 19 0 1 35 34 33 29 28 24 23 17 16 15 14 8
- 7 6 0 15 13 31 26 2 3 12 0 0 14 0 0 37 47 4 48 196 29 28 2 13 23
- 35 17 16 15 14 6 6 13 4 0 0 0 34 33 8 7 0 23 4 23 1 4 48 196 24
- 23 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ordmasculine" xMin="25" yMin="830" xMax="611" yMax="1517">
- <contour>
- <pt x="318" y="1517" on="1"/>
- <pt x="451" y="1517" on="0"/>
- <pt x="531" y="1424" on="1"/>
- <pt x="611" y="1331" on="0"/>
- <pt x="611" y="1174" on="1"/>
- <pt x="611" y="1015" on="0"/>
- <pt x="531" y="923" on="1"/>
- <pt x="450" y="830" on="0"/>
- <pt x="314" y="830" on="1"/>
- <pt x="197" y="830" on="0"/>
- <pt x="121" y="906" on="1"/>
- <pt x="25" y="1002" on="0"/>
- <pt x="25" y="1174" on="1"/>
- <pt x="25" y="1331" on="0"/>
- <pt x="105" y="1424" on="1"/>
- <pt x="184" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="318" y="1465" on="1"/>
- <pt x="182" y="1465" on="0"/>
- <pt x="182" y="1174" on="1"/>
- <pt x="182" y="883" on="0"/>
- <pt x="322" y="883" on="1"/>
- <pt x="453" y="883" on="0"/>
- <pt x="453" y="1168" on="1"/>
- <pt x="453" y="1465" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 29 values pushed */
- 0 0 20 25 8 16 25 0 48 84 0 0 1 8 0 0 14 0 0 22 24 4 18 24 12
- 48 196 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="oslash" xMin="62" yMin="-25" xMax="963" yMax="1110">
- <contour>
- <pt x="62" y="-25" on="1"/>
- <pt x="177" y="138" on="1"/>
- <pt x="62" y="310" on="0"/>
- <pt x="62" y="544" on="1"/>
- <pt x="62" y="804" on="0"/>
- <pt x="183" y="957" on="1"/>
- <pt x="304" y="1110" on="0"/>
- <pt x="511" y="1110" on="1"/>
- <pt x="677" y="1110" on="0"/>
- <pt x="795" y="1008" on="1"/>
- <pt x="867" y="1110" on="1"/>
- <pt x="963" y="1110" on="1"/>
- <pt x="847" y="948" on="1"/>
- <pt x="963" y="776" on="0"/>
- <pt x="963" y="540" on="1"/>
- <pt x="963" y="281" on="0"/>
- <pt x="841" y="128" on="1"/>
- <pt x="720" y="-25" on="0"/>
- <pt x="513" y="-25" on="1"/>
- <pt x="347" y="-25" on="0"/>
- <pt x="230" y="77" on="1"/>
- <pt x="158" y="-25" on="1"/>
- </contour>
- <contour>
- <pt x="698" y="873" on="1"/>
- <pt x="638" y="1043" on="0"/>
- <pt x="513" y="1043" on="1"/>
- <pt x="404" y="1043" on="0"/>
- <pt x="341" y="907" on="1"/>
- <pt x="278" y="772" on="0"/>
- <pt x="278" y="547" on="1"/>
- <pt x="278" y="439" on="0"/>
- <pt x="301" y="312" on="1"/>
- </contour>
- <contour>
- <pt x="326" y="213" on="1"/>
- <pt x="386" y="43" on="0"/>
- <pt x="512" y="43" on="1"/>
- <pt x="621" y="43" on="0"/>
- <pt x="684" y="179" on="1"/>
- <pt x="747" y="315" on="0"/>
- <pt x="747" y="541" on="1"/>
- <pt x="747" y="644" on="0"/>
- <pt x="724" y="773" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 67 values pushed */
- 0 0 33 17 18 24 17 7 48 84 18 2 7 1 1 1 39 31 30 22 20 12 9 1 8
- 1 2 3 0 0 1 11 10 2 13 1 0 1 21 0 2 0 14 0 0 37 10 14 28 10
- 3 48 196 39 31 30 22 21 20 14 12 11 10 9 3 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="otilde" xMin="62" yMin="-25" xMax="962" yMax="1518">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="tilde" x="171" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="p" xMin="0" yMin="-395" xMax="956" yMax="1110">
- <contour>
- <pt x="0" y="-395" on="1"/>
- <pt x="0" y="-333" on="1"/>
- <pt x="19" y="-332" on="1"/>
- <pt x="92" y="-328" on="0"/>
- <pt x="105" y="-306" on="1"/>
- <pt x="118" y="-287" on="0"/>
- <pt x="119" y="-235" on="1"/>
- <pt x="121" y="-136" on="1"/>
- <pt x="121" y="827" on="1"/>
- <pt x="119" y="925" on="1"/>
- <pt x="119" y="993" on="0"/>
- <pt x="94" y="1007" on="1"/>
- <pt x="74" y="1019" on="0"/>
- <pt x="19" y="1023" on="1"/>
- <pt x="0" y="1024" on="1"/>
- <pt x="0" y="1086" on="1"/>
- <pt x="318" y="1086" on="1"/>
- <pt x="318" y="907" on="1"/>
- <pt x="376" y="998" on="0"/>
- <pt x="432" y="1044" on="1"/>
- <pt x="512" y="1110" on="0"/>
- <pt x="610" y="1110" on="1"/>
- <pt x="770" y="1110" on="0"/>
- <pt x="863" y="968" on="1"/>
- <pt x="956" y="826" on="0"/>
- <pt x="956" y="575" on="1"/>
- <pt x="956" y="293" on="0"/>
- <pt x="835" y="134" on="1"/>
- <pt x="714" y="-25" on="0"/>
- <pt x="503" y="-25" on="1"/>
- <pt x="429" y="-25" on="0"/>
- <pt x="318" y="0" on="1"/>
- <pt x="318" y="-136" on="1"/>
- <pt x="320" y="-235" on="1"/>
- <pt x="321" y="-304" on="0"/>
- <pt x="345" y="-317" on="1"/>
- <pt x="367" y="-329" on="0"/>
- <pt x="421" y="-332" on="1"/>
- <pt x="439" y="-333" on="1"/>
- <pt x="439" y="-395" on="1"/>
- </contour>
- <contour>
- <pt x="318" y="77" on="1"/>
- <pt x="399" y="54" on="0"/>
- <pt x="449" y="54" on="1"/>
- <pt x="585" y="54" on="0"/>
- <pt x="664" y="181" on="1"/>
- <pt x="743" y="308" on="0"/>
- <pt x="743" y="536" on="1"/>
- <pt x="743" y="983" on="0"/>
- <pt x="542" y="983" on="1"/>
- <pt x="449" y="983" on="0"/>
- <pt x="318" y="837" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 0 0 48 29 21 42 21 29 48 84 29 2 21 1 1 50 40 17 14 8 5 15 2 3 0
- 1 38 32 31 7 1 5 2 0 3 0 39 0 1 0 16 15 1 14 0 0 46 10 25 48
- 196 39 38 2 13 25 16 15 14 1 0 4 13 7 0 0 50 40 32 31 17 16 4 5 7
- 1 4 48 196 8 7 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="paragraph" xMin="15" yMin="-296" xMax="805" yMax="1489">
- <contour>
- <pt x="484" y="-296" on="1"/>
- <pt x="484" y="740" on="1"/>
- <pt x="291" y="744" on="0"/>
- <pt x="171" y="834" on="1"/>
- <pt x="15" y="951" on="0"/>
- <pt x="15" y="1159" on="1"/>
- <pt x="15" y="1362" on="0"/>
- <pt x="150" y="1440" on="1"/>
- <pt x="233" y="1489" on="0"/>
- <pt x="360" y="1487" on="1"/>
- <pt x="431" y="1486" on="1"/>
- <pt x="536" y="1482" on="1"/>
- <pt x="653" y="1480" on="1"/>
- <pt x="805" y="1480" on="1"/>
- <pt x="805" y="-296" on="1"/>
- <pt x="731" y="-296" on="1"/>
- <pt x="731" y="1382" on="1"/>
- <pt x="558" y="1382" on="1"/>
- <pt x="558" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 60 values pushed */
- 1 1 16 2 2 0 1 18 15 14 0 4 13 2 0 0 0 17 16 9 1 12 1 4 48
- 84 13 12 0 14 12 15 17 2 5 0 0 0 16 15 21 1 13 1 0 21 1 17 2 4
- 48 196 14 13 1 18 17 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="parenleft" xMin="116" yMin="-296" xMax="579" yMax="1579">
- <contour>
- <pt x="579" y="-234" on="1"/>
- <pt x="579" y="-296" on="1"/>
- <pt x="384" y="-169" on="0"/>
- <pt x="268" y="38" on="1"/>
- <pt x="116" y="312" on="0"/>
- <pt x="116" y="643" on="1"/>
- <pt x="116" y="983" on="0"/>
- <pt x="286" y="1271" on="1"/>
- <pt x="398" y="1462" on="0"/>
- <pt x="579" y="1579" on="1"/>
- <pt x="579" y="1517" on="1"/>
- <pt x="440" y="1355" on="0"/>
- <pt x="382" y="1195" on="1"/>
- <pt x="313" y="1003" on="0"/>
- <pt x="313" y="642" on="1"/>
- <pt x="313" y="266" on="0"/>
- <pt x="389" y="70" on="1"/>
- <pt x="447" y="-81" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 17 values pushed */
- 10 9 1 0 14 0 0 14 5 5 48 196 10 9 5 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="parenright" xMin="104" yMin="-296" xMax="567" yMax="1579">
- <contour>
- <pt x="104" y="1517" on="1"/>
- <pt x="104" y="1579" on="1"/>
- <pt x="299" y="1452" on="0"/>
- <pt x="415" y="1245" on="1"/>
- <pt x="567" y="971" on="0"/>
- <pt x="567" y="640" on="1"/>
- <pt x="567" y="299" on="0"/>
- <pt x="397" y="12" on="1"/>
- <pt x="285" y="-178" on="0"/>
- <pt x="104" y="-296" on="1"/>
- <pt x="104" y="-234" on="1"/>
- <pt x="244" y="-72" on="0"/>
- <pt x="300" y="88" on="1"/>
- <pt x="369" y="280" on="0"/>
- <pt x="369" y="639" on="1"/>
- <pt x="369" y="1016" on="0"/>
- <pt x="293" y="1214" on="1"/>
- <pt x="236" y="1363" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 17 values pushed */
- 10 9 1 0 14 0 0 14 5 5 48 196 10 9 5 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="percent" xMin="120" yMin="-37" xMax="1585" yMax="1517">
- <contour>
- <pt x="195" y="-37" on="1"/>
- <pt x="1385" y="1517" on="1"/>
- <pt x="1509" y="1517" on="1"/>
- <pt x="320" y="-37" on="1"/>
- </contour>
- <contour>
- <pt x="435" y="1480" on="1"/>
- <pt x="573" y="1480" on="0"/>
- <pt x="661" y="1377" on="1"/>
- <pt x="749" y="1274" on="0"/>
- <pt x="749" y="1110" on="1"/>
- <pt x="749" y="945" on="0"/>
- <pt x="660" y="843" on="1"/>
- <pt x="571" y="740" on="0"/>
- <pt x="430" y="740" on="1"/>
- <pt x="309" y="740" on="0"/>
- <pt x="226" y="824" on="1"/>
- <pt x="120" y="931" on="0"/>
- <pt x="120" y="1110" on="1"/>
- <pt x="120" y="1273" on="0"/>
- <pt x="208" y="1376" on="1"/>
- <pt x="296" y="1480" on="0"/>
- </contour>
- <contour>
- <pt x="434" y="1419" on="1"/>
- <pt x="268" y="1419" on="0"/>
- <pt x="268" y="1111" on="1"/>
- <pt x="268" y="802" on="0"/>
- <pt x="433" y="802" on="1"/>
- <pt x="601" y="802" on="0"/>
- <pt x="601" y="1116" on="1"/>
- <pt x="601" y="1419" on="0"/>
- </contour>
- <contour>
- <pt x="1270" y="740" on="1"/>
- <pt x="1409" y="740" on="0"/>
- <pt x="1497" y="636" on="1"/>
- <pt x="1585" y="533" on="0"/>
- <pt x="1585" y="370" on="1"/>
- <pt x="1585" y="205" on="0"/>
- <pt x="1496" y="103" on="1"/>
- <pt x="1407" y="0" on="0"/>
- <pt x="1266" y="0" on="1"/>
- <pt x="1144" y="0" on="0"/>
- <pt x="1062" y="84" on="1"/>
- <pt x="956" y="192" on="0"/>
- <pt x="956" y="370" on="1"/>
- <pt x="956" y="533" on="0"/>
- <pt x="1044" y="636" on="1"/>
- <pt x="1132" y="740" on="0"/>
- </contour>
- <contour>
- <pt x="1270" y="679" on="1"/>
- <pt x="1104" y="679" on="0"/>
- <pt x="1104" y="370" on="1"/>
- <pt x="1104" y="61" on="0"/>
- <pt x="1269" y="61" on="1"/>
- <pt x="1437" y="61" on="0"/>
- <pt x="1437" y="374" on="1"/>
- <pt x="1437" y="679" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 69 values pushed */
- 0 0 48 11 36 44 11 28 24 11 12 20 11 4 48 84 36 2 4 0 28 12 1 1 28
- 12 2 0 2 3 0 0 1 2 1 2 13 0 0 1 3 0 2 0 14 0 0 50 47 32
- 46 47 40 26 47 8 22 47 16 48 196 40 32 16 8 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="period" xMin="133" yMin="0" xMax="380" yMax="247">
- <contour>
- <pt x="133" y="0" on="1"/>
- <pt x="133" y="247" on="1"/>
- <pt x="380" y="247" on="1"/>
- <pt x="380" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 2 1 6 1 0 1 4 48 84 3 0 1 0 14 0 0 3 2 6 1 0 1 4
- 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="periodcentered" xMin="133" yMin="491" xMax="380" yMax="738">
- <contour>
- <pt x="133" y="491" on="1"/>
- <pt x="133" y="738" on="1"/>
- <pt x="380" y="738" on="1"/>
- <pt x="380" y="491" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 3 0 6 1 1 1 4 48 84 2 1 1 0 14 0 0 3 2 6 1 0 1 4
- 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="periodcentered#1" xMin="133" yMin="491" xMax="380" yMax="738">
- <contour>
- <pt x="133" y="491" on="1"/>
- <pt x="133" y="738" on="1"/>
- <pt x="380" y="738" on="1"/>
- <pt x="380" y="491" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 3 0 6 1 1 1 4 48 84 2 1 1 0 14 0 0 3 2 6 1 0 1 4
- 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="perthousand" xMin="34" yMin="-37" xMax="2014" yMax="1517">
- <contour>
- <pt x="349" y="1480" on="1"/>
- <pt x="487" y="1480" on="0"/>
- <pt x="575" y="1377" on="1"/>
- <pt x="663" y="1273" on="0"/>
- <pt x="663" y="1111" on="1"/>
- <pt x="663" y="945" on="0"/>
- <pt x="575" y="843" on="1"/>
- <pt x="487" y="740" on="0"/>
- <pt x="345" y="740" on="1"/>
- <pt x="224" y="740" on="0"/>
- <pt x="140" y="824" on="1"/>
- <pt x="34" y="932" on="0"/>
- <pt x="34" y="1110" on="1"/>
- <pt x="34" y="1273" on="0"/>
- <pt x="122" y="1376" on="1"/>
- <pt x="210" y="1480" on="0"/>
- </contour>
- <contour>
- <pt x="349" y="1419" on="1"/>
- <pt x="182" y="1419" on="0"/>
- <pt x="182" y="1111" on="1"/>
- <pt x="182" y="802" on="0"/>
- <pt x="347" y="802" on="1"/>
- <pt x="515" y="802" on="0"/>
- <pt x="515" y="1112" on="1"/>
- <pt x="515" y="1419" on="0"/>
- </contour>
- <contour>
- <pt x="972" y="740" on="1"/>
- <pt x="1110" y="740" on="0"/>
- <pt x="1198" y="636" on="1"/>
- <pt x="1286" y="532" on="0"/>
- <pt x="1286" y="370" on="1"/>
- <pt x="1286" y="205" on="0"/>
- <pt x="1198" y="103" on="1"/>
- <pt x="1110" y="0" on="0"/>
- <pt x="968" y="0" on="1"/>
- <pt x="847" y="0" on="0"/>
- <pt x="763" y="84" on="1"/>
- <pt x="657" y="192" on="0"/>
- <pt x="657" y="370" on="1"/>
- <pt x="657" y="532" on="0"/>
- <pt x="745" y="636" on="1"/>
- <pt x="834" y="740" on="0"/>
- </contour>
- <contour>
- <pt x="972" y="679" on="1"/>
- <pt x="805" y="679" on="0"/>
- <pt x="805" y="371" on="1"/>
- <pt x="805" y="61" on="0"/>
- <pt x="971" y="61" on="1"/>
- <pt x="1138" y="61" on="0"/>
- <pt x="1138" y="371" on="1"/>
- <pt x="1138" y="679" on="0"/>
- </contour>
- <contour>
- <pt x="1700" y="740" on="1"/>
- <pt x="1838" y="740" on="0"/>
- <pt x="1926" y="636" on="1"/>
- <pt x="2014" y="532" on="0"/>
- <pt x="2014" y="370" on="1"/>
- <pt x="2014" y="205" on="0"/>
- <pt x="1926" y="103" on="1"/>
- <pt x="1838" y="0" on="0"/>
- <pt x="1696" y="0" on="1"/>
- <pt x="1575" y="0" on="0"/>
- <pt x="1491" y="84" on="1"/>
- <pt x="1385" y="192" on="0"/>
- <pt x="1385" y="370" on="1"/>
- <pt x="1385" y="532" on="0"/>
- <pt x="1473" y="636" on="1"/>
- <pt x="1562" y="740" on="0"/>
- </contour>
- <contour>
- <pt x="1700" y="679" on="1"/>
- <pt x="1533" y="679" on="0"/>
- <pt x="1533" y="371" on="1"/>
- <pt x="1533" y="61" on="0"/>
- <pt x="1698" y="61" on="1"/>
- <pt x="1866" y="61" on="0"/>
- <pt x="1866" y="375" on="1"/>
- <pt x="1866" y="679" on="0"/>
- </contour>
- <contour>
- <pt x="73" y="-37" on="1"/>
- <pt x="1162" y="1517" on="1"/>
- <pt x="1248" y="1517" on="1"/>
- <pt x="160" y="-37" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 0 0 68 11 56 64 11 48 44 11 32 40 11 24 20 11 8 16 11 0 48 84 56 2 32
- 2 0 0 48 24 8 1 1 48 24 8 3 0 2 3 0 0 1 74 73 2 13 0 0 1
- 75 72 2 0 14 0 0 70 47 52 66 47 60 46 47 28 42 47 36 22 47 4 18 47 12
- 48 196 75 74 73 72 60 52 36 28 12 4
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="plus" xMin="84" yMin="99" xMax="1071" yMax="1086">
- <contour>
- <pt x="528" y="99" on="1"/>
- <pt x="528" y="543" on="1"/>
- <pt x="84" y="543" on="1"/>
- <pt x="84" y="642" on="1"/>
- <pt x="528" y="642" on="1"/>
- <pt x="528" y="1086" on="1"/>
- <pt x="627" y="1086" on="1"/>
- <pt x="627" y="642" on="1"/>
- <pt x="1071" y="642" on="1"/>
- <pt x="1071" y="543" on="1"/>
- <pt x="627" y="543" on="1"/>
- <pt x="627" y="99" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 55 values pushed */
- 6 5 2 13 3 11 0 1 0 0 10 9 2 1 9 3 3 1 4 48 84 8 7 4 3
- 3 0 14 9 8 2 13 6 3 2 0 0 0 11 10 7 6 9 3 0 1 4 48 196 5
- 4 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="plusminus" xMin="84" yMin="0" xMax="1071" yMax="1184">
- <contour>
- <pt x="84" y="0" on="1"/>
- <pt x="84" y="99" on="1"/>
- <pt x="1071" y="99" on="1"/>
- <pt x="1071" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="528" y="296" on="1"/>
- <pt x="528" y="691" on="1"/>
- <pt x="84" y="691" on="1"/>
- <pt x="84" y="790" on="1"/>
- <pt x="528" y="790" on="1"/>
- <pt x="528" y="1184" on="1"/>
- <pt x="627" y="1184" on="1"/>
- <pt x="627" y="790" on="1"/>
- <pt x="1071" y="790" on="1"/>
- <pt x="1071" y="691" on="1"/>
- <pt x="627" y="691" on="1"/>
- <pt x="627" y="296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 73 values pushed */
- 15 4 2 5 1 3 10 9 2 13 7 0 0 14 13 6 5 9 3 7 2 1 9 1 0
- 2 4 48 84 12 11 8 7 3 3 0 1 2 0 14 13 12 3 2 4 13 10 7 6 1
- 0 4 13 4 0 0 15 14 11 10 9 3 4 1 4 48 196 9 8 5 4 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="q" xMin="68" yMin="-395" xMax="1024" yMax="1110">
- <contour>
- <pt x="585" y="-395" on="1"/>
- <pt x="585" y="-333" on="1"/>
- <pt x="604" y="-332" on="1"/>
- <pt x="677" y="-327" on="0"/>
- <pt x="690" y="-306" on="1"/>
- <pt x="703" y="-286" on="0"/>
- <pt x="704" y="-235" on="1"/>
- <pt x="706" y="-136" on="1"/>
- <pt x="706" y="179" on="1"/>
- <pt x="648" y="87" on="0"/>
- <pt x="592" y="41" on="1"/>
- <pt x="512" y="-25" on="0"/>
- <pt x="414" y="-25" on="1"/>
- <pt x="254" y="-25" on="0"/>
- <pt x="161" y="118" on="1"/>
- <pt x="68" y="260" on="0"/>
- <pt x="68" y="510" on="1"/>
- <pt x="68" y="793" on="0"/>
- <pt x="189" y="951" on="1"/>
- <pt x="310" y="1110" on="0"/>
- <pt x="523" y="1110" on="1"/>
- <pt x="597" y="1110" on="0"/>
- <pt x="706" y="1086" on="1"/>
- <pt x="903" y="1086" on="1"/>
- <pt x="903" y="-136" on="1"/>
- <pt x="905" y="-235" on="1"/>
- <pt x="905" y="-303" on="0"/>
- <pt x="930" y="-317" on="1"/>
- <pt x="952" y="-329" on="0"/>
- <pt x="1006" y="-332" on="1"/>
- <pt x="1024" y="-333" on="1"/>
- <pt x="1024" y="-395" on="1"/>
- </contour>
- <contour>
- <pt x="706" y="1008" on="1"/>
- <pt x="626" y="1032" on="0"/>
- <pt x="576" y="1032" on="1"/>
- <pt x="439" y="1032" on="0"/>
- <pt x="360" y="905" on="1"/>
- <pt x="281" y="777" on="0"/>
- <pt x="281" y="551" on="1"/>
- <pt x="281" y="103" on="0"/>
- <pt x="482" y="103" on="1"/>
- <pt x="576" y="103" on="0"/>
- <pt x="706" y="248" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 75 values pushed */
- 0 0 40 29 12 34 21 20 48 84 20 1 12 2 1 42 32 8 3 22 2 3 0 1 30
- 24 7 1 4 2 0 3 0 31 0 1 0 23 22 1 14 0 0 38 10 16 48 196 31 30
- 2 13 23 1 0 16 7 0 0 42 32 22 8 7 4 4 23 1 4 48 196 24 23 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="question" xMin="51" yMin="0" xMax="851" yMax="1517">
- <contour>
- <pt x="271" y="0" on="1"/>
- <pt x="271" y="197" on="1"/>
- <pt x="468" y="197" on="1"/>
- <pt x="468" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="271" y="395" on="1"/>
- <pt x="271" y="413" on="1"/>
- <pt x="271" y="617" on="0"/>
- <pt x="413" y="758" on="1"/>
- <pt x="453" y="798" on="1"/>
- <pt x="641" y="986" on="0"/>
- <pt x="641" y="1184" on="1"/>
- <pt x="641" y="1309" on="0"/>
- <pt x="569" y="1382" on="1"/>
- <pt x="498" y="1456" on="0"/>
- <pt x="371" y="1456" on="1"/>
- <pt x="161" y="1456" on="0"/>
- <pt x="155" y="1305" on="1"/>
- <pt x="151" y="1198" on="1"/>
- <pt x="150" y="1177" on="1"/>
- <pt x="51" y="1177" on="1"/>
- <pt x="51" y="1451" on="1"/>
- <pt x="248" y="1517" on="0"/>
- <pt x="413" y="1517" on="1"/>
- <pt x="610" y="1517" on="0"/>
- <pt x="731" y="1427" on="1"/>
- <pt x="851" y="1338" on="0"/>
- <pt x="851" y="1194" on="1"/>
- <pt x="851" y="1029" on="0"/>
- <pt x="641" y="868" on="1"/>
- <pt x="595" y="832" on="0"/>
- <pt x="577" y="815" on="1"/>
- <pt x="540" y="781" on="1"/>
- <pt x="468" y="715" on="0"/>
- <pt x="468" y="532" on="1"/>
- <pt x="468" y="395" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 0 0 14 11 22 48 84 22 0 1 33 20 19 18 5 5 0 4 3 0 0 0 2 1 5
- 1 0 1 4 48 84 34 4 1 3 0 1 2 0 14 0 0 10 10 26 48 196 18 0 19
- 2 26 2 0 0 34 33 3 2 4 3 0 1 4 48 196 34 33 3 2 3 20 19 1 5
- 4 1 0 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="questiondown" xMin="51" yMin="-37" xMax="851" yMax="1480">
- <contour>
- <pt x="631" y="1480" on="1"/>
- <pt x="631" y="1283" on="1"/>
- <pt x="433" y="1283" on="1"/>
- <pt x="433" y="1480" on="1"/>
- </contour>
- <contour>
- <pt x="631" y="1086" on="1"/>
- <pt x="631" y="1067" on="1"/>
- <pt x="631" y="864" on="0"/>
- <pt x="488" y="722" on="1"/>
- <pt x="448" y="683" on="1"/>
- <pt x="261" y="500" on="0"/>
- <pt x="261" y="297" on="1"/>
- <pt x="261" y="172" on="0"/>
- <pt x="333" y="99" on="1"/>
- <pt x="404" y="25" on="0"/>
- <pt x="531" y="25" on="1"/>
- <pt x="739" y="25" on="0"/>
- <pt x="746" y="176" on="1"/>
- <pt x="751" y="282" on="1"/>
- <pt x="752" y="303" on="1"/>
- <pt x="851" y="303" on="1"/>
- <pt x="851" y="30" on="1"/>
- <pt x="658" y="-37" on="0"/>
- <pt x="488" y="-37" on="1"/>
- <pt x="291" y="-37" on="0"/>
- <pt x="171" y="53" on="1"/>
- <pt x="51" y="142" on="0"/>
- <pt x="51" y="286" on="1"/>
- <pt x="51" y="396" on="0"/>
- <pt x="139" y="500" on="1"/>
- <pt x="181" y="550" on="0"/>
- <pt x="261" y="613" on="1"/>
- <pt x="305" y="647" on="0"/>
- <pt x="325" y="666" on="1"/>
- <pt x="361" y="700" on="1"/>
- <pt x="433" y="767" on="0"/>
- <pt x="433" y="948" on="1"/>
- <pt x="433" y="1086" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 0 0 14 11 22 48 84 22 2 1 35 20 19 18 5 5 4 2 3 0 0 0 2 1 5
- 1 0 1 4 48 84 36 4 1 3 0 0 14 0 0 10 10 26 48 196 18 19 0 2 26
- 2 0 0 5 4 1 0 4 3 2 1 4 48 196 20 19 1 36 35 3 2 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotedbl" xMin="146" yMin="1086" xMax="689" yMax="1579">
- <contour>
- <pt x="214" y="1086" on="1"/>
- <pt x="146" y="1579" on="1"/>
- <pt x="343" y="1579" on="1"/>
- <pt x="276" y="1086" on="1"/>
- </contour>
- <contour>
- <pt x="559" y="1086" on="1"/>
- <pt x="491" y="1579" on="1"/>
- <pt x="689" y="1579" on="1"/>
- <pt x="621" y="1086" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 22 values pushed */
- 7 4 3 0 4 13 1 6 5 2 1 3 0 14 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotedblbase" xMin="146" yMin="-321" xMax="788" yMax="247">
- <contour>
- <pt x="639" y="0" on="1"/>
- <pt x="541" y="0" on="1"/>
- <pt x="541" y="247" on="1"/>
- <pt x="788" y="247" on="1"/>
- <pt x="788" y="32" on="1"/>
- <pt x="788" y="-107" on="0"/>
- <pt x="771" y="-151" on="1"/>
- <pt x="750" y="-213" on="0"/>
- <pt x="678" y="-270" on="1"/>
- <pt x="618" y="-317" on="0"/>
- <pt x="541" y="-321" on="1"/>
- <pt x="541" y="-259" on="1"/>
- <pt x="639" y="-251" on="0"/>
- <pt x="639" y="-65" on="1"/>
- </contour>
- <contour>
- <pt x="245" y="0" on="1"/>
- <pt x="146" y="0" on="1"/>
- <pt x="146" y="247" on="1"/>
- <pt x="393" y="247" on="1"/>
- <pt x="393" y="32" on="1"/>
- <pt x="393" y="-107" on="0"/>
- <pt x="376" y="-151" on="1"/>
- <pt x="354" y="-216" on="0"/>
- <pt x="283" y="-270" on="1"/>
- <pt x="223" y="-317" on="0"/>
- <pt x="146" y="-321" on="1"/>
- <pt x="146" y="-259" on="1"/>
- <pt x="245" y="-251" on="0"/>
- <pt x="245" y="-65" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 27 25 24 18 15 14 13 11 10 4 1 0 12 13 2 17 16 3 2 3 0 14 13 0 2
- 3 1 3 27 14 2 17 15 3 0 0 18 17 6 1 15 11 10 2 1 6 3 3 2 4
- 48 196 25 24 16 15 3 4 3 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotedblleft" xMin="122" yMin="1012" xMax="764" yMax="1579">
- <contour>
- <pt x="270" y="1258" on="1"/>
- <pt x="369" y="1258" on="1"/>
- <pt x="369" y="1012" on="1"/>
- <pt x="122" y="1012" on="1"/>
- <pt x="122" y="1226" on="1"/>
- <pt x="122" y="1367" on="0"/>
- <pt x="138" y="1410" on="1"/>
- <pt x="160" y="1474" on="0"/>
- <pt x="232" y="1529" on="1"/>
- <pt x="292" y="1575" on="0"/>
- <pt x="369" y="1579" on="1"/>
- <pt x="369" y="1517" on="1"/>
- <pt x="270" y="1509" on="0"/>
- <pt x="270" y="1323" on="1"/>
- </contour>
- <contour>
- <pt x="665" y="1258" on="1"/>
- <pt x="764" y="1258" on="1"/>
- <pt x="764" y="1012" on="1"/>
- <pt x="517" y="1012" on="1"/>
- <pt x="517" y="1226" on="1"/>
- <pt x="517" y="1368" on="0"/>
- <pt x="533" y="1409" on="1"/>
- <pt x="556" y="1476" on="0"/>
- <pt x="627" y="1529" on="1"/>
- <pt x="687" y="1574" on="0"/>
- <pt x="764" y="1579" on="1"/>
- <pt x="764" y="1517" on="1"/>
- <pt x="665" y="1509" on="0"/>
- <pt x="665" y="1323" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 27 25 24 18 15 14 13 11 10 4 1 0 12 13 2 17 16 3 2 3 0 14 27 14 2
- 15 17 3 13 0 2 1 3 3 0 0 18 17 6 1 15 11 10 2 1 6 3 3 2 4
- 48 196 25 24 16 15 3 4 3 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotedblright" xMin="146" yMin="1012" xMax="788" yMax="1579">
- <contour>
- <pt x="639" y="1332" on="1"/>
- <pt x="541" y="1332" on="1"/>
- <pt x="541" y="1579" on="1"/>
- <pt x="788" y="1579" on="1"/>
- <pt x="788" y="1365" on="1"/>
- <pt x="788" y="1226" on="0"/>
- <pt x="771" y="1181" on="1"/>
- <pt x="750" y="1118" on="0"/>
- <pt x="678" y="1062" on="1"/>
- <pt x="618" y="1017" on="0"/>
- <pt x="541" y="1012" on="1"/>
- <pt x="541" y="1073" on="1"/>
- <pt x="639" y="1082" on="0"/>
- <pt x="639" y="1268" on="1"/>
- </contour>
- <contour>
- <pt x="245" y="1332" on="1"/>
- <pt x="146" y="1332" on="1"/>
- <pt x="146" y="1579" on="1"/>
- <pt x="393" y="1579" on="1"/>
- <pt x="393" y="1365" on="1"/>
- <pt x="393" y="1226" on="0"/>
- <pt x="376" y="1181" on="1"/>
- <pt x="353" y="1115" on="0"/>
- <pt x="283" y="1062" on="1"/>
- <pt x="223" y="1017" on="0"/>
- <pt x="146" y="1012" on="1"/>
- <pt x="146" y="1073" on="1"/>
- <pt x="245" y="1082" on="0"/>
- <pt x="245" y="1268" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 27 25 24 18 15 14 13 11 10 4 1 0 12 13 2 17 16 3 2 3 0 14 13 0 2
- 3 1 3 27 14 2 17 15 3 0 0 18 17 6 1 15 11 10 2 1 6 3 3 2 4
- 48 196 25 24 16 15 3 4 3 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quoteleft" xMin="205" yMin="1012" xMax="452" yMax="1579">
- <contour>
- <pt x="353" y="1258" on="1"/>
- <pt x="452" y="1258" on="1"/>
- <pt x="452" y="1012" on="1"/>
- <pt x="205" y="1012" on="1"/>
- <pt x="205" y="1226" on="1"/>
- <pt x="205" y="1367" on="0"/>
- <pt x="221" y="1410" on="1"/>
- <pt x="243" y="1474" on="0"/>
- <pt x="315" y="1529" on="1"/>
- <pt x="375" y="1575" on="0"/>
- <pt x="452" y="1579" on="1"/>
- <pt x="452" y="1517" on="1"/>
- <pt x="353" y="1509" on="0"/>
- <pt x="353" y="1323" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 37 values pushed */
- 13 11 10 4 1 0 6 13 2 3 2 1 0 14 13 0 2 1 3 3 0 0 11 10 2
- 1 6 3 3 1 4 48 196 4 3 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotereversed"/><!-- contains no outline data -->
-
- <TTGlyph name="quoteright" xMin="230" yMin="1012" xMax="477" yMax="1579">
- <contour>
- <pt x="329" y="1332" on="1"/>
- <pt x="230" y="1332" on="1"/>
- <pt x="230" y="1579" on="1"/>
- <pt x="477" y="1579" on="1"/>
- <pt x="477" y="1365" on="1"/>
- <pt x="477" y="1226" on="0"/>
- <pt x="460" y="1181" on="1"/>
- <pt x="437" y="1115" on="0"/>
- <pt x="367" y="1062" on="1"/>
- <pt x="307" y="1017" on="0"/>
- <pt x="230" y="1012" on="1"/>
- <pt x="230" y="1073" on="1"/>
- <pt x="329" y="1082" on="0"/>
- <pt x="329" y="1268" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 37 values pushed */
- 13 11 10 4 1 0 6 13 2 3 2 1 0 14 13 0 2 3 1 3 0 0 4 3 6
- 1 1 1 4 48 196 11 10 2 1 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotesinglbase" xMin="230" yMin="-321" xMax="477" yMax="247">
- <contour>
- <pt x="329" y="0" on="1"/>
- <pt x="230" y="0" on="1"/>
- <pt x="230" y="247" on="1"/>
- <pt x="477" y="247" on="1"/>
- <pt x="477" y="32" on="1"/>
- <pt x="477" y="-107" on="0"/>
- <pt x="460" y="-151" on="1"/>
- <pt x="438" y="-216" on="0"/>
- <pt x="367" y="-270" on="1"/>
- <pt x="307" y="-317" on="0"/>
- <pt x="230" y="-321" on="1"/>
- <pt x="230" y="-259" on="1"/>
- <pt x="329" y="-251" on="0"/>
- <pt x="329" y="-65" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 37 values pushed */
- 13 11 10 4 1 0 6 13 2 3 2 1 0 14 13 0 2 3 1 3 0 0 4 3 6
- 1 1 1 4 48 196 11 10 2 1 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotesingle" xMin="61" yMin="1036" xMax="308" yMax="1579">
- <contour>
- <pt x="154" y="1036" on="1"/>
- <pt x="61" y="1579" on="1"/>
- <pt x="308" y="1579" on="1"/>
- <pt x="215" y="1036" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 12 values pushed */
- 3 0 1 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="r" xMin="31" yMin="0" xMax="670" yMax="1110">
- <contour>
- <pt x="31" y="0" on="1"/>
- <pt x="31" y="62" on="1"/>
- <pt x="50" y="63" on="1"/>
- <pt x="123" y="67" on="0"/>
- <pt x="136" y="89" on="1"/>
- <pt x="149" y="108" on="0"/>
- <pt x="150" y="160" on="1"/>
- <pt x="152" y="259" on="1"/>
- <pt x="152" y="827" on="1"/>
- <pt x="150" y="925" on="1"/>
- <pt x="150" y="993" on="0"/>
- <pt x="125" y="1007" on="1"/>
- <pt x="105" y="1019" on="0"/>
- <pt x="50" y="1023" on="1"/>
- <pt x="31" y="1024" on="1"/>
- <pt x="31" y="1086" on="1"/>
- <pt x="349" y="1086" on="1"/>
- <pt x="349" y="907" on="1"/>
- <pt x="458" y="1110" on="0"/>
- <pt x="609" y="1110" on="1"/>
- <pt x="640" y="1110" on="0"/>
- <pt x="670" y="1099" on="1"/>
- <pt x="670" y="802" on="1"/>
- <pt x="578" y="802" on="1"/>
- <pt x="576" y="820" on="1"/>
- <pt x="575" y="827" on="1"/>
- <pt x="575" y="833" on="0"/>
- <pt x="574" y="845" on="1"/>
- <pt x="574" y="852" on="0"/>
- <pt x="573" y="862" on="1"/>
- <pt x="569" y="939" on="0"/>
- <pt x="517" y="939" on="1"/>
- <pt x="435" y="939" on="0"/>
- <pt x="349" y="814" on="1"/>
- <pt x="349" y="259" on="1"/>
- <pt x="351" y="160" on="1"/>
- <pt x="352" y="91" on="0"/>
- <pt x="376" y="78" on="1"/>
- <pt x="398" y="66" on="0"/>
- <pt x="452" y="63" on="1"/>
- <pt x="470" y="62" on="1"/>
- <pt x="470" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 68 values pushed */
- 0 0 31 13 19 48 84 19 1 40 34 33 23 22 17 14 8 7 1 10 15 0 3 21 15
- 41 0 1 0 16 15 1 14 41 40 23 3 21 16 3 15 14 1 0 4 13 7 0 0 34
- 33 17 16 4 3 7 1 4 48 196 22 21 1 8 7 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="racute" xMin="31" yMin="0" xMax="671" yMax="1604">
- <component glyphName="r" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="80" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="radicalex" xMin="99" yMin="1480" xMax="926" yMax="1604">
- <contour>
- <pt x="99" y="1480" on="1"/>
- <pt x="99" y="1604" on="1"/>
- <pt x="926" y="1604" on="1"/>
- <pt x="926" y="1480" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 12 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="rcaron" xMin="-12" yMin="0" xMax="691" yMax="1604">
- <component glyphName="r" x="-1" y="0" flags="0x4"/>
- <component glyphName="caron" x="-2" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="rcommaaccent" xMin="31" yMin="-432" xMax="670" yMax="1110">
- <component glyphName="r" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="-18" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="registered" xMin="87" yMin="49" xMax="1469" yMax="1431">
- <contour>
- <pt x="779" y="1431" on="1"/>
- <pt x="1063" y="1431" on="0"/>
- <pt x="1266" y="1229" on="1"/>
- <pt x="1469" y="1027" on="0"/>
- <pt x="1469" y="741" on="1"/>
- <pt x="1469" y="452" on="0"/>
- <pt x="1265" y="251" on="1"/>
- <pt x="1062" y="49" on="0"/>
- <pt x="770" y="49" on="1"/>
- <pt x="519" y="49" on="0"/>
- <pt x="331" y="213" on="1"/>
- <pt x="87" y="426" on="0"/>
- <pt x="87" y="740" on="1"/>
- <pt x="87" y="1027" on="0"/>
- <pt x="290" y="1229" on="1"/>
- <pt x="493" y="1431" on="0"/>
- </contour>
- <contour>
- <pt x="778" y="1369" on="1"/>
- <pt x="518" y="1369" on="0"/>
- <pt x="334" y="1185" on="1"/>
- <pt x="149" y="1001" on="0"/>
- <pt x="149" y="740" on="1"/>
- <pt x="149" y="483" on="0"/>
- <pt x="333" y="297" on="1"/>
- <pt x="516" y="111" on="0"/>
- <pt x="773" y="111" on="1"/>
- <pt x="1010" y="111" on="0"/>
- <pt x="1184" y="259" on="1"/>
- <pt x="1407" y="450" on="0"/>
- <pt x="1407" y="742" on="1"/>
- <pt x="1407" y="1002" on="0"/>
- <pt x="1222" y="1185" on="1"/>
- <pt x="1037" y="1369" on="0"/>
- </contour>
- <contour>
- <pt x="692" y="683" on="1"/>
- <pt x="692" y="486" on="1"/>
- <pt x="694" y="432" on="1"/>
- <pt x="695" y="394" on="0"/>
- <pt x="707" y="388" on="1"/>
- <pt x="721" y="382" on="0"/>
- <pt x="759" y="379" on="1"/>
- <pt x="759" y="327" on="1"/>
- <pt x="455" y="327" on="1"/>
- <pt x="455" y="379" on="1"/>
- <pt x="482" y="381" on="1"/>
- <pt x="525" y="385" on="0"/>
- <pt x="526" y="432" on="1"/>
- <pt x="529" y="486" on="1"/>
- <pt x="529" y="982" on="1"/>
- <pt x="526" y="1036" on="1"/>
- <pt x="525" y="1082" on="0"/>
- <pt x="482" y="1087" on="1"/>
- <pt x="455" y="1090" on="1"/>
- <pt x="455" y="1141" on="1"/>
- <pt x="678" y="1141" on="1"/>
- <pt x="729" y="1142" on="1"/>
- <pt x="778" y="1144" on="1"/>
- <pt x="827" y="1145" on="1"/>
- <pt x="927" y="1147" on="0"/>
- <pt x="993" y="1109" on="1"/>
- <pt x="1080" y="1059" on="0"/>
- <pt x="1080" y="937" on="1"/>
- <pt x="1080" y="775" on="0"/>
- <pt x="923" y="706" on="1"/>
- <pt x="1082" y="485" on="1"/>
- <pt x="1126" y="429" on="1"/>
- <pt x="1155" y="391" on="0"/>
- <pt x="1179" y="384" on="1"/>
- <pt x="1179" y="327" on="1"/>
- <pt x="987" y="327" on="1"/>
- <pt x="761" y="683" on="1"/>
- </contour>
- <contour>
- <pt x="692" y="738" on="1"/>
- <pt x="722" y="738" on="1"/>
- <pt x="909" y="738" on="0"/>
- <pt x="909" y="926" on="1"/>
- <pt x="909" y="1087" on="0"/>
- <pt x="753" y="1087" on="1"/>
- <pt x="692" y="1087" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 101 values pushed */
- 0 0 24 11 8 16 11 0 48 84 8 2 0 0 75 74 70 69 68 65 62 61 50 46 45
- 41 38 33 32 15 51 39 3 52 51 1 67 66 40 39 3 2 0 14 0 0 72 18 59 28
- 11 4 20 11 12 48 196 52 32 45 2 74 70 68 67 66 65 62 61 39 38 10 13 59 4
- 32 51 50 41 40 4 13 12 45 0 0 75 69 33 32 26 3 45 1 4 48 196 46 45 1
- 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ring" xMin="114" yMin="1283" xMax="568" yMax="1737">
- <contour>
- <pt x="341" y="1737" on="1"/>
- <pt x="435" y="1737" on="0"/>
- <pt x="501" y="1671" on="1"/>
- <pt x="568" y="1605" on="0"/>
- <pt x="568" y="1511" on="1"/>
- <pt x="568" y="1415" on="0"/>
- <pt x="501" y="1349" on="1"/>
- <pt x="435" y="1283" on="0"/>
- <pt x="339" y="1283" on="1"/>
- <pt x="256" y="1283" on="0"/>
- <pt x="194" y="1337" on="1"/>
- <pt x="114" y="1406" on="0"/>
- <pt x="114" y="1510" on="1"/>
- <pt x="114" y="1605" on="0"/>
- <pt x="180" y="1671" on="1"/>
- <pt x="246" y="1737" on="0"/>
- </contour>
- <contour>
- <pt x="341" y="1669" on="1"/>
- <pt x="275" y="1669" on="0"/>
- <pt x="229" y="1623" on="1"/>
- <pt x="182" y="1576" on="0"/>
- <pt x="182" y="1511" on="1"/>
- <pt x="182" y="1445" on="0"/>
- <pt x="228" y="1398" on="1"/>
- <pt x="275" y="1351" on="0"/>
- <pt x="339" y="1351" on="1"/>
- <pt x="400" y="1351" on="0"/>
- <pt x="444" y="1388" on="1"/>
- <pt x="500" y="1437" on="0"/>
- <pt x="500" y="1511" on="1"/>
- <pt x="500" y="1577" on="0"/>
- <pt x="453" y="1623" on="1"/>
- <pt x="407" y="1669" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 0 0 24 17 8 16 17 0 48 84 8 0 14 0 0 28 17 4 20 17 12 48 196 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="s" xMin="95" yMin="-25" xMax="733" yMax="1110">
- <contour>
- <pt x="95" y="56" on="1"/>
- <pt x="95" y="307" on="1"/>
- <pt x="194" y="307" on="1"/>
- <pt x="195" y="289" on="1"/>
- <pt x="198" y="218" on="1"/>
- <pt x="205" y="43" on="0"/>
- <pt x="374" y="43" on="1"/>
- <pt x="536" y="43" on="0"/>
- <pt x="536" y="232" on="1"/>
- <pt x="536" y="325" on="0"/>
- <pt x="498" y="368" on="1"/>
- <pt x="467" y="405" on="0"/>
- <pt x="390" y="456" on="1"/>
- <pt x="332" y="495" on="1"/>
- <pt x="189" y="591" on="0"/>
- <pt x="145" y="653" on="1"/>
- <pt x="101" y="715" on="0"/>
- <pt x="101" y="819" on="1"/>
- <pt x="101" y="1110" on="0"/>
- <pt x="411" y="1110" on="1"/>
- <pt x="536" y="1110" on="0"/>
- <pt x="656" y="1049" on="1"/>
- <pt x="656" y="814" on="1"/>
- <pt x="558" y="814" on="1"/>
- <pt x="558" y="832" on="1"/>
- <pt x="558" y="1043" on="0"/>
- <pt x="426" y="1043" on="1"/>
- <pt x="286" y="1043" on="0"/>
- <pt x="286" y="881" on="1"/>
- <pt x="286" y="761" on="0"/>
- <pt x="378" y="701" on="1"/>
- <pt x="464" y="645" on="1"/>
- <pt x="520" y="607" on="1"/>
- <pt x="652" y="518" on="0"/>
- <pt x="692" y="458" on="1"/>
- <pt x="733" y="398" on="0"/>
- <pt x="733" y="294" on="1"/>
- <pt x="733" y="141" on="0"/>
- <pt x="644" y="58" on="1"/>
- <pt x="554" y="-25" on="0"/>
- <pt x="395" y="-25" on="1"/>
- <pt x="256" y="-25" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 59 values pushed */
- 0 0 26 17 19 6 17 40 48 84 40 2 19 1 1 1 24 23 22 21 2 1 0 7 1
- 2 3 0 0 14 0 0 28 16 17 8 5 36 48 196 17 24 23 17 2 4 21 0 3 36
- 21 22 21 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="sacute" xMin="95" yMin="-25" xMax="776" yMax="1604">
- <component glyphName="s" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="185" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="scaron" xMin="66" yMin="-25" xMax="769" yMax="1604">
- <component glyphName="s" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="76" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="scedilla" xMin="95" yMin="-432" xMax="733" yMax="1110">
- <component glyphName="s" x="0" y="0" flags="0x4"/>
- <component glyphName="cedilla" x="70" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="scircumflex" xMin="62" yMin="-25" xMax="765" yMax="1604">
- <contour>
- <pt x="94" y="56" on="1"/>
- <pt x="94" y="307" on="1"/>
- <pt x="193" y="307" on="1"/>
- <pt x="194" y="289" on="1"/>
- <pt x="197" y="218" on="1"/>
- <pt x="204" y="43" on="0"/>
- <pt x="373" y="43" on="1"/>
- <pt x="535" y="43" on="0"/>
- <pt x="535" y="231" on="1"/>
- <pt x="535" y="326" on="0"/>
- <pt x="498" y="368" on="1"/>
- <pt x="465" y="405" on="0"/>
- <pt x="389" y="456" on="1"/>
- <pt x="331" y="495" on="1"/>
- <pt x="189" y="591" on="0"/>
- <pt x="144" y="653" on="1"/>
- <pt x="100" y="715" on="0"/>
- <pt x="100" y="819" on="1"/>
- <pt x="100" y="1110" on="0"/>
- <pt x="410" y="1110" on="1"/>
- <pt x="536" y="1110" on="0"/>
- <pt x="655" y="1049" on="1"/>
- <pt x="655" y="814" on="1"/>
- <pt x="557" y="814" on="1"/>
- <pt x="557" y="832" on="1"/>
- <pt x="557" y="1043" on="0"/>
- <pt x="425" y="1043" on="1"/>
- <pt x="285" y="1043" on="0"/>
- <pt x="285" y="881" on="1"/>
- <pt x="285" y="761" on="0"/>
- <pt x="377" y="701" on="1"/>
- <pt x="463" y="645" on="1"/>
- <pt x="519" y="607" on="1"/>
- <pt x="652" y="517" on="0"/>
- <pt x="691" y="458" on="1"/>
- <pt x="732" y="398" on="0"/>
- <pt x="732" y="294" on="1"/>
- <pt x="732" y="141" on="0"/>
- <pt x="643" y="58" on="1"/>
- <pt x="554" y="-25" on="0"/>
- <pt x="394" y="-25" on="1"/>
- <pt x="255" y="-25" on="0"/>
- </contour>
- <contour>
- <pt x="62" y="1283" on="1"/>
- <pt x="303" y="1604" on="1"/>
- <pt x="525" y="1604" on="1"/>
- <pt x="765" y="1283" on="1"/>
- <pt x="679" y="1283" on="1"/>
- <pt x="414" y="1505" on="1"/>
- <pt x="148" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 91 values pushed */
- 0 0 26 17 19 6 17 40 48 84 40 2 19 1 1 47 43 0 2 0 1 1 48 46 45
- 42 4 0 1 3 0 0 1 1 24 23 22 21 2 1 0 7 1 2 3 0 0 44 43 1
- 0 14 0 0 28 16 17 8 5 36 48 196 17 48 47 44 43 24 23 17 2 8 21 0 3
- 46 45 2 13 36 21 42 0 22 21 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="scommaaccent" xMin="95" yMin="-432" xMax="733" yMax="1110">
- <component glyphName="s" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="79" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="section" xMin="75" yMin="-321" xMax="962" yMax="1517">
- <contour>
- <pt x="75" y="-258" on="1"/>
- <pt x="75" y="-37" on="1"/>
- <pt x="174" y="-37" on="1"/>
- <pt x="175" y="-56" on="1"/>
- <pt x="178" y="-104" on="1"/>
- <pt x="182" y="-170" on="0"/>
- <pt x="276" y="-215" on="1"/>
- <pt x="368" y="-260" on="0"/>
- <pt x="498" y="-260" on="1"/>
- <pt x="628" y="-260" on="0"/>
- <pt x="708" y="-192" on="1"/>
- <pt x="788" y="-125" on="0"/>
- <pt x="788" y="-19" on="1"/>
- <pt x="788" y="67" on="0"/>
- <pt x="724" y="113" on="1"/>
- <pt x="671" y="150" on="0"/>
- <pt x="556" y="198" on="1"/>
- <pt x="449" y="243" on="1"/>
- <pt x="249" y="327" on="0"/>
- <pt x="167" y="406" on="1"/>
- <pt x="86" y="485" on="0"/>
- <pt x="86" y="595" on="1"/>
- <pt x="86" y="746" on="0"/>
- <pt x="257" y="889" on="1"/>
- <pt x="182" y="931" on="0"/>
- <pt x="144" y="979" on="1"/>
- <pt x="89" y="1050" on="0"/>
- <pt x="89" y="1150" on="1"/>
- <pt x="89" y="1318" on="0"/>
- <pt x="218" y="1417" on="1"/>
- <pt x="348" y="1517" on="0"/>
- <pt x="570" y="1517" on="1"/>
- <pt x="735" y="1517" on="0"/>
- <pt x="914" y="1461" on="1"/>
- <pt x="914" y="1234" on="1"/>
- <pt x="816" y="1234" on="1"/>
- <pt x="814" y="1252" on="1"/>
- <pt x="812" y="1313" on="1"/>
- <pt x="810" y="1376" on="0"/>
- <pt x="735" y="1416" on="1"/>
- <pt x="661" y="1456" on="0"/>
- <pt x="551" y="1456" on="1"/>
- <pt x="422" y="1456" on="0"/>
- <pt x="342" y="1386" on="1"/>
- <pt x="263" y="1317" on="0"/>
- <pt x="263" y="1206" on="1"/>
- <pt x="263" y="1128" on="0"/>
- <pt x="308" y="1081" on="1"/>
- <pt x="354" y="1031" on="0"/>
- <pt x="468" y="984" on="1"/>
- <pt x="575" y="940" on="1"/>
- <pt x="801" y="847" on="0"/>
- <pt x="873" y="778" on="1"/>
- <pt x="943" y="710" on="0"/>
- <pt x="943" y="589" on="1"/>
- <pt x="943" y="437" on="0"/>
- <pt x="782" y="291" on="1"/>
- <pt x="863" y="244" on="0"/>
- <pt x="903" y="194" on="1"/>
- <pt x="962" y="121" on="0"/>
- <pt x="962" y="23" on="1"/>
- <pt x="962" y="-137" on="0"/>
- <pt x="838" y="-229" on="1"/>
- <pt x="714" y="-321" on="0"/>
- <pt x="490" y="-321" on="1"/>
- <pt x="303" y="-321" on="0"/>
- </contour>
- <contour>
- <pt x="728" y="329" on="1"/>
- <pt x="793" y="422" on="0"/>
- <pt x="793" y="510" on="1"/>
- <pt x="793" y="634" on="0"/>
- <pt x="652" y="697" on="1"/>
- <pt x="443" y="791" on="1"/>
- <pt x="304" y="852" on="1"/>
- <pt x="253" y="759" on="0"/>
- <pt x="253" y="685" on="1"/>
- <pt x="253" y="572" on="0"/>
- <pt x="337" y="514" on="1"/>
- <pt x="410" y="464" on="0"/>
- <pt x="589" y="388" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 70 values pushed */
- 0 0 41 11 31 8 11 64 48 84 31 0 1 72 66 56 35 34 33 23 2 1 0 10 13
- 64 0 0 14 0 0 74 18 21 68 47 54 45 18 27 12 18 60 48 196 27 21 72 66 56
- 35 27 23 21 2 8 33 0 3 60 54 33 34 33 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="semicolon" xMin="161" yMin="-321" xMax="408" yMax="1086">
- <contour>
- <pt x="260" y="0" on="1"/>
- <pt x="161" y="0" on="1"/>
- <pt x="161" y="247" on="1"/>
- <pt x="408" y="247" on="1"/>
- <pt x="408" y="32" on="1"/>
- <pt x="408" y="-107" on="0"/>
- <pt x="391" y="-151" on="1"/>
- <pt x="369" y="-216" on="0"/>
- <pt x="298" y="-270" on="1"/>
- <pt x="238" y="-317" on="0"/>
- <pt x="161" y="-321" on="1"/>
- <pt x="161" y="-259" on="1"/>
- <pt x="260" y="-251" on="0"/>
- <pt x="260" y="-65" on="1"/>
- </contour>
- <contour>
- <pt x="161" y="839" on="1"/>
- <pt x="161" y="1086" on="1"/>
- <pt x="408" y="1086" on="1"/>
- <pt x="408" y="839" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 1 4 2 2 2 0 1 13 11 10 1 0 5 13 2 0 0 0 17 14 6 1 15 1 4
- 48 84 3 2 1 0 16 15 1 14 13 0 2 3 1 3 0 0 17 16 4 3 6 3 1
- 1 4 48 196 15 14 11 10 2 1 5 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="semicolon#1" xMin="161" yMin="-321" xMax="408" yMax="1086">
- <contour>
- <pt x="260" y="0" on="1"/>
- <pt x="161" y="0" on="1"/>
- <pt x="161" y="247" on="1"/>
- <pt x="408" y="247" on="1"/>
- <pt x="408" y="32" on="1"/>
- <pt x="408" y="-107" on="0"/>
- <pt x="391" y="-151" on="1"/>
- <pt x="369" y="-216" on="0"/>
- <pt x="298" y="-270" on="1"/>
- <pt x="238" y="-317" on="0"/>
- <pt x="161" y="-321" on="1"/>
- <pt x="161" y="-259" on="1"/>
- <pt x="260" y="-251" on="0"/>
- <pt x="260" y="-65" on="1"/>
- </contour>
- <contour>
- <pt x="161" y="839" on="1"/>
- <pt x="161" y="1086" on="1"/>
- <pt x="408" y="1086" on="1"/>
- <pt x="408" y="839" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 1 4 2 2 2 0 1 13 11 10 1 0 5 13 2 0 0 0 17 14 6 1 15 1 4
- 48 84 3 2 1 0 16 15 1 14 13 0 2 3 1 3 0 0 17 16 4 3 6 3 1
- 1 4 48 196 15 14 11 10 2 1 5 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="seven" xMin="108" yMin="0" xMax="996" yMax="1480">
- <contour>
- <pt x="182" y="0" on="1"/>
- <pt x="268" y="469" on="0"/>
- <pt x="731" y="1095" on="1"/>
- <pt x="879" y="1295" on="1"/>
- <pt x="108" y="1295" on="1"/>
- <pt x="108" y="1480" on="1"/>
- <pt x="996" y="1480" on="1"/>
- <pt x="996" y="1351" on="1"/>
- <pt x="746" y="1010" on="0"/>
- <pt x="590" y="648" on="1"/>
- <pt x="434" y="285" on="0"/>
- <pt x="416" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 35 values pushed */
- 7 5 3 2 0 0 4 3 28 1 5 1 4 48 84 11 0 1 0 6 5 0 14 11 7
- 6 3 0 5 13 4 5 4 1 0
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="sfthyphen" xMin="82" yMin="543" xMax="600" yMax="666">
- <contour>
- <pt x="82" y="543" on="1"/>
- <pt x="82" y="666" on="1"/>
- <pt x="600" y="666" on="1"/>
- <pt x="600" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 12 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="six" xMin="49" yMin="-37" xMax="987" yMax="1518">
- <contour>
- <pt x="259" y="757" on="1"/>
- <pt x="311" y="843" on="0"/>
- <pt x="370" y="887" on="1"/>
- <pt x="455" y="950" on="0"/>
- <pt x="575" y="950" on="1"/>
- <pt x="755" y="950" on="0"/>
- <pt x="871" y="821" on="1"/>
- <pt x="987" y="692" on="0"/>
- <pt x="987" y="488" on="1"/>
- <pt x="987" y="264" on="0"/>
- <pt x="853" y="114" on="1"/>
- <pt x="720" y="-37" on="0"/>
- <pt x="522" y="-37" on="1"/>
- <pt x="303" y="-37" on="0"/>
- <pt x="176" y="161" on="1"/>
- <pt x="49" y="358" on="0"/>
- <pt x="49" y="700" on="1"/>
- <pt x="49" y="1078" on="0"/>
- <pt x="197" y="1298" on="1"/>
- <pt x="345" y="1518" on="0"/>
- <pt x="608" y="1518" on="1"/>
- <pt x="772" y="1518" on="0"/>
- <pt x="904" y="1452" on="1"/>
- <pt x="904" y="1227" on="1"/>
- <pt x="805" y="1227" on="1"/>
- <pt x="804" y="1248" on="1"/>
- <pt x="799" y="1359" on="0"/>
- <pt x="754" y="1405" on="1"/>
- <pt x="710" y="1450" on="0"/>
- <pt x="611" y="1450" on="1"/>
- <pt x="424" y="1450" on="0"/>
- <pt x="329" y="1212" on="1"/>
- <pt x="262" y="1043" on="0"/>
- </contour>
- <contour>
- <pt x="525" y="880" on="1"/>
- <pt x="413" y="880" on="0"/>
- <pt x="339" y="785" on="1"/>
- <pt x="265" y="691" on="0"/>
- <pt x="265" y="542" on="1"/>
- <pt x="265" y="352" on="0"/>
- <pt x="333" y="210" on="1"/>
- <pt x="419" y="31" on="0"/>
- <pt x="551" y="31" on="1"/>
- <pt x="659" y="31" on="0"/>
- <pt x="722" y="148" on="1"/>
- <pt x="786" y="265" on="0"/>
- <pt x="786" y="463" on="1"/>
- <pt x="786" y="880" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 52 values pushed */
- 0 0 41 17 12 33 17 4 29 17 20 48 84 20 0 12 2 4 1 1 24 23 22 4 0
- 5 0 2 3 0 0 14 0 0 45 5 8 37 10 16 48 196 8 22 24 0 16 22 23 22
- 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="slash" xMin="-30" yMin="-296" xMax="600" yMax="1481">
- <contour>
- <pt x="-30" y="-296" on="1"/>
- <pt x="496" y="1481" on="1"/>
- <pt x="600" y="1481" on="1"/>
- <pt x="74" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 9 values pushed */
- 3 2 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="space"/><!-- contains no outline data -->
-
- <TTGlyph name="sterling" xMin="74" yMin="0" xMax="925" yMax="1505">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="148" on="1"/>
- <pt x="198" y="181" on="0"/>
- <pt x="241" y="263" on="1"/>
- <pt x="284" y="344" on="0"/>
- <pt x="284" y="547" on="1"/>
- <pt x="284" y="740" on="1"/>
- <pt x="111" y="740" on="1"/>
- <pt x="111" y="802" on="1"/>
- <pt x="284" y="802" on="1"/>
- <pt x="284" y="1024" on="1"/>
- <pt x="284" y="1505" on="0"/>
- <pt x="653" y="1505" on="1"/>
- <pt x="786" y="1505" on="0"/>
- <pt x="925" y="1435" on="1"/>
- <pt x="925" y="1221" on="1"/>
- <pt x="827" y="1221" on="1"/>
- <pt x="825" y="1240" on="1"/>
- <pt x="822" y="1314" on="1"/>
- <pt x="817" y="1444" on="0"/>
- <pt x="663" y="1444" on="1"/>
- <pt x="547" y="1444" on="0"/>
- <pt x="511" y="1363" on="1"/>
- <pt x="481" y="1294" on="0"/>
- <pt x="481" y="1138" on="1"/>
- <pt x="481" y="802" on="1"/>
- <pt x="716" y="802" on="1"/>
- <pt x="716" y="740" on="1"/>
- <pt x="481" y="740" on="1"/>
- <pt x="481" y="586" on="1"/>
- <pt x="481" y="306" on="0"/>
- <pt x="199" y="148" on="1"/>
- <pt x="925" y="148" on="1"/>
- <pt x="925" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 98 values pushed */
- 0 0 20 11 12 48 84 12 0 1 24 16 15 14 10 5 0 8 3 0 29 5 2 6 1
- 3 0 0 28 27 7 6 14 3 8 32 31 1 19 2 0 2 4 48 84 26 25 9 8 3
- 33 0 1 2 0 14 27 26 16 3 14 24 3 31 8 7 3 5 0 3 0 0 29 28 25
- 24 4 3 5 1 4 48 196 33 32 15 14 3 10 9 6 5 3 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="t" xMin="25" yMin="-25" xMax="558" yMax="1332">
- <contour>
- <pt x="136" y="999" on="1"/>
- <pt x="25" y="999" on="1"/>
- <pt x="25" y="1086" on="1"/>
- <pt x="136" y="1086" on="1"/>
- <pt x="136" y="1283" on="1"/>
- <pt x="334" y="1332" on="1"/>
- <pt x="334" y="1086" on="1"/>
- <pt x="558" y="1086" on="1"/>
- <pt x="558" y="999" on="1"/>
- <pt x="334" y="999" on="1"/>
- <pt x="334" y="313" on="1"/>
- <pt x="334" y="226" on="1"/>
- <pt x="334" y="55" on="0"/>
- <pt x="438" y="55" on="1"/>
- <pt x="477" y="55" on="0"/>
- <pt x="533" y="86" on="1"/>
- <pt x="533" y="6" on="1"/>
- <pt x="455" y="-25" on="0"/>
- <pt x="389" y="-25" on="1"/>
- <pt x="251" y="-25" on="0"/>
- <pt x="193" y="56" on="1"/>
- <pt x="136" y="137" on="0"/>
- <pt x="136" y="339" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 67 values pushed */
- 18 2 11 16 1 22 16 10 3 0 2 3 0 5 4 2 13 2 0 0 9 8 1 0 3
- 2 1 6 48 84 7 6 3 2 1 3 14 16 11 8 7 2 13 5 2 1 0 0 0 11
- 10 9 6 5 4 4 0 1 4 48 196 22 4 3 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tbar" xMin="25" yMin="-25" xMax="558" yMax="1332">
- <contour>
- <pt x="136" y="617" on="1"/>
- <pt x="25" y="617" on="1"/>
- <pt x="25" y="691" on="1"/>
- <pt x="136" y="691" on="1"/>
- <pt x="136" y="999" on="1"/>
- <pt x="25" y="999" on="1"/>
- <pt x="25" y="1086" on="1"/>
- <pt x="136" y="1086" on="1"/>
- <pt x="136" y="1283" on="1"/>
- <pt x="334" y="1332" on="1"/>
- <pt x="334" y="1086" on="1"/>
- <pt x="558" y="1086" on="1"/>
- <pt x="558" y="999" on="1"/>
- <pt x="334" y="999" on="1"/>
- <pt x="334" y="691" on="1"/>
- <pt x="558" y="691" on="1"/>
- <pt x="558" y="617" on="1"/>
- <pt x="334" y="617" on="1"/>
- <pt x="334" y="313" on="1"/>
- <pt x="334" y="226" on="1"/>
- <pt x="334" y="55" on="0"/>
- <pt x="438" y="55" on="1"/>
- <pt x="477" y="55" on="0"/>
- <pt x="533" y="86" on="1"/>
- <pt x="533" y="6" on="1"/>
- <pt x="455" y="-25" on="0"/>
- <pt x="389" y="-25" on="1"/>
- <pt x="251" y="-25" on="0"/>
- <pt x="193" y="56" on="1"/>
- <pt x="136" y="137" on="0"/>
- <pt x="136" y="339" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 92 values pushed */
- 26 2 19 24 1 30 24 18 3 0 2 3 0 9 8 2 13 6 0 0 13 12 5 4 3
- 6 1 6 17 16 1 0 21 3 2 1 4 48 84 15 14 3 2 3 0 11 10 7 6 1
- 3 14 24 19 16 15 12 11 4 13 9 6 5 2 1 4 13 0 0 0 19 18 17 14 13
- 10 9 4 6 0 1 4 48 196 30 8 7 4 3 0 5 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tcaron" xMin="25" yMin="-25" xMax="679" yMax="1688">
- <contour>
- <pt x="136" y="999" on="1"/>
- <pt x="25" y="999" on="1"/>
- <pt x="25" y="1086" on="1"/>
- <pt x="136" y="1086" on="1"/>
- <pt x="136" y="1283" on="1"/>
- <pt x="334" y="1332" on="1"/>
- <pt x="334" y="1086" on="1"/>
- <pt x="558" y="1086" on="1"/>
- <pt x="558" y="999" on="1"/>
- <pt x="334" y="999" on="1"/>
- <pt x="334" y="313" on="1"/>
- <pt x="334" y="226" on="1"/>
- <pt x="334" y="55" on="0"/>
- <pt x="438" y="55" on="1"/>
- <pt x="477" y="55" on="0"/>
- <pt x="533" y="86" on="1"/>
- <pt x="533" y="6" on="1"/>
- <pt x="455" y="-25" on="0"/>
- <pt x="389" y="-25" on="1"/>
- <pt x="251" y="-25" on="0"/>
- <pt x="193" y="56" on="1"/>
- <pt x="136" y="137" on="0"/>
- <pt x="136" y="339" on="1"/>
- </contour>
- <contour>
- <pt x="561" y="1491" on="1"/>
- <pt x="482" y="1491" on="1"/>
- <pt x="482" y="1688" on="1"/>
- <pt x="679" y="1688" on="1"/>
- <pt x="679" y="1517" on="1"/>
- <pt x="679" y="1354" on="0"/>
- <pt x="617" y="1289" on="1"/>
- <pt x="570" y="1240" on="0"/>
- <pt x="482" y="1234" on="1"/>
- <pt x="482" y="1284" on="1"/>
- <pt x="561" y="1290" on="0"/>
- <pt x="561" y="1439" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 92 values pushed */
- 18 2 11 16 34 32 31 27 24 23 5 4 8 25 2 3 1 22 16 10 3 0 2 3 0
- 0 0 9 8 1 0 3 2 1 6 48 84 26 25 1 0 7 6 3 2 1 3 14 16 11
- 34 23 8 7 4 26 24 3 2 1 0 0 0 32 31 25 24 4 3 26 11 10 9 6 5
- 4 4 0 2 4 48 196 27 26 1 22 4 3 0 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tcommaaccent" xMin="25" yMin="-432" xMax="558" yMax="1332">
- <contour>
- <pt x="136" y="999" on="1"/>
- <pt x="25" y="999" on="1"/>
- <pt x="25" y="1086" on="1"/>
- <pt x="136" y="1086" on="1"/>
- <pt x="136" y="1283" on="1"/>
- <pt x="334" y="1332" on="1"/>
- <pt x="334" y="1086" on="1"/>
- <pt x="558" y="1086" on="1"/>
- <pt x="558" y="999" on="1"/>
- <pt x="334" y="999" on="1"/>
- <pt x="334" y="313" on="1"/>
- <pt x="334" y="226" on="1"/>
- <pt x="334" y="55" on="0"/>
- <pt x="438" y="55" on="1"/>
- <pt x="477" y="55" on="0"/>
- <pt x="533" y="86" on="1"/>
- <pt x="533" y="6" on="1"/>
- <pt x="455" y="-25" on="0"/>
- <pt x="389" y="-25" on="1"/>
- <pt x="251" y="-25" on="0"/>
- <pt x="193" y="56" on="1"/>
- <pt x="136" y="137" on="0"/>
- <pt x="136" y="339" on="1"/>
- </contour>
- <contour>
- <pt x="186" y="-411" on="1"/>
- <pt x="186" y="-343" on="1"/>
- <pt x="248" y="-359" on="0"/>
- <pt x="287" y="-359" on="1"/>
- <pt x="394" y="-359" on="0"/>
- <pt x="394" y="-277" on="1"/>
- <pt x="394" y="-179" on="0"/>
- <pt x="207" y="-175" on="1"/>
- <pt x="302" y="0" on="1"/>
- <pt x="381" y="0" on="1"/>
- <pt x="315" y="-119" on="1"/>
- <pt x="411" y="-127" on="0"/>
- <pt x="460" y="-152" on="1"/>
- <pt x="532" y="-189" on="0"/>
- <pt x="532" y="-266" on="1"/>
- <pt x="532" y="-336" on="0"/>
- <pt x="474" y="-384" on="1"/>
- <pt x="417" y="-432" on="0"/>
- <pt x="330" y="-432" on="1"/>
- <pt x="262" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 104 values pushed */
- 0 0 26 17 41 48 84 18 2 11 16 1 22 16 10 3 0 2 3 0 5 4 2 13 2
- 1 33 32 31 30 24 23 6 13 41 2 0 0 0 9 8 1 0 3 2 1 6 48 84 7
- 6 3 2 1 3 14 0 0 28 48 37 48 196 16 11 33 31 30 24 23 5 5 0 3 32
- 8 7 3 13 37 5 2 1 0 0 0 11 10 9 6 5 4 4 0 1 4 48 196 22 4
- 3 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tcommabelow" xMin="25" yMin="-432" xMax="558" yMax="1332">
- <component glyphName="t" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="-9" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="thorn" xMin="0" yMin="-395" xMax="956" yMax="1579">
- <contour>
- <pt x="0" y="-395" on="1"/>
- <pt x="0" y="-333" on="1"/>
- <pt x="19" y="-332" on="1"/>
- <pt x="92" y="-328" on="0"/>
- <pt x="105" y="-306" on="1"/>
- <pt x="118" y="-286" on="0"/>
- <pt x="119" y="-234" on="1"/>
- <pt x="121" y="-136" on="1"/>
- <pt x="119" y="1426" on="1"/>
- <pt x="119" y="1489" on="0"/>
- <pt x="93" y="1501" on="1"/>
- <pt x="71" y="1513" on="0"/>
- <pt x="19" y="1516" on="1"/>
- <pt x="0" y="1517" on="1"/>
- <pt x="0" y="1579" on="1"/>
- <pt x="318" y="1579" on="1"/>
- <pt x="318" y="907" on="1"/>
- <pt x="376" y="999" on="0"/>
- <pt x="432" y="1044" on="1"/>
- <pt x="512" y="1110" on="0"/>
- <pt x="610" y="1110" on="1"/>
- <pt x="769" y="1110" on="0"/>
- <pt x="863" y="968" on="1"/>
- <pt x="956" y="826" on="0"/>
- <pt x="956" y="575" on="1"/>
- <pt x="956" y="293" on="0"/>
- <pt x="835" y="134" on="1"/>
- <pt x="714" y="-25" on="0"/>
- <pt x="503" y="-25" on="1"/>
- <pt x="429" y="-25" on="0"/>
- <pt x="318" y="0" on="1"/>
- <pt x="318" y="-136" on="1"/>
- <pt x="320" y="-235" on="1"/>
- <pt x="321" y="-304" on="0"/>
- <pt x="345" y="-317" on="1"/>
- <pt x="367" y="-329" on="0"/>
- <pt x="421" y="-332" on="1"/>
- <pt x="439" y="-333" on="1"/>
- <pt x="439" y="-395" on="1"/>
- </contour>
- <contour>
- <pt x="318" y="77" on="1"/>
- <pt x="399" y="54" on="0"/>
- <pt x="449" y="54" on="1"/>
- <pt x="585" y="54" on="0"/>
- <pt x="664" y="181" on="1"/>
- <pt x="743" y="308" on="0"/>
- <pt x="743" y="536" on="1"/>
- <pt x="743" y="983" on="0"/>
- <pt x="542" y="983" on="1"/>
- <pt x="449" y="983" on="0"/>
- <pt x="318" y="837" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 0 0 47 29 20 41 21 28 48 84 28 2 20 1 1 13 14 1 2 0 1 1 49 39 16
- 3 1 2 3 0 0 1 37 31 30 7 1 5 2 0 3 0 15 14 1 38 0 1 2 0
- 14 0 0 45 10 24 48 196 38 37 2 13 24 15 14 13 7 1 0 5 13 15 49 39 31
- 30 16 15 5 0
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="three" xMin="93" yMin="-37" xMax="910" yMax="1517">
- <contour>
- <pt x="93" y="10" on="1"/>
- <pt x="93" y="271" on="1"/>
- <pt x="191" y="271" on="1"/>
- <pt x="192" y="249" on="1"/>
- <pt x="195" y="182" on="1"/>
- <pt x="198" y="113" on="0"/>
- <pt x="261" y="72" on="1"/>
- <pt x="324" y="31" on="0"/>
- <pt x="422" y="31" on="1"/>
- <pt x="550" y="31" on="0"/>
- <pt x="625" y="128" on="1"/>
- <pt x="700" y="226" on="0"/>
- <pt x="700" y="388" on="1"/>
- <pt x="700" y="565" on="0"/>
- <pt x="606" y="662" on="1"/>
- <pt x="512" y="759" on="0"/>
- <pt x="338" y="759" on="1"/>
- <pt x="228" y="759" on="1"/>
- <pt x="228" y="820" on="1"/>
- <pt x="294" y="820" on="1"/>
- <pt x="669" y="820" on="0"/>
- <pt x="669" y="1155" on="1"/>
- <pt x="669" y="1450" on="0"/>
- <pt x="418" y="1450" on="1"/>
- <pt x="334" y="1450" on="0"/>
- <pt x="270" y="1419" on="1"/>
- <pt x="235" y="1402" on="0"/>
- <pt x="222" y="1363" on="1"/>
- <pt x="212" y="1331" on="0"/>
- <pt x="204" y="1249" on="1"/>
- <pt x="202" y="1234" on="1"/>
- <pt x="104" y="1234" on="1"/>
- <pt x="104" y="1460" on="1"/>
- <pt x="271" y="1517" on="0"/>
- <pt x="428" y="1517" on="1"/>
- <pt x="634" y="1517" on="0"/>
- <pt x="750" y="1427" on="1"/>
- <pt x="866" y="1336" on="0"/>
- <pt x="866" y="1176" on="1"/>
- <pt x="866" y="1018" on="0"/>
- <pt x="753" y="914" on="1"/>
- <pt x="686" y="852" on="0"/>
- <pt x="555" y="800" on="1"/>
- <pt x="668" y="769" on="0"/>
- <pt x="726" y="734" on="1"/>
- <pt x="910" y="624" on="0"/>
- <pt x="910" y="404" on="1"/>
- <pt x="910" y="203" on="0"/>
- <pt x="778" y="83" on="1"/>
- <pt x="646" y="-37" on="0"/>
- <pt x="417" y="-37" on="1"/>
- <pt x="254" y="-37" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 64 values pushed */
- 0 0 23 17 34 8 17 50 48 84 50 2 34 0 1 1 42 32 31 30 19 18 17 16 2
- 1 0 11 0 2 3 0 0 14 0 0 21 5 38 12 10 46 48 196 42 30 19 18 17 16
- 2 7 13 46 38 31 32 31 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="threequarters" xMin="173" yMin="-37" xMax="1364" yMax="1517">
- <contour>
- <pt x="173" y="-37" on="1"/>
- <pt x="1261" y="1517" on="1"/>
- <pt x="1347" y="1517" on="1"/>
- <pt x="259" y="-37" on="1"/>
- </contour>
- <contour>
- <pt x="1065" y="0" on="1"/>
- <pt x="1065" y="39" on="1"/>
- <pt x="1075" y="39" on="1"/>
- <pt x="1126" y="39" on="0"/>
- <pt x="1139" y="48" on="1"/>
- <pt x="1153" y="56" on="0"/>
- <pt x="1155" y="88" on="1"/>
- <pt x="1158" y="137" on="1"/>
- <pt x="1158" y="205" on="1"/>
- <pt x="813" y="205" on="1"/>
- <pt x="813" y="271" on="1"/>
- <pt x="1181" y="751" on="1"/>
- <pt x="1271" y="751" on="1"/>
- <pt x="1271" y="294" on="1"/>
- <pt x="1364" y="294" on="1"/>
- <pt x="1364" y="205" on="1"/>
- <pt x="1271" y="205" on="1"/>
- <pt x="1271" y="137" on="1"/>
- <pt x="1274" y="88" on="1"/>
- <pt x="1276" y="52" on="0"/>
- <pt x="1297" y="45" on="1"/>
- <pt x="1313" y="39" on="0"/>
- <pt x="1348" y="39" on="1"/>
- <pt x="1358" y="39" on="1"/>
- <pt x="1358" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="878" y="294" on="1"/>
- <pt x="1158" y="294" on="1"/>
- <pt x="1158" y="658" on="1"/>
- </contour>
- <contour>
- <pt x="173" y="766" on="1"/>
- <pt x="173" y="901" on="1"/>
- <pt x="232" y="901" on="1"/>
- <pt x="232" y="891" on="1"/>
- <pt x="233" y="881" on="1"/>
- <pt x="233" y="872" on="1"/>
- <pt x="234" y="865" on="0"/>
- <pt x="234" y="861" on="1"/>
- <pt x="234" y="858" on="1"/>
- <pt x="234" y="779" on="0"/>
- <pt x="353" y="779" on="1"/>
- <pt x="502" y="779" on="0"/>
- <pt x="502" y="951" on="1"/>
- <pt x="502" y="1133" on="0"/>
- <pt x="297" y="1133" on="1"/>
- <pt x="241" y="1133" on="1"/>
- <pt x="241" y="1172" on="1"/>
- <pt x="279" y="1172" on="1"/>
- <pt x="483" y="1172" on="0"/>
- <pt x="483" y="1334" on="1"/>
- <pt x="483" y="1479" on="0"/>
- <pt x="352" y="1479" on="1"/>
- <pt x="246" y="1479" on="0"/>
- <pt x="242" y="1415" on="1"/>
- <pt x="239" y="1370" on="1"/>
- <pt x="238" y="1362" on="1"/>
- <pt x="178" y="1362" on="1"/>
- <pt x="178" y="1487" on="1"/>
- <pt x="273" y="1517" on="0"/>
- <pt x="371" y="1517" on="1"/>
- <pt x="606" y="1517" on="0"/>
- <pt x="606" y="1344" on="1"/>
- <pt x="606" y="1214" on="0"/>
- <pt x="446" y="1158" on="1"/>
- <pt x="630" y="1110" on="0"/>
- <pt x="630" y="959" on="1"/>
- <pt x="630" y="858" on="0"/>
- <pt x="558" y="800" on="1"/>
- <pt x="486" y="741" on="0"/>
- <pt x="358" y="741" on="1"/>
- <pt x="260" y="741" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 150 values pushed */
- 0 0 53 45 61 42 45 71 48 84 14 17 12 2 27 26 21 11 6 5 6 12 4 3 65
- 59 58 57 49 48 47 46 40 39 37 36 35 34 33 32 31 16 15 2 1 21 13 71 61 17
- 3 0 4 0 0 30 29 18 17 46 3 12 1 4 48 84 20 19 13 12 3 28 4 1 2
- 0 14 0 0 51 44 63 44 44 67 48 196 15 1 2 16 11 3 28 27 26 19 18 2 6
- 13 16 65 59 58 57 49 48 47 46 40 39 37 36 35 34 33 32 29 14 13 6 5 4 3
- 0 24 13 67 63 11 0 0 31 30 12 11 15 3 16 1 4 48 196 21 20 17 16 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="threesuperior" xMin="86" yMin="741" xMax="543" yMax="1517">
- <contour>
- <pt x="86" y="766" on="1"/>
- <pt x="86" y="901" on="1"/>
- <pt x="145" y="901" on="1"/>
- <pt x="145" y="891" on="1"/>
- <pt x="146" y="881" on="1"/>
- <pt x="146" y="872" on="1"/>
- <pt x="147" y="865" on="0"/>
- <pt x="147" y="861" on="1"/>
- <pt x="147" y="858" on="1"/>
- <pt x="147" y="779" on="0"/>
- <pt x="267" y="779" on="1"/>
- <pt x="415" y="779" on="0"/>
- <pt x="415" y="951" on="1"/>
- <pt x="415" y="1133" on="0"/>
- <pt x="210" y="1133" on="1"/>
- <pt x="154" y="1133" on="1"/>
- <pt x="154" y="1172" on="1"/>
- <pt x="192" y="1172" on="1"/>
- <pt x="396" y="1172" on="0"/>
- <pt x="396" y="1334" on="1"/>
- <pt x="396" y="1479" on="0"/>
- <pt x="265" y="1479" on="1"/>
- <pt x="159" y="1479" on="0"/>
- <pt x="155" y="1415" on="1"/>
- <pt x="152" y="1370" on="1"/>
- <pt x="151" y="1362" on="1"/>
- <pt x="91" y="1362" on="1"/>
- <pt x="91" y="1487" on="1"/>
- <pt x="192" y="1517" on="0"/>
- <pt x="284" y="1517" on="1"/>
- <pt x="519" y="1517" on="0"/>
- <pt x="519" y="1344" on="1"/>
- <pt x="519" y="1215" on="0"/>
- <pt x="359" y="1158" on="1"/>
- <pt x="466" y="1130" on="0"/>
- <pt x="508" y="1073" on="1"/>
- <pt x="543" y="1026" on="0"/>
- <pt x="543" y="959" on="1"/>
- <pt x="543" y="858" on="0"/>
- <pt x="471" y="800" on="1"/>
- <pt x="400" y="741" on="0"/>
- <pt x="271" y="741" on="1"/>
- <pt x="173" y="741" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 0 0 21 45 29 10 45 41 48 84 41 33 29 27 26 25 17 16 15 14 8 7 5 4 3
- 2 1 0 14 0 0 19 44 31 12 44 37 48 196 37 33 31 27 26 25 17 16 15 14 8
- 7 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tilde" xMin="8" yMin="1283" xMax="674" yMax="1518">
- <contour>
- <pt x="8" y="1283" on="1"/>
- <pt x="35" y="1423" on="0"/>
- <pt x="104" y="1476" on="1"/>
- <pt x="158" y="1518" on="0"/>
- <pt x="235" y="1518" on="1"/>
- <pt x="300" y="1518" on="0"/>
- <pt x="353" y="1480" on="1"/>
- <pt x="388" y="1455" on="1"/>
- <pt x="440" y="1418" on="0"/>
- <pt x="494" y="1418" on="1"/>
- <pt x="590" y="1418" on="0"/>
- <pt x="612" y="1517" on="1"/>
- <pt x="674" y="1517" on="1"/>
- <pt x="646" y="1378" on="0"/>
- <pt x="578" y="1325" on="1"/>
- <pt x="524" y="1283" on="0"/>
- <pt x="447" y="1283" on="1"/>
- <pt x="384" y="1283" on="0"/>
- <pt x="329" y="1321" on="1"/>
- <pt x="294" y="1345" on="1"/>
- <pt x="239" y="1383" on="0"/>
- <pt x="187" y="1383" on="1"/>
- <pt x="100" y="1383" on="0"/>
- <pt x="70" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 30 values pushed */
- 0 0 21 20 4 9 20 16 48 84 4 0 1 12 11 2 13 0 0 1 23 0 16 0 0
- 14 23 12 11 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="trademark" xMin="140" yMin="728" xMax="1867" yMax="1480">
- <contour>
- <pt x="411" y="1419" on="1"/>
- <pt x="226" y="1419" on="1"/>
- <pt x="226" y="1283" on="1"/>
- <pt x="140" y="1283" on="1"/>
- <pt x="140" y="1480" on="1"/>
- <pt x="819" y="1480" on="1"/>
- <pt x="819" y="1283" on="1"/>
- <pt x="732" y="1283" on="1"/>
- <pt x="732" y="1419" on="1"/>
- <pt x="547" y="1419" on="1"/>
- <pt x="547" y="790" on="1"/>
- <pt x="671" y="790" on="1"/>
- <pt x="671" y="728" on="1"/>
- <pt x="288" y="728" on="1"/>
- <pt x="288" y="790" on="1"/>
- <pt x="411" y="790" on="1"/>
- </contour>
- <contour>
- <pt x="1358" y="795" on="1"/>
- <pt x="1127" y="1413" on="1"/>
- <pt x="1127" y="728" on="1"/>
- <pt x="905" y="728" on="1"/>
- <pt x="905" y="790" on="1"/>
- <pt x="1028" y="790" on="1"/>
- <pt x="1028" y="1419" on="1"/>
- <pt x="893" y="1419" on="1"/>
- <pt x="893" y="1480" on="1"/>
- <pt x="1249" y="1480" on="1"/>
- <pt x="1414" y="1038" on="1"/>
- <pt x="1567" y="1480" on="1"/>
- <pt x="1867" y="1480" on="1"/>
- <pt x="1867" y="1419" on="1"/>
- <pt x="1744" y="1419" on="1"/>
- <pt x="1744" y="790" on="1"/>
- <pt x="1867" y="790" on="1"/>
- <pt x="1867" y="728" on="1"/>
- <pt x="1608" y="728" on="1"/>
- <pt x="1608" y="1413" on="1"/>
- <pt x="1395" y="795" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 133 values pushed */
- 36 35 32 31 26 21 20 17 16 15 14 11 10 7 6 3 2 17 0 12 3 0 0 30 29
- 23 22 9 8 1 0 14 7 4 1 4 48 84 34 33 19 18 13 12 5 0 28 27 25 24
- 5 4 0 5 14 36 27 26 25 16 5 34 17 3 24 23 20 19 4 21 5 3 12 11 8
- 7 4 5 9 3 14 13 2 1 4 0 3 3 33 32 29 28 4 13 30 0 0 35 34 23
- 1 30 22 21 9 1 17 10 9 23 1 0 3 4 48 196 31 30 1 18 17 1 6 5 1
- 15 0 1 4 3 1 5 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="two" xMin="68" yMin="0" xMax="906" yMax="1518">
- <contour>
- <pt x="68" y="0" on="1"/>
- <pt x="68" y="99" on="1"/>
- <pt x="103" y="253" on="0"/>
- <pt x="178" y="354" on="1"/>
- <pt x="246" y="447" on="0"/>
- <pt x="400" y="599" on="1"/>
- <pt x="463" y="662" on="1"/>
- <pt x="605" y="805" on="0"/>
- <pt x="649" y="893" on="1"/>
- <pt x="697" y="989" on="0"/>
- <pt x="697" y="1129" on="1"/>
- <pt x="697" y="1450" on="0"/>
- <pt x="444" y="1450" on="1"/>
- <pt x="346" y="1450" on="0"/>
- <pt x="272" y="1400" on="1"/>
- <pt x="240" y="1379" on="0"/>
- <pt x="230" y="1358" on="1"/>
- <pt x="206" y="1306" on="0"/>
- <pt x="201" y="1182" on="1"/>
- <pt x="200" y="1157" on="1"/>
- <pt x="101" y="1157" on="1"/>
- <pt x="101" y="1427" on="1"/>
- <pt x="290" y="1518" on="0"/>
- <pt x="480" y="1518" on="1"/>
- <pt x="906" y="1518" on="0"/>
- <pt x="906" y="1137" on="1"/>
- <pt x="906" y="999" on="0"/>
- <pt x="841" y="913" on="1"/>
- <pt x="791" y="847" on="0"/>
- <pt x="661" y="729" on="1"/>
- <pt x="561" y="638" on="1"/>
- <pt x="497" y="580" on="1"/>
- <pt x="338" y="437" on="0"/>
- <pt x="286" y="343" on="1"/>
- <pt x="244" y="268" on="0"/>
- <pt x="229" y="173" on="1"/>
- <pt x="900" y="173" on="1"/>
- <pt x="900" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 64 values pushed */
- 0 0 12 17 23 48 84 23 0 1 21 20 19 3 0 35 3 0 1 35 0 2 0 0 36
- 35 13 1 0 1 4 48 84 37 0 1 0 14 0 0 10 10 25 48 196 35 19 2 36 20
- 3 25 36 1 0 20 37 36 1 21 20 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="twosuperior" xMin="86" yMin="759" xMax="556" yMax="1518">
- <contour>
- <pt x="86" y="759" on="1"/>
- <pt x="86" y="809" on="1"/>
- <pt x="127" y="925" on="0"/>
- <pt x="238" y="1026" on="1"/>
- <pt x="279" y="1064" on="1"/>
- <pt x="426" y="1200" on="0"/>
- <pt x="426" y="1322" on="1"/>
- <pt x="426" y="1477" on="0"/>
- <pt x="289" y="1477" on="1"/>
- <pt x="228" y="1477" on="0"/>
- <pt x="163" y="1428" on="1"/>
- <pt x="163" y="1338" on="1"/>
- <pt x="104" y="1338" on="1"/>
- <pt x="104" y="1474" on="1"/>
- <pt x="214" y="1518" on="0"/>
- <pt x="313" y="1518" on="1"/>
- <pt x="422" y="1518" on="0"/>
- <pt x="489" y="1462" on="1"/>
- <pt x="556" y="1406" on="0"/>
- <pt x="556" y="1319" on="1"/>
- <pt x="556" y="1247" on="0"/>
- <pt x="503" y="1185" on="1"/>
- <pt x="473" y="1148" on="0"/>
- <pt x="404" y="1100" on="1"/>
- <pt x="383" y="1086" on="0"/>
- <pt x="370" y="1077" on="1"/>
- <pt x="320" y="1040" on="1"/>
- <pt x="208" y="957" on="0"/>
- <pt x="198" y="864" on="1"/>
- <pt x="554" y="864" on="1"/>
- <pt x="554" y="759" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 52 values pushed */
- 0 0 8 45 15 48 84 1 28 0 2 13 12 11 10 4 13 15 28 0 0 30 0 43 1
- 28 1 4 48 84 29 28 1 0 14 0 0 6 44 19 48 196 30 29 28 19 13 12 11 10
- 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="u" xMin="12" yMin="-25" xMax="993" yMax="1086">
- <contour>
- <pt x="675" y="0" on="1"/>
- <pt x="675" y="179" on="1"/>
- <pt x="611" y="87" on="0"/>
- <pt x="551" y="41" on="1"/>
- <pt x="466" y="-25" on="0"/>
- <pt x="364" y="-25" on="1"/>
- <pt x="240" y="-25" on="0"/>
- <pt x="186" y="53" on="1"/>
- <pt x="133" y="131" on="0"/>
- <pt x="133" y="321" on="1"/>
- <pt x="133" y="827" on="1"/>
- <pt x="131" y="925" on="1"/>
- <pt x="131" y="993" on="0"/>
- <pt x="106" y="1007" on="1"/>
- <pt x="86" y="1019" on="0"/>
- <pt x="31" y="1023" on="1"/>
- <pt x="12" y="1024" on="1"/>
- <pt x="12" y="1086" on="1"/>
- <pt x="331" y="1086" on="1"/>
- <pt x="331" y="352" on="1"/>
- <pt x="333" y="274" on="1"/>
- <pt x="335" y="188" on="0"/>
- <pt x="357" y="150" on="1"/>
- <pt x="383" y="105" on="0"/>
- <pt x="439" y="105" on="1"/>
- <pt x="554" y="105" on="0"/>
- <pt x="675" y="245" on="1"/>
- <pt x="675" y="827" on="1"/>
- <pt x="673" y="925" on="1"/>
- <pt x="672" y="994" on="0"/>
- <pt x="648" y="1007" on="1"/>
- <pt x="627" y="1019" on="0"/>
- <pt x="573" y="1023" on="1"/>
- <pt x="554" y="1024" on="1"/>
- <pt x="554" y="1086" on="1"/>
- <pt x="872" y="1086" on="1"/>
- <pt x="872" y="259" on="1"/>
- <pt x="874" y="160" on="1"/>
- <pt x="874" y="92" on="0"/>
- <pt x="899" y="78" on="1"/>
- <pt x="922" y="66" on="0"/>
- <pt x="974" y="63" on="1"/>
- <pt x="993" y="62" on="1"/>
- <pt x="993" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 0 0 24 29 5 48 84 5 2 42 36 33 27 26 19 16 10 9 1 10 17 0 3 43 0
- 1 0 35 34 18 17 1 3 14 34 33 2 0 18 3 43 42 2 13 35 17 16 9 0 0
- 27 26 1 0 4 3 35 19 18 4 1 9 2 4 48 196 36 35 1 10 9 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="uacute" xMin="12" yMin="-25" xMax="993" yMax="1604">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="196" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ubreve" xMin="12" yMin="-25" xMax="993" yMax="1604">
- <contour>
- <pt x="675" y="0" on="1"/>
- <pt x="675" y="179" on="1"/>
- <pt x="611" y="87" on="0"/>
- <pt x="551" y="41" on="1"/>
- <pt x="466" y="-25" on="0"/>
- <pt x="364" y="-25" on="1"/>
- <pt x="240" y="-25" on="0"/>
- <pt x="186" y="53" on="1"/>
- <pt x="133" y="131" on="0"/>
- <pt x="133" y="321" on="1"/>
- <pt x="133" y="827" on="1"/>
- <pt x="131" y="925" on="1"/>
- <pt x="131" y="993" on="0"/>
- <pt x="106" y="1007" on="1"/>
- <pt x="86" y="1019" on="0"/>
- <pt x="31" y="1023" on="1"/>
- <pt x="12" y="1024" on="1"/>
- <pt x="12" y="1086" on="1"/>
- <pt x="331" y="1086" on="1"/>
- <pt x="331" y="352" on="1"/>
- <pt x="333" y="274" on="1"/>
- <pt x="335" y="188" on="0"/>
- <pt x="357" y="150" on="1"/>
- <pt x="383" y="105" on="0"/>
- <pt x="439" y="105" on="1"/>
- <pt x="554" y="105" on="0"/>
- <pt x="675" y="245" on="1"/>
- <pt x="675" y="827" on="1"/>
- <pt x="673" y="925" on="1"/>
- <pt x="672" y="994" on="0"/>
- <pt x="648" y="1007" on="1"/>
- <pt x="627" y="1019" on="0"/>
- <pt x="573" y="1023" on="1"/>
- <pt x="554" y="1024" on="1"/>
- <pt x="554" y="1086" on="1"/>
- <pt x="872" y="1086" on="1"/>
- <pt x="872" y="259" on="1"/>
- <pt x="874" y="160" on="1"/>
- <pt x="874" y="92" on="0"/>
- <pt x="899" y="78" on="1"/>
- <pt x="922" y="66" on="0"/>
- <pt x="974" y="63" on="1"/>
- <pt x="993" y="62" on="1"/>
- <pt x="993" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="146" y="1604" on="1"/>
- <pt x="211" y="1604" on="1"/>
- <pt x="238" y="1514" on="0"/>
- <pt x="298" y="1472" on="1"/>
- <pt x="366" y="1425" on="0"/>
- <pt x="479" y="1425" on="1"/>
- <pt x="605" y="1425" on="0"/>
- <pt x="675" y="1484" on="1"/>
- <pt x="724" y="1524" on="0"/>
- <pt x="748" y="1604" on="1"/>
- <pt x="812" y="1604" on="1"/>
- <pt x="793" y="1469" on="0"/>
- <pt x="721" y="1388" on="1"/>
- <pt x="626" y="1283" on="0"/>
- <pt x="479" y="1283" on="1"/>
- <pt x="325" y="1283" on="0"/>
- <pt x="230" y="1398" on="1"/>
- <pt x="165" y="1476" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 97 values pushed */
- 0 0 49 20 58 24 29 5 48 84 5 2 42 36 33 27 26 19 16 10 9 1 10 17 0
- 3 54 53 45 44 4 13 58 17 43 0 1 0 35 34 18 17 1 3 14 54 53 2 35 0
- 3 34 33 2 0 18 3 45 44 2 18 9 3 43 42 2 13 35 17 16 9 0 0 27 26
- 1 0 4 3 35 19 18 4 1 9 2 4 48 196 36 35 1 10 9 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ucircumflex" xMin="12" yMin="-25" xMax="993" yMax="1604">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="143" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="udieresis" xMin="12" yMin="-25" xMax="993" yMax="1456">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="162" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ugrave" xMin="12" yMin="-25" xMax="993" yMax="1604">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="78" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="uhungarumlaut" xMin="12" yMin="-25" xMax="993" yMax="1604">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="hungarumlaut" x="249" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="umacron" xMin="12" yMin="-25" xMax="993" yMax="1406">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="macron" x="161" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="underscore" xMin="0" yMin="-123" xMax="1024" yMax="0">
- <contour>
- <pt x="0" y="-123" on="1"/>
- <pt x="0" y="0" on="1"/>
- <pt x="1024" y="0" on="1"/>
- <pt x="1024" y="-123" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 12 1 1 1 4 48 84 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="uogonek" xMin="12" yMin="-370" xMax="993" yMax="1086">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="ogonek" x="419" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="uring" xMin="12" yMin="-25" xMax="993" yMax="1737">
- <contour>
- <pt x="675" y="0" on="1"/>
- <pt x="675" y="179" on="1"/>
- <pt x="611" y="87" on="0"/>
- <pt x="551" y="41" on="1"/>
- <pt x="466" y="-25" on="0"/>
- <pt x="364" y="-25" on="1"/>
- <pt x="240" y="-25" on="0"/>
- <pt x="186" y="53" on="1"/>
- <pt x="133" y="131" on="0"/>
- <pt x="133" y="321" on="1"/>
- <pt x="133" y="827" on="1"/>
- <pt x="131" y="925" on="1"/>
- <pt x="131" y="993" on="0"/>
- <pt x="106" y="1007" on="1"/>
- <pt x="86" y="1019" on="0"/>
- <pt x="31" y="1023" on="1"/>
- <pt x="12" y="1024" on="1"/>
- <pt x="12" y="1086" on="1"/>
- <pt x="331" y="1086" on="1"/>
- <pt x="331" y="352" on="1"/>
- <pt x="333" y="274" on="1"/>
- <pt x="335" y="188" on="0"/>
- <pt x="357" y="150" on="1"/>
- <pt x="383" y="105" on="0"/>
- <pt x="439" y="105" on="1"/>
- <pt x="554" y="105" on="0"/>
- <pt x="675" y="245" on="1"/>
- <pt x="675" y="827" on="1"/>
- <pt x="673" y="925" on="1"/>
- <pt x="672" y="994" on="0"/>
- <pt x="648" y="1007" on="1"/>
- <pt x="627" y="1019" on="0"/>
- <pt x="573" y="1023" on="1"/>
- <pt x="554" y="1024" on="1"/>
- <pt x="554" y="1086" on="1"/>
- <pt x="872" y="1086" on="1"/>
- <pt x="872" y="259" on="1"/>
- <pt x="874" y="160" on="1"/>
- <pt x="874" y="92" on="0"/>
- <pt x="899" y="78" on="1"/>
- <pt x="922" y="66" on="0"/>
- <pt x="974" y="63" on="1"/>
- <pt x="993" y="62" on="1"/>
- <pt x="993" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="491" y="1737" on="1"/>
- <pt x="585" y="1737" on="0"/>
- <pt x="651" y="1671" on="1"/>
- <pt x="718" y="1605" on="0"/>
- <pt x="718" y="1511" on="1"/>
- <pt x="718" y="1415" on="0"/>
- <pt x="651" y="1349" on="1"/>
- <pt x="584" y="1283" on="0"/>
- <pt x="489" y="1283" on="1"/>
- <pt x="405" y="1283" on="0"/>
- <pt x="344" y="1337" on="1"/>
- <pt x="264" y="1407" on="0"/>
- <pt x="264" y="1510" on="1"/>
- <pt x="264" y="1605" on="0"/>
- <pt x="330" y="1671" on="1"/>
- <pt x="396" y="1737" on="0"/>
- </contour>
- <contour>
- <pt x="491" y="1669" on="1"/>
- <pt x="425" y="1669" on="0"/>
- <pt x="378" y="1623" on="1"/>
- <pt x="332" y="1576" on="0"/>
- <pt x="332" y="1511" on="1"/>
- <pt x="332" y="1445" on="0"/>
- <pt x="378" y="1398" on="1"/>
- <pt x="424" y="1351" on="0"/>
- <pt x="489" y="1351" on="1"/>
- <pt x="550" y="1351" on="0"/>
- <pt x="594" y="1388" on="1"/>
- <pt x="650" y="1437" on="0"/>
- <pt x="650" y="1511" on="1"/>
- <pt x="650" y="1577" on="0"/>
- <pt x="603" y="1623" on="1"/>
- <pt x="556" y="1669" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 103 values pushed */
- 0 0 68 17 52 60 17 44 24 29 5 48 84 5 2 42 36 33 27 26 19 16 10 9 1
- 10 17 0 3 52 44 17 43 0 1 0 35 34 18 17 1 3 14 0 0 72 17 48 64 17
- 56 48 196 48 48 35 0 2 34 33 2 0 18 3 56 56 18 9 2 43 42 2 13 35 17
- 16 9 0 0 27 26 1 0 4 3 35 19 18 4 1 9 2 4 48 196 36 35 1 10 9
- 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="utilde" xMin="12" yMin="-25" xMax="993" yMax="1518">
- <contour>
- <pt x="675" y="0" on="1"/>
- <pt x="675" y="179" on="1"/>
- <pt x="611" y="87" on="0"/>
- <pt x="551" y="41" on="1"/>
- <pt x="466" y="-25" on="0"/>
- <pt x="364" y="-25" on="1"/>
- <pt x="240" y="-25" on="0"/>
- <pt x="186" y="53" on="1"/>
- <pt x="133" y="131" on="0"/>
- <pt x="133" y="321" on="1"/>
- <pt x="133" y="827" on="1"/>
- <pt x="131" y="925" on="1"/>
- <pt x="131" y="993" on="0"/>
- <pt x="106" y="1007" on="1"/>
- <pt x="86" y="1019" on="0"/>
- <pt x="31" y="1023" on="1"/>
- <pt x="12" y="1024" on="1"/>
- <pt x="12" y="1086" on="1"/>
- <pt x="331" y="1086" on="1"/>
- <pt x="331" y="352" on="1"/>
- <pt x="333" y="274" on="1"/>
- <pt x="335" y="188" on="0"/>
- <pt x="357" y="150" on="1"/>
- <pt x="383" y="105" on="0"/>
- <pt x="439" y="105" on="1"/>
- <pt x="554" y="105" on="0"/>
- <pt x="675" y="245" on="1"/>
- <pt x="675" y="827" on="1"/>
- <pt x="673" y="925" on="1"/>
- <pt x="672" y="994" on="0"/>
- <pt x="648" y="1007" on="1"/>
- <pt x="627" y="1019" on="0"/>
- <pt x="573" y="1023" on="1"/>
- <pt x="554" y="1024" on="1"/>
- <pt x="554" y="1086" on="1"/>
- <pt x="872" y="1086" on="1"/>
- <pt x="872" y="259" on="1"/>
- <pt x="874" y="160" on="1"/>
- <pt x="874" y="92" on="0"/>
- <pt x="899" y="78" on="1"/>
- <pt x="922" y="66" on="0"/>
- <pt x="974" y="63" on="1"/>
- <pt x="993" y="62" on="1"/>
- <pt x="993" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="158" y="1283" on="1"/>
- <pt x="185" y="1423" on="0"/>
- <pt x="254" y="1476" on="1"/>
- <pt x="308" y="1518" on="0"/>
- <pt x="385" y="1518" on="1"/>
- <pt x="450" y="1518" on="0"/>
- <pt x="503" y="1480" on="1"/>
- <pt x="538" y="1455" on="1"/>
- <pt x="590" y="1418" on="0"/>
- <pt x="644" y="1418" on="1"/>
- <pt x="739" y="1418" on="0"/>
- <pt x="762" y="1517" on="1"/>
- <pt x="824" y="1517" on="1"/>
- <pt x="796" y="1378" on="0"/>
- <pt x="728" y="1325" on="1"/>
- <pt x="674" y="1283" on="0"/>
- <pt x="597" y="1283" on="1"/>
- <pt x="534" y="1283" on="0"/>
- <pt x="479" y="1321" on="1"/>
- <pt x="444" y="1345" on="1"/>
- <pt x="389" y="1383" on="0"/>
- <pt x="337" y="1383" on="1"/>
- <pt x="249" y="1383" on="0"/>
- <pt x="220" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 111 values pushed */
- 0 0 65 20 48 53 20 60 24 29 5 48 84 48 0 5 2 60 1 67 60 44 3 0 17
- 3 0 42 36 33 27 26 19 16 10 9 1 10 17 0 3 1 56 55 2 13 0 0 43 0
- 1 0 35 34 18 17 1 3 14 56 55 2 35 0 3 34 33 2 0 18 3 67 44 2 18
- 9 3 43 42 2 13 35 17 16 9 0 0 27 26 1 0 4 3 35 19 18 4 1 9 2
- 4 48 196 36 35 1 10 9 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="v" xMin="0" yMin="-12" xMax="1024" yMax="1086">
- <contour>
- <pt x="493" y="-12" on="1"/>
- <pt x="156" y="820" on="1"/>
- <pt x="76" y="1019" on="0"/>
- <pt x="18" y="1023" on="1"/>
- <pt x="0" y="1024" on="1"/>
- <pt x="0" y="1086" on="1"/>
- <pt x="438" y="1086" on="1"/>
- <pt x="438" y="1024" on="1"/>
- <pt x="418" y="1024" on="1"/>
- <pt x="389" y="1023" on="1"/>
- <pt x="311" y="1020" on="0"/>
- <pt x="311" y="982" on="1"/>
- <pt x="311" y="964" on="0"/>
- <pt x="341" y="891" on="1"/>
- <pt x="371" y="818" on="1"/>
- <pt x="591" y="272" on="1"/>
- <pt x="795" y="817" on="1"/>
- <pt x="821" y="884" on="1"/>
- <pt x="852" y="964" on="0"/>
- <pt x="852" y="982" on="1"/>
- <pt x="852" y="1024" on="0"/>
- <pt x="758" y="1024" on="1"/>
- <pt x="736" y="1024" on="1"/>
- <pt x="736" y="1086" on="1"/>
- <pt x="1024" y="1086" on="1"/>
- <pt x="1024" y="1024" on="1"/>
- <pt x="1007" y="1023" on="1"/>
- <pt x="946" y="1018" on="0"/>
- <pt x="912" y="931" on="1"/>
- <pt x="867" y="817" on="1"/>
- <pt x="553" y="-12" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 40 values pushed */
- 1 25 22 21 15 8 7 4 7 5 2 3 0 1 30 0 2 0 24 23 6 5 1 3 14
- 30 25 24 23 22 21 19 15 11 8 7 6 5 4 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="w" xMin="0" yMin="-12" xMax="1479" yMax="1086">
- <contour>
- <pt x="382" y="-12" on="1"/>
- <pt x="152" y="827" on="1"/>
- <pt x="118" y="950" on="0"/>
- <pt x="95" y="985" on="1"/>
- <pt x="72" y="1020" on="0"/>
- <pt x="19" y="1023" on="1"/>
- <pt x="0" y="1024" on="1"/>
- <pt x="0" y="1086" on="1"/>
- <pt x="445" y="1086" on="1"/>
- <pt x="445" y="1024" on="1"/>
- <pt x="424" y="1024" on="1"/>
- <pt x="322" y="1024" on="0"/>
- <pt x="322" y="977" on="1"/>
- <pt x="322" y="943" on="0"/>
- <pt x="354" y="827" on="1"/>
- <pt x="493" y="323" on="1"/>
- <pt x="757" y="1080" on="1"/>
- <pt x="823" y="1080" on="1"/>
- <pt x="1098" y="284" on="1"/>
- <pt x="1259" y="827" on="1"/>
- <pt x="1276" y="885" on="1"/>
- <pt x="1295" y="954" on="1"/>
- <pt x="1300" y="971" on="0"/>
- <pt x="1300" y="979" on="1"/>
- <pt x="1300" y="1021" on="0"/>
- <pt x="1224" y="1023" on="1"/>
- <pt x="1195" y="1024" on="1"/>
- <pt x="1173" y="1024" on="1"/>
- <pt x="1173" y="1086" on="1"/>
- <pt x="1479" y="1086" on="1"/>
- <pt x="1478" y="1024" on="1"/>
- <pt x="1456" y="1023" on="1"/>
- <pt x="1386" y="1019" on="0"/>
- <pt x="1352" y="908" on="1"/>
- <pt x="1327" y="827" on="1"/>
- <pt x="1069" y="-12" on="1"/>
- <pt x="1014" y="-12" on="1"/>
- <pt x="727" y="801" on="1"/>
- <pt x="443" y="-12" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 54 values pushed */
- 1 37 30 27 26 18 17 16 15 10 9 6 11 7 2 3 0 1 38 36 35 0 4 13 2
- 0 29 28 8 7 1 3 14 38 37 36 35 30 29 28 27 26 23 18 17 16 15 12 10 9
- 8 7 6 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="wcircumflex" xMin="0" yMin="-12" xMax="1479" yMax="1604">
- <contour>
- <pt x="382" y="-12" on="1"/>
- <pt x="152" y="827" on="1"/>
- <pt x="118" y="950" on="0"/>
- <pt x="95" y="985" on="1"/>
- <pt x="72" y="1020" on="0"/>
- <pt x="19" y="1023" on="1"/>
- <pt x="0" y="1024" on="1"/>
- <pt x="0" y="1086" on="1"/>
- <pt x="445" y="1086" on="1"/>
- <pt x="445" y="1024" on="1"/>
- <pt x="424" y="1024" on="1"/>
- <pt x="322" y="1024" on="0"/>
- <pt x="322" y="977" on="1"/>
- <pt x="322" y="943" on="0"/>
- <pt x="354" y="827" on="1"/>
- <pt x="493" y="323" on="1"/>
- <pt x="757" y="1080" on="1"/>
- <pt x="823" y="1080" on="1"/>
- <pt x="1098" y="284" on="1"/>
- <pt x="1259" y="827" on="1"/>
- <pt x="1276" y="885" on="1"/>
- <pt x="1295" y="954" on="1"/>
- <pt x="1300" y="971" on="0"/>
- <pt x="1300" y="979" on="1"/>
- <pt x="1300" y="1021" on="0"/>
- <pt x="1224" y="1023" on="1"/>
- <pt x="1195" y="1024" on="1"/>
- <pt x="1173" y="1024" on="1"/>
- <pt x="1173" y="1086" on="1"/>
- <pt x="1479" y="1086" on="1"/>
- <pt x="1478" y="1024" on="1"/>
- <pt x="1456" y="1023" on="1"/>
- <pt x="1386" y="1019" on="0"/>
- <pt x="1352" y="908" on="1"/>
- <pt x="1327" y="827" on="1"/>
- <pt x="1069" y="-12" on="1"/>
- <pt x="1014" y="-12" on="1"/>
- <pt x="727" y="801" on="1"/>
- <pt x="443" y="-12" on="1"/>
- </contour>
- <contour>
- <pt x="458" y="1283" on="1"/>
- <pt x="699" y="1604" on="1"/>
- <pt x="921" y="1604" on="1"/>
- <pt x="1161" y="1283" on="1"/>
- <pt x="1075" y="1283" on="1"/>
- <pt x="810" y="1505" on="1"/>
- <pt x="544" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 1 44 40 0 2 0 1 45 43 42 39 4 0 7 3 0 1 37 30 27 26 18 17 16 15
- 10 9 6 11 7 2 3 0 1 38 36 35 0 4 13 2 0 41 40 1 0 29 28 8 7
- 1 3 14 45 44 43 42 41 40 39 38 37 36 35 30 29 28 27 26 23 18 17 16 15 12
- 10 9 8 7 6 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="x" xMin="0" yMin="0" xMax="1024" yMax="1086">
- <contour>
- <pt x="6" y="0" on="1"/>
- <pt x="6" y="62" on="1"/>
- <pt x="22" y="63" on="1"/>
- <pt x="86" y="68" on="0"/>
- <pt x="135" y="138" on="1"/>
- <pt x="218" y="256" on="1"/>
- <pt x="406" y="523" on="1"/>
- <pt x="219" y="824" on="1"/>
- <pt x="127" y="971" on="0"/>
- <pt x="103" y="995" on="1"/>
- <pt x="79" y="1019" on="0"/>
- <pt x="18" y="1023" on="1"/>
- <pt x="0" y="1024" on="1"/>
- <pt x="0" y="1086" on="1"/>
- <pt x="492" y="1086" on="1"/>
- <pt x="492" y="1024" on="1"/>
- <pt x="472" y="1024" on="1"/>
- <pt x="431" y="1022" on="1"/>
- <pt x="363" y="1019" on="0"/>
- <pt x="363" y="989" on="1"/>
- <pt x="363" y="978" on="0"/>
- <pt x="377" y="955" on="1"/>
- <pt x="379" y="951" on="1"/>
- <pt x="386" y="941" on="0"/>
- <pt x="396" y="922" on="1"/>
- <pt x="404" y="909" on="1"/>
- <pt x="420" y="878" on="0"/>
- <pt x="454" y="824" on="1"/>
- <pt x="576" y="627" on="1"/>
- <pt x="693" y="819" on="1"/>
- <pt x="744" y="909" on="1"/>
- <pt x="783" y="978" on="0"/>
- <pt x="783" y="993" on="1"/>
- <pt x="783" y="1022" on="0"/>
- <pt x="729" y="1023" on="1"/>
- <pt x="692" y="1024" on="1"/>
- <pt x="669" y="1024" on="1"/>
- <pt x="669" y="1086" on="1"/>
- <pt x="987" y="1086" on="1"/>
- <pt x="987" y="1024" on="1"/>
- <pt x="967" y="1023" on="1"/>
- <pt x="901" y="1018" on="0"/>
- <pt x="871" y="978" on="1"/>
- <pt x="842" y="943" on="0"/>
- <pt x="768" y="824" on="1"/>
- <pt x="613" y="570" on="1"/>
- <pt x="805" y="258" on="1"/>
- <pt x="879" y="137" on="0"/>
- <pt x="916" y="101" on="1"/>
- <pt x="952" y="67" on="0"/>
- <pt x="1008" y="63" on="1"/>
- <pt x="1024" y="62" on="1"/>
- <pt x="1024" y="0" on="1"/>
- <pt x="530" y="0" on="1"/>
- <pt x="530" y="62" on="1"/>
- <pt x="548" y="62" on="1"/>
- <pt x="594" y="63" on="1"/>
- <pt x="668" y="64" on="0"/>
- <pt x="668" y="91" on="1"/>
- <pt x="668" y="101" on="0"/>
- <pt x="650" y="126" on="1"/>
- <pt x="639" y="142" on="0"/>
- <pt x="620" y="179" on="1"/>
- <pt x="602" y="213" on="0"/>
- <pt x="575" y="257" on="1"/>
- <pt x="441" y="469" on="1"/>
- <pt x="292" y="257" on="1"/>
- <pt x="260" y="212" on="0"/>
- <pt x="247" y="186" on="1"/>
- <pt x="217" y="130" on="1"/>
- <pt x="203" y="104" on="0"/>
- <pt x="203" y="94" on="1"/>
- <pt x="203" y="65" on="0"/>
- <pt x="278" y="63" on="1"/>
- <pt x="316" y="62" on="1"/>
- <pt x="339" y="62" on="1"/>
- <pt x="339" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 63 values pushed */
- 75 74 65 55 54 51 45 39 36 35 29 28 16 15 12 6 1 17 13 0 3 76 53 52 0
- 3 0 38 37 14 13 1 3 14 76 75 74 71 65 58 55 54 53 52 51 45 39 38 37 36
- 35 32 29 28 19 16 15 14 13 12 6 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="y" xMin="0" yMin="-395" xMax="1024" yMax="1086">
- <contour>
- <pt x="487" y="0" on="1"/>
- <pt x="156" y="820" on="1"/>
- <pt x="76" y="1020" on="0"/>
- <pt x="17" y="1023" on="1"/>
- <pt x="0" y="1024" on="1"/>
- <pt x="0" y="1086" on="1"/>
- <pt x="437" y="1086" on="1"/>
- <pt x="437" y="1024" on="1"/>
- <pt x="418" y="1024" on="1"/>
- <pt x="389" y="1023" on="1"/>
- <pt x="310" y="1020" on="0"/>
- <pt x="310" y="982" on="1"/>
- <pt x="310" y="961" on="0"/>
- <pt x="340" y="891" on="1"/>
- <pt x="371" y="818" on="1"/>
- <pt x="591" y="272" on="1"/>
- <pt x="794" y="817" on="1"/>
- <pt x="820" y="884" on="1"/>
- <pt x="851" y="964" on="0"/>
- <pt x="851" y="982" on="1"/>
- <pt x="851" y="1024" on="0"/>
- <pt x="758" y="1024" on="1"/>
- <pt x="736" y="1024" on="1"/>
- <pt x="736" y="1086" on="1"/>
- <pt x="1024" y="1086" on="1"/>
- <pt x="1024" y="1024" on="1"/>
- <pt x="1007" y="1023" on="1"/>
- <pt x="945" y="1019" on="0"/>
- <pt x="911" y="931" on="1"/>
- <pt x="867" y="817" on="1"/>
- <pt x="411" y="-395" on="1"/>
- <pt x="162" y="-395" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 46 values pushed */
- 1 25 22 21 15 8 7 4 7 5 2 3 0 1 0 2 30 2 0 31 30 1 0 24 23
- 6 5 1 3 14 31 30 25 24 23 22 21 19 15 11 8 7 6 5 4 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="yacute" xMin="0" yMin="-395" xMax="1024" yMax="1604">
- <component glyphName="y" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="309" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ycircumflex" xMin="0" yMin="-395" xMax="1024" yMax="1604">
- <contour>
- <pt x="487" y="0" on="1"/>
- <pt x="156" y="820" on="1"/>
- <pt x="76" y="1020" on="0"/>
- <pt x="17" y="1023" on="1"/>
- <pt x="0" y="1024" on="1"/>
- <pt x="0" y="1086" on="1"/>
- <pt x="437" y="1086" on="1"/>
- <pt x="437" y="1024" on="1"/>
- <pt x="418" y="1024" on="1"/>
- <pt x="389" y="1023" on="1"/>
- <pt x="310" y="1020" on="0"/>
- <pt x="310" y="982" on="1"/>
- <pt x="310" y="961" on="0"/>
- <pt x="340" y="891" on="1"/>
- <pt x="371" y="818" on="1"/>
- <pt x="591" y="272" on="1"/>
- <pt x="794" y="817" on="1"/>
- <pt x="820" y="884" on="1"/>
- <pt x="851" y="964" on="0"/>
- <pt x="851" y="982" on="1"/>
- <pt x="851" y="1024" on="0"/>
- <pt x="758" y="1024" on="1"/>
- <pt x="736" y="1024" on="1"/>
- <pt x="736" y="1086" on="1"/>
- <pt x="1024" y="1086" on="1"/>
- <pt x="1024" y="1024" on="1"/>
- <pt x="1007" y="1023" on="1"/>
- <pt x="945" y="1019" on="0"/>
- <pt x="911" y="931" on="1"/>
- <pt x="867" y="817" on="1"/>
- <pt x="411" y="-395" on="1"/>
- <pt x="162" y="-395" on="1"/>
- </contour>
- <contour>
- <pt x="235" y="1283" on="1"/>
- <pt x="476" y="1604" on="1"/>
- <pt x="698" y="1604" on="1"/>
- <pt x="938" y="1283" on="1"/>
- <pt x="852" y="1283" on="1"/>
- <pt x="587" y="1505" on="1"/>
- <pt x="321" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 73 values pushed */
- 1 37 33 0 2 0 1 38 36 35 32 4 0 5 3 0 1 25 22 21 15 8 7 4 7
- 5 2 3 0 1 0 2 30 2 0 34 33 1 31 30 1 2 0 24 23 6 5 1 3 14
- 38 37 36 35 34 33 32 31 30 25 24 23 22 21 19 15 11 8 7 6 5 4 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ydieresis" xMin="0" yMin="-395" xMax="1024" yMax="1456">
- <component glyphName="y" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="250" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="yen" xMin="0" yMin="0" xMax="1024" yMax="1480">
- <contour>
- <pt x="414" y="395" on="1"/>
- <pt x="105" y="395" on="1"/>
- <pt x="105" y="456" on="1"/>
- <pt x="414" y="456" on="1"/>
- <pt x="414" y="666" on="1"/>
- <pt x="105" y="666" on="1"/>
- <pt x="105" y="728" on="1"/>
- <pt x="414" y="728" on="1"/>
- <pt x="219" y="1182" on="1"/>
- <pt x="152" y="1338" on="0"/>
- <pt x="103" y="1378" on="1"/>
- <pt x="62" y="1413" on="0"/>
- <pt x="0" y="1417" on="1"/>
- <pt x="0" y="1480" on="1"/>
- <pt x="502" y="1480" on="1"/>
- <pt x="502" y="1419" on="1"/>
- <pt x="493" y="1419" on="0"/>
- <pt x="478" y="1418" on="1"/>
- <pt x="467" y="1418" on="1"/>
- <pt x="455" y="1418" on="1"/>
- <pt x="376" y="1418" on="0"/>
- <pt x="376" y="1376" on="1"/>
- <pt x="376" y="1349" on="0"/>
- <pt x="399" y="1291" on="1"/>
- <pt x="573" y="854" on="1"/>
- <pt x="768" y="1312" on="1"/>
- <pt x="787" y="1357" on="0"/>
- <pt x="787" y="1385" on="1"/>
- <pt x="787" y="1421" on="0"/>
- <pt x="734" y="1418" on="1"/>
- <pt x="726" y="1418" on="1"/>
- <pt x="720" y="1417" on="1"/>
- <pt x="709" y="1417" on="1"/>
- <pt x="700" y="1417" on="1"/>
- <pt x="683" y="1418" on="0"/>
- <pt x="665" y="1419" on="1"/>
- <pt x="665" y="1480" on="1"/>
- <pt x="1024" y="1480" on="1"/>
- <pt x="1024" y="1417" on="1"/>
- <pt x="933" y="1409" on="0"/>
- <pt x="897" y="1360" on="1"/>
- <pt x="861" y="1314" on="0"/>
- <pt x="804" y="1179" on="1"/>
- <pt x="611" y="728" on="1"/>
- <pt x="920" y="728" on="1"/>
- <pt x="920" y="666" on="1"/>
- <pt x="611" y="666" on="1"/>
- <pt x="611" y="456" on="1"/>
- <pt x="920" y="456" on="1"/>
- <pt x="920" y="395" on="1"/>
- <pt x="611" y="395" on="1"/>
- <pt x="611" y="259" on="1"/>
- <pt x="611" y="202" on="0"/>
- <pt x="619" y="147" on="1"/>
- <pt x="626" y="96" on="0"/>
- <pt x="651" y="82" on="1"/>
- <pt x="673" y="71" on="0"/>
- <pt x="710" y="68" on="1"/>
- <pt x="778" y="63" on="1"/>
- <pt x="796" y="62" on="1"/>
- <pt x="796" y="0" on="1"/>
- <pt x="229" y="0" on="1"/>
- <pt x="229" y="62" on="1"/>
- <pt x="247" y="63" on="1"/>
- <pt x="315" y="68" on="1"/>
- <pt x="390" y="74" on="0"/>
- <pt x="400" y="115" on="1"/>
- <pt x="414" y="175" on="0"/>
- <pt x="414" y="259" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 119 values pushed */
- 68 61 51 60 32 29 38 35 32 29 24 19 18 17 15 12 10 13 6 3 0 0 46 45 5
- 4 14 3 6 48 47 3 2 14 3 0 2 4 48 84 44 43 7 6 3 50 49 1 0 3
- 61 60 1 3 0 37 36 14 13 0 3 14 61 68 60 51 24 19 18 17 15 14 6 43 0
- 3 49 48 45 44 38 37 36 35 8 13 27 43 13 12 6 5 2 1 6 13 21 0 0 0
- 51 50 47 46 43 4 4 0 1 4 48 196 68 7 4 3 0 4 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="z" xMin="62" yMin="0" xMax="846" yMax="1086">
- <contour>
- <pt x="62" y="0" on="1"/>
- <pt x="62" y="62" on="1"/>
- <pt x="590" y="1018" on="1"/>
- <pt x="396" y="1018" on="1"/>
- <pt x="300" y="1017" on="1"/>
- <pt x="218" y="1017" on="0"/>
- <pt x="207" y="991" on="1"/>
- <pt x="197" y="972" on="0"/>
- <pt x="198" y="926" on="1"/>
- <pt x="198" y="913" on="1"/>
- <pt x="198" y="900" on="1"/>
- <pt x="197" y="875" on="0"/>
- <pt x="197" y="869" on="1"/>
- <pt x="195" y="848" on="1"/>
- <pt x="90" y="848" on="1"/>
- <pt x="90" y="1086" on="1"/>
- <pt x="819" y="1086" on="1"/>
- <pt x="819" y="1024" on="1"/>
- <pt x="294" y="74" on="1"/>
- <pt x="536" y="74" on="1"/>
- <pt x="657" y="79" on="1"/>
- <pt x="739" y="80" on="0"/>
- <pt x="740" y="151" on="1"/>
- <pt x="740" y="226" on="1"/>
- <pt x="741" y="250" on="1"/>
- <pt x="846" y="250" on="1"/>
- <pt x="846" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 73 values pushed */
- 17 15 2 2 25 24 23 22 14 13 10 9 8 9 2 18 3 1 18 0 2 0 0 3 2
- 14 1 15 19 18 21 1 0 2 4 48 84 26 0 1 0 16 15 1 14 24 23 22 19 18
- 17 16 13 10 9 8 3 2 13 25 14 3 1 0 14 26 25 1 15 14 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="zacute" xMin="62" yMin="0" xMax="846" yMax="1604">
- <component glyphName="z" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="234" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="zcaron" xMin="62" yMin="0" xMax="846" yMax="1604">
- <component glyphName="z" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="115" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="zdotaccent" xMin="62" yMin="0" xMax="846" yMax="1480">
- <component glyphName="z" x="0" y="0" flags="0x4"/>
- <component glyphName="dotaccent" x="113" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="zero" xMin="56" yMin="-37" xMax="969" yMax="1517">
- <contour>
- <pt x="512" y="1517" on="1"/>
- <pt x="712" y="1517" on="0"/>
- <pt x="840" y="1300" on="1"/>
- <pt x="969" y="1082" on="0"/>
- <pt x="969" y="743" on="1"/>
- <pt x="969" y="397" on="0"/>
- <pt x="841" y="180" on="1"/>
- <pt x="713" y="-37" on="0"/>
- <pt x="506" y="-37" on="1"/>
- <pt x="332" y="-37" on="0"/>
- <pt x="211" y="138" on="1"/>
- <pt x="56" y="363" on="0"/>
- <pt x="56" y="741" on="1"/>
- <pt x="56" y="1083" on="0"/>
- <pt x="184" y="1299" on="1"/>
- <pt x="312" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="512" y="1456" on="1"/>
- <pt x="265" y="1456" on="0"/>
- <pt x="265" y="743" on="1"/>
- <pt x="265" y="25" on="0"/>
- <pt x="519" y="25" on="1"/>
- <pt x="759" y="25" on="0"/>
- <pt x="759" y="755" on="1"/>
- <pt x="759" y="1016" on="0"/>
- <pt x="712" y="1233" on="1"/>
- <pt x="688" y="1343" on="0"/>
- <pt x="623" y="1408" on="1"/>
- <pt x="576" y="1456" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 27 values pushed */
- 0 0 20 11 8 16 11 0 48 84 8 2 0 0 14 0 0 22 10 4 18 10 12 48 196
- 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- </glyf>
-
- <kern>
- <version value="0"/>
- <kernsubtable coverage="1" format="0">
- <pair l="A" r="C" v="-106"/>
- <pair l="A" r="Ccedilla" v="-115"/>
- <pair l="A" r="G" v="-107"/>
- <pair l="A" r="O" v="-96"/>
- <pair l="A" r="Odieresis" v="-96"/>
- <pair l="A" r="Q" v="-95"/>
- <pair l="A" r="T" v="-78"/>
- <pair l="A" r="U" v="-111"/>
- <pair l="A" r="Uacute" v="-111"/>
- <pair l="A" r="Ucircumflex" v="-111"/>
- <pair l="A" r="Udieresis" v="-111"/>
- <pair l="A" r="Ugrave" v="-111"/>
- <pair l="A" r="V" v="-239"/>
- <pair l="A" r="W" v="-172"/>
- <pair l="A" r="Y" v="-143"/>
- <pair l="A" r="a" v="-1"/>
- <pair l="A" r="b" v="7"/>
- <pair l="A" r="c" v="-71"/>
- <pair l="A" r="ccedilla" v="-87"/>
- <pair l="A" r="comma" v="10"/>
- <pair l="A" r="d" v="-32"/>
- <pair l="A" r="e" v="-61"/>
- <pair l="A" r="g" v="-11"/>
- <pair l="A" r="guillemotleft" v="-108"/>
- <pair l="A" r="guilsinglleft" v="-114"/>
- <pair l="A" r="hyphen" v="-61"/>
- <pair l="A" r="o" v="-50"/>
- <pair l="A" r="period" v="10"/>
- <pair l="A" r="q" v="-32"/>
- <pair l="A" r="quotedblright" v="-216"/>
- <pair l="A" r="quoteright" v="-258"/>
- <pair l="A" r="t" v="-24"/>
- <pair l="A" r="u" v="-19"/>
- <pair l="A" r="v" v="-149"/>
- <pair l="A" r="w" v="-112"/>
- <pair l="A" r="y" v="-150"/>
- <pair l="Aacute" r="C" v="-106"/>
- <pair l="Aacute" r="G" v="-107"/>
- <pair l="Aacute" r="O" v="-96"/>
- <pair l="Aacute" r="Q" v="-95"/>
- <pair l="Aacute" r="T" v="-78"/>
- <pair l="Aacute" r="U" v="-111"/>
- <pair l="Aacute" r="V" v="-239"/>
- <pair l="Aacute" r="W" v="-172"/>
- <pair l="Aacute" r="Y" v="-143"/>
- <pair l="Aacute" r="a" v="-1"/>
- <pair l="Aacute" r="b" v="7"/>
- <pair l="Aacute" r="c" v="-71"/>
- <pair l="Aacute" r="comma" v="10"/>
- <pair l="Aacute" r="d" v="-32"/>
- <pair l="Aacute" r="e" v="-61"/>
- <pair l="Aacute" r="g" v="-11"/>
- <pair l="Aacute" r="guillemotleft" v="-108"/>
- <pair l="Aacute" r="guilsinglleft" v="-114"/>
- <pair l="Aacute" r="hyphen" v="-61"/>
- <pair l="Aacute" r="o" v="-50"/>
- <pair l="Aacute" r="period" v="10"/>
- <pair l="Aacute" r="q" v="-32"/>
- <pair l="Aacute" r="quoteright" v="-258"/>
- <pair l="Aacute" r="t" v="-24"/>
- <pair l="Aacute" r="u" v="-19"/>
- <pair l="Aacute" r="v" v="-149"/>
- <pair l="Aacute" r="w" v="-112"/>
- <pair l="Aacute" r="y" v="-150"/>
- <pair l="Acircumflex" r="C" v="-106"/>
- <pair l="Acircumflex" r="G" v="-107"/>
- <pair l="Acircumflex" r="O" v="-96"/>
- <pair l="Acircumflex" r="Q" v="-95"/>
- <pair l="Acircumflex" r="T" v="-78"/>
- <pair l="Acircumflex" r="U" v="-111"/>
- <pair l="Acircumflex" r="V" v="-239"/>
- <pair l="Acircumflex" r="W" v="-172"/>
- <pair l="Acircumflex" r="Y" v="-143"/>
- <pair l="Acircumflex" r="comma" v="10"/>
- <pair l="Acircumflex" r="period" v="10"/>
- <pair l="Adieresis" r="C" v="-106"/>
- <pair l="Adieresis" r="G" v="-107"/>
- <pair l="Adieresis" r="O" v="-96"/>
- <pair l="Adieresis" r="Q" v="-95"/>
- <pair l="Adieresis" r="T" v="-78"/>
- <pair l="Adieresis" r="U" v="-111"/>
- <pair l="Adieresis" r="V" v="-239"/>
- <pair l="Adieresis" r="W" v="-172"/>
- <pair l="Adieresis" r="Y" v="-143"/>
- <pair l="Adieresis" r="a" v="-1"/>
- <pair l="Adieresis" r="b" v="7"/>
- <pair l="Adieresis" r="c" v="-71"/>
- <pair l="Adieresis" r="comma" v="10"/>
- <pair l="Adieresis" r="d" v="-32"/>
- <pair l="Adieresis" r="g" v="-11"/>
- <pair l="Adieresis" r="guillemotleft" v="-108"/>
- <pair l="Adieresis" r="guilsinglleft" v="-114"/>
- <pair l="Adieresis" r="hyphen" v="-61"/>
- <pair l="Adieresis" r="o" v="-50"/>
- <pair l="Adieresis" r="period" v="10"/>
- <pair l="Adieresis" r="q" v="-32"/>
- <pair l="Adieresis" r="quotedblright" v="-216"/>
- <pair l="Adieresis" r="quoteright" v="-258"/>
- <pair l="Adieresis" r="t" v="-24"/>
- <pair l="Adieresis" r="u" v="-19"/>
- <pair l="Adieresis" r="v" v="-149"/>
- <pair l="Adieresis" r="w" v="-112"/>
- <pair l="Adieresis" r="y" v="-150"/>
- <pair l="Agrave" r="C" v="-106"/>
- <pair l="Agrave" r="G" v="-107"/>
- <pair l="Agrave" r="O" v="-96"/>
- <pair l="Agrave" r="Q" v="-95"/>
- <pair l="Agrave" r="T" v="-78"/>
- <pair l="Agrave" r="U" v="-111"/>
- <pair l="Agrave" r="V" v="-239"/>
- <pair l="Agrave" r="W" v="-172"/>
- <pair l="Agrave" r="Y" v="-143"/>
- <pair l="Agrave" r="comma" v="10"/>
- <pair l="Agrave" r="period" v="10"/>
- <pair l="Aring" r="C" v="-106"/>
- <pair l="Aring" r="G" v="-107"/>
- <pair l="Aring" r="O" v="-96"/>
- <pair l="Aring" r="Q" v="-95"/>
- <pair l="Aring" r="T" v="-78"/>
- <pair l="Aring" r="U" v="-111"/>
- <pair l="Aring" r="V" v="-239"/>
- <pair l="Aring" r="W" v="-172"/>
- <pair l="Aring" r="Y" v="-143"/>
- <pair l="Aring" r="a" v="-1"/>
- <pair l="Aring" r="b" v="7"/>
- <pair l="Aring" r="c" v="-71"/>
- <pair l="Aring" r="comma" v="10"/>
- <pair l="Aring" r="d" v="-32"/>
- <pair l="Aring" r="e" v="-61"/>
- <pair l="Aring" r="g" v="-11"/>
- <pair l="Aring" r="guillemotleft" v="-108"/>
- <pair l="Aring" r="guilsinglleft" v="-114"/>
- <pair l="Aring" r="hyphen" v="-61"/>
- <pair l="Aring" r="o" v="-50"/>
- <pair l="Aring" r="period" v="10"/>
- <pair l="Aring" r="q" v="-32"/>
- <pair l="Aring" r="quotedblright" v="-216"/>
- <pair l="Aring" r="quoteright" v="-258"/>
- <pair l="Aring" r="t" v="-24"/>
- <pair l="Aring" r="u" v="-19"/>
- <pair l="Aring" r="v" v="-149"/>
- <pair l="Aring" r="w" v="-112"/>
- <pair l="Aring" r="y" v="-150"/>
- <pair l="Atilde" r="C" v="-106"/>
- <pair l="Atilde" r="G" v="-107"/>
- <pair l="Atilde" r="O" v="-96"/>
- <pair l="Atilde" r="Q" v="-95"/>
- <pair l="Atilde" r="T" v="-78"/>
- <pair l="Atilde" r="U" v="-111"/>
- <pair l="Atilde" r="V" v="-239"/>
- <pair l="Atilde" r="W" v="-172"/>
- <pair l="Atilde" r="Y" v="-143"/>
- <pair l="Atilde" r="comma" v="10"/>
- <pair l="Atilde" r="period" v="10"/>
- <pair l="B" r="A" v="-53"/>
- <pair l="B" r="AE" v="-53"/>
- <pair l="B" r="Aacute" v="-53"/>
- <pair l="B" r="Acircumflex" v="-53"/>
- <pair l="B" r="Adieresis" v="-53"/>
- <pair l="B" r="Aring" v="-53"/>
- <pair l="B" r="Atilde" v="-53"/>
- <pair l="B" r="O" v="-38"/>
- <pair l="B" r="OE" v="-37"/>
- <pair l="B" r="Oacute" v="-38"/>
- <pair l="B" r="Ocircumflex" v="-38"/>
- <pair l="B" r="Odieresis" v="-38"/>
- <pair l="B" r="Ograve" v="-38"/>
- <pair l="B" r="Oslash" v="-32"/>
- <pair l="B" r="V" v="-62"/>
- <pair l="B" r="W" v="-62"/>
- <pair l="B" r="Y" v="-62"/>
- <pair l="C" r="A" v="22"/>
- <pair l="C" r="AE" v="22"/>
- <pair l="C" r="Aacute" v="22"/>
- <pair l="C" r="Adieresis" v="22"/>
- <pair l="C" r="Aring" v="22"/>
- <pair l="C" r="H" v="2"/>
- <pair l="C" r="K" v="-5"/>
- <pair l="C" r="O" v="-62"/>
- <pair l="C" r="Oacute" v="-62"/>
- <pair l="C" r="Odieresis" v="-62"/>
- <pair l="Ccedilla" r="A" v="13"/>
- <pair l="D" r="A" v="-114"/>
- <pair l="D" r="Aacute" v="-114"/>
- <pair l="D" r="Acircumflex" v="-114"/>
- <pair l="D" r="Adieresis" v="-114"/>
- <pair l="D" r="Agrave" v="-114"/>
- <pair l="D" r="Aring" v="-114"/>
- <pair l="D" r="Atilde" v="-114"/>
- <pair l="D" r="J" v="-124"/>
- <pair l="D" r="T" v="-27"/>
- <pair l="D" r="V" v="-97"/>
- <pair l="D" r="W" v="-93"/>
- <pair l="D" r="X" v="-115"/>
- <pair l="D" r="Y" v="-97"/>
- <pair l="F" r="A" v="-167"/>
- <pair l="F" r="Aacute" v="-167"/>
- <pair l="F" r="Acircumflex" v="-167"/>
- <pair l="F" r="Adieresis" v="-167"/>
- <pair l="F" r="Agrave" v="-167"/>
- <pair l="F" r="Aring" v="-167"/>
- <pair l="F" r="Atilde" v="-167"/>
- <pair l="F" r="J" v="-55"/>
- <pair l="F" r="O" v="-57"/>
- <pair l="F" r="Odieresis" v="-57"/>
- <pair l="F" r="a" v="-108"/>
- <pair l="F" r="aacute" v="-108"/>
- <pair l="F" r="adieresis" v="-67"/>
- <pair l="F" r="ae" v="-108"/>
- <pair l="F" r="aring" v="-98"/>
- <pair l="F" r="comma" v="-164"/>
- <pair l="F" r="e" v="-64"/>
- <pair l="F" r="eacute" v="-64"/>
- <pair l="F" r="hyphen" v="-10"/>
- <pair l="F" r="i" v="-68"/>
- <pair l="F" r="j" v="-102"/>
- <pair l="F" r="o" v="-61"/>
- <pair l="F" r="oacute" v="-61"/>
- <pair l="F" r="odieresis" v="-61"/>
- <pair l="F" r="oe" v="-61"/>
- <pair l="F" r="oslash" v="-61"/>
- <pair l="F" r="period" v="-165"/>
- <pair l="F" r="r" v="-91"/>
- <pair l="F" r="u" v="-81"/>
- <pair l="G" r="A" v="-19"/>
- <pair l="G" r="AE" v="-19"/>
- <pair l="G" r="Aacute" v="-19"/>
- <pair l="G" r="Acircumflex" v="-19"/>
- <pair l="G" r="Adieresis" v="-19"/>
- <pair l="G" r="Agrave" v="-19"/>
- <pair l="G" r="Aring" v="-19"/>
- <pair l="G" r="Atilde" v="-19"/>
- <pair l="G" r="T" v="-36"/>
- <pair l="G" r="V" v="-21"/>
- <pair l="G" r="W" v="-21"/>
- <pair l="G" r="Y" v="-21"/>
- <pair l="J" r="A" v="-35"/>
- <pair l="J" r="AE" v="-35"/>
- <pair l="J" r="Adieresis" v="-35"/>
- <pair l="J" r="Aring" v="-35"/>
- <pair l="K" r="C" v="-114"/>
- <pair l="K" r="G" v="-115"/>
- <pair l="K" r="O" v="-104"/>
- <pair l="K" r="OE" v="-97"/>
- <pair l="K" r="Oacute" v="-104"/>
- <pair l="K" r="Odieresis" v="-104"/>
- <pair l="K" r="S" v="10"/>
- <pair l="K" r="T" v="-8"/>
- <pair l="K" r="a" v="-9"/>
- <pair l="K" r="adieresis" v="-9"/>
- <pair l="K" r="ae" v="-9"/>
- <pair l="K" r="aring" v="-9"/>
- <pair l="K" r="e" v="-69"/>
- <pair l="K" r="hyphen" v="-221"/>
- <pair l="K" r="o" v="-58"/>
- <pair l="K" r="oacute" v="-58"/>
- <pair l="K" r="odieresis" v="-58"/>
- <pair l="K" r="u" v="-27"/>
- <pair l="K" r="udieresis" v="-27"/>
- <pair l="K" r="y" v="-168"/>
- <pair l="L" r="A" v="54"/>
- <pair l="L" r="AE" v="54"/>
- <pair l="L" r="Aacute" v="54"/>
- <pair l="L" r="Adieresis" v="54"/>
- <pair l="L" r="Aring" v="54"/>
- <pair l="L" r="C" v="-40"/>
- <pair l="L" r="Ccedilla" v="-46"/>
- <pair l="L" r="G" v="-41"/>
- <pair l="L" r="O" v="-33"/>
- <pair l="L" r="Oacute" v="-33"/>
- <pair l="L" r="Ocircumflex" v="-33"/>
- <pair l="L" r="Odieresis" v="-33"/>
- <pair l="L" r="Ograve" v="-33"/>
- <pair l="L" r="Otilde" v="-33"/>
- <pair l="L" r="S" v="-5"/>
- <pair l="L" r="T" v="-101"/>
- <pair l="L" r="U" v="-65"/>
- <pair l="L" r="Udieresis" v="-65"/>
- <pair l="L" r="V" v="-229"/>
- <pair l="L" r="W" v="-164"/>
- <pair l="L" r="Y" v="-166"/>
- <pair l="L" r="hyphen" v="-63"/>
- <pair l="L" r="quotedblright" v="-298"/>
- <pair l="L" r="quoteright" v="-340"/>
- <pair l="L" r="u" v="-21"/>
- <pair l="L" r="udieresis" v="-21"/>
- <pair l="L" r="y" v="-139"/>
- <pair l="N" r="A" v="-37"/>
- <pair l="N" r="AE" v="-37"/>
- <pair l="N" r="Aacute" v="-37"/>
- <pair l="N" r="Adieresis" v="-37"/>
- <pair l="N" r="Aring" v="-37"/>
- <pair l="N" r="C" v="-50"/>
- <pair l="N" r="Ccedilla" v="-50"/>
- <pair l="N" r="G" v="-53"/>
- <pair l="N" r="O" v="-48"/>
- <pair l="N" r="Oacute" v="-48"/>
- <pair l="N" r="Odieresis" v="-48"/>
- <pair l="N" r="a" v="-69"/>
- <pair l="N" r="aacute" v="-69"/>
- <pair l="N" r="adieresis" v="-49"/>
- <pair l="N" r="ae" v="-69"/>
- <pair l="N" r="aring" v="-69"/>
- <pair l="N" r="comma" v="-37"/>
- <pair l="N" r="e" v="-53"/>
- <pair l="N" r="eacute" v="-53"/>
- <pair l="N" r="o" v="-50"/>
- <pair l="N" r="oacute" v="-50"/>
- <pair l="N" r="odieresis" v="-50"/>
- <pair l="N" r="oslash" v="-43"/>
- <pair l="N" r="period" v="-38"/>
- <pair l="N" r="u" v="-49"/>
- <pair l="N" r="udieresis" v="-49"/>
- <pair l="O" r="A" v="-95"/>
- <pair l="O" r="AE" v="-95"/>
- <pair l="O" r="Aacute" v="-95"/>
- <pair l="O" r="Adieresis" v="-95"/>
- <pair l="O" r="Aring" v="-95"/>
- <pair l="O" r="T" v="-27"/>
- <pair l="O" r="V" v="-89"/>
- <pair l="O" r="W" v="-89"/>
- <pair l="O" r="X" v="-101"/>
- <pair l="O" r="Y" v="-89"/>
- <pair l="Oacute" r="A" v="-95"/>
- <pair l="Oacute" r="T" v="-27"/>
- <pair l="Oacute" r="V" v="-89"/>
- <pair l="Oacute" r="W" v="-89"/>
- <pair l="Oacute" r="Y" v="-89"/>
- <pair l="Ocircumflex" r="T" v="-27"/>
- <pair l="Ocircumflex" r="V" v="-89"/>
- <pair l="Ocircumflex" r="Y" v="-89"/>
- <pair l="Odieresis" r="A" v="-95"/>
- <pair l="Odieresis" r="T" v="-27"/>
- <pair l="Odieresis" r="V" v="-89"/>
- <pair l="Odieresis" r="W" v="-89"/>
- <pair l="Odieresis" r="X" v="-101"/>
- <pair l="Odieresis" r="Y" v="-89"/>
- <pair l="Ograve" r="T" v="-27"/>
- <pair l="Ograve" r="V" v="-89"/>
- <pair l="Ograve" r="Y" v="-89"/>
- <pair l="Oslash" r="A" v="-96"/>
- <pair l="Otilde" r="T" v="-27"/>
- <pair l="Otilde" r="V" v="-89"/>
- <pair l="Otilde" r="Y" v="-89"/>
- <pair l="P" r="A" v="-174"/>
- <pair l="P" r="AE" v="-174"/>
- <pair l="P" r="Aacute" v="-174"/>
- <pair l="P" r="Adieresis" v="-174"/>
- <pair l="P" r="Aring" v="-174"/>
- <pair l="P" r="J" v="-86"/>
- <pair l="P" r="a" v="-26"/>
- <pair l="P" r="aacute" v="-26"/>
- <pair l="P" r="adieresis" v="-26"/>
- <pair l="P" r="ae" v="-26"/>
- <pair l="P" r="aring" v="-26"/>
- <pair l="P" r="comma" v="-208"/>
- <pair l="P" r="e" v="-33"/>
- <pair l="P" r="eacute" v="-33"/>
- <pair l="P" r="hyphen" v="-46"/>
- <pair l="P" r="o" v="-30"/>
- <pair l="P" r="oacute" v="-30"/>
- <pair l="P" r="odieresis" v="-30"/>
- <pair l="P" r="oe" v="-32"/>
- <pair l="P" r="oslash" v="-30"/>
- <pair l="P" r="period" v="-209"/>
- <pair l="R" r="C" v="-99"/>
- <pair l="R" r="Ccedilla" v="-99"/>
- <pair l="R" r="G" v="-102"/>
- <pair l="R" r="O" v="-96"/>
- <pair l="R" r="OE" v="-94"/>
- <pair l="R" r="Oacute" v="-96"/>
- <pair l="R" r="Odieresis" v="-96"/>
- <pair l="R" r="T" v="-70"/>
- <pair l="R" r="U" v="-116"/>
- <pair l="R" r="Udieresis" v="-116"/>
- <pair l="R" r="V" v="-108"/>
- <pair l="R" r="W" v="-108"/>
- <pair l="R" r="Y" v="-108"/>
- <pair l="R" r="a" v="-6"/>
- <pair l="R" r="aacute" v="-6"/>
- <pair l="R" r="adieresis" v="-6"/>
- <pair l="R" r="ae" v="-6"/>
- <pair l="R" r="aring" v="-6"/>
- <pair l="R" r="e" v="-66"/>
- <pair l="R" r="eacute" v="-66"/>
- <pair l="R" r="hyphen" v="-128"/>
- <pair l="R" r="o" v="-56"/>
- <pair l="R" r="oacute" v="-56"/>
- <pair l="R" r="odieresis" v="-56"/>
- <pair l="R" r="oe" v="-58"/>
- <pair l="R" r="u" v="-25"/>
- <pair l="R" r="uacute" v="-25"/>
- <pair l="R" r="udieresis" v="-25"/>
- <pair l="R" r="y" v="-62"/>
- <pair l="S" r="A" v="-43"/>
- <pair l="S" r="AE" v="-43"/>
- <pair l="S" r="Aacute" v="-43"/>
- <pair l="S" r="Adieresis" v="-43"/>
- <pair l="S" r="Aring" v="-43"/>
- <pair l="S" r="T" v="-26"/>
- <pair l="S" r="V" v="-10"/>
- <pair l="S" r="W" v="-10"/>
- <pair l="S" r="Y" v="-10"/>
- <pair l="S" r="t" v="-40"/>
- <pair l="T" r="A" v="-77"/>
- <pair l="T" r="AE" v="-77"/>
- <pair l="T" r="Aacute" v="-77"/>
- <pair l="T" r="Acircumflex" v="-77"/>
- <pair l="T" r="Adieresis" v="-77"/>
- <pair l="T" r="Agrave" v="-77"/>
- <pair l="T" r="Aring" v="-77"/>
- <pair l="T" r="Atilde" v="-77"/>
- <pair l="T" r="C" v="-28"/>
- <pair l="T" r="G" v="-31"/>
- <pair l="T" r="J" v="-30"/>
- <pair l="T" r="O" v="-27"/>
- <pair l="T" r="OE" v="-24"/>
- <pair l="T" r="Oacute" v="-27"/>
- <pair l="T" r="Ocircumflex" v="-27"/>
- <pair l="T" r="Odieresis" v="-27"/>
- <pair l="T" r="Ograve" v="-27"/>
- <pair l="T" r="Oslash" v="-27"/>
- <pair l="T" r="Otilde" v="-27"/>
- <pair l="T" r="S" v="-4"/>
- <pair l="T" r="V" v="63"/>
- <pair l="T" r="W" v="63"/>
- <pair l="T" r="Y" v="63"/>
- <pair l="T" r="a" v="-155"/>
- <pair l="T" r="ae" v="-155"/>
- <pair l="T" r="c" v="-198"/>
- <pair l="T" r="colon" v="-157"/>
- <pair l="T" r="comma" v="-143"/>
- <pair l="T" r="e" v="-192"/>
- <pair l="T" r="g" v="-166"/>
- <pair l="T" r="guillemotleft" v="-218"/>
- <pair l="T" r="guilsinglleft" v="-224"/>
- <pair l="T" r="hyphen" v="-155"/>
- <pair l="T" r="i" v="-42"/>
- <pair l="T" r="j" v="-77"/>
- <pair l="T" r="o" v="-189"/>
- <pair l="T" r="oslash" v="-129"/>
- <pair l="T" r="period" v="-143"/>
- <pair l="T" r="r" v="-101"/>
- <pair l="T" r="s" v="-133"/>
- <pair l="T" r="semicolon" v="-157"/>
- <pair l="T" r="u" v="-174"/>
- <pair l="T" r="v" v="-190"/>
- <pair l="T" r="w" v="-190"/>
- <pair l="T" r="y" v="-190"/>
- <pair l="U" r="A" v="-106"/>
- <pair l="U" r="AE" v="-106"/>
- <pair l="U" r="Aacute" v="-106"/>
- <pair l="U" r="Acircumflex" v="-106"/>
- <pair l="U" r="Adieresis" v="-106"/>
- <pair l="U" r="Aring" v="-106"/>
- <pair l="U" r="Atilde" v="-106"/>
- <pair l="U" r="comma" v="-66"/>
- <pair l="U" r="m" v="-54"/>
- <pair l="U" r="n" v="-54"/>
- <pair l="U" r="p" v="-35"/>
- <pair l="U" r="period" v="-61"/>
- <pair l="U" r="r" v="-51"/>
- <pair l="Uacute" r="A" v="-106"/>
- <pair l="Uacute" r="comma" v="-66"/>
- <pair l="Uacute" r="m" v="-54"/>
- <pair l="Uacute" r="n" v="-54"/>
- <pair l="Uacute" r="p" v="-35"/>
- <pair l="Uacute" r="period" v="-61"/>
- <pair l="Uacute" r="r" v="-51"/>
- <pair l="Ucircumflex" r="A" v="-106"/>
- <pair l="Udieresis" r="A" v="-106"/>
- <pair l="Udieresis" r="b" v="38"/>
- <pair l="Udieresis" r="comma" v="-66"/>
- <pair l="Udieresis" r="m" v="-54"/>
- <pair l="Udieresis" r="n" v="-54"/>
- <pair l="Udieresis" r="p" v="-35"/>
- <pair l="Udieresis" r="period" v="-61"/>
- <pair l="Udieresis" r="r" v="-51"/>
- <pair l="Ugrave" r="A" v="-106"/>
- <pair l="V" r="A" v="-229"/>
- <pair l="V" r="AE" v="-248"/>
- <pair l="V" r="Aacute" v="-229"/>
- <pair l="V" r="Acircumflex" v="-229"/>
- <pair l="V" r="Adieresis" v="-229"/>
- <pair l="V" r="Agrave" v="-229"/>
- <pair l="V" r="Aring" v="-229"/>
- <pair l="V" r="Atilde" v="-229"/>
- <pair l="V" r="C" v="-93"/>
- <pair l="V" r="G" v="-96"/>
- <pair l="V" r="O" v="-92"/>
- <pair l="V" r="Oacute" v="-92"/>
- <pair l="V" r="Ocircumflex" v="-92"/>
- <pair l="V" r="Odieresis" v="-92"/>
- <pair l="V" r="Ograve" v="-92"/>
- <pair l="V" r="Oslash" v="-89"/>
- <pair l="V" r="Otilde" v="-92"/>
- <pair l="V" r="S" v="-43"/>
- <pair l="V" r="T" v="61"/>
- <pair l="V" r="a" v="-140"/>
- <pair l="V" r="ae" v="-140"/>
- <pair l="V" r="colon" v="-125"/>
- <pair l="V" r="comma" v="-215"/>
- <pair l="V" r="e" v="-156"/>
- <pair l="V" r="g" v="-149"/>
- <pair l="V" r="guillemotleft" v="-184"/>
- <pair l="V" r="guilsinglleft" v="-190"/>
- <pair l="V" r="hyphen" v="-113"/>
- <pair l="V" r="i" v="-28"/>
- <pair l="V" r="o" v="-153"/>
- <pair l="V" r="oslash" v="-153"/>
- <pair l="V" r="period" v="-214"/>
- <pair l="V" r="r" v="-65"/>
- <pair l="V" r="semicolon" v="-121"/>
- <pair l="V" r="u" v="-59"/>
- <pair l="V" r="y" v="-53"/>
- <pair l="W" r="A" v="-200"/>
- <pair l="W" r="AE" v="-200"/>
- <pair l="W" r="Aacute" v="-200"/>
- <pair l="W" r="Acircumflex" v="-200"/>
- <pair l="W" r="Adieresis" v="-200"/>
- <pair l="W" r="Agrave" v="-200"/>
- <pair l="W" r="Aring" v="-200"/>
- <pair l="W" r="Atilde" v="-200"/>
- <pair l="W" r="C" v="-93"/>
- <pair l="W" r="G" v="-97"/>
- <pair l="W" r="O" v="-92"/>
- <pair l="W" r="Oacute" v="-92"/>
- <pair l="W" r="Ocircumflex" v="-92"/>
- <pair l="W" r="Odieresis" v="-92"/>
- <pair l="W" r="Ograve" v="-92"/>
- <pair l="W" r="Oslash" v="-89"/>
- <pair l="W" r="Otilde" v="-92"/>
- <pair l="W" r="S" v="-44"/>
- <pair l="W" r="T" v="61"/>
- <pair l="W" r="a" v="-137"/>
- <pair l="W" r="ae" v="-137"/>
- <pair l="W" r="colon" v="-124"/>
- <pair l="W" r="comma" v="-175"/>
- <pair l="W" r="e" v="-141"/>
- <pair l="W" r="g" v="-143"/>
- <pair l="W" r="guillemotleft" v="-160"/>
- <pair l="W" r="guilsinglleft" v="-166"/>
- <pair l="W" r="hyphen" v="-91"/>
- <pair l="W" r="i" v="-28"/>
- <pair l="W" r="o" v="-137"/>
- <pair l="W" r="oslash" v="-131"/>
- <pair l="W" r="period" v="-174"/>
- <pair l="W" r="r" v="-65"/>
- <pair l="W" r="semicolon" v="-121"/>
- <pair l="W" r="u" v="-59"/>
- <pair l="W" r="y" v="-53"/>
- <pair l="X" r="C" v="-111"/>
- <pair l="X" r="O" v="-102"/>
- <pair l="X" r="Odieresis" v="-102"/>
- <pair l="X" r="Q" v="-101"/>
- <pair l="X" r="a" v="-7"/>
- <pair l="X" r="e" v="-67"/>
- <pair l="X" r="hyphen" v="-138"/>
- <pair l="X" r="o" v="-57"/>
- <pair l="X" r="u" v="-25"/>
- <pair l="X" r="y" v="-138"/>
- <pair l="Y" r="A" v="-150"/>
- <pair l="Y" r="AE" v="-150"/>
- <pair l="Y" r="Aacute" v="-150"/>
- <pair l="Y" r="Acircumflex" v="-150"/>
- <pair l="Y" r="Adieresis" v="-150"/>
- <pair l="Y" r="Agrave" v="-150"/>
- <pair l="Y" r="Aring" v="-150"/>
- <pair l="Y" r="Atilde" v="-150"/>
- <pair l="Y" r="C" v="-92"/>
- <pair l="Y" r="G" v="-96"/>
- <pair l="Y" r="O" v="-92"/>
- <pair l="Y" r="Oacute" v="-92"/>
- <pair l="Y" r="Ocircumflex" v="-92"/>
- <pair l="Y" r="Odieresis" v="-92"/>
- <pair l="Y" r="Ograve" v="-92"/>
- <pair l="Y" r="Oslash" v="-89"/>
- <pair l="Y" r="Otilde" v="-92"/>
- <pair l="Y" r="S" v="-43"/>
- <pair l="Y" r="T" v="61"/>
- <pair l="Y" r="a" v="-202"/>
- <pair l="Y" r="ae" v="-202"/>
- <pair l="Y" r="colon" v="-181"/>
- <pair l="Y" r="comma" v="-217"/>
- <pair l="Y" r="e" v="-224"/>
- <pair l="Y" r="g" v="-218"/>
- <pair l="Y" r="guillemotleft" v="-279"/>
- <pair l="Y" r="guilsinglleft" v="-285"/>
- <pair l="Y" r="hyphen" v="-211"/>
- <pair l="Y" r="i" v="-28"/>
- <pair l="Y" r="o" v="-220"/>
- <pair l="Y" r="oslash" v="-203"/>
- <pair l="Y" r="p" v="-102"/>
- <pair l="Y" r="period" v="-217"/>
- <pair l="Y" r="semicolon" v="-174"/>
- <pair l="Y" r="u" v="-115"/>
- <pair l="Y" r="v" v="-109"/>
- <pair l="Z" r="v" v="-96"/>
- <pair l="Z" r="y" v="-96"/>
- <pair l="a" r="j" v="-73"/>
- <pair l="a" r="quoteright" v="-84"/>
- <pair l="a" r="v" v="-28"/>
- <pair l="a" r="w" v="-28"/>
- <pair l="a" r="y" v="-28"/>
- <pair l="aacute" r="v" v="-28"/>
- <pair l="aacute" r="w" v="-28"/>
- <pair l="aacute" r="y" v="-28"/>
- <pair l="adieresis" r="v" v="-28"/>
- <pair l="adieresis" r="w" v="-28"/>
- <pair l="adieresis" r="y" v="-28"/>
- <pair l="ae" r="v" v="-20"/>
- <pair l="ae" r="w" v="-20"/>
- <pair l="ae" r="y" v="-20"/>
- <pair l="agrave" r="v" v="-28"/>
- <pair l="agrave" r="w" v="-28"/>
- <pair l="agrave" r="y" v="-28"/>
- <pair l="aring" r="v" v="-28"/>
- <pair l="aring" r="w" v="-28"/>
- <pair l="aring" r="y" v="-28"/>
- <pair l="b" r="v" v="-36"/>
- <pair l="b" r="w" v="-36"/>
- <pair l="b" r="y" v="-36"/>
- <pair l="c" r="h" v="11"/>
- <pair l="c" r="k" v="14"/>
- <pair l="comma" r="one" v="-51"/>
- <pair l="comma" r="quotedblright" v="-84"/>
- <pair l="comma" r="quoteright" v="-126"/>
- <pair l="e" r="quoteright" v="-65"/>
- <pair l="e" r="t" v="-26"/>
- <pair l="e" r="v" v="-21"/>
- <pair l="e" r="w" v="-21"/>
- <pair l="e" r="x" v="27"/>
- <pair l="e" r="y" v="-21"/>
- <pair l="eacute" r="v" v="-21"/>
- <pair l="eacute" r="w" v="-21"/>
- <pair l="eacute" r="y" v="-21"/>
- <pair l="ecircumflex" r="v" v="-21"/>
- <pair l="ecircumflex" r="w" v="-21"/>
- <pair l="ecircumflex" r="y" v="-21"/>
- <pair l="eight" r="four" v="41"/>
- <pair l="eight" r="one" v="-48"/>
- <pair l="eight" r="seven" v="-34"/>
- <pair l="f" r="a" v="-60"/>
- <pair l="f" r="aacute" v="-60"/>
- <pair l="f" r="adieresis" v="-16"/>
- <pair l="f" r="ae" v="-60"/>
- <pair l="f" r="aring" v="-45"/>
- <pair l="f" r="e" v="-90"/>
- <pair l="f" r="eacute" v="-77"/>
- <pair l="f" r="f" v="0"/>
- <pair l="f" r="i" v="-5"/>
- <pair l="f" r="j" v="-52"/>
- <pair l="f" r="l" v="55"/>
- <pair l="f" r="o" v="-87"/>
- <pair l="f" r="oacute" v="-87"/>
- <pair l="f" r="odieresis" v="-35"/>
- <pair l="f" r="oe" v="-89"/>
- <pair l="f" r="oslash" v="-52"/>
- <pair l="f" r="quoteright" v="-26"/>
- <pair l="f" r="s" v="-51"/>
- <pair l="f" r="t" v="11"/>
- <pair l="five" r="four" v="7"/>
- <pair l="five" r="one" v="-60"/>
- <pair l="five" r="seven" v="-49"/>
- <pair l="four" r="four" v="41"/>
- <pair l="four" r="one" v="-16"/>
- <pair l="four" r="seven" v="-43"/>
- <pair l="g" r="a" v="-53"/>
- <pair l="g" r="adieresis" v="-53"/>
- <pair l="g" r="ae" v="-53"/>
- <pair l="g" r="aring" v="-53"/>
- <pair l="g" r="e" v="-77"/>
- <pair l="g" r="eacute" v="-77"/>
- <pair l="g" r="l" v="-11"/>
- <pair l="g" r="oacute" v="-73"/>
- <pair l="g" r="odieresis" v="-73"/>
- <pair l="g" r="r" v="22"/>
- <pair l="guillemotright" r="A" v="-105"/>
- <pair l="guillemotright" r="AE" v="-136"/>
- <pair l="guillemotright" r="Aacute" v="-105"/>
- <pair l="guillemotright" r="Adieresis" v="-105"/>
- <pair l="guillemotright" r="Aring" v="-105"/>
- <pair l="guillemotright" r="T" v="-218"/>
- <pair l="guillemotright" r="V" v="-195"/>
- <pair l="guillemotright" r="W" v="-141"/>
- <pair l="guillemotright" r="Y" v="-271"/>
- <pair l="guilsinglright" r="A" v="-110"/>
- <pair l="guilsinglright" r="AE" v="-141"/>
- <pair l="guilsinglright" r="Aacute" v="-110"/>
- <pair l="guilsinglright" r="Adieresis" v="-110"/>
- <pair l="guilsinglright" r="Aring" v="-110"/>
- <pair l="guilsinglright" r="T" v="-223"/>
- <pair l="guilsinglright" r="V" v="-200"/>
- <pair l="guilsinglright" r="W" v="-146"/>
- <pair l="guilsinglright" r="Y" v="-276"/>
- <pair l="h" r="quoteright" v="-80"/>
- <pair l="h" r="y" v="-23"/>
- <pair l="hyphen" r="A" v="-58"/>
- <pair l="hyphen" r="AE" v="-96"/>
- <pair l="hyphen" r="Aacute" v="-58"/>
- <pair l="hyphen" r="Adieresis" v="-58"/>
- <pair l="hyphen" r="Aring" v="-58"/>
- <pair l="hyphen" r="T" v="-154"/>
- <pair l="hyphen" r="V" v="-122"/>
- <pair l="hyphen" r="W" v="-71"/>
- <pair l="hyphen" r="Y" v="-202"/>
- <pair l="i" r="T" v="-35"/>
- <pair l="i" r="j" v="-86"/>
- <pair l="k" r="a" v="-9"/>
- <pair l="k" r="aacute" v="-9"/>
- <pair l="k" r="adieresis" v="-9"/>
- <pair l="k" r="ae" v="-9"/>
- <pair l="k" r="aring" v="-9"/>
- <pair l="k" r="comma" v="2"/>
- <pair l="k" r="e" v="-69"/>
- <pair l="k" r="eacute" v="-69"/>
- <pair l="k" r="g" v="-19"/>
- <pair l="k" r="hyphen" v="-134"/>
- <pair l="k" r="o" v="-58"/>
- <pair l="k" r="oacute" v="-58"/>
- <pair l="k" r="odieresis" v="-58"/>
- <pair l="k" r="period" v="2"/>
- <pair l="k" r="s" v="12"/>
- <pair l="k" r="u" v="15"/>
- <pair l="k" r="udieresis" v="15"/>
- <pair l="l" r="v" v="-29"/>
- <pair l="l" r="y" v="-29"/>
- <pair l="m" r="p" v="-6"/>
- <pair l="m" r="v" v="-25"/>
- <pair l="m" r="w" v="-25"/>
- <pair l="m" r="y" v="-25"/>
- <pair l="n" r="T" v="-89"/>
- <pair l="n" r="p" v="-3"/>
- <pair l="n" r="quoteright" v="-80"/>
- <pair l="n" r="v" v="-23"/>
- <pair l="n" r="w" v="-23"/>
- <pair l="n" r="y" v="-23"/>
- <pair l="nine" r="four" v="30"/>
- <pair l="nine" r="one" v="-67"/>
- <pair l="nine" r="seven" v="-50"/>
- <pair l="o" r="T" v="-190"/>
- <pair l="o" r="quoteright" v="-88"/>
- <pair l="o" r="t" v="-18"/>
- <pair l="o" r="v" v="-54"/>
- <pair l="o" r="w" v="-54"/>
- <pair l="o" r="x" v="-54"/>
- <pair l="o" r="y" v="-54"/>
- <pair l="oacute" r="v" v="-54"/>
- <pair l="oacute" r="w" v="-54"/>
- <pair l="oacute" r="y" v="-54"/>
- <pair l="ocircumflex" r="t" v="-18"/>
- <pair l="odieresis" r="t" v="-18"/>
- <pair l="odieresis" r="v" v="-54"/>
- <pair l="odieresis" r="w" v="-54"/>
- <pair l="odieresis" r="x" v="-54"/>
- <pair l="odieresis" r="y" v="-54"/>
- <pair l="ograve" r="v" v="-54"/>
- <pair l="ograve" r="w" v="-54"/>
- <pair l="ograve" r="y" v="-54"/>
- <pair l="one" r="comma" v="-52"/>
- <pair l="one" r="eight" v="-72"/>
- <pair l="one" r="five" v="-50"/>
- <pair l="one" r="four" v="-139"/>
- <pair l="one" r="nine" v="-46"/>
- <pair l="one" r="one" v="-50"/>
- <pair l="one" r="period" v="-52"/>
- <pair l="one" r="seven" v="-78"/>
- <pair l="one" r="six" v="-109"/>
- <pair l="one" r="three" v="-32"/>
- <pair l="one" r="two" v="-20"/>
- <pair l="one" r="zero" v="-112"/>
- <pair l="p" r="t" v="-17"/>
- <pair l="p" r="y" v="-36"/>
- <pair l="period" r="one" v="-51"/>
- <pair l="period" r="quotedblright" v="-86"/>
- <pair l="period" r="quoteright" v="-128"/>
- <pair l="q" r="c" v="-20"/>
- <pair l="q" r="u" v="-6"/>
- <pair l="quotedblbase" r="A" v="18"/>
- <pair l="quotedblbase" r="AE" v="18"/>
- <pair l="quotedblbase" r="T" v="-137"/>
- <pair l="quotedblbase" r="V" v="-223"/>
- <pair l="quotedblbase" r="W" v="-143"/>
- <pair l="quotedblbase" r="Y" v="-202"/>
- <pair l="quotedblleft" r="A" v="-217"/>
- <pair l="quotedblleft" r="AE" v="-306"/>
- <pair l="quotedblleft" r="Aacute" v="-217"/>
- <pair l="quotedblleft" r="Adieresis" v="-217"/>
- <pair l="quotedblleft" r="Aring" v="-217"/>
- <pair l="quotedblleft" r="T" v="-9"/>
- <pair l="quotedblleft" r="V" v="-10"/>
- <pair l="quotedblleft" r="W" v="-10"/>
- <pair l="quotedblleft" r="Y" v="-10"/>
- <pair l="quotedblright" r="A" v="-210"/>
- <pair l="quotedblright" r="AE" v="-303"/>
- <pair l="quotedblright" r="Aacute" v="-210"/>
- <pair l="quotedblright" r="Adieresis" v="-210"/>
- <pair l="quotedblright" r="Aring" v="-210"/>
- <pair l="quotedblright" r="T" v="2"/>
- <pair l="quotedblright" r="V" v="18"/>
- <pair l="quotedblright" r="W" v="18"/>
- <pair l="quotedblright" r="Y" v="18"/>
- <pair l="quoteleft" r="A" v="-258"/>
- <pair l="quoteleft" r="AE" v="-347"/>
- <pair l="quoteleft" r="Aacute" v="-258"/>
- <pair l="quoteleft" r="Adieresis" v="-258"/>
- <pair l="quoteleft" r="Aring" v="-258"/>
- <pair l="quoteleft" r="T" v="-51"/>
- <pair l="quoteleft" r="V" v="-52"/>
- <pair l="quoteleft" r="W" v="-52"/>
- <pair l="quoteleft" r="Y" v="-52"/>
- <pair l="quoteright" r="A" v="-251"/>
- <pair l="quoteright" r="AE" v="-344"/>
- <pair l="quoteright" r="Aacute" v="-251"/>
- <pair l="quoteright" r="Adieresis" v="-251"/>
- <pair l="quoteright" r="Aring" v="-251"/>
- <pair l="quoteright" r="comma" v="-136"/>
- <pair l="quoteright" r="d" v="-101"/>
- <pair l="quoteright" r="o" v="-96"/>
- <pair l="quoteright" r="period" v="-138"/>
- <pair l="quoteright" r="r" v="-64"/>
- <pair l="quoteright" r="s" v="-79"/>
- <pair l="quoteright" r="t" v="-61"/>
- <pair l="quoteright" r="v" v="-50"/>
- <pair l="quoteright" r="w" v="-50"/>
- <pair l="quoteright" r="y" v="-50"/>
- <pair l="r" r="a" v="-23"/>
- <pair l="r" r="aacute" v="-23"/>
- <pair l="r" r="acircumflex" v="-23"/>
- <pair l="r" r="adieresis" v="-23"/>
- <pair l="r" r="ae" v="-23"/>
- <pair l="r" r="agrave" v="-23"/>
- <pair l="r" r="aring" v="-23"/>
- <pair l="r" r="c" v="2"/>
- <pair l="r" r="ccedilla" v="6"/>
- <pair l="r" r="colon" v="-16"/>
- <pair l="r" r="comma" v="-97"/>
- <pair l="r" r="d" v="3"/>
- <pair l="r" r="e" v="4"/>
- <pair l="r" r="eacute" v="4"/>
- <pair l="r" r="ecircumflex" v="4"/>
- <pair l="r" r="egrave" v="4"/>
- <pair l="r" r="f" v="36"/>
- <pair l="r" r="g" v="-2"/>
- <pair l="r" r="h" v="-24"/>
- <pair l="r" r="hyphen" v="-87"/>
- <pair l="r" r="i" v="31"/>
- <pair l="r" r="j" v="-15"/>
- <pair l="r" r="k" v="-21"/>
- <pair l="r" r="l" v="-41"/>
- <pair l="r" r="m" v="36"/>
- <pair l="r" r="n" v="36"/>
- <pair l="r" r="o" v="7"/>
- <pair l="r" r="oacute" v="7"/>
- <pair l="r" r="ocircumflex" v="7"/>
- <pair l="r" r="odieresis" v="7"/>
- <pair l="r" r="oe" v="6"/>
- <pair l="r" r="ograve" v="7"/>
- <pair l="r" r="oslash" v="7"/>
- <pair l="r" r="p" v="54"/>
- <pair l="r" r="period" v="-97"/>
- <pair l="r" r="q" v="3"/>
- <pair l="r" r="quoteright" v="-18"/>
- <pair l="r" r="r" v="39"/>
- <pair l="r" r="s" v="4"/>
- <pair l="r" r="semicolon" v="-16"/>
- <pair l="r" r="t" v="42"/>
- <pair l="r" r="u" v="48"/>
- <pair l="r" r="v" v="54"/>
- <pair l="r" r="w" v="54"/>
- <pair l="r" r="x" v="54"/>
- <pair l="r" r="y" v="54"/>
- <pair l="r" r="z" v="9"/>
- <pair l="s" r="quoteright" v="-97"/>
- <pair l="s" r="t" v="-22"/>
- <pair l="seven" r="colon" v="-111"/>
- <pair l="seven" r="comma" v="-205"/>
- <pair l="seven" r="eight" v="-13"/>
- <pair l="seven" r="five" v="-13"/>
- <pair l="seven" r="four" v="-174"/>
- <pair l="seven" r="one" v="0"/>
- <pair l="seven" r="period" v="-206"/>
- <pair l="seven" r="seven" v="10"/>
- <pair l="seven" r="six" v="-45"/>
- <pair l="seven" r="three" v="12"/>
- <pair l="seven" r="two" v="13"/>
- <pair l="six" r="four" v="47"/>
- <pair l="six" r="one" v="-46"/>
- <pair l="six" r="seven" v="-35"/>
- <pair l="t" r="S" v="-2"/>
- <pair l="t" r="a" v="-18"/>
- <pair l="t" r="aacute" v="-18"/>
- <pair l="t" r="adieresis" v="-18"/>
- <pair l="t" r="ae" v="-18"/>
- <pair l="t" r="aring" v="-18"/>
- <pair l="t" r="colon" v="-16"/>
- <pair l="t" r="e" v="-52"/>
- <pair l="t" r="eacute" v="-52"/>
- <pair l="t" r="h" v="24"/>
- <pair l="t" r="o" v="-49"/>
- <pair l="t" r="oacute" v="-49"/>
- <pair l="t" r="odieresis" v="-49"/>
- <pair l="t" r="quoteright" v="-50"/>
- <pair l="t" r="semicolon" v="-16"/>
- <pair l="three" r="four" v="9"/>
- <pair l="three" r="one" v="-74"/>
- <pair l="three" r="seven" v="-60"/>
- <pair l="two" r="four" v="-114"/>
- <pair l="two" r="one" v="-48"/>
- <pair l="two" r="seven" v="-42"/>
- <pair l="u" r="quoteright" v="-80"/>
- <pair l="v" r="a" v="-18"/>
- <pair l="v" r="aacute" v="-18"/>
- <pair l="v" r="acircumflex" v="-18"/>
- <pair l="v" r="adieresis" v="-18"/>
- <pair l="v" r="ae" v="-18"/>
- <pair l="v" r="agrave" v="-18"/>
- <pair l="v" r="aring" v="-18"/>
- <pair l="v" r="atilde" v="-18"/>
- <pair l="v" r="c" v="-67"/>
- <pair l="v" r="colon" v="-11"/>
- <pair l="v" r="comma" v="-142"/>
- <pair l="v" r="e" v="-55"/>
- <pair l="v" r="eacute" v="-55"/>
- <pair l="v" r="ecircumflex" v="-55"/>
- <pair l="v" r="egrave" v="-55"/>
- <pair l="v" r="g" v="-36"/>
- <pair l="v" r="hyphen" v="-40"/>
- <pair l="v" r="l" v="-36"/>
- <pair l="v" r="o" v="-53"/>
- <pair l="v" r="oacute" v="-53"/>
- <pair l="v" r="odieresis" v="-53"/>
- <pair l="v" r="ograve" v="-53"/>
- <pair l="v" r="oslash" v="-53"/>
- <pair l="v" r="period" v="-143"/>
- <pair l="v" r="s" v="-16"/>
- <pair l="v" r="semicolon" v="-11"/>
- <pair l="w" r="a" v="-19"/>
- <pair l="w" r="aacute" v="-19"/>
- <pair l="w" r="acircumflex" v="-19"/>
- <pair l="w" r="adieresis" v="-19"/>
- <pair l="w" r="ae" v="-19"/>
- <pair l="w" r="agrave" v="-19"/>
- <pair l="w" r="aring" v="-19"/>
- <pair l="w" r="atilde" v="-19"/>
- <pair l="w" r="c" v="-68"/>
- <pair l="w" r="colon" v="-12"/>
- <pair l="w" r="comma" v="-120"/>
- <pair l="w" r="e" v="-56"/>
- <pair l="w" r="eacute" v="-56"/>
- <pair l="w" r="ecircumflex" v="-56"/>
- <pair l="w" r="egrave" v="-56"/>
- <pair l="w" r="g" v="-37"/>
- <pair l="w" r="hyphen" v="-32"/>
- <pair l="w" r="l" v="-37"/>
- <pair l="w" r="o" v="-54"/>
- <pair l="w" r="oacute" v="-54"/>
- <pair l="w" r="odieresis" v="-54"/>
- <pair l="w" r="ograve" v="-54"/>
- <pair l="w" r="oslash" v="-54"/>
- <pair l="w" r="period" v="-121"/>
- <pair l="w" r="s" v="-17"/>
- <pair l="w" r="semicolon" v="-12"/>
- <pair l="x" r="a" v="-9"/>
- <pair l="x" r="c" v="-77"/>
- <pair l="x" r="e" v="-69"/>
- <pair l="x" r="eacute" v="-69"/>
- <pair l="x" r="o" v="-59"/>
- <pair l="x" r="q" v="-40"/>
- <pair l="y" r="a" v="-18"/>
- <pair l="y" r="aacute" v="-18"/>
- <pair l="y" r="acircumflex" v="-18"/>
- <pair l="y" r="adieresis" v="-18"/>
- <pair l="y" r="ae" v="-18"/>
- <pair l="y" r="agrave" v="-18"/>
- <pair l="y" r="aring" v="-18"/>
- <pair l="y" r="atilde" v="-18"/>
- <pair l="y" r="c" v="-67"/>
- <pair l="y" r="colon" v="-11"/>
- <pair l="y" r="comma" v="-142"/>
- <pair l="y" r="e" v="-55"/>
- <pair l="y" r="eacute" v="-55"/>
- <pair l="y" r="ecircumflex" v="-55"/>
- <pair l="y" r="egrave" v="-55"/>
- <pair l="y" r="g" v="-36"/>
- <pair l="y" r="hyphen" v="-39"/>
- <pair l="y" r="l" v="-36"/>
- <pair l="y" r="o" v="-53"/>
- <pair l="y" r="oacute" v="-53"/>
- <pair l="y" r="odieresis" v="-53"/>
- <pair l="y" r="ograve" v="-53"/>
- <pair l="y" r="oslash" v="-53"/>
- <pair l="y" r="period" v="-142"/>
- <pair l="y" r="s" v="-16"/>
- <pair l="y" r="semicolon" v="-11"/>
- <pair l="zero" r="four" v="30"/>
- <pair l="zero" r="one" v="-78"/>
- <pair l="zero" r="seven" v="-60"/>
- </kernsubtable>
- </kern>
-
- <name>
- <namerecord nameID="0" platformID="1" platEncID="0" langID="0x0">
- Copyright (c) 2001 by Bigelow &amp; Holmes Inc. Instructions copyright (c) 2001 by URW++.
- </namerecord>
- <namerecord nameID="1" platformID="1" platEncID="0" langID="0x0">
- Luxi Serif
- </namerecord>
- <namerecord nameID="2" platformID="1" platEncID="0" langID="0x0">
- Regular
- </namerecord>
- <namerecord nameID="3" platformID="1" platEncID="0" langID="0x0">
- Luxi Serif Regular: B&amp;H
- </namerecord>
- <namerecord nameID="4" platformID="1" platEncID="0" langID="0x0">
- Luxi Serif Regular
- </namerecord>
- <namerecord nameID="5" platformID="1" platEncID="0" langID="0x0">
- 1.2 : October 12, 2001
- </namerecord>
- <namerecord nameID="6" platformID="1" platEncID="0" langID="0x0">
- LuxiSerif
- </namerecord>
- <namerecord nameID="7" platformID="1" platEncID="0" langID="0x0">
- Luxi is a registered trademark of Bigelow &amp; Holmes Inc.
- </namerecord>
- <namerecord nameID="8" platformID="1" platEncID="0" langID="0x0">
- Bigelow &amp; Holmes Inc.
- </namerecord>
- <namerecord nameID="9" platformID="1" platEncID="0" langID="0x0">
- Kris Holmes and Charles Bigelow
- </namerecord>
- <namerecord nameID="11" platformID="1" platEncID="0" langID="0x0">
- http://www.urwpp.de
- </namerecord>
- <namerecord nameID="12" platformID="1" platEncID="0" langID="0x0">
- design@bigelowandholmes.com
- </namerecord>
- <namerecord nameID="0" platformID="3" platEncID="1" langID="0x409">
- Copyright (c) 2001 by Bigelow &amp; Holmes Inc. Instructions copyright (c) 2001 by URW++.
- </namerecord>
- <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
- Luxi Serif
- </namerecord>
- <namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
- Regular
- </namerecord>
- <namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
- Luxi Serif Regular: B&amp;H
- </namerecord>
- <namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
- Luxi Serif Regular
- </namerecord>
- <namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
- 1.2 : October 12, 2001
- </namerecord>
- <namerecord nameID="6" platformID="3" platEncID="1" langID="0x409">
- LuxiSerif
- </namerecord>
- <namerecord nameID="7" platformID="3" platEncID="1" langID="0x409">
- Luxi is a registered trademark of Bigelow &amp; Holmes Inc.
- </namerecord>
- <namerecord nameID="8" platformID="3" platEncID="1" langID="0x409">
- Bigelow &amp; Holmes Inc.
- </namerecord>
- <namerecord nameID="9" platformID="3" platEncID="1" langID="0x409">
- Kris Holmes and Charles Bigelow
- </namerecord>
- <namerecord nameID="11" platformID="3" platEncID="1" langID="0x409">
- http://www.urwpp.de
- </namerecord>
- <namerecord nameID="12" platformID="3" platEncID="1" langID="0x409">
- design@bigelowandholmes.com
- </namerecord>
- </name>
-
- <post>
- <formatType value="2.0"/>
- <italicAngle value="0.0"/>
- <underlinePosition value="0"/>
- <underlineThickness value="0"/>
- <isFixedPitch value="0"/>
- <minMemType42 value="0"/>
- <maxMemType42 value="0"/>
- <minMemType1 value="0"/>
- <maxMemType1 value="0"/>
- <psNames>
- <!-- This file uses unique glyph names based on the information
- found in the 'post' table. Since these names might not be unique,
- we have to invent artificial names in case of clashes. In order to
- be able to retain the original information, we need a name to
- ps name mapping for those cases where they differ. That's what
- you see below.
- -->
- <psName name=".notdef#1" psName=".notdef"/>
- <psName name=".notdef#10" psName=".notdef"/>
- <psName name=".notdef#11" psName=".notdef"/>
- <psName name=".notdef#12" psName=".notdef"/>
- <psName name=".notdef#13" psName=".notdef"/>
- <psName name=".notdef#14" psName=".notdef"/>
- <psName name=".notdef#15" psName=".notdef"/>
- <psName name=".notdef#16" psName=".notdef"/>
- <psName name=".notdef#17" psName=".notdef"/>
- <psName name=".notdef#18" psName=".notdef"/>
- <psName name=".notdef#2" psName=".notdef"/>
- <psName name=".notdef#3" psName=".notdef"/>
- <psName name=".notdef#4" psName=".notdef"/>
- <psName name=".notdef#5" psName=".notdef"/>
- <psName name=".notdef#6" psName=".notdef"/>
- <psName name=".notdef#7" psName=".notdef"/>
- <psName name=".notdef#8" psName=".notdef"/>
- <psName name=".notdef#9" psName=".notdef"/>
- <psName name="Euro#1" psName="Euro"/>
- <psName name="fi#1" psName="fi"/>
- <psName name="fl#1" psName="fl"/>
- <psName name="fraction#1" psName="fraction"/>
- <psName name="hyphen#1" psName="hyphen"/>
- <psName name="macron#1" psName="macron"/>
- <psName name="periodcentered#1" psName="periodcentered"/>
- <psName name="semicolon#1" psName="semicolon"/>
- </psNames>
- <extraNames>
- <!-- following are the name that are not taken from the standard Mac glyph order -->
- <psName name="fraction"/>
- <psName name="fi"/>
- <psName name="Euro"/>
- <psName name="tilde"/>
- <psName name="macron"/>
- <psName name="Euro"/>
- <psName name="sfthyphen"/>
- <psName name="periodcentered"/>
- <psName name="Amacron"/>
- <psName name="amacron"/>
- <psName name="Abreve"/>
- <psName name="abreve"/>
- <psName name="Aogonek"/>
- <psName name="aogonek"/>
- <psName name="Ccircumflex"/>
- <psName name="ccircumflex"/>
- <psName name="Cdotaccent"/>
- <psName name="cdotaccent"/>
- <psName name="Dcaron"/>
- <psName name="dcaron"/>
- <psName name="Dcroat"/>
- <psName name="dcroat"/>
- <psName name="Emacron"/>
- <psName name="emacron"/>
- <psName name="Ebreve"/>
- <psName name="ebreve"/>
- <psName name="Edotaccent"/>
- <psName name="edotaccent"/>
- <psName name="Eogonek"/>
- <psName name="eogonek"/>
- <psName name="Ecaron"/>
- <psName name="ecaron"/>
- <psName name="Gcircumflex"/>
- <psName name="gcircumflex"/>
- <psName name="Gdotaccent"/>
- <psName name="gdotaccent"/>
- <psName name="Gcommaaccent"/>
- <psName name="gcommaaccent"/>
- <psName name="Hcircumflex"/>
- <psName name="hcircumflex"/>
- <psName name="Hbar"/>
- <psName name="hbar"/>
- <psName name="Itilde"/>
- <psName name="itilde"/>
- <psName name="Imacron"/>
- <psName name="imacron"/>
- <psName name="Ibreve"/>
- <psName name="ibreve"/>
- <psName name="Iogonek"/>
- <psName name="iogonek"/>
- <psName name="IJ"/>
- <psName name="ij"/>
- <psName name="Jcircumflex"/>
- <psName name="jcircumflex"/>
- <psName name="Kcommaaccent"/>
- <psName name="kcommaaccent"/>
- <psName name="kgreenlandic"/>
- <psName name="Lacute"/>
- <psName name="lacute"/>
- <psName name="Lcommaaccent"/>
- <psName name="lcommaaccent"/>
- <psName name="Lcaron"/>
- <psName name="lcaron"/>
- <psName name="Ldot"/>
- <psName name="ldot"/>
- <psName name="Nacute"/>
- <psName name="nacute"/>
- <psName name="Ncommaaccent"/>
- <psName name="ncommaaccent"/>
- <psName name="Ncaron"/>
- <psName name="ncaron"/>
- <psName name="napostrophe"/>
- <psName name="Eng"/>
- <psName name="eng"/>
- <psName name="Omacron"/>
- <psName name="omacron"/>
- <psName name="Obreve"/>
- <psName name="obreve"/>
- <psName name="Ohungarumlaut"/>
- <psName name="ohungarumlaut"/>
- <psName name="Racute"/>
- <psName name="racute"/>
- <psName name="Rcommaaccent"/>
- <psName name="rcommaaccent"/>
- <psName name="Rcaron"/>
- <psName name="rcaron"/>
- <psName name="Sacute"/>
- <psName name="sacute"/>
- <psName name="Scircumflex"/>
- <psName name="scircumflex"/>
- <psName name="Tcommaaccent"/>
- <psName name="tcommaaccent"/>
- <psName name="Tcaron"/>
- <psName name="tcaron"/>
- <psName name="Tbar"/>
- <psName name="tbar"/>
- <psName name="Utilde"/>
- <psName name="utilde"/>
- <psName name="Umacron"/>
- <psName name="umacron"/>
- <psName name="Ubreve"/>
- <psName name="ubreve"/>
- <psName name="Uring"/>
- <psName name="uring"/>
- <psName name="Uhungarumlaut"/>
- <psName name="uhungarumlaut"/>
- <psName name="Uogonek"/>
- <psName name="uogonek"/>
- <psName name="Wcircumflex"/>
- <psName name="wcircumflex"/>
- <psName name="Ycircumflex"/>
- <psName name="ycircumflex"/>
- <psName name="Zacute"/>
- <psName name="zacute"/>
- <psName name="Zdotaccent"/>
- <psName name="zdotaccent"/>
- <psName name="longs"/>
- <psName name="Scommaaccent"/>
- <psName name="scommaaccent"/>
- <psName name="Tcommabelow"/>
- <psName name="tcommabelow"/>
- <psName name="Unterkomma"/>
- <psName name="semicolon"/>
- <psName name="anoteleia"/>
- <psName name="hyphen"/>
- <psName name="nbhyphen"/>
- <psName name="figuredash"/>
- <psName name="afii00208"/>
- <psName name="quotereversed"/>
- <psName name="radicalex"/>
- <psName name="estimated"/>
- <psName name="dotmath"/>
- <psName name="fi"/>
- <psName name="fl"/>
- <psName name="foursuperiour"/>
- <psName name="dotlessj"/>
- </extraNames>
- </post>
-
- <gasp>
- <gaspRange rangeMaxPPEM="8" rangeGaspBehavior="2"/>
- <gaspRange rangeMaxPPEM="16" rangeGaspBehavior="1"/>
- <gaspRange rangeMaxPPEM="65535" rangeGaspBehavior="3"/>
- </gasp>
-
- <vhea>
- <tableVersion value="1.0"/>
- <ascent value="2033"/>
- <descent value="432"/>
- <lineGap value="0"/>
- <advanceHeightMax value="2465"/>
- <minTopSideBearing value="0"/>
- <minBottomSideBearing value="0"/>
- <yMaxExtent value="2465"/>
- <caretSlopeRise value="0"/>
- <caretSlopeRun value="1"/>
- <reserved0 value="0"/>
- <reserved1 value="0"/>
- <reserved2 value="0"/>
- <reserved3 value="0"/>
- <reserved4 value="0"/>
- <metricDataFormat value="0"/>
- <numberOfVMetrics value="391"/>
- </vhea>
-
- <vmtx>
- <mtx name=".notdef" height="2465" tsb="553"/>
- <mtx name=".notdef#1" height="0" tsb="0"/>
- <mtx name=".notdef#10" height="2465" tsb="0"/>
- <mtx name=".notdef#11" height="2465" tsb="0"/>
- <mtx name=".notdef#12" height="2465" tsb="0"/>
- <mtx name=".notdef#13" height="2465" tsb="0"/>
- <mtx name=".notdef#14" height="2465" tsb="0"/>
- <mtx name=".notdef#15" height="2465" tsb="0"/>
- <mtx name=".notdef#16" height="1024" tsb="0"/>
- <mtx name=".notdef#17" height="2465" tsb="0"/>
- <mtx name=".notdef#18" height="2465" tsb="0"/>
- <mtx name=".notdef#2" height="2465" tsb="0"/>
- <mtx name=".notdef#3" height="2465" tsb="0"/>
- <mtx name=".notdef#4" height="2465" tsb="0"/>
- <mtx name=".notdef#5" height="2465" tsb="0"/>
- <mtx name=".notdef#6" height="2465" tsb="0"/>
- <mtx name=".notdef#7" height="2465" tsb="0"/>
- <mtx name=".notdef#8" height="2465" tsb="0"/>
- <mtx name=".notdef#9" height="2465" tsb="0"/>
- <mtx name="A" height="2465" tsb="534"/>
- <mtx name="AE" height="2465" tsb="553"/>
- <mtx name="Aacute" height="2465" tsb="108"/>
- <mtx name="Abreve" height="2465" tsb="108"/>
- <mtx name="Acircumflex" height="2465" tsb="108"/>
- <mtx name="Adieresis" height="2465" tsb="256"/>
- <mtx name="Agrave" height="2465" tsb="108"/>
- <mtx name="Amacron" height="2465" tsb="306"/>
- <mtx name="Aogonek" height="2465" tsb="534"/>
- <mtx name="Aring" height="2465" tsb="99"/>
- <mtx name="Atilde" height="2465" tsb="194"/>
- <mtx name="B" height="2465" tsb="553"/>
- <mtx name="C" height="2465" tsb="516"/>
- <mtx name="Cacute" height="2465" tsb="108"/>
- <mtx name="Ccaron" height="2465" tsb="108"/>
- <mtx name="Ccedilla" height="2465" tsb="516"/>
- <mtx name="Ccircumflex" height="2465" tsb="108"/>
- <mtx name="Cdotaccent" height="2465" tsb="232"/>
- <mtx name="D" height="2465" tsb="544"/>
- <mtx name="Dcaron" height="2465" tsb="108"/>
- <mtx name="Dcroat" height="2465" tsb="544"/>
- <mtx name="E" height="2465" tsb="553"/>
- <mtx name="Eacute" height="2465" tsb="108"/>
- <mtx name="Ebreve" height="2465" tsb="108"/>
- <mtx name="Ecaron" height="2465" tsb="108"/>
- <mtx name="Ecircumflex" height="2465" tsb="108"/>
- <mtx name="Edieresis" height="2465" tsb="256"/>
- <mtx name="Edotaccent" height="2465" tsb="232"/>
- <mtx name="Egrave" height="2465" tsb="108"/>
- <mtx name="Emacron" height="2465" tsb="306"/>
- <mtx name="Eng" height="2465" tsb="553"/>
- <mtx name="Eogonek" height="2465" tsb="553"/>
- <mtx name="Eth" height="2465" tsb="544"/>
- <mtx name="Euro" height="2465" tsb="516"/>
- <mtx name="Euro#1" height="2465" tsb="516"/>
- <mtx name="F" height="2465" tsb="553"/>
- <mtx name="G" height="2465" tsb="515"/>
- <mtx name="Gbreve" height="2465" tsb="108"/>
- <mtx name="Gcircumflex" height="2465" tsb="108"/>
- <mtx name="Gcommaaccent" height="2465" tsb="515"/>
- <mtx name="Gdotaccent" height="2465" tsb="232"/>
- <mtx name="H" height="2465" tsb="553"/>
- <mtx name="Hbar" height="2465" tsb="553"/>
- <mtx name="Hcircumflex" height="2465" tsb="108"/>
- <mtx name="I" height="2465" tsb="553"/>
- <mtx name="IJ" height="2465" tsb="553"/>
- <mtx name="Iacute" height="2465" tsb="108"/>
- <mtx name="Ibreve" height="2465" tsb="108"/>
- <mtx name="Icircumflex" height="2465" tsb="108"/>
- <mtx name="Idieresis" height="2465" tsb="256"/>
- <mtx name="Idotaccent" height="2465" tsb="232"/>
- <mtx name="Igrave" height="2465" tsb="108"/>
- <mtx name="Imacron" height="2465" tsb="306"/>
- <mtx name="Iogonek" height="2465" tsb="553"/>
- <mtx name="Itilde" height="2465" tsb="194"/>
- <mtx name="J" height="2465" tsb="553"/>
- <mtx name="Jcircumflex" height="2465" tsb="108"/>
- <mtx name="K" height="2465" tsb="553"/>
- <mtx name="Kcommaaccent" height="2465" tsb="553"/>
- <mtx name="L" height="2465" tsb="553"/>
- <mtx name="Lacute" height="2465" tsb="108"/>
- <mtx name="Lcaron" height="2465" tsb="553"/>
- <mtx name="Lcommaaccent" height="2465" tsb="553"/>
- <mtx name="Ldot" height="2465" tsb="553"/>
- <mtx name="Lslash" height="2465" tsb="553"/>
- <mtx name="M" height="2465" tsb="553"/>
- <mtx name="N" height="2465" tsb="553"/>
- <mtx name="Nacute" height="2465" tsb="108"/>
- <mtx name="Ncaron" height="2465" tsb="108"/>
- <mtx name="Ncommaaccent" height="2465" tsb="553"/>
- <mtx name="Ntilde" height="2465" tsb="194"/>
- <mtx name="O" height="2465" tsb="516"/>
- <mtx name="OE" height="2465" tsb="516"/>
- <mtx name="Oacute" height="2465" tsb="108"/>
- <mtx name="Obreve" height="2465" tsb="108"/>
- <mtx name="Ocircumflex" height="2465" tsb="108"/>
- <mtx name="Odieresis" height="2465" tsb="256"/>
- <mtx name="Ograve" height="2465" tsb="108"/>
- <mtx name="Ohungarumlaut" height="2465" tsb="108"/>
- <mtx name="Omacron" height="2465" tsb="306"/>
- <mtx name="Oslash" height="2465" tsb="516"/>
- <mtx name="Otilde" height="2465" tsb="194"/>
- <mtx name="P" height="2465" tsb="541"/>
- <mtx name="Q" height="2465" tsb="516"/>
- <mtx name="R" height="2465" tsb="541"/>
- <mtx name="Racute" height="2465" tsb="108"/>
- <mtx name="Rcaron" height="2465" tsb="108"/>
- <mtx name="Rcommaaccent" height="2465" tsb="542"/>
- <mtx name="S" height="2465" tsb="516"/>
- <mtx name="Sacute" height="2465" tsb="108"/>
- <mtx name="Scaron" height="2465" tsb="108"/>
- <mtx name="Scedilla" height="2465" tsb="516"/>
- <mtx name="Scircumflex" height="2465" tsb="108"/>
- <mtx name="Scommaaccent" height="2465" tsb="516"/>
- <mtx name="T" height="2465" tsb="553"/>
- <mtx name="Tbar" height="2465" tsb="553"/>
- <mtx name="Tcaron" height="2465" tsb="108"/>
- <mtx name="Tcommaaccent" height="2465" tsb="553"/>
- <mtx name="Tcommabelow" height="2465" tsb="553"/>
- <mtx name="Thorn" height="2465" tsb="553"/>
- <mtx name="U" height="2465" tsb="553"/>
- <mtx name="Uacute" height="2465" tsb="108"/>
- <mtx name="Ubreve" height="2465" tsb="108"/>
- <mtx name="Ucircumflex" height="2465" tsb="108"/>
- <mtx name="Udieresis" height="2465" tsb="256"/>
- <mtx name="Ugrave" height="2465" tsb="108"/>
- <mtx name="Uhungarumlaut" height="2465" tsb="108"/>
- <mtx name="Umacron" height="2465" tsb="306"/>
- <mtx name="Unterkomma" height="2465" tsb="2144"/>
- <mtx name="Uogonek" height="2465" tsb="553"/>
- <mtx name="Uring" height="2465" tsb="0"/>
- <mtx name="Utilde" height="2465" tsb="194"/>
- <mtx name="V" height="2465" tsb="553"/>
- <mtx name="W" height="2465" tsb="553"/>
- <mtx name="Wcircumflex" height="2465" tsb="108"/>
- <mtx name="X" height="2465" tsb="553"/>
- <mtx name="Y" height="2465" tsb="553"/>
- <mtx name="Yacute" height="2465" tsb="108"/>
- <mtx name="Ycircumflex" height="2465" tsb="108"/>
- <mtx name="Ydieresis" height="2465" tsb="256"/>
- <mtx name="Z" height="2465" tsb="553"/>
- <mtx name="Zacute" height="2465" tsb="108"/>
- <mtx name="Zcaron" height="2465" tsb="108"/>
- <mtx name="Zdotaccent" height="2465" tsb="232"/>
- <mtx name="a" height="2465" tsb="923"/>
- <mtx name="aacute" height="2465" tsb="429"/>
- <mtx name="abreve" height="2465" tsb="429"/>
- <mtx name="acircumflex" height="2465" tsb="429"/>
- <mtx name="acute" height="2465" tsb="429"/>
- <mtx name="adieresis" height="2465" tsb="577"/>
- <mtx name="ae" height="2465" tsb="922"/>
- <mtx name="afii00208" height="2465" tsb="1391"/>
- <mtx name="agrave" height="2465" tsb="429"/>
- <mtx name="amacron" height="2465" tsb="627"/>
- <mtx name="ampersand" height="2465" tsb="515"/>
- <mtx name="anoteleia" height="2465" tsb="1295"/>
- <mtx name="aogonek" height="2465" tsb="923"/>
- <mtx name="aring" height="2465" tsb="296"/>
- <mtx name="asciicircum" height="2465" tsb="553"/>
- <mtx name="asciitilde" height="2465" tsb="1270"/>
- <mtx name="asterisk" height="2465" tsb="553"/>
- <mtx name="at" height="2465" tsb="516"/>
- <mtx name="atilde" height="2465" tsb="515"/>
- <mtx name="b" height="2465" tsb="454"/>
- <mtx name="backslash" height="2465" tsb="552"/>
- <mtx name="bar" height="2465" tsb="454"/>
- <mtx name="braceleft" height="2465" tsb="454"/>
- <mtx name="braceright" height="2465" tsb="454"/>
- <mtx name="bracketleft" height="2465" tsb="454"/>
- <mtx name="bracketright" height="2465" tsb="454"/>
- <mtx name="breve" height="2465" tsb="429"/>
- <mtx name="brokenbar" height="2465" tsb="454"/>
- <mtx name="bullet" height="2465" tsb="923"/>
- <mtx name="c" height="2465" tsb="923"/>
- <mtx name="cacute" height="2465" tsb="429"/>
- <mtx name="caron" height="2465" tsb="429"/>
- <mtx name="ccaron" height="2465" tsb="429"/>
- <mtx name="ccedilla" height="2465" tsb="923"/>
- <mtx name="ccircumflex" height="2465" tsb="429"/>
- <mtx name="cdotaccent" height="2465" tsb="553"/>
- <mtx name="cedilla" height="2465" tsb="2033"/>
- <mtx name="cent" height="2465" tsb="553"/>
- <mtx name="circumflex" height="2465" tsb="429"/>
- <mtx name="colon" height="2465" tsb="947"/>
- <mtx name="comma" height="2465" tsb="1786"/>
- <mtx name="copyright" height="2465" tsb="602"/>
- <mtx name="currency" height="2465" tsb="855"/>
- <mtx name="d" height="2465" tsb="454"/>
- <mtx name="dagger" height="2465" tsb="553"/>
- <mtx name="daggerdbl" height="2465" tsb="553"/>
- <mtx name="dcaron" height="2465" tsb="454"/>
- <mtx name="dcroat" height="2465" tsb="454"/>
- <mtx name="degree" height="2465" tsb="516"/>
- <mtx name="dieresis" height="2465" tsb="577"/>
- <mtx name="divide" height="2465" tsb="947"/>
- <mtx name="dollar" height="2465" tsb="429"/>
- <mtx name="dotaccent" height="2465" tsb="553"/>
- <mtx name="dotlessi" height="2465" tsb="947"/>
- <mtx name="dotlessj" height="2465" tsb="947"/>
- <mtx name="dotmath" height="2465" tsb="1295"/>
- <mtx name="e" height="2465" tsb="923"/>
- <mtx name="eacute" height="2465" tsb="429"/>
- <mtx name="ebreve" height="2465" tsb="429"/>
- <mtx name="ecaron" height="2465" tsb="429"/>
- <mtx name="ecircumflex" height="2465" tsb="429"/>
- <mtx name="edieresis" height="2465" tsb="577"/>
- <mtx name="edotaccent" height="2465" tsb="553"/>
- <mtx name="egrave" height="2465" tsb="429"/>
- <mtx name="eight" height="2465" tsb="515"/>
- <mtx name="ellipsis" height="2465" tsb="1836"/>
- <mtx name="emacron" height="2465" tsb="627"/>
- <mtx name="emdash" height="2465" tsb="1391"/>
- <mtx name="endash" height="2465" tsb="1367"/>
- <mtx name="eng" height="2465" tsb="923"/>
- <mtx name="eogonek" height="2465" tsb="923"/>
- <mtx name="equal" height="2465" tsb="1206"/>
- <mtx name="estimated" height="2465" tsb="923"/>
- <mtx name="eth" height="2465" tsb="448"/>
- <mtx name="exclam" height="2465" tsb="553"/>
- <mtx name="exclamdown" height="2465" tsb="947"/>
- <mtx name="f" height="2465" tsb="429"/>
- <mtx name="fi" height="2465" tsb="429"/>
- <mtx name="fi#1" height="2465" tsb="429"/>
- <mtx name="figuredash" height="2465" tsb="1367"/>
- <mtx name="five" height="2465" tsb="553"/>
- <mtx name="fl" height="2465" tsb="429"/>
- <mtx name="fl#1" height="2465" tsb="429"/>
- <mtx name="florin" height="2465" tsb="528"/>
- <mtx name="four" height="2465" tsb="528"/>
- <mtx name="foursuperiour" height="2465" tsb="511"/>
- <mtx name="fraction" height="2465" tsb="516"/>
- <mtx name="fraction#1" height="2465" tsb="516"/>
- <mtx name="g" height="2465" tsb="923"/>
- <mtx name="gbreve" height="2465" tsb="429"/>
- <mtx name="gcircumflex" height="2465" tsb="429"/>
- <mtx name="gcommaaccent" height="2465" tsb="296"/>
- <mtx name="gdotaccent" height="2465" tsb="553"/>
- <mtx name="germandbls" height="2465" tsb="429"/>
- <mtx name="grave" height="2465" tsb="429"/>
- <mtx name="greater" height="2465" tsb="947"/>
- <mtx name="guillemotleft" height="2465" tsb="1058"/>
- <mtx name="guillemotright" height="2465" tsb="1058"/>
- <mtx name="guilsinglleft" height="2465" tsb="1058"/>
- <mtx name="guilsinglright" height="2465" tsb="1058"/>
- <mtx name="h" height="2465" tsb="454"/>
- <mtx name="hbar" height="2465" tsb="454"/>
- <mtx name="hcircumflex" height="2465" tsb="34"/>
- <mtx name="hungarumlaut" height="2465" tsb="429"/>
- <mtx name="hyphen" height="2465" tsb="1367"/>
- <mtx name="hyphen#1" height="2465" tsb="1367"/>
- <mtx name="i" height="2465" tsb="553"/>
- <mtx name="iacute" height="2465" tsb="429"/>
- <mtx name="ibreve" height="2465" tsb="429"/>
- <mtx name="icircumflex" height="2465" tsb="429"/>
- <mtx name="idieresis" height="2465" tsb="577"/>
- <mtx name="igrave" height="2465" tsb="429"/>
- <mtx name="ij" height="2465" tsb="553"/>
- <mtx name="imacron" height="2465" tsb="627"/>
- <mtx name="iogonek" height="2465" tsb="553"/>
- <mtx name="itilde" height="2465" tsb="515"/>
- <mtx name="j" height="2465" tsb="553"/>
- <mtx name="jcircumflex" height="2465" tsb="429"/>
- <mtx name="k" height="2465" tsb="454"/>
- <mtx name="kcommaaccent" height="2465" tsb="454"/>
- <mtx name="kgreenlandic" height="2465" tsb="947"/>
- <mtx name="l" height="2465" tsb="454"/>
- <mtx name="lacute" height="2465" tsb="34"/>
- <mtx name="lcaron" height="2465" tsb="454"/>
- <mtx name="lcommaaccent" height="2465" tsb="454"/>
- <mtx name="ldot" height="2465" tsb="454"/>
- <mtx name="less" height="2465" tsb="947"/>
- <mtx name="logicalnot" height="2465" tsb="1243"/>
- <mtx name="longs" height="2465" tsb="429"/>
- <mtx name="lslash" height="2465" tsb="454"/>
- <mtx name="m" height="2465" tsb="923"/>
- <mtx name="macron" height="2465" tsb="627"/>
- <mtx name="macron#1" height="2465" tsb="429"/>
- <mtx name="minus" height="2465" tsb="1391"/>
- <mtx name="mu" height="2465" tsb="947"/>
- <mtx name="multiply" height="2465" tsb="947"/>
- <mtx name="n" height="2465" tsb="923"/>
- <mtx name="nacute" height="2465" tsb="429"/>
- <mtx name="napostrophe" height="2465" tsb="454"/>
- <mtx name="nbhyphen" height="2465" tsb="1367"/>
- <mtx name="ncaron" height="2465" tsb="429"/>
- <mtx name="ncommaaccent" height="2465" tsb="923"/>
- <mtx name="nine" height="2465" tsb="515"/>
- <mtx name="nonbreakingspace" height="2465" tsb="2033"/>
- <mtx name="ntilde" height="2465" tsb="515"/>
- <mtx name="numbersign" height="2465" tsb="553"/>
- <mtx name="o" height="2465" tsb="923"/>
- <mtx name="oacute" height="2465" tsb="429"/>
- <mtx name="obreve" height="2465" tsb="429"/>
- <mtx name="ocircumflex" height="2465" tsb="429"/>
- <mtx name="odieresis" height="2465" tsb="577"/>
- <mtx name="oe" height="2465" tsb="923"/>
- <mtx name="ogonek" height="2465" tsb="2033"/>
- <mtx name="ograve" height="2465" tsb="429"/>
- <mtx name="ohungarumlaut" height="2465" tsb="429"/>
- <mtx name="omacron" height="2465" tsb="627"/>
- <mtx name="one" height="2465" tsb="540"/>
- <mtx name="onehalf" height="2465" tsb="516"/>
- <mtx name="onequarter" height="2465" tsb="516"/>
- <mtx name="onesuperior" height="2465" tsb="516"/>
- <mtx name="ordfeminine" height="2465" tsb="516"/>
- <mtx name="ordmasculine" height="2465" tsb="516"/>
- <mtx name="oslash" height="2465" tsb="923"/>
- <mtx name="otilde" height="2465" tsb="515"/>
- <mtx name="p" height="2465" tsb="923"/>
- <mtx name="paragraph" height="2465" tsb="544"/>
- <mtx name="parenleft" height="2465" tsb="454"/>
- <mtx name="parenright" height="2465" tsb="454"/>
- <mtx name="percent" height="2465" tsb="516"/>
- <mtx name="period" height="2465" tsb="1786"/>
- <mtx name="periodcentered" height="2465" tsb="1295"/>
- <mtx name="periodcentered#1" height="2465" tsb="1295"/>
- <mtx name="perthousand" height="2465" tsb="516"/>
- <mtx name="plus" height="2465" tsb="947"/>
- <mtx name="plusminus" height="2465" tsb="849"/>
- <mtx name="q" height="2465" tsb="923"/>
- <mtx name="question" height="2465" tsb="516"/>
- <mtx name="questiondown" height="2465" tsb="553"/>
- <mtx name="quotedbl" height="2465" tsb="454"/>
- <mtx name="quotedblbase" height="2465" tsb="1786"/>
- <mtx name="quotedblleft" height="2465" tsb="454"/>
- <mtx name="quotedblright" height="2465" tsb="454"/>
- <mtx name="quoteleft" height="2465" tsb="454"/>
- <mtx name="quotereversed" height="2465" tsb="2033"/>
- <mtx name="quoteright" height="2465" tsb="454"/>
- <mtx name="quotesinglbase" height="2465" tsb="1786"/>
- <mtx name="quotesingle" height="2465" tsb="454"/>
- <mtx name="r" height="2465" tsb="923"/>
- <mtx name="racute" height="2465" tsb="429"/>
- <mtx name="radicalex" height="2465" tsb="429"/>
- <mtx name="rcaron" height="2465" tsb="429"/>
- <mtx name="rcommaaccent" height="2465" tsb="923"/>
- <mtx name="registered" height="2465" tsb="602"/>
- <mtx name="ring" height="2465" tsb="296"/>
- <mtx name="s" height="2465" tsb="923"/>
- <mtx name="sacute" height="2465" tsb="429"/>
- <mtx name="scaron" height="2465" tsb="429"/>
- <mtx name="scedilla" height="2465" tsb="923"/>
- <mtx name="scircumflex" height="2465" tsb="429"/>
- <mtx name="scommaaccent" height="2465" tsb="923"/>
- <mtx name="section" height="2465" tsb="516"/>
- <mtx name="semicolon" height="2465" tsb="947"/>
- <mtx name="semicolon#1" height="2465" tsb="947"/>
- <mtx name="seven" height="2465" tsb="553"/>
- <mtx name="sfthyphen" height="2465" tsb="1367"/>
- <mtx name="six" height="2465" tsb="515"/>
- <mtx name="slash" height="2465" tsb="552"/>
- <mtx name="space" height="2465" tsb="2033"/>
- <mtx name="sterling" height="2465" tsb="528"/>
- <mtx name="t" height="2465" tsb="701"/>
- <mtx name="tbar" height="2465" tsb="701"/>
- <mtx name="tcaron" height="2465" tsb="345"/>
- <mtx name="tcommaaccent" height="2465" tsb="701"/>
- <mtx name="tcommabelow" height="2465" tsb="701"/>
- <mtx name="thorn" height="2465" tsb="454"/>
- <mtx name="three" height="2465" tsb="516"/>
- <mtx name="threequarters" height="2465" tsb="516"/>
- <mtx name="threesuperior" height="2465" tsb="516"/>
- <mtx name="tilde" height="2465" tsb="515"/>
- <mtx name="trademark" height="2465" tsb="553"/>
- <mtx name="two" height="2465" tsb="515"/>
- <mtx name="twosuperior" height="2465" tsb="515"/>
- <mtx name="u" height="2465" tsb="947"/>
- <mtx name="uacute" height="2465" tsb="429"/>
- <mtx name="ubreve" height="2465" tsb="429"/>
- <mtx name="ucircumflex" height="2465" tsb="429"/>
- <mtx name="udieresis" height="2465" tsb="577"/>
- <mtx name="ugrave" height="2465" tsb="429"/>
- <mtx name="uhungarumlaut" height="2465" tsb="429"/>
- <mtx name="umacron" height="2465" tsb="627"/>
- <mtx name="underscore" height="2465" tsb="2033"/>
- <mtx name="uogonek" height="2465" tsb="947"/>
- <mtx name="uring" height="2465" tsb="296"/>
- <mtx name="utilde" height="2465" tsb="515"/>
- <mtx name="v" height="2465" tsb="947"/>
- <mtx name="w" height="2465" tsb="947"/>
- <mtx name="wcircumflex" height="2465" tsb="429"/>
- <mtx name="x" height="2465" tsb="947"/>
- <mtx name="y" height="2465" tsb="947"/>
- <mtx name="yacute" height="2465" tsb="429"/>
- <mtx name="ycircumflex" height="2465" tsb="429"/>
- <mtx name="ydieresis" height="2465" tsb="577"/>
- <mtx name="yen" height="2465" tsb="553"/>
- <mtx name="z" height="2465" tsb="947"/>
- <mtx name="zacute" height="2465" tsb="429"/>
- <mtx name="zcaron" height="2465" tsb="429"/>
- <mtx name="zdotaccent" height="2465" tsb="553"/>
- <mtx name="zero" height="2465" tsb="516"/>
- </vmtx>
-
-</ttFont>
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr-12pt-sans-hinting.txt b/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr-12pt-sans-hinting.txt
deleted file mode 100644
index e2761641d..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr-12pt-sans-hinting.txt
+++ /dev/null
@@ -1,392 +0,0 @@
-freetype version 2.5.1
-213 21 0 192 555;21 0 1, 21 555 1, 192 555 1, 192 0 1, 171 21 1, 171 534 1, 43 534 1, 43 21 1
-0 0 0 0 0;
-213 0 0 0 0;
-213 0 0 0 0;
-213 70 0 144 555;70 0 1, 70 74 1, 144 74 1, 144 0 1, 79 148 1, 70 444 1, 70 555 1, 144 555 1, 144 444 1, 135 148 1
-273 35 407 238 592;44 407 1, 35 592 1, 108 592 1, 99 407 1, 173 407 1, 164 592 1, 238 592 1, 229 407 1
-427 9 0 418 555;47 0 1, 89 167 1, 9 167 1, 18 213 1, 100 213 1, 133 342 1, 44 342 1, 54 389 1, 144 389 1, 186 555 1, 234 555 1, 192 389 1, 291 389 1, 332 555 1, 380 555 1, 339 389 1, 418 389 1, 409 342 1, 327 342 1, 294 213 1, 383 213 1, 374 167 1, 283 167 1, 242 0 1, 194 0 1, 235 167 1, 137 167 1, 95 0 1, 148 213 1, 247 213 1, 279 342 1, 180 342 1
-427 39 -46 353 602;187 -46 1, 187 0 1, 121 0 0, 39 31 1, 39 95 1, 123 56 0, 187 56 1, 187 255 1, 117 298 0, 88 330 1, 55 368 0, 55 422 1, 55 486 0, 103 524 1, 135 550 0, 187 555 1, 187 602 1, 224 602 1, 224 555 1, 278 555 0, 344 530 1, 344 470 1, 273 501 0, 224 504 1, 224 307 1, 228 304 1, 238 298 0, 247 293 1, 251 290 1, 299 262 0, 322 237 1, 353 205 0, 353 155 1, 353 87 0, 308 42 1, 276 12 0, 224 0 1, 224 -46 1, 224 60 1, 288 85 0, 288 144 1, 288 175 0, 270 195 1, 257 210 0, 224 233 1, 187 331 1, 187 502 1, 120 479 0, 120 425 1, 120 376 0
-683 42 -14 641 569;94 -14 1, 531 569 1, 589 569 1, 152 -14 1, 161 555 1, 216 555 0, 248 518 1, 280 480 0, 280 416 1, 280 352 0, 248 315 1, 216 278 0, 161 278 1, 106 278 0, 74 315 1, 42 353 0, 42 418 1, 42 475 0, 68 511 1, 101 555 0, 161 518 1, 134 518 0, 117 491 1, 100 462 0, 100 419 1, 100 375 0, 114 348 1, 131 315 0, 161 315 1, 189 315 0, 206 343 1, 222 371 0, 222 416 1, 222 462 0, 206 490 1, 188 518 0, 522 278 1, 577 278 0, 609 240 1, 641 203 0, 641 139 1, 641 75 0, 609 38 1, 577 0 0, 522 0 1, 467 0 0, 435 38 1, 403 75 0, 403 141 1, 403 198 0, 429 233 1, 462 278 0, 522 241 1, 494 241 0, 477 213 1, 461 185 0, 461 141 1, 461 98 0, 474 71 1, 491 37 0, 522 37 1, 549 37 0, 566 65 1, 583 93 0, 583 139 1, 583 185 0, 566 213 1, 549 241 0
-512 21 -14 485 569;384 0 1, 357 33 1, 282 -14 0, 214 -14 1, 132 -14 0, 77 37 1, 21 88 0, 21 166 1, 21 243 0, 69 290 1, 98 318 0, 152 339 1, 119 400 0, 119 445 1, 119 501 0, 153 535 1, 188 569 0, 247 569 1, 303 569 0, 336 539 1, 368 508 0, 368 457 1, 368 401 0, 325 360 1, 298 335 0, 248 312 1, 311 198 0, 373 123 1, 410 171 0, 410 265 1, 410 295 1, 483 295 1, 483 165 0, 408 83 1, 441 41 0, 485 0 1, 325 76 1, 251 160 0, 178 296 1, 141 279 0, 123 257 1, 95 225 0, 95 179 1, 95 122 0, 134 82 1, 172 42 0, 226 42 1, 268 42 0, 220 359 1, 256 374 0, 273 392 1, 299 419 0, 299 456 1, 299 513 0, 246 513 1, 191 513 0, 191 453 1, 191 416 0, 217 365 1
-147 27 389 120 592;45 389 1, 27 592 1, 120 592 1, 101 389 1
-256 49 -111 225 592;225 -60 1, 225 -111 1, 150 -58 0, 107 21 1, 49 123 0, 49 241 1, 49 364 0, 111 470 1, 154 542 0, 225 592 1, 225 541 1, 174 485 0, 152 426 1, 123 353 0, 123 241 1, 123 124 0, 154 48 1, 177 -7 0
-256 31 -111 207 592;31 541 1, 31 592 1, 106 539 0, 150 461 1, 207 359 0, 207 241 1, 207 117 0, 144 12 1, 102 -60 0, 31 -111 1, 31 -60 1, 81 -3 0, 104 56 1, 132 129 0, 132 241 1, 132 357 0, 101 433 1, 79 487 0
-299 15 282 284 555;267 483 1, 284 431 1, 180 406 1, 180 407 1, 180 411 0, 180 411 1, 180 411 1, 180 427 0, 170 437 1, 255 314 1, 210 282 1, 152 382 1, 170 384 0, 178 401 1, 88 282 1, 43 314 1, 120 401 1, 128 384 0, 147 382 1, 15 431 1, 32 483 1, 129 437 1, 118 427 0, 118 411 1, 118 411 1, 118 411 0, 118 409 1, 119 408 1, 119 407 0, 119 406 1, 122 555 1, 177 555 1, 165 440 1, 157 444 0, 149 444 1, 141 444 0, 133 440 1
-449 39 37 409 407;196 37 1, 196 194 1, 39 194 1, 39 250 1, 196 250 1, 196 407 1, 252 407 1, 252 250 1, 409 250 1, 409 194 1, 252 194 1, 252 37 1
-213 60 -120 153 93;60 -120 1, 60 -93 1, 96 -83 0, 96 -8 1, 96 0 1, 60 0 1, 60 93 1, 153 93 1, 153 12 1, 153 -110 0
-256 33 194 223 250;33 194 1, 33 250 1, 223 250 1, 223 194 1
-213 60 0 153 93;60 0 1, 60 93 1, 153 93 1, 153 0 1
-213 -22 -111 236 555;-22 -111 1, 178 555 1, 236 555 1, 36 -111 1
-427 30 -14 397 569;213 569 1, 298 569 0, 347 491 1, 397 413 0, 397 279 1, 397 142 0, 347 64 1, 298 -14 0, 211 -14 1, 137 -14 0, 90 50 1, 30 130 0, 30 278 1, 30 413 0, 80 491 1, 129 569 0, 213 513 1, 163 513 0, 136 452 1, 109 390 0, 109 278 1, 109 167 0, 136 104 1, 163 42 0, 214 42 1, 260 42 0, 285 87 1, 318 148 0, 318 279 1, 318 392 0, 291 452 1, 263 513 0
-427 86 0 383 569;86 0 1, 86 56 1, 197 56 1, 197 494 1, 86 466 1, 86 523 1, 272 569 1, 272 56 1, 383 56 1, 383 0 1
-427 38 0 353 569;38 0 1, 38 65 1, 64 125 0, 125 188 1, 165 230 1, 202 267 1, 274 341 0, 274 415 1, 274 468 0, 246 493 1, 224 514 0, 184 514 1, 132 514 0, 52 469 1, 52 534 1, 128 569 0, 194 569 1, 267 569 0, 310 527 1, 353 485 0, 353 413 1, 353 364 0, 331 326 1, 308 287 0, 247 233 1, 221 209 1, 143 139 0, 128 65 1, 350 65 1, 350 0 1
-427 57 -14 362 569;57 4 1, 57 73 1, 60 72 1, 70 68 0, 74 67 1, 115 52 0, 129 48 1, 154 42 0, 174 42 1, 230 42 0, 258 73 1, 283 100 0, 283 150 1, 283 208 0, 245 239 1, 208 270 0, 138 270 1, 109 270 1, 109 320 1, 134 320 1, 199 321 0, 234 350 1, 270 379 0, 270 430 1, 270 513 0, 180 513 1, 134 513 0, 65 482 1, 65 547 1, 133 569 0, 185 569 1, 275 569 0, 315 526 1, 344 494 0, 344 441 1, 344 381 0, 302 343 1, 277 320 0, 228 301 1, 271 290 0, 293 277 1, 362 237 0, 362 153 1, 362 77 0, 312 32 1, 263 -14 0, 181 -14 1, 137 -14 0
-427 12 0 402 555;258 0 1, 258 157 1, 12 157 1, 12 213 1, 258 555 1, 327 555 1, 327 218 1, 402 218 1, 402 157 1, 327 157 1, 327 0 1, 84 218 1, 263 218 1, 263 464 1
-427 61 -14 362 555;61 -2 1, 61 64 1, 118 42 0, 166 42 1, 221 42 0, 252 74 1, 284 107 0, 284 162 1, 284 288 0, 113 288 1, 92 288 0, 71 285 1, 71 555 1, 351 555 1, 351 491 1, 135 491 1, 135 344 1, 234 343 0, 291 304 1, 362 255 0, 362 159 1, 362 78 0, 308 32 1, 253 -14 0, 158 -14 1, 116 -14 0
-427 32 -14 385 569;112 292 1, 164 356 0, 238 356 1, 306 356 0, 346 310 1, 385 264 0, 385 182 1, 385 92 0, 339 39 1, 292 -14 0, 214 -14 1, 129 -14 0, 80 59 1, 32 132 0, 32 260 1, 32 405 0, 90 487 1, 148 569 0, 251 569 1, 298 569 0, 355 548 1, 355 484 1, 287 514 0, 249 514 1, 166 514 0, 133 431 1, 120 398 0, 115 357 1, 113 335 0, 218 303 1, 172 303 0, 143 271 1, 114 239 0, 114 183 1, 114 122 0, 144 82 1, 174 42 0, 221 42 1, 312 42 0, 312 167 1, 312 303 0
-427 51 0 407 555;83 0 1, 94 65 0, 114 112 1, 134 159 0, 185 242 1, 337 486 1, 51 486 1, 51 555 1, 407 555 1, 407 486 1, 194 171 0, 168 0 1
-427 37 -14 408 569;147 302 1, 111 329 0, 92 353 1, 66 389 0, 66 429 1, 66 491 0, 112 530 1, 158 569 0, 233 569 1, 302 569 0, 344 536 1, 386 503 0, 386 449 1, 386 400 0, 349 357 1, 326 331 0, 283 302 1, 339 273 0, 368 243 1, 408 199 0, 408 143 1, 408 74 0, 356 30 1, 303 -14 0, 219 -14 1, 137 -14 0, 87 28 1, 37 69 0, 37 138 1, 37 198 0, 78 245 1, 102 274 0, 242 326 1, 319 379 0, 319 437 1, 319 472 0, 294 492 1, 268 513 0, 225 513 1, 183 513 0, 158 494 1, 133 474 0, 133 441 1, 133 402 0, 176 368 1, 197 351 0, 188 272 1, 146 240 0, 130 216 1, 111 189 0, 111 149 1, 111 101 0, 142 71 1, 173 42 0, 223 42 1, 271 42 0, 302 67 1, 332 92 0, 332 132 1, 332 168 0, 309 192 1, 289 212 0, 240 241 1
-427 32 -14 385 569;305 263 1, 253 199 0, 179 199 1, 110 199 0, 71 245 1, 32 292 0, 32 373 1, 32 463 0, 78 516 1, 124 569 0, 202 569 1, 288 569 0, 336 496 1, 385 423 0, 385 296 1, 385 150 0, 327 68 1, 269 -14 0, 166 -14 1, 118 -14 0, 61 7 1, 61 71 1, 130 42 0, 168 42 1, 251 42 0, 284 125 1, 297 158 0, 302 198 1, 304 220 0, 196 513 1, 104 513 0, 104 389 1, 104 252 0, 198 252 1, 245 252 0, 273 284 1, 302 317 0, 302 372 1, 302 433 0, 273 473 1, 243 513 0
-213 70 0 144 407;70 0 1, 70 74 1, 144 74 1, 144 0 1, 70 333 1, 70 407 1, 144 407 1, 144 333 1
-213 70 -120 144 407;70 -120 1, 70 -93 1, 96 -79 0, 96 -9 1, 96 0 1, 70 0 1, 70 74 1, 144 74 1, 144 12 1, 143 -102 0, 70 333 1, 70 407 1, 144 407 1, 144 333 1
-449 39 37 409 407;409 37 1, 39 222 1, 409 407 1, 409 345 1, 164 222 1, 164 222 1, 409 99 1
-449 39 125 409 319;39 125 1, 39 180 1, 409 180 1, 409 125 1, 39 264 1, 39 319 1, 409 319 1, 409 264 1
-449 39 37 409 407;39 407 1, 409 222 1, 39 37 1, 39 99 1, 284 222 1, 284 222 1, 39 345 1
-427 52 0 380 569;141 0 1, 141 74 1, 215 74 1, 215 0 1, 141 148 1, 141 168 1, 141 260 0, 202 308 1, 236 334 1, 302 385 0, 302 440 1, 302 513 0, 199 513 1, 136 513 0, 52 486 1, 52 548 1, 135 569 0, 204 569 1, 281 569 0, 324 544 1, 380 512 0, 380 441 1, 380 371 0, 309 327 1, 278 308 1, 241 285 0, 228 260 1, 215 236 0, 215 189 1, 215 148 1
-780 95 -14 692 569;470 17 1, 400 -14 0, 336 -14 1, 232 -14 0, 164 51 1, 95 116 0, 95 218 1, 95 356 0, 201 462 1, 306 569 0, 445 569 1, 551 569 0, 621 501 1, 692 434 0, 692 333 1, 692 241 0, 635 176 1, 578 111 0, 498 111 1, 435 111 0, 435 154 1, 435 169 0, 443 194 1, 458 241 1, 453 241 1, 422 182 0, 393 153 1, 352 111 0, 307 111 1, 236 111 0, 236 196 1, 236 290 0, 297 366 1, 357 442 0, 434 442 1, 443 442 0, 458 441 1, 462 441 0, 467 440 1, 482 440 0, 492 440 1, 543 440 1, 496 201 1, 494 190 0, 494 178 1, 494 153 0, 522 153 1, 572 153 0, 611 206 1, 650 260 0, 650 328 1, 650 414 0, 590 471 1, 531 528 0, 440 528 1, 321 528 0, 229 434 1, 137 341 0, 137 222 1, 137 135 0, 195 82 1, 252 28 0, 342 28 1, 400 28 0, 456 55 1, 462 312 1, 477 386 1, 442 398 0, 417 398 1, 364 398 0, 329 344 1, 294 291 0, 294 213 1, 294 157 0, 324 157 1, 374 157 0
-512 7 0 503 555;7 0 1, 218 555 1, 296 555 1, 503 0 1, 419 0 1, 361 154 1, 138 154 1, 80 0 1, 161 212 1, 339 212 1, 250 450 1
-512 62 0 462 555;62 0 1, 62 555 1, 240 555 1, 349 555 0, 394 527 1, 440 498 0, 440 431 1, 440 369 0, 395 330 1, 368 307 0, 317 289 1, 382 270 0, 415 242 1, 462 202 0, 462 138 1, 462 80 0, 423 41 1, 396 13 0, 353 6 1, 318 0 0, 259 0 1, 141 59 1, 199 59 1, 309 59 0, 344 75 1, 378 92 0, 378 144 1, 378 201 0, 334 231 1, 289 261 0, 205 261 1, 141 261 1, 141 311 1, 208 311 1, 359 311 0, 359 417 1, 359 471 0, 315 485 1, 282 496 0, 213 496 1, 141 496 1
-555 44 -14 507 569;507 29 1, 421 -14 0, 323 -14 1, 186 -14 0, 115 60 1, 44 135 0, 44 277 1, 44 419 0, 116 494 1, 189 569 0, 327 569 1, 404 569 0, 506 545 1, 506 471 1, 390 510 0, 323 510 1, 228 510 0, 178 450 1, 128 390 0, 128 278 1, 128 167 0, 182 108 1, 235 48 0, 332 48 1, 414 48 0, 507 96 1
-555 62 0 520 555;62 0 1, 62 555 1, 240 555 1, 520 555 0, 520 290 1, 520 152 0, 447 76 1, 374 0 0, 241 0 1, 141 59 1, 235 59 1, 435 59 0, 435 281 1, 435 412 0, 356 466 1, 333 482 0, 301 488 1, 263 496 0, 199 496 1, 141 496 1
-512 72 0 491 555;72 0 1, 72 555 1, 474 555 1, 474 496 1, 150 496 1, 150 318 1, 437 318 1, 437 260 1, 150 260 1, 150 59 1, 491 59 1, 491 0 1
-469 72 0 449 555;72 0 1, 72 555 1, 449 555 1, 449 496 1, 150 496 1, 150 310 1, 411 310 1, 411 252 1, 150 252 1, 150 0 1
-597 35 -14 527 569;527 258 1, 527 15 1, 424 -14 0, 327 -14 1, 35 -14 0, 35 276 1, 35 417 0, 110 493 1, 186 569 0, 329 569 1, 421 569 0, 526 544 1, 526 471 1, 406 510 0, 326 510 1, 119 510 0, 119 279 1, 119 165 0, 176 105 1, 233 45 0, 338 45 1, 381 45 0, 449 59 1, 449 200 1, 356 200 1, 356 258 1
-555 62 0 492 555;62 0 1, 62 555 1, 141 555 1, 141 321 1, 414 321 1, 414 555 1, 492 555 1, 492 0 1, 414 0 1, 414 262 1, 141 262 1, 141 0 1
-213 68 0 146 555;68 0 1, 68 555 1, 146 555 1, 146 0 1
-384 18 -111 315 555;18 -87 1, 18 -19 1, 83 -48 0, 138 -48 1, 203 -48 0, 221 -18 1, 236 7 0, 236 68 1, 236 555 1, 315 555 1, 315 70 1, 315 -111 0, 135 -111 1, 74 -111 0
-512 72 0 494 555;72 0 1, 72 555 1, 146 555 1, 146 282 1, 376 555 1, 455 555 1, 232 290 1, 494 0 1, 394 0 1, 146 281 1, 146 0 1
-427 62 0 413 555;62 0 1, 62 555 1, 141 555 1, 141 59 1, 413 59 1, 413 0 1
-640 62 0 578 555;62 0 1, 62 555 1, 171 555 1, 324 126 1, 480 555 1, 578 555 1, 578 0 1, 504 0 1, 504 451 1, 353 37 1, 277 37 1, 130 453 1, 130 0 1
-555 62 0 492 555;62 0 1, 62 555 1, 139 555 1, 425 126 1, 425 555 1, 492 555 1, 492 0 1, 415 0 1, 129 429 1, 129 0 1
-597 35 -14 563 569;299 569 1, 419 569 0, 491 490 1, 563 410 0, 563 278 1, 563 144 0, 491 65 1, 419 -14 0, 295 -14 1, 189 -14 0, 121 51 1, 35 132 0, 35 278 1, 35 411 0, 107 490 1, 179 569 0, 299 510 1, 214 510 0, 167 449 1, 119 388 0, 119 278 1, 119 169 0, 167 107 1, 213 45 0, 297 45 1, 375 45 0, 421 95 1, 479 156 0, 479 278 1, 479 388 0, 431 449 1, 383 510 0
-512 63 0 494 555;63 0 1, 63 555 1, 280 555 1, 366 555 0, 403 545 1, 441 535 0, 465 507 1, 494 471 0, 494 408 1, 494 221 0, 257 221 1, 141 221 1, 141 0 1, 141 280 1, 254 280 1, 411 280 0, 411 404 1, 411 464 0, 370 481 1, 335 496 0, 255 496 1, 141 496 1
-597 35 -111 615 569;615 -48 1, 565 -111 1, 434 -68 0, 346 -10 1, 307 -14 0, 287 -14 1, 177 -14 0, 106 68 1, 35 149 0, 35 278 1, 35 410 0, 107 489 1, 178 569 0, 298 569 1, 419 569 0, 491 489 1, 563 410 0, 563 277 1, 563 160 0, 509 87 1, 488 58 0, 460 38 1, 446 27 0, 418 11 1, 510 -30 0, 297 510 1, 214 510 0, 167 448 1, 119 387 0, 119 278 1, 119 169 0, 167 107 1, 214 45 0, 297 45 1, 382 45 0, 430 106 1, 479 167 0, 479 275 1, 479 376 0, 440 436 1, 392 510 0
-555 62 0 538 555;62 0 1, 62 555 1, 294 555 1, 465 555 0, 465 417 1, 465 350 0, 423 306 1, 399 281 0, 353 260 1, 538 0 1, 441 0 1, 283 235 1, 141 235 1, 141 0 1, 141 294 1, 229 294 1, 309 294 0, 346 321 1, 384 350 0, 384 408 1, 384 456 0, 353 476 1, 323 496 0, 253 496 1, 141 496 1
-512 45 -14 466 569;45 20 1, 45 98 1, 156 45 0, 264 45 1, 385 45 0, 385 135 1, 385 181 0, 352 203 1, 326 220 0, 269 239 1, 193 264 1, 48 311 0, 48 421 1, 48 569 0, 251 569 1, 338 569 0, 432 545 1, 432 473 1, 334 510 0, 246 510 1, 124 510 0, 124 427 1, 124 394 0, 147 374 1, 171 354 0, 230 334 1, 308 309 1, 395 281 0, 431 244 1, 466 207 0, 466 146 1, 466 72 0, 411 29 1, 357 -14 0, 261 -14 1, 167 -14 0
-469 8 0 461 555;195 0 1, 195 496 1, 8 496 1, 8 555 1, 461 555 1, 461 496 1, 274 496 1, 274 0 1
-555 62 -14 492 555;62 555 1, 141 555 1, 141 205 1, 141 146 0, 151 118 1, 160 90 0, 187 71 1, 225 45 0, 288 45 1, 363 45 0, 393 80 1, 423 115 0, 423 202 1, 423 555 1, 492 555 1, 492 203 1, 492 129 0, 477 91 1, 463 52 0, 423 24 1, 370 -14 0, 281 -14 1, 168 -14 0, 115 39 1, 62 91 0, 62 206 1
-512 14 0 508 555;228 0 1, 14 555 1, 95 555 1, 272 99 1, 441 555 1, 508 555 1, 302 0 1
-725 9 0 716 555;152 0 1, 9 555 1, 85 555 1, 199 117 1, 329 555 1, 405 555 1, 530 121 1, 651 555 1, 716 555 1, 560 0 1, 482 0 1, 358 428 1, 230 0 1
-512 11 0 502 555;11 0 1, 215 276 1, 20 555 1, 113 555 1, 263 339 1, 423 555 1, 498 555 1, 299 289 1, 502 0 1, 409 0 1, 251 224 1, 85 0 1
-512 11 0 501 555;210 0 1, 210 231 1, 11 555 1, 101 555 1, 259 298 1, 428 555 1, 501 555 1, 289 233 1, 289 0 1
-469 38 0 431 555;38 0 1, 38 63 1, 336 496 1, 56 496 1, 56 555 1, 431 555 1, 431 496 1, 132 63 1, 431 63 1, 431 0 1
-213 56 -111 204 592;56 -111 1, 56 592 1, 204 592 1, 204 537 1, 121 537 1, 121 -56 1, 204 -56 1, 204 -111 1
-213 -22 -111 236 555;236 -111 1, 178 -111 1, -22 555 1, 36 555 1
-213 10 -111 158 592;158 592 1, 158 -111 1, 10 -111 1, 10 -56 1, 93 -56 1, 93 537 1, 10 537 1, 10 592 1
-360 14 222 347 555;180 431 1, 75 222 1, 14 222 1, 180 555 1, 347 222 1, 284 222 1
-427 0 -56 427 0;0 -56 1, 0 0 1, 427 0 1, 427 -56 1
-256 40 481 216 602;216 481 1, 160 481 1, 40 602 1, 125 602 1
-427 36 -9 412 416;290 52 1, 221 -9 0, 155 -9 1, 102 -9 0, 69 22 1, 36 53 0, 36 102 1, 36 241 0, 262 241 1, 279 241 1, 279 290 1, 279 361 0, 201 361 1, 140 361 0, 71 325 1, 71 386 1, 148 416 0, 215 416 1, 287 416 0, 320 386 1, 353 356 0, 353 290 1, 353 105 1, 353 42 0, 392 42 1, 398 42 0, 407 44 1, 412 3 1, 384 -9 0, 357 -9 1, 332 -9 0, 315 5 1, 299 19 0, 279 92 1, 279 197 1, 255 198 1, 233 199 0, 205 195 1, 112 182 0, 112 114 1, 112 51 0, 180 51 1, 227 51 0
-427 58 -9 395 592;132 264 1, 132 56 1, 183 46 0, 209 46 1, 315 46 0, 315 207 1, 315 275 0, 294 313 1, 273 352 0, 238 352 1, 191 352 0, 132 331 1, 153 369 0, 176 389 1, 209 416 0, 254 416 1, 317 416 0, 356 361 1, 395 306 0, 395 215 1, 395 108 0, 344 49 1, 294 -9 0, 203 -9 1, 168 -9 0, 132 0 1, 58 -5 1, 58 592 1, 132 592 1
-384 32 -9 347 416;347 12 1, 279 -9 0, 219 -9 1, 135 -9 0, 84 50 1, 32 109 0, 32 204 1, 32 303 0, 85 360 1, 137 416 0, 231 416 1, 278 416 0, 343 403 1, 343 341 1, 281 360 0, 245 360 1, 116 360 0, 116 204 1, 116 130 0, 149 90 1, 182 50 0, 242 50 1, 287 50 0, 347 76 1
-427 32 -9 369 592;295 143 1, 295 351 1, 243 361 0, 218 361 1, 112 361 0, 112 200 1, 112 133 0, 133 94 1, 154 56 0, 189 56 1, 236 56 0, 295 76 1, 274 38 0, 251 18 1, 218 -9 0, 173 -9 1, 110 -9 0, 71 46 1, 32 101 0, 32 193 1, 32 299 0, 83 358 1, 133 416 0, 224 416 1, 259 416 0, 295 407 1, 295 592 1, 369 592 1, 369 0 1, 295 0 1
-427 32 -9 383 416;307 248 1, 306 284 0, 299 303 1, 280 361 0, 215 361 1, 169 361 0, 143 334 1, 117 308 0, 111 248 1, 380 72 1, 380 13 1, 304 -9 0, 240 -9 1, 145 -9 0, 89 50 1, 32 109 0, 32 209 1, 32 304 0, 82 360 1, 132 416 0, 216 416 1, 314 416 0, 354 347 1, 383 296 0, 382 215 1, 382 192 1, 110 192 1, 114 147 0, 125 124 1, 158 47 0, 256 47 1, 312 47 0
-213 12 0 236 602;66 0 1, 66 352 1, 12 352 1, 12 407 1, 66 407 1, 66 456 1, 66 602 0, 181 602 1, 206 602 0, 236 592 1, 236 533 1, 209 546 0, 189 546 1, 162 546 0, 151 528 1, 140 510 0, 140 464 1, 140 407 1, 213 407 1, 213 352 1, 140 352 1, 140 0 1
-427 35 -158 372 416;298 162 1, 298 351 1, 245 361 0, 222 361 1, 115 361 0, 115 215 1, 115 150 0, 136 112 1, 157 74 0, 192 74 1, 239 74 0, 298 95 1, 277 57 0, 254 37 1, 221 9 0, 176 9 1, 113 9 0, 74 64 1, 35 119 0, 35 207 1, 35 306 0, 85 361 1, 135 416 0, 226 416 1, 261 416 0, 298 407 1, 372 407 1, 372 111 1, 372 15 0, 362 -31 1, 334 -158 0, 174 -158 1, 106 -158 0, 38 -135 1, 38 -71 1, 118 -102 0, 173 -102 1, 298 -102 0, 298 31 1
-427 58 0 374 592;58 0 1, 58 592 1, 132 592 1, 132 331 1, 159 369 0, 186 388 1, 224 416 0, 270 416 1, 374 416 0, 374 293 1, 374 0 1, 300 0 1, 300 269 1, 300 318 0, 290 335 1, 279 353 0, 251 353 1, 190 353 0, 132 264 1, 132 0 1
-171 48 0 122 555;48 0 1, 48 407 1, 122 407 1, 122 0 1, 48 481 1, 48 555 1, 122 555 1, 122 481 1
-171 -58 -157 124 555;-58 -145 1, -58 -87 1, -28 -102 0, -2 -102 1, 35 -102 0, 43 -74 1, 50 -51 0, 50 0 1, 50 407 1, 124 407 1, 124 0 1, 124 -157 0, 4 -157 1, -29 -157 0, 50 481 1, 50 555 1, 124 555 1, 124 481 1
-384 58 0 377 592;58 0 1, 58 592 1, 132 592 1, 132 210 1, 268 407 1, 339 407 1, 209 215 1, 377 0 1, 287 0 1, 132 209 1, 132 0 1
-171 48 0 122 592;48 0 1, 48 592 1, 122 592 1, 122 0 1
-640 58 0 587 416;58 0 1, 58 407 1, 132 407 1, 132 331 1, 164 380 0, 185 397 1, 210 416 0, 249 416 1, 298 416 0, 329 385 1, 346 366 0, 359 331 1, 392 380 0, 413 397 1, 437 416 0, 477 416 1, 587 416 0, 587 296 1, 587 0 1, 513 0 1, 512 285 1, 512 355 0, 458 355 1, 410 355 0, 359 273 1, 359 0 1, 285 0 1, 285 285 1, 285 355 0, 231 355 1, 183 355 0, 132 273 1, 132 0 1
-427 58 0 374 416;58 0 1, 58 407 1, 132 407 1, 132 331 1, 159 369 0, 186 388 1, 224 416 0, 270 416 1, 374 416 0, 374 293 1, 374 0 1, 300 0 1, 300 269 1, 300 318 0, 290 335 1, 279 353 0, 251 353 1, 190 353 0, 132 264 1, 132 0 1
-427 32 -9 395 416;213 416 1, 297 416 0, 346 359 1, 395 303 0, 395 204 1, 395 104 0, 346 47 1, 297 -9 0, 211 -9 1, 137 -9 0, 91 38 1, 32 96 0, 32 204 1, 32 302 0, 81 359 1, 130 416 0, 213 361 1, 112 361 0, 112 204 1, 112 46 0, 213 46 1, 315 46 0, 315 205 1, 315 361 0
-427 58 -148 395 416;132 -148 1, 58 -148 1, 58 407 1, 132 407 1, 132 331 1, 153 369 0, 176 389 1, 209 416 0, 254 416 1, 317 416 0, 356 361 1, 395 306 0, 395 215 1, 395 108 0, 344 49 1, 294 -9 0, 203 -9 1, 168 -9 0, 132 0 1, 132 264 1, 132 56 1, 183 46 0, 209 46 1, 315 46 0, 315 207 1, 315 275 0, 294 313 1, 273 352 0, 238 352 1, 191 352 0
-427 32 -148 369 416;295 407 1, 369 407 1, 369 -148 1, 295 -148 1, 295 76 1, 274 38 0, 251 18 1, 218 -9 0, 173 -9 1, 110 -9 0, 71 46 1, 32 101 0, 32 193 1, 32 299 0, 83 358 1, 133 416 0, 224 416 1, 259 416 0, 295 143 1, 295 351 1, 243 361 0, 218 361 1, 112 361 0, 112 200 1, 112 133 0, 133 94 1, 154 56 0, 189 56 1, 236 56 0
-256 58 0 251 416;58 0 1, 58 407 1, 132 407 1, 132 331 1, 148 369 0, 166 389 1, 193 416 0, 230 416 1, 237 416 0, 251 414 1, 251 345 1, 231 352 0, 219 352 1, 178 352 0, 132 269 1, 132 0 1
-384 44 -9 341 416;44 14 1, 44 82 1, 118 46 0, 181 46 1, 266 46 0, 266 106 1, 266 147 0, 207 167 1, 141 189 1, 46 220 0, 46 303 1, 46 416 0, 201 416 1, 246 416 0, 309 404 1, 309 342 1, 253 361 0, 196 361 1, 119 361 0, 119 310 1, 119 273 0, 172 256 1, 231 237 1, 341 201 0, 341 113 1, 341 57 0, 297 24 1, 254 -9 0, 178 -9 1, 119 -9 0
-213 11 -9 210 488;199 -2 1, 176 -9 0, 156 -9 1, 57 -9 0, 57 113 1, 57 352 1, 11 352 1, 11 407 1, 57 407 1, 57 481 1, 131 488 1, 131 407 1, 210 407 1, 210 352 1, 131 352 1, 131 126 1, 131 78 0, 139 62 1, 147 46 0, 174 46 1, 188 46 0, 199 50 1
-427 53 -9 369 407;295 0 1, 295 76 1, 268 38 0, 242 19 1, 203 -9 0, 157 -9 1, 53 -9 0, 53 115 1, 53 407 1, 127 407 1, 127 139 1, 127 90 0, 137 72 1, 148 54 0, 176 54 1, 237 54 0, 295 143 1, 295 407 1, 369 407 1, 369 0 1
-384 7 0 380 407;152 0 1, 7 407 1, 82 407 1, 195 90 1, 314 407 1, 380 407 1, 225 0 1
-555 4 0 549 407;102 0 1, 4 407 1, 77 407 1, 150 101 1, 244 407 1, 318 407 1, 400 99 1, 486 407 1, 549 407 1, 435 0 1, 361 0 1, 275 315 1, 177 0 1
-384 11 0 372 407;11 0 1, 143 215 1, 15 407 1, 101 407 1, 203 255 1, 294 407 1, 362 407 1, 238 202 1, 372 0 1, 287 0 1, 177 164 1, 79 0 1
-384 7 -148 380 407;152 0 1, 7 407 1, 82 407 1, 193 95 1, 314 407 1, 380 407 1, 164 -148 1, 87 -148 1
-384 28 0 356 407;28 0 1, 28 56 1, 261 352 1, 39 352 1, 39 407 1, 352 407 1, 352 352 1, 119 56 1, 356 56 1, 356 0 1
-257 9 -111 213 592;9 269 1, 32 269 1, 90 269 0, 90 330 1, 90 354 0, 84 381 1, 77 414 1, 69 447 0, 69 476 1, 69 537 0, 120 569 1, 156 591 0, 213 592 1, 213 537 1, 193 537 1, 167 537 0, 151 524 1, 134 510 0, 134 490 1, 134 482 0, 139 455 1, 145 416 1, 149 391 0, 149 361 1, 149 290 0, 94 241 1, 149 192 0, 149 120 1, 149 90 0, 145 65 1, 139 27 1, 134 -1 0, 134 -9 1, 134 -29 0, 151 -42 1, 168 -56 0, 193 -56 1, 213 -56 1, 213 -111 1, 153 -110 0, 117 -85 1, 69 -53 0, 69 6 1, 69 35 0, 77 67 1, 84 100 1, 90 127 0, 90 152 1, 90 213 0, 32 213 1, 9 213 1
-200 72 -111 128 592;72 -111 1, 72 592 1, 128 592 1, 128 -111 1
-257 44 -111 247 592;247 213 1, 224 213 1, 167 213 0, 167 152 1, 167 124 0, 173 100 1, 180 67 1, 187 36 0, 187 6 1, 187 -56 0, 135 -88 1, 100 -110 0, 44 -111 1, 44 -56 1, 63 -56 1, 89 -56 0, 105 -42 1, 122 -29 0, 122 -9 1, 122 1 0, 118 27 1, 111 65 1, 107 88 0, 107 120 1, 107 192 0, 162 241 1, 137 263 0, 125 285 1, 107 318 0, 107 361 1, 107 393 0, 111 416 1, 118 455 1, 122 480 0, 122 491 1, 122 510 0, 105 524 1, 88 537 0, 63 537 1, 44 537 1, 44 592 1, 104 591 0, 140 566 1, 187 534 0, 187 475 1, 187 445 0, 180 414 1, 173 381 1, 167 357 0, 167 329 1, 167 269 0, 224 269 1, 247 269 1
-449 39 155 409 290;95 167 1, 39 167 1, 40 206 0, 47 227 1, 69 290 0, 139 290 1, 176 290 0, 213 264 1, 255 235 1, 280 218 1, 291 210 0, 309 210 1, 352 210 0, 354 278 1, 409 278 1, 408 238 0, 401 217 1, 379 155 0, 310 155 1, 273 155 0, 235 180 1, 193 209 1, 168 227 1, 157 234 0, 140 234 1, 96 234 0
-512 7 0 503 666;7 0 1, 218 555 1, 296 555 1, 503 0 1, 419 0 1, 361 154 1, 138 154 1, 80 0 1, 161 212 1, 339 212 1, 250 450 1, 150 602 1, 150 666 1, 215 666 1, 215 602 1, 299 602 1, 299 666 1, 363 666 1, 363 602 1
-512 7 0 503 726;7 0 1, 218 555 1, 296 555 1, 503 0 1, 419 0 1, 361 154 1, 138 154 1, 80 0 1, 161 212 1, 339 212 1, 250 450 1, 257 726 1, 292 726 0, 317 701 1, 342 676 0, 342 641 1, 342 605 0, 317 580 1, 292 555 0, 256 555 1, 225 555 0, 202 576 1, 172 602 0, 172 641 1, 172 676 0, 197 701 1, 222 726 0, 257 693 1, 235 693 0, 219 678 1, 204 663 0, 204 641 1, 204 619 0, 219 603 1, 235 588 0, 256 588 1, 276 588 0, 291 600 1, 310 616 0, 310 641 1, 310 663 0, 294 678 1, 279 693 0
-555 44 -162 507 569;507 29 1, 421 -14 0, 323 -14 1, 186 -14 0, 115 60 1, 44 135 0, 44 277 1, 44 419 0, 116 494 1, 189 569 0, 327 569 1, 404 569 0, 506 545 1, 506 471 1, 390 510 0, 323 510 1, 228 510 0, 178 450 1, 128 390 0, 128 278 1, 128 167 0, 182 108 1, 235 48 0, 332 48 1, 414 48 0, 507 96 1, 288 0 1, 324 0 1, 302 -41 1, 329 -42 0, 348 -56 1, 374 -74 0, 374 -101 1, 374 -126 0, 352 -144 1, 330 -162 0, 298 -162 1, 273 -162 0, 244 -154 1, 244 -124 1, 263 -129 0, 283 -129 1, 322 -129 0, 322 -102 1, 322 -67 0, 252 -66 1
-512 72 0 491 722;72 0 1, 72 555 1, 474 555 1, 474 496 1, 150 496 1, 150 318 1, 437 318 1, 437 260 1, 150 260 1, 150 59 1, 491 59 1, 491 0 1, 224 602 1, 315 722 1, 400 722 1, 280 602 1
-555 62 0 492 689;62 0 1, 62 555 1, 139 555 1, 425 126 1, 425 555 1, 492 555 1, 492 0 1, 415 0 1, 129 429 1, 129 0 1, 162 602 1, 165 637 0, 174 656 1, 191 689 0, 232 689 1, 259 689 0, 282 675 1, 305 661 1, 326 648 0, 337 648 1, 362 648 0, 366 689 1, 412 689 1, 409 654 0, 400 635 1, 383 602 0, 342 602 1, 315 602 0, 292 616 1, 269 630 1, 249 643 0, 237 643 1, 212 643 0, 208 602 1
-597 35 -14 563 666;299 569 1, 418 569 0, 491 490 1, 563 410 0, 563 278 1, 563 144 0, 491 65 1, 418 -14 0, 295 -14 1, 189 -14 0, 120 51 1, 35 132 0, 35 278 1, 35 411 0, 107 490 1, 179 569 0, 299 510 1, 213 510 0, 166 449 1, 119 388 0, 119 278 1, 119 169 0, 166 107 1, 213 45 0, 297 45 1, 374 45 0, 420 95 1, 478 156 0, 478 278 1, 478 388 0, 431 449 1, 383 510 0, 192 602 1, 192 666 1, 257 666 1, 257 602 1, 340 602 1, 340 666 1, 405 666 1, 405 602 1
-555 62 -14 492 666;62 555 1, 141 555 1, 141 205 1, 141 146 0, 151 118 1, 160 90 0, 187 71 1, 225 45 0, 288 45 1, 363 45 0, 393 80 1, 423 115 0, 423 202 1, 423 555 1, 492 555 1, 492 203 1, 492 129 0, 477 91 1, 463 52 0, 423 24 1, 370 -14 0, 281 -14 1, 168 -14 0, 115 39 1, 62 91 0, 62 206 1, 176 602 1, 176 666 1, 240 666 1, 240 602 1, 324 602 1, 324 666 1, 389 666 1, 389 602 1
-427 36 -9 412 602;290 52 1, 221 -9 0, 155 -9 1, 102 -9 0, 69 22 1, 36 53 0, 36 102 1, 36 241 0, 262 241 1, 279 241 1, 279 290 1, 279 361 0, 201 361 1, 140 361 0, 71 325 1, 71 386 1, 148 416 0, 215 416 1, 287 416 0, 320 386 1, 353 356 0, 353 290 1, 353 105 1, 353 42 0, 392 42 1, 398 42 0, 407 44 1, 412 3 1, 384 -9 0, 357 -9 1, 332 -9 0, 315 5 1, 299 19 0, 279 92 1, 279 197 1, 255 198 1, 233 199 0, 205 195 1, 112 182 0, 112 114 1, 112 51 0, 180 51 1, 227 51 0, 168 481 1, 259 602 1, 344 602 1, 224 481 1
-427 36 -9 412 602;290 52 1, 221 -9 0, 155 -9 1, 102 -9 0, 69 22 1, 36 53 0, 36 102 1, 36 241 0, 262 241 1, 279 241 1, 279 290 1, 279 361 0, 201 361 1, 140 361 0, 71 325 1, 71 386 1, 148 416 0, 215 416 1, 287 416 0, 320 386 1, 353 356 0, 353 290 1, 353 105 1, 353 42 0, 392 42 1, 398 42 0, 407 44 1, 412 3 1, 384 -9 0, 357 -9 1, 332 -9 0, 315 5 1, 299 19 0, 279 92 1, 279 197 1, 255 198 1, 233 199 0, 205 195 1, 112 182 0, 112 114 1, 112 51 0, 180 51 1, 227 51 0, 280 481 1, 224 481 1, 104 602 1, 189 602 1
-427 36 -9 412 602;290 52 1, 221 -9 0, 155 -9 1, 102 -9 0, 69 22 1, 36 53 0, 36 102 1, 36 241 0, 262 241 1, 279 241 1, 279 290 1, 279 361 0, 201 361 1, 140 361 0, 71 325 1, 71 386 1, 148 416 0, 215 416 1, 287 416 0, 320 386 1, 353 356 0, 353 290 1, 353 105 1, 353 42 0, 392 42 1, 398 42 0, 407 44 1, 412 3 1, 384 -9 0, 357 -9 1, 332 -9 0, 315 5 1, 299 19 0, 279 92 1, 279 197 1, 255 198 1, 233 199 0, 205 195 1, 112 182 0, 112 114 1, 112 51 0, 180 51 1, 227 51 0, 61 481 1, 151 602 1, 233 602 1, 323 481 1, 268 481 1, 192 557 1, 192 557 1, 116 481 1
-427 36 -9 412 546;290 52 1, 221 -9 0, 155 -9 1, 102 -9 0, 69 22 1, 36 53 0, 36 102 1, 36 241 0, 262 241 1, 279 241 1, 279 290 1, 279 361 0, 201 361 1, 140 361 0, 71 325 1, 71 386 1, 148 416 0, 215 416 1, 287 416 0, 320 386 1, 353 356 0, 353 290 1, 353 105 1, 353 42 0, 392 42 1, 398 42 0, 407 44 1, 412 3 1, 384 -9 0, 357 -9 1, 332 -9 0, 315 5 1, 299 19 0, 279 92 1, 279 197 1, 255 198 1, 233 199 0, 205 195 1, 112 182 0, 112 114 1, 112 51 0, 180 51 1, 227 51 0, 85 481 1, 85 546 1, 150 546 1, 150 481 1, 234 481 1, 234 546 1, 298 546 1, 298 481 1
-427 36 -9 412 569;290 52 1, 221 -9 0, 155 -9 1, 102 -9 0, 69 22 1, 36 53 0, 36 102 1, 36 241 0, 262 241 1, 279 241 1, 279 290 1, 279 361 0, 201 361 1, 140 361 0, 71 325 1, 71 386 1, 148 416 0, 215 416 1, 287 416 0, 320 386 1, 353 356 0, 353 290 1, 353 105 1, 353 42 0, 392 42 1, 398 42 0, 407 44 1, 412 3 1, 384 -9 0, 357 -9 1, 332 -9 0, 315 5 1, 299 19 0, 279 92 1, 279 197 1, 255 198 1, 233 199 0, 205 195 1, 112 182 0, 112 114 1, 112 51 0, 180 51 1, 227 51 0, 67 481 1, 70 516 0, 79 535 1, 96 569 0, 137 569 1, 164 569 0, 187 555 1, 210 541 1, 231 528 0, 242 528 1, 267 528 0, 271 569 1, 317 569 1, 314 534 0, 305 515 1, 288 481 0, 247 481 1, 220 481 0, 197 496 1, 174 510 1, 154 522 0, 142 522 1, 117 522 0, 113 481 1
-427 36 -9 412 651;290 52 1, 221 -9 0, 155 -9 1, 102 -9 0, 69 22 1, 36 53 0, 36 102 1, 36 241 0, 262 241 1, 279 241 1, 279 290 1, 279 361 0, 201 361 1, 140 361 0, 71 325 1, 71 386 1, 148 416 0, 215 416 1, 287 416 0, 320 386 1, 353 356 0, 353 290 1, 353 105 1, 353 42 0, 392 42 1, 398 42 0, 407 44 1, 412 3 1, 384 -9 0, 357 -9 1, 332 -9 0, 315 5 1, 299 19 0, 279 92 1, 279 197 1, 255 198 1, 233 199 0, 205 195 1, 112 182 0, 112 114 1, 112 51 0, 180 51 1, 227 51 0, 192 651 1, 227 651 0, 252 627 1, 277 602 0, 277 567 1, 277 531 0, 252 506 1, 227 481 0, 191 481 1, 160 481 0, 137 501 1, 107 527 0, 107 566 1, 107 602 0, 132 626 1, 156 651 0, 192 619 1, 170 619 0, 154 603 1, 139 588 0, 139 566 1, 139 545 0, 154 529 1, 170 513 0, 191 513 1, 211 513 0, 226 526 1, 245 542 0, 245 567 1, 245 588 0, 229 603 1, 214 619 0
-384 32 -162 347 416;347 12 1, 279 -9 0, 219 -9 1, 135 -9 0, 84 50 1, 32 109 0, 32 204 1, 32 303 0, 85 360 1, 137 416 0, 231 416 1, 278 416 0, 343 403 1, 343 341 1, 281 360 0, 245 360 1, 116 360 0, 116 204 1, 116 130 0, 149 90 1, 182 50 0, 242 50 1, 287 50 0, 347 76 1, 235 0 1, 271 0 1, 248 -41 1, 275 -42 0, 295 -56 1, 321 -74 0, 321 -101 1, 321 -126 0, 299 -144 1, 277 -162 0, 245 -162 1, 220 -162 0, 191 -154 1, 191 -124 1, 210 -129 0, 230 -129 1, 269 -129 0, 269 -102 1, 269 -67 0, 199 -66 1
-427 32 -9 383 602;307 248 1, 306 284 0, 299 303 1, 280 361 0, 215 361 1, 169 361 0, 143 334 1, 117 308 0, 111 248 1, 380 72 1, 380 13 1, 304 -9 0, 240 -9 1, 145 -9 0, 89 50 1, 32 109 0, 32 209 1, 32 304 0, 82 360 1, 132 416 0, 216 416 1, 314 416 0, 354 347 1, 383 296 0, 382 215 1, 382 192 1, 110 192 1, 114 147 0, 125 124 1, 158 47 0, 256 47 1, 312 47 0, 168 481 1, 259 602 1, 344 602 1, 224 481 1
-427 32 -9 383 602;307 248 1, 306 284 0, 299 303 1, 280 361 0, 215 361 1, 169 361 0, 143 334 1, 117 308 0, 111 248 1, 380 72 1, 380 13 1, 304 -9 0, 240 -9 1, 145 -9 0, 89 50 1, 32 109 0, 32 209 1, 32 304 0, 82 360 1, 132 416 0, 216 416 1, 314 416 0, 354 347 1, 383 296 0, 382 215 1, 382 192 1, 110 192 1, 114 147 0, 125 124 1, 158 47 0, 256 47 1, 312 47 0, 280 481 1, 224 481 1, 104 602 1, 189 602 1
-427 32 -9 383 602;307 248 1, 306 284 0, 299 303 1, 280 361 0, 215 361 1, 169 361 0, 143 334 1, 117 308 0, 111 248 1, 380 72 1, 380 13 1, 304 -9 0, 240 -9 1, 145 -9 0, 89 50 1, 32 109 0, 32 209 1, 32 304 0, 82 360 1, 132 416 0, 216 416 1, 314 416 0, 354 347 1, 383 296 0, 382 215 1, 382 192 1, 110 192 1, 114 147 0, 125 124 1, 158 47 0, 256 47 1, 312 47 0, 61 481 1, 151 602 1, 233 602 1, 323 481 1, 268 481 1, 192 557 1, 192 557 1, 116 481 1
-427 32 -9 383 546;307 248 1, 306 284 0, 299 303 1, 280 361 0, 215 361 1, 169 361 0, 143 334 1, 117 308 0, 111 248 1, 380 72 1, 380 13 1, 304 -9 0, 240 -9 1, 145 -9 0, 89 50 1, 32 109 0, 32 209 1, 32 304 0, 82 360 1, 132 416 0, 216 416 1, 314 416 0, 354 347 1, 383 296 0, 382 215 1, 382 192 1, 110 192 1, 114 147 0, 125 124 1, 158 47 0, 256 47 1, 312 47 0, 85 481 1, 85 546 1, 150 546 1, 150 481 1, 234 481 1, 234 546 1, 298 546 1, 298 481 1
-171 40 0 216 602;48 0 1, 48 407 1, 122 407 1, 122 0 1, 40 481 1, 131 602 1, 216 602 1, 96 481 1
-171 -24 0 152 602;48 0 1, 48 407 1, 122 407 1, 122 0 1, 152 481 1, 96 481 1, -24 602 1, 61 602 1
-171 -67 0 195 602;48 0 1, 48 407 1, 122 407 1, 122 0 1, -67 481 1, 23 602 1, 105 602 1, 195 481 1, 140 481 1, 64 557 1, 64 557 1, -12 481 1
-171 -21 0 192 546;48 0 1, 48 407 1, 122 407 1, 122 0 1, -21 481 1, -21 546 1, 44 546 1, 44 481 1, 127 481 1, 127 546 1, 192 546 1, 192 481 1
-427 58 0 374 569;58 0 1, 58 407 1, 132 407 1, 132 331 1, 159 369 0, 186 388 1, 224 416 0, 270 416 1, 374 416 0, 374 293 1, 374 0 1, 300 0 1, 300 269 1, 300 318 0, 290 335 1, 279 353 0, 251 353 1, 190 353 0, 132 264 1, 132 0 1, 67 481 1, 70 516 0, 79 535 1, 96 569 0, 137 569 1, 164 569 0, 187 555 1, 210 541 1, 231 528 0, 242 528 1, 267 528 0, 271 569 1, 317 569 1, 314 534 0, 305 515 1, 288 481 0, 247 481 1, 220 481 0, 197 496 1, 174 510 1, 154 522 0, 142 522 1, 117 522 0, 113 481 1
-427 32 -9 395 602;213 416 1, 297 416 0, 346 359 1, 395 303 0, 395 204 1, 395 104 0, 346 47 1, 297 -9 0, 211 -9 1, 137 -9 0, 91 38 1, 32 96 0, 32 204 1, 32 302 0, 81 359 1, 130 416 0, 213 361 1, 112 361 0, 112 204 1, 112 46 0, 213 46 1, 315 46 0, 315 205 1, 315 361 0, 168 481 1, 259 602 1, 344 602 1, 224 481 1
-427 32 -9 395 602;213 416 1, 297 416 0, 346 359 1, 395 303 0, 395 204 1, 395 104 0, 346 47 1, 297 -9 0, 211 -9 1, 137 -9 0, 91 38 1, 32 96 0, 32 204 1, 32 302 0, 81 359 1, 130 416 0, 213 361 1, 112 361 0, 112 204 1, 112 46 0, 213 46 1, 315 46 0, 315 205 1, 315 361 0, 280 481 1, 224 481 1, 104 602 1, 189 602 1
-427 32 -9 395 602;213 416 1, 297 416 0, 346 359 1, 395 303 0, 395 204 1, 395 104 0, 346 47 1, 297 -9 0, 211 -9 1, 137 -9 0, 91 38 1, 32 96 0, 32 204 1, 32 302 0, 81 359 1, 130 416 0, 213 361 1, 112 361 0, 112 204 1, 112 46 0, 213 46 1, 315 46 0, 315 205 1, 315 361 0, 61 481 1, 151 602 1, 233 602 1, 323 481 1, 268 481 1, 192 557 1, 192 557 1, 116 481 1
-427 32 -9 395 546;213 416 1, 297 416 0, 346 359 1, 395 303 0, 395 204 1, 395 104 0, 346 47 1, 297 -9 0, 211 -9 1, 137 -9 0, 91 38 1, 32 96 0, 32 204 1, 32 302 0, 81 359 1, 130 416 0, 213 361 1, 112 361 0, 112 204 1, 112 46 0, 213 46 1, 315 46 0, 315 205 1, 315 361 0, 85 481 1, 85 546 1, 150 546 1, 150 481 1, 234 481 1, 234 546 1, 298 546 1, 298 481 1
-427 32 -9 395 569;213 416 1, 297 416 0, 346 359 1, 395 303 0, 395 204 1, 395 104 0, 346 47 1, 297 -9 0, 211 -9 1, 137 -9 0, 91 38 1, 32 96 0, 32 204 1, 32 302 0, 81 359 1, 130 416 0, 213 361 1, 112 361 0, 112 204 1, 112 46 0, 213 46 1, 315 46 0, 315 205 1, 315 361 0, 67 481 1, 70 516 0, 79 535 1, 96 569 0, 137 569 1, 164 569 0, 187 555 1, 210 541 1, 231 528 0, 242 528 1, 267 528 0, 271 569 1, 317 569 1, 314 534 0, 305 515 1, 288 481 0, 247 481 1, 220 481 0, 197 496 1, 174 510 1, 154 522 0, 142 522 1, 117 522 0, 113 481 1
-427 53 -9 369 602;295 0 1, 295 76 1, 268 38 0, 242 19 1, 203 -9 0, 157 -9 1, 53 -9 0, 53 115 1, 53 407 1, 127 407 1, 127 139 1, 127 90 0, 137 72 1, 148 54 0, 176 54 1, 237 54 0, 295 143 1, 295 407 1, 369 407 1, 369 0 1, 168 481 1, 259 602 1, 344 602 1, 224 481 1
-427 53 -9 369 602;295 0 1, 295 76 1, 268 38 0, 242 19 1, 203 -9 0, 157 -9 1, 53 -9 0, 53 115 1, 53 407 1, 127 407 1, 127 139 1, 127 90 0, 137 72 1, 148 54 0, 176 54 1, 237 54 0, 295 143 1, 295 407 1, 369 407 1, 369 0 1, 280 481 1, 224 481 1, 104 602 1, 189 602 1
-427 53 -9 369 602;295 0 1, 295 76 1, 268 38 0, 242 19 1, 203 -9 0, 157 -9 1, 53 -9 0, 53 115 1, 53 407 1, 127 407 1, 127 139 1, 127 90 0, 137 72 1, 148 54 0, 176 54 1, 237 54 0, 295 143 1, 295 407 1, 369 407 1, 369 0 1, 61 481 1, 151 602 1, 233 602 1, 323 481 1, 268 481 1, 192 557 1, 192 557 1, 116 481 1
-427 53 -9 369 546;295 0 1, 295 76 1, 268 38 0, 242 19 1, 203 -9 0, 157 -9 1, 53 -9 0, 53 115 1, 53 407 1, 127 407 1, 127 139 1, 127 90 0, 137 72 1, 148 54 0, 176 54 1, 237 54 0, 295 143 1, 295 407 1, 369 407 1, 369 0 1, 85 481 1, 85 546 1, 150 546 1, 150 481 1, 234 481 1, 234 546 1, 298 546 1, 298 481 1
-427 56 -111 371 555;177 -111 1, 186 315 1, 56 305 1, 56 361 1, 186 352 1, 177 555 1, 251 555 1, 241 352 1, 371 361 1, 371 305 1, 241 315 1, 251 -111 1
-307 43 347 265 569;154 569 1, 199 569 0, 232 536 1, 265 504 0, 265 458 1, 265 412 0, 232 380 1, 199 347 0, 152 347 1, 113 347 0, 82 373 1, 43 408 0, 43 458 1, 43 504 0, 75 536 1, 108 569 0, 154 523 1, 127 523 0, 108 504 1, 89 485 0, 89 458 1, 89 432 0, 108 413 1, 127 393 0, 153 393 1, 177 393 0, 195 409 1, 219 428 0, 219 458 1, 219 485 0, 200 504 1, 180 523 0
-427 65 0 380 555;237 0 1, 237 65 1, 166 74 0, 123 120 1, 65 181 0, 65 278 1, 65 379 0, 124 435 1, 165 475 0, 237 486 1, 237 555 1, 274 555 1, 274 486 1, 324 483 0, 380 468 1, 380 406 1, 314 429 0, 274 432 1, 274 117 1, 325 117 0, 380 143 1, 380 87 1, 324 65 0, 274 65 1, 274 0 1, 237 429 1, 215 426 0, 203 420 1, 146 390 0, 146 277 1, 146 199 0, 180 158 1, 200 135 0, 237 122 1
-427 45 0 362 569;45 0 1, 45 65 1, 124 90 0, 124 183 1, 124 269 1, 57 269 1, 57 324 1, 124 324 1, 124 405 1, 124 485 0, 162 527 1, 200 569 0, 272 569 1, 310 569 0, 357 558 1, 357 495 1, 308 513 0, 269 513 1, 198 513 0, 198 427 1, 198 324 1, 279 324 1, 279 269 1, 198 269 1, 198 221 1, 198 153 0, 180 120 1, 166 92 0, 133 65 1, 362 65 1, 362 0 1
-427 48 -125 379 569;48 -98 1, 48 -30 1, 142 -69 0, 203 -69 1, 250 -69 0, 281 -51 1, 311 -32 0, 311 -1 1, 311 27 0, 288 43 1, 270 56 0, 225 75 1, 159 104 1, 50 150 0, 50 230 1, 50 284 0, 105 342 1, 52 379 0, 52 434 1, 52 494 0, 101 531 1, 149 569 0, 229 569 1, 284 569 0, 358 551 1, 358 491 1, 280 513 0, 228 513 1, 179 513 0, 149 494 1, 119 475 0, 119 445 1, 119 404 0, 185 377 1, 236 357 1, 314 325 0, 343 296 1, 373 266 0, 373 221 1, 373 168 0, 317 104 1, 379 66 0, 379 3 1, 379 -56 0, 329 -90 1, 279 -125 0, 196 -125 1, 138 -125 0, 281 128 1, 308 166 0, 308 200 1, 308 228 0, 290 245 1, 272 263 0, 226 282 1, 143 317 1, 115 282 0, 115 249 1, 115 198 0, 201 162 1
-269 30 208 239 416;135 416 1, 178 416 0, 208 386 1, 239 355 0, 239 312 1, 239 269 0, 208 239 1, 177 208 0, 133 208 1, 96 208 0, 67 233 1, 30 265 0, 30 312 1, 30 356 0, 61 386 1, 92 416 0
-413 33 -111 338 555;190 -111 1, 190 278 1, 122 284 0, 83 316 1, 33 358 0, 33 433 1, 33 499 0, 69 527 1, 105 555 0, 190 555 1, 338 555 1, 338 -111 1, 292 -111 1, 292 509 1, 237 509 1, 237 -111 1
-469 48 -9 437 602;48 0 1, 48 432 1, 48 527 0, 83 564 1, 117 602 0, 206 602 1, 349 602 0, 349 500 1, 349 451 0, 300 399 1, 261 357 0, 261 337 1, 261 312 0, 303 281 1, 372 230 1, 437 182 0, 437 111 1, 437 -9 0, 296 -9 1, 234 -9 0, 183 11 1, 183 76 1, 253 46 0, 296 46 1, 368 46 0, 368 104 1, 368 141 0, 324 174 1, 244 236 1, 195 273 0, 195 315 1, 195 351 0, 238 407 1, 275 455 0, 275 487 1, 275 546 0, 201 546 1, 157 546 0, 140 528 1, 122 509 0, 122 463 1, 122 0 1
-566 6 0 561 555;283 555 1, 398 555 0, 479 474 1, 561 393 0, 561 278 1, 561 162 0, 479 81 1, 398 0 0, 280 0 1, 179 0 0, 104 66 1, 6 152 0, 6 278 1, 6 393 0, 87 474 1, 169 555 0, 283 516 1, 185 516 0, 115 446 1, 45 376 0, 45 278 1, 45 181 0, 115 110 1, 184 40 0, 281 40 1, 370 40 0, 437 96 1, 521 168 0, 521 278 1, 521 376 0, 451 446 1, 381 516 0, 192 126 1, 192 426 1, 286 426 1, 377 426 0, 377 353 1, 377 301 0, 324 266 1, 415 126 1, 359 126 1, 278 252 1, 240 252 1, 240 126 1, 237 289 1, 251 289 1, 330 289 0, 330 347 1, 330 396 0, 264 396 1, 237 396 1
-566 6 0 561 555;283 555 1, 398 555 0, 479 474 1, 561 393 0, 561 278 1, 561 162 0, 479 81 1, 398 0 0, 280 0 1, 179 0 0, 104 66 1, 6 152 0, 6 278 1, 6 393 0, 87 474 1, 169 555 0, 283 516 1, 185 516 0, 115 446 1, 45 376 0, 45 278 1, 45 181 0, 115 110 1, 184 40 0, 281 40 1, 370 40 0, 437 96 1, 521 168 0, 521 278 1, 521 376 0, 451 446 1, 381 516 0, 384 137 1, 333 119 0, 293 119 1, 226 119 0, 183 163 1, 140 207 0, 140 276 1, 140 348 0, 182 391 1, 224 434 0, 295 434 1, 332 434 0, 375 425 1, 384 423 1, 384 379 1, 336 399 0, 298 399 1, 251 399 0, 222 365 1, 193 332 0, 193 277 1, 193 222 0, 223 191 1, 253 159 0, 303 159 1, 343 159 0, 384 181 1
-768 83 278 662 555;176 278 1, 176 509 1, 83 509 1, 83 555 1, 333 555 1, 333 509 1, 240 509 1, 240 278 1, 380 278 1, 380 555 1, 467 555 1, 525 395 1, 582 555 1, 662 555 1, 662 278 1, 597 278 1, 597 479 1, 536 301 1, 491 301 1, 430 463 1, 430 278 1
-256 40 481 216 602;40 481 1, 131 602 1, 216 602 1, 96 481 1
-256 21 481 234 546;21 481 1, 21 546 1, 86 546 1, 86 481 1, 170 481 1, 170 546 1, 234 546 1, 234 481 1
-213 0 0 0 0;
-768 7 0 746 555;224 213 1, 381 213 1, 381 460 1, 7 0 1, 360 555 1, 730 555 1, 730 496 1, 459 496 1, 459 318 1, 693 318 1, 693 260 1, 459 260 1, 459 59 1, 746 59 1, 746 0 1, 381 0 1, 381 155 1, 187 155 1, 89 0 1
-597 35 -14 563 569;39 -14 1, 104 69 1, 74 107 0, 58 146 1, 35 204 0, 35 278 1, 35 410 0, 107 490 1, 179 569 0, 298 569 1, 389 569 0, 459 519 1, 498 569 1, 563 569 1, 496 484 1, 525 446 0, 541 407 1, 563 350 0, 563 277 1, 563 144 0, 491 65 1, 419 -14 0, 299 -14 1, 211 -14 0, 142 34 1, 104 -14 1, 184 88 1, 233 45 0, 299 45 1, 384 45 0, 431 106 1, 479 167 0, 479 276 1, 479 363 0, 448 423 1, 416 465 1, 366 510 0, 299 510 1, 214 510 0, 167 449 1, 119 388 0, 119 279 1, 119 190 0, 152 129 1
-213 0 0 0 0;
-449 39 0 409 444;196 111 1, 196 250 1, 39 250 1, 39 305 1, 196 305 1, 196 444 1, 252 444 1, 252 305 1, 409 305 1, 409 250 1, 252 250 1, 252 111 1, 39 0 1, 39 56 1, 409 56 1, 409 0 1
-213 0 0 0 0;
-213 0 0 0 0;
-427 9 0 404 555;170 0 1, 170 129 1, 59 129 1, 59 176 1, 170 176 1, 170 231 1, 59 231 1, 59 278 1, 170 278 1, 9 555 1, 95 555 1, 216 346 1, 216 346 1, 338 555 1, 404 555 1, 244 278 1, 355 278 1, 355 231 1, 244 231 1, 244 176 1, 355 176 1, 355 129 1, 244 129 1, 244 0 1
-427 53 -148 369 407;53 407 1, 127 407 1, 127 139 1, 127 90 0, 137 72 1, 148 54 0, 176 54 1, 237 54 0, 295 143 1, 295 407 1, 369 407 1, 369 0 1, 295 0 1, 295 76 1, 236 -7 0, 176 -7 1, 152 -7 0, 127 9 1, 127 -148 1, 53 -148 1
-213 0 0 0 0;
-213 0 0 0 0;
-213 0 0 0 0;
-213 0 0 0 0;
-213 0 0 0 0;
-284 32 308 267 569;182 343 1, 144 308 0, 105 308 1, 74 308 0, 53 328 1, 32 348 0, 32 378 1, 32 464 0, 161 464 1, 179 464 1, 179 490 1, 179 531 0, 133 531 1, 97 531 0, 54 509 1, 54 551 1, 102 569 0, 144 569 1, 234 569 0, 234 492 1, 234 380 1, 234 345 0, 255 346 1, 257 346 1, 258 346 0, 261 346 1, 263 346 0, 265 347 1, 267 315 1, 248 308 0, 231 308 1, 194 308 0, 184 343 1, 179 374 1, 179 431 1, 164 431 1, 88 431 0, 88 385 1, 88 350 0, 124 350 1, 150 350 0
-281 28 308 252 569;140 569 1, 192 569 0, 222 534 1, 252 499 0, 252 439 1, 252 378 0, 222 343 1, 192 308 0, 139 308 1, 93 308 0, 64 337 1, 28 373 0, 28 439 1, 28 499 0, 58 534 1, 89 569 0, 140 531 1, 87 531 0, 87 439 1, 87 347 0, 140 347 1, 194 347 0, 194 440 1, 194 531 0
-213 0 0 0 0;
-683 36 -9 638 416;288 92 1, 288 197 1, 260 198 1, 235 199 0, 207 195 1, 110 181 0, 110 114 1, 110 51 0, 184 51 1, 236 51 0, 344 369 1, 400 416 0, 472 416 1, 638 416 0, 638 215 1, 638 192 1, 360 192 1, 365 148 0, 375 125 1, 408 47 0, 512 47 1, 568 47 0, 636 72 1, 636 13 1, 559 -9 0, 494 -9 1, 423 -9 0, 374 23 1, 347 41 0, 322 77 1, 279 31 0, 248 12 1, 211 -9 0, 160 -9 1, 104 -9 0, 70 21 1, 36 53 0, 36 102 1, 36 241 0, 270 241 1, 288 241 1, 288 290 1, 288 329 0, 269 345 1, 251 361 0, 205 361 1, 141 361 0, 71 325 1, 71 386 1, 148 416 0, 218 416 1, 303 416 0, 364 248 1, 564 248 1, 563 284 0, 556 302 1, 536 361 0, 469 361 1, 422 361 0, 396 333 1, 371 308 0
-469 54 -9 416 416;131 22 1, 108 -9 1, 54 -9 1, 99 53 1, 54 116 0, 54 204 1, 54 303 0, 102 360 1, 151 416 0, 236 416 1, 296 416 0, 339 385 1, 362 416 1, 416 416 1, 371 354 1, 416 291 0, 416 203 1, 416 105 0, 367 48 1, 319 -9 0, 234 -9 1, 174 -9 0, 169 75 1, 170 75 1, 185 59 0, 198 53 1, 215 46 0, 234 46 1, 336 46 0, 336 204 1, 336 251 0, 325 291 1, 301 332 1, 300 333 1, 272 361 0, 235 361 1, 134 361 0, 134 205 1, 134 152 0, 145 116 1
-469 69 -162 398 407;309 407 1, 309 333 1, 235 333 1, 235 407 1, 309 259 1, 309 239 1, 309 147 0, 248 99 1, 214 73 1, 148 22 0, 148 -33 1, 148 -107 0, 251 -107 1, 314 -107 0, 398 -78 1, 398 -141 1, 316 -162 0, 246 -162 1, 169 -162 0, 125 -137 1, 69 -105 0, 69 -34 1, 69 36 0, 141 81 1, 171 99 1, 209 122 0, 222 147 1, 235 171 0, 235 218 1, 235 259 1
-256 91 -148 165 407;165 407 1, 165 333 1, 91 333 1, 91 407 1, 156 259 1, 165 -37 1, 165 -148 1, 91 -148 1, 91 -37 1, 100 259 1
-449 32 111 402 333;32 278 1, 32 333 1, 402 333 1, 402 111 1, 347 111 1, 347 278 1
-213 0 0 0 0;
-427 18 -111 384 569;18 -111 1, 94 269 1, 32 269 1, 32 324 1, 105 324 1, 113 363 1, 154 569 0, 300 569 1, 339 569 0, 384 558 1, 373 500 1, 332 514 0, 299 514 1, 218 514 0, 195 398 1, 180 324 1, 251 324 1, 251 269 1, 169 269 1, 94 -111 1
-213 0 0 0 0;
-213 0 0 0 0;
-427 43 37 376 370;376 342 1, 265 204 1, 376 65 1, 339 37 1, 191 204 1, 339 370 1, 228 342 1, 117 204 1, 228 65 1, 191 37 1, 43 204 1, 191 370 1
-427 51 37 384 370;51 65 1, 162 204 1, 51 342 1, 88 370 1, 236 204 1, 88 37 1, 199 65 1, 310 204 1, 199 342 1, 236 370 1, 384 204 1, 236 37 1
-768 93 0 676 74;93 0 1, 93 74 1, 167 74 1, 167 0 1, 347 0 1, 347 74 1, 421 74 1, 421 0 1, 602 0 1, 602 74 1, 676 74 1, 676 0 1
-427 0 0 0 0;
-512 7 0 503 722;7 0 1, 218 555 1, 296 555 1, 503 0 1, 419 0 1, 361 154 1, 138 154 1, 80 0 1, 161 212 1, 339 212 1, 250 450 1, 312 602 1, 257 602 1, 137 722 1, 222 722 1
-512 7 0 503 689;7 0 1, 218 555 1, 296 555 1, 503 0 1, 419 0 1, 361 154 1, 138 154 1, 80 0 1, 161 212 1, 339 212 1, 250 450 1, 132 602 1, 135 636 0, 144 656 1, 161 689 0, 202 689 1, 229 689 0, 252 675 1, 275 661 1, 296 648 0, 307 648 1, 332 648 0, 336 689 1, 382 689 1, 379 654 0, 370 635 1, 353 602 0, 312 602 1, 285 602 0, 262 616 1, 239 630 1, 219 643 0, 207 643 1, 182 643 0, 178 602 1
-597 35 -14 563 689;299 569 1, 418 569 0, 491 490 1, 563 410 0, 563 278 1, 563 144 0, 491 65 1, 418 -14 0, 295 -14 1, 189 -14 0, 120 51 1, 35 132 0, 35 278 1, 35 411 0, 107 490 1, 179 569 0, 299 510 1, 213 510 0, 166 449 1, 119 388 0, 119 278 1, 119 169 0, 166 107 1, 213 45 0, 297 45 1, 374 45 0, 420 95 1, 478 156 0, 478 278 1, 478 388 0, 431 449 1, 383 510 0, 174 602 1, 176 636 0, 186 656 1, 203 689 0, 244 689 1, 271 689 0, 294 675 1, 316 661 1, 338 648 0, 349 648 1, 373 648 0, 377 689 1, 423 689 1, 421 654 0, 411 635 1, 395 602 0, 354 602 1, 327 602 0, 303 616 1, 281 630 1, 260 643 0, 248 643 1, 224 643 0, 220 602 1
-768 35 -14 747 569;423 0 1, 423 22 1, 362 -14 0, 291 -14 1, 176 -14 0, 105 66 1, 35 147 0, 35 278 1, 35 411 0, 106 490 1, 177 569 0, 294 569 1, 363 569 0, 423 534 1, 423 555 1, 730 555 1, 730 496 1, 502 496 1, 502 318 1, 693 318 1, 693 260 1, 502 260 1, 502 59 1, 747 59 1, 747 0 1, 423 213 1, 423 342 1, 423 430 0, 393 470 1, 363 510 0, 296 510 1, 212 510 0, 165 449 1, 119 388 0, 119 278 1, 119 167 0, 165 106 1, 213 45 0, 296 45 1, 423 45 0
-725 32 -9 680 416;371 341 1, 395 375 0, 422 392 1, 461 416 0, 516 416 1, 612 416 0, 650 348 1, 678 297 0, 680 192 1, 412 192 1, 419 120 0, 447 87 1, 481 46 0, 560 46 1, 618 46 0, 680 73 1, 680 14 1, 608 -9 0, 542 -9 1, 474 -9 0, 434 12 1, 404 29 0, 373 65 1, 350 32 0, 323 15 1, 283 -9 0, 227 -9 1, 138 -9 0, 85 48 1, 32 106 0, 32 204 1, 32 302 0, 86 359 1, 138 416 0, 228 416 1, 287 416 0, 327 388 1, 350 372 0, 228 361 1, 111 361 0, 111 205 1, 111 137 0, 134 98 1, 163 46 0, 229 46 1, 337 46 0, 337 204 1, 337 276 0, 314 315 1, 288 361 0, 414 243 1, 601 243 1, 600 291 0, 588 317 1, 567 361 0, 514 361 1, 462 361 0, 437 321 1, 420 295 0
-427 38 204 390 250;38 204 1, 38 250 1, 390 250 1, 390 204 1
-768 37 204 731 241;37 204 1, 37 241 1, 731 241 1, 731 204 1
-256 21 398 225 592;225 592 1, 225 564 1, 198 551 0, 198 480 1, 198 472 1, 225 472 1, 225 398 1, 151 398 1, 151 460 1, 151 573 0, 95 592 1, 95 564 1, 69 551 0, 69 480 1, 69 472 1, 95 472 1, 95 398 1, 21 398 1, 21 460 1, 22 573 0
-256 31 398 234 592;31 398 1, 31 426 1, 57 440 0, 57 510 1, 57 518 1, 31 518 1, 31 592 1, 105 592 1, 105 530 1, 104 417 0, 160 398 1, 160 426 1, 187 440 0, 187 510 1, 187 518 1, 160 518 1, 160 592 1, 234 592 1, 234 530 1, 234 417 0
-171 35 380 127 592;127 592 1, 127 564 1, 91 554 0, 91 480 1, 91 472 1, 127 472 1, 127 380 1, 35 380 1, 35 460 1, 35 582 0
-171 44 380 136 592;44 380 1, 44 407 1, 80 417 0, 80 492 1, 80 500 1, 44 500 1, 44 592 1, 136 592 1, 136 512 1, 136 389 0
-449 39 0 409 444;39 194 1, 39 250 1, 409 250 1, 409 194 1, 178 352 1, 178 444 1, 270 444 1, 270 352 1, 178 0 1, 178 93 1, 270 93 1, 270 0 1
-213 0 0 0 0;
-384 7 -148 380 546;152 0 1, 7 407 1, 82 407 1, 193 95 1, 314 407 1, 380 407 1, 164 -148 1, 87 -148 1, 85 481 1, 85 546 1, 150 546 1, 150 481 1, 234 481 1, 234 546 1, 298 546 1, 298 481 1
-512 11 0 501 666;210 0 1, 210 231 1, 11 555 1, 101 555 1, 259 298 1, 428 555 1, 501 555 1, 289 233 1, 289 0 1, 158 602 1, 158 666 1, 223 666 1, 223 602 1, 306 602 1, 306 666 1, 371 666 1, 371 602 1
-128 -165 -14 293 569;-165 -14 1, 243 569 1, 293 569 1, -114 -14 1
-427 46 110 381 446;137 168 1, 78 110 1, 46 143 1, 104 201 1, 80 240 0, 80 278 1, 80 315 0, 104 354 1, 46 413 1, 78 446 1, 137 387 1, 174 411 0, 213 411 1, 253 411 0, 290 387 1, 348 446 1, 381 413 1, 323 354 1, 347 315 0, 347 278 1, 347 240 0, 323 201 1, 381 143 1, 348 110 1, 290 168 1, 253 144 0, 213 144 1, 174 144 0, 213 365 1, 177 365 0, 152 339 1, 126 314 0, 126 277 1, 126 241 0, 152 216 1, 176 191 0, 212 191 1, 246 191 0, 270 211 1, 300 237 0, 300 278 1, 300 314 0, 275 339 1, 250 365 0
-256 28 37 213 370;213 342 1, 102 204 1, 213 65 1, 176 37 1, 28 204 1, 176 370 1
-256 43 37 228 370;43 65 1, 154 204 1, 43 342 1, 80 370 1, 228 204 1, 80 37 1
-384 12 0 336 602;66 0 1, 66 352 1, 12 352 1, 12 407 1, 66 407 1, 66 456 1, 66 602 0, 181 602 1, 206 602 0, 236 592 1, 236 533 1, 209 546 0, 189 546 1, 162 546 0, 151 528 1, 140 510 0, 140 464 1, 140 407 1, 336 407 1, 336 0 1, 262 0 1, 262 352 1, 140 352 1, 140 0 1, 262 481 1, 262 555 1, 336 555 1, 336 481 1
-384 12 0 336 602;66 0 1, 66 352 1, 12 352 1, 12 407 1, 66 407 1, 66 456 1, 66 602 0, 179 602 1, 262 592 1, 336 592 1, 336 0 1, 262 0 1, 262 537 1, 246 540 1, 214 546 0, 192 546 1, 159 546 0, 148 524 1, 140 505 0, 140 464 1, 140 407 1, 206 407 1, 206 352 1, 140 352 1, 140 0 1
-427 56 -111 371 555;177 -111 1, 186 93 1, 56 83 1, 56 139 1, 186 129 1, 186 315 1, 56 305 1, 56 361 1, 186 352 1, 177 555 1, 251 555 1, 241 352 1, 371 361 1, 371 305 1, 241 315 1, 241 129 1, 371 139 1, 371 83 1, 241 93 1, 251 -111 1
-213 60 184 153 277;60 184 1, 60 277 1, 153 277 1, 153 184 1
-171 39 -111 132 93;39 -111 1, 39 -83 1, 75 -73 0, 75 -8 1, 75 0 1, 39 0 1, 39 93 1, 132 93 1, 132 12 1, 131 -101 0
-256 26 -120 230 74;26 -120 1, 26 -93 1, 53 -79 0, 53 -9 1, 53 0 1, 26 0 1, 26 74 1, 100 74 1, 100 12 1, 100 -102 0, 156 -120 1, 156 -93 1, 182 -78 0, 182 -9 1, 182 0 1, 156 0 1, 156 74 1, 230 74 1, 230 12 1, 230 -102 0
-768 9 -14 759 569;128 555 1, 181 555 0, 213 518 1, 245 480 0, 245 417 1, 245 352 0, 213 315 1, 182 278 0, 126 278 1, 78 278 0, 48 308 1, 9 347 0, 9 416 1, 9 480 0, 41 518 1, 74 555 0, 127 518 1, 65 518 0, 65 417 1, 65 315 0, 128 315 1, 190 315 0, 190 416 1, 190 463 0, 173 491 1, 156 518 0, 377 278 1, 431 278 0, 463 240 1, 495 203 0, 495 139 1, 495 74 0, 463 37 1, 431 0 0, 376 0 1, 328 0 0, 297 30 1, 259 69 0, 259 139 1, 259 203 0, 291 240 1, 323 278 0, 377 241 1, 315 241 0, 315 139 1, 315 37 0, 377 37 1, 440 37 0, 440 138 1, 440 186 0, 423 213 1, 405 241 0, 641 278 1, 695 278 0, 727 240 1, 759 203 0, 759 140 1, 759 74 0, 727 37 1, 695 0 0, 640 0 1, 592 0 0, 561 31 1, 523 69 0, 523 139 1, 523 203 0, 555 240 1, 587 278 0, 640 241 1, 578 241 0, 578 139 1, 578 37 0, 641 37 1, 704 37 0, 704 139 1, 704 186 0, 686 213 1, 669 241 0, 23 -14 1, 431 569 1, 482 569 1, 74 -14 1
-512 7 0 503 722;7 0 1, 218 555 1, 296 555 1, 503 0 1, 419 0 1, 361 154 1, 138 154 1, 80 0 1, 161 212 1, 339 212 1, 250 450 1, 126 602 1, 216 722 1, 298 722 1, 388 602 1, 333 602 1, 257 677 1, 257 677 1, 181 602 1
-512 72 0 491 722;72 0 1, 72 555 1, 474 555 1, 474 496 1, 150 496 1, 150 318 1, 437 318 1, 437 260 1, 150 260 1, 150 59 1, 491 59 1, 491 0 1, 150 602 1, 240 722 1, 322 722 1, 412 602 1, 357 602 1, 281 677 1, 281 677 1, 205 602 1
-512 7 0 503 722;7 0 1, 218 555 1, 296 555 1, 503 0 1, 419 0 1, 361 154 1, 138 154 1, 80 0 1, 161 212 1, 339 212 1, 250 450 1, 201 602 1, 292 722 1, 377 722 1, 257 602 1
-512 72 0 491 666;72 0 1, 72 555 1, 474 555 1, 474 496 1, 150 496 1, 150 318 1, 437 318 1, 437 260 1, 150 260 1, 150 59 1, 491 59 1, 491 0 1, 169 602 1, 169 666 1, 234 666 1, 234 602 1, 317 602 1, 317 666 1, 382 666 1, 382 602 1
-512 72 0 491 722;72 0 1, 72 555 1, 474 555 1, 474 496 1, 150 496 1, 150 318 1, 437 318 1, 437 260 1, 150 260 1, 150 59 1, 491 59 1, 491 0 1, 335 602 1, 280 602 1, 159 722 1, 245 722 1
-213 51 0 227 722;68 0 1, 68 555 1, 146 555 1, 146 0 1, 51 602 1, 142 722 1, 227 722 1, 107 602 1
-213 -24 0 238 722;68 0 1, 68 555 1, 146 555 1, 146 0 1, -24 602 1, 66 722 1, 148 722 1, 238 602 1, 183 602 1, 107 677 1, 107 677 1, 31 602 1
-213 0 0 213 666;68 0 1, 68 555 1, 146 555 1, 146 0 1, 0 602 1, 0 666 1, 65 666 1, 65 602 1, 149 602 1, 149 666 1, 213 666 1, 213 602 1
-213 -14 0 162 722;68 0 1, 68 555 1, 146 555 1, 146 0 1, 162 602 1, 107 602 1, -14 722 1, 72 722 1
-597 35 -14 563 722;299 569 1, 418 569 0, 491 490 1, 563 410 0, 563 278 1, 563 144 0, 491 65 1, 418 -14 0, 295 -14 1, 189 -14 0, 120 51 1, 35 132 0, 35 278 1, 35 411 0, 107 490 1, 179 569 0, 299 510 1, 213 510 0, 166 449 1, 119 388 0, 119 278 1, 119 169 0, 166 107 1, 213 45 0, 297 45 1, 374 45 0, 420 95 1, 478 156 0, 478 278 1, 478 388 0, 431 449 1, 383 510 0, 243 602 1, 333 722 1, 419 722 1, 299 602 1
-597 35 -14 563 722;299 569 1, 418 569 0, 491 490 1, 563 410 0, 563 278 1, 563 144 0, 491 65 1, 418 -14 0, 295 -14 1, 189 -14 0, 120 51 1, 35 132 0, 35 278 1, 35 411 0, 107 490 1, 179 569 0, 299 510 1, 213 510 0, 166 449 1, 119 388 0, 119 278 1, 119 169 0, 166 107 1, 213 45 0, 297 45 1, 374 45 0, 420 95 1, 478 156 0, 478 278 1, 478 388 0, 431 449 1, 383 510 0, 167 602 1, 258 722 1, 339 722 1, 430 602 1, 374 602 1, 299 677 1, 298 677 1, 223 602 1
-427 0 -14 405 568;141 201 1, 156 141 0, 178 108 1, 218 48 0, 290 48 1, 337 48 0, 405 75 1, 405 10 1, 332 -14 0, 281 -14 1, 194 -14 0, 140 38 1, 101 74 0, 82 134 1, 75 156 0, 66 201 1, 0 201 1, 19 248 1, 61 248 1, 60 276 1, 60 277 0, 60 284 1, 61 300 0, 62 321 1, 0 321 1, 19 368 1, 69 368 1, 84 430 0, 102 462 1, 161 568 0, 293 568 1, 341 568 0, 405 552 1, 405 483 1, 342 510 0, 294 510 1, 228 510 0, 188 462 1, 166 434 0, 154 400 1, 149 386 0, 144 368 1, 356 368 1, 337 321 1, 136 321 1, 134 294 0, 134 276 1, 135 248 1, 307 248 1, 288 201 1
-597 35 -14 563 722;299 569 1, 418 569 0, 491 490 1, 563 410 0, 563 278 1, 563 144 0, 491 65 1, 418 -14 0, 295 -14 1, 189 -14 0, 120 51 1, 35 132 0, 35 278 1, 35 411 0, 107 490 1, 179 569 0, 299 510 1, 213 510 0, 166 449 1, 119 388 0, 119 278 1, 119 169 0, 166 107 1, 213 45 0, 297 45 1, 374 45 0, 420 95 1, 478 156 0, 478 278 1, 478 388 0, 431 449 1, 383 510 0, 354 602 1, 299 602 1, 178 722 1, 264 722 1
-555 62 -14 492 722;62 555 1, 141 555 1, 141 205 1, 141 146 0, 151 118 1, 160 90 0, 187 71 1, 225 45 0, 288 45 1, 363 45 0, 393 80 1, 423 115 0, 423 202 1, 423 555 1, 492 555 1, 492 203 1, 492 129 0, 477 91 1, 463 52 0, 423 24 1, 370 -14 0, 281 -14 1, 168 -14 0, 115 39 1, 62 91 0, 62 206 1, 227 602 1, 317 722 1, 402 722 1, 282 602 1
-555 62 -14 492 722;62 555 1, 141 555 1, 141 205 1, 141 146 0, 151 118 1, 160 90 0, 187 71 1, 225 45 0, 288 45 1, 363 45 0, 393 80 1, 423 115 0, 423 202 1, 423 555 1, 492 555 1, 492 203 1, 492 129 0, 477 91 1, 463 52 0, 423 24 1, 370 -14 0, 281 -14 1, 168 -14 0, 115 39 1, 62 91 0, 62 206 1, 151 602 1, 241 722 1, 323 722 1, 413 602 1, 358 602 1, 282 677 1, 282 677 1, 206 602 1
-555 62 -14 492 722;62 555 1, 141 555 1, 141 205 1, 141 146 0, 151 118 1, 160 90 0, 187 71 1, 225 45 0, 288 45 1, 363 45 0, 393 80 1, 423 115 0, 423 202 1, 423 555 1, 492 555 1, 492 203 1, 492 129 0, 477 91 1, 463 52 0, 423 24 1, 370 -14 0, 281 -14 1, 168 -14 0, 115 39 1, 62 91 0, 62 206 1, 338 602 1, 282 602 1, 162 722 1, 247 722 1
-171 48 0 122 407;48 0 1, 48 407 1, 122 407 1, 122 0 1
-256 -3 481 259 602;-3 481 1, 87 602 1, 169 602 1, 259 481 1, 204 481 1, 128 557 1, 128 557 1, 52 481 1
-256 3 481 253 569;3 481 1, 6 516 0, 15 535 1, 32 569 0, 73 569 1, 100 569 0, 123 555 1, 146 541 1, 167 528 0, 178 528 1, 203 528 0, 207 569 1, 253 569 1, 250 534 0, 241 515 1, 224 481 0, 183 481 1, 156 481 0, 133 496 1, 110 510 1, 90 522 0, 78 522 1, 53 522 0, 49 481 1
-256 8 481 248 537;8 481 1, 8 537 1, 248 537 1, 248 481 1
-256 3 481 253 602;3 602 1, 49 602 1, 57 566 0, 77 551 1, 97 537 0, 128 537 1, 163 537 0, 183 555 1, 200 570 0, 207 602 1, 253 602 1, 247 551 0, 219 521 1, 184 481 0, 128 481 1, 69 481 0, 33 524 1, 9 554 0
-256 91 481 165 555;91 481 1, 91 555 1, 165 555 1, 165 481 1
-256 43 481 213 651;128 651 1, 163 651 0, 188 627 1, 213 602 0, 213 567 1, 213 531 0, 188 506 1, 163 481 0, 127 481 1, 96 481 0, 73 501 1, 43 527 0, 43 566 1, 43 602 0, 68 626 1, 92 651 0, 128 619 1, 106 619 0, 90 603 1, 75 588 0, 75 566 1, 75 545 0, 90 529 1, 106 513 0, 127 513 1, 147 513 0, 162 526 1, 181 542 0, 181 567 1, 181 588 0, 165 603 1, 150 619 0
-256 63 -162 193 0;107 0 1, 143 0 1, 120 -41 1, 147 -42 0, 167 -56 1, 193 -74 0, 193 -101 1, 193 -126 0, 171 -144 1, 149 -162 0, 117 -162 1, 92 -162 0, 63 -154 1, 63 -124 1, 82 -129 0, 102 -129 1, 141 -129 0, 141 -102 1, 141 -67 0, 71 -66 1
-256 -19 481 275 602;-19 481 1, 71 602 1, 143 602 1, 23 481 1, 113 481 1, 203 602 1, 275 602 1, 155 481 1
-256 64 -139 192 0;123 0 1, 163 0 1, 115 -30 0, 115 -67 1, 115 -103 0, 158 -103 1, 178 -103 0, 192 -98 1, 192 -128 1, 169 -139 0, 140 -139 1, 64 -139 0, 64 -80 1, 64 -34 0
-256 -3 481 259 602;259 602 1, 169 481 1, 87 481 1, -3 602 1, 52 602 1, 128 526 1, 128 526 1, 204 602 1
-427 0 -14 405 568;141 201 1, 156 141 0, 178 108 1, 218 48 0, 290 48 1, 337 48 0, 405 75 1, 405 10 1, 332 -14 0, 281 -14 1, 194 -14 0, 140 38 1, 101 74 0, 82 134 1, 75 156 0, 66 201 1, 0 201 1, 19 248 1, 61 248 1, 60 276 1, 60 277 0, 60 284 1, 61 300 0, 62 321 1, 0 321 1, 19 368 1, 69 368 1, 84 430 0, 102 462 1, 161 568 0, 293 568 1, 341 568 0, 405 552 1, 405 483 1, 342 510 0, 294 510 1, 228 510 0, 188 462 1, 166 434 0, 154 400 1, 149 386 0, 144 368 1, 356 368 1, 337 321 1, 136 321 1, 134 294 0, 134 276 1, 135 248 1, 307 248 1, 288 201 1
-213 0 0 0 0;
-200 72 -111 128 592;72 -111 1, 72 167 1, 128 167 1, 128 -111 1, 72 315 1, 72 592 1, 128 592 1, 128 315 1
-256 33 194 223 250;33 194 1, 33 250 1, 223 250 1, 223 194 1
-427 37 546 390 602;37 546 1, 37 602 1, 390 602 1, 390 546 1
-256 28 222 240 564;28 222 1, 28 268 1, 53 312 0, 96 350 1, 122 373 1, 181 425 0, 181 471 1, 181 525 0, 120 525 1, 85 525 0, 36 500 1, 36 543 1, 85 564 0, 130 564 1, 179 564 0, 210 538 1, 240 513 0, 240 473 1, 240 420 0, 171 363 1, 151 346 1, 101 305 0, 92 268 1, 238 268 1, 238 222 1
-256 28 214 234 564;32 507 1, 32 549 1, 75 564 0, 117 564 1, 223 564 0, 223 486 1, 223 450 0, 197 426 1, 182 413 0, 151 402 1, 199 389 0, 218 364 1, 234 343 0, 234 312 1, 234 267 0, 201 240 1, 169 214 0, 112 214 1, 74 214 0, 28 225 1, 28 270 1, 78 251 0, 108 251 1, 175 251 0, 175 312 1, 175 381 0, 78 381 1, 59 381 1, 59 416 1, 75 416 1, 167 416 0, 167 478 1, 167 526 0, 108 526 1, 74 526 0
-213 60 184 153 277;60 184 1, 60 277 1, 153 277 1, 153 184 1
-256 46 222 176 564;120 222 1, 120 507 1, 46 488 1, 46 531 1, 176 564 1, 176 222 1
-641 44 -14 594 569;117 222 1, 117 507 1, 44 488 1, 44 531 1, 173 564 1, 173 222 1, 497 0 1, 497 91 1, 344 91 1, 344 133 1, 495 333 1, 548 333 1, 548 135 1, 594 135 1, 594 91 1, 548 91 1, 548 0 1, 393 135 1, 497 135 1, 497 271 1, 72 -14 1, 480 569 1, 530 569 1, 122 -14 1
-641 44 -14 594 569;382 0 1, 382 46 1, 406 88 0, 450 128 1, 477 151 1, 535 203 0, 535 249 1, 535 303 0, 475 303 1, 440 303 0, 390 278 1, 390 321 1, 440 341 0, 485 341 1, 534 341 0, 564 316 1, 594 291 0, 594 250 1, 594 196 0, 525 140 1, 505 124 1, 455 83 0, 447 46 1, 593 46 1, 593 0 1, 53 -14 1, 461 569 1, 512 569 1, 104 -14 1, 117 222 1, 117 507 1, 44 488 1, 44 531 1, 173 564 1, 173 222 1
-641 42 -14 599 569;46 507 1, 46 549 1, 89 564 0, 131 564 1, 237 564 0, 237 486 1, 237 450 0, 211 426 1, 195 413 0, 165 402 1, 213 389 0, 232 364 1, 248 343 0, 248 312 1, 248 267 0, 215 240 1, 183 214 0, 126 214 1, 87 214 0, 42 225 1, 42 270 1, 92 251 0, 122 251 1, 189 251 0, 189 312 1, 189 381 0, 92 381 1, 72 381 1, 72 416 1, 89 416 1, 180 416 0, 180 478 1, 180 526 0, 122 526 1, 88 526 0, 502 0 1, 502 91 1, 349 91 1, 349 133 1, 500 333 1, 552 333 1, 552 135 1, 599 135 1, 599 91 1, 552 91 1, 552 0 1, 398 135 1, 502 135 1, 502 271 1, 107 -14 1, 515 569 1, 565 569 1, 157 -14 1
-555 2 0 520 555;62 0 1, 62 255 1, 2 255 1, 2 314 1, 62 314 1, 62 555 1, 240 555 1, 520 555 0, 520 290 1, 520 152 0, 447 76 1, 374 0 0, 241 0 1, 141 59 1, 235 59 1, 435 59 0, 435 281 1, 435 412 0, 356 466 1, 333 482 0, 301 488 1, 263 496 0, 199 496 1, 141 496 1, 141 314 1, 266 314 1, 266 255 1, 141 255 1
-449 44 42 404 402;44 81 1, 185 222 1, 44 363 1, 84 402 1, 224 261 1, 365 402 1, 404 363 1, 264 222 1, 404 81 1, 365 42 1, 224 183 1, 84 42 1
-512 11 0 501 722;210 0 1, 210 231 1, 11 555 1, 101 555 1, 259 298 1, 428 555 1, 501 555 1, 289 233 1, 289 0 1, 204 602 1, 294 722 1, 380 722 1, 259 602 1
-512 63 0 494 555;63 0 1, 63 555 1, 141 555 1, 141 450 1, 280 450 1, 366 450 0, 403 440 1, 441 431 0, 465 402 1, 494 366 0, 494 304 1, 494 116 0, 257 116 1, 141 116 1, 141 0 1, 141 175 1, 254 175 1, 411 175 0, 411 299 1, 411 359 0, 370 376 1, 335 391 0, 255 391 1, 141 391 1
-427 32 -9 395 629;47 538 1, 47 594 1, 122 594 0, 183 565 1, 241 629 1, 270 596 1, 222 542 1, 269 506 0, 294 478 1, 395 366 0, 395 206 1, 395 105 0, 347 48 1, 299 -9 0, 216 -9 1, 132 -9 0, 82 48 1, 32 105 0, 32 201 1, 32 297 0, 81 352 1, 129 407 0, 214 407 1, 234 407 0, 259 402 1, 230 456 0, 177 494 1, 122 432 1, 92 465 1, 140 518 1, 102 538 0, 212 352 1, 165 352 0, 138 312 1, 111 272 0, 111 199 1, 111 46 0, 214 46 1, 316 46 0, 316 199 1, 316 352 0
-384 7 -148 380 602;152 0 1, 7 407 1, 82 407 1, 193 95 1, 314 407 1, 380 407 1, 164 -148 1, 87 -148 1, 168 481 1, 259 602 1, 344 602 1, 224 481 1
-427 58 -148 395 592;132 -148 1, 58 -148 1, 58 592 1, 132 592 1, 132 331 1, 153 369 0, 176 389 1, 209 416 0, 254 416 1, 317 416 0, 356 361 1, 395 306 0, 395 215 1, 395 108 0, 344 49 1, 294 -9 0, 203 -9 1, 168 -9 0, 132 0 1, 132 264 1, 132 56 1, 183 46 0, 209 46 1, 315 46 0, 315 207 1, 315 275 0, 294 313 1, 273 352 0, 238 352 1, 191 352 0
-514 8 0 504 657;8 0 1, 219 555 1, 297 555 1, 504 0 1, 419 0 1, 362 154 1, 139 154 1, 81 0 1, 161 212 1, 340 212 1, 251 450 1, 137 602 1, 137 657 1, 378 657 1, 378 602 1
-432 36 -9 412 537;290 52 1, 221 -9 0, 155 -9 1, 102 -9 0, 69 22 1, 36 53 0, 36 102 1, 36 241 0, 262 241 1, 279 241 1, 279 290 1, 279 361 0, 201 361 1, 140 361 0, 71 325 1, 71 386 1, 148 416 0, 215 416 1, 287 416 0, 320 386 1, 353 356 0, 353 290 1, 353 105 1, 353 42 0, 392 42 1, 398 42 0, 407 44 1, 412 3 1, 384 -9 0, 357 -9 1, 332 -9 0, 315 5 1, 299 19 0, 279 92 1, 279 197 1, 255 198 1, 233 199 0, 205 195 1, 112 182 0, 112 114 1, 112 51 0, 180 51 1, 227 51 0, 72 481 1, 72 537 1, 312 537 1, 312 481 1
-514 8 0 504 722;8 0 1, 219 555 1, 297 555 1, 504 0 1, 419 0 1, 362 154 1, 139 154 1, 81 0 1, 161 212 1, 340 212 1, 251 450 1, 133 722 1, 179 722 1, 187 687 0, 207 672 1, 227 657 0, 258 657 1, 293 657 0, 313 675 1, 329 690 0, 336 722 1, 383 722 1, 377 672 0, 349 641 1, 314 602 0, 258 602 1, 199 602 0, 163 645 1, 139 674 0
-432 36 -9 412 602;290 52 1, 221 -9 0, 155 -9 1, 102 -9 0, 69 22 1, 36 53 0, 36 102 1, 36 241 0, 262 241 1, 279 241 1, 279 290 1, 279 361 0, 201 361 1, 140 361 0, 71 325 1, 71 386 1, 148 416 0, 215 416 1, 287 416 0, 320 386 1, 353 356 0, 353 290 1, 353 105 1, 353 42 0, 392 42 1, 398 42 0, 407 44 1, 412 3 1, 384 -9 0, 357 -9 1, 332 -9 0, 315 5 1, 299 19 0, 279 92 1, 279 197 1, 255 198 1, 233 199 0, 205 195 1, 112 182 0, 112 114 1, 112 51 0, 180 51 1, 227 51 0, 67 602 1, 113 602 1, 121 566 0, 141 551 1, 161 537 0, 192 537 1, 227 537 0, 247 555 1, 264 570 0, 271 602 1, 317 602 1, 311 551 0, 283 521 1, 248 481 0, 192 481 1, 133 481 0, 97 524 1, 73 554 0
-512 7 -139 503 555;7 0 1, 218 555 1, 296 555 1, 503 0 1, 419 0 1, 361 154 1, 138 154 1, 80 0 1, 161 212 1, 339 212 1, 250 450 1, 419 0 1, 459 0 1, 411 -30 0, 411 -67 1, 411 -103 0, 454 -103 1, 474 -103 0, 488 -98 1, 488 -128 1, 464 -139 0, 435 -139 1, 359 -139 0, 359 -80 1, 359 -34 0
-427 36 -139 412 416;290 52 1, 221 -9 0, 155 -9 1, 102 -9 0, 69 22 1, 36 53 0, 36 102 1, 36 241 0, 262 241 1, 279 241 1, 279 290 1, 279 361 0, 201 361 1, 140 361 0, 71 325 1, 71 386 1, 148 416 0, 215 416 1, 287 416 0, 320 386 1, 353 356 0, 353 290 1, 353 105 1, 353 42 0, 392 42 1, 398 42 0, 407 44 1, 412 3 1, 384 -9 0, 357 -9 1, 332 -9 0, 315 5 1, 299 19 0, 279 92 1, 279 197 1, 255 198 1, 233 199 0, 205 195 1, 112 182 0, 112 114 1, 112 51 0, 180 51 1, 227 51 0, 315 0 1, 355 0 1, 307 -30 0, 307 -67 1, 307 -103 0, 350 -103 1, 370 -103 0, 384 -98 1, 384 -128 1, 361 -139 0, 332 -139 1, 256 -139 0, 256 -80 1, 256 -34 0
-555 44 -14 507 722;507 29 1, 421 -14 0, 323 -14 1, 186 -14 0, 115 60 1, 44 135 0, 44 277 1, 44 419 0, 116 494 1, 189 569 0, 327 569 1, 404 569 0, 506 545 1, 506 471 1, 390 510 0, 323 510 1, 228 510 0, 178 450 1, 128 390 0, 128 278 1, 128 167 0, 182 108 1, 235 48 0, 332 48 1, 414 48 0, 507 96 1, 264 602 1, 355 722 1, 440 722 1, 320 602 1
-384 32 -9 347 602;347 12 1, 279 -9 0, 219 -9 1, 135 -9 0, 84 50 1, 32 109 0, 32 204 1, 32 303 0, 85 360 1, 137 416 0, 231 416 1, 278 416 0, 343 403 1, 343 341 1, 281 360 0, 245 360 1, 116 360 0, 116 204 1, 116 130 0, 149 90 1, 182 50 0, 242 50 1, 287 50 0, 347 76 1, 168 481 1, 259 602 1, 344 602 1, 224 481 1
-555 44 -14 507 722;507 29 1, 421 -14 0, 323 -14 1, 186 -14 0, 115 60 1, 44 135 0, 44 277 1, 44 419 0, 116 494 1, 189 569 0, 327 569 1, 404 569 0, 506 545 1, 506 471 1, 390 510 0, 323 510 1, 228 510 0, 178 450 1, 128 390 0, 128 278 1, 128 167 0, 182 108 1, 235 48 0, 332 48 1, 414 48 0, 507 96 1, 189 602 1, 279 722 1, 361 722 1, 451 602 1, 396 602 1, 320 677 1, 320 677 1, 244 602 1
-384 32 -9 359 602;347 12 1, 279 -9 0, 219 -9 1, 135 -9 0, 84 50 1, 32 109 0, 32 204 1, 32 303 0, 85 360 1, 137 416 0, 231 416 1, 278 416 0, 343 403 1, 343 341 1, 281 360 0, 245 360 1, 116 360 0, 116 204 1, 116 130 0, 149 90 1, 182 50 0, 242 50 1, 287 50 0, 347 76 1, 96 481 1, 187 602 1, 269 602 1, 359 481 1, 303 481 1, 228 557 1, 227 557 1, 152 481 1
-555 44 -14 507 675;507 29 1, 421 -14 0, 323 -14 1, 186 -14 0, 115 60 1, 44 135 0, 44 277 1, 44 419 0, 116 494 1, 189 569 0, 327 569 1, 404 569 0, 506 545 1, 506 471 1, 390 510 0, 323 510 1, 228 510 0, 178 450 1, 128 390 0, 128 278 1, 128 167 0, 182 108 1, 235 48 0, 332 48 1, 414 48 0, 507 96 1, 283 602 1, 283 675 1, 357 675 1, 357 602 1
-384 32 -9 347 555;347 12 1, 279 -9 0, 219 -9 1, 135 -9 0, 84 50 1, 32 109 0, 32 204 1, 32 303 0, 85 360 1, 137 416 0, 231 416 1, 278 416 0, 343 403 1, 343 341 1, 281 360 0, 245 360 1, 116 360 0, 116 204 1, 116 130 0, 149 90 1, 182 50 0, 242 50 1, 287 50 0, 347 76 1, 191 481 1, 191 555 1, 264 555 1, 264 481 1
-555 44 -14 507 722;507 29 1, 421 -14 0, 323 -14 1, 186 -14 0, 115 60 1, 44 135 0, 44 277 1, 44 419 0, 116 494 1, 189 569 0, 327 569 1, 404 569 0, 506 545 1, 506 471 1, 390 510 0, 323 510 1, 228 510 0, 178 450 1, 128 390 0, 128 278 1, 128 167 0, 182 108 1, 235 48 0, 332 48 1, 414 48 0, 507 96 1, 451 722 1, 361 602 1, 279 602 1, 189 722 1, 244 722 1, 320 646 1, 320 646 1, 396 722 1
-384 32 -9 387 602;347 12 1, 279 -9 0, 219 -9 1, 135 -9 0, 84 50 1, 32 109 0, 32 204 1, 32 303 0, 85 360 1, 137 416 0, 231 416 1, 278 416 0, 343 403 1, 343 341 1, 281 360 0, 245 360 1, 116 360 0, 116 204 1, 116 130 0, 149 90 1, 182 50 0, 242 50 1, 287 50 0, 347 76 1, 387 602 1, 297 481 1, 215 481 1, 125 602 1, 180 602 1, 256 526 1, 256 526 1, 332 602 1
-555 62 0 520 722;62 0 1, 62 555 1, 240 555 1, 520 555 0, 520 290 1, 520 152 0, 447 76 1, 374 0 0, 241 0 1, 141 59 1, 235 59 1, 435 59 0, 435 281 1, 435 412 0, 356 466 1, 333 482 0, 301 488 1, 263 496 0, 199 496 1, 141 496 1, 387 722 1, 297 602 1, 215 602 1, 125 722 1, 180 722 1, 255 646 1, 256 646 1, 332 722 1
-472 32 -9 472 592;295 143 1, 295 351 1, 243 361 0, 218 361 1, 112 361 0, 112 200 1, 112 133 0, 133 94 1, 154 56 0, 189 56 1, 236 56 0, 295 76 1, 274 38 0, 251 18 1, 218 -9 0, 173 -9 1, 110 -9 0, 71 46 1, 32 101 0, 32 193 1, 32 299 0, 83 358 1, 133 416 0, 224 416 1, 259 416 0, 295 407 1, 295 592 1, 369 592 1, 369 0 1, 295 0 1, 398 422 1, 398 444 1, 427 452 0, 427 512 1, 427 518 1, 398 518 1, 398 592 1, 472 592 1, 472 528 1, 472 430 0
-555 2 0 520 555;62 0 1, 62 255 1, 2 255 1, 2 314 1, 62 314 1, 62 555 1, 240 555 1, 520 555 0, 520 290 1, 520 152 0, 447 76 1, 374 0 0, 241 0 1, 141 59 1, 235 59 1, 435 59 0, 435 281 1, 435 412 0, 356 466 1, 333 482 0, 301 488 1, 263 496 0, 199 496 1, 141 496 1, 141 314 1, 266 314 1, 266 255 1, 141 255 1
-427 32 -9 425 592;295 472 1, 175 472 1, 175 518 1, 295 518 1, 295 592 1, 369 592 1, 369 518 1, 425 518 1, 425 472 1, 369 472 1, 369 0 1, 295 0 1, 295 76 1, 274 38 0, 251 18 1, 218 -9 0, 173 -9 1, 110 -9 0, 71 46 1, 32 101 0, 32 193 1, 32 299 0, 83 358 1, 133 416 0, 224 416 1, 259 416 0, 295 407 1, 295 143 1, 295 351 1, 243 361 0, 218 361 1, 112 361 0, 112 200 1, 112 133 0, 133 94 1, 154 56 0, 189 56 1, 236 56 0
-512 72 0 491 657;72 0 1, 72 555 1, 474 555 1, 474 496 1, 150 496 1, 150 318 1, 437 318 1, 437 260 1, 150 260 1, 150 59 1, 491 59 1, 491 0 1, 150 602 1, 150 657 1, 391 657 1, 391 602 1
-427 32 -9 383 537;307 248 1, 306 284 0, 299 303 1, 280 361 0, 215 361 1, 169 361 0, 143 334 1, 117 308 0, 111 248 1, 380 72 1, 380 13 1, 304 -9 0, 240 -9 1, 145 -9 0, 89 50 1, 32 109 0, 32 209 1, 32 304 0, 82 360 1, 132 416 0, 216 416 1, 314 416 0, 354 347 1, 383 296 0, 382 215 1, 382 192 1, 110 192 1, 114 147 0, 125 124 1, 158 47 0, 256 47 1, 312 47 0, 72 481 1, 72 537 1, 312 537 1, 312 481 1
-512 72 0 491 722;72 0 1, 72 555 1, 474 555 1, 474 496 1, 150 496 1, 150 318 1, 437 318 1, 437 260 1, 150 260 1, 150 59 1, 491 59 1, 491 0 1, 152 722 1, 198 722 1, 206 687 0, 226 672 1, 245 657 0, 276 657 1, 312 657 0, 332 675 1, 348 690 0, 355 722 1, 401 722 1, 395 672 0, 368 641 1, 333 602 0, 276 602 1, 218 602 0, 182 645 1, 158 674 0
-427 32 -9 383 602;307 248 1, 306 284 0, 299 303 1, 280 361 0, 215 361 1, 169 361 0, 143 334 1, 117 308 0, 111 248 1, 380 72 1, 380 13 1, 304 -9 0, 240 -9 1, 145 -9 0, 89 50 1, 32 109 0, 32 209 1, 32 304 0, 82 360 1, 132 416 0, 216 416 1, 314 416 0, 354 347 1, 383 296 0, 382 215 1, 382 192 1, 110 192 1, 114 147 0, 125 124 1, 158 47 0, 256 47 1, 312 47 0, 89 602 1, 135 602 1, 143 567 0, 163 551 1, 182 537 0, 213 537 1, 249 537 0, 269 555 1, 285 570 0, 292 602 1, 338 602 1, 332 551 0, 305 521 1, 269 481 0, 213 481 1, 155 481 0, 119 524 1, 95 553 0
-512 72 0 491 675;72 0 1, 72 555 1, 474 555 1, 474 496 1, 150 496 1, 150 318 1, 437 318 1, 437 260 1, 150 260 1, 150 59 1, 491 59 1, 491 0 1, 238 602 1, 238 675 1, 312 675 1, 312 602 1
-427 32 -9 383 555;307 248 1, 306 284 0, 299 303 1, 280 361 0, 215 361 1, 169 361 0, 143 334 1, 117 308 0, 111 248 1, 380 72 1, 380 13 1, 304 -9 0, 240 -9 1, 145 -9 0, 89 50 1, 32 109 0, 32 209 1, 32 304 0, 82 360 1, 132 416 0, 216 416 1, 314 416 0, 354 347 1, 383 296 0, 382 215 1, 382 192 1, 110 192 1, 114 147 0, 125 124 1, 158 47 0, 256 47 1, 312 47 0, 155 481 1, 155 555 1, 229 555 1, 229 481 1
-512 72 -139 491 555;72 0 1, 72 555 1, 474 555 1, 474 496 1, 150 496 1, 150 318 1, 437 318 1, 437 260 1, 150 260 1, 150 59 1, 491 59 1, 491 0 1, 403 0 1, 443 0 1, 395 -30 0, 395 -67 1, 395 -103 0, 438 -103 1, 458 -103 0, 472 -98 1, 472 -128 1, 449 -139 0, 420 -139 1, 344 -139 0, 344 -80 1, 344 -34 0
-427 32 -139 383 416;307 248 1, 306 284 0, 299 303 1, 280 361 0, 215 361 1, 169 361 0, 143 334 1, 117 308 0, 111 248 1, 380 72 1, 380 13 1, 304 -9 0, 240 -9 1, 145 -9 0, 89 50 1, 32 109 0, 32 209 1, 32 304 0, 82 360 1, 132 416 0, 216 416 1, 314 416 0, 354 347 1, 383 296 0, 382 215 1, 382 192 1, 110 192 1, 114 147 0, 125 124 1, 158 47 0, 256 47 1, 312 47 0, 251 0 1, 291 0 1, 243 -30 0, 243 -67 1, 243 -103 0, 286 -103 1, 306 -103 0, 320 -98 1, 320 -128 1, 297 -139 0, 268 -139 1, 192 -139 0, 192 -80 1, 192 -34 0
-512 72 0 491 722;72 0 1, 72 555 1, 474 555 1, 474 496 1, 150 496 1, 150 318 1, 437 318 1, 437 260 1, 150 260 1, 150 59 1, 491 59 1, 491 0 1, 406 722 1, 315 602 1, 234 602 1, 143 722 1, 199 722 1, 274 646 1, 275 646 1, 350 722 1
-427 32 -9 383 602;307 248 1, 306 284 0, 299 303 1, 280 361 0, 215 361 1, 169 361 0, 143 334 1, 117 308 0, 111 248 1, 380 72 1, 380 13 1, 304 -9 0, 240 -9 1, 145 -9 0, 89 50 1, 32 109 0, 32 209 1, 32 304 0, 82 360 1, 132 416 0, 216 416 1, 314 416 0, 354 347 1, 383 296 0, 382 215 1, 382 192 1, 110 192 1, 114 147 0, 125 124 1, 158 47 0, 256 47 1, 312 47 0, 323 602 1, 233 481 1, 151 481 1, 61 602 1, 116 602 1, 192 526 1, 192 526 1, 268 602 1
-597 35 -14 527 722;527 258 1, 527 15 1, 424 -14 0, 327 -14 1, 35 -14 0, 35 276 1, 35 417 0, 110 493 1, 186 569 0, 329 569 1, 421 569 0, 526 544 1, 526 471 1, 406 510 0, 326 510 1, 119 510 0, 119 279 1, 119 165 0, 176 105 1, 233 45 0, 338 45 1, 381 45 0, 449 59 1, 449 200 1, 356 200 1, 356 258 1, 194 602 1, 284 722 1, 366 722 1, 456 602 1, 401 602 1, 326 677 1, 325 677 1, 249 602 1
-427 35 -158 372 602;298 162 1, 298 351 1, 245 361 0, 222 361 1, 115 361 0, 115 215 1, 115 150 0, 136 112 1, 157 74 0, 192 74 1, 239 74 0, 298 95 1, 277 57 0, 254 37 1, 221 9 0, 176 9 1, 113 9 0, 74 64 1, 35 119 0, 35 207 1, 35 306 0, 85 361 1, 135 416 0, 226 416 1, 261 416 0, 298 407 1, 372 407 1, 372 111 1, 372 15 0, 362 -31 1, 334 -158 0, 174 -158 1, 106 -158 0, 38 -135 1, 38 -71 1, 118 -102 0, 173 -102 1, 298 -102 0, 298 31 1, 93 481 1, 184 602 1, 266 602 1, 356 481 1, 300 481 1, 225 557 1, 224 557 1, 149 481 1
-597 35 -14 527 722;527 258 1, 527 15 1, 424 -14 0, 327 -14 1, 35 -14 0, 35 276 1, 35 417 0, 110 493 1, 186 569 0, 329 569 1, 421 569 0, 526 544 1, 526 471 1, 406 510 0, 326 510 1, 119 510 0, 119 279 1, 119 165 0, 176 105 1, 233 45 0, 338 45 1, 381 45 0, 449 59 1, 449 200 1, 356 200 1, 356 258 1, 200 722 1, 246 722 1, 254 687 0, 275 672 1, 294 657 0, 325 657 1, 360 657 0, 381 675 1, 397 690 0, 404 722 1, 450 722 1, 444 672 0, 417 641 1, 381 602 0, 325 602 1, 266 602 0, 231 645 1, 206 674 0
-427 35 -158 381 602;298 162 1, 298 351 1, 245 361 0, 222 361 1, 115 361 0, 115 215 1, 115 150 0, 136 112 1, 157 74 0, 192 74 1, 239 74 0, 298 95 1, 277 57 0, 254 37 1, 221 9 0, 176 9 1, 113 9 0, 74 64 1, 35 119 0, 35 207 1, 35 306 0, 85 361 1, 135 416 0, 226 416 1, 261 416 0, 298 407 1, 372 407 1, 372 111 1, 372 15 0, 362 -31 1, 334 -158 0, 174 -158 1, 106 -158 0, 38 -135 1, 38 -71 1, 118 -102 0, 173 -102 1, 298 -102 0, 298 31 1, 131 602 1, 177 602 1, 185 566 0, 205 551 1, 225 537 0, 256 537 1, 291 537 0, 311 555 1, 328 570 0, 335 602 1, 381 602 1, 375 551 0, 347 521 1, 312 481 0, 256 481 1, 197 481 0, 161 524 1, 137 554 0
-597 35 -14 527 675;527 258 1, 527 15 1, 424 -14 0, 327 -14 1, 35 -14 0, 35 276 1, 35 417 0, 110 493 1, 186 569 0, 329 569 1, 421 569 0, 526 544 1, 526 471 1, 406 510 0, 326 510 1, 119 510 0, 119 279 1, 119 165 0, 176 105 1, 233 45 0, 338 45 1, 381 45 0, 449 59 1, 449 200 1, 356 200 1, 356 258 1, 288 602 1, 288 675 1, 362 675 1, 362 602 1
-427 35 -158 372 555;298 162 1, 298 351 1, 245 361 0, 222 361 1, 115 361 0, 115 215 1, 115 150 0, 136 112 1, 157 74 0, 192 74 1, 239 74 0, 298 95 1, 277 57 0, 254 37 1, 221 9 0, 176 9 1, 113 9 0, 74 64 1, 35 119 0, 35 207 1, 35 306 0, 85 361 1, 135 416 0, 226 416 1, 261 416 0, 298 407 1, 372 407 1, 372 111 1, 372 15 0, 362 -31 1, 334 -158 0, 174 -158 1, 106 -158 0, 38 -135 1, 38 -71 1, 118 -102 0, 173 -102 1, 298 -102 0, 298 31 1, 183 481 1, 183 555 1, 257 555 1, 257 481 1
-597 35 -162 527 569;527 258 1, 527 15 1, 423 -14 0, 327 -14 1, 35 -14 0, 35 276 1, 35 417 0, 110 493 1, 186 569 0, 329 569 1, 421 569 0, 526 544 1, 526 471 1, 406 510 0, 326 510 1, 119 510 0, 119 279 1, 119 165 0, 176 105 1, 233 45 0, 338 45 1, 381 45 0, 449 59 1, 449 200 1, 356 200 1, 356 258 1, 263 -158 1, 263 -126 1, 284 -129 0, 299 -129 1, 340 -129 0, 340 -104 1, 340 -77 0, 281 -71 1, 281 -42 1, 331 -43 0, 356 -54 1, 391 -69 0, 391 -105 1, 391 -162 0, 309 -162 1, 287 -162 0
-427 35 -158 372 651;298 162 1, 298 351 1, 245 361 0, 222 361 1, 115 361 0, 115 215 1, 115 150 0, 136 112 1, 157 74 0, 192 74 1, 239 74 0, 298 95 1, 277 57 0, 254 37 1, 221 9 0, 176 9 1, 113 9 0, 74 64 1, 35 119 0, 35 207 1, 35 306 0, 85 361 1, 135 416 0, 226 416 1, 261 416 0, 298 407 1, 372 407 1, 372 111 1, 372 15 0, 362 -31 1, 334 -158 0, 174 -158 1, 106 -158 0, 38 -135 1, 38 -71 1, 118 -102 0, 173 -102 1, 298 -102 0, 298 31 1, 257 651 1, 257 629 1, 228 621 0, 228 561 1, 228 555 1, 257 555 1, 257 481 1, 183 481 1, 183 545 1, 183 644 0
-555 62 0 492 722;62 0 1, 62 555 1, 141 555 1, 141 321 1, 414 321 1, 414 555 1, 492 555 1, 492 0 1, 414 0 1, 414 262 1, 141 262 1, 141 0 1, 146 602 1, 236 722 1, 318 722 1, 408 602 1, 353 602 1, 278 677 1, 277 677 1, 201 602 1
-427 58 0 374 750;58 0 1, 58 592 1, 132 592 1, 132 331 1, 159 369 0, 186 388 1, 224 416 0, 270 416 1, 374 416 0, 374 293 1, 374 0 1, 300 0 1, 300 269 1, 300 318 0, 290 335 1, 279 353 0, 251 353 1, 190 353 0, 132 264 1, 132 0 1, 86 629 1, 176 750 1, 258 750 1, 348 629 1, 293 629 1, 217 705 1, 216 705 1, 141 629 1
-555 6 0 548 555;141 321 1, 414 321 1, 414 416 1, 141 416 1, 62 0 1, 62 416 1, 6 416 1, 6 463 1, 62 463 1, 62 555 1, 141 555 1, 141 463 1, 414 463 1, 414 555 1, 492 555 1, 492 463 1, 548 463 1, 548 416 1, 492 416 1, 492 0 1, 414 0 1, 414 262 1, 141 262 1, 141 0 1
-427 2 0 374 592;58 0 1, 58 472 1, 2 472 1, 2 518 1, 58 518 1, 58 592 1, 132 592 1, 132 518 1, 243 518 1, 243 472 1, 132 472 1, 132 331 1, 159 369 0, 186 388 1, 224 416 0, 270 416 1, 374 416 0, 374 293 1, 374 0 1, 300 0 1, 300 269 1, 300 318 0, 290 335 1, 279 353 0, 251 353 1, 190 353 0, 132 264 1, 132 0 1
-213 -18 0 232 689;68 0 1, 68 555 1, 146 555 1, 146 0 1, -18 602 1, -15 636 0, -6 656 1, 11 689 0, 52 689 1, 79 689 0, 102 675 1, 125 661 1, 146 648 0, 157 648 1, 182 648 0, 186 689 1, 232 689 1, 229 654 0, 220 635 1, 203 602 0, 162 602 1, 135 602 0, 112 616 1, 89 630 1, 69 643 0, 57 643 1, 32 643 0, 28 602 1
-171 -40 0 210 569;48 0 1, 48 407 1, 122 407 1, 122 0 1, -40 481 1, -37 516 0, -28 535 1, -11 569 0, 30 569 1, 57 569 0, 80 555 1, 103 541 1, 124 528 0, 135 528 1, 160 528 0, 164 569 1, 210 569 1, 207 534 0, 198 515 1, 181 481 0, 141 481 1, 114 481 0, 90 496 1, 68 510 1, 47 522 0, 35 522 1, 11 522 0, 6 481 1
-213 -14 0 227 657;68 0 1, 68 555 1, 146 555 1, 146 0 1, -14 602 1, -14 657 1, 227 657 1, 227 602 1
-171 -56 0 184 537;48 0 1, 48 407 1, 122 407 1, 122 0 1, -56 481 1, -56 537 1, 184 537 1, 184 481 1
-213 -18 0 232 722;68 0 1, 68 555 1, 146 555 1, 146 0 1, -18 722 1, 28 722 1, 36 687 0, 56 672 1, 76 657 0, 107 657 1, 142 657 0, 162 675 1, 179 690 0, 186 722 1, 232 722 1, 226 672 0, 198 641 1, 163 602 0, 107 602 1, 48 602 0, 12 645 1, -12 674 0
-171 -40 0 210 602;48 0 1, 48 407 1, 122 407 1, 122 0 1, -40 602 1, 6 602 1, 14 566 0, 35 551 1, 54 537 0, 85 537 1, 120 537 0, 141 555 1, 157 570 0, 164 602 1, 210 602 1, 204 551 0, 177 521 1, 141 481 0, 85 481 1, 26 481 0, -9 524 1, -34 554 0
-213 45 -139 173 555;68 0 1, 68 555 1, 146 555 1, 146 0 1, 104 0 1, 144 0 1, 96 -30 0, 96 -67 1, 96 -103 0, 140 -103 1, 159 -103 0, 173 -98 1, 173 -128 1, 150 -139 0, 121 -139 1, 45 -139 0, 45 -80 1, 45 -34 0
-171 0 -139 128 555;48 0 1, 48 407 1, 122 407 1, 122 0 1, 48 481 1, 48 555 1, 122 555 1, 122 481 1, 59 0 1, 99 0 1, 51 -30 0, 51 -67 1, 51 -103 0, 94 -103 1, 114 -103 0, 128 -98 1, 128 -128 1, 105 -139 0, 76 -139 1, 0 -139 0, 0 -80 1, 0 -34 0
-213 68 0 146 675;68 0 1, 68 555 1, 146 555 1, 146 0 1, 70 602 1, 70 675 1, 144 675 1, 144 602 1
-564 68 -111 507 555;68 0 1, 68 555 1, 146 555 1, 146 0 1, 210 -87 1, 210 -19 1, 275 -48 0, 330 -48 1, 395 -48 0, 413 -18 1, 428 7 0, 428 68 1, 428 555 1, 507 555 1, 507 70 1, 507 -111 0, 327 -111 1, 266 -111 0
-341 48 -157 316 555;48 0 1, 48 407 1, 122 407 1, 122 0 1, 48 481 1, 48 555 1, 122 555 1, 122 481 1, 134 -145 1, 134 -87 1, 164 -102 0, 190 -102 1, 227 -102 0, 235 -74 1, 242 -51 0, 242 0 1, 242 407 1, 316 407 1, 316 0 1, 316 -157 0, 196 -157 1, 163 -157 0, 242 481 1, 242 555 1, 316 555 1, 316 481 1
-384 18 -111 398 722;18 -87 1, 18 -19 1, 83 -48 0, 138 -48 1, 203 -48 0, 221 -18 1, 236 7 0, 236 68 1, 236 555 1, 315 555 1, 315 70 1, 315 -111 0, 135 -111 1, 74 -111 0, 135 602 1, 226 722 1, 308 722 1, 398 602 1, 342 602 1, 267 677 1, 266 677 1, 191 602 1
-171 -58 -157 212 602;-58 -145 1, -58 -87 1, -28 -102 0, -2 -102 1, 35 -102 0, 43 -74 1, 50 -51 0, 50 0 1, 50 407 1, 124 407 1, 124 0 1, 124 -157 0, 4 -157 1, -29 -157 0, -50 481 1, 40 602 1, 122 602 1, 212 481 1, 156 481 1, 81 557 1, 80 557 1, 5 481 1
-512 72 -162 494 555;72 0 1, 72 555 1, 146 555 1, 146 282 1, 376 555 1, 455 555 1, 232 290 1, 494 0 1, 394 0 1, 146 281 1, 146 0 1, 183 -158 1, 183 -126 1, 204 -129 0, 219 -129 1, 260 -129 0, 260 -104 1, 260 -77 0, 201 -71 1, 201 -42 1, 251 -43 0, 276 -54 1, 311 -69 0, 311 -105 1, 311 -162 0, 230 -162 1, 207 -162 0
-384 58 -162 377 592;58 0 1, 58 592 1, 132 592 1, 132 210 1, 268 407 1, 339 407 1, 209 215 1, 377 0 1, 287 0 1, 132 209 1, 132 0 1, 128 -158 1, 128 -126 1, 149 -129 0, 164 -129 1, 205 -129 0, 205 -104 1, 205 -77 0, 146 -71 1, 146 -42 1, 196 -43 0, 221 -54 1, 256 -69 0, 256 -105 1, 256 -162 0, 175 -162 1, 153 -162 0
-384 58 0 377 407;58 0 1, 58 407 1, 132 407 1, 132 210 1, 268 407 1, 339 407 1, 209 215 1, 377 0 1, 287 0 1, 132 209 1, 132 0 1
-427 62 0 413 722;62 0 1, 62 555 1, 141 555 1, 141 59 1, 413 59 1, 413 0 1, 66 602 1, 157 722 1, 242 722 1, 122 602 1
-171 40 0 216 730;48 0 1, 48 592 1, 122 592 1, 122 0 1, 40 609 1, 131 730 1, 216 730 1, 96 609 1
-427 62 -162 413 555;62 0 1, 62 555 1, 141 555 1, 141 59 1, 413 59 1, 413 0 1, 168 -158 1, 168 -126 1, 190 -129 0, 205 -129 1, 246 -129 0, 246 -104 1, 246 -77 0, 187 -71 1, 187 -42 1, 237 -43 0, 262 -54 1, 297 -69 0, 297 -105 1, 297 -162 0, 215 -162 1, 193 -162 0
-171 0 -162 128 592;48 0 1, 48 592 1, 122 592 1, 122 0 1, 0 -158 1, 0 -126 1, 21 -129 0, 36 -129 1, 77 -129 0, 77 -104 1, 77 -77 0, 18 -71 1, 18 -42 1, 68 -43 0, 93 -54 1, 128 -69 0, 128 -105 1, 128 -162 0, 47 -162 1, 25 -162 0
-427 62 0 413 555;62 0 1, 62 555 1, 141 555 1, 141 59 1, 413 59 1, 413 0 1, 252 385 1, 252 407 1, 280 415 0, 280 475 1, 280 481 1, 252 481 1, 252 555 1, 326 555 1, 326 491 1, 325 393 0
-224 48 0 229 592;48 0 1, 48 592 1, 122 592 1, 122 0 1, 155 422 1, 155 444 1, 183 452 0, 183 512 1, 183 518 1, 155 518 1, 155 592 1, 229 592 1, 229 528 1, 228 430 0
-427 62 0 413 555;62 0 1, 62 555 1, 141 555 1, 141 59 1, 413 59 1, 413 0 1, 279 241 1, 279 315 1, 353 315 1, 353 241 1
-257 48 0 252 592;48 0 1, 48 592 1, 122 592 1, 122 0 1, 178 241 1, 178 315 1, 252 315 1, 252 241 1
-427 6 0 413 555;62 0 1, 62 260 1, 6 230 1, 6 293 1, 62 323 1, 62 555 1, 141 555 1, 141 366 1, 233 416 1, 233 353 1, 141 303 1, 141 59 1, 413 59 1, 413 0 1
-171 -3 0 173 592;48 0 1, 48 270 1, -3 243 1, -3 305 1, 48 333 1, 48 592 1, 123 592 1, 123 374 1, 173 399 1, 173 338 1, 123 311 1, 123 0 1
-555 62 0 492 722;62 0 1, 62 555 1, 139 555 1, 425 126 1, 425 555 1, 492 555 1, 492 0 1, 415 0 1, 129 429 1, 129 0 1, 222 602 1, 312 722 1, 398 722 1, 277 602 1
-427 58 0 374 602;58 0 1, 58 407 1, 132 407 1, 132 331 1, 159 369 0, 186 388 1, 224 416 0, 270 416 1, 374 416 0, 374 293 1, 374 0 1, 300 0 1, 300 269 1, 300 318 0, 290 335 1, 279 353 0, 251 353 1, 190 353 0, 132 264 1, 132 0 1, 168 481 1, 259 602 1, 344 602 1, 224 481 1
-555 62 -162 492 555;62 0 1, 62 555 1, 139 555 1, 425 126 1, 425 555 1, 492 555 1, 492 0 1, 415 0 1, 129 429 1, 129 0 1, 194 -158 1, 194 -126 1, 216 -129 0, 231 -129 1, 272 -129 0, 272 -104 1, 272 -77 0, 213 -71 1, 213 -42 1, 263 -43 0, 288 -54 1, 323 -69 0, 323 -105 1, 323 -162 0, 241 -162 1, 219 -162 0
-427 58 -162 374 416;58 0 1, 58 407 1, 132 407 1, 132 331 1, 159 369 0, 186 388 1, 224 416 0, 270 416 1, 374 416 0, 374 293 1, 374 0 1, 300 0 1, 300 269 1, 300 318 0, 290 335 1, 279 353 0, 251 353 1, 190 353 0, 132 264 1, 132 0 1, 128 -158 1, 128 -126 1, 149 -129 0, 164 -129 1, 205 -129 0, 205 -104 1, 205 -77 0, 146 -71 1, 146 -42 1, 196 -43 0, 221 -54 1, 256 -69 0, 256 -105 1, 256 -162 0, 175 -162 1, 153 -162 0
-555 62 0 492 722;62 0 1, 62 555 1, 139 555 1, 425 126 1, 425 555 1, 492 555 1, 492 0 1, 415 0 1, 129 429 1, 129 0 1, 408 722 1, 318 602 1, 236 602 1, 146 722 1, 201 722 1, 277 646 1, 278 646 1, 353 722 1
-427 58 0 374 602;58 0 1, 58 407 1, 132 407 1, 132 331 1, 159 369 0, 186 388 1, 224 416 0, 270 416 1, 374 416 0, 374 293 1, 374 0 1, 300 0 1, 300 269 1, 300 318 0, 290 335 1, 279 353 0, 251 353 1, 190 353 0, 132 264 1, 132 0 1, 323 602 1, 233 481 1, 151 481 1, 61 602 1, 116 602 1, 192 526 1, 192 526 1, 268 602 1
-464 0 0 411 592;95 0 1, 95 407 1, 168 407 1, 168 331 1, 196 369 0, 222 388 1, 261 416 0, 307 416 1, 411 416 0, 411 293 1, 411 0 1, 336 0 1, 336 269 1, 336 318 0, 326 335 1, 315 353 0, 287 353 1, 227 353 0, 168 264 1, 168 0 1, 0 422 1, 0 444 1, 29 452 0, 29 512 1, 29 518 1, 0 518 1, 0 592 1, 74 592 1, 74 528 1, 74 430 0
-555 62 -158 492 555;62 0 1, 62 555 1, 139 555 1, 425 126 1, 425 555 1, 492 555 1, 492 -35 1, 492 -158 0, 373 -158 1, 345 -158 0, 317 -150 1, 317 -92 1, 341 -102 0, 369 -102 1, 425 -102 0, 425 -21 1, 425 -15 1, 129 429 1, 129 0 1
-427 58 -158 374 416;58 0 1, 58 407 1, 132 407 1, 132 331 1, 159 369 0, 186 388 1, 224 416 0, 270 416 1, 374 416 0, 374 293 1, 374 -35 1, 374 -158 0, 255 -158 1, 227 -158 0, 198 -150 1, 198 -92 1, 222 -102 0, 244 -102 1, 300 -102 0, 300 -21 1, 300 269 1, 300 318 0, 290 335 1, 279 353 0, 251 353 1, 190 353 0, 132 264 1, 132 0 1
-597 35 -14 563 657;299 569 1, 419 569 0, 491 490 1, 563 410 0, 563 278 1, 563 144 0, 491 65 1, 419 -14 0, 295 -14 1, 189 -14 0, 121 51 1, 35 132 0, 35 278 1, 35 411 0, 107 490 1, 179 569 0, 299 510 1, 214 510 0, 167 449 1, 119 388 0, 119 278 1, 119 169 0, 167 107 1, 213 45 0, 297 45 1, 375 45 0, 421 95 1, 479 156 0, 479 278 1, 479 388 0, 431 449 1, 383 510 0, 179 602 1, 179 657 1, 419 657 1, 419 602 1
-427 32 -9 395 537;213 416 1, 297 416 0, 346 359 1, 395 303 0, 395 204 1, 395 104 0, 346 47 1, 297 -9 0, 211 -9 1, 137 -9 0, 91 38 1, 32 96 0, 32 204 1, 32 302 0, 81 359 1, 130 416 0, 213 361 1, 112 361 0, 112 204 1, 112 46 0, 213 46 1, 315 46 0, 315 205 1, 315 361 0, 72 481 1, 72 537 1, 312 537 1, 312 481 1
-597 35 -14 563 722;299 569 1, 419 569 0, 491 490 1, 563 410 0, 563 278 1, 563 144 0, 491 65 1, 419 -14 0, 295 -14 1, 189 -14 0, 121 51 1, 35 132 0, 35 278 1, 35 411 0, 107 490 1, 179 569 0, 299 510 1, 214 510 0, 167 449 1, 119 388 0, 119 278 1, 119 169 0, 167 107 1, 213 45 0, 297 45 1, 375 45 0, 421 95 1, 479 156 0, 479 278 1, 479 388 0, 431 449 1, 383 510 0, 174 722 1, 220 722 1, 228 687 0, 248 672 1, 268 657 0, 299 657 1, 334 657 0, 354 675 1, 371 690 0, 378 722 1, 424 722 1, 418 672 0, 390 641 1, 355 602 0, 299 602 1, 240 602 0, 204 645 1, 180 674 0
-427 32 -9 395 602;213 416 1, 297 416 0, 346 359 1, 395 303 0, 395 204 1, 395 104 0, 346 47 1, 297 -9 0, 211 -9 1, 137 -9 0, 91 38 1, 32 96 0, 32 204 1, 32 302 0, 81 359 1, 130 416 0, 213 361 1, 112 361 0, 112 204 1, 112 46 0, 213 46 1, 315 46 0, 315 205 1, 315 361 0, 89 602 1, 135 602 1, 143 567 0, 163 551 1, 182 537 0, 213 537 1, 249 537 0, 269 555 1, 285 570 0, 292 602 1, 338 602 1, 332 551 0, 305 521 1, 269 481 0, 213 481 1, 155 481 0, 119 524 1, 95 553 0
-597 35 -14 563 722;299 569 1, 419 569 0, 491 490 1, 563 410 0, 563 278 1, 563 144 0, 491 65 1, 419 -14 0, 295 -14 1, 189 -14 0, 121 51 1, 35 132 0, 35 278 1, 35 411 0, 107 490 1, 179 569 0, 299 510 1, 214 510 0, 167 449 1, 119 388 0, 119 278 1, 119 169 0, 167 107 1, 213 45 0, 297 45 1, 375 45 0, 421 95 1, 479 156 0, 479 278 1, 479 388 0, 431 449 1, 383 510 0, 212 602 1, 303 722 1, 374 722 1, 254 602 1, 344 602 1, 434 722 1, 506 722 1, 386 602 1
-427 32 -9 403 602;213 416 1, 297 416 0, 346 359 1, 395 303 0, 395 204 1, 395 104 0, 346 47 1, 297 -9 0, 211 -9 1, 137 -9 0, 91 38 1, 32 96 0, 32 204 1, 32 302 0, 81 359 1, 130 416 0, 213 361 1, 112 361 0, 112 204 1, 112 46 0, 213 46 1, 315 46 0, 315 205 1, 315 361 0, 109 481 1, 199 602 1, 271 602 1, 151 481 1, 241 481 1, 331 602 1, 403 602 1, 283 481 1
-555 62 0 538 722;62 0 1, 62 555 1, 294 555 1, 465 555 0, 465 417 1, 465 350 0, 423 306 1, 399 281 0, 353 260 1, 538 0 1, 441 0 1, 283 235 1, 141 235 1, 141 0 1, 141 294 1, 229 294 1, 309 294 0, 346 321 1, 384 350 0, 384 408 1, 384 456 0, 353 476 1, 323 496 0, 253 496 1, 141 496 1, 196 602 1, 287 722 1, 372 722 1, 252 602 1
-256 58 0 280 602;58 0 1, 58 407 1, 132 407 1, 132 331 1, 148 369 0, 166 389 1, 193 416 0, 230 416 1, 237 416 0, 251 414 1, 251 345 1, 231 352 0, 219 352 1, 178 352 0, 132 269 1, 132 0 1, 104 481 1, 195 602 1, 280 602 1, 160 481 1
-555 62 -162 538 555;62 0 1, 62 555 1, 294 555 1, 465 555 0, 465 417 1, 465 350 0, 423 306 1, 399 281 0, 353 260 1, 538 0 1, 441 0 1, 283 235 1, 141 235 1, 141 0 1, 141 294 1, 229 294 1, 309 294 0, 346 321 1, 384 350 0, 384 408 1, 384 456 0, 353 476 1, 323 496 0, 253 496 1, 141 496 1, 196 -158 1, 196 -126 1, 218 -129 0, 233 -129 1, 274 -129 0, 274 -104 1, 274 -77 0, 215 -71 1, 215 -42 1, 265 -43 0, 290 -54 1, 324 -69 0, 324 -105 1, 324 -162 0, 243 -162 1, 221 -162 0
-256 58 -162 251 416;58 0 1, 58 407 1, 132 407 1, 132 331 1, 148 369 0, 166 389 1, 193 416 0, 230 416 1, 237 416 0, 251 414 1, 251 345 1, 231 352 0, 219 352 1, 178 352 0, 132 269 1, 132 0 1, 64 -158 1, 64 -126 1, 85 -129 0, 100 -129 1, 141 -129 0, 141 -104 1, 141 -77 0, 82 -71 1, 82 -42 1, 132 -43 0, 157 -54 1, 192 -69 0, 192 -105 1, 192 -162 0, 111 -162 1, 89 -162 0
-555 62 0 538 722;62 0 1, 62 555 1, 294 555 1, 465 555 0, 465 417 1, 465 350 0, 423 306 1, 399 281 0, 353 260 1, 538 0 1, 441 0 1, 283 235 1, 141 235 1, 141 0 1, 141 294 1, 229 294 1, 309 294 0, 346 321 1, 384 350 0, 384 408 1, 384 456 0, 353 476 1, 323 496 0, 253 496 1, 141 496 1, 368 722 1, 278 602 1, 196 602 1, 106 722 1, 161 722 1, 237 646 1, 237 646 1, 313 722 1
-256 -3 0 259 602;58 0 1, 58 407 1, 132 407 1, 132 331 1, 148 369 0, 166 389 1, 193 416 0, 230 416 1, 237 416 0, 251 414 1, 251 345 1, 231 352 0, 219 352 1, 178 352 0, 132 269 1, 132 0 1, 259 602 1, 169 481 1, 87 481 1, -3 602 1, 52 602 1, 128 526 1, 128 526 1, 204 602 1
-512 45 -14 466 722;45 20 1, 45 98 1, 156 45 0, 264 45 1, 385 45 0, 385 135 1, 385 181 0, 352 203 1, 326 220 0, 269 239 1, 193 264 1, 48 311 0, 48 421 1, 48 569 0, 251 569 1, 338 569 0, 432 545 1, 432 473 1, 334 510 0, 246 510 1, 124 510 0, 124 427 1, 124 394 0, 147 374 1, 171 354 0, 230 334 1, 308 309 1, 395 281 0, 431 244 1, 466 207 0, 466 146 1, 466 72 0, 411 29 1, 357 -14 0, 261 -14 1, 167 -14 0, 196 602 1, 287 722 1, 372 722 1, 252 602 1
-384 44 -9 344 602;44 14 1, 44 82 1, 118 46 0, 181 46 1, 266 46 0, 266 106 1, 266 147 0, 207 167 1, 141 189 1, 46 220 0, 46 303 1, 46 416 0, 201 416 1, 246 416 0, 309 404 1, 309 342 1, 253 361 0, 196 361 1, 119 361 0, 119 310 1, 119 273 0, 172 256 1, 231 237 1, 341 201 0, 341 113 1, 341 57 0, 297 24 1, 254 -9 0, 178 -9 1, 119 -9 0, 168 481 1, 259 602 1, 344 602 1, 224 481 1
-512 45 -14 466 722;45 20 1, 45 98 1, 156 45 0, 264 45 1, 385 45 0, 385 135 1, 385 181 0, 352 203 1, 326 220 0, 269 239 1, 193 264 1, 48 311 0, 48 421 1, 48 569 0, 251 569 1, 338 569 0, 432 545 1, 432 473 1, 334 510 0, 246 510 1, 124 510 0, 124 427 1, 124 394 0, 147 374 1, 171 354 0, 230 334 1, 308 309 1, 395 281 0, 431 244 1, 466 207 0, 466 146 1, 466 72 0, 411 29 1, 357 -14 0, 261 -14 1, 167 -14 0, 120 602 1, 211 722 1, 293 722 1, 383 602 1, 327 602 1, 252 677 1, 251 677 1, 176 602 1
-384 44 -9 341 602;44 14 1, 44 82 1, 118 46 0, 181 46 1, 266 46 0, 266 106 1, 266 147 0, 207 167 1, 141 189 1, 46 220 0, 46 303 1, 46 416 0, 201 416 1, 246 416 0, 309 404 1, 309 342 1, 253 361 0, 196 361 1, 119 361 0, 119 310 1, 119 273 0, 172 256 1, 231 237 1, 341 201 0, 341 113 1, 341 57 0, 297 24 1, 254 -9 0, 178 -9 1, 119 -9 0, 75 481 1, 165 602 1, 247 602 1, 337 481 1, 282 481 1, 206 557 1, 206 557 1, 130 481 1
-512 45 -162 466 569;45 20 1, 45 98 1, 156 45 0, 264 45 1, 385 45 0, 385 135 1, 385 181 0, 352 203 1, 326 220 0, 269 239 1, 193 264 1, 48 311 0, 48 421 1, 48 569 0, 251 569 1, 338 569 0, 432 545 1, 432 473 1, 334 510 0, 246 510 1, 124 510 0, 124 427 1, 124 394 0, 147 374 1, 171 354 0, 230 334 1, 308 309 1, 395 281 0, 431 244 1, 466 207 0, 466 147 1, 466 72 0, 411 29 1, 357 -14 0, 261 -14 1, 167 -14 0, 225 0 1, 262 0 1, 239 -41 1, 266 -42 0, 286 -56 1, 312 -74 0, 312 -101 1, 312 -126 0, 290 -144 1, 268 -162 0, 236 -162 1, 211 -162 0, 182 -154 1, 182 -124 1, 201 -129 0, 221 -129 1, 260 -129 0, 260 -102 1, 260 -67 0, 190 -66 1
-384 44 -162 341 416;44 14 1, 44 82 1, 118 46 0, 181 46 1, 266 46 0, 266 106 1, 266 147 0, 207 167 1, 141 189 1, 46 220 0, 46 303 1, 46 416 0, 201 416 1, 246 416 0, 309 404 1, 309 342 1, 253 361 0, 196 361 1, 119 361 0, 119 310 1, 119 273 0, 172 256 1, 231 237 1, 341 201 0, 341 113 1, 341 57 0, 297 24 1, 254 -9 0, 178 -9 1, 119 -9 0, 171 0 1, 207 0 1, 184 -41 1, 211 -42 0, 231 -56 1, 257 -74 0, 257 -101 1, 257 -126 0, 235 -144 1, 213 -162 0, 181 -162 1, 156 -162 0, 127 -154 1, 127 -124 1, 146 -129 0, 166 -129 1, 205 -129 0, 205 -102 1, 205 -67 0, 135 -66 1
-512 45 -14 466 722;45 20 1, 45 98 1, 156 45 0, 264 45 1, 385 45 0, 385 135 1, 385 181 0, 352 203 1, 326 220 0, 269 239 1, 193 264 1, 48 311 0, 48 421 1, 48 569 0, 251 569 1, 338 569 0, 432 545 1, 432 473 1, 334 510 0, 246 510 1, 124 510 0, 124 427 1, 124 394 0, 147 374 1, 171 354 0, 230 334 1, 308 309 1, 395 281 0, 431 244 1, 466 207 0, 466 146 1, 466 72 0, 411 29 1, 357 -14 0, 261 -14 1, 167 -14 0, 383 722 1, 293 602 1, 211 602 1, 120 722 1, 176 722 1, 251 646 1, 252 646 1, 327 722 1
-384 44 -9 341 602;44 14 1, 44 82 1, 118 46 0, 181 46 1, 266 46 0, 266 106 1, 266 147 0, 207 167 1, 141 189 1, 46 220 0, 46 303 1, 46 416 0, 201 416 1, 246 416 0, 309 404 1, 309 342 1, 253 361 0, 196 361 1, 119 361 0, 119 310 1, 119 273 0, 172 256 1, 231 237 1, 341 201 0, 341 113 1, 341 57 0, 297 24 1, 254 -9 0, 178 -9 1, 119 -9 0, 323 602 1, 233 481 1, 151 481 1, 61 602 1, 116 602 1, 192 526 1, 192 526 1, 268 602 1
-469 8 -162 461 555;195 0 1, 195 496 1, 8 496 1, 8 555 1, 461 555 1, 461 496 1, 274 496 1, 274 0 1, 220 0 1, 256 0 1, 234 -41 1, 261 -42 0, 280 -56 1, 306 -74 0, 306 -101 1, 306 -126 0, 285 -144 1, 263 -162 0, 230 -162 1, 205 -162 0, 176 -154 1, 176 -124 1, 195 -129 0, 215 -129 1, 254 -129 0, 254 -102 1, 254 -67 0, 184 -66 1
-213 11 -162 210 488;199 -2 1, 176 -9 0, 156 -9 1, 57 -9 0, 57 113 1, 57 352 1, 11 352 1, 11 407 1, 57 407 1, 57 481 1, 131 488 1, 131 407 1, 210 407 1, 210 352 1, 131 352 1, 131 126 1, 131 78 0, 139 62 1, 147 46 0, 174 46 1, 188 46 0, 199 50 1, 112 0 1, 149 0 1, 126 -41 1, 153 -42 0, 173 -56 1, 199 -74 0, 199 -101 1, 199 -126 0, 177 -144 1, 155 -162 0, 123 -162 1, 97 -162 0, 69 -154 1, 69 -124 1, 87 -129 0, 108 -129 1, 147 -129 0, 147 -102 1, 147 -67 0, 77 -66 1
-469 8 0 461 722;195 0 1, 195 496 1, 8 496 1, 8 555 1, 461 555 1, 461 496 1, 274 496 1, 274 0 1, 366 722 1, 275 602 1, 194 602 1, 103 722 1, 159 722 1, 234 646 1, 235 646 1, 310 722 1
-288 11 -9 270 633;199 -2 1, 176 -9 0, 156 -9 1, 57 -9 0, 57 113 1, 57 352 1, 11 352 1, 11 407 1, 57 407 1, 57 481 1, 131 488 1, 131 407 1, 210 407 1, 210 352 1, 131 352 1, 131 126 1, 131 78 0, 139 62 1, 147 46 0, 174 46 1, 188 46 0, 199 50 1, 196 463 1, 196 485 1, 224 493 0, 224 553 1, 224 559 1, 196 559 1, 196 633 1, 270 633 1, 270 569 1, 269 471 0
-469 8 0 461 555;195 0 1, 195 268 1, 81 268 1, 81 324 1, 195 324 1, 195 496 1, 8 496 1, 8 555 1, 461 555 1, 461 496 1, 274 496 1, 274 324 1, 387 324 1, 387 268 1, 274 268 1, 274 0 1
-213 11 -9 210 488;57 213 1, 11 213 1, 11 259 1, 57 259 1, 57 352 1, 11 352 1, 11 407 1, 57 407 1, 57 481 1, 131 488 1, 131 407 1, 210 407 1, 210 352 1, 131 352 1, 131 259 1, 210 259 1, 210 213 1, 131 213 1, 131 126 1, 131 78 0, 139 62 1, 147 46 0, 174 46 1, 188 46 0, 199 50 1, 199 -2 1, 176 -9 0, 156 -9 1, 57 -9 0, 57 113 1
-555 62 -14 492 689;62 555 1, 141 555 1, 141 205 1, 141 146 0, 151 118 1, 160 90 0, 187 71 1, 225 45 0, 288 45 1, 363 45 0, 393 80 1, 423 115 0, 423 202 1, 423 555 1, 492 555 1, 492 203 1, 492 129 0, 477 91 1, 463 52 0, 423 24 1, 370 -14 0, 281 -14 1, 168 -14 0, 115 39 1, 62 91 0, 62 206 1, 157 602 1, 160 636 0, 169 656 1, 186 689 0, 227 689 1, 254 689 0, 277 675 1, 300 661 1, 321 648 0, 332 648 1, 357 648 0, 361 689 1, 407 689 1, 404 654 0, 395 635 1, 378 602 0, 338 602 1, 311 602 0, 287 616 1, 264 630 1, 244 643 0, 232 643 1, 207 643 0, 203 602 1
-427 53 -9 369 569;295 0 1, 295 76 1, 268 38 0, 242 19 1, 203 -9 0, 157 -9 1, 53 -9 0, 53 115 1, 53 407 1, 127 407 1, 127 139 1, 127 90 0, 137 72 1, 148 54 0, 176 54 1, 237 54 0, 295 143 1, 295 407 1, 369 407 1, 369 0 1, 86 481 1, 89 516 0, 98 535 1, 116 569 0, 156 569 1, 183 569 0, 206 555 1, 229 541 1, 250 528 0, 261 528 1, 286 528 0, 290 569 1, 336 569 1, 333 534 0, 324 515 1, 307 481 0, 267 481 1, 240 481 0, 216 496 1, 194 510 1, 173 522 0, 161 522 1, 137 522 0, 132 481 1
-555 62 -14 492 657;62 555 1, 141 555 1, 141 205 1, 141 146 0, 151 118 1, 160 90 0, 187 71 1, 225 45 0, 288 45 1, 363 45 0, 393 80 1, 423 115 0, 423 202 1, 423 555 1, 492 555 1, 492 203 1, 492 129 0, 477 91 1, 463 52 0, 423 24 1, 370 -14 0, 281 -14 1, 168 -14 0, 115 39 1, 62 91 0, 62 206 1, 162 602 1, 162 657 1, 402 657 1, 402 602 1
-427 53 -9 369 537;295 0 1, 295 76 1, 268 38 0, 242 19 1, 203 -9 0, 157 -9 1, 53 -9 0, 53 115 1, 53 407 1, 127 407 1, 127 139 1, 127 90 0, 137 72 1, 148 54 0, 176 54 1, 237 54 0, 295 143 1, 295 407 1, 369 407 1, 369 0 1, 72 481 1, 72 537 1, 312 537 1, 312 481 1
-555 62 -14 492 722;62 555 1, 141 555 1, 141 205 1, 141 146 0, 151 118 1, 160 90 0, 187 71 1, 225 45 0, 288 45 1, 363 45 0, 393 80 1, 423 115 0, 423 202 1, 423 555 1, 492 555 1, 492 203 1, 492 129 0, 477 91 1, 463 52 0, 423 24 1, 370 -14 0, 281 -14 1, 168 -14 0, 115 39 1, 62 91 0, 62 206 1, 157 722 1, 203 722 1, 211 687 0, 231 672 1, 251 657 0, 282 657 1, 317 657 0, 338 675 1, 354 690 0, 361 722 1, 407 722 1, 401 672 0, 374 641 1, 338 602 0, 282 602 1, 223 602 0, 188 645 1, 163 674 0
-427 53 -9 369 602;295 0 1, 295 76 1, 268 38 0, 242 19 1, 203 -9 0, 157 -9 1, 53 -9 0, 53 115 1, 53 407 1, 127 407 1, 127 139 1, 127 90 0, 137 72 1, 148 54 0, 176 54 1, 237 54 0, 295 143 1, 295 407 1, 369 407 1, 369 0 1, 86 602 1, 132 602 1, 140 567 0, 161 551 1, 180 537 0, 211 537 1, 246 537 0, 267 555 1, 283 570 0, 290 602 1, 336 602 1, 330 551 0, 303 521 1, 267 481 0, 211 481 1, 152 481 0, 117 524 1, 93 553 0
-555 62 -14 492 762;62 555 1, 141 555 1, 141 205 1, 141 146 0, 151 118 1, 160 90 0, 187 71 1, 225 45 0, 288 45 1, 363 45 0, 393 80 1, 423 115 0, 423 202 1, 423 555 1, 492 555 1, 492 203 1, 492 129 0, 477 91 1, 463 52 0, 423 24 1, 370 -14 0, 281 -14 1, 168 -14 0, 115 39 1, 62 91 0, 62 206 1, 282 762 1, 317 762 0, 342 738 1, 367 713 0, 367 678 1, 367 642 0, 342 617 1, 317 592 0, 281 592 1, 250 592 0, 227 612 1, 197 638 0, 197 677 1, 197 713 0, 222 737 1, 247 762 0, 282 730 1, 260 730 0, 245 714 1, 229 699 0, 229 677 1, 229 656 0, 245 640 1, 260 624 0, 281 624 1, 302 624 0, 316 637 1, 335 653 0, 335 678 1, 335 699 0, 319 714 1, 304 730 0
-427 53 -9 369 651;295 0 1, 295 76 1, 268 38 0, 242 19 1, 203 -9 0, 157 -9 1, 53 -9 0, 53 115 1, 53 407 1, 127 407 1, 127 139 1, 127 90 0, 137 72 1, 148 54 0, 176 54 1, 237 54 0, 295 143 1, 295 407 1, 369 407 1, 369 0 1, 192 651 1, 227 651 0, 252 627 1, 277 602 0, 277 567 1, 277 531 0, 252 506 1, 227 481 0, 191 481 1, 160 481 0, 137 501 1, 107 527 0, 107 566 1, 107 602 0, 132 626 1, 156 651 0, 192 619 1, 170 619 0, 154 603 1, 139 588 0, 139 566 1, 139 545 0, 154 529 1, 170 513 0, 191 513 1, 211 513 0, 226 526 1, 245 542 0, 245 567 1, 245 588 0, 229 603 1, 214 619 0
-555 62 -14 492 722;62 555 1, 141 555 1, 141 205 1, 141 146 0, 151 118 1, 160 90 0, 187 71 1, 225 45 0, 288 45 1, 363 45 0, 393 80 1, 423 115 0, 423 202 1, 423 555 1, 492 555 1, 492 203 1, 492 129 0, 477 91 1, 463 52 0, 423 24 1, 370 -14 0, 281 -14 1, 168 -14 0, 115 39 1, 62 91 0, 62 206 1, 187 602 1, 278 722 1, 349 722 1, 229 602 1, 319 602 1, 409 722 1, 481 722 1, 361 602 1
-427 53 -9 403 602;295 0 1, 295 76 1, 268 38 0, 242 19 1, 203 -9 0, 157 -9 1, 53 -9 0, 53 115 1, 53 407 1, 127 407 1, 127 139 1, 127 90 0, 137 72 1, 148 54 0, 176 54 1, 237 54 0, 295 143 1, 295 407 1, 369 407 1, 369 0 1, 109 481 1, 199 602 1, 271 602 1, 151 481 1, 241 481 1, 331 602 1, 403 602 1, 283 481 1
-555 62 -139 492 555;62 555 1, 141 555 1, 141 205 1, 141 146 0, 151 118 1, 160 90 0, 187 71 1, 225 45 0, 288 45 1, 363 45 0, 393 80 1, 423 115 0, 423 202 1, 423 555 1, 492 555 1, 492 203 1, 492 129 0, 477 91 1, 463 52 0, 423 24 1, 370 -14 0, 281 -14 1, 168 -14 0, 115 39 1, 62 91 0, 62 206 1, 300 0 1, 340 0 1, 292 -30 0, 292 -67 1, 292 -103 0, 335 -103 1, 355 -103 0, 369 -98 1, 369 -128 1, 346 -139 0, 317 -139 1, 241 -139 0, 241 -80 1, 241 -34 0
-427 53 -139 384 407;295 0 1, 295 76 1, 268 38 0, 242 19 1, 203 -9 0, 157 -9 1, 53 -9 0, 53 115 1, 53 407 1, 127 407 1, 127 139 1, 127 90 0, 137 72 1, 148 54 0, 176 54 1, 237 54 0, 295 143 1, 295 407 1, 369 407 1, 369 0 1, 315 0 1, 355 0 1, 307 -30 0, 307 -67 1, 307 -103 0, 350 -103 1, 370 -103 0, 384 -98 1, 384 -128 1, 361 -139 0, 332 -139 1, 256 -139 0, 256 -80 1, 256 -34 0
-725 9 0 716 722;152 0 1, 9 555 1, 85 555 1, 199 117 1, 329 555 1, 405 555 1, 530 121 1, 651 555 1, 716 555 1, 560 0 1, 482 0 1, 358 428 1, 230 0 1, 236 602 1, 326 722 1, 408 722 1, 498 602 1, 443 602 1, 367 677 1, 366 677 1, 291 602 1
-555 4 0 549 602;102 0 1, 4 407 1, 77 407 1, 150 101 1, 244 407 1, 318 407 1, 400 99 1, 486 407 1, 549 407 1, 435 0 1, 361 0 1, 275 315 1, 177 0 1, 149 481 1, 240 602 1, 321 602 1, 412 481 1, 356 481 1, 281 557 1, 280 557 1, 205 481 1
-512 11 0 501 722;210 0 1, 210 231 1, 11 555 1, 101 555 1, 259 298 1, 428 555 1, 501 555 1, 289 233 1, 289 0 1, 134 602 1, 224 722 1, 306 722 1, 396 602 1, 341 602 1, 265 677 1, 264 677 1, 189 602 1
-384 7 -148 380 602;152 0 1, 7 407 1, 82 407 1, 193 95 1, 314 407 1, 380 407 1, 164 -148 1, 87 -148 1, 67 481 1, 157 602 1, 239 602 1, 329 481 1, 274 481 1, 198 557 1, 198 557 1, 122 481 1
-469 38 0 431 722;38 0 1, 38 63 1, 336 496 1, 56 496 1, 56 555 1, 431 555 1, 431 496 1, 132 63 1, 431 63 1, 431 0 1, 179 602 1, 269 722 1, 355 722 1, 234 602 1
-384 28 0 356 602;28 0 1, 28 56 1, 261 352 1, 39 352 1, 39 407 1, 352 407 1, 352 352 1, 119 56 1, 356 56 1, 356 0 1, 168 481 1, 259 602 1, 344 602 1, 224 481 1
-469 38 0 431 675;38 0 1, 38 63 1, 336 496 1, 56 496 1, 56 555 1, 431 555 1, 431 496 1, 132 63 1, 431 63 1, 431 0 1, 202 602 1, 202 675 1, 276 675 1, 276 602 1
-384 28 0 356 555;28 0 1, 28 56 1, 261 352 1, 39 352 1, 39 407 1, 352 407 1, 352 352 1, 119 56 1, 356 56 1, 356 0 1, 155 481 1, 155 555 1, 229 555 1, 229 481 1
-469 38 0 431 722;38 0 1, 38 63 1, 336 496 1, 56 496 1, 56 555 1, 431 555 1, 431 496 1, 132 63 1, 431 63 1, 431 0 1, 370 722 1, 280 602 1, 198 602 1, 108 722 1, 163 722 1, 239 646 1, 239 646 1, 315 722 1
-384 28 0 356 602;28 0 1, 28 56 1, 261 352 1, 39 352 1, 39 407 1, 352 407 1, 352 352 1, 119 56 1, 356 56 1, 356 0 1, 323 602 1, 233 481 1, 151 481 1, 61 602 1, 116 602 1, 192 526 1, 192 526 1, 268 602 1
-171 3 0 192 602;54 0 1, 54 352 1, 3 352 1, 3 407 1, 54 407 1, 54 456 1, 54 525 0, 84 563 1, 114 602 0, 167 602 1, 175 602 0, 192 600 1, 192 545 1, 181 546 0, 175 546 1, 128 546 0, 128 464 1, 128 0 1
-512 45 -162 466 569;45 20 1, 45 98 1, 156 45 0, 264 45 1, 385 45 0, 385 135 1, 385 181 0, 352 203 1, 326 220 0, 269 239 1, 193 264 1, 48 311 0, 48 421 1, 48 569 0, 251 569 1, 338 569 0, 432 545 1, 432 473 1, 334 510 0, 246 510 1, 124 510 0, 124 427 1, 124 394 0, 147 374 1, 171 354 0, 230 334 1, 308 309 1, 395 281 0, 431 244 1, 466 207 0, 466 147 1, 466 72 0, 411 29 1, 357 -14 0, 261 -14 1, 167 -14 0, 197 -158 1, 197 -126 1, 218 -129 0, 233 -129 1, 274 -129 0, 274 -104 1, 274 -77 0, 215 -71 1, 215 -42 1, 265 -43 0, 290 -54 1, 325 -69 0, 325 -105 1, 325 -162 0, 243 -162 1, 221 -162 0
-384 44 -162 341 416;44 14 1, 44 82 1, 118 46 0, 181 46 1, 266 46 0, 266 106 1, 266 147 0, 207 167 1, 141 189 1, 46 220 0, 46 303 1, 46 416 0, 201 416 1, 246 416 0, 309 404 1, 309 342 1, 253 361 0, 196 361 1, 119 361 0, 119 310 1, 119 273 0, 172 256 1, 231 237 1, 341 201 0, 341 113 1, 341 57 0, 297 24 1, 254 -9 0, 178 -9 1, 119 -9 0, 128 -158 1, 128 -126 1, 149 -129 0, 164 -129 1, 205 -129 0, 205 -104 1, 205 -77 0, 146 -71 1, 146 -42 1, 196 -43 0, 221 -54 1, 256 -69 0, 256 -105 1, 256 -162 0, 175 -162 1, 153 -162 0
-469 8 -162 461 555;195 0 1, 195 496 1, 8 496 1, 8 555 1, 461 555 1, 461 496 1, 274 496 1, 274 0 1, 177 -158 1, 177 -126 1, 198 -129 0, 213 -129 1, 254 -129 0, 254 -104 1, 254 -77 0, 195 -71 1, 195 -42 1, 245 -43 0, 270 -54 1, 305 -69 0, 305 -105 1, 305 -162 0, 224 -162 1, 201 -162 0
-213 11 -162 210 488;199 -2 1, 176 -9 0, 156 -9 1, 57 -9 0, 57 113 1, 57 352 1, 11 352 1, 11 407 1, 57 407 1, 57 481 1, 131 488 1, 131 407 1, 210 407 1, 210 352 1, 131 352 1, 131 126 1, 131 78 0, 139 62 1, 147 46 0, 174 46 1, 188 46 0, 199 50 1, 64 -158 1, 64 -126 1, 85 -129 0, 100 -129 1, 141 -129 0, 141 -104 1, 141 -77 0, 82 -71 1, 82 -42 1, 132 -43 0, 157 -54 1, 192 -69 0, 192 -105 1, 192 -162 0, 111 -162 1, 89 -162 0
-256 64 -162 192 -42;64 -158 1, 64 -126 1, 85 -129 0, 100 -129 1, 141 -129 0, 141 -104 1, 141 -77 0, 82 -71 1, 82 -42 1, 132 -43 0, 157 -54 1, 192 -69 0, 192 -105 1, 192 -162 0, 111 -162 1, 89 -162 0
-213 70 -120 144 407;70 -120 1, 70 -93 1, 96 -79 0, 96 -9 1, 96 0 1, 70 0 1, 70 74 1, 144 74 1, 144 12 1, 143 -102 0, 70 333 1, 70 407 1, 144 407 1, 144 333 1
-213 60 184 153 277;60 184 1, 60 277 1, 153 277 1, 153 184 1
-256 33 194 223 250;33 194 1, 33 250 1, 223 250 1, 223 194 1
-256 33 194 223 250;33 194 1, 33 250 1, 223 250 1, 223 194 1
-427 38 204 390 250;38 204 1, 38 250 1, 390 250 1, 390 204 1
-768 37 204 731 241;37 204 1, 37 241 1, 731 241 1, 731 204 1
-213 0 0 0 0;
-427 37 546 390 602;37 546 1, 37 602 1, 390 602 1, 390 546 1
-427 32 -9 383 416;307 248 1, 306 284 0, 299 303 1, 280 361 0, 215 361 1, 169 361 0, 143 334 1, 117 308 0, 111 248 1, 380 72 1, 380 13 1, 304 -9 0, 240 -9 1, 145 -9 0, 89 50 1, 32 109 0, 32 209 1, 32 304 0, 82 360 1, 132 416 0, 216 416 1, 314 416 0, 354 347 1, 383 296 0, 382 215 1, 382 192 1, 110 192 1, 114 147 0, 125 124 1, 158 47 0, 256 47 1, 312 47 0
-449 39 194 409 250;39 194 1, 39 250 1, 409 250 1, 409 194 1
-128 -165 -14 293 569;-165 -14 1, 243 569 1, 293 569 1, -114 -14 1
-213 60 184 153 277;60 184 1, 60 277 1, 153 277 1, 153 184 1
-384 12 0 336 602;66 0 1, 66 352 1, 12 352 1, 12 407 1, 66 407 1, 66 456 1, 66 602 0, 181 602 1, 206 602 0, 236 592 1, 236 533 1, 209 546 0, 189 546 1, 162 546 0, 151 528 1, 140 510 0, 140 464 1, 140 407 1, 336 407 1, 336 0 1, 262 0 1, 262 352 1, 140 352 1, 140 0 1, 262 481 1, 262 555 1, 336 555 1, 336 481 1
-384 12 0 336 602;66 0 1, 66 352 1, 12 352 1, 12 407 1, 66 407 1, 66 456 1, 66 602 0, 179 602 1, 262 592 1, 336 592 1, 336 0 1, 262 0 1, 262 537 1, 246 540 1, 214 546 0, 192 546 1, 159 546 0, 148 524 1, 140 505 0, 140 464 1, 140 407 1, 206 407 1, 206 352 1, 140 352 1, 140 0 1
-256 1 222 251 555;154 222 1, 154 313 1, 1 313 1, 1 356 1, 152 555 1, 205 555 1, 205 357 1, 251 357 1, 251 313 1, 205 313 1, 205 222 1, 50 357 1, 154 357 1, 154 493 1
-171 -58 -157 124 407;-58 -145 1, -58 -87 1, -28 -102 0, -2 -102 1, 35 -102 0, 43 -74 1, 50 -51 0, 50 0 1, 50 407 1, 124 407 1, 124 0 1, 124 -157 0, 4 -157 1, -29 -157 0
-213 0 0 0 0;
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr-12pt-with-hinting.txt b/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr-12pt-with-hinting.txt
deleted file mode 100644
index 9c30f6773..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr-12pt-with-hinting.txt
+++ /dev/null
@@ -1,392 +0,0 @@
-freetype version 2.5.1
-192 0 0 192 576;0 0 1, 0 576 1, 192 576 1, 192 0 1, 128 64 1, 128 512 1, 64 512 1, 64 64 1
-0 0 0 0 0;
-192 0 0 0 0;
-192 0 0 0 0;
-192 64 0 128 576;64 0 1, 64 64 1, 128 64 1, 128 0 1, 72 128 1, 64 454 1, 64 576 1, 128 576 1, 128 454 1, 120 128 1
-256 0 384 256 576;44 384 1, 35 576 1, 108 576 1, 99 384 1, 173 384 1, 164 576 1, 238 576 1, 229 384 1
-448 0 0 448 576;47 25 1, 89 192 1, 9 192 1, 18 256 1, 100 256 1, 133 320 1, 44 320 1, 54 384 1, 144 384 1, 186 551 1, 234 551 1, 192 384 1, 291 384 1, 332 551 1, 380 551 1, 339 384 1, 418 384 1, 409 320 1, 327 320 1, 294 256 1, 383 256 1, 374 192 1, 283 192 1, 242 25 1, 194 25 1, 235 192 1, 137 192 1, 95 25 1, 148 256 1, 247 256 1, 279 320 1, 180 320 1
-448 64 -64 320 640;192 -46 1, 192 0 1, 135 0 0, 64 31 1, 64 95 1, 137 56 0, 192 56 1, 192 255 1, 124 298 0, 96 331 1, 64 368 0, 64 422 1, 64 486 0, 110 524 1, 142 550 0, 192 555 1, 192 602 1, 256 602 1, 256 555 1, 285 555 0, 320 530 1, 320 470 1, 282 500 0, 256 504 1, 256 307 1, 258 304 1, 263 298 0, 267 293 1, 270 290 1, 293 262 0, 305 237 1, 320 205 0, 320 155 1, 320 87 0, 297 42 1, 282 12 0, 256 0 1, 256 -46 1, 256 60 1, 256 85 0, 256 144 1, 256 175 0, 256 195 1, 256 210 0, 256 233 1, 192 331 1, 192 502 1, 128 479 0, 128 425 1, 128 376 0
-704 64 0 640 576;94 0 1, 531 576 1, 589 576 1, 152 0 1, 160 576 1, 204 576 0, 230 542 1, 256 507 0, 256 448 1, 256 389 0, 230 355 1, 204 320 0, 160 320 1, 115 320 0, 90 355 1, 64 389 0, 64 450 1, 64 502 0, 85 535 1, 112 576 0, 160 512 1, 146 512 0, 137 495 1, 128 477 0, 128 449 1, 128 422 0, 135 405 1, 144 384 0, 160 384 1, 174 384 0, 183 402 1, 192 419 0, 192 448 1, 192 477 0, 183 494 1, 174 512 0, 512 320 1, 571 320 0, 606 277 1, 640 234 0, 640 160 1, 640 86 0, 606 43 1, 571 0 0, 512 0 1, 453 0 0, 418 43 1, 384 86 0, 384 162 1, 384 228 0, 412 269 1, 448 320 0, 512 256 1, 483 256 0, 466 230 1, 448 203 0, 448 162 1, 448 122 0, 462 96 1, 480 64 0, 512 64 1, 541 64 0, 558 91 1, 576 117 0, 576 160 1, 576 203 0, 558 229 1, 541 256 0
-512 0 0 512 576;384 0 1, 357 35 1, 277 0 0, 205 0 1, 118 0 0, 59 52 1, 0 105 0, 0 185 1, 0 264 0, 56 313 1, 89 341 0, 152 363 1, 128 420 0, 128 461 1, 128 513 0, 163 545 1, 199 576 0, 260 576 1, 317 576 0, 351 548 1, 384 519 0, 384 472 1, 384 419 0, 335 381 1, 305 358 0, 248 337 1, 311 214 0, 373 133 1, 410 185 0, 410 287 1, 410 320 1, 483 320 1, 483 179 0, 408 90 1, 441 44 0, 485 0 1, 325 82 1, 251 173 0, 178 321 1, 127 303 0, 102 281 1, 64 249 0, 64 203 1, 64 145 0, 107 104 1, 151 64 0, 212 64 1, 260 64 0, 220 383 1, 266 396 0, 288 411 1, 320 433 0, 320 464 1, 320 512 0, 258 512 1, 192 512 0, 192 461 1, 192 431 0, 217 388 1
-128 0 384 128 576;45 384 1, 27 576 1, 120 576 1, 101 384 1
-256 64 -128 256 640;225 -60 1, 225 -111 1, 156 -58 0, 117 21 1, 64 123 0, 64 241 1, 64 364 0, 121 469 1, 160 541 0, 225 592 1, 225 541 1, 177 485 0, 155 426 1, 128 353 0, 128 241 1, 128 124 0, 158 48 1, 180 -7 0
-256 0 -128 192 640;31 541 1, 31 592 1, 100 539 0, 140 460 1, 192 358 0, 192 241 1, 192 117 0, 135 12 1, 96 -60 0, 31 -111 1, 31 -60 1, 79 -3 0, 101 55 1, 128 129 0, 128 241 1, 128 357 0, 98 433 1, 77 487 0
-320 0 256 320 576;267 483 1, 284 415 1, 180 383 1, 180 384 1, 180 389 0, 192 390 1, 192 390 1, 192 411 0, 170 423 1, 255 296 1, 210 266 1, 152 360 1, 171 362 0, 178 378 1, 88 266 1, 43 296 1, 120 378 1, 128 362 0, 147 360 1, 15 415 1, 32 483 1, 129 423 1, 118 410 0, 118 389 1, 118 389 1, 118 389 0, 118 387 1, 119 386 1, 119 384 0, 119 383 1, 122 576 1, 177 576 1, 165 427 1, 157 448 0, 149 448 1, 140 448 0, 133 427 1
-448 64 64 384 384;192 64 1, 192 192 1, 64 192 1, 64 256 1, 192 256 1, 192 384 1, 256 384 1, 256 256 1, 384 256 1, 384 192 1, 256 192 1, 256 64 1
-192 64 -192 128 64;64 -149 1, 64 -121 1, 89 -111 0, 89 -36 1, 89 -29 1, 64 -29 1, 64 64 1, 128 64 1, 128 -16 1, 128 -139 0
-256 64 192 192 256;64 192 1, 64 256 1, 192 256 1, 192 192 1
-192 64 0 128 64;64 0 1, 64 64 1, 128 64 1, 128 0 1
-192 -64 -128 256 576;-22 -128 1, 178 576 1, 236 576 1, 36 -128 1
-448 0 0 384 576;192 576 1, 280 576 0, 332 499 1, 384 422 0, 384 289 1, 384 154 0, 332 77 1, 280 0 0, 190 0 1, 112 0 0, 63 63 1, 0 142 0, 0 289 1, 0 422 0, 52 499 1, 104 576 0, 192 512 1, 130 512 0, 97 454 1, 64 395 0, 64 288 1, 64 183 0, 97 123 1, 130 64 0, 192 64 1, 248 64 0, 279 107 1, 320 165 0, 320 289 1, 320 397 0, 287 454 1, 252 512 0
-448 64 0 384 640;64 0 1, 64 64 1, 192 64 1, 192 502 1, 64 474 1, 64 531 1, 256 577 1, 256 64 1, 384 64 1, 384 0 1
-448 64 0 320 576;64 0 1, 64 64 1, 85 124 0, 134 187 1, 167 228 1, 197 266 1, 256 339 0, 256 414 1, 256 466 0, 232 491 1, 213 512 0, 178 512 1, 133 512 0, 64 486 1, 64 554 1, 129 576 0, 185 576 1, 247 576 0, 283 533 1, 320 490 0, 320 418 1, 320 368 0, 301 330 1, 282 290 0, 230 234 1, 208 211 1, 142 139 0, 129 64 1, 320 64 1, 320 0 1
-448 64 0 384 576;64 4 1, 64 76 1, 67 76 1, 78 74 0, 83 74 1, 129 68 0, 146 66 1, 173 64 0, 196 64 1, 260 64 0, 292 94 1, 320 119 0, 320 167 1, 320 222 0, 272 251 1, 225 280 0, 137 280 1, 108 280 1, 108 332 1, 131 332 1, 191 333 0, 223 360 1, 256 387 0, 256 435 1, 256 512 0, 172 512 1, 129 512 0, 64 500 1, 64 568 1, 126 576 0, 174 576 1, 257 576 0, 293 534 1, 320 502 0, 320 450 1, 320 391 0, 287 353 1, 267 331 0, 228 312 1, 278 301 0, 303 288 1, 384 248 0, 384 165 1, 384 90 0, 332 45 1, 279 0 0, 194 0 1, 148 0 0
-448 0 0 384 576;256 0 1, 256 128 1, 0 128 1, 0 187 1, 256 576 1, 320 576 1, 320 192 1, 384 192 1, 384 128 1, 320 128 1, 320 0 1, 75 192 1, 256 192 1, 256 473 1
-448 64 -64 320 576;64 -2 1, 64 67 1, 113 64 0, 154 64 1, 202 64 0, 229 98 1, 256 132 0, 256 189 1, 256 320 0, 102 320 1, 83 320 0, 64 297 1, 64 576 1, 320 576 1, 320 512 1, 128 512 1, 128 359 1, 212 357 0, 259 319 1, 320 269 0, 320 173 1, 320 92 0, 274 46 1, 227 0 0, 146 0 1, 111 0 0
-448 64 0 384 576;141 303 1, 187 384 0, 253 384 1, 314 384 0, 349 336 1, 384 288 0, 384 203 1, 384 110 0, 342 55 1, 300 0 0, 229 0 1, 152 0 0, 108 72 1, 64 144 0, 64 270 1, 64 414 0, 121 495 1, 179 576 0, 281 576 1, 327 576 0, 384 569 1, 384 502 1, 316 512 0, 278 512 1, 195 512 0, 162 434 1, 149 403 0, 144 364 1, 142 344 0, 229 320 1, 184 320 0, 156 288 1, 128 257 0, 128 203 1, 128 143 0, 157 103 1, 185 64 0, 231 64 1, 320 64 0, 320 187 1, 320 320 0
-448 64 0 384 576;93 0 1, 103 68 0, 121 118 1, 139 168 0, 185 255 1, 321 512 1, 64 512 1, 64 576 1, 384 576 1, 384 512 1, 192 180 0, 169 0 1
-448 64 0 384 576;147 313 1, 110 339 0, 91 363 1, 64 398 0, 64 438 1, 64 499 0, 110 537 1, 156 576 0, 230 576 1, 299 576 0, 342 543 1, 384 511 0, 384 457 1, 384 410 0, 347 367 1, 325 341 0, 283 313 1, 328 284 0, 351 254 1, 384 211 0, 384 155 1, 384 87 0, 338 43 1, 293 0 0, 221 0 1, 150 0 0, 107 41 1, 64 82 0, 64 150 1, 64 210 0, 94 257 1, 113 285 0, 242 338 1, 320 387 0, 320 441 1, 320 473 0, 294 493 1, 267 512 0, 222 512 1, 180 512 0, 154 494 1, 128 476 0, 128 445 1, 128 409 0, 173 378 1, 195 362 0, 188 282 1, 156 252 0, 143 229 1, 128 204 0, 128 165 1, 128 120 0, 155 92 1, 181 64 0, 225 64 1, 267 64 0, 293 88 1, 320 111 0, 320 149 1, 320 183 0, 298 206 1, 280 225 0, 236 253 1
-448 64 0 384 576;308 273 1, 262 192 0, 195 192 1, 134 192 0, 99 240 1, 64 288 0, 64 373 1, 64 466 0, 106 521 1, 148 576 0, 218 576 1, 296 576 0, 340 504 1, 384 432 0, 384 306 1, 384 162 0, 327 81 1, 269 0 0, 168 0 1, 120 0 0, 64 7 1, 64 74 1, 133 64 0, 171 64 1, 254 64 0, 287 143 1, 300 173 0, 305 212 1, 307 232 0, 217 512 1, 128 512 0, 128 390 1, 128 256 0, 219 256 1, 264 256 0, 292 288 1, 320 320 0, 320 374 1, 320 433 0, 291 473 1, 262 512 0
-192 64 0 128 384;64 0 1, 64 64 1, 128 64 1, 128 0 1, 64 320 1, 64 384 1, 128 384 1, 128 320 1
-192 64 -128 128 384;64 -120 1, 64 -93 1, 87 -79 0, 87 -9 1, 87 0 1, 64 0 1, 64 64 1, 128 64 1, 128 10 1, 128 -102 0, 64 320 1, 64 384 1, 128 384 1, 128 320 1
-448 0 0 384 448;384 37 1, 14 222 1, 384 407 1, 384 345 1, 139 222 1, 139 222 1, 384 99 1
-448 64 128 384 320;64 128 1, 64 192 1, 384 192 1, 384 128 1, 64 256 1, 64 320 1, 384 320 1, 384 256 1
-448 64 0 448 448;64 407 1, 434 222 1, 64 37 1, 64 99 1, 309 222 1, 309 222 1, 64 345 1
-448 64 0 384 576;128 0 1, 128 64 1, 192 64 1, 192 0 1, 128 128 1, 128 150 1, 128 246 0, 201 297 1, 241 324 1, 320 377 0, 320 435 1, 320 512 0, 215 512 1, 150 512 0, 64 500 1, 64 568 1, 145 576 0, 213 576 1, 287 576 0, 330 550 1, 384 515 0, 384 441 1, 384 366 0, 301 319 1, 266 299 1, 222 275 0, 207 248 1, 192 222 0, 192 173 1, 192 128 1
-768 64 0 704 576;470 17 1, 394 0 0, 325 0 1, 213 0 0, 138 64 1, 64 129 0, 64 229 1, 64 365 0, 177 471 1, 291 576 0, 439 576 1, 553 576 0, 628 510 1, 704 444 0, 704 346 1, 704 255 0, 647 191 1, 591 128 0, 511 128 1, 448 128 0, 448 167 1, 448 180 0, 451 202 1, 458 245 1, 453 245 1, 424 192 0, 398 166 1, 361 128 0, 320 128 1, 256 128 0, 256 210 1, 256 301 0, 312 374 1, 368 448 0, 439 448 1, 447 448 0, 461 448 1, 465 448 0, 469 448 1, 483 448 0, 492 448 1, 543 448 1, 513 235 1, 512 225 0, 512 215 1, 512 192 0, 536 192 1, 576 192 0, 608 237 1, 640 283 0, 640 341 1, 640 415 0, 581 463 1, 521 512 0, 430 512 1, 312 512 0, 220 428 1, 128 344 0, 128 238 1, 128 160 0, 188 112 1, 247 64 0, 339 64 1, 398 64 0, 456 56 1, 462 318 1, 477 393 1, 447 384 0, 426 384 1, 380 384 0, 350 341 1, 320 298 0, 320 237 1, 320 192 0, 345 192 1, 387 192 0
-512 0 0 512 576;7 0 1, 218 576 1, 296 576 1, 503 0 1, 419 0 1, 361 128 1, 138 128 1, 80 0 1, 161 192 1, 339 192 1, 250 458 1
-512 64 0 448 576;64 0 1, 64 576 1, 227 576 1, 348 576 0, 398 546 1, 448 516 0, 448 443 1, 448 377 0, 396 336 1, 364 311 0, 304 292 1, 369 272 0, 401 244 1, 448 204 0, 448 140 1, 448 80 0, 410 41 1, 383 13 0, 340 6 1, 305 0 0, 247 0 1, 128 64 1, 186 64 1, 308 64 0, 346 80 1, 384 95 0, 384 144 1, 384 199 0, 335 227 1, 285 256 0, 192 256 1, 128 256 1, 128 320 1, 195 320 1, 384 320 0, 384 430 1, 384 486 0, 330 501 1, 288 512 0, 201 512 1, 128 512 1
-576 64 0 512 576;512 30 1, 429 0 0, 334 0 1, 202 0 0, 133 73 1, 64 147 0, 64 287 1, 64 427 0, 134 502 1, 205 576 0, 338 576 1, 413 576 0, 512 566 1, 512 489 1, 394 512 0, 326 512 1, 230 512 0, 179 454 1, 128 396 0, 128 287 1, 128 180 0, 182 122 1, 237 64 0, 335 64 1, 417 64 0, 512 100 1
-576 64 0 512 576;64 0 1, 64 576 1, 227 576 1, 512 576 0, 512 301 1, 512 158 0, 438 79 1, 364 0 0, 228 0 1, 128 64 1, 223 64 1, 448 64 0, 448 292 1, 448 426 0, 360 481 1, 335 497 0, 299 504 1, 257 512 0, 186 512 1, 128 512 1
-512 64 0 512 576;64 0 1, 64 576 1, 448 576 1, 448 512 1, 128 512 1, 128 320 1, 448 320 1, 448 256 1, 128 256 1, 128 64 1, 512 64 1, 512 0 1
-448 64 0 448 576;64 0 1, 64 576 1, 448 576 1, 448 512 1, 128 512 1, 128 320 1, 384 320 1, 384 256 1, 128 256 1, 128 0 1
-576 64 0 512 576;512 256 1, 512 14 1, 418 0 0, 330 0 1, 64 0 0, 64 286 1, 64 426 0, 133 501 1, 202 576 0, 332 576 1, 416 576 0, 512 564 1, 512 485 1, 398 512 0, 323 512 1, 128 512 0, 128 289 1, 128 180 0, 183 122 1, 238 64 0, 340 64 1, 382 64 0, 448 57 1, 448 192 1, 384 192 1, 384 256 1
-576 64 0 512 576;64 0 1, 64 576 1, 128 576 1, 128 320 1, 448 320 1, 448 576 1, 512 576 1, 512 0 1, 448 0 1, 448 256 1, 128 256 1, 128 0 1
-192 64 0 128 576;64 0 1, 64 576 1, 128 576 1, 128 0 1
-384 0 -128 320 576;0 -87 1, 0 -19 1, 75 -64 0, 141 -64 1, 216 -64 0, 238 -29 1, 256 0 0, 256 71 1, 256 576 1, 320 576 1, 320 73 1, 320 -128 0, 125 -128 1, 60 -128 0
-512 64 0 512 576;64 0 1, 64 576 1, 128 576 1, 128 293 1, 359 576 1, 438 576 1, 214 301 1, 476 0 1, 377 0 1, 128 292 1, 128 0 1
-448 64 0 384 576;64 0 1, 64 576 1, 128 576 1, 128 64 1, 384 64 1, 384 0 1
-640 64 0 576 576;64 0 1, 64 576 1, 170 576 1, 327 151 1, 487 576 1, 576 576 1, 576 0 1, 512 0 1, 512 473 1, 357 64 1, 279 64 1, 128 475 1, 128 0 1
-576 64 0 512 576;64 0 1, 64 576 1, 138 576 1, 448 131 1, 448 576 1, 512 576 1, 512 0 1, 437 0 1, 128 445 1, 128 0 1
-576 64 0 576 576;320 576 1, 436 576 0, 506 498 1, 576 419 0, 576 289 1, 576 156 0, 506 78 1, 436 0 0, 316 0 1, 214 0 0, 147 64 1, 64 145 0, 64 288 1, 64 420 0, 134 498 1, 204 576 0, 320 512 1, 229 512 0, 179 453 1, 128 394 0, 128 288 1, 128 183 0, 179 124 1, 229 64 0, 318 64 1, 401 64 0, 450 112 1, 512 171 0, 512 289 1, 512 394 0, 461 453 1, 410 512 0
-512 64 0 512 576;64 0 1, 64 576 1, 267 576 1, 365 576 0, 408 565 1, 451 553 0, 478 520 1, 512 479 0, 512 408 1, 512 192 0, 244 192 1, 128 192 1, 128 0 1, 128 256 1, 240 256 1, 448 256 0, 448 402 1, 448 473 0, 394 494 1, 348 512 0, 242 512 1, 128 512 1
-576 64 -128 640 576;615 -48 1, 565 -111 1, 434 -68 0, 346 -10 1, 311 0 0, 293 0 1, 193 0 0, 128 81 1, 64 161 0, 64 289 1, 64 419 0, 133 497 1, 203 576 0, 319 576 1, 436 576 0, 506 495 1, 576 415 0, 576 280 1, 576 162 0, 517 87 1, 494 58 0, 464 38 1, 449 27 0, 418 11 1, 510 -30 0, 318 512 1, 229 512 0, 179 452 1, 128 393 0, 128 288 1, 128 183 0, 179 124 1, 229 64 0, 318 64 1, 409 64 0, 460 123 1, 512 181 0, 512 286 1, 512 383 0, 471 441 1, 420 512 0
-576 64 0 576 576;64 0 1, 64 576 1, 281 576 1, 448 576 0, 448 439 1, 448 372 0, 408 329 1, 384 303 0, 340 283 1, 525 0 1, 428 0 1, 271 256 1, 128 256 1, 128 0 1, 128 320 1, 216 320 1, 303 320 0, 343 346 1, 384 373 0, 384 429 1, 384 474 0, 351 493 1, 318 512 0, 241 512 1, 128 512 1
-512 64 0 512 576;64 21 1, 64 102 1, 189 64 0, 311 64 1, 448 64 0, 448 152 1, 448 197 0, 410 218 1, 381 235 0, 315 253 1, 229 278 1, 64 324 0, 64 431 1, 64 576 0, 267 576 1, 355 576 0, 448 566 1, 448 491 1, 347 512 0, 255 512 1, 128 512 0, 128 431 1, 128 399 0, 154 379 1, 180 359 0, 247 340 1, 334 316 1, 432 288 0, 472 252 1, 512 216 0, 512 156 1, 512 84 0, 454 42 1, 396 0 0, 294 0 1, 193 0 0
-448 0 0 448 576;192 0 1, 192 512 1, 0 512 1, 0 576 1, 448 576 1, 448 512 1, 256 512 1, 256 0 1
-576 64 0 512 576;64 576 1, 128 576 1, 128 213 1, 128 158 0, 139 132 1, 150 106 0, 180 88 1, 223 64 0, 295 64 1, 379 64 0, 414 97 1, 448 129 0, 448 210 1, 448 576 1, 512 576 1, 512 211 1, 512 139 0, 497 102 1, 482 64 0, 440 37 1, 385 0 0, 292 0 1, 174 0 0, 119 51 1, 64 102 0, 64 214 1
-512 0 0 512 576;228 0 1, 14 576 1, 95 576 1, 272 103 1, 441 576 1, 508 576 1, 302 0 1
-704 0 0 768 576;152 0 1, 9 576 1, 85 576 1, 199 121 1, 329 576 1, 405 576 1, 530 125 1, 651 576 1, 716 576 1, 560 0 1, 482 0 1, 358 444 1, 230 0 1
-512 0 0 512 576;11 0 1, 215 286 1, 20 576 1, 113 576 1, 263 352 1, 423 576 1, 498 576 1, 299 300 1, 502 0 1, 409 0 1, 251 233 1, 85 0 1
-512 -64 0 512 576;192 0 1, 192 240 1, -7 576 1, 83 576 1, 232 309 1, 395 576 1, 468 576 1, 256 242 1, 256 0 1
-448 64 0 448 576;64 0 1, 64 64 1, 351 512 1, 64 512 1, 64 576 1, 448 576 1, 448 512 1, 142 64 1, 448 64 1, 448 0 1
-192 64 -128 192 576;64 -128 1, 64 576 1, 192 576 1, 192 512 1, 128 512 1, 128 -64 1, 192 -64 1, 192 -128 1
-192 -64 -128 256 576;236 -128 1, 178 -128 1, -22 576 1, 36 576 1
-192 0 -128 128 576;128 576 1, 128 -128 1, 0 -128 1, 0 -64 1, 64 -64 1, 64 512 1, 0 512 1, 0 576 1
-384 0 192 384 576;180 401 1, 75 192 1, 14 192 1, 180 525 1, 347 192 1, 284 192 1
-448 0 -64 448 0;0 -64 1, 0 0 1, 448 0 1, 448 -64 1
-256 0 512 256 576;216 512 1, 160 512 1, 40 576 1, 125 576 1
-448 0 0 448 384;329 49 1, 239 0 0, 155 0 1, 86 0 0, 43 28 1, 0 57 0, 0 101 1, 0 227 0, 299 227 1, 320 227 1, 320 274 1, 320 320 0, 224 320 1, 149 320 0, 64 307 1, 64 364 1, 151 384 0, 228 384 1, 309 384 0, 347 358 1, 384 331 0, 384 274 1, 384 99 1, 384 64 0, 423 64 1, 428 64 0, 437 42 1, 443 3 1, 417 0 0, 392 0 1, 368 0 0, 352 11 1, 337 23 0, 320 87 1, 320 186 1, 283 187 1, 248 188 0, 206 184 1, 64 173 0, 64 116 1, 64 64 0, 168 64 1, 240 64 0
-448 64 -64 384 576;128 249 1, 128 53 1, 182 64 0, 209 64 1, 320 64 0, 320 199 1, 320 256 0, 298 288 1, 276 320 0, 239 320 1, 190 320 0, 128 312 1, 148 344 0, 171 361 1, 204 384 0, 247 384 1, 308 384 0, 346 334 1, 384 285 0, 384 202 1, 384 106 0, 335 53 1, 286 0 0, 197 0 1, 164 0 0, 128 0 1, 64 -5 1, 64 576 1, 128 576 1
-384 0 0 320 384;320 11 1, 251 0 0, 190 0 1, 104 0 0, 52 53 1, 0 107 0, 0 192 1, 0 282 0, 54 333 1, 108 384 0, 205 384 1, 254 384 0, 320 380 1, 320 322 1, 251 320 0, 209 320 1, 64 320 0, 64 191 1, 64 130 0, 101 97 1, 137 64 0, 203 64 1, 253 64 0, 320 72 1
-448 64 0 384 576;320 135 1, 320 331 1, 265 320 0, 239 320 1, 128 320 0, 128 185 1, 128 129 0, 150 96 1, 172 64 0, 209 64 1, 258 64 0, 320 72 1, 300 40 0, 277 23 1, 245 0 0, 201 0 1, 140 0 0, 102 50 1, 64 100 0, 64 182 1, 64 278 0, 113 331 1, 162 384 0, 251 384 1, 285 384 0, 320 384 1, 320 576 1, 384 576 1, 384 0 1, 320 0 1
-448 64 0 448 384;311 256 1, 310 277 0, 303 287 1, 284 320 0, 219 320 1, 173 320 0, 147 305 1, 121 290 0, 115 256 1, 384 72 1, 384 13 1, 314 0 0, 256 0 1, 168 0 0, 116 53 1, 64 107 0, 64 197 1, 64 283 0, 110 333 1, 156 384 0, 234 384 1, 323 384 0, 360 325 1, 387 281 0, 386 212 1, 386 192 1, 114 192 1, 119 153 0, 129 132 1, 162 64 0, 260 64 1, 316 64 0
-192 0 0 256 576;64 0 1, 64 320 1, 0 320 1, 0 384 1, 64 384 1, 64 433 1, 64 576 0, 194 576 1, 221 576 0, 256 569 1, 256 510 1, 219 512 0, 193 512 1, 157 512 0, 142 496 1, 128 481 0, 128 441 1, 128 384 1, 192 384 1, 192 320 1, 128 320 1, 128 0 1
-448 64 -192 384 384;320 153 1, 320 331 1, 265 320 0, 240 320 1, 128 320 0, 128 190 1, 128 132 0, 150 98 1, 172 64 0, 209 64 1, 258 64 0, 320 90 1, 300 50 0, 277 29 1, 245 0 0, 202 0 1, 140 0 0, 102 52 1, 64 103 0, 64 186 1, 64 280 0, 113 332 1, 162 384 0, 250 384 1, 285 384 0, 320 384 1, 384 384 1, 384 105 1, 384 22 0, 374 -18 1, 348 -128 0, 194 -128 1, 130 -128 0, 64 -135 1, 64 -71 1, 143 -64 0, 198 -64 1, 320 -64 0, 320 29 1
-448 64 0 384 576;64 0 1, 64 576 1, 128 576 1, 128 312 1, 157 344 0, 185 360 1, 226 384 0, 275 384 1, 384 384 0, 384 276 1, 384 0 1, 320 0 1, 320 254 1, 320 293 0, 308 306 1, 296 320 0, 264 320 1, 194 320 0, 128 249 1, 128 0 1
-192 64 0 128 576;64 0 1, 64 384 1, 128 384 1, 128 0 1, 64 512 1, 64 576 1, 128 576 1, 128 512 1
-192 -64 -192 128 576;-64 -145 1, -64 -87 1, -28 -64 0, 3 -64 1, 46 -64 0, 56 -47 1, 64 -32 0, 64 0 1, 64 384 1, 128 384 1, 128 0 1, 128 -128 0, 2 -128 1, -33 -128 0, 64 512 1, 64 576 1, 128 576 1, 128 512 1
-384 64 0 384 576;64 0 1, 64 576 1, 128 576 1, 128 198 1, 265 384 1, 335 384 1, 205 203 1, 374 0 1, 284 0 1, 128 197 1, 128 0 1
-192 64 0 128 576;64 0 1, 64 576 1, 128 576 1, 128 0 1
-640 64 0 576 384;64 0 1, 64 384 1, 128 384 1, 128 312 1, 156 353 0, 173 368 1, 194 384 0, 227 384 1, 268 384 0, 294 357 1, 309 342 0, 320 312 1, 357 354 0, 380 368 1, 408 384 0, 453 384 1, 576 384 0, 576 279 1, 576 0 1, 493 0 1, 493 257 1, 493 320 0, 432 320 1, 378 320 0, 320 257 1, 320 0 1, 256 0 1, 256 268 1, 256 320 0, 211 320 1, 171 320 0, 128 257 1, 128 0 1
-448 64 0 384 384;64 0 1, 64 384 1, 128 384 1, 128 312 1, 157 344 0, 185 360 1, 226 384 0, 275 384 1, 384 384 0, 384 276 1, 384 0 1, 320 0 1, 320 253 1, 320 292 0, 308 306 1, 296 320 0, 264 320 1, 194 320 0, 128 249 1, 128 0 1
-448 64 0 384 384;224 384 1, 298 384 0, 341 333 1, 384 281 0, 384 193 1, 384 102 0, 341 51 1, 298 0 0, 222 0 1, 156 0 0, 116 42 1, 64 95 0, 64 192 1, 64 281 0, 107 333 1, 150 384 0, 224 320 1, 128 320 0, 128 192 1, 128 64 0, 224 64 1, 320 64 0, 320 193 1, 320 320 0
-448 64 -128 384 384;128 -128 1, 64 -128 1, 64 384 1, 128 384 1, 128 312 1, 148 344 0, 171 361 1, 203 384 0, 247 384 1, 308 384 0, 346 334 1, 384 285 0, 384 202 1, 384 106 0, 335 53 1, 286 0 0, 197 0 1, 164 0 0, 128 0 1, 128 249 1, 128 53 1, 182 64 0, 209 64 1, 320 64 0, 320 199 1, 320 256 0, 298 288 1, 276 320 0, 239 320 1, 190 320 0
-448 64 -128 384 384;320 384 1, 384 384 1, 384 -128 1, 320 -128 1, 320 72 1, 300 40 0, 277 23 1, 245 0 0, 201 0 1, 140 0 0, 102 50 1, 64 100 0, 64 182 1, 64 278 0, 113 331 1, 162 384 0, 251 384 1, 285 384 0, 320 135 1, 320 331 1, 265 320 0, 239 320 1, 128 320 0, 128 185 1, 128 129 0, 150 96 1, 172 64 0, 209 64 1, 258 64 0
-256 64 0 256 448;64 0 1, 64 384 1, 128 384 1, 128 312 1, 145 345 0, 165 361 1, 194 384 0, 233 384 1, 241 384 0, 256 391 1, 256 326 1, 235 320 0, 222 320 1, 178 320 0, 128 253 1, 128 0 1
-384 64 0 320 384;64 13 1, 64 77 1, 128 64 0, 183 64 1, 256 64 0, 256 116 1, 256 152 0, 204 168 1, 147 187 1, 64 214 0, 64 286 1, 64 384 0, 215 384 1, 258 384 0, 320 381 1, 320 323 1, 263 320 0, 206 320 1, 128 320 0, 128 276 1, 128 244 0, 174 230 1, 225 213 1, 320 182 0, 320 106 1, 320 57 0, 283 29 1, 245 0 0, 180 0 1, 129 0 0
-192 0 -64 192 512;192 -2 1, 172 0 0, 154 0 1, 64 0 0, 64 103 1, 64 320 1, 0 320 1, 0 384 1, 64 384 1, 64 458 1, 128 465 1, 128 384 1, 192 384 1, 192 320 1, 128 320 1, 128 115 1, 128 84 0, 136 74 1, 144 64 0, 168 64 1, 182 64 0, 192 45 1
-448 64 0 384 384;320 0 1, 320 72 1, 291 40 0, 263 24 1, 222 0 0, 174 0 1, 64 0 0, 64 108 1, 64 384 1, 128 384 1, 128 131 1, 128 92 0, 140 78 1, 152 64 0, 184 64 1, 254 64 0, 320 135 1, 320 384 1, 384 384 1, 384 0 1
-384 0 0 384 384;152 0 1, 7 384 1, 82 384 1, 195 85 1, 314 384 1, 380 384 1, 225 0 1
-576 0 0 576 384;102 0 1, 4 384 1, 77 384 1, 150 95 1, 244 384 1, 318 384 1, 400 94 1, 486 384 1, 549 384 1, 435 0 1, 361 0 1, 275 297 1, 177 0 1
-384 0 0 384 384;11 0 1, 143 203 1, 15 384 1, 101 384 1, 203 240 1, 294 384 1, 362 384 1, 238 191 1, 372 0 1, 287 0 1, 177 154 1, 79 0 1
-384 0 -128 384 384;152 0 1, 7 384 1, 82 384 1, 193 90 1, 314 384 1, 380 384 1, 164 -128 1, 87 -128 1
-384 0 0 384 384;0 0 1, 0 64 1, 291 320 1, 64 320 1, 64 384 1, 384 384 1, 384 320 1, 145 64 1, 384 64 1, 384 0 1
-256 0 -128 192 640;0 269 1, 22 269 1, 64 269 0, 64 330 1, 64 354 0, 64 382 1, 64 414 1, 64 447 0, 64 476 1, 64 537 0, 109 569 1, 141 591 0, 192 592 1, 192 537 1, 173 537 1, 153 537 0, 141 524 1, 128 510 0, 128 490 1, 128 483 0, 128 455 1, 128 417 1, 128 391 0, 128 361 1, 128 290 0, 80 241 1, 128 192 0, 128 120 1, 128 90 0, 128 65 1, 128 26 1, 128 -1 0, 128 -9 1, 128 -29 0, 141 -43 1, 154 -56 0, 173 -56 1, 192 -56 1, 192 -111 1, 139 -110 0, 106 -85 1, 64 -52 0, 64 6 1, 64 35 0, 64 67 1, 64 100 1, 64 127 0, 64 152 1, 64 213 0, 22 213 1, 0 213 1
-192 64 -128 128 576;64 -128 1, 64 576 1, 128 576 1, 128 -128 1
-256 64 -128 256 640;256 213 1, 234 213 1, 192 213 0, 192 152 1, 192 124 0, 192 100 1, 192 67 1, 192 36 0, 192 6 1, 192 -55 0, 146 -88 1, 114 -110 0, 64 -111 1, 64 -56 1, 82 -56 1, 102 -56 0, 115 -43 1, 128 -29 0, 128 -9 1, 128 1 0, 128 26 1, 128 65 1, 128 88 0, 128 120 1, 128 192 0, 176 241 1, 154 263 0, 144 285 1, 128 318 0, 128 361 1, 128 393 0, 128 417 1, 128 455 1, 128 480 0, 128 491 1, 128 510 0, 115 524 1, 102 537 0, 82 537 1, 64 537 1, 64 592 1, 117 591 0, 150 566 1, 192 534 0, 192 475 1, 192 445 0, 192 414 1, 192 382 1, 192 357 0, 192 329 1, 192 269 0, 234 269 1, 256 269 1
-448 0 192 448 256;95 192 1, 39 192 1, 40 213 0, 47 223 1, 69 256 0, 139 256 1, 176 256 0, 214 256 1, 256 256 1, 280 256 1, 291 256 0, 309 256 1, 352 256 0, 354 256 1, 409 256 1, 408 235 0, 401 225 1, 379 192 0, 310 192 1, 273 192 0, 235 192 1, 193 192 1, 168 192 1, 158 192 0, 140 192 1, 96 192 0
-512 -64 0 576 640;-15 0 1, 196 576 1, 316 576 1, 524 0 1, 439 0 1, 381 128 1, 116 128 1, 58 0 1, 138 192 1, 360 192 1, 246 458 1, 128 576 1, 128 640 1, 192 640 1, 192 576 1, 320 576 1, 320 640 1, 384 640 1, 384 576 1
-512 0 0 512 768;7 0 1, 218 576 1, 296 576 1, 503 0 1, 419 0 1, 361 128 1, 138 128 1, 80 0 1, 161 192 1, 339 192 1, 250 458 1, 256 768 1, 283 768 0, 301 740 1, 320 712 0, 320 672 1, 320 632 0, 301 604 1, 282 576 0, 255 576 1, 232 576 0, 215 599 1, 192 628 0, 192 672 1, 192 712 0, 211 740 1, 229 768 0, 256 704 1, 256 704 0, 256 695 1, 256 686 0, 256 672 1, 256 659 0, 256 650 1, 256 640 0, 256 640 1, 256 640 0, 256 648 1, 256 657 0, 256 672 1, 256 686 0, 256 695 1, 256 704 0
-576 64 -192 512 576;512 30 1, 429 0 0, 334 0 1, 202 0 0, 133 73 1, 64 147 0, 64 287 1, 64 427 0, 134 502 1, 205 576 0, 338 576 1, 413 576 0, 512 566 1, 512 489 1, 394 512 0, 326 512 1, 230 512 0, 179 454 1, 128 396 0, 128 287 1, 128 180 0, 182 122 1, 237 64 0, 335 64 1, 417 64 0, 512 100 1, 293 0 1, 330 0 1, 307 -41 1, 336 -42 0, 356 -59 1, 384 -82 0, 384 -116 1, 384 -148 0, 361 -170 1, 338 -192 0, 306 -192 1, 280 -192 0, 250 -154 1, 250 -124 1, 267 -128 0, 285 -128 1, 320 -128 0, 320 -101 1, 320 -67 0, 258 -66 1
-512 64 0 512 704;64 0 1, 64 576 1, 448 576 1, 448 512 1, 128 512 1, 128 320 1, 448 320 1, 448 256 1, 128 256 1, 128 64 1, 512 64 1, 512 0 1, 211 576 1, 311 704 1, 407 704 1, 273 576 1
-576 64 0 512 768;64 0 1, 64 576 1, 138 576 1, 448 131 1, 448 576 1, 512 576 1, 512 0 1, 437 0 1, 128 445 1, 128 0 1, 163 623 1, 166 656 0, 176 673 1, 195 704 0, 239 704 1, 268 704 0, 293 704 1, 318 704 1, 341 704 0, 353 704 1, 380 704 0, 384 710 1, 434 710 1, 431 682 0, 421 667 1, 403 640 0, 359 640 1, 329 640 0, 304 640 1, 279 640 1, 257 640 0, 244 640 1, 217 640 0, 213 623 1
-576 64 0 512 640;288 576 1, 389 576 0, 451 498 1, 512 419 0, 512 289 1, 512 156 0, 451 78 1, 389 0 0, 285 0 1, 195 0 0, 137 64 1, 64 145 0, 64 288 1, 64 420 0, 125 498 1, 186 576 0, 288 512 1, 212 512 0, 170 453 1, 128 394 0, 128 288 1, 128 183 0, 170 124 1, 212 64 0, 286 64 1, 355 64 0, 397 112 1, 448 171 0, 448 289 1, 448 394 0, 406 453 1, 363 512 0, 192 576 1, 192 640 1, 256 640 1, 256 576 1, 320 576 1, 320 640 1, 384 640 1, 384 576 1
-576 64 0 512 640;64 576 1, 128 576 1, 128 213 1, 128 158 0, 139 132 1, 150 106 0, 180 88 1, 223 64 0, 295 64 1, 379 64 0, 414 97 1, 448 129 0, 448 210 1, 448 576 1, 512 576 1, 512 211 1, 512 139 0, 497 102 1, 482 64 0, 440 37 1, 385 0 0, 292 0 1, 174 0 0, 119 51 1, 64 102 0, 64 214 1, 192 576 1, 192 640 1, 256 640 1, 256 576 1, 320 576 1, 320 640 1, 384 640 1, 384 576 1
-448 0 0 448 576;329 49 1, 239 0 0, 155 0 1, 86 0 0, 43 28 1, 0 57 0, 0 101 1, 0 227 0, 299 227 1, 320 227 1, 320 274 1, 320 320 0, 224 320 1, 149 320 0, 64 307 1, 64 364 1, 151 384 0, 228 384 1, 309 384 0, 347 358 1, 384 331 0, 384 274 1, 384 99 1, 384 64 0, 423 64 1, 428 64 0, 437 42 1, 443 3 1, 417 0 0, 392 0 1, 368 0 0, 352 11 1, 337 23 0, 320 87 1, 320 186 1, 283 187 1, 248 188 0, 206 184 1, 64 173 0, 64 116 1, 64 64 0, 168 64 1, 240 64 0, 168 512 1, 259 576 1, 344 576 1, 224 512 1
-448 0 0 448 576;329 49 1, 239 0 0, 155 0 1, 86 0 0, 43 28 1, 0 57 0, 0 101 1, 0 227 0, 299 227 1, 320 227 1, 320 274 1, 320 320 0, 224 320 1, 149 320 0, 64 307 1, 64 364 1, 151 384 0, 228 384 1, 309 384 0, 347 358 1, 384 331 0, 384 274 1, 384 99 1, 384 64 0, 423 64 1, 428 64 0, 437 42 1, 443 3 1, 417 0 0, 392 0 1, 368 0 0, 352 11 1, 337 23 0, 320 87 1, 320 186 1, 283 187 1, 248 188 0, 206 184 1, 64 173 0, 64 116 1, 64 64 0, 168 64 1, 240 64 0, 280 512 1, 224 512 1, 104 576 1, 189 576 1
-448 0 0 448 576;329 49 1, 239 0 0, 155 0 1, 86 0 0, 43 28 1, 0 57 0, 0 101 1, 0 227 0, 299 227 1, 320 227 1, 320 274 1, 320 320 0, 224 320 1, 149 320 0, 64 307 1, 64 364 1, 151 384 0, 228 384 1, 309 384 0, 347 358 1, 384 331 0, 384 274 1, 384 99 1, 384 64 0, 423 64 1, 428 64 0, 437 42 1, 443 3 1, 417 0 0, 392 0 1, 368 0 0, 352 11 1, 337 23 0, 320 87 1, 320 186 1, 283 187 1, 248 188 0, 206 184 1, 64 173 0, 64 116 1, 64 64 0, 168 64 1, 240 64 0, 61 512 1, 151 576 1, 233 576 1, 323 512 1, 268 512 1, 192 552 1, 192 552 1, 116 512 1
-448 0 0 448 576;329 49 1, 239 0 0, 155 0 1, 86 0 0, 43 28 1, 0 57 0, 0 101 1, 0 227 0, 299 227 1, 320 227 1, 320 274 1, 320 320 0, 224 320 1, 149 320 0, 64 307 1, 64 364 1, 151 384 0, 228 384 1, 309 384 0, 347 358 1, 384 331 0, 384 274 1, 384 99 1, 384 64 0, 423 64 1, 428 64 0, 437 42 1, 443 3 1, 417 0 0, 392 0 1, 368 0 0, 352 11 1, 337 23 0, 320 87 1, 320 186 1, 283 187 1, 248 188 0, 206 184 1, 64 173 0, 64 116 1, 64 64 0, 168 64 1, 240 64 0, 64 512 1, 64 576 1, 128 576 1, 128 512 1, 256 512 1, 256 576 1, 320 576 1, 320 512 1
-448 0 0 448 640;329 49 1, 239 0 0, 155 0 1, 86 0 0, 43 28 1, 0 57 0, 0 101 1, 0 227 0, 299 227 1, 320 227 1, 320 274 1, 320 320 0, 224 320 1, 149 320 0, 64 307 1, 64 364 1, 151 384 0, 228 384 1, 309 384 0, 347 358 1, 384 331 0, 384 274 1, 384 99 1, 384 64 0, 423 64 1, 428 64 0, 437 42 1, 443 3 1, 417 0 0, 392 0 1, 368 0 0, 352 11 1, 337 23 0, 320 87 1, 320 186 1, 283 187 1, 248 188 0, 206 184 1, 64 173 0, 64 116 1, 64 64 0, 168 64 1, 240 64 0, 67 502 1, 70 531 0, 79 548 1, 96 576 0, 137 576 1, 164 576 0, 187 576 1, 210 576 1, 231 576 0, 242 576 1, 267 576 0, 271 590 1, 317 590 1, 314 559 0, 305 542 1, 288 512 0, 247 512 1, 220 512 0, 197 512 1, 174 512 1, 154 512 0, 142 512 1, 117 512 0, 113 502 1
-448 0 0 448 640;329 49 1, 239 0 0, 155 0 1, 86 0 0, 43 28 1, 0 57 0, 0 101 1, 0 227 0, 299 227 1, 320 227 1, 320 274 1, 320 320 0, 224 320 1, 149 320 0, 64 307 1, 64 364 1, 151 384 0, 228 384 1, 309 384 0, 347 358 1, 384 331 0, 384 274 1, 384 99 1, 384 64 0, 423 64 1, 428 64 0, 437 42 1, 443 3 1, 417 0 0, 392 0 1, 368 0 0, 352 11 1, 337 23 0, 320 87 1, 320 186 1, 283 187 1, 248 188 0, 206 184 1, 64 173 0, 64 116 1, 64 64 0, 168 64 1, 240 64 0, 192 640 1, 219 640 0, 237 621 1, 256 603 0, 256 576 1, 256 549 0, 237 531 1, 219 512 0, 191 512 1, 168 512 0, 151 527 1, 128 547 0, 128 576 1, 128 603 0, 147 621 1, 165 640 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0
-384 0 -192 320 384;320 11 1, 251 0 0, 190 0 1, 104 0 0, 52 53 1, 0 107 0, 0 192 1, 0 282 0, 54 333 1, 108 384 0, 205 384 1, 254 384 0, 320 380 1, 320 322 1, 251 320 0, 209 320 1, 64 320 0, 64 191 1, 64 130 0, 101 97 1, 137 64 0, 203 64 1, 253 64 0, 320 72 1, 235 0 1, 271 0 1, 248 -41 1, 275 -42 0, 294 -59 1, 320 -82 0, 320 -116 1, 320 -148 0, 298 -170 1, 277 -192 0, 244 -192 1, 219 -192 0, 191 -154 1, 191 -124 1, 207 -128 0, 224 -128 1, 256 -128 0, 256 -101 1, 256 -67 0, 199 -66 1
-448 64 0 448 576;311 256 1, 310 277 0, 303 287 1, 284 320 0, 219 320 1, 173 320 0, 147 305 1, 121 290 0, 115 256 1, 384 72 1, 384 13 1, 314 0 0, 256 0 1, 168 0 0, 116 53 1, 64 107 0, 64 197 1, 64 283 0, 110 333 1, 156 384 0, 234 384 1, 323 384 0, 360 325 1, 387 281 0, 386 212 1, 386 192 1, 114 192 1, 119 153 0, 129 132 1, 162 64 0, 260 64 1, 316 64 0, 168 512 1, 259 576 1, 344 576 1, 224 512 1
-448 64 0 448 576;311 256 1, 310 277 0, 303 287 1, 284 320 0, 219 320 1, 173 320 0, 147 305 1, 121 290 0, 115 256 1, 384 72 1, 384 13 1, 314 0 0, 256 0 1, 168 0 0, 116 53 1, 64 107 0, 64 197 1, 64 283 0, 110 333 1, 156 384 0, 234 384 1, 323 384 0, 360 325 1, 387 281 0, 386 212 1, 386 192 1, 114 192 1, 119 153 0, 129 132 1, 162 64 0, 260 64 1, 316 64 0, 280 512 1, 224 512 1, 104 576 1, 189 576 1
-448 0 0 448 576;311 256 1, 310 277 0, 303 287 1, 284 320 0, 219 320 1, 173 320 0, 147 305 1, 121 290 0, 115 256 1, 384 72 1, 384 13 1, 314 0 0, 256 0 1, 168 0 0, 116 53 1, 64 107 0, 64 197 1, 64 283 0, 110 333 1, 156 384 0, 234 384 1, 323 384 0, 360 325 1, 387 281 0, 386 212 1, 386 192 1, 114 192 1, 119 153 0, 129 132 1, 162 64 0, 260 64 1, 316 64 0, 61 512 1, 151 576 1, 233 576 1, 323 512 1, 268 512 1, 192 552 1, 192 552 1, 116 512 1
-448 64 0 448 576;311 256 1, 310 277 0, 303 287 1, 284 320 0, 219 320 1, 173 320 0, 147 305 1, 121 290 0, 115 256 1, 384 72 1, 384 13 1, 314 0 0, 256 0 1, 168 0 0, 116 53 1, 64 107 0, 64 197 1, 64 283 0, 110 333 1, 156 384 0, 234 384 1, 323 384 0, 360 325 1, 387 281 0, 386 212 1, 386 192 1, 114 192 1, 119 153 0, 129 132 1, 162 64 0, 260 64 1, 316 64 0, 64 512 1, 64 576 1, 128 576 1, 128 512 1, 256 512 1, 256 576 1, 320 576 1, 320 512 1
-192 0 0 256 576;64 0 1, 64 384 1, 128 384 1, 128 0 1, 40 512 1, 131 576 1, 216 576 1, 96 512 1
-192 -64 0 192 576;64 0 1, 64 384 1, 128 384 1, 128 0 1, 152 512 1, 96 512 1, -24 576 1, 61 576 1
-192 -128 0 256 576;64 0 1, 64 384 1, 128 384 1, 128 0 1, -67 512 1, 23 576 1, 105 576 1, 195 512 1, 140 512 1, 64 552 1, 64 552 1, -12 512 1
-192 0 0 192 576;64 0 1, 64 384 1, 128 384 1, 128 0 1, 0 512 1, 0 576 1, 64 576 1, 64 512 1, 128 512 1, 128 576 1, 192 576 1, 192 512 1
-448 64 0 384 640;64 0 1, 64 384 1, 128 384 1, 128 312 1, 157 344 0, 185 360 1, 226 384 0, 275 384 1, 384 384 0, 384 276 1, 384 0 1, 320 0 1, 320 253 1, 320 292 0, 308 306 1, 296 320 0, 264 320 1, 194 320 0, 128 249 1, 128 0 1, 67 502 1, 70 531 0, 79 548 1, 96 576 0, 137 576 1, 164 576 0, 187 576 1, 210 576 1, 231 576 0, 242 576 1, 267 576 0, 271 590 1, 317 590 1, 314 559 0, 305 542 1, 288 512 0, 247 512 1, 220 512 0, 197 512 1, 174 512 1, 154 512 0, 142 512 1, 117 512 0, 113 502 1
-448 64 0 384 576;224 384 1, 298 384 0, 341 333 1, 384 281 0, 384 193 1, 384 102 0, 341 51 1, 298 0 0, 222 0 1, 156 0 0, 116 42 1, 64 95 0, 64 192 1, 64 281 0, 107 333 1, 150 384 0, 224 320 1, 128 320 0, 128 192 1, 128 64 0, 224 64 1, 320 64 0, 320 193 1, 320 320 0, 168 512 1, 259 576 1, 344 576 1, 224 512 1
-448 64 0 384 576;224 384 1, 298 384 0, 341 333 1, 384 281 0, 384 193 1, 384 102 0, 341 51 1, 298 0 0, 222 0 1, 156 0 0, 116 42 1, 64 95 0, 64 192 1, 64 281 0, 107 333 1, 150 384 0, 224 320 1, 128 320 0, 128 192 1, 128 64 0, 224 64 1, 320 64 0, 320 193 1, 320 320 0, 280 512 1, 224 512 1, 104 576 1, 189 576 1
-448 0 0 384 576;224 384 1, 298 384 0, 341 333 1, 384 281 0, 384 193 1, 384 102 0, 341 51 1, 298 0 0, 222 0 1, 156 0 0, 116 42 1, 64 95 0, 64 192 1, 64 281 0, 107 333 1, 150 384 0, 224 320 1, 128 320 0, 128 192 1, 128 64 0, 224 64 1, 320 64 0, 320 193 1, 320 320 0, 61 512 1, 151 576 1, 233 576 1, 323 512 1, 268 512 1, 192 552 1, 192 552 1, 116 512 1
-448 64 0 384 576;224 384 1, 298 384 0, 341 333 1, 384 281 0, 384 193 1, 384 102 0, 341 51 1, 298 0 0, 222 0 1, 156 0 0, 116 42 1, 64 95 0, 64 192 1, 64 281 0, 107 333 1, 150 384 0, 224 320 1, 128 320 0, 128 192 1, 128 64 0, 224 64 1, 320 64 0, 320 193 1, 320 320 0, 64 512 1, 64 576 1, 128 576 1, 128 512 1, 256 512 1, 256 576 1, 320 576 1, 320 512 1
-448 64 0 384 640;224 384 1, 298 384 0, 341 333 1, 384 281 0, 384 193 1, 384 102 0, 341 51 1, 298 0 0, 222 0 1, 156 0 0, 116 42 1, 64 95 0, 64 192 1, 64 281 0, 107 333 1, 150 384 0, 224 320 1, 128 320 0, 128 192 1, 128 64 0, 224 64 1, 320 64 0, 320 193 1, 320 320 0, 67 502 1, 70 531 0, 79 548 1, 96 576 0, 137 576 1, 164 576 0, 187 576 1, 210 576 1, 231 576 0, 242 576 1, 267 576 0, 271 590 1, 317 590 1, 314 559 0, 305 542 1, 288 512 0, 247 512 1, 220 512 0, 197 512 1, 174 512 1, 154 512 0, 142 512 1, 117 512 0, 113 502 1
-448 64 0 384 576;320 0 1, 320 72 1, 291 40 0, 263 24 1, 222 0 0, 174 0 1, 64 0 0, 64 108 1, 64 384 1, 128 384 1, 128 131 1, 128 92 0, 140 78 1, 152 64 0, 184 64 1, 254 64 0, 320 135 1, 320 384 1, 384 384 1, 384 0 1, 168 512 1, 259 576 1, 344 576 1, 224 512 1
-448 64 0 384 576;320 0 1, 320 72 1, 291 40 0, 263 24 1, 222 0 0, 174 0 1, 64 0 0, 64 108 1, 64 384 1, 128 384 1, 128 131 1, 128 92 0, 140 78 1, 152 64 0, 184 64 1, 254 64 0, 320 135 1, 320 384 1, 384 384 1, 384 0 1, 280 512 1, 224 512 1, 104 576 1, 189 576 1
-448 0 0 384 576;320 0 1, 320 72 1, 291 40 0, 263 24 1, 222 0 0, 174 0 1, 64 0 0, 64 108 1, 64 384 1, 128 384 1, 128 131 1, 128 92 0, 140 78 1, 152 64 0, 184 64 1, 254 64 0, 320 135 1, 320 384 1, 384 384 1, 384 0 1, 61 512 1, 151 576 1, 233 576 1, 323 512 1, 268 512 1, 192 552 1, 192 552 1, 116 512 1
-448 64 0 384 576;320 0 1, 320 72 1, 291 40 0, 263 24 1, 222 0 0, 174 0 1, 64 0 0, 64 108 1, 64 384 1, 128 384 1, 128 131 1, 128 92 0, 140 78 1, 152 64 0, 184 64 1, 254 64 0, 320 135 1, 320 384 1, 384 384 1, 384 0 1, 64 512 1, 64 576 1, 128 576 1, 128 512 1, 256 512 1, 256 576 1, 320 576 1, 320 512 1
-448 64 -128 384 576;186 -128 1, 196 327 1, 64 317 1, 64 375 1, 196 365 1, 186 576 1, 262 576 1, 252 365 1, 384 375 1, 384 317 1, 252 327 1, 262 -128 1
-320 64 384 256 576;160 576 1, 199 576 0, 228 548 1, 256 520 0, 256 480 1, 256 440 0, 228 412 1, 199 384 0, 159 384 1, 124 384 0, 98 407 1, 64 437 0, 64 480 1, 64 520 0, 92 548 1, 121 576 0, 160 512 1, 147 512 0, 137 503 1, 128 493 0, 128 480 1, 128 467 0, 137 457 1, 147 448 0, 160 448 1, 172 448 0, 181 456 1, 192 465 0, 192 480 1, 192 493 0, 183 503 1, 173 512 0
-448 0 0 384 576;192 0 1, 192 65 1, 113 74 0, 65 120 1, 0 181 0, 0 278 1, 0 379 0, 66 436 1, 112 475 0, 192 486 1, 192 555 1, 256 555 1, 256 486 1, 316 484 0, 384 468 1, 384 406 1, 304 428 0, 256 432 1, 256 117 1, 317 117 0, 384 143 1, 384 87 1, 317 65 0, 256 65 1, 256 0 1, 192 429 1, 161 426 0, 145 420 1, 64 390 0, 64 277 1, 64 199 0, 112 159 1, 140 136 0, 192 122 1
-448 64 0 384 640;64 0 1, 64 64 1, 128 88 0, 128 176 1, 128 256 1, 64 256 1, 64 320 1, 128 320 1, 128 410 1, 128 491 0, 170 533 1, 211 576 0, 291 576 1, 333 576 0, 384 579 1, 384 510 1, 325 512 0, 277 512 1, 192 512 0, 192 434 1, 192 320 1, 256 320 1, 256 256 1, 192 256 1, 192 211 1, 192 147 0, 176 116 1, 164 89 0, 136 64 1, 384 64 1, 384 0 1
-448 64 -128 384 576;64 -77 1, 64 -9 1, 155 -64 0, 214 -64 1, 260 -64 0, 290 -45 1, 320 -25 0, 320 7 1, 320 36 0, 298 52 1, 279 66 0, 235 86 1, 170 116 1, 64 164 0, 64 247 1, 64 303 0, 123 363 1, 64 398 0, 64 449 1, 64 506 0, 115 541 1, 166 576 0, 249 576 1, 306 576 0, 384 572 1, 384 512 1, 301 512 0, 245 512 1, 192 512 0, 160 494 1, 128 476 0, 128 447 1, 128 409 0, 194 383 1, 246 364 1, 324 334 0, 354 306 1, 384 278 0, 384 236 1, 384 186 0, 342 125 1, 384 83 0, 384 14 1, 384 -51 0, 335 -89 1, 287 -128 0, 207 -128 1, 151 -128 0, 304 149 1, 320 187 0, 320 221 1, 320 249 0, 303 266 1, 285 284 0, 241 303 1, 161 338 1, 128 302 0, 128 270 1, 128 219 0, 220 183 1
-256 0 192 192 384;96 384 1, 136 384 0, 164 356 1, 192 327 0, 192 287 1, 192 248 0, 164 220 1, 135 192 0, 94 192 1, 60 192 0, 34 215 1, 0 245 0, 0 288 1, 0 328 0, 28 356 1, 56 384 0
-384 64 -128 320 576;192 -111 1, 192 280 1, 136 287 0, 105 321 1, 64 366 0, 64 446 1, 64 516 0, 93 546 1, 123 576 0, 192 576 1, 320 576 1, 320 -111 1, 256 -111 1, 256 512 1, 256 512 1, 256 -111 1
-448 64 0 448 576;64 0 1, 64 432 1, 64 513 0, 100 545 1, 138 576 0, 232 576 1, 384 576 0, 384 480 1, 384 434 0, 313 385 1, 256 345 0, 256 327 1, 256 303 0, 302 274 1, 377 225 1, 448 180 0, 448 113 1, 448 0 0, 306 0 1, 244 0 0, 192 11 1, 192 76 1, 265 64 0, 310 64 1, 384 64 0, 384 115 1, 384 149 0, 336 179 1, 246 234 1, 192 267 0, 192 305 1, 192 337 0, 261 387 1, 320 430 0, 320 459 1, 320 512 0, 227 512 1, 172 512 0, 150 501 1, 128 490 0, 128 463 1, 128 0 1
-576 0 0 576 576;288 576 1, 407 576 0, 492 492 1, 576 407 0, 576 288 1, 576 168 0, 491 84 1, 407 0 0, 284 0 1, 180 0 0, 102 68 1, 0 157 0, 0 288 1, 0 407 0, 84 492 1, 169 576 0, 288 512 1, 196 512 0, 130 446 1, 64 380 0, 64 288 1, 64 197 0, 129 130 1, 195 64 0, 285 64 1, 370 64 0, 432 117 1, 512 185 0, 512 288 1, 512 381 0, 446 446 1, 380 512 0, 192 128 1, 192 448 1, 302 448 1, 384 448 0, 384 370 1, 384 315 0, 340 277 1, 431 128 1, 375 128 1, 294 262 1, 256 262 1, 256 128 1, 256 301 1, 267 301 1, 320 301 0, 320 363 1, 320 415 0, 280 415 1, 256 415 1
-576 0 0 576 576;288 576 1, 407 576 0, 492 492 1, 576 407 0, 576 288 1, 576 168 0, 491 84 1, 407 0 0, 284 0 1, 180 0 0, 102 68 1, 0 157 0, 0 288 1, 0 407 0, 84 492 1, 169 576 0, 288 512 1, 196 512 0, 130 446 1, 64 380 0, 64 288 1, 64 197 0, 129 130 1, 195 64 0, 285 64 1, 370 64 0, 432 117 1, 512 185 0, 512 288 1, 512 381 0, 446 446 1, 380 512 0, 384 142 1, 330 128 0, 288 128 1, 218 128 0, 173 173 1, 128 217 0, 128 288 1, 128 360 0, 172 404 1, 216 448 0, 291 448 1, 329 448 0, 375 441 1, 384 439 1, 384 393 1, 335 384 0, 297 384 1, 250 384 0, 221 357 1, 192 330 0, 192 287 1, 192 243 0, 222 218 1, 252 192 0, 303 192 1, 342 192 0, 384 188 1
-768 64 256 640 576;192 256 1, 192 512 1, 99 512 1, 99 576 1, 341 576 1, 341 512 1, 256 512 1, 256 256 1, 384 256 1, 384 576 1, 476 576 1, 521 372 1, 564 576 1, 640 576 1, 640 256 1, 576 256 1, 576 474 1, 529 279 1, 495 279 1, 448 454 1, 448 256 1
-256 0 512 256 576;40 512 1, 131 576 1, 216 576 1, 96 512 1
-256 0 512 256 576;0 512 1, 0 576 1, 64 576 1, 64 512 1, 192 512 1, 192 576 1, 256 576 1, 256 512 1
-192 0 0 0 0;
-768 0 0 768 576;227 192 1, 384 192 1, 384 473 1, 10 0 1, 363 576 1, 704 576 1, 704 512 1, 448 512 1, 448 320 1, 704 320 1, 704 256 1, 448 256 1, 448 64 1, 768 64 1, 768 0 1, 384 0 1, 384 128 1, 190 128 1, 92 0 1
-576 0 0 576 576;39 0 1, 104 65 1, 86 104 0, 77 144 1, 64 203 0, 64 279 1, 64 414 0, 131 495 1, 198 576 0, 309 576 1, 394 576 0, 459 529 1, 498 576 1, 563 576 1, 496 484 1, 531 447 0, 550 409 1, 576 353 0, 576 283 1, 576 154 0, 502 77 1, 428 0 0, 304 0 1, 213 0 0, 142 32 1, 104 0 1, 184 83 1, 238 64 0, 312 64 1, 406 64 0, 459 119 1, 512 174 0, 512 273 1, 512 351 0, 448 405 1, 416 459 1, 367 512 0, 302 512 1, 220 512 0, 174 449 1, 128 387 0, 128 275 1, 128 184 0, 152 122 1
-192 0 0 0 0;
-448 64 0 384 448;192 128 1, 192 256 1, 64 256 1, 64 320 1, 192 320 1, 192 448 1, 256 448 1, 256 320 1, 384 320 1, 384 256 1, 256 256 1, 256 128 1, 64 0 1, 64 64 1, 384 64 1, 384 0 1
-192 0 0 0 0;
-192 0 0 0 0;
-448 0 0 448 576;192 0 1, 192 128 1, 81 128 1, 81 192 1, 192 192 1, 192 192 1, 81 192 1, 81 256 1, 192 256 1, 31 576 1, 117 576 1, 232 335 1, 232 335 1, 350 576 1, 416 576 1, 256 256 1, 367 256 1, 367 192 1, 256 192 1, 256 192 1, 367 192 1, 367 128 1, 256 128 1, 256 0 1
-448 64 -128 384 384;64 384 1, 128 384 1, 128 131 1, 128 92 0, 140 78 1, 152 64 0, 184 64 1, 254 64 0, 320 135 1, 320 384 1, 384 384 1, 384 0 1, 320 0 1, 320 72 1, 252 0 0, 184 0 1, 156 0 0, 128 9 1, 128 -128 1, 64 -128 1
-192 0 0 0 0;
-192 0 0 0 0;
-192 0 0 0 0;
-192 0 0 0 0;
-192 0 0 0 0;
-256 64 320 320 576;196 364 1, 162 320 0, 129 320 1, 100 320 0, 82 341 1, 64 363 0, 64 394 1, 64 485 0, 174 485 1, 192 485 1, 192 511 1, 192 512 0, 147 512 1, 110 512 0, 68 530 1, 68 572 1, 118 576 0, 161 576 1, 256 576 0, 256 513 1, 256 401 1, 256 383 0, 276 384 1, 279 384 1, 280 384 0, 282 384 1, 284 384 0, 286 368 1, 289 336 1, 268 320 0, 250 320 1, 209 320 0, 198 364 1, 192 395 1, 192 452 1, 178 452 1, 128 452 0, 128 413 1, 128 384 0, 154 384 1, 172 384 0
-256 0 320 256 576;128 576 1, 187 576 0, 222 542 1, 256 507 0, 256 449 1, 256 389 0, 222 354 1, 187 320 0, 127 320 1, 74 320 0, 41 348 1, 0 384 0, 0 448 1, 0 507 0, 35 541 1, 69 576 0, 128 512 1, 64 512 0, 64 448 1, 64 384 0, 128 384 1, 192 384 0, 192 449 1, 192 512 0
-192 0 0 0 0;
-704 0 0 704 384;320 92 1, 320 198 1, 290 199 1, 263 200 0, 233 196 1, 128 183 0, 128 121 1, 128 64 0, 208 64 1, 264 64 0, 371 353 1, 423 384 0, 489 384 1, 642 384 0, 642 218 1, 642 192 1, 387 192 1, 391 153 0, 400 133 1, 431 64 0, 526 64 1, 578 64 0, 640 72 1, 640 13 1, 569 0 0, 510 0 1, 444 0 0, 399 29 1, 374 45 0, 351 77 1, 298 36 0, 260 19 1, 215 0 0, 153 0 1, 84 0 0, 42 30 1, 0 61 0, 0 110 1, 0 248 0, 300 248 1, 320 248 1, 320 290 1, 320 307 0, 298 313 1, 277 320 0, 223 320 1, 147 320 0, 64 318 1, 64 367 1, 151 384 0, 230 384 1, 325 384 0, 390 256 1, 574 256 1, 573 276 0, 567 287 1, 549 320 0, 487 320 1, 444 320 0, 419 305 1, 396 290 0
-448 0 0 448 448;131 21 1, 108 0 1, 54 0 1, 99 50 1, 64 108 0, 64 189 1, 64 280 0, 111 332 1, 158 384 0, 240 384 1, 298 384 0, 339 363 1, 362 448 1, 416 448 1, 371 334 1, 448 276 0, 448 196 1, 448 105 0, 394 53 1, 340 0 0, 246 0 1, 180 0 0, 169 71 1, 170 71 1, 190 67 0, 207 66 1, 229 64 0, 253 64 1, 384 64 0, 384 200 1, 384 241 0, 325 275 1, 301 313 1, 300 313 1, 271 320 0, 233 320 1, 128 320 0, 128 186 1, 128 140 0, 145 109 1
-448 64 -192 384 384;320 384 1, 320 320 1, 256 320 1, 256 384 1, 320 256 1, 320 236 1, 320 139 0, 247 89 1, 207 62 1, 128 7 0, 128 -50 1, 128 -128 0, 234 -128 1, 298 -128 0, 384 -78 1, 384 -141 1, 304 -192 0, 236 -192 1, 161 -192 0, 118 -165 1, 64 -131 0, 64 -55 1, 64 21 0, 147 68 1, 182 88 1, 226 113 0, 241 139 1, 256 166 0, 256 215 1, 256 256 1
-256 64 -128 128 384;128 384 1, 128 320 1, 64 320 1, 64 384 1, 120 256 1, 128 -32 1, 128 -128 1, 64 -128 1, 64 -32 1, 72 256 1
-448 64 128 384 320;64 256 1, 64 320 1, 384 320 1, 384 128 1, 320 128 1, 320 256 1
-192 0 0 0 0;
-448 0 -128 448 640;51 -128 1, 118 256 1, 64 256 1, 64 320 1, 128 320 1, 135 361 1, 174 576 0, 310 576 1, 346 576 0, 389 579 1, 378 515 1, 339 512 0, 307 512 1, 230 512 0, 208 394 1, 194 320 1, 256 320 1, 256 256 1, 184 256 1, 118 -128 1
-192 0 0 0 0;
-192 0 0 0 0;
-448 0 0 384 384;376 342 1, 265 204 1, 376 65 1, 339 37 1, 191 204 1, 339 370 1, 228 342 1, 117 204 1, 228 65 1, 191 37 1, 43 204 1, 191 370 1
-448 0 0 384 384;51 65 1, 162 204 1, 51 342 1, 88 370 1, 236 204 1, 88 37 1, 199 65 1, 310 204 1, 199 342 1, 236 370 1, 384 204 1, 236 37 1
-768 64 0 704 64;64 0 1, 64 64 1, 128 64 1, 128 0 1, 320 0 1, 320 64 1, 384 64 1, 384 0 1, 640 0 1, 640 64 1, 704 64 1, 704 0 1
-448 0 0 0 0;
-512 0 0 512 704;7 0 1, 218 576 1, 296 576 1, 503 0 1, 419 0 1, 361 128 1, 138 128 1, 80 0 1, 161 192 1, 339 192 1, 250 458 1, 312 576 1, 257 576 1, 137 704 1, 222 704 1
-512 0 0 512 768;7 0 1, 218 576 1, 296 576 1, 503 0 1, 419 0 1, 361 128 1, 138 128 1, 80 0 1, 161 192 1, 339 192 1, 250 458 1, 132 623 1, 135 655 0, 144 673 1, 161 704 0, 202 704 1, 229 704 0, 252 704 1, 275 704 1, 296 704 0, 307 704 1, 332 704 0, 336 710 1, 382 710 1, 379 682 0, 370 667 1, 353 640 0, 312 640 1, 285 640 0, 262 640 1, 239 640 1, 219 640 0, 207 640 1, 182 640 0, 178 623 1
-576 64 0 576 768;320 576 1, 436 576 0, 506 498 1, 576 419 0, 576 289 1, 576 156 0, 506 78 1, 436 0 0, 316 0 1, 214 0 0, 147 64 1, 64 145 0, 64 288 1, 64 420 0, 134 498 1, 204 576 0, 320 512 1, 229 512 0, 179 453 1, 128 394 0, 128 288 1, 128 183 0, 179 124 1, 229 64 0, 318 64 1, 401 64 0, 450 112 1, 512 171 0, 512 289 1, 512 394 0, 461 453 1, 410 512 0, 174 623 1, 177 655 0, 186 673 1, 203 704 0, 244 704 1, 271 704 0, 294 704 1, 316 704 1, 337 704 0, 349 704 1, 373 704 0, 377 710 1, 423 710 1, 420 682 0, 411 667 1, 394 640 0, 354 640 1, 327 640 0, 303 640 1, 281 640 1, 260 640 0, 248 640 1, 224 640 0, 220 623 1
-768 64 0 768 576;448 0 1, 448 24 1, 387 0 0, 317 0 1, 203 0 0, 134 79 1, 64 159 0, 64 288 1, 64 420 0, 134 498 1, 204 576 0, 320 576 1, 388 576 0, 448 553 1, 448 576 1, 704 576 1, 704 512 1, 512 512 1, 512 320 1, 704 320 1, 704 256 1, 512 256 1, 512 64 1, 768 64 1, 768 0 1, 448 212 1, 448 345 1, 448 433 0, 416 472 1, 384 512 0, 314 512 1, 226 512 0, 177 453 1, 128 394 0, 128 288 1, 128 182 0, 177 123 1, 227 64 0, 314 64 1, 448 64 0
-704 64 0 704 384;396 332 1, 420 355 0, 447 367 1, 486 384 0, 540 384 1, 637 384 0, 675 325 1, 703 282 0, 704 192 1, 437 192 1, 444 129 0, 471 100 1, 506 64 0, 585 64 1, 643 64 0, 704 73 1, 704 14 1, 632 0 0, 566 0 1, 499 0 0, 459 19 1, 429 33 0, 398 65 1, 376 36 0, 349 22 1, 310 0 0, 255 0 1, 168 0 0, 116 52 1, 64 104 0, 64 192 1, 64 281 0, 116 332 1, 168 384 0, 256 384 1, 313 384 0, 353 364 1, 375 353 0, 261 320 1, 128 320 0, 128 193 1, 128 138 0, 154 106 1, 187 64 0, 262 64 1, 384 64 0, 384 192 1, 384 251 0, 359 283 1, 329 320 0, 439 256 1, 625 256 1, 624 282 0, 612 296 1, 592 320 0, 539 320 1, 487 320 0, 462 299 1, 445 284 0
-448 0 192 448 256;38 192 1, 38 256 1, 390 256 1, 390 192 1
-768 0 192 768 256;37 192 1, 37 256 1, 731 256 1, 731 192 1
-256 0 384 256 640;256 578 1, 256 551 1, 233 537 0, 233 467 1, 233 458 1, 256 458 1, 256 384 1, 192 384 1, 192 446 1, 192 559 0, 64 578 1, 64 551 1, 41 537 0, 41 467 1, 41 458 1, 64 458 1, 64 384 1, 0 384 1, 0 446 1, 0 559 0
-256 0 320 256 576;0 382 1, 0 409 1, 23 423 0, 23 493 1, 23 502 1, 0 502 1, 0 576 1, 64 576 1, 64 514 1, 64 401 0, 192 382 1, 192 409 1, 215 423 0, 215 493 1, 215 502 1, 192 502 1, 192 576 1, 256 576 1, 256 514 1, 256 401 0
-192 64 384 128 640;128 597 1, 128 569 1, 103 559 0, 103 484 1, 103 476 1, 128 476 1, 128 384 1, 64 384 1, 64 464 1, 64 586 0
-192 64 320 128 576;64 363 1, 64 391 1, 89 401 0, 89 476 1, 89 483 1, 64 483 1, 64 576 1, 128 576 1, 128 496 1, 128 372 0
-448 64 0 384 448;64 192 1, 64 256 1, 384 256 1, 384 192 1, 192 384 1, 192 448 1, 256 448 1, 256 384 1, 192 0 1, 192 64 1, 256 64 1, 256 0 1
-192 0 0 0 0;
-384 0 -128 384 576;152 0 1, 7 384 1, 82 384 1, 193 90 1, 314 384 1, 380 384 1, 164 -128 1, 87 -128 1, 64 512 1, 64 576 1, 128 576 1, 128 512 1, 256 512 1, 256 576 1, 320 576 1, 320 512 1
-512 -64 0 576 640;192 0 1, 192 240 1, -19 576 1, 71 576 1, 227 309 1, 441 576 1, 514 576 1, 256 242 1, 256 0 1, 128 576 1, 128 640 1, 192 640 1, 192 576 1, 320 576 1, 320 640 1, 384 640 1, 384 576 1
-128 -192 -64 320 576;-165 -14 1, 243 569 1, 293 569 1, -114 -14 1
-448 0 64 384 448;137 145 1, 78 87 1, 46 120 1, 104 178 1, 64 217 0, 64 255 1, 64 292 0, 104 331 1, 46 390 1, 78 423 1, 137 364 1, 174 384 0, 214 384 1, 253 384 0, 290 364 1, 348 423 1, 381 390 1, 323 331 1, 320 292 0, 320 255 1, 320 217 0, 323 178 1, 381 120 1, 348 87 1, 290 145 1, 253 128 0, 214 128 1, 174 128 0, 192 320 1, 165 320 0, 146 302 1, 128 283 0, 128 256 1, 128 229 0, 146 211 1, 165 192 0, 191 192 1, 216 192 0, 233 207 1, 256 226 0, 256 256 1, 256 283 0, 238 302 1, 219 320 0
-256 0 0 256 384;213 342 1, 102 204 1, 213 65 1, 176 37 1, 28 204 1, 176 370 1
-256 0 0 256 384;43 65 1, 154 204 1, 43 342 1, 80 370 1, 228 204 1, 80 37 1
-384 0 0 320 640;64 0 1, 64 320 1, 0 320 1, 0 384 1, 64 384 1, 64 468 1, 64 640 0, 194 640 1, 221 640 0, 256 613 1, 256 557 1, 219 576 0, 193 576 1, 157 576 0, 142 555 1, 128 534 0, 128 482 1, 128 384 1, 320 384 1, 320 0 1, 256 0 1, 256 320 1, 128 320 1, 128 0 1, 256 512 1, 256 576 1, 320 576 1, 320 512 1
-384 0 0 320 576;64 0 1, 64 320 1, 0 320 1, 0 384 1, 64 384 1, 64 435 1, 64 576 0, 175 576 1, 256 576 1, 320 576 1, 320 0 1, 256 0 1, 256 518 1, 240 516 1, 206 512 0, 183 512 1, 148 512 0, 137 493 1, 128 477 0, 128 443 1, 128 384 1, 192 384 1, 192 320 1, 128 320 1, 128 0 1
-448 64 -128 384 576;183 -128 1, 192 97 1, 64 86 1, 64 144 1, 192 134 1, 192 327 1, 64 317 1, 64 375 1, 192 365 1, 183 576 1, 265 576 1, 256 365 1, 384 375 1, 384 317 1, 256 327 1, 256 134 1, 384 144 1, 384 86 1, 256 97 1, 265 -128 1
-192 64 192 128 256;64 192 1, 64 256 1, 128 256 1, 128 192 1
-192 64 -192 128 64;64 -140 1, 64 -112 1, 89 -102 0, 89 -36 1, 89 -29 1, 64 -29 1, 64 64 1, 128 64 1, 128 -16 1, 128 -130 0
-256 0 -192 256 64;0 -130 1, 0 -103 1, 23 -89 0, 23 -19 1, 23 -10 1, 0 -10 1, 0 64 1, 64 64 1, 64 2 1, 64 -111 0, 192 -130 1, 192 -103 1, 215 -89 0, 215 -19 1, 215 -10 1, 192 -10 1, 192 64 1, 256 64 1, 256 2 1, 256 -111 0
-768 0 -64 768 640;128 576 1, 186 576 0, 221 541 1, 256 507 0, 256 448 1, 256 388 0, 221 354 1, 187 320 0, 126 320 1, 75 320 0, 42 348 1, 0 384 0, 0 448 1, 0 507 0, 35 541 1, 70 576 0, 127 512 1, 64 512 0, 64 448 1, 64 384 0, 128 384 1, 192 384 0, 192 448 1, 192 477 0, 175 495 1, 157 512 0, 384 320 1, 443 320 0, 477 277 1, 512 234 0, 512 160 1, 512 86 0, 477 43 1, 443 0 0, 383 0 1, 330 0 0, 298 35 1, 256 80 0, 256 160 1, 256 234 0, 291 277 1, 326 320 0, 383 256 1, 320 256 0, 320 160 1, 320 64 0, 384 64 1, 448 64 0, 448 159 1, 448 204 0, 431 230 1, 413 256 0, 640 320 1, 699 320 0, 733 277 1, 768 234 0, 768 161 1, 768 86 0, 733 43 1, 698 0 0, 639 0 1, 587 0 0, 553 35 1, 512 80 0, 512 160 1, 512 234 0, 547 277 1, 581 320 0, 639 256 1, 576 256 0, 576 160 1, 576 64 0, 640 64 1, 704 64 0, 704 160 1, 704 204 0, 686 230 1, 669 256 0, 23 -14 1, 431 590 1, 482 590 1, 74 -14 1
-512 0 0 512 704;7 0 1, 218 576 1, 296 576 1, 503 0 1, 419 0 1, 361 128 1, 138 128 1, 80 0 1, 161 192 1, 339 192 1, 250 458 1, 126 576 1, 216 704 1, 298 704 1, 388 576 1, 333 576 1, 257 657 1, 257 657 1, 181 576 1
-512 64 0 512 704;64 0 1, 64 576 1, 448 576 1, 448 512 1, 128 512 1, 128 320 1, 448 320 1, 448 256 1, 128 256 1, 128 64 1, 512 64 1, 512 0 1, 127 576 1, 228 704 1, 319 704 1, 420 576 1, 358 576 1, 274 657 1, 273 657 1, 189 576 1
-512 0 0 512 704;7 0 1, 218 576 1, 296 576 1, 503 0 1, 419 0 1, 361 128 1, 138 128 1, 80 0 1, 161 192 1, 339 192 1, 250 458 1, 201 576 1, 292 704 1, 377 704 1, 257 576 1
-512 64 0 512 640;64 0 1, 64 576 1, 448 576 1, 448 512 1, 128 512 1, 128 320 1, 448 320 1, 448 256 1, 128 256 1, 128 64 1, 512 64 1, 512 0 1, 192 576 1, 192 640 1, 256 640 1, 256 576 1, 320 576 1, 320 640 1, 384 640 1, 384 576 1
-512 64 0 512 704;64 0 1, 64 576 1, 448 576 1, 448 512 1, 128 512 1, 128 320 1, 448 320 1, 448 256 1, 128 256 1, 128 64 1, 512 64 1, 512 0 1, 334 576 1, 273 576 1, 138 704 1, 234 704 1
-192 0 0 256 704;64 0 1, 64 576 1, 128 576 1, 128 0 1, 48 576 1, 124 704 1, 209 704 1, 96 576 1
-192 -64 0 256 704;64 0 1, 64 576 1, 128 576 1, 128 0 1, -28 576 1, 62 704 1, 130 704 1, 220 576 1, 164 576 1, 96 657 1, 96 657 1, 28 576 1
-192 0 0 192 640;64 0 1, 64 576 1, 128 576 1, 128 0 1, 0 576 1, 0 640 1, 64 640 1, 64 576 1, 128 576 1, 128 640 1, 192 640 1, 192 576 1
-192 -64 0 192 704;64 0 1, 64 576 1, 128 576 1, 128 0 1, 144 576 1, 96 576 1, -17 704 1, 68 704 1
-576 64 0 576 704;320 576 1, 436 576 0, 506 498 1, 576 419 0, 576 289 1, 576 156 0, 506 78 1, 436 0 0, 316 0 1, 214 0 0, 147 64 1, 64 145 0, 64 288 1, 64 420 0, 134 498 1, 204 576 0, 320 512 1, 229 512 0, 179 453 1, 128 394 0, 128 288 1, 128 183 0, 179 124 1, 229 64 0, 318 64 1, 401 64 0, 450 112 1, 512 171 0, 512 289 1, 512 394 0, 461 453 1, 410 512 0, 243 576 1, 333 704 1, 419 704 1, 299 576 1
-576 64 0 576 704;320 576 1, 436 576 0, 506 498 1, 576 419 0, 576 289 1, 576 156 0, 506 78 1, 436 0 0, 316 0 1, 214 0 0, 147 64 1, 64 145 0, 64 288 1, 64 420 0, 134 498 1, 204 576 0, 320 512 1, 229 512 0, 179 453 1, 128 394 0, 128 288 1, 128 183 0, 179 124 1, 229 64 0, 318 64 1, 401 64 0, 450 112 1, 512 171 0, 512 289 1, 512 394 0, 461 453 1, 410 512 0, 167 576 1, 258 704 1, 339 704 1, 430 576 1, 374 576 1, 299 657 1, 298 657 1, 223 576 1
-448 -64 0 384 576;121 192 1, 136 142 0, 158 114 1, 198 64 0, 269 64 1, 316 64 0, 384 72 1, 384 10 1, 311 0 0, 260 0 1, 173 0 0, 119 46 1, 81 78 0, 62 132 1, 55 151 0, 46 192 1, -21 192 1, -2 256 1, 40 256 1, 39 280 1, 39 282 0, 39 288 1, 40 302 0, 41 320 1, -21 320 1, -2 384 1, 48 384 1, 63 444 0, 81 474 1, 140 576 0, 273 576 1, 320 576 0, 384 573 1, 384 502 1, 321 512 0, 273 512 1, 207 512 0, 168 469 1, 145 444 0, 133 413 1, 128 401 0, 123 384 1, 336 384 1, 316 320 1, 115 320 1, 113 296 0, 113 281 1, 114 256 1, 286 256 1, 267 192 1
-576 64 0 576 704;320 576 1, 436 576 0, 506 498 1, 576 419 0, 576 289 1, 576 156 0, 506 78 1, 436 0 0, 316 0 1, 214 0 0, 147 64 1, 64 145 0, 64 288 1, 64 420 0, 134 498 1, 204 576 0, 320 512 1, 229 512 0, 179 453 1, 128 394 0, 128 288 1, 128 183 0, 179 124 1, 229 64 0, 318 64 1, 401 64 0, 450 112 1, 512 171 0, 512 289 1, 512 394 0, 461 453 1, 410 512 0, 354 576 1, 299 576 1, 178 704 1, 264 704 1
-576 64 0 512 704;64 576 1, 128 576 1, 128 213 1, 128 158 0, 139 132 1, 150 106 0, 180 88 1, 223 64 0, 295 64 1, 379 64 0, 414 97 1, 448 129 0, 448 210 1, 448 576 1, 512 576 1, 512 211 1, 512 139 0, 497 102 1, 482 64 0, 440 37 1, 385 0 0, 292 0 1, 174 0 0, 119 51 1, 64 102 0, 64 214 1, 225 576 1, 328 704 1, 425 704 1, 288 576 1
-576 64 0 512 704;64 576 1, 128 576 1, 128 213 1, 128 158 0, 139 132 1, 150 106 0, 180 88 1, 223 64 0, 295 64 1, 379 64 0, 414 97 1, 448 129 0, 448 210 1, 448 576 1, 512 576 1, 512 211 1, 512 139 0, 497 102 1, 482 64 0, 440 37 1, 385 0 0, 292 0 1, 174 0 0, 119 51 1, 64 102 0, 64 214 1, 139 576 1, 242 704 1, 334 704 1, 437 576 1, 374 576 1, 288 657 1, 288 657 1, 202 576 1
-576 64 0 512 704;64 576 1, 128 576 1, 128 213 1, 128 158 0, 139 132 1, 150 106 0, 180 88 1, 223 64 0, 295 64 1, 379 64 0, 414 97 1, 448 129 0, 448 210 1, 448 576 1, 512 576 1, 512 211 1, 512 139 0, 497 102 1, 482 64 0, 440 37 1, 385 0 0, 292 0 1, 174 0 0, 119 51 1, 64 102 0, 64 214 1, 351 576 1, 288 576 1, 151 704 1, 248 704 1
-192 64 0 128 384;64 0 1, 64 384 1, 128 384 1, 128 0 1
-256 -64 512 320 576;-3 512 1, 87 576 1, 169 576 1, 259 512 1, 204 512 1, 128 552 1, 128 552 1, 52 512 1
-256 0 448 256 640;3 502 1, 6 531 0, 15 548 1, 32 576 0, 73 576 1, 100 576 0, 123 576 1, 146 576 1, 167 576 0, 178 576 1, 203 576 0, 207 590 1, 253 590 1, 250 559 0, 241 542 1, 224 512 0, 183 512 1, 156 512 0, 133 512 1, 110 512 1, 90 512 0, 78 512 1, 53 512 0, 49 502 1
-256 0 448 256 512;0 448 1, 0 512 1, 256 512 1, 256 448 1
-256 0 512 256 640;3 602 1, 49 602 1, 57 588 0, 77 582 1, 97 576 0, 128 576 1, 163 576 0, 184 583 1, 200 589 0, 207 602 1, 253 602 1, 247 564 0, 220 542 1, 184 512 0, 128 512 1, 69 512 0, 33 544 1, 9 566 0
-256 64 512 128 576;64 512 1, 64 576 1, 128 576 1, 128 512 1
-256 64 512 192 640;128 640 1, 155 640 0, 173 621 1, 192 603 0, 192 576 1, 192 549 0, 173 531 1, 155 512 0, 127 512 1, 104 512 0, 87 527 1, 64 547 0, 64 576 1, 64 603 0, 83 621 1, 101 640 0, 128 576 1, 128 576 0, 128 576 1, 128 576 0, 128 576 1, 128 576 0, 128 576 1, 128 576 0, 128 576 1, 128 576 0, 128 576 1, 128 576 0, 128 576 1, 128 576 0, 128 576 1, 128 576 0
-256 0 -192 192 0;107 0 1, 143 0 1, 120 -41 1, 147 -42 0, 166 -59 1, 192 -82 0, 192 -116 1, 192 -148 0, 170 -170 1, 149 -192 0, 116 -192 1, 91 -192 0, 63 -154 1, 63 -124 1, 79 -128 0, 96 -128 1, 128 -128 0, 128 -101 1, 128 -67 0, 71 -66 1
-256 -64 448 320 576;-19 456 1, 71 576 1, 143 576 1, 23 456 1, 113 456 1, 203 576 1, 275 576 1, 155 456 1
-256 64 -128 192 0;123 0 1, 163 0 1, 128 -19 0, 128 -42 1, 128 -64 0, 164 -64 1, 180 -64 0, 192 -98 1, 192 -128 1, 169 -128 0, 140 -128 1, 64 -128 0, 64 -73 1, 64 -31 0
-256 -64 512 320 576;259 576 1, 169 512 1, 87 512 1, -3 576 1, 52 576 1, 128 536 1, 128 536 1, 204 576 1
-448 -64 0 384 576;121 192 1, 136 142 0, 158 114 1, 198 64 0, 269 64 1, 316 64 0, 384 72 1, 384 10 1, 311 0 0, 260 0 1, 173 0 0, 119 46 1, 81 78 0, 62 132 1, 55 151 0, 46 192 1, -21 192 1, -2 256 1, 40 256 1, 39 280 1, 39 282 0, 39 288 1, 40 302 0, 41 320 1, -21 320 1, -2 384 1, 48 384 1, 63 444 0, 81 474 1, 140 576 0, 273 576 1, 320 576 0, 384 573 1, 384 502 1, 321 512 0, 273 512 1, 207 512 0, 168 469 1, 145 444 0, 133 413 1, 128 401 0, 123 384 1, 336 384 1, 316 320 1, 115 320 1, 113 296 0, 113 281 1, 114 256 1, 286 256 1, 267 192 1
-192 0 0 0 0;
-192 64 -128 128 576;64 -128 1, 64 192 1, 128 192 1, 128 -128 1, 64 320 1, 64 576 1, 128 576 1, 128 320 1
-256 64 192 192 256;64 192 1, 64 256 1, 192 256 1, 192 192 1
-448 64 512 384 576;64 512 1, 64 576 1, 384 576 1, 384 512 1
-256 0 192 256 576;28 192 1, 28 256 1, 55 300 0, 101 338 1, 129 361 1, 192 412 0, 192 458 1, 192 512 0, 127 512 1, 89 512 0, 36 488 1, 36 532 1, 89 576 0, 138 576 1, 191 576 0, 224 548 1, 256 521 0, 256 477 1, 256 421 0, 179 359 1, 157 341 1, 102 296 0, 92 256 1, 238 256 1, 238 192 1
-256 0 192 256 576;32 507 1, 32 549 1, 68 576 0, 103 576 1, 192 576 0, 192 492 1, 192 454 0, 177 429 1, 168 414 0, 151 402 1, 212 388 0, 236 360 1, 256 336 0, 256 302 1, 256 251 0, 220 222 1, 184 192 0, 121 192 1, 79 192 0, 28 225 1, 28 270 1, 84 256 0, 117 256 1, 192 256 0, 192 314 1, 192 381 0, 78 381 1, 59 381 1, 59 416 1, 75 416 1, 128 416 0, 128 470 1, 128 512 0, 86 512 1, 62 512 0
-192 64 192 128 256;64 192 1, 64 256 1, 128 256 1, 128 192 1
-256 0 192 192 576;128 192 1, 128 477 1, 54 458 1, 54 501 1, 192 534 1, 192 192 1
-640 0 -64 640 576;128 192 1, 128 494 1, 54 475 1, 54 518 1, 192 551 1, 192 192 1, 512 -27 1, 512 64 1, 361 64 1, 361 126 1, 511 320 1, 576 320 1, 576 128 1, 622 128 1, 622 64 1, 576 64 1, 576 -27 1, 409 128 1, 512 128 1, 512 249 1, 82 -41 1, 495 556 1, 554 556 1, 134 -41 1
-640 0 -64 640 576;401 0 1, 401 64 1, 428 95 0, 479 125 1, 509 143 1, 576 181 0, 576 215 1, 576 256 0, 507 256 1, 467 256 0, 410 248 1, 410 291 1, 466 320 0, 516 320 1, 572 320 0, 606 298 1, 640 276 0, 640 241 1, 640 194 0, 559 146 1, 535 132 1, 476 96 0, 466 64 1, 612 64 1, 612 0 1, 63 -14 1, 480 539 1, 531 539 1, 114 -14 1, 128 192 1, 128 477 1, 54 458 1, 54 501 1, 192 534 1, 192 192 1
-640 0 -64 640 576;56 494 1, 56 536 1, 101 576 0, 145 576 1, 256 576 0, 256 486 1, 256 444 0, 227 418 1, 209 402 0, 175 389 1, 222 376 0, 241 349 1, 256 327 0, 256 295 1, 256 247 0, 224 220 1, 192 192 0, 135 192 1, 97 192 0, 52 215 1, 52 259 1, 100 256 0, 128 256 1, 192 256 0, 192 308 1, 192 368 0, 102 368 1, 83 368 1, 83 403 1, 99 403 1, 192 403 0, 192 465 1, 192 512 0, 133 512 1, 99 512 0, 512 -27 1, 512 64 1, 359 64 1, 359 126 1, 510 320 1, 576 320 1, 576 128 1, 623 128 1, 623 64 1, 576 64 1, 576 -27 1, 408 128 1, 512 128 1, 512 260 1, 117 -41 1, 528 556 1, 589 556 1, 167 -41 1
-576 0 0 512 576;64 0 1, 64 256 1, 0 256 1, 0 320 1, 64 320 1, 64 576 1, 229 576 1, 512 576 0, 512 301 1, 512 158 0, 438 79 1, 365 0 0, 231 0 1, 128 64 1, 225 64 1, 448 64 0, 448 292 1, 448 426 0, 361 481 1, 336 497 0, 300 504 1, 258 512 0, 188 512 1, 128 512 1, 128 320 1, 256 320 1, 256 256 1, 128 256 1
-448 0 0 448 384;44 58 1, 185 199 1, 44 340 1, 84 379 1, 224 238 1, 365 379 1, 404 340 1, 264 199 1, 404 58 1, 365 19 1, 224 160 1, 84 19 1
-512 -64 0 512 704;192 0 1, 192 240 1, -7 576 1, 83 576 1, 232 309 1, 395 576 1, 468 576 1, 256 242 1, 256 0 1, 185 576 1, 261 704 1, 346 704 1, 232 576 1
-512 64 0 512 576;64 0 1, 64 576 1, 128 576 1, 128 448 1, 267 448 1, 365 448 0, 408 438 1, 451 429 0, 478 401 1, 512 367 0, 512 308 1, 512 128 0, 244 128 1, 128 128 1, 128 0 1, 128 192 1, 240 192 1, 448 192 0, 448 302 1, 448 355 0, 394 371 1, 348 384 0, 242 384 1, 128 384 1
-448 64 0 384 704;64 554 1, 64 615 1, 139 615 0, 200 586 1, 258 650 1, 287 617 1, 238 559 1, 278 523 0, 299 494 1, 384 380 0, 384 219 1, 384 116 0, 342 58 1, 299 0 0, 226 0 1, 152 0 0, 108 53 1, 64 105 0, 64 194 1, 64 283 0, 110 333 1, 155 384 0, 234 384 1, 253 384 0, 276 379 1, 247 449 0, 194 497 1, 138 416 1, 109 459 1, 157 528 1, 119 554 0, 223 320 1, 178 320 0, 153 287 1, 128 253 0, 128 192 1, 128 64 0, 224 64 1, 320 64 0, 320 192 1, 320 320 0
-384 0 -128 384 576;152 0 1, 7 384 1, 82 384 1, 193 90 1, 314 384 1, 380 384 1, 164 -128 1, 87 -128 1, 168 512 1, 259 576 1, 344 576 1, 224 512 1
-448 64 -128 384 576;128 -128 1, 64 -128 1, 64 576 1, 128 576 1, 128 312 1, 148 344 0, 171 361 1, 203 384 0, 247 384 1, 308 384 0, 346 334 1, 384 285 0, 384 202 1, 384 106 0, 335 53 1, 286 0 0, 197 0 1, 164 0 0, 128 0 1, 128 249 1, 128 53 1, 182 64 0, 209 64 1, 320 64 0, 320 199 1, 320 256 0, 298 288 1, 276 320 0, 239 320 1, 190 320 0
-512 -64 0 512 640;-1 0 1, 215 576 1, 297 576 1, 510 0 1, 425 0 1, 366 128 1, 130 128 1, 72 0 1, 154 192 1, 343 192 1, 249 458 1, 128 576 1, 128 640 1, 384 640 1, 384 576 1
-448 0 0 448 512;329 49 1, 239 0 0, 155 0 1, 86 0 0, 43 28 1, 0 57 0, 0 101 1, 0 227 0, 299 227 1, 320 227 1, 320 274 1, 320 320 0, 224 320 1, 149 320 0, 64 307 1, 64 364 1, 151 384 0, 228 384 1, 309 384 0, 347 358 1, 384 331 0, 384 274 1, 384 99 1, 384 64 0, 423 64 1, 428 64 0, 437 42 1, 443 3 1, 417 0 0, 392 0 1, 368 0 0, 352 11 1, 337 23 0, 320 87 1, 320 186 1, 283 187 1, 248 188 0, 206 184 1, 64 173 0, 64 116 1, 64 64 0, 168 64 1, 240 64 0, 64 448 1, 64 512 1, 320 512 1, 320 448 1
-512 0 0 512 768;8 0 1, 219 576 1, 297 576 1, 504 0 1, 419 0 1, 362 128 1, 139 128 1, 81 0 1, 161 192 1, 340 192 1, 251 458 1, 133 743 1, 179 743 1, 187 722 0, 207 713 1, 226 704 0, 258 704 1, 293 704 0, 313 715 1, 329 724 0, 336 743 1, 383 743 1, 377 700 0, 350 674 1, 314 640 0, 258 640 1, 199 640 0, 163 677 1, 139 702 0
-448 0 0 448 640;329 49 1, 239 0 0, 155 0 1, 86 0 0, 43 28 1, 0 57 0, 0 101 1, 0 227 0, 299 227 1, 320 227 1, 320 274 1, 320 320 0, 224 320 1, 149 320 0, 64 307 1, 64 364 1, 151 384 0, 228 384 1, 309 384 0, 347 358 1, 384 331 0, 384 274 1, 384 99 1, 384 64 0, 423 64 1, 428 64 0, 437 42 1, 443 3 1, 417 0 0, 392 0 1, 368 0 0, 352 11 1, 337 23 0, 320 87 1, 320 186 1, 283 187 1, 248 188 0, 206 184 1, 64 173 0, 64 116 1, 64 64 0, 168 64 1, 240 64 0, 67 602 1, 113 602 1, 121 588 0, 141 582 1, 161 576 0, 192 576 1, 227 576 0, 248 583 1, 264 589 0, 271 602 1, 317 602 1, 311 564 0, 284 542 1, 248 512 0, 192 512 1, 133 512 0, 97 544 1, 73 566 0
-512 0 -128 512 576;7 0 1, 218 576 1, 296 576 1, 503 0 1, 419 0 1, 361 128 1, 138 128 1, 80 0 1, 161 192 1, 339 192 1, 250 458 1, 419 0 1, 459 0 1, 448 -19 0, 448 -42 1, 448 -64 0, 470 -64 1, 481 -64 0, 488 -98 1, 488 -128 1, 469 -128 0, 446 -128 1, 384 -128 0, 384 -73 1, 384 -31 0
-448 0 -128 448 384;329 49 1, 239 0 0, 155 0 1, 86 0 0, 43 28 1, 0 57 0, 0 101 1, 0 227 0, 299 227 1, 320 227 1, 320 274 1, 320 320 0, 224 320 1, 149 320 0, 64 307 1, 64 364 1, 151 384 0, 228 384 1, 309 384 0, 347 358 1, 384 331 0, 384 274 1, 384 99 1, 384 64 0, 423 64 1, 428 64 0, 437 42 1, 443 3 1, 417 0 0, 392 0 1, 368 0 0, 352 11 1, 337 23 0, 320 87 1, 320 186 1, 283 187 1, 248 188 0, 206 184 1, 64 173 0, 64 116 1, 64 64 0, 168 64 1, 240 64 0, 315 0 1, 355 0 1, 320 -19 0, 320 -42 1, 320 -64 0, 356 -64 1, 372 -64 0, 384 -98 1, 384 -128 1, 361 -128 0, 332 -128 1, 256 -128 0, 256 -73 1, 256 -31 0
-576 64 0 512 704;512 30 1, 429 0 0, 334 0 1, 202 0 0, 133 73 1, 64 147 0, 64 287 1, 64 427 0, 134 502 1, 205 576 0, 338 576 1, 413 576 0, 512 566 1, 512 489 1, 394 512 0, 326 512 1, 230 512 0, 179 454 1, 128 396 0, 128 287 1, 128 180 0, 182 122 1, 237 64 0, 335 64 1, 417 64 0, 512 100 1, 270 576 1, 360 704 1, 446 704 1, 326 576 1
-384 0 0 384 576;320 11 1, 251 0 0, 190 0 1, 104 0 0, 52 53 1, 0 107 0, 0 192 1, 0 282 0, 54 333 1, 108 384 0, 205 384 1, 254 384 0, 320 380 1, 320 322 1, 251 320 0, 209 320 1, 64 320 0, 64 191 1, 64 130 0, 101 97 1, 137 64 0, 203 64 1, 253 64 0, 320 72 1, 168 512 1, 259 576 1, 344 576 1, 224 512 1
-576 64 0 512 704;512 30 1, 429 0 0, 334 0 1, 202 0 0, 133 73 1, 64 147 0, 64 287 1, 64 427 0, 134 502 1, 205 576 0, 338 576 1, 413 576 0, 512 566 1, 512 489 1, 394 512 0, 326 512 1, 230 512 0, 179 454 1, 128 396 0, 128 287 1, 128 180 0, 182 122 1, 237 64 0, 335 64 1, 417 64 0, 512 100 1, 194 576 1, 285 704 1, 366 704 1, 457 576 1, 401 576 1, 326 657 1, 325 657 1, 250 576 1
-384 0 0 384 576;320 11 1, 251 0 0, 190 0 1, 104 0 0, 52 53 1, 0 107 0, 0 192 1, 0 282 0, 54 333 1, 108 384 0, 205 384 1, 254 384 0, 320 380 1, 320 322 1, 251 320 0, 209 320 1, 64 320 0, 64 191 1, 64 130 0, 101 97 1, 137 64 0, 203 64 1, 253 64 0, 320 72 1, 74 512 1, 164 576 1, 246 576 1, 332 512 1, 281 512 1, 205 552 1, 204 552 1, 129 512 1
-576 64 0 512 704;512 30 1, 429 0 0, 334 0 1, 202 0 0, 133 73 1, 64 147 0, 64 287 1, 64 427 0, 134 502 1, 205 576 0, 338 576 1, 413 576 0, 512 566 1, 512 489 1, 394 512 0, 326 512 1, 230 512 0, 179 454 1, 128 396 0, 128 287 1, 128 180 0, 182 122 1, 237 64 0, 335 64 1, 417 64 0, 512 100 1, 320 640 1, 320 704 1, 384 704 1, 384 640 1
-384 64 0 320 576;320 11 1, 265 0 0, 216 0 1, 148 0 0, 106 53 1, 64 107 0, 64 192 1, 64 282 0, 107 333 1, 150 384 0, 228 384 1, 267 384 0, 320 380 1, 320 322 1, 268 320 0, 237 320 1, 128 320 0, 128 191 1, 128 130 0, 156 97 1, 183 64 0, 232 64 1, 270 64 0, 320 72 1, 192 512 1, 192 576 1, 256 576 1, 256 512 1
-576 64 0 512 704;512 30 1, 429 0 0, 334 0 1, 202 0 0, 133 73 1, 64 147 0, 64 287 1, 64 427 0, 134 502 1, 205 576 0, 338 576 1, 413 576 0, 512 566 1, 512 489 1, 394 512 0, 326 512 1, 230 512 0, 179 454 1, 128 396 0, 128 287 1, 128 180 0, 182 122 1, 237 64 0, 335 64 1, 417 64 0, 512 100 1, 457 704 1, 366 576 1, 285 576 1, 194 704 1, 250 704 1, 325 623 1, 326 623 1, 401 704 1
-384 0 0 448 576;320 11 1, 251 0 0, 190 0 1, 104 0 0, 52 53 1, 0 107 0, 0 192 1, 0 282 0, 54 333 1, 108 384 0, 205 384 1, 254 384 0, 320 380 1, 320 322 1, 251 320 0, 209 320 1, 64 320 0, 64 191 1, 64 130 0, 101 97 1, 137 64 0, 203 64 1, 253 64 0, 320 72 1, 387 576 1, 297 512 1, 215 512 1, 125 576 1, 180 576 1, 256 536 1, 256 536 1, 332 576 1
-576 64 0 512 704;64 0 1, 64 576 1, 227 576 1, 512 576 0, 512 301 1, 512 158 0, 438 79 1, 364 0 0, 228 0 1, 128 64 1, 223 64 1, 448 64 0, 448 292 1, 448 426 0, 360 481 1, 335 497 0, 299 504 1, 257 512 0, 186 512 1, 128 512 1, 374 704 1, 284 576 1, 202 576 1, 115 704 1, 167 704 1, 243 623 1, 244 623 1, 319 704 1
-448 64 0 448 576;320 135 1, 320 331 1, 265 320 0, 239 320 1, 128 320 0, 128 185 1, 128 129 0, 150 96 1, 172 64 0, 209 64 1, 258 64 0, 320 72 1, 300 40 0, 277 23 1, 245 0 0, 201 0 1, 140 0 0, 102 50 1, 64 100 0, 64 182 1, 64 278 0, 113 331 1, 162 384 0, 251 384 1, 285 384 0, 320 384 1, 320 576 1, 384 576 1, 384 0 1, 320 0 1, 384 400 1, 384 422 1, 409 430 0, 409 493 1, 409 499 1, 384 499 1, 384 576 1, 448 576 1, 448 510 1, 448 408 0
-576 0 0 512 576;64 0 1, 64 256 1, 0 256 1, 0 320 1, 64 320 1, 64 576 1, 229 576 1, 512 576 0, 512 301 1, 512 158 0, 438 79 1, 365 0 0, 231 0 1, 128 64 1, 225 64 1, 448 64 0, 448 292 1, 448 426 0, 361 481 1, 336 497 0, 300 504 1, 258 512 0, 188 512 1, 128 512 1, 128 320 1, 256 320 1, 256 256 1, 128 256 1
-448 64 0 448 576;320 448 1, 200 448 1, 200 512 1, 320 512 1, 320 576 1, 384 576 1, 384 512 1, 440 512 1, 440 448 1, 384 448 1, 384 0 1, 320 0 1, 320 72 1, 300 40 0, 277 23 1, 245 0 0, 201 0 1, 140 0 0, 102 50 1, 64 100 0, 64 182 1, 64 278 0, 113 331 1, 162 384 0, 251 384 1, 285 384 0, 320 384 1, 320 135 1, 320 331 1, 265 320 0, 239 320 1, 128 320 0, 128 185 1, 128 129 0, 150 96 1, 172 64 0, 209 64 1, 258 64 0
-512 64 0 512 640;64 0 1, 64 576 1, 448 576 1, 448 512 1, 128 512 1, 128 320 1, 448 320 1, 448 256 1, 128 256 1, 128 64 1, 512 64 1, 512 0 1, 128 576 1, 128 640 1, 384 640 1, 384 576 1
-448 64 0 448 512;311 256 1, 310 277 0, 303 287 1, 284 320 0, 219 320 1, 173 320 0, 147 305 1, 121 290 0, 115 256 1, 384 72 1, 384 13 1, 314 0 0, 256 0 1, 168 0 0, 116 53 1, 64 107 0, 64 197 1, 64 283 0, 110 333 1, 156 384 0, 234 384 1, 323 384 0, 360 325 1, 387 281 0, 386 212 1, 386 192 1, 114 192 1, 119 153 0, 129 132 1, 162 64 0, 260 64 1, 316 64 0, 64 448 1, 64 512 1, 320 512 1, 320 448 1
-512 64 0 512 768;64 0 1, 64 576 1, 448 576 1, 448 512 1, 128 512 1, 128 320 1, 448 320 1, 448 256 1, 128 256 1, 128 64 1, 512 64 1, 512 0 1, 129 743 1, 181 743 1, 190 722 0, 212 713 1, 234 704 0, 269 704 1, 308 704 0, 331 715 1, 349 724 0, 357 743 1, 408 743 1, 401 700 0, 371 674 1, 331 640 0, 268 640 1, 203 640 0, 163 677 1, 136 702 0
-448 64 0 448 640;311 256 1, 310 277 0, 303 287 1, 284 320 0, 219 320 1, 173 320 0, 147 305 1, 121 290 0, 115 256 1, 384 72 1, 384 13 1, 314 0 0, 256 0 1, 168 0 0, 116 53 1, 64 107 0, 64 197 1, 64 283 0, 110 333 1, 156 384 0, 234 384 1, 323 384 0, 360 325 1, 387 281 0, 386 212 1, 386 192 1, 114 192 1, 119 153 0, 129 132 1, 162 64 0, 260 64 1, 316 64 0, 93 579 1, 139 579 1, 147 543 0, 167 527 1, 186 512 0, 218 512 1, 253 512 0, 273 531 1, 289 546 0, 296 579 1, 342 579 1, 336 524 0, 309 491 1, 273 448 0, 217 448 1, 159 448 0, 123 495 1, 99 526 0
-512 64 0 512 704;64 0 1, 64 576 1, 448 576 1, 448 512 1, 128 512 1, 128 320 1, 448 320 1, 448 256 1, 128 256 1, 128 64 1, 512 64 1, 512 0 1, 256 640 1, 256 704 1, 320 704 1, 320 640 1
-448 64 0 448 576;311 256 1, 310 277 0, 303 287 1, 284 320 0, 219 320 1, 173 320 0, 147 305 1, 121 290 0, 115 256 1, 384 72 1, 384 13 1, 314 0 0, 256 0 1, 168 0 0, 116 53 1, 64 107 0, 64 197 1, 64 283 0, 110 333 1, 156 384 0, 234 384 1, 323 384 0, 360 325 1, 387 281 0, 386 212 1, 386 192 1, 114 192 1, 119 153 0, 129 132 1, 162 64 0, 260 64 1, 316 64 0, 128 512 1, 128 576 1, 192 576 1, 192 512 1
-512 64 -128 512 576;64 0 1, 64 576 1, 448 576 1, 448 512 1, 128 512 1, 128 320 1, 448 320 1, 448 256 1, 128 256 1, 128 64 1, 512 64 1, 512 0 1, 410 0 1, 448 0 1, 384 -19 0, 384 -42 1, 384 -64 0, 420 -64 1, 436 -64 0, 448 -98 1, 448 -128 1, 425 -128 0, 396 -128 1, 320 -128 0, 320 -73 1, 320 -31 0
-448 64 -128 448 384;311 256 1, 310 277 0, 303 287 1, 284 320 0, 219 320 1, 173 320 0, 147 305 1, 121 290 0, 115 256 1, 384 72 1, 384 13 1, 314 0 0, 256 0 1, 168 0 0, 116 53 1, 64 107 0, 64 197 1, 64 283 0, 110 333 1, 156 384 0, 234 384 1, 323 384 0, 360 325 1, 387 281 0, 386 212 1, 386 192 1, 114 192 1, 119 153 0, 129 132 1, 162 64 0, 260 64 1, 316 64 0, 251 0 1, 291 0 1, 256 -19 0, 256 -42 1, 256 -64 0, 292 -64 1, 308 -64 0, 320 -98 1, 320 -128 1, 297 -128 0, 268 -128 1, 192 -128 0, 192 -73 1, 192 -31 0
-512 64 0 512 704;64 0 1, 64 576 1, 448 576 1, 448 512 1, 128 512 1, 128 320 1, 448 320 1, 448 256 1, 128 256 1, 128 64 1, 512 64 1, 512 0 1, 413 704 1, 312 576 1, 221 576 1, 122 704 1, 182 704 1, 266 623 1, 267 623 1, 351 704 1
-448 0 0 448 576;311 256 1, 310 277 0, 303 287 1, 284 320 0, 219 320 1, 173 320 0, 147 305 1, 121 290 0, 115 256 1, 384 72 1, 384 13 1, 314 0 0, 256 0 1, 168 0 0, 116 53 1, 64 107 0, 64 197 1, 64 283 0, 110 333 1, 156 384 0, 234 384 1, 323 384 0, 360 325 1, 387 281 0, 386 212 1, 386 192 1, 114 192 1, 119 153 0, 129 132 1, 162 64 0, 260 64 1, 316 64 0, 323 576 1, 233 512 1, 151 512 1, 61 576 1, 116 576 1, 192 536 1, 192 536 1, 268 576 1
-576 64 0 512 704;512 256 1, 512 14 1, 418 0 0, 330 0 1, 64 0 0, 64 286 1, 64 426 0, 133 501 1, 202 576 0, 332 576 1, 416 576 0, 512 564 1, 512 485 1, 398 512 0, 323 512 1, 128 512 0, 128 289 1, 128 180 0, 183 122 1, 238 64 0, 340 64 1, 382 64 0, 448 57 1, 448 192 1, 384 192 1, 384 256 1, 222 576 1, 312 704 1, 391 704 1, 454 576 1, 415 576 1, 354 657 1, 353 657 1, 277 576 1
-448 64 -192 384 576;320 153 1, 320 331 1, 265 320 0, 240 320 1, 128 320 0, 128 190 1, 128 132 0, 150 98 1, 172 64 0, 209 64 1, 258 64 0, 320 90 1, 300 50 0, 277 29 1, 245 0 0, 202 0 1, 140 0 0, 102 52 1, 64 103 0, 64 186 1, 64 280 0, 113 332 1, 162 384 0, 250 384 1, 285 384 0, 320 384 1, 384 384 1, 384 105 1, 384 22 0, 374 -18 1, 348 -128 0, 194 -128 1, 130 -128 0, 64 -135 1, 64 -71 1, 143 -64 0, 198 -64 1, 320 -64 0, 320 29 1, 119 512 1, 208 576 1, 288 576 1, 370 512 1, 322 512 1, 248 552 1, 248 552 1, 174 512 1
-576 64 0 512 768;512 256 1, 512 14 1, 418 0 0, 330 0 1, 64 0 0, 64 286 1, 64 426 0, 133 501 1, 202 576 0, 332 576 1, 416 576 0, 512 564 1, 512 485 1, 398 512 0, 323 512 1, 128 512 0, 128 289 1, 128 180 0, 183 122 1, 238 64 0, 340 64 1, 382 64 0, 448 57 1, 448 192 1, 384 192 1, 384 256 1, 228 743 1, 274 743 1, 281 722 0, 300 713 1, 317 704 0, 345 704 1, 378 704 0, 396 715 1, 411 724 0, 417 743 1, 449 743 1, 444 700 0, 419 674 1, 388 640 0, 339 640 1, 286 640 0, 255 677 1, 233 702 0
-448 64 -192 384 640;320 153 1, 320 331 1, 265 320 0, 240 320 1, 128 320 0, 128 190 1, 128 132 0, 150 98 1, 172 64 0, 209 64 1, 258 64 0, 320 90 1, 300 50 0, 277 29 1, 245 0 0, 202 0 1, 140 0 0, 102 52 1, 64 103 0, 64 186 1, 64 280 0, 113 332 1, 162 384 0, 250 384 1, 285 384 0, 320 384 1, 384 384 1, 384 105 1, 384 22 0, 374 -18 1, 348 -128 0, 194 -128 1, 130 -128 0, 64 -135 1, 64 -71 1, 143 -64 0, 198 -64 1, 320 -64 0, 320 29 1, 131 602 1, 177 602 1, 185 588 0, 205 582 1, 225 576 0, 256 576 1, 291 576 0, 312 583 1, 328 589 0, 335 602 1, 381 602 1, 375 564 0, 348 542 1, 312 512 0, 256 512 1, 197 512 0, 161 544 1, 137 566 0
-576 64 0 512 704;512 256 1, 512 14 1, 418 0 0, 330 0 1, 64 0 0, 64 286 1, 64 426 0, 133 501 1, 202 576 0, 332 576 1, 416 576 0, 512 564 1, 512 485 1, 398 512 0, 323 512 1, 128 512 0, 128 289 1, 128 180 0, 183 122 1, 238 64 0, 340 64 1, 382 64 0, 448 57 1, 448 192 1, 384 192 1, 384 256 1, 320 640 1, 320 704 1, 384 704 1, 384 640 1
-448 64 -192 384 576;320 153 1, 320 331 1, 265 320 0, 240 320 1, 128 320 0, 128 190 1, 128 132 0, 150 98 1, 172 64 0, 209 64 1, 258 64 0, 320 90 1, 300 50 0, 277 29 1, 245 0 0, 202 0 1, 140 0 0, 102 52 1, 64 103 0, 64 186 1, 64 280 0, 113 332 1, 162 384 0, 250 384 1, 285 384 0, 320 384 1, 384 384 1, 384 105 1, 384 22 0, 374 -18 1, 348 -128 0, 194 -128 1, 130 -128 0, 64 -135 1, 64 -71 1, 143 -64 0, 198 -64 1, 320 -64 0, 320 29 1, 192 512 1, 192 576 1, 256 576 1, 256 512 1
-576 64 -192 512 576;512 256 1, 512 14 1, 417 0 0, 330 0 1, 64 0 0, 64 286 1, 64 426 0, 133 501 1, 202 576 0, 332 576 1, 416 576 0, 512 564 1, 512 485 1, 398 512 0, 323 512 1, 128 512 0, 128 289 1, 128 180 0, 183 122 1, 238 64 0, 340 64 1, 382 64 0, 448 57 1, 448 192 1, 384 192 1, 384 256 1, 291 -158 1, 291 -126 1, 299 -128 0, 305 -128 1, 320 -128 0, 320 -104 1, 320 -77 0, 309 -71 1, 309 -42 1, 343 -43 0, 360 -57 1, 384 -77 0, 384 -121 1, 384 -192 0, 325 -192 1, 309 -192 0
-448 64 -192 384 704;320 153 1, 320 331 1, 265 320 0, 240 320 1, 128 320 0, 128 190 1, 128 132 0, 150 98 1, 172 64 0, 209 64 1, 258 64 0, 320 90 1, 300 50 0, 277 29 1, 245 0 0, 202 0 1, 140 0 0, 102 52 1, 64 103 0, 64 186 1, 64 280 0, 113 332 1, 162 384 0, 250 384 1, 285 384 0, 320 384 1, 384 384 1, 384 105 1, 384 22 0, 374 -18 1, 348 -128 0, 194 -128 1, 130 -128 0, 64 -135 1, 64 -71 1, 143 -64 0, 198 -64 1, 320 -64 0, 320 29 1, 256 682 1, 256 660 1, 231 652 0, 231 592 1, 231 586 1, 256 586 1, 256 512 1, 192 512 1, 192 576 1, 192 674 0
-576 64 0 512 704;64 0 1, 64 576 1, 128 576 1, 128 320 1, 448 320 1, 448 576 1, 512 576 1, 512 0 1, 448 0 1, 448 256 1, 128 256 1, 128 0 1, 134 576 1, 240 704 1, 336 704 1, 441 576 1, 376 576 1, 288 657 1, 287 657 1, 199 576 1
-448 64 0 384 768;64 0 1, 64 576 1, 128 576 1, 128 312 1, 157 344 0, 185 360 1, 226 384 0, 275 384 1, 384 384 0, 384 276 1, 384 0 1, 320 0 1, 320 254 1, 320 293 0, 308 306 1, 296 320 0, 264 320 1, 194 320 0, 128 249 1, 128 0 1, 88 640 1, 179 768 1, 272 768 1, 362 640 1, 312 640 1, 226 721 1, 225 721 1, 139 640 1
-576 0 0 576 576;128 320 1, 448 320 1, 448 384 1, 128 384 1, 64 0 1, 64 384 1, 8 384 1, 8 448 1, 64 448 1, 64 576 1, 128 576 1, 128 448 1, 448 448 1, 448 576 1, 512 576 1, 512 448 1, 568 448 1, 568 384 1, 512 384 1, 512 0 1, 448 0 1, 448 256 1, 128 256 1, 128 0 1
-448 0 0 384 576;64 0 1, 64 448 1, 8 448 1, 8 512 1, 64 512 1, 64 576 1, 128 576 1, 128 512 1, 255 512 1, 255 448 1, 128 448 1, 128 312 1, 157 344 0, 185 360 1, 226 384 0, 275 384 1, 384 384 0, 384 276 1, 384 0 1, 320 0 1, 320 254 1, 320 293 0, 308 306 1, 296 320 0, 264 320 1, 194 320 0, 128 249 1, 128 0 1
-192 -64 0 256 768;64 0 1, 64 576 1, 128 576 1, 128 0 1, -22 623 1, -20 655 0, -11 673 1, 5 704 0, 43 704 1, 68 704 0, 89 704 1, 110 704 1, 130 704 0, 141 704 1, 163 704 0, 167 710 1, 214 710 1, 212 682 0, 203 667 1, 187 640 0, 150 640 1, 125 640 0, 103 640 1, 82 640 1, 63 640 0, 51 640 1, 29 640 0, 25 623 1
-192 -64 0 256 640;64 0 1, 64 384 1, 128 384 1, 128 0 1, -24 480 1, -21 518 0, -13 539 1, 4 576 0, 43 576 1, 69 576 0, 90 576 1, 112 576 1, 132 576 0, 143 576 1, 166 576 0, 170 590 1, 216 590 1, 213 559 0, 205 542 1, 188 512 0, 150 512 1, 124 512 0, 102 512 1, 80 512 1, 61 512 0, 49 512 1, 26 512 0, 22 480 1
-192 0 0 256 640;64 0 1, 64 576 1, 128 576 1, 128 0 1, 0 576 1, 0 640 1, 256 640 1, 256 576 1
-192 -64 0 192 512;64 0 1, 64 384 1, 128 384 1, 128 0 1, -64 448 1, -64 512 1, 192 512 1, 192 448 1
-192 -64 0 256 768;64 0 1, 64 576 1, 128 576 1, 128 0 1, -22 743 1, 25 743 1, 32 722 0, 50 713 1, 68 704 0, 96 704 1, 128 704 0, 146 715 1, 161 724 0, 167 743 1, 214 743 1, 208 700 0, 182 674 1, 149 640 0, 96 640 1, 40 640 0, 7 677 1, -16 702 0
-192 -64 0 256 640;64 0 1, 64 384 1, 128 384 1, 128 0 1, -24 578 1, 22 578 1, 29 542 0, 48 527 1, 67 512 0, 96 512 1, 129 512 0, 148 531 1, 163 546 0, 170 578 1, 216 578 1, 210 524 0, 184 491 1, 150 448 0, 96 448 1, 39 448 0, 5 495 1, -18 526 0
-192 64 -128 192 576;64 0 1, 64 576 1, 128 576 1, 128 0 1, 94 0 1, 126 0 1, 128 -19 0, 128 -42 1, 128 -64 0, 143 -64 1, 150 -64 0, 155 -98 1, 155 -128 1, 139 -128 0, 118 -128 1, 64 -128 0, 64 -73 1, 64 -31 0
-192 0 -128 128 576;64 0 1, 64 384 1, 128 384 1, 128 0 1, 64 512 1, 64 576 1, 128 576 1, 128 512 1, 59 0 1, 99 0 1, 64 -19 0, 64 -42 1, 64 -64 0, 100 -64 1, 116 -64 0, 128 -98 1, 128 -128 1, 105 -128 0, 76 -128 1, 0 -128 0, 0 -73 1, 0 -31 0
-192 64 0 128 704;64 0 1, 64 576 1, 128 576 1, 128 0 1, 64 640 1, 64 704 1, 128 704 1, 128 640 1
-576 64 -128 512 576;64 0 1, 64 576 1, 128 576 1, 128 0 1, 192 -87 1, 192 -19 1, 267 -64 0, 333 -64 1, 408 -64 0, 430 -29 1, 448 0 0, 448 71 1, 448 576 1, 512 576 1, 512 73 1, 512 -128 0, 317 -128 1, 252 -128 0
-320 64 -192 320 576;64 0 1, 64 384 1, 128 384 1, 128 0 1, 64 512 1, 64 576 1, 128 576 1, 128 512 1, 128 -145 1, 128 -87 1, 164 -64 0, 195 -64 1, 238 -64 0, 248 -47 1, 256 -32 0, 256 0 1, 256 384 1, 320 384 1, 320 0 1, 320 -128 0, 194 -128 1, 159 -128 0, 256 512 1, 256 576 1, 320 576 1, 320 512 1
-384 0 -128 448 704;0 -87 1, 0 -19 1, 75 -64 0, 141 -64 1, 216 -64 0, 238 -29 1, 256 0 0, 256 71 1, 256 576 1, 320 576 1, 320 73 1, 320 -128 0, 125 -128 1, 60 -128 0, 137 576 1, 244 704 1, 314 704 1, 403 576 1, 347 576 1, 281 657 1, 280 657 1, 203 576 1
-192 -64 -192 256 576;-64 -145 1, -64 -87 1, -28 -64 0, 3 -64 1, 46 -64 0, 56 -47 1, 64 -32 0, 64 0 1, 64 384 1, 128 384 1, 128 0 1, 128 -128 0, 2 -128 1, -33 -128 0, -55 512 1, 52 576 1, 126 576 1, 216 512 1, 160 512 1, 91 552 1, 90 552 1, 11 512 1
-512 64 -192 512 576;64 0 1, 64 576 1, 128 576 1, 128 293 1, 359 576 1, 438 576 1, 214 301 1, 476 0 1, 377 0 1, 128 292 1, 128 0 1, 165 -158 1, 165 -126 1, 190 -128 0, 208 -128 1, 256 -128 0, 256 -104 1, 256 -77 0, 184 -71 1, 184 -42 1, 246 -43 0, 277 -57 1, 320 -77 0, 320 -121 1, 320 -192 0, 222 -192 1, 195 -192 0
-384 64 -192 384 576;64 0 1, 64 576 1, 128 576 1, 128 198 1, 265 384 1, 335 384 1, 205 203 1, 374 0 1, 284 0 1, 128 197 1, 128 0 1, 128 -158 1, 128 -126 1, 146 -128 0, 158 -128 1, 192 -128 0, 192 -104 1, 192 -77 0, 146 -71 1, 146 -42 1, 196 -43 0, 221 -57 1, 256 -77 0, 256 -121 1, 256 -192 0, 175 -192 1, 153 -192 0
-384 64 0 384 384;64 0 1, 64 384 1, 128 384 1, 128 198 1, 265 384 1, 335 384 1, 205 203 1, 374 0 1, 284 0 1, 128 197 1, 128 0 1
-448 64 0 384 704;64 0 1, 64 576 1, 128 576 1, 128 64 1, 384 64 1, 384 0 1, 68 576 1, 143 704 1, 224 704 1, 113 576 1
-192 0 0 256 704;64 0 1, 64 576 1, 128 576 1, 128 0 1, 40 640 1, 131 704 1, 216 704 1, 96 640 1
-448 64 -192 384 576;64 0 1, 64 576 1, 128 576 1, 128 64 1, 384 64 1, 384 0 1, 154 -158 1, 154 -126 1, 164 -128 0, 172 -128 1, 192 -128 0, 192 -104 1, 192 -77 0, 171 -71 1, 171 -42 1, 210 -43 0, 229 -57 1, 256 -77 0, 256 -121 1, 256 -192 0, 191 -192 1, 174 -192 0
-192 0 -192 128 576;64 0 1, 64 576 1, 128 576 1, 128 0 1, 0 -158 1, 0 -126 1, 18 -128 0, 30 -128 1, 64 -128 0, 64 -104 1, 64 -77 0, 18 -71 1, 18 -42 1, 68 -43 0, 93 -57 1, 128 -77 0, 128 -121 1, 128 -192 0, 47 -192 1, 25 -192 0
-448 64 0 384 576;64 0 1, 64 576 1, 128 576 1, 128 64 1, 384 64 1, 384 0 1, 256 400 1, 256 423 1, 281 431 0, 281 493 1, 281 500 1, 256 500 1, 256 576 1, 320 576 1, 320 510 1, 320 408 0
-256 64 0 256 576;64 0 1, 64 576 1, 128 576 1, 128 0 1, 192 410 1, 192 432 1, 217 440 0, 217 498 1, 217 504 1, 192 504 1, 192 576 1, 256 576 1, 256 514 1, 256 418 0
-448 64 0 384 576;64 0 1, 64 576 1, 128 576 1, 128 64 1, 384 64 1, 384 0 1, 320 256 1, 320 320 1, 384 320 1, 384 256 1
-256 64 0 256 576;64 0 1, 64 576 1, 128 576 1, 128 0 1, 192 256 1, 192 320 1, 256 320 1, 256 256 1
-448 0 0 384 576;64 0 1, 64 271 1, 0 240 1, 0 305 1, 64 337 1, 64 576 1, 128 576 1, 128 381 1, 256 433 1, 256 367 1, 128 316 1, 128 64 1, 384 64 1, 384 0 1
-192 0 0 192 576;64 0 1, 64 263 1, 0 237 1, 0 297 1, 64 324 1, 64 576 1, 128 576 1, 128 364 1, 192 388 1, 192 329 1, 128 303 1, 128 0 1
-576 64 0 512 704;64 0 1, 64 576 1, 138 576 1, 448 131 1, 448 576 1, 512 576 1, 512 0 1, 437 0 1, 128 445 1, 128 0 1, 228 576 1, 326 704 1, 418 704 1, 288 576 1
-448 64 0 384 576;64 0 1, 64 384 1, 128 384 1, 128 312 1, 157 344 0, 185 360 1, 226 384 0, 275 384 1, 384 384 0, 384 276 1, 384 0 1, 320 0 1, 320 253 1, 320 292 0, 308 306 1, 296 320 0, 264 320 1, 194 320 0, 128 249 1, 128 0 1, 168 512 1, 259 576 1, 344 576 1, 224 512 1
-576 64 -192 512 576;64 0 1, 64 576 1, 138 576 1, 448 131 1, 448 576 1, 512 576 1, 512 0 1, 437 0 1, 128 445 1, 128 0 1, 198 -158 1, 198 -126 1, 214 -128 0, 225 -128 1, 256 -128 0, 256 -104 1, 256 -77 0, 218 -71 1, 218 -42 1, 265 -43 0, 288 -57 1, 320 -77 0, 320 -121 1, 320 -192 0, 243 -192 1, 222 -192 0
-448 64 -192 384 384;64 0 1, 64 384 1, 128 384 1, 128 312 1, 157 344 0, 185 360 1, 226 384 0, 275 384 1, 384 384 0, 384 276 1, 384 0 1, 320 0 1, 320 253 1, 320 292 0, 308 306 1, 296 320 0, 264 320 1, 194 320 0, 128 249 1, 128 0 1, 128 -158 1, 128 -126 1, 146 -128 0, 158 -128 1, 192 -128 0, 192 -104 1, 192 -77 0, 146 -71 1, 146 -42 1, 196 -43 0, 221 -57 1, 256 -77 0, 256 -121 1, 256 -192 0, 175 -192 1, 153 -192 0
-576 64 0 512 704;64 0 1, 64 576 1, 138 576 1, 448 131 1, 448 576 1, 512 576 1, 512 0 1, 437 0 1, 128 445 1, 128 0 1, 430 704 1, 332 576 1, 244 576 1, 146 704 1, 206 704 1, 288 623 1, 288 623 1, 370 704 1
-448 0 0 384 576;64 0 1, 64 384 1, 128 384 1, 128 312 1, 157 344 0, 185 360 1, 226 384 0, 275 384 1, 384 384 0, 384 276 1, 384 0 1, 320 0 1, 320 253 1, 320 292 0, 308 306 1, 296 320 0, 264 320 1, 194 320 0, 128 249 1, 128 0 1, 323 576 1, 233 512 1, 151 512 1, 61 576 1, 116 576 1, 192 536 1, 192 536 1, 268 576 1
-448 0 0 384 576;64 0 1, 64 384 1, 128 384 1, 128 312 1, 157 344 0, 185 360 1, 226 384 0, 275 384 1, 384 384 0, 384 276 1, 384 0 1, 320 0 1, 320 253 1, 320 292 0, 308 306 1, 296 320 0, 264 320 1, 194 320 0, 128 249 1, 128 0 1, 0 399 1, 0 422 1, 25 430 0, 25 493 1, 25 499 1, 0 499 1, 0 576 1, 64 576 1, 64 509 1, 64 407 0
-576 64 -192 512 576;64 0 1, 64 576 1, 138 576 1, 448 131 1, 448 576 1, 512 576 1, 512 -35 1, 512 -128 0, 382 -128 1, 352 -128 0, 320 -150 1, 320 -92 1, 349 -64 0, 382 -64 1, 448 -64 0, 448 -21 1, 448 -15 1, 128 445 1, 128 0 1
-448 64 -192 384 384;64 0 1, 64 384 1, 128 384 1, 128 312 1, 157 344 0, 185 360 1, 226 384 0, 275 384 1, 384 384 0, 384 276 1, 384 -35 1, 384 -128 0, 254 -128 1, 224 -128 0, 192 -150 1, 192 -92 1, 223 -64 0, 250 -64 1, 320 -64 0, 320 -21 1, 320 253 1, 320 292 0, 308 306 1, 296 320 0, 264 320 1, 194 320 0, 128 249 1, 128 0 1
-576 64 0 576 640;320 576 1, 436 576 0, 506 498 1, 576 419 0, 576 289 1, 576 156 0, 506 78 1, 436 0 0, 316 0 1, 214 0 0, 147 64 1, 64 145 0, 64 288 1, 64 420 0, 134 498 1, 204 576 0, 320 512 1, 229 512 0, 179 453 1, 128 394 0, 128 288 1, 128 183 0, 179 124 1, 229 64 0, 318 64 1, 401 64 0, 450 112 1, 512 171 0, 512 289 1, 512 394 0, 461 453 1, 410 512 0, 192 576 1, 192 640 1, 448 640 1, 448 576 1
-448 64 0 384 512;224 384 1, 298 384 0, 341 333 1, 384 281 0, 384 193 1, 384 102 0, 341 51 1, 298 0 0, 222 0 1, 156 0 0, 116 42 1, 64 95 0, 64 192 1, 64 281 0, 107 333 1, 150 384 0, 224 320 1, 128 320 0, 128 192 1, 128 64 0, 224 64 1, 320 64 0, 320 193 1, 320 320 0, 64 448 1, 64 512 1, 320 512 1, 320 448 1
-576 64 0 576 768;320 576 1, 436 576 0, 506 498 1, 576 419 0, 576 289 1, 576 156 0, 506 78 1, 436 0 0, 316 0 1, 214 0 0, 147 64 1, 64 145 0, 64 288 1, 64 420 0, 134 498 1, 204 576 0, 320 512 1, 229 512 0, 179 453 1, 128 394 0, 128 288 1, 128 183 0, 179 124 1, 229 64 0, 318 64 1, 401 64 0, 450 112 1, 512 171 0, 512 289 1, 512 394 0, 461 453 1, 410 512 0, 174 743 1, 220 743 1, 228 722 0, 248 713 1, 268 704 0, 299 704 1, 334 704 0, 355 715 1, 371 724 0, 378 743 1, 424 743 1, 418 700 0, 391 674 1, 355 640 0, 299 640 1, 240 640 0, 204 677 1, 180 702 0
-448 64 0 384 640;224 384 1, 298 384 0, 341 333 1, 384 281 0, 384 193 1, 384 102 0, 341 51 1, 298 0 0, 222 0 1, 156 0 0, 116 42 1, 64 95 0, 64 192 1, 64 281 0, 107 333 1, 150 384 0, 224 320 1, 128 320 0, 128 192 1, 128 64 0, 224 64 1, 320 64 0, 320 193 1, 320 320 0, 89 579 1, 135 579 1, 143 543 0, 163 527 1, 182 512 0, 214 512 1, 249 512 0, 269 531 1, 285 546 0, 292 579 1, 338 579 1, 332 524 0, 305 491 1, 269 448 0, 213 448 1, 155 448 0, 119 495 1, 95 526 0
-576 64 0 576 704;320 576 1, 436 576 0, 506 498 1, 576 419 0, 576 289 1, 576 156 0, 506 78 1, 436 0 0, 316 0 1, 214 0 0, 147 64 1, 64 145 0, 64 288 1, 64 420 0, 134 498 1, 204 576 0, 320 512 1, 229 512 0, 179 453 1, 128 394 0, 128 288 1, 128 183 0, 179 124 1, 229 64 0, 318 64 1, 401 64 0, 450 112 1, 512 171 0, 512 289 1, 512 394 0, 461 453 1, 410 512 0, 212 612 1, 303 704 1, 374 704 1, 254 612 1, 344 612 1, 434 704 1, 506 704 1, 386 612 1
-448 64 0 448 576;224 384 1, 298 384 0, 341 333 1, 384 281 0, 384 193 1, 384 102 0, 341 51 1, 298 0 0, 222 0 1, 156 0 0, 116 42 1, 64 95 0, 64 192 1, 64 281 0, 107 333 1, 150 384 0, 224 320 1, 128 320 0, 128 192 1, 128 64 0, 224 64 1, 320 64 0, 320 193 1, 320 320 0, 109 456 1, 199 576 1, 271 576 1, 151 456 1, 241 456 1, 331 576 1, 403 576 1, 283 456 1
-576 64 0 576 704;64 0 1, 64 576 1, 281 576 1, 448 576 0, 448 439 1, 448 372 0, 408 329 1, 384 303 0, 340 283 1, 525 0 1, 428 0 1, 271 256 1, 128 256 1, 128 0 1, 128 320 1, 216 320 1, 303 320 0, 343 346 1, 384 373 0, 384 429 1, 384 474 0, 351 493 1, 318 512 0, 241 512 1, 128 512 1, 184 576 1, 274 704 1, 359 704 1, 239 576 1
-256 64 0 320 576;64 0 1, 64 384 1, 128 384 1, 128 312 1, 145 345 0, 165 361 1, 194 384 0, 233 384 1, 241 384 0, 256 391 1, 256 326 1, 235 320 0, 222 320 1, 178 320 0, 128 253 1, 128 0 1, 104 512 1, 195 576 1, 280 576 1, 160 512 1
-576 64 -192 576 576;64 0 1, 64 576 1, 281 576 1, 448 576 0, 448 439 1, 448 372 0, 408 329 1, 384 303 0, 340 283 1, 525 0 1, 428 0 1, 271 256 1, 128 256 1, 128 0 1, 128 320 1, 216 320 1, 303 320 0, 343 346 1, 384 373 0, 384 429 1, 384 474 0, 351 493 1, 318 512 0, 241 512 1, 128 512 1, 184 -158 1, 184 -126 1, 204 -128 0, 218 -128 1, 256 -128 0, 256 -104 1, 256 -77 0, 202 -71 1, 202 -42 1, 256 -43 0, 283 -57 1, 320 -77 0, 320 -121 1, 320 -192 0, 234 -192 1, 210 -192 0
-256 64 -192 256 448;64 0 1, 64 384 1, 128 384 1, 128 312 1, 145 345 0, 165 361 1, 194 384 0, 233 384 1, 241 384 0, 256 391 1, 256 326 1, 235 320 0, 222 320 1, 178 320 0, 128 253 1, 128 0 1, 64 -158 1, 64 -126 1, 82 -128 0, 94 -128 1, 128 -128 0, 128 -104 1, 128 -77 0, 82 -71 1, 82 -42 1, 132 -43 0, 157 -57 1, 192 -77 0, 192 -121 1, 192 -192 0, 111 -192 1, 89 -192 0
-576 64 0 576 704;64 0 1, 64 576 1, 281 576 1, 448 576 0, 448 439 1, 448 372 0, 408 329 1, 384 303 0, 340 283 1, 525 0 1, 428 0 1, 271 256 1, 128 256 1, 128 0 1, 128 320 1, 216 320 1, 303 320 0, 343 346 1, 384 373 0, 384 429 1, 384 474 0, 351 493 1, 318 512 0, 241 512 1, 128 512 1, 356 704 1, 265 576 1, 184 576 1, 100 704 1, 149 704 1, 224 623 1, 225 623 1, 300 704 1
-256 -64 0 320 576;64 0 1, 64 384 1, 128 384 1, 128 312 1, 145 345 0, 165 361 1, 194 384 0, 233 384 1, 241 384 0, 256 391 1, 256 326 1, 235 320 0, 222 320 1, 178 320 0, 128 253 1, 128 0 1, 259 576 1, 169 512 1, 87 512 1, -3 576 1, 52 576 1, 128 536 1, 128 536 1, 204 576 1
-512 64 0 512 704;64 21 1, 64 102 1, 189 64 0, 311 64 1, 448 64 0, 448 152 1, 448 197 0, 410 218 1, 381 235 0, 315 253 1, 229 278 1, 64 324 0, 64 431 1, 64 576 0, 267 576 1, 355 576 0, 448 566 1, 448 491 1, 347 512 0, 255 512 1, 128 512 0, 128 431 1, 128 399 0, 154 379 1, 180 359 0, 247 340 1, 334 316 1, 432 288 0, 472 252 1, 512 216 0, 512 156 1, 512 84 0, 454 42 1, 396 0 0, 294 0 1, 193 0 0, 214 576 1, 304 704 1, 389 704 1, 269 576 1
-384 64 0 384 576;64 13 1, 64 77 1, 128 64 0, 183 64 1, 256 64 0, 256 116 1, 256 152 0, 204 168 1, 147 187 1, 64 214 0, 64 286 1, 64 384 0, 215 384 1, 258 384 0, 320 381 1, 320 323 1, 263 320 0, 206 320 1, 128 320 0, 128 276 1, 128 244 0, 174 230 1, 225 213 1, 320 182 0, 320 106 1, 320 57 0, 283 29 1, 245 0 0, 180 0 1, 129 0 0, 168 512 1, 259 576 1, 344 576 1, 224 512 1
-512 64 0 512 704;64 21 1, 64 102 1, 189 64 0, 311 64 1, 448 64 0, 448 152 1, 448 197 0, 410 218 1, 381 235 0, 315 253 1, 229 278 1, 64 324 0, 64 431 1, 64 576 0, 267 576 1, 355 576 0, 448 566 1, 448 491 1, 347 512 0, 255 512 1, 128 512 0, 128 431 1, 128 399 0, 154 379 1, 180 359 0, 247 340 1, 334 316 1, 432 288 0, 472 252 1, 512 216 0, 512 156 1, 512 84 0, 454 42 1, 396 0 0, 294 0 1, 193 0 0, 139 576 1, 229 704 1, 310 704 1, 400 576 1, 344 576 1, 270 657 1, 269 657 1, 194 576 1
-384 64 0 384 576;64 13 1, 64 77 1, 128 64 0, 183 64 1, 256 64 0, 256 116 1, 256 152 0, 204 168 1, 147 187 1, 64 214 0, 64 286 1, 64 384 0, 215 384 1, 258 384 0, 320 381 1, 320 323 1, 263 320 0, 206 320 1, 128 320 0, 128 276 1, 128 244 0, 174 230 1, 225 213 1, 320 182 0, 320 106 1, 320 57 0, 283 29 1, 245 0 0, 180 0 1, 129 0 0, 94 512 1, 181 576 1, 260 576 1, 348 512 1, 293 512 1, 221 552 1, 220 552 1, 147 512 1
-512 64 -192 512 576;64 21 1, 64 102 1, 189 64 0, 311 64 1, 448 64 0, 448 152 1, 448 197 0, 410 218 1, 381 235 0, 315 253 1, 229 278 1, 64 324 0, 64 431 1, 64 576 0, 267 576 1, 355 576 0, 448 566 1, 448 491 1, 347 512 0, 255 512 1, 128 512 0, 128 431 1, 128 399 0, 154 379 1, 180 359 0, 247 340 1, 334 316 1, 432 288 0, 472 252 1, 512 216 0, 512 157 1, 512 84 0, 454 42 1, 396 0 0, 294 0 1, 193 0 0, 243 0 1, 279 0 1, 257 -41 1, 280 -42 0, 297 -59 1, 320 -82 0, 320 -116 1, 320 -148 0, 300 -170 1, 279 -192 0, 250 -192 1, 227 -192 0, 200 -154 1, 200 -124 1, 213 -128 0, 228 -128 1, 256 -128 0, 256 -101 1, 256 -67 0, 208 -66 1
-384 64 -192 320 384;64 13 1, 64 77 1, 128 64 0, 183 64 1, 256 64 0, 256 116 1, 256 152 0, 204 168 1, 147 187 1, 64 214 0, 64 286 1, 64 384 0, 215 384 1, 258 384 0, 320 381 1, 320 323 1, 263 320 0, 206 320 1, 128 320 0, 128 276 1, 128 244 0, 174 230 1, 225 213 1, 320 182 0, 320 106 1, 320 57 0, 283 29 1, 245 0 0, 180 0 1, 129 0 0, 171 0 1, 207 0 1, 184 -41 1, 211 -42 0, 230 -59 1, 256 -82 0, 256 -116 1, 256 -148 0, 234 -170 1, 213 -192 0, 180 -192 1, 155 -192 0, 127 -154 1, 127 -124 1, 143 -128 0, 160 -128 1, 192 -128 0, 192 -101 1, 192 -67 0, 135 -66 1
-512 64 0 512 704;64 21 1, 64 102 1, 189 64 0, 311 64 1, 448 64 0, 448 152 1, 448 197 0, 410 218 1, 381 235 0, 315 253 1, 229 278 1, 64 324 0, 64 431 1, 64 576 0, 267 576 1, 355 576 0, 448 566 1, 448 491 1, 347 512 0, 255 512 1, 128 512 0, 128 431 1, 128 399 0, 154 379 1, 180 359 0, 247 340 1, 334 316 1, 432 288 0, 472 252 1, 512 216 0, 512 156 1, 512 84 0, 454 42 1, 396 0 0, 294 0 1, 193 0 0, 400 704 1, 310 576 1, 229 576 1, 139 704 1, 194 704 1, 269 623 1, 270 623 1, 344 704 1
-384 0 0 384 576;64 13 1, 64 77 1, 128 64 0, 183 64 1, 256 64 0, 256 116 1, 256 152 0, 204 168 1, 147 187 1, 64 214 0, 64 286 1, 64 384 0, 215 384 1, 258 384 0, 320 381 1, 320 323 1, 263 320 0, 206 320 1, 128 320 0, 128 276 1, 128 244 0, 174 230 1, 225 213 1, 320 182 0, 320 106 1, 320 57 0, 283 29 1, 245 0 0, 180 0 1, 129 0 0, 323 576 1, 233 512 1, 151 512 1, 61 576 1, 116 576 1, 192 536 1, 192 536 1, 268 576 1
-448 0 -192 448 576;192 0 1, 192 512 1, 0 512 1, 0 576 1, 448 576 1, 448 512 1, 256 512 1, 256 0 1, 212 0 1, 242 0 1, 223 -41 1, 259 -42 0, 285 -59 1, 320 -82 0, 320 -115 1, 320 -148 0, 295 -170 1, 270 -192 0, 234 -192 1, 205 -192 0, 173 -154 1, 173 -124 1, 193 -128 0, 214 -128 1, 256 -128 0, 256 -101 1, 256 -67 0, 181 -66 1
-192 0 -192 192 512;192 -2 1, 172 0 0, 154 0 1, 64 0 0, 64 103 1, 64 320 1, 0 320 1, 0 384 1, 64 384 1, 64 458 1, 128 465 1, 128 384 1, 192 384 1, 192 320 1, 128 320 1, 128 115 1, 128 84 0, 136 74 1, 144 64 0, 168 64 1, 182 64 0, 192 45 1, 112 0 1, 145 0 1, 124 -41 1, 149 -42 0, 167 -59 1, 192 -82 0, 192 -115 1, 192 -148 0, 172 -170 1, 152 -192 0, 123 -192 1, 100 -192 0, 74 -154 1, 74 -124 1, 87 -128 0, 101 -128 1, 128 -128 0, 128 -101 1, 128 -67 0, 81 -66 1
-448 0 0 448 704;192 0 1, 192 512 1, 0 512 1, 0 576 1, 448 576 1, 448 512 1, 256 512 1, 256 0 1, 350 704 1, 258 576 1, 190 576 1, 98 704 1, 155 704 1, 224 623 1, 224 623 1, 293 704 1
-320 0 -64 256 640;192 -2 1, 172 0 0, 154 0 1, 64 0 0, 64 103 1, 64 320 1, 0 320 1, 0 384 1, 64 384 1, 64 468 1, 128 476 1, 128 384 1, 192 384 1, 192 320 1, 128 320 1, 128 115 1, 128 84 0, 136 74 1, 144 64 0, 168 64 1, 182 64 0, 192 45 1, 192 447 1, 192 472 1, 208 481 0, 208 549 1, 208 556 1, 192 556 1, 192 640 1, 256 640 1, 256 567 1, 256 456 0
-448 0 0 448 576;192 0 1, 192 256 1, 64 256 1, 64 320 1, 192 320 1, 192 512 1, 0 512 1, 0 576 1, 448 576 1, 448 512 1, 256 512 1, 256 320 1, 384 320 1, 384 256 1, 256 256 1, 256 0 1
-192 0 -64 192 512;64 192 1, 0 192 1, 0 256 1, 64 256 1, 64 320 1, 0 320 1, 0 384 1, 64 384 1, 64 458 1, 128 465 1, 128 384 1, 192 384 1, 192 320 1, 128 320 1, 128 256 1, 192 256 1, 192 192 1, 128 192 1, 128 114 1, 128 84 0, 136 74 1, 144 64 0, 168 64 1, 182 64 0, 192 45 1, 192 -2 1, 172 0 0, 154 0 1, 64 0 0, 64 102 1
-576 64 0 512 768;64 576 1, 128 576 1, 128 213 1, 128 158 0, 139 132 1, 150 106 0, 180 88 1, 223 64 0, 295 64 1, 379 64 0, 414 97 1, 448 129 0, 448 210 1, 448 576 1, 512 576 1, 512 211 1, 512 139 0, 497 102 1, 482 64 0, 440 37 1, 385 0 0, 292 0 1, 174 0 0, 119 51 1, 64 102 0, 64 214 1, 146 623 1, 149 655 0, 160 673 1, 179 704 0, 226 704 1, 256 704 0, 282 704 1, 308 704 1, 332 704 0, 345 704 1, 372 704 0, 377 710 1, 430 710 1, 427 682 0, 416 667 1, 397 640 0, 351 640 1, 321 640 0, 294 640 1, 268 640 1, 245 640 0, 231 640 1, 204 640 0, 199 623 1
-448 64 0 384 640;320 0 1, 320 72 1, 291 40 0, 263 24 1, 222 0 0, 174 0 1, 64 0 0, 64 108 1, 64 384 1, 128 384 1, 128 131 1, 128 92 0, 140 78 1, 152 64 0, 184 64 1, 254 64 0, 320 135 1, 320 384 1, 384 384 1, 384 0 1, 93 480 1, 96 519 0, 106 539 1, 125 576 0, 169 576 1, 198 576 0, 223 576 1, 248 576 1, 271 576 0, 283 576 1, 310 576 0, 314 590 1, 355 590 1, 352 559 0, 342 542 1, 324 512 0, 280 512 1, 250 512 0, 225 512 1, 200 512 1, 178 512 0, 165 512 1, 138 512 0, 134 480 1
-576 64 0 512 640;64 576 1, 128 576 1, 128 213 1, 128 158 0, 139 132 1, 150 106 0, 180 88 1, 223 64 0, 295 64 1, 379 64 0, 414 97 1, 448 129 0, 448 210 1, 448 576 1, 512 576 1, 512 211 1, 512 139 0, 497 102 1, 482 64 0, 440 37 1, 385 0 0, 292 0 1, 174 0 0, 119 51 1, 64 102 0, 64 214 1, 192 576 1, 192 640 1, 384 640 1, 384 576 1
-448 64 0 384 512;320 0 1, 320 72 1, 291 40 0, 263 24 1, 222 0 0, 174 0 1, 64 0 0, 64 108 1, 64 384 1, 128 384 1, 128 131 1, 128 92 0, 140 78 1, 152 64 0, 184 64 1, 254 64 0, 320 135 1, 320 384 1, 384 384 1, 384 0 1, 64 448 1, 64 512 1, 320 512 1, 320 448 1
-576 64 0 512 768;64 576 1, 128 576 1, 128 213 1, 128 158 0, 139 132 1, 150 106 0, 180 88 1, 223 64 0, 295 64 1, 379 64 0, 414 97 1, 448 129 0, 448 210 1, 448 576 1, 512 576 1, 512 211 1, 512 139 0, 497 102 1, 482 64 0, 440 37 1, 385 0 0, 292 0 1, 174 0 0, 119 51 1, 64 102 0, 64 214 1, 146 743 1, 199 743 1, 208 722 0, 231 713 1, 253 704 0, 288 704 1, 328 704 0, 351 715 1, 369 724 0, 377 743 1, 430 743 1, 423 700 0, 392 674 1, 352 640 0, 288 640 1, 221 640 0, 181 677 1, 153 702 0
-448 64 0 384 640;320 0 1, 320 72 1, 291 40 0, 263 24 1, 222 0 0, 174 0 1, 64 0 0, 64 108 1, 64 384 1, 128 384 1, 128 131 1, 128 92 0, 140 78 1, 152 64 0, 184 64 1, 254 64 0, 320 135 1, 320 384 1, 384 384 1, 384 0 1, 93 578 1, 134 578 1, 143 543 0, 166 527 1, 188 512 0, 224 512 1, 264 512 0, 287 531 1, 306 546 0, 314 578 1, 355 578 1, 349 524 0, 320 491 1, 283 448 0, 224 448 1, 162 448 0, 125 495 1, 100 526 0
-576 64 0 512 768;64 576 1, 128 576 1, 128 213 1, 128 158 0, 139 132 1, 150 106 0, 180 88 1, 223 64 0, 295 64 1, 379 64 0, 414 97 1, 448 129 0, 448 210 1, 448 576 1, 512 576 1, 512 211 1, 512 139 0, 497 102 1, 482 64 0, 440 37 1, 385 0 0, 292 0 1, 174 0 0, 119 51 1, 64 102 0, 64 214 1, 288 768 1, 328 768 0, 356 749 1, 384 731 0, 384 704 1, 384 677 0, 356 659 1, 328 640 0, 287 640 1, 252 640 0, 226 655 1, 192 675 0, 192 704 1, 192 731 0, 220 749 1, 248 768 0, 288 704 1, 275 704 0, 265 704 1, 256 704 0, 256 704 1, 256 704 0, 265 704 1, 275 704 0, 288 704 1, 300 704 0, 309 704 1, 320 704 0, 320 704 1, 320 704 0, 310 704 1, 301 704 0
-448 64 0 384 640;320 0 1, 320 72 1, 291 40 0, 263 24 1, 222 0 0, 174 0 1, 64 0 0, 64 108 1, 64 384 1, 128 384 1, 128 131 1, 128 92 0, 140 78 1, 152 64 0, 184 64 1, 254 64 0, 320 135 1, 320 384 1, 384 384 1, 384 0 1, 192 640 1, 219 640 0, 237 621 1, 256 603 0, 256 576 1, 256 549 0, 237 531 1, 219 512 0, 191 512 1, 168 512 0, 151 527 1, 128 547 0, 128 576 1, 128 603 0, 147 621 1, 165 640 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0, 192 576 1, 192 576 0
-576 64 0 512 704;64 576 1, 128 576 1, 128 213 1, 128 158 0, 139 132 1, 150 106 0, 180 88 1, 223 64 0, 295 64 1, 379 64 0, 414 97 1, 448 129 0, 448 210 1, 448 576 1, 512 576 1, 512 211 1, 512 139 0, 497 102 1, 482 64 0, 440 37 1, 385 0 0, 292 0 1, 174 0 0, 119 51 1, 64 102 0, 64 214 1, 180 612 1, 283 704 1, 364 704 1, 228 612 1, 330 612 1, 432 704 1, 502 704 1, 377 612 1
-448 64 0 448 576;320 0 1, 320 72 1, 291 40 0, 263 24 1, 222 0 0, 174 0 1, 64 0 0, 64 108 1, 64 384 1, 128 384 1, 128 131 1, 128 92 0, 140 78 1, 152 64 0, 184 64 1, 254 64 0, 320 135 1, 320 384 1, 384 384 1, 384 0 1, 109 456 1, 199 576 1, 271 576 1, 151 456 1, 241 456 1, 331 576 1, 403 576 1, 283 456 1
-576 64 -128 512 576;64 576 1, 128 576 1, 128 213 1, 128 158 0, 139 132 1, 150 106 0, 180 88 1, 223 64 0, 295 64 1, 379 64 0, 414 97 1, 448 129 0, 448 210 1, 448 576 1, 512 576 1, 512 211 1, 512 139 0, 497 102 1, 482 64 0, 440 37 1, 385 0 0, 292 0 1, 174 0 0, 119 51 1, 64 102 0, 64 214 1, 308 0 1, 354 0 1, 320 -19 0, 320 -42 1, 320 -64 0, 358 -64 1, 375 -64 0, 387 -98 1, 387 -128 1, 363 -128 0, 333 -128 1, 256 -128 0, 256 -73 1, 256 -31 0
-448 64 -128 384 384;320 0 1, 320 72 1, 291 40 0, 263 24 1, 222 0 0, 174 0 1, 64 0 0, 64 108 1, 64 384 1, 128 384 1, 128 131 1, 128 92 0, 140 78 1, 152 64 0, 184 64 1, 254 64 0, 320 135 1, 320 384 1, 384 384 1, 384 0 1, 315 0 1, 355 0 1, 320 -19 0, 320 -42 1, 320 -64 0, 356 -64 1, 372 -64 0, 384 -98 1, 384 -128 1, 361 -128 0, 332 -128 1, 256 -128 0, 256 -73 1, 256 -31 0
-704 0 0 768 704;152 0 1, 9 576 1, 85 576 1, 199 121 1, 329 576 1, 405 576 1, 530 125 1, 651 576 1, 716 576 1, 560 0 1, 482 0 1, 358 444 1, 230 0 1, 236 576 1, 326 704 1, 408 704 1, 498 576 1, 443 576 1, 367 657 1, 366 657 1, 291 576 1
-576 0 0 576 576;102 0 1, 4 384 1, 77 384 1, 150 95 1, 244 384 1, 318 384 1, 400 94 1, 486 384 1, 549 384 1, 435 0 1, 361 0 1, 275 297 1, 177 0 1, 149 512 1, 240 576 1, 321 576 1, 412 512 1, 356 512 1, 281 552 1, 280 552 1, 205 512 1
-512 -64 0 512 704;192 0 1, 192 240 1, -7 576 1, 83 576 1, 232 309 1, 395 576 1, 468 576 1, 256 242 1, 256 0 1, 115 576 1, 203 704 1, 273 704 1, 363 576 1, 307 576 1, 236 657 1, 236 657 1, 171 576 1
-384 0 -128 384 576;152 0 1, 7 384 1, 82 384 1, 193 90 1, 314 384 1, 380 384 1, 164 -128 1, 87 -128 1, 67 512 1, 157 576 1, 239 576 1, 329 512 1, 274 512 1, 198 552 1, 198 552 1, 122 512 1
-448 64 0 448 704;64 0 1, 64 64 1, 351 512 1, 64 512 1, 64 576 1, 448 576 1, 448 512 1, 142 64 1, 448 64 1, 448 0 1, 190 576 1, 283 704 1, 370 704 1, 247 576 1
-384 0 0 384 576;0 0 1, 0 64 1, 291 320 1, 64 320 1, 64 384 1, 384 384 1, 384 320 1, 145 64 1, 384 64 1, 384 0 1, 168 512 1, 259 576 1, 344 576 1, 224 512 1
-448 64 0 448 704;64 0 1, 64 64 1, 331 512 1, 64 512 1, 64 576 1, 448 576 1, 448 512 1, 131 64 1, 448 64 1, 448 0 1, 192 640 1, 192 704 1, 256 704 1, 256 640 1
-384 0 0 384 576;0 0 1, 0 64 1, 291 320 1, 64 320 1, 64 384 1, 384 384 1, 384 320 1, 145 64 1, 384 64 1, 384 0 1, 128 512 1, 128 576 1, 192 576 1, 192 512 1
-448 64 0 448 704;64 0 1, 64 64 1, 351 512 1, 64 512 1, 64 576 1, 448 576 1, 448 512 1, 142 64 1, 448 64 1, 448 0 1, 386 704 1, 293 576 1, 209 576 1, 117 704 1, 174 704 1, 251 623 1, 252 623 1, 329 704 1
-384 0 0 384 576;0 0 1, 0 64 1, 291 320 1, 64 320 1, 64 384 1, 384 384 1, 384 320 1, 145 64 1, 384 64 1, 384 0 1, 323 576 1, 233 512 1, 151 512 1, 61 576 1, 116 576 1, 192 536 1, 192 536 1, 268 576 1
-192 0 0 192 640;64 0 1, 64 352 1, 0 352 1, 0 407 1, 64 407 1, 64 456 1, 64 513 0, 91 544 1, 119 576 0, 169 576 1, 176 576 0, 192 600 1, 192 545 1, 181 512 0, 175 512 1, 128 512 0, 128 464 1, 128 0 1
-512 64 -192 512 576;64 21 1, 64 102 1, 189 64 0, 311 64 1, 448 64 0, 448 152 1, 448 197 0, 410 218 1, 381 235 0, 315 253 1, 229 278 1, 64 324 0, 64 431 1, 64 576 0, 267 576 1, 355 576 0, 448 566 1, 448 491 1, 347 512 0, 255 512 1, 128 512 0, 128 431 1, 128 399 0, 154 379 1, 180 359 0, 247 340 1, 334 316 1, 432 288 0, 472 252 1, 512 216 0, 512 157 1, 512 84 0, 454 42 1, 396 0 0, 294 0 1, 193 0 0, 214 -158 1, 214 -126 1, 226 -128 0, 234 -128 1, 256 -128 0, 256 -104 1, 256 -77 0, 233 -71 1, 233 -42 1, 273 -43 0, 292 -57 1, 320 -77 0, 320 -121 1, 320 -192 0, 253 -192 1, 234 -192 0
-384 64 -192 320 384;64 13 1, 64 77 1, 128 64 0, 183 64 1, 256 64 0, 256 116 1, 256 152 0, 204 168 1, 147 187 1, 64 214 0, 64 286 1, 64 384 0, 215 384 1, 258 384 0, 320 381 1, 320 323 1, 263 320 0, 206 320 1, 128 320 0, 128 276 1, 128 244 0, 174 230 1, 225 213 1, 320 182 0, 320 106 1, 320 57 0, 283 29 1, 245 0 0, 180 0 1, 129 0 0, 128 -158 1, 128 -126 1, 146 -128 0, 158 -128 1, 192 -128 0, 192 -104 1, 192 -77 0, 146 -71 1, 146 -42 1, 196 -43 0, 221 -57 1, 256 -77 0, 256 -121 1, 256 -192 0, 175 -192 1, 153 -192 0
-448 0 -192 448 576;192 0 1, 192 512 1, 0 512 1, 0 576 1, 448 576 1, 448 512 1, 256 512 1, 256 0 1, 173 -158 1, 173 -126 1, 196 -128 0, 212 -128 1, 256 -128 0, 256 -104 1, 256 -77 0, 192 -71 1, 192 -42 1, 251 -43 0, 279 -57 1, 320 -77 0, 320 -121 1, 320 -192 0, 227 -192 1, 201 -192 0
-192 0 -192 192 512;192 -2 1, 172 0 0, 154 0 1, 64 0 0, 64 103 1, 64 320 1, 0 320 1, 0 384 1, 64 384 1, 64 458 1, 128 465 1, 128 384 1, 192 384 1, 192 320 1, 128 320 1, 128 115 1, 128 84 0, 136 74 1, 144 64 0, 168 64 1, 182 64 0, 192 45 1, 64 -158 1, 64 -126 1, 82 -128 0, 94 -128 1, 128 -128 0, 128 -104 1, 128 -77 0, 82 -71 1, 82 -42 1, 132 -43 0, 157 -57 1, 192 -77 0, 192 -121 1, 192 -192 0, 111 -192 1, 89 -192 0
-256 64 -192 192 0;64 -158 1, 64 -126 1, 82 -128 0, 94 -128 1, 128 -128 0, 128 -104 1, 128 -77 0, 82 -71 1, 82 -42 1, 132 -43 0, 157 -57 1, 192 -77 0, 192 -121 1, 192 -192 0, 111 -192 1, 89 -192 0
-192 64 -128 128 384;64 -120 1, 64 -93 1, 87 -79 0, 87 -9 1, 87 0 1, 64 0 1, 64 64 1, 128 64 1, 128 10 1, 128 -102 0, 64 320 1, 64 384 1, 128 384 1, 128 320 1
-192 64 192 128 256;64 192 1, 64 256 1, 128 256 1, 128 192 1
-256 64 192 192 256;64 192 1, 64 256 1, 192 256 1, 192 192 1
-256 64 192 192 256;64 192 1, 64 256 1, 192 256 1, 192 192 1
-448 0 192 448 256;38 192 1, 38 256 1, 390 256 1, 390 192 1
-768 0 192 768 256;37 192 1, 37 256 1, 731 256 1, 731 192 1
-192 0 0 0 0;
-448 64 512 384 576;64 512 1, 64 576 1, 384 576 1, 384 512 1
-448 64 0 448 384;311 256 1, 310 277 0, 303 287 1, 284 320 0, 219 320 1, 173 320 0, 147 305 1, 121 290 0, 115 256 1, 384 72 1, 384 13 1, 314 0 0, 256 0 1, 168 0 0, 116 53 1, 64 107 0, 64 197 1, 64 283 0, 110 333 1, 156 384 0, 234 384 1, 323 384 0, 360 325 1, 387 281 0, 386 212 1, 386 192 1, 114 192 1, 119 153 0, 129 132 1, 162 64 0, 260 64 1, 316 64 0
-448 64 192 384 256;64 192 1, 64 256 1, 384 256 1, 384 192 1
-128 -192 -64 320 576;-165 -14 1, 243 569 1, 293 569 1, -114 -14 1
-192 64 192 128 256;64 192 1, 64 256 1, 128 256 1, 128 192 1
-384 0 0 320 640;64 0 1, 64 320 1, 0 320 1, 0 384 1, 64 384 1, 64 468 1, 64 640 0, 194 640 1, 221 640 0, 256 613 1, 256 557 1, 219 576 0, 193 576 1, 157 576 0, 142 555 1, 128 534 0, 128 482 1, 128 384 1, 320 384 1, 320 0 1, 256 0 1, 256 320 1, 128 320 1, 128 0 1, 256 512 1, 256 576 1, 320 576 1, 320 512 1
-384 0 0 320 576;64 0 1, 64 320 1, 0 320 1, 0 384 1, 64 384 1, 64 435 1, 64 576 0, 175 576 1, 256 576 1, 320 576 1, 320 0 1, 256 0 1, 256 518 1, 240 516 1, 206 512 0, 183 512 1, 148 512 0, 137 493 1, 128 477 0, 128 443 1, 128 384 1, 192 384 1, 192 320 1, 128 320 1, 128 0 1
-256 -64 192 256 576;128 229 1, 128 320 1, -25 320 1, -25 382 1, 126 576 1, 192 576 1, 192 384 1, 238 384 1, 238 320 1, 192 320 1, 192 229 1, 24 384 1, 128 384 1, 128 516 1
-192 -64 -192 128 384;-64 -145 1, -64 -87 1, -28 -64 0, 3 -64 1, 46 -64 0, 56 -47 1, 64 -32 0, 64 0 1, 64 384 1, 128 384 1, 128 0 1, 128 -128 0, 2 -128 1, -33 -128 0
-192 0 0 0 0;
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr.ttf b/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr.ttf
deleted file mode 100644
index c47fd20be..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr.ttf
+++ /dev/null
Binary files differ
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr.ttx b/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr.ttx
deleted file mode 100644
index 98eea53e4..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/luxisr.ttx
+++ /dev/null
@@ -1,22503 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="2.4">
-
- <GlyphOrder>
- <!-- The 'id' attribute is only for humans; it is ignored when parsed. -->
- <GlyphID id="0" name=".notdef"/>
- <GlyphID id="1" name=".notdef#1"/>
- <GlyphID id="2" name=".notdef#2"/>
- <GlyphID id="3" name="space"/>
- <GlyphID id="4" name="exclam"/>
- <GlyphID id="5" name="quotedbl"/>
- <GlyphID id="6" name="numbersign"/>
- <GlyphID id="7" name="dollar"/>
- <GlyphID id="8" name="percent"/>
- <GlyphID id="9" name="ampersand"/>
- <GlyphID id="10" name="quotesingle"/>
- <GlyphID id="11" name="parenleft"/>
- <GlyphID id="12" name="parenright"/>
- <GlyphID id="13" name="asterisk"/>
- <GlyphID id="14" name="plus"/>
- <GlyphID id="15" name="comma"/>
- <GlyphID id="16" name="hyphen"/>
- <GlyphID id="17" name="period"/>
- <GlyphID id="18" name="slash"/>
- <GlyphID id="19" name="zero"/>
- <GlyphID id="20" name="one"/>
- <GlyphID id="21" name="two"/>
- <GlyphID id="22" name="three"/>
- <GlyphID id="23" name="four"/>
- <GlyphID id="24" name="five"/>
- <GlyphID id="25" name="six"/>
- <GlyphID id="26" name="seven"/>
- <GlyphID id="27" name="eight"/>
- <GlyphID id="28" name="nine"/>
- <GlyphID id="29" name="colon"/>
- <GlyphID id="30" name="semicolon"/>
- <GlyphID id="31" name="less"/>
- <GlyphID id="32" name="equal"/>
- <GlyphID id="33" name="greater"/>
- <GlyphID id="34" name="question"/>
- <GlyphID id="35" name="at"/>
- <GlyphID id="36" name="A"/>
- <GlyphID id="37" name="B"/>
- <GlyphID id="38" name="C"/>
- <GlyphID id="39" name="D"/>
- <GlyphID id="40" name="E"/>
- <GlyphID id="41" name="F"/>
- <GlyphID id="42" name="G"/>
- <GlyphID id="43" name="H"/>
- <GlyphID id="44" name="I"/>
- <GlyphID id="45" name="J"/>
- <GlyphID id="46" name="K"/>
- <GlyphID id="47" name="L"/>
- <GlyphID id="48" name="M"/>
- <GlyphID id="49" name="N"/>
- <GlyphID id="50" name="O"/>
- <GlyphID id="51" name="P"/>
- <GlyphID id="52" name="Q"/>
- <GlyphID id="53" name="R"/>
- <GlyphID id="54" name="S"/>
- <GlyphID id="55" name="T"/>
- <GlyphID id="56" name="U"/>
- <GlyphID id="57" name="V"/>
- <GlyphID id="58" name="W"/>
- <GlyphID id="59" name="X"/>
- <GlyphID id="60" name="Y"/>
- <GlyphID id="61" name="Z"/>
- <GlyphID id="62" name="bracketleft"/>
- <GlyphID id="63" name="backslash"/>
- <GlyphID id="64" name="bracketright"/>
- <GlyphID id="65" name="asciicircum"/>
- <GlyphID id="66" name="underscore"/>
- <GlyphID id="67" name="grave"/>
- <GlyphID id="68" name="a"/>
- <GlyphID id="69" name="b"/>
- <GlyphID id="70" name="c"/>
- <GlyphID id="71" name="d"/>
- <GlyphID id="72" name="e"/>
- <GlyphID id="73" name="f"/>
- <GlyphID id="74" name="g"/>
- <GlyphID id="75" name="h"/>
- <GlyphID id="76" name="i"/>
- <GlyphID id="77" name="j"/>
- <GlyphID id="78" name="k"/>
- <GlyphID id="79" name="l"/>
- <GlyphID id="80" name="m"/>
- <GlyphID id="81" name="n"/>
- <GlyphID id="82" name="o"/>
- <GlyphID id="83" name="p"/>
- <GlyphID id="84" name="q"/>
- <GlyphID id="85" name="r"/>
- <GlyphID id="86" name="s"/>
- <GlyphID id="87" name="t"/>
- <GlyphID id="88" name="u"/>
- <GlyphID id="89" name="v"/>
- <GlyphID id="90" name="w"/>
- <GlyphID id="91" name="x"/>
- <GlyphID id="92" name="y"/>
- <GlyphID id="93" name="z"/>
- <GlyphID id="94" name="braceleft"/>
- <GlyphID id="95" name="bar"/>
- <GlyphID id="96" name="braceright"/>
- <GlyphID id="97" name="asciitilde"/>
- <GlyphID id="98" name="Adieresis"/>
- <GlyphID id="99" name="Aring"/>
- <GlyphID id="100" name="Ccedilla"/>
- <GlyphID id="101" name="Eacute"/>
- <GlyphID id="102" name="Ntilde"/>
- <GlyphID id="103" name="Odieresis"/>
- <GlyphID id="104" name="Udieresis"/>
- <GlyphID id="105" name="aacute"/>
- <GlyphID id="106" name="agrave"/>
- <GlyphID id="107" name="acircumflex"/>
- <GlyphID id="108" name="adieresis"/>
- <GlyphID id="109" name="atilde"/>
- <GlyphID id="110" name="aring"/>
- <GlyphID id="111" name="ccedilla"/>
- <GlyphID id="112" name="eacute"/>
- <GlyphID id="113" name="egrave"/>
- <GlyphID id="114" name="ecircumflex"/>
- <GlyphID id="115" name="edieresis"/>
- <GlyphID id="116" name="iacute"/>
- <GlyphID id="117" name="igrave"/>
- <GlyphID id="118" name="icircumflex"/>
- <GlyphID id="119" name="idieresis"/>
- <GlyphID id="120" name="ntilde"/>
- <GlyphID id="121" name="oacute"/>
- <GlyphID id="122" name="ograve"/>
- <GlyphID id="123" name="ocircumflex"/>
- <GlyphID id="124" name="odieresis"/>
- <GlyphID id="125" name="otilde"/>
- <GlyphID id="126" name="uacute"/>
- <GlyphID id="127" name="ugrave"/>
- <GlyphID id="128" name="ucircumflex"/>
- <GlyphID id="129" name="udieresis"/>
- <GlyphID id="130" name="dagger"/>
- <GlyphID id="131" name="degree"/>
- <GlyphID id="132" name="cent"/>
- <GlyphID id="133" name="sterling"/>
- <GlyphID id="134" name="section"/>
- <GlyphID id="135" name="bullet"/>
- <GlyphID id="136" name="paragraph"/>
- <GlyphID id="137" name="germandbls"/>
- <GlyphID id="138" name="registered"/>
- <GlyphID id="139" name="copyright"/>
- <GlyphID id="140" name="trademark"/>
- <GlyphID id="141" name="acute"/>
- <GlyphID id="142" name="dieresis"/>
- <GlyphID id="143" name=".notdef#3"/>
- <GlyphID id="144" name="AE"/>
- <GlyphID id="145" name="Oslash"/>
- <GlyphID id="146" name=".notdef#4"/>
- <GlyphID id="147" name="plusminus"/>
- <GlyphID id="148" name=".notdef#5"/>
- <GlyphID id="149" name=".notdef#6"/>
- <GlyphID id="150" name="yen"/>
- <GlyphID id="151" name="mu"/>
- <GlyphID id="152" name=".notdef#7"/>
- <GlyphID id="153" name=".notdef#8"/>
- <GlyphID id="154" name=".notdef#9"/>
- <GlyphID id="155" name=".notdef#10"/>
- <GlyphID id="156" name=".notdef#11"/>
- <GlyphID id="157" name="ordfeminine"/>
- <GlyphID id="158" name="ordmasculine"/>
- <GlyphID id="159" name=".notdef#12"/>
- <GlyphID id="160" name="ae"/>
- <GlyphID id="161" name="oslash"/>
- <GlyphID id="162" name="questiondown"/>
- <GlyphID id="163" name="exclamdown"/>
- <GlyphID id="164" name="logicalnot"/>
- <GlyphID id="165" name=".notdef#13"/>
- <GlyphID id="166" name="florin"/>
- <GlyphID id="167" name=".notdef#14"/>
- <GlyphID id="168" name=".notdef#15"/>
- <GlyphID id="169" name="guillemotleft"/>
- <GlyphID id="170" name="guillemotright"/>
- <GlyphID id="171" name="ellipsis"/>
- <GlyphID id="172" name=".notdef#16"/>
- <GlyphID id="173" name="Agrave"/>
- <GlyphID id="174" name="Atilde"/>
- <GlyphID id="175" name="Otilde"/>
- <GlyphID id="176" name="OE"/>
- <GlyphID id="177" name="oe"/>
- <GlyphID id="178" name="endash"/>
- <GlyphID id="179" name="emdash"/>
- <GlyphID id="180" name="quotedblleft"/>
- <GlyphID id="181" name="quotedblright"/>
- <GlyphID id="182" name="quoteleft"/>
- <GlyphID id="183" name="quoteright"/>
- <GlyphID id="184" name="divide"/>
- <GlyphID id="185" name=".notdef#17"/>
- <GlyphID id="186" name="ydieresis"/>
- <GlyphID id="187" name="Ydieresis"/>
- <GlyphID id="188" name="fraction"/>
- <GlyphID id="189" name="currency"/>
- <GlyphID id="190" name="guilsinglleft"/>
- <GlyphID id="191" name="guilsinglright"/>
- <GlyphID id="192" name="fi"/>
- <GlyphID id="193" name="fl"/>
- <GlyphID id="194" name="daggerdbl"/>
- <GlyphID id="195" name="periodcentered"/>
- <GlyphID id="196" name="quotesinglbase"/>
- <GlyphID id="197" name="quotedblbase"/>
- <GlyphID id="198" name="perthousand"/>
- <GlyphID id="199" name="Acircumflex"/>
- <GlyphID id="200" name="Ecircumflex"/>
- <GlyphID id="201" name="Aacute"/>
- <GlyphID id="202" name="Edieresis"/>
- <GlyphID id="203" name="Egrave"/>
- <GlyphID id="204" name="Iacute"/>
- <GlyphID id="205" name="Icircumflex"/>
- <GlyphID id="206" name="Idieresis"/>
- <GlyphID id="207" name="Igrave"/>
- <GlyphID id="208" name="Oacute"/>
- <GlyphID id="209" name="Ocircumflex"/>
- <GlyphID id="210" name="Euro"/>
- <GlyphID id="211" name="Ograve"/>
- <GlyphID id="212" name="Uacute"/>
- <GlyphID id="213" name="Ucircumflex"/>
- <GlyphID id="214" name="Ugrave"/>
- <GlyphID id="215" name="dotlessi"/>
- <GlyphID id="216" name="circumflex"/>
- <GlyphID id="217" name="tilde"/>
- <GlyphID id="218" name="macron"/>
- <GlyphID id="219" name="breve"/>
- <GlyphID id="220" name="dotaccent"/>
- <GlyphID id="221" name="ring"/>
- <GlyphID id="222" name="cedilla"/>
- <GlyphID id="223" name="hungarumlaut"/>
- <GlyphID id="224" name="ogonek"/>
- <GlyphID id="225" name="caron"/>
- <GlyphID id="226" name="Euro#1"/>
- <GlyphID id="227" name="nonbreakingspace"/>
- <GlyphID id="228" name="brokenbar"/>
- <GlyphID id="229" name="sfthyphen"/>
- <GlyphID id="230" name="macron#1"/>
- <GlyphID id="231" name="twosuperior"/>
- <GlyphID id="232" name="threesuperior"/>
- <GlyphID id="233" name="periodcentered#1"/>
- <GlyphID id="234" name="onesuperior"/>
- <GlyphID id="235" name="onequarter"/>
- <GlyphID id="236" name="onehalf"/>
- <GlyphID id="237" name="threequarters"/>
- <GlyphID id="238" name="Eth"/>
- <GlyphID id="239" name="multiply"/>
- <GlyphID id="240" name="Yacute"/>
- <GlyphID id="241" name="Thorn"/>
- <GlyphID id="242" name="eth"/>
- <GlyphID id="243" name="yacute"/>
- <GlyphID id="244" name="thorn"/>
- <GlyphID id="245" name="Amacron"/>
- <GlyphID id="246" name="amacron"/>
- <GlyphID id="247" name="Abreve"/>
- <GlyphID id="248" name="abreve"/>
- <GlyphID id="249" name="Aogonek"/>
- <GlyphID id="250" name="aogonek"/>
- <GlyphID id="251" name="Cacute"/>
- <GlyphID id="252" name="cacute"/>
- <GlyphID id="253" name="Ccircumflex"/>
- <GlyphID id="254" name="ccircumflex"/>
- <GlyphID id="255" name="Cdotaccent"/>
- <GlyphID id="256" name="cdotaccent"/>
- <GlyphID id="257" name="Ccaron"/>
- <GlyphID id="258" name="ccaron"/>
- <GlyphID id="259" name="Dcaron"/>
- <GlyphID id="260" name="dcaron"/>
- <GlyphID id="261" name="Dcroat"/>
- <GlyphID id="262" name="dcroat"/>
- <GlyphID id="263" name="Emacron"/>
- <GlyphID id="264" name="emacron"/>
- <GlyphID id="265" name="Ebreve"/>
- <GlyphID id="266" name="ebreve"/>
- <GlyphID id="267" name="Edotaccent"/>
- <GlyphID id="268" name="edotaccent"/>
- <GlyphID id="269" name="Eogonek"/>
- <GlyphID id="270" name="eogonek"/>
- <GlyphID id="271" name="Ecaron"/>
- <GlyphID id="272" name="ecaron"/>
- <GlyphID id="273" name="Gcircumflex"/>
- <GlyphID id="274" name="gcircumflex"/>
- <GlyphID id="275" name="Gbreve"/>
- <GlyphID id="276" name="gbreve"/>
- <GlyphID id="277" name="Gdotaccent"/>
- <GlyphID id="278" name="gdotaccent"/>
- <GlyphID id="279" name="Gcommaaccent"/>
- <GlyphID id="280" name="gcommaaccent"/>
- <GlyphID id="281" name="Hcircumflex"/>
- <GlyphID id="282" name="hcircumflex"/>
- <GlyphID id="283" name="Hbar"/>
- <GlyphID id="284" name="hbar"/>
- <GlyphID id="285" name="Itilde"/>
- <GlyphID id="286" name="itilde"/>
- <GlyphID id="287" name="Imacron"/>
- <GlyphID id="288" name="imacron"/>
- <GlyphID id="289" name="Ibreve"/>
- <GlyphID id="290" name="ibreve"/>
- <GlyphID id="291" name="Iogonek"/>
- <GlyphID id="292" name="iogonek"/>
- <GlyphID id="293" name="Idotaccent"/>
- <GlyphID id="294" name="IJ"/>
- <GlyphID id="295" name="ij"/>
- <GlyphID id="296" name="Jcircumflex"/>
- <GlyphID id="297" name="jcircumflex"/>
- <GlyphID id="298" name="Kcommaaccent"/>
- <GlyphID id="299" name="kcommaaccent"/>
- <GlyphID id="300" name="kgreenlandic"/>
- <GlyphID id="301" name="Lacute"/>
- <GlyphID id="302" name="lacute"/>
- <GlyphID id="303" name="Lcommaaccent"/>
- <GlyphID id="304" name="lcommaaccent"/>
- <GlyphID id="305" name="Lcaron"/>
- <GlyphID id="306" name="lcaron"/>
- <GlyphID id="307" name="Ldot"/>
- <GlyphID id="308" name="ldot"/>
- <GlyphID id="309" name="Lslash"/>
- <GlyphID id="310" name="lslash"/>
- <GlyphID id="311" name="Nacute"/>
- <GlyphID id="312" name="nacute"/>
- <GlyphID id="313" name="Ncommaaccent"/>
- <GlyphID id="314" name="ncommaaccent"/>
- <GlyphID id="315" name="Ncaron"/>
- <GlyphID id="316" name="ncaron"/>
- <GlyphID id="317" name="napostrophe"/>
- <GlyphID id="318" name="Eng"/>
- <GlyphID id="319" name="eng"/>
- <GlyphID id="320" name="Omacron"/>
- <GlyphID id="321" name="omacron"/>
- <GlyphID id="322" name="Obreve"/>
- <GlyphID id="323" name="obreve"/>
- <GlyphID id="324" name="Ohungarumlaut"/>
- <GlyphID id="325" name="ohungarumlaut"/>
- <GlyphID id="326" name="Racute"/>
- <GlyphID id="327" name="racute"/>
- <GlyphID id="328" name="Rcommaaccent"/>
- <GlyphID id="329" name="rcommaaccent"/>
- <GlyphID id="330" name="Rcaron"/>
- <GlyphID id="331" name="rcaron"/>
- <GlyphID id="332" name="Sacute"/>
- <GlyphID id="333" name="sacute"/>
- <GlyphID id="334" name="Scircumflex"/>
- <GlyphID id="335" name="scircumflex"/>
- <GlyphID id="336" name="Scedilla"/>
- <GlyphID id="337" name="scedilla"/>
- <GlyphID id="338" name="Scaron"/>
- <GlyphID id="339" name="scaron"/>
- <GlyphID id="340" name="Tcommaaccent"/>
- <GlyphID id="341" name="tcommaaccent"/>
- <GlyphID id="342" name="Tcaron"/>
- <GlyphID id="343" name="tcaron"/>
- <GlyphID id="344" name="Tbar"/>
- <GlyphID id="345" name="tbar"/>
- <GlyphID id="346" name="Utilde"/>
- <GlyphID id="347" name="utilde"/>
- <GlyphID id="348" name="Umacron"/>
- <GlyphID id="349" name="umacron"/>
- <GlyphID id="350" name="Ubreve"/>
- <GlyphID id="351" name="ubreve"/>
- <GlyphID id="352" name="Uring"/>
- <GlyphID id="353" name="uring"/>
- <GlyphID id="354" name="Uhungarumlaut"/>
- <GlyphID id="355" name="uhungarumlaut"/>
- <GlyphID id="356" name="Uogonek"/>
- <GlyphID id="357" name="uogonek"/>
- <GlyphID id="358" name="Wcircumflex"/>
- <GlyphID id="359" name="wcircumflex"/>
- <GlyphID id="360" name="Ycircumflex"/>
- <GlyphID id="361" name="ycircumflex"/>
- <GlyphID id="362" name="Zacute"/>
- <GlyphID id="363" name="zacute"/>
- <GlyphID id="364" name="Zdotaccent"/>
- <GlyphID id="365" name="zdotaccent"/>
- <GlyphID id="366" name="Zcaron"/>
- <GlyphID id="367" name="zcaron"/>
- <GlyphID id="368" name="longs"/>
- <GlyphID id="369" name="Scommaaccent"/>
- <GlyphID id="370" name="scommaaccent"/>
- <GlyphID id="371" name="Tcommabelow"/>
- <GlyphID id="372" name="tcommabelow"/>
- <GlyphID id="373" name="Unterkomma"/>
- <GlyphID id="374" name="semicolon#1"/>
- <GlyphID id="375" name="anoteleia"/>
- <GlyphID id="376" name="hyphen#1"/>
- <GlyphID id="377" name="nbhyphen"/>
- <GlyphID id="378" name="figuredash"/>
- <GlyphID id="379" name="afii00208"/>
- <GlyphID id="380" name="quotereversed"/>
- <GlyphID id="381" name="radicalex"/>
- <GlyphID id="382" name="estimated"/>
- <GlyphID id="383" name="minus"/>
- <GlyphID id="384" name="fraction#1"/>
- <GlyphID id="385" name="dotmath"/>
- <GlyphID id="386" name="fi#1"/>
- <GlyphID id="387" name="fl#1"/>
- <GlyphID id="388" name="foursuperiour"/>
- <GlyphID id="389" name="dotlessj"/>
- <GlyphID id="390" name=".notdef#18"/>
- </GlyphOrder>
-
- <head>
- <!-- Most of this table will be recalculated by the compiler -->
- <tableVersion value="1.0"/>
- <fontRevision value="1.19999694824"/>
- <checkSumAdjustment value="0x78bacbf6"/>
- <magicNumber value="0x5f0f3cf5"/>
- <flags value="00000000 00001111"/>
- <unitsPerEm value="2048"/>
- <created value="Fri Oct 12 14:06:12 2001"/>
- <modified value="Fri Oct 12 11:04:28 2001"/>
- <xMin value="-441"/>
- <yMin value="-432"/>
- <xMax value="2024"/>
- <yMax value="2033"/>
- <macStyle value="00000000 00000000"/>
- <lowestRecPPEM value="12"/>
- <fontDirectionHint value="2"/>
- <indexToLocFormat value="0"/>
- <glyphDataFormat value="0"/>
- </head>
-
- <hhea>
- <tableVersion value="1.0"/>
- <ascent value="2033"/>
- <descent value="-432"/>
- <lineGap value="0"/>
- <advanceWidthMax value="2079"/>
- <minLeftSideBearing value="-441"/>
- <minRightSideBearing value="-440"/>
- <xMaxExtent value="2024"/>
- <caretSlopeRise value="1"/>
- <caretSlopeRun value="0"/>
- <caretOffset value="0"/>
- <reserved0 value="0"/>
- <reserved1 value="0"/>
- <reserved2 value="0"/>
- <reserved3 value="0"/>
- <metricDataFormat value="0"/>
- <numberOfHMetrics value="391"/>
- </hhea>
-
- <maxp>
- <!-- Most of this table will be recalculated by the compiler -->
- <tableVersion value="0x10000"/>
- <numGlyphs value="391"/>
- <maxPoints value="82"/>
- <maxContours value="7"/>
- <maxCompositePoints value="75"/>
- <maxCompositeContours value="4"/>
- <maxZones value="2"/>
- <maxTwilightPoints value="4"/>
- <maxStorage value="0"/>
- <maxFunctionDefs value="15"/>
- <maxInstructionDefs value="0"/>
- <maxStackElements value="2048"/>
- <maxSizeOfInstructions value="183"/>
- <maxComponentElements value="2"/>
- <maxComponentDepth value="1"/>
- </maxp>
-
- <OS_2>
- <version value="2"/>
- <xAvgCharWidth value="904"/>
- <usWeightClass value="400"/>
- <usWidthClass value="5"/>
- <fsType value="00000000 00000000"/>
- <ySubscriptXSize value="1434"/>
- <ySubscriptYSize value="1331"/>
- <ySubscriptXOffset value="0"/>
- <ySubscriptYOffset value="283"/>
- <ySuperscriptXSize value="1434"/>
- <ySuperscriptYSize value="1331"/>
- <ySuperscriptXOffset value="0"/>
- <ySuperscriptYOffset value="977"/>
- <yStrikeoutSize value="0"/>
- <yStrikeoutPosition value="0"/>
- <sFamilyClass value="2048"/>
- <panose>
- <bFamilyType value="2"/>
- <bSerifStyle value="11"/>
- <bWeight value="6"/>
- <bProportion value="0"/>
- <bContrast value="0"/>
- <bStrokeVariation value="0"/>
- <bArmStyle value="0"/>
- <bLetterForm value="0"/>
- <bMidline value="0"/>
- <bXHeight value="0"/>
- </panose>
- <ulUnicodeRange1 value="00000000 00000000 00000000 00000111"/>
- <ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/>
- <ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/>
- <ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/>
- <achVendID value="B&amp;H "/>
- <fsSelection value="00000000 01000000"/>
- <fsFirstCharIndex value="32"/>
- <fsLastCharIndex value="64258"/>
- <sTypoAscender value="1604"/>
- <sTypoDescender value="-420"/>
- <sTypoLineGap value="167"/>
- <usWinAscent value="1935"/>
- <usWinDescent value="432"/>
- <ulCodePageRange1 value="00000000 00000000 00000000 10010011"/>
- <ulCodePageRange2 value="00000000 00000000 00000000 00000000"/>
- <sxHeight value="0"/>
- <sCapHeight value="0"/>
- <usDefaultChar value="0"/>
- <usBreakChar value="0"/>
- <usMaxContex value="0"/>
- </OS_2>
-
- <hmtx>
- <mtx name=".notdef" width="569" lsb="57"/>
- <mtx name=".notdef#1" width="0" lsb="0"/>
- <mtx name=".notdef#10" width="569" lsb="0"/>
- <mtx name=".notdef#11" width="569" lsb="0"/>
- <mtx name=".notdef#12" width="569" lsb="0"/>
- <mtx name=".notdef#13" width="569" lsb="0"/>
- <mtx name=".notdef#14" width="569" lsb="0"/>
- <mtx name=".notdef#15" width="569" lsb="0"/>
- <mtx name=".notdef#16" width="1139" lsb="0"/>
- <mtx name=".notdef#17" width="569" lsb="0"/>
- <mtx name=".notdef#18" width="569" lsb="0"/>
- <mtx name=".notdef#2" width="569" lsb="0"/>
- <mtx name=".notdef#3" width="569" lsb="0"/>
- <mtx name=".notdef#4" width="569" lsb="0"/>
- <mtx name=".notdef#5" width="569" lsb="0"/>
- <mtx name=".notdef#6" width="569" lsb="0"/>
- <mtx name=".notdef#7" width="569" lsb="0"/>
- <mtx name=".notdef#8" width="569" lsb="0"/>
- <mtx name=".notdef#9" width="569" lsb="0"/>
- <mtx name="A" width="1366" lsb="19"/>
- <mtx name="AE" width="2048" lsb="19"/>
- <mtx name="Aacute" width="1366" lsb="19"/>
- <mtx name="Abreve" width="1371" lsb="21"/>
- <mtx name="Acircumflex" width="1366" lsb="19"/>
- <mtx name="Adieresis" width="1366" lsb="19"/>
- <mtx name="Agrave" width="1366" lsb="19"/>
- <mtx name="Amacron" width="1371" lsb="21"/>
- <mtx name="Aogonek" width="1366" lsb="19"/>
- <mtx name="Aring" width="1366" lsb="19"/>
- <mtx name="Atilde" width="1366" lsb="19"/>
- <mtx name="B" width="1366" lsb="165"/>
- <mtx name="C" width="1479" lsb="116"/>
- <mtx name="Cacute" width="1479" lsb="116"/>
- <mtx name="Ccaron" width="1479" lsb="116"/>
- <mtx name="Ccedilla" width="1479" lsb="116"/>
- <mtx name="Ccircumflex" width="1479" lsb="116"/>
- <mtx name="Cdotaccent" width="1479" lsb="116"/>
- <mtx name="D" width="1479" lsb="165"/>
- <mtx name="Dcaron" width="1479" lsb="165"/>
- <mtx name="Dcroat" width="1479" lsb="5"/>
- <mtx name="E" width="1366" lsb="191"/>
- <mtx name="Eacute" width="1366" lsb="191"/>
- <mtx name="Ebreve" width="1366" lsb="191"/>
- <mtx name="Ecaron" width="1366" lsb="191"/>
- <mtx name="Ecircumflex" width="1366" lsb="191"/>
- <mtx name="Edieresis" width="1366" lsb="191"/>
- <mtx name="Edotaccent" width="1366" lsb="191"/>
- <mtx name="Egrave" width="1366" lsb="191"/>
- <mtx name="Emacron" width="1366" lsb="191"/>
- <mtx name="Eng" width="1479" lsb="165"/>
- <mtx name="Eogonek" width="1366" lsb="191"/>
- <mtx name="Eth" width="1479" lsb="5"/>
- <mtx name="Euro" width="1139" lsb="0"/>
- <mtx name="Euro#1" width="1139" lsb="0"/>
- <mtx name="F" width="1251" lsb="191"/>
- <mtx name="G" width="1593" lsb="93"/>
- <mtx name="Gbreve" width="1593" lsb="93"/>
- <mtx name="Gcircumflex" width="1593" lsb="93"/>
- <mtx name="Gcommaaccent" width="1593" lsb="93"/>
- <mtx name="Gdotaccent" width="1593" lsb="93"/>
- <mtx name="H" width="1479" lsb="165"/>
- <mtx name="Hbar" width="1479" lsb="17"/>
- <mtx name="Hcircumflex" width="1479" lsb="165"/>
- <mtx name="I" width="569" lsb="180"/>
- <mtx name="IJ" width="1505" lsb="180"/>
- <mtx name="Iacute" width="569" lsb="137"/>
- <mtx name="Ibreve" width="569" lsb="-48"/>
- <mtx name="Icircumflex" width="569" lsb="-65"/>
- <mtx name="Idieresis" width="569" lsb="1"/>
- <mtx name="Idotaccent" width="569" lsb="180"/>
- <mtx name="Igrave" width="569" lsb="-36"/>
- <mtx name="Imacron" width="569" lsb="-36"/>
- <mtx name="Iogonek" width="569" lsb="120"/>
- <mtx name="Itilde" width="569" lsb="-48"/>
- <mtx name="J" width="1024" lsb="49"/>
- <mtx name="Jcircumflex" width="1024" lsb="49"/>
- <mtx name="K" width="1366" lsb="191"/>
- <mtx name="Kcommaaccent" width="1366" lsb="191"/>
- <mtx name="L" width="1139" lsb="165"/>
- <mtx name="Lacute" width="1139" lsb="165"/>
- <mtx name="Lcaron" width="1139" lsb="165"/>
- <mtx name="Lcommaaccent" width="1139" lsb="165"/>
- <mtx name="Ldot" width="1139" lsb="165"/>
- <mtx name="Lslash" width="1139" lsb="17"/>
- <mtx name="M" width="1706" lsb="165"/>
- <mtx name="N" width="1479" lsb="165"/>
- <mtx name="Nacute" width="1479" lsb="165"/>
- <mtx name="Ncaron" width="1479" lsb="165"/>
- <mtx name="Ncommaaccent" width="1479" lsb="165"/>
- <mtx name="Ntilde" width="1479" lsb="165"/>
- <mtx name="O" width="1593" lsb="93"/>
- <mtx name="OE" width="2048" lsb="93"/>
- <mtx name="Oacute" width="1593" lsb="92"/>
- <mtx name="Obreve" width="1593" lsb="93"/>
- <mtx name="Ocircumflex" width="1593" lsb="92"/>
- <mtx name="Odieresis" width="1593" lsb="92"/>
- <mtx name="Ograve" width="1593" lsb="92"/>
- <mtx name="Ohungarumlaut" width="1593" lsb="93"/>
- <mtx name="Omacron" width="1593" lsb="93"/>
- <mtx name="Oslash" width="1593" lsb="93"/>
- <mtx name="Otilde" width="1593" lsb="92"/>
- <mtx name="P" width="1366" lsb="167"/>
- <mtx name="Q" width="1593" lsb="93"/>
- <mtx name="R" width="1479" lsb="165"/>
- <mtx name="Racute" width="1479" lsb="165"/>
- <mtx name="Rcaron" width="1479" lsb="165"/>
- <mtx name="Rcommaaccent" width="1479" lsb="165"/>
- <mtx name="S" width="1366" lsb="120"/>
- <mtx name="Sacute" width="1366" lsb="120"/>
- <mtx name="Scaron" width="1366" lsb="120"/>
- <mtx name="Scedilla" width="1366" lsb="120"/>
- <mtx name="Scircumflex" width="1366" lsb="120"/>
- <mtx name="Scommaaccent" width="1366" lsb="120"/>
- <mtx name="T" width="1251" lsb="20"/>
- <mtx name="Tbar" width="1251" lsb="20"/>
- <mtx name="Tcaron" width="1251" lsb="20"/>
- <mtx name="Tcommaaccent" width="1251" lsb="20"/>
- <mtx name="Tcommabelow" width="1251" lsb="20"/>
- <mtx name="Thorn" width="1366" lsb="167"/>
- <mtx name="U" width="1479" lsb="166"/>
- <mtx name="Uacute" width="1479" lsb="166"/>
- <mtx name="Ubreve" width="1479" lsb="166"/>
- <mtx name="Ucircumflex" width="1479" lsb="166"/>
- <mtx name="Udieresis" width="1479" lsb="166"/>
- <mtx name="Ugrave" width="1479" lsb="166"/>
- <mtx name="Uhungarumlaut" width="1479" lsb="166"/>
- <mtx name="Umacron" width="1479" lsb="166"/>
- <mtx name="Unterkomma" width="682" lsb="170"/>
- <mtx name="Uogonek" width="1479" lsb="166"/>
- <mtx name="Uring" width="1479" lsb="166"/>
- <mtx name="Utilde" width="1479" lsb="166"/>
- <mtx name="V" width="1366" lsb="36"/>
- <mtx name="W" width="1933" lsb="25"/>
- <mtx name="Wcircumflex" width="1933" lsb="25"/>
- <mtx name="X" width="1366" lsb="28"/>
- <mtx name="Y" width="1366" lsb="30"/>
- <mtx name="Yacute" width="1366" lsb="30"/>
- <mtx name="Ycircumflex" width="1366" lsb="30"/>
- <mtx name="Ydieresis" width="1366" lsb="30"/>
- <mtx name="Z" width="1251" lsb="101"/>
- <mtx name="Zacute" width="1251" lsb="101"/>
- <mtx name="Zcaron" width="1251" lsb="101"/>
- <mtx name="Zdotaccent" width="1251" lsb="101"/>
- <mtx name="a" width="1139" lsb="95"/>
- <mtx name="aacute" width="1139" lsb="95"/>
- <mtx name="abreve" width="1153" lsb="105"/>
- <mtx name="acircumflex" width="1139" lsb="95"/>
- <mtx name="acute" width="682" lsb="107"/>
- <mtx name="adieresis" width="1139" lsb="95"/>
- <mtx name="ae" width="1821" lsb="95"/>
- <mtx name="afii00208" width="2048" lsb="99"/>
- <mtx name="agrave" width="1139" lsb="95"/>
- <mtx name="amacron" width="1153" lsb="105"/>
- <mtx name="ampersand" width="1366" lsb="56"/>
- <mtx name="anoteleia" width="569" lsb="161"/>
- <mtx name="aogonek" width="1139" lsb="95"/>
- <mtx name="aring" width="1139" lsb="95"/>
- <mtx name="asciicircum" width="960" lsb="36"/>
- <mtx name="asciitilde" width="1196" lsb="104"/>
- <mtx name="asterisk" width="797" lsb="39"/>
- <mtx name="at" width="2079" lsb="253"/>
- <mtx name="atilde" width="1139" lsb="95"/>
- <mtx name="b" width="1139" lsb="154"/>
- <mtx name="backslash" width="569" lsb="-59"/>
- <mtx name="bar" width="532" lsb="192"/>
- <mtx name="braceleft" width="684" lsb="25"/>
- <mtx name="braceright" width="684" lsb="116"/>
- <mtx name="bracketleft" width="569" lsb="149"/>
- <mtx name="bracketright" width="569" lsb="26"/>
- <mtx name="breve" width="682" lsb="8"/>
- <mtx name="brokenbar" width="532" lsb="192"/>
- <mtx name="bullet" width="717" lsb="81"/>
- <mtx name="c" width="1024" lsb="86"/>
- <mtx name="cacute" width="1024" lsb="86"/>
- <mtx name="caron" width="682" lsb="-9"/>
- <mtx name="ccaron" width="1024" lsb="86"/>
- <mtx name="ccedilla" width="1024" lsb="86"/>
- <mtx name="ccircumflex" width="1024" lsb="86"/>
- <mtx name="cdotaccent" width="1024" lsb="86"/>
- <mtx name="cedilla" width="682" lsb="168"/>
- <mtx name="cent" width="1139" lsb="173"/>
- <mtx name="circumflex" width="682" lsb="-9"/>
- <mtx name="colon" width="569" lsb="186"/>
- <mtx name="comma" width="569" lsb="161"/>
- <mtx name="copyright" width="1509" lsb="15"/>
- <mtx name="currency" width="1139" lsb="122"/>
- <mtx name="d" width="1139" lsb="86"/>
- <mtx name="dagger" width="1139" lsb="150"/>
- <mtx name="daggerdbl" width="1139" lsb="150"/>
- <mtx name="dcaron" width="1259" lsb="86"/>
- <mtx name="dcroat" width="1139" lsb="86"/>
- <mtx name="degree" width="819" lsb="114"/>
- <mtx name="dieresis" width="682" lsb="57"/>
- <mtx name="divide" width="1196" lsb="104"/>
- <mtx name="dollar" width="1139" lsb="103"/>
- <mtx name="dotaccent" width="682" lsb="242"/>
- <mtx name="dotlessi" width="455" lsb="129"/>
- <mtx name="dotlessj" width="455" lsb="-155"/>
- <mtx name="dotmath" width="569" lsb="161"/>
- <mtx name="e" width="1139" lsb="86"/>
- <mtx name="eacute" width="1139" lsb="86"/>
- <mtx name="ebreve" width="1139" lsb="86"/>
- <mtx name="ecaron" width="1139" lsb="86"/>
- <mtx name="ecircumflex" width="1139" lsb="86"/>
- <mtx name="edieresis" width="1139" lsb="86"/>
- <mtx name="edotaccent" width="1139" lsb="86"/>
- <mtx name="egrave" width="1139" lsb="86"/>
- <mtx name="eight" width="1139" lsb="99"/>
- <mtx name="ellipsis" width="2048" lsb="247"/>
- <mtx name="emacron" width="1139" lsb="86"/>
- <mtx name="emdash" width="2048" lsb="99"/>
- <mtx name="endash" width="1139" lsb="101"/>
- <mtx name="eng" width="1139" lsb="154"/>
- <mtx name="eogonek" width="1139" lsb="86"/>
- <mtx name="equal" width="1196" lsb="104"/>
- <mtx name="estimated" width="1139" lsb="86"/>
- <mtx name="eth" width="1139" lsb="86"/>
- <mtx name="exclam" width="569" lsb="186"/>
- <mtx name="exclamdown" width="682" lsb="242"/>
- <mtx name="f" width="569" lsb="31"/>
- <mtx name="fi" width="1024" lsb="31"/>
- <mtx name="fi#1" width="1024" lsb="31"/>
- <mtx name="figuredash" width="1139" lsb="101"/>
- <mtx name="five" width="1139" lsb="163"/>
- <mtx name="fl" width="1024" lsb="31"/>
- <mtx name="fl#1" width="1024" lsb="31"/>
- <mtx name="florin" width="1139" lsb="49"/>
- <mtx name="four" width="1139" lsb="31"/>
- <mtx name="foursuperiour" width="682" lsb="3"/>
- <mtx name="fraction" width="342" lsb="-441"/>
- <mtx name="fraction#1" width="342" lsb="-441"/>
- <mtx name="g" width="1139" lsb="93"/>
- <mtx name="gbreve" width="1139" lsb="93"/>
- <mtx name="gcircumflex" width="1139" lsb="93"/>
- <mtx name="gcommaaccent" width="1139" lsb="93"/>
- <mtx name="gdotaccent" width="1139" lsb="93"/>
- <mtx name="germandbls" width="1251" lsb="129"/>
- <mtx name="grave" width="682" lsb="106"/>
- <mtx name="greater" width="1196" lsb="104"/>
- <mtx name="guillemotleft" width="1139" lsb="115"/>
- <mtx name="guillemotright" width="1139" lsb="136"/>
- <mtx name="guilsinglleft" width="682" lsb="74"/>
- <mtx name="guilsinglright" width="682" lsb="114"/>
- <mtx name="h" width="1139" lsb="154"/>
- <mtx name="hbar" width="1139" lsb="6"/>
- <mtx name="hcircumflex" width="1139" lsb="154"/>
- <mtx name="hungarumlaut" width="682" lsb="-51"/>
- <mtx name="hyphen" width="682" lsb="88"/>
- <mtx name="hyphen#1" width="682" lsb="88"/>
- <mtx name="i" width="455" lsb="129"/>
- <mtx name="iacute" width="455" lsb="79"/>
- <mtx name="ibreve" width="455" lsb="-106"/>
- <mtx name="icircumflex" width="455" lsb="-123"/>
- <mtx name="idieresis" width="455" lsb="-56"/>
- <mtx name="igrave" width="455" lsb="-94"/>
- <mtx name="ij" width="909" lsb="129"/>
- <mtx name="imacron" width="455" lsb="-94"/>
- <mtx name="iogonek" width="455" lsb="61"/>
- <mtx name="itilde" width="455" lsb="-106"/>
- <mtx name="j" width="455" lsb="-155"/>
- <mtx name="jcircumflex" width="455" lsb="-155"/>
- <mtx name="k" width="1024" lsb="154"/>
- <mtx name="kcommaaccent" width="1024" lsb="154"/>
- <mtx name="kgreenlandic" width="1024" lsb="154"/>
- <mtx name="l" width="455" lsb="129"/>
- <mtx name="lacute" width="455" lsb="79"/>
- <mtx name="lcaron" width="597" lsb="129"/>
- <mtx name="lcommaaccent" width="455" lsb="79"/>
- <mtx name="ldot" width="684" lsb="129"/>
- <mtx name="less" width="1196" lsb="104"/>
- <mtx name="logicalnot" width="1196" lsb="86"/>
- <mtx name="longs" width="455" lsb="8"/>
- <mtx name="lslash" width="455" lsb="-7"/>
- <mtx name="m" width="1706" lsb="154"/>
- <mtx name="macron" width="682" lsb="20"/>
- <mtx name="macron#1" width="1139" lsb="99"/>
- <mtx name="minus" width="1196" lsb="104"/>
- <mtx name="mu" width="1139" lsb="142"/>
- <mtx name="multiply" width="1196" lsb="118"/>
- <mtx name="n" width="1139" lsb="154"/>
- <mtx name="nacute" width="1139" lsb="154"/>
- <mtx name="napostrophe" width="1237" lsb="0"/>
- <mtx name="nbhyphen" width="682" lsb="88"/>
- <mtx name="ncaron" width="1139" lsb="154"/>
- <mtx name="ncommaaccent" width="1139" lsb="154"/>
- <mtx name="nine" width="1139" lsb="84"/>
- <mtx name="nonbreakingspace" width="569" lsb="0"/>
- <mtx name="ntilde" width="1139" lsb="154"/>
- <mtx name="numbersign" width="1139" lsb="25"/>
- <mtx name="o" width="1139" lsb="86"/>
- <mtx name="oacute" width="1139" lsb="86"/>
- <mtx name="obreve" width="1139" lsb="86"/>
- <mtx name="ocircumflex" width="1139" lsb="86"/>
- <mtx name="odieresis" width="1139" lsb="86"/>
- <mtx name="oe" width="1933" lsb="86"/>
- <mtx name="ogonek" width="682" lsb="170"/>
- <mtx name="ograve" width="1139" lsb="86"/>
- <mtx name="ohungarumlaut" width="1139" lsb="86"/>
- <mtx name="omacron" width="1139" lsb="86"/>
- <mtx name="one" width="1139" lsb="230"/>
- <mtx name="onehalf" width="1708" lsb="116"/>
- <mtx name="onequarter" width="1708" lsb="116"/>
- <mtx name="onesuperior" width="682" lsb="123"/>
- <mtx name="ordfeminine" width="758" lsb="86"/>
- <mtx name="ordmasculine" width="748" lsb="74"/>
- <mtx name="oslash" width="1251" lsb="143"/>
- <mtx name="otilde" width="1139" lsb="86"/>
- <mtx name="p" width="1139" lsb="154"/>
- <mtx name="paragraph" width="1100" lsb="88"/>
- <mtx name="parenleft" width="682" lsb="131"/>
- <mtx name="parenright" width="682" lsb="82"/>
- <mtx name="percent" width="1821" lsb="112"/>
- <mtx name="period" width="569" lsb="161"/>
- <mtx name="periodcentered" width="569" lsb="161"/>
- <mtx name="periodcentered#1" width="569" lsb="161"/>
- <mtx name="perthousand" width="2048" lsb="25"/>
- <mtx name="plus" width="1196" lsb="104"/>
- <mtx name="plusminus" width="1196" lsb="104"/>
- <mtx name="q" width="1139" lsb="86"/>
- <mtx name="question" width="1139" lsb="138"/>
- <mtx name="questiondown" width="1251" lsb="185"/>
- <mtx name="quotedbl" width="727" lsb="92"/>
- <mtx name="quotedblbase" width="682" lsb="70"/>
- <mtx name="quotedblleft" width="682" lsb="57"/>
- <mtx name="quotedblright" width="682" lsb="82"/>
- <mtx name="quoteleft" width="455" lsb="92"/>
- <mtx name="quotereversed" width="569" lsb="0"/>
- <mtx name="quoteright" width="455" lsb="116"/>
- <mtx name="quotesinglbase" width="455" lsb="104"/>
- <mtx name="quotesingle" width="391" lsb="72"/>
- <mtx name="r" width="682" lsb="154"/>
- <mtx name="racute" width="682" lsb="154"/>
- <mtx name="radicalex" width="1139" lsb="99"/>
- <mtx name="rcaron" width="682" lsb="2"/>
- <mtx name="rcommaaccent" width="682" lsb="154"/>
- <mtx name="registered" width="1509" lsb="15"/>
- <mtx name="ring" width="682" lsb="114"/>
- <mtx name="s" width="1024" lsb="116"/>
- <mtx name="sacute" width="1024" lsb="116"/>
- <mtx name="scaron" width="1024" lsb="116"/>
- <mtx name="scedilla" width="1024" lsb="116"/>
- <mtx name="scircumflex" width="1024" lsb="116"/>
- <mtx name="scommaaccent" width="1024" lsb="116"/>
- <mtx name="section" width="1139" lsb="129"/>
- <mtx name="semicolon" width="569" lsb="186"/>
- <mtx name="semicolon#1" width="569" lsb="186"/>
- <mtx name="seven" width="1139" lsb="136"/>
- <mtx name="sfthyphen" width="682" lsb="88"/>
- <mtx name="six" width="1139" lsb="84"/>
- <mtx name="slash" width="569" lsb="-59"/>
- <mtx name="space" width="569" lsb="0"/>
- <mtx name="sterling" width="1139" lsb="121"/>
- <mtx name="t" width="569" lsb="29"/>
- <mtx name="tbar" width="569" lsb="29"/>
- <mtx name="tcaron" width="768" lsb="29"/>
- <mtx name="tcommaaccent" width="569" lsb="29"/>
- <mtx name="tcommabelow" width="569" lsb="29"/>
- <mtx name="thorn" width="1139" lsb="154"/>
- <mtx name="three" width="1139" lsb="153"/>
- <mtx name="threequarters" width="1708" lsb="111"/>
- <mtx name="threesuperior" width="682" lsb="74"/>
- <mtx name="tilde" width="682" lsb="8"/>
- <mtx name="trademark" width="2048" lsb="222"/>
- <mtx name="two" width="1139" lsb="102"/>
- <mtx name="twosuperior" width="682" lsb="74"/>
- <mtx name="u" width="1139" lsb="142"/>
- <mtx name="uacute" width="1139" lsb="142"/>
- <mtx name="ubreve" width="1139" lsb="142"/>
- <mtx name="ucircumflex" width="1139" lsb="142"/>
- <mtx name="udieresis" width="1139" lsb="142"/>
- <mtx name="ugrave" width="1139" lsb="142"/>
- <mtx name="uhungarumlaut" width="1139" lsb="142"/>
- <mtx name="umacron" width="1139" lsb="142"/>
- <mtx name="underscore" width="1139" lsb="0"/>
- <mtx name="uogonek" width="1139" lsb="142"/>
- <mtx name="uring" width="1139" lsb="142"/>
- <mtx name="utilde" width="1139" lsb="142"/>
- <mtx name="v" width="1024" lsb="19"/>
- <mtx name="w" width="1479" lsb="11"/>
- <mtx name="wcircumflex" width="1479" lsb="11"/>
- <mtx name="x" width="1024" lsb="28"/>
- <mtx name="y" width="1024" lsb="19"/>
- <mtx name="yacute" width="1024" lsb="19"/>
- <mtx name="ycircumflex" width="1024" lsb="19"/>
- <mtx name="ydieresis" width="1024" lsb="19"/>
- <mtx name="yen" width="1139" lsb="25"/>
- <mtx name="z" width="1024" lsb="74"/>
- <mtx name="zacute" width="1024" lsb="74"/>
- <mtx name="zcaron" width="1024" lsb="74"/>
- <mtx name="zdotaccent" width="1024" lsb="74"/>
- <mtx name="zero" width="1139" lsb="80"/>
- </hmtx>
-
- <cmap>
- <tableVersion version="0"/>
- <cmap_format_0 platformID="1" platEncID="0" language="0">
- <map code="0x0" name=".notdef#1"/>
- <map code="0x1" name=".notdef"/>
- <map code="0x2" name=".notdef"/>
- <map code="0x3" name=".notdef"/>
- <map code="0x4" name=".notdef"/>
- <map code="0x5" name=".notdef"/>
- <map code="0x6" name=".notdef"/>
- <map code="0x7" name=".notdef"/>
- <map code="0x8" name=".notdef#1"/>
- <map code="0x9" name="space"/>
- <map code="0xa" name=".notdef"/>
- <map code="0xb" name=".notdef"/>
- <map code="0xc" name=".notdef"/>
- <map code="0xd" name=".notdef#2"/>
- <map code="0xe" name=".notdef"/>
- <map code="0xf" name=".notdef"/>
- <map code="0x10" name=".notdef"/>
- <map code="0x11" name=".notdef"/>
- <map code="0x12" name=".notdef"/>
- <map code="0x13" name=".notdef"/>
- <map code="0x14" name=".notdef"/>
- <map code="0x15" name=".notdef"/>
- <map code="0x16" name=".notdef"/>
- <map code="0x17" name=".notdef"/>
- <map code="0x18" name=".notdef"/>
- <map code="0x19" name=".notdef"/>
- <map code="0x1a" name=".notdef"/>
- <map code="0x1b" name=".notdef"/>
- <map code="0x1c" name=".notdef"/>
- <map code="0x1d" name=".notdef#1"/>
- <map code="0x1e" name=".notdef"/>
- <map code="0x1f" name=".notdef"/>
- <map code="0x20" name="space"/>
- <map code="0x21" name="exclam"/>
- <map code="0x22" name="quotedbl"/>
- <map code="0x23" name="numbersign"/>
- <map code="0x24" name="dollar"/>
- <map code="0x25" name="percent"/>
- <map code="0x26" name="ampersand"/>
- <map code="0x27" name="quotesingle"/>
- <map code="0x28" name="parenleft"/>
- <map code="0x29" name="parenright"/>
- <map code="0x2a" name="asterisk"/>
- <map code="0x2b" name="plus"/>
- <map code="0x2c" name="comma"/>
- <map code="0x2d" name="hyphen"/>
- <map code="0x2e" name="period"/>
- <map code="0x2f" name="slash"/>
- <map code="0x30" name="zero"/>
- <map code="0x31" name="one"/>
- <map code="0x32" name="two"/>
- <map code="0x33" name="three"/>
- <map code="0x34" name="four"/>
- <map code="0x35" name="five"/>
- <map code="0x36" name="six"/>
- <map code="0x37" name="seven"/>
- <map code="0x38" name="eight"/>
- <map code="0x39" name="nine"/>
- <map code="0x3a" name="colon"/>
- <map code="0x3b" name="semicolon"/>
- <map code="0x3c" name="less"/>
- <map code="0x3d" name="equal"/>
- <map code="0x3e" name="greater"/>
- <map code="0x3f" name="question"/>
- <map code="0x40" name="at"/>
- <map code="0x41" name="A"/>
- <map code="0x42" name="B"/>
- <map code="0x43" name="C"/>
- <map code="0x44" name="D"/>
- <map code="0x45" name="E"/>
- <map code="0x46" name="F"/>
- <map code="0x47" name="G"/>
- <map code="0x48" name="H"/>
- <map code="0x49" name="I"/>
- <map code="0x4a" name="J"/>
- <map code="0x4b" name="K"/>
- <map code="0x4c" name="L"/>
- <map code="0x4d" name="M"/>
- <map code="0x4e" name="N"/>
- <map code="0x4f" name="O"/>
- <map code="0x50" name="P"/>
- <map code="0x51" name="Q"/>
- <map code="0x52" name="R"/>
- <map code="0x53" name="S"/>
- <map code="0x54" name="T"/>
- <map code="0x55" name="U"/>
- <map code="0x56" name="V"/>
- <map code="0x57" name="W"/>
- <map code="0x58" name="X"/>
- <map code="0x59" name="Y"/>
- <map code="0x5a" name="Z"/>
- <map code="0x5b" name="bracketleft"/>
- <map code="0x5c" name="backslash"/>
- <map code="0x5d" name="bracketright"/>
- <map code="0x5e" name="asciicircum"/>
- <map code="0x5f" name="underscore"/>
- <map code="0x60" name="grave"/>
- <map code="0x61" name="a"/>
- <map code="0x62" name="b"/>
- <map code="0x63" name="c"/>
- <map code="0x64" name="d"/>
- <map code="0x65" name="e"/>
- <map code="0x66" name="f"/>
- <map code="0x67" name="g"/>
- <map code="0x68" name="h"/>
- <map code="0x69" name="i"/>
- <map code="0x6a" name="j"/>
- <map code="0x6b" name="k"/>
- <map code="0x6c" name="l"/>
- <map code="0x6d" name="m"/>
- <map code="0x6e" name="n"/>
- <map code="0x6f" name="o"/>
- <map code="0x70" name="p"/>
- <map code="0x71" name="q"/>
- <map code="0x72" name="r"/>
- <map code="0x73" name="s"/>
- <map code="0x74" name="t"/>
- <map code="0x75" name="u"/>
- <map code="0x76" name="v"/>
- <map code="0x77" name="w"/>
- <map code="0x78" name="x"/>
- <map code="0x79" name="y"/>
- <map code="0x7a" name="z"/>
- <map code="0x7b" name="braceleft"/>
- <map code="0x7c" name="bar"/>
- <map code="0x7d" name="braceright"/>
- <map code="0x7e" name="asciitilde"/>
- <map code="0x7f" name=".notdef"/>
- <map code="0x80" name="Adieresis"/>
- <map code="0x81" name="Aring"/>
- <map code="0x82" name="Ccedilla"/>
- <map code="0x83" name="Eacute"/>
- <map code="0x84" name="Ntilde"/>
- <map code="0x85" name="Odieresis"/>
- <map code="0x86" name="Udieresis"/>
- <map code="0x87" name="aacute"/>
- <map code="0x88" name="agrave"/>
- <map code="0x89" name="acircumflex"/>
- <map code="0x8a" name="adieresis"/>
- <map code="0x8b" name="atilde"/>
- <map code="0x8c" name="aring"/>
- <map code="0x8d" name="ccedilla"/>
- <map code="0x8e" name="eacute"/>
- <map code="0x8f" name="egrave"/>
- <map code="0x90" name="ecircumflex"/>
- <map code="0x91" name="edieresis"/>
- <map code="0x92" name="iacute"/>
- <map code="0x93" name="igrave"/>
- <map code="0x94" name="icircumflex"/>
- <map code="0x95" name="idieresis"/>
- <map code="0x96" name="ntilde"/>
- <map code="0x97" name="oacute"/>
- <map code="0x98" name="ograve"/>
- <map code="0x99" name="ocircumflex"/>
- <map code="0x9a" name="odieresis"/>
- <map code="0x9b" name="otilde"/>
- <map code="0x9c" name="uacute"/>
- <map code="0x9d" name="ugrave"/>
- <map code="0x9e" name="ucircumflex"/>
- <map code="0x9f" name="udieresis"/>
- <map code="0xa0" name="dagger"/>
- <map code="0xa1" name="degree"/>
- <map code="0xa2" name="cent"/>
- <map code="0xa3" name="sterling"/>
- <map code="0xa4" name="section"/>
- <map code="0xa5" name="bullet"/>
- <map code="0xa6" name="paragraph"/>
- <map code="0xa7" name="germandbls"/>
- <map code="0xa8" name="registered"/>
- <map code="0xa9" name="copyright"/>
- <map code="0xaa" name="trademark"/>
- <map code="0xab" name="acute"/>
- <map code="0xac" name="dieresis"/>
- <map code="0xad" name=".notdef"/>
- <map code="0xae" name="AE"/>
- <map code="0xaf" name="Oslash"/>
- <map code="0xb0" name=".notdef"/>
- <map code="0xb1" name="plusminus"/>
- <map code="0xb2" name=".notdef"/>
- <map code="0xb3" name=".notdef"/>
- <map code="0xb4" name="yen"/>
- <map code="0xb5" name="mu"/>
- <map code="0xb6" name=".notdef"/>
- <map code="0xb7" name=".notdef"/>
- <map code="0xb8" name=".notdef"/>
- <map code="0xb9" name=".notdef"/>
- <map code="0xba" name=".notdef"/>
- <map code="0xbb" name="ordfeminine"/>
- <map code="0xbc" name="ordmasculine"/>
- <map code="0xbd" name=".notdef"/>
- <map code="0xbe" name="ae"/>
- <map code="0xbf" name="oslash"/>
- <map code="0xc0" name="questiondown"/>
- <map code="0xc1" name="exclamdown"/>
- <map code="0xc2" name="logicalnot"/>
- <map code="0xc3" name=".notdef"/>
- <map code="0xc4" name="florin"/>
- <map code="0xc5" name=".notdef"/>
- <map code="0xc6" name=".notdef"/>
- <map code="0xc7" name="guillemotleft"/>
- <map code="0xc8" name="guillemotright"/>
- <map code="0xc9" name="ellipsis"/>
- <map code="0xca" name=".notdef#16"/>
- <map code="0xcb" name="Agrave"/>
- <map code="0xcc" name="Atilde"/>
- <map code="0xcd" name="Otilde"/>
- <map code="0xce" name="OE"/>
- <map code="0xcf" name="oe"/>
- <map code="0xd0" name="endash"/>
- <map code="0xd1" name="emdash"/>
- <map code="0xd2" name="quotedblleft"/>
- <map code="0xd3" name="quotedblright"/>
- <map code="0xd4" name="quoteleft"/>
- <map code="0xd5" name="quoteright"/>
- <map code="0xd6" name="divide"/>
- <map code="0xd7" name=".notdef"/>
- <map code="0xd8" name="ydieresis"/>
- <map code="0xd9" name="Ydieresis"/>
- <map code="0xda" name="fraction"/>
- <map code="0xdb" name="currency"/>
- <map code="0xdc" name="guilsinglleft"/>
- <map code="0xdd" name="guilsinglright"/>
- <map code="0xde" name="fi"/>
- <map code="0xdf" name="fl"/>
- <map code="0xe0" name="daggerdbl"/>
- <map code="0xe1" name="periodcentered"/>
- <map code="0xe2" name="quotesinglbase"/>
- <map code="0xe3" name="quotedblbase"/>
- <map code="0xe4" name="perthousand"/>
- <map code="0xe5" name="Acircumflex"/>
- <map code="0xe6" name="Ecircumflex"/>
- <map code="0xe7" name="Aacute"/>
- <map code="0xe8" name="Edieresis"/>
- <map code="0xe9" name="Egrave"/>
- <map code="0xea" name="Iacute"/>
- <map code="0xeb" name="Icircumflex"/>
- <map code="0xec" name="Idieresis"/>
- <map code="0xed" name="Igrave"/>
- <map code="0xee" name="Oacute"/>
- <map code="0xef" name="Ocircumflex"/>
- <map code="0xf0" name="Euro"/>
- <map code="0xf1" name="Ograve"/>
- <map code="0xf2" name="Uacute"/>
- <map code="0xf3" name="Ucircumflex"/>
- <map code="0xf4" name="Ugrave"/>
- <map code="0xf5" name="dotlessi"/>
- <map code="0xf6" name="circumflex"/>
- <map code="0xf7" name="tilde"/>
- <map code="0xf8" name="macron"/>
- <map code="0xf9" name="breve"/>
- <map code="0xfa" name="dotaccent"/>
- <map code="0xfb" name="ring"/>
- <map code="0xfc" name="cedilla"/>
- <map code="0xfd" name="hungarumlaut"/>
- <map code="0xfe" name="ogonek"/>
- <map code="0xff" name="caron"/>
- </cmap_format_0>
- <cmap_format_4 platformID="3" platEncID="1" language="0">
- <map code="0x20" name="space"/><!-- SPACE -->
- <map code="0x21" name="exclam"/><!-- EXCLAMATION MARK -->
- <map code="0x22" name="quotedbl"/><!-- QUOTATION MARK -->
- <map code="0x23" name="numbersign"/><!-- NUMBER SIGN -->
- <map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
- <map code="0x25" name="percent"/><!-- PERCENT SIGN -->
- <map code="0x26" name="ampersand"/><!-- AMPERSAND -->
- <map code="0x27" name="quotesingle"/><!-- APOSTROPHE -->
- <map code="0x28" name="parenleft"/><!-- LEFT PARENTHESIS -->
- <map code="0x29" name="parenright"/><!-- RIGHT PARENTHESIS -->
- <map code="0x2a" name="asterisk"/><!-- ASTERISK -->
- <map code="0x2b" name="plus"/><!-- PLUS SIGN -->
- <map code="0x2c" name="comma"/><!-- COMMA -->
- <map code="0x2d" name="hyphen"/><!-- HYPHEN-MINUS -->
- <map code="0x2e" name="period"/><!-- FULL STOP -->
- <map code="0x2f" name="slash"/><!-- SOLIDUS -->
- <map code="0x30" name="zero"/><!-- DIGIT ZERO -->
- <map code="0x31" name="one"/><!-- DIGIT ONE -->
- <map code="0x32" name="two"/><!-- DIGIT TWO -->
- <map code="0x33" name="three"/><!-- DIGIT THREE -->
- <map code="0x34" name="four"/><!-- DIGIT FOUR -->
- <map code="0x35" name="five"/><!-- DIGIT FIVE -->
- <map code="0x36" name="six"/><!-- DIGIT SIX -->
- <map code="0x37" name="seven"/><!-- DIGIT SEVEN -->
- <map code="0x38" name="eight"/><!-- DIGIT EIGHT -->
- <map code="0x39" name="nine"/><!-- DIGIT NINE -->
- <map code="0x3a" name="colon"/><!-- COLON -->
- <map code="0x3b" name="semicolon"/><!-- SEMICOLON -->
- <map code="0x3c" name="less"/><!-- LESS-THAN SIGN -->
- <map code="0x3d" name="equal"/><!-- EQUALS SIGN -->
- <map code="0x3e" name="greater"/><!-- GREATER-THAN SIGN -->
- <map code="0x3f" name="question"/><!-- QUESTION MARK -->
- <map code="0x40" name="at"/><!-- COMMERCIAL AT -->
- <map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
- <map code="0x42" name="B"/><!-- LATIN CAPITAL LETTER B -->
- <map code="0x43" name="C"/><!-- LATIN CAPITAL LETTER C -->
- <map code="0x44" name="D"/><!-- LATIN CAPITAL LETTER D -->
- <map code="0x45" name="E"/><!-- LATIN CAPITAL LETTER E -->
- <map code="0x46" name="F"/><!-- LATIN CAPITAL LETTER F -->
- <map code="0x47" name="G"/><!-- LATIN CAPITAL LETTER G -->
- <map code="0x48" name="H"/><!-- LATIN CAPITAL LETTER H -->
- <map code="0x49" name="I"/><!-- LATIN CAPITAL LETTER I -->
- <map code="0x4a" name="J"/><!-- LATIN CAPITAL LETTER J -->
- <map code="0x4b" name="K"/><!-- LATIN CAPITAL LETTER K -->
- <map code="0x4c" name="L"/><!-- LATIN CAPITAL LETTER L -->
- <map code="0x4d" name="M"/><!-- LATIN CAPITAL LETTER M -->
- <map code="0x4e" name="N"/><!-- LATIN CAPITAL LETTER N -->
- <map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
- <map code="0x50" name="P"/><!-- LATIN CAPITAL LETTER P -->
- <map code="0x51" name="Q"/><!-- LATIN CAPITAL LETTER Q -->
- <map code="0x52" name="R"/><!-- LATIN CAPITAL LETTER R -->
- <map code="0x53" name="S"/><!-- LATIN CAPITAL LETTER S -->
- <map code="0x54" name="T"/><!-- LATIN CAPITAL LETTER T -->
- <map code="0x55" name="U"/><!-- LATIN CAPITAL LETTER U -->
- <map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
- <map code="0x57" name="W"/><!-- LATIN CAPITAL LETTER W -->
- <map code="0x58" name="X"/><!-- LATIN CAPITAL LETTER X -->
- <map code="0x59" name="Y"/><!-- LATIN CAPITAL LETTER Y -->
- <map code="0x5a" name="Z"/><!-- LATIN CAPITAL LETTER Z -->
- <map code="0x5b" name="bracketleft"/><!-- LEFT SQUARE BRACKET -->
- <map code="0x5c" name="backslash"/><!-- REVERSE SOLIDUS -->
- <map code="0x5d" name="bracketright"/><!-- RIGHT SQUARE BRACKET -->
- <map code="0x5e" name="asciicircum"/><!-- CIRCUMFLEX ACCENT -->
- <map code="0x5f" name="underscore"/><!-- LOW LINE -->
- <map code="0x60" name="grave"/><!-- GRAVE ACCENT -->
- <map code="0x61" name="a"/><!-- LATIN SMALL LETTER A -->
- <map code="0x62" name="b"/><!-- LATIN SMALL LETTER B -->
- <map code="0x63" name="c"/><!-- LATIN SMALL LETTER C -->
- <map code="0x64" name="d"/><!-- LATIN SMALL LETTER D -->
- <map code="0x65" name="e"/><!-- LATIN SMALL LETTER E -->
- <map code="0x66" name="f"/><!-- LATIN SMALL LETTER F -->
- <map code="0x67" name="g"/><!-- LATIN SMALL LETTER G -->
- <map code="0x68" name="h"/><!-- LATIN SMALL LETTER H -->
- <map code="0x69" name="i"/><!-- LATIN SMALL LETTER I -->
- <map code="0x6a" name="j"/><!-- LATIN SMALL LETTER J -->
- <map code="0x6b" name="k"/><!-- LATIN SMALL LETTER K -->
- <map code="0x6c" name="l"/><!-- LATIN SMALL LETTER L -->
- <map code="0x6d" name="m"/><!-- LATIN SMALL LETTER M -->
- <map code="0x6e" name="n"/><!-- LATIN SMALL LETTER N -->
- <map code="0x6f" name="o"/><!-- LATIN SMALL LETTER O -->
- <map code="0x70" name="p"/><!-- LATIN SMALL LETTER P -->
- <map code="0x71" name="q"/><!-- LATIN SMALL LETTER Q -->
- <map code="0x72" name="r"/><!-- LATIN SMALL LETTER R -->
- <map code="0x73" name="s"/><!-- LATIN SMALL LETTER S -->
- <map code="0x74" name="t"/><!-- LATIN SMALL LETTER T -->
- <map code="0x75" name="u"/><!-- LATIN SMALL LETTER U -->
- <map code="0x76" name="v"/><!-- LATIN SMALL LETTER V -->
- <map code="0x77" name="w"/><!-- LATIN SMALL LETTER W -->
- <map code="0x78" name="x"/><!-- LATIN SMALL LETTER X -->
- <map code="0x79" name="y"/><!-- LATIN SMALL LETTER Y -->
- <map code="0x7a" name="z"/><!-- LATIN SMALL LETTER Z -->
- <map code="0x7b" name="braceleft"/><!-- LEFT CURLY BRACKET -->
- <map code="0x7c" name="bar"/><!-- VERTICAL LINE -->
- <map code="0x7d" name="braceright"/><!-- RIGHT CURLY BRACKET -->
- <map code="0x7e" name="asciitilde"/><!-- TILDE -->
- <map code="0x80" name="Euro#1"/><!-- &lt;control> -->
- <map code="0xa0" name="nonbreakingspace"/><!-- NO-BREAK SPACE -->
- <map code="0xa1" name="exclamdown"/><!-- INVERTED EXCLAMATION MARK -->
- <map code="0xa2" name="cent"/><!-- CENT SIGN -->
- <map code="0xa3" name="sterling"/><!-- POUND SIGN -->
- <map code="0xa4" name="currency"/><!-- CURRENCY SIGN -->
- <map code="0xa5" name="yen"/><!-- YEN SIGN -->
- <map code="0xa6" name="brokenbar"/><!-- BROKEN BAR -->
- <map code="0xa7" name="section"/><!-- SECTION SIGN -->
- <map code="0xa8" name="dieresis"/><!-- DIAERESIS -->
- <map code="0xa9" name="copyright"/><!-- COPYRIGHT SIGN -->
- <map code="0xaa" name="ordfeminine"/><!-- FEMININE ORDINAL INDICATOR -->
- <map code="0xab" name="guillemotleft"/><!-- LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -->
- <map code="0xac" name="logicalnot"/><!-- NOT SIGN -->
- <map code="0xad" name="sfthyphen"/><!-- SOFT HYPHEN -->
- <map code="0xae" name="registered"/><!-- REGISTERED SIGN -->
- <map code="0xaf" name="macron#1"/><!-- MACRON -->
- <map code="0xb0" name="degree"/><!-- DEGREE SIGN -->
- <map code="0xb1" name="plusminus"/><!-- PLUS-MINUS SIGN -->
- <map code="0xb2" name="twosuperior"/><!-- SUPERSCRIPT TWO -->
- <map code="0xb3" name="threesuperior"/><!-- SUPERSCRIPT THREE -->
- <map code="0xb4" name="acute"/><!-- ACUTE ACCENT -->
- <map code="0xb5" name="mu"/><!-- MICRO SIGN -->
- <map code="0xb6" name="paragraph"/><!-- PILCROW SIGN -->
- <map code="0xb7" name="periodcentered#1"/><!-- MIDDLE DOT -->
- <map code="0xb8" name="cedilla"/><!-- CEDILLA -->
- <map code="0xb9" name="onesuperior"/><!-- SUPERSCRIPT ONE -->
- <map code="0xba" name="ordmasculine"/><!-- MASCULINE ORDINAL INDICATOR -->
- <map code="0xbb" name="guillemotright"/><!-- RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
- <map code="0xbc" name="onequarter"/><!-- VULGAR FRACTION ONE QUARTER -->
- <map code="0xbd" name="onehalf"/><!-- VULGAR FRACTION ONE HALF -->
- <map code="0xbe" name="threequarters"/><!-- VULGAR FRACTION THREE QUARTERS -->
- <map code="0xbf" name="questiondown"/><!-- INVERTED QUESTION MARK -->
- <map code="0xc0" name="Agrave"/><!-- LATIN CAPITAL LETTER A WITH GRAVE -->
- <map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
- <map code="0xc2" name="Acircumflex"/><!-- LATIN CAPITAL LETTER A WITH CIRCUMFLEX -->
- <map code="0xc3" name="Atilde"/><!-- LATIN CAPITAL LETTER A WITH TILDE -->
- <map code="0xc4" name="Adieresis"/><!-- LATIN CAPITAL LETTER A WITH DIAERESIS -->
- <map code="0xc5" name="Aring"/><!-- LATIN CAPITAL LETTER A WITH RING ABOVE -->
- <map code="0xc6" name="AE"/><!-- LATIN CAPITAL LETTER AE -->
- <map code="0xc7" name="Ccedilla"/><!-- LATIN CAPITAL LETTER C WITH CEDILLA -->
- <map code="0xc8" name="Egrave"/><!-- LATIN CAPITAL LETTER E WITH GRAVE -->
- <map code="0xc9" name="Eacute"/><!-- LATIN CAPITAL LETTER E WITH ACUTE -->
- <map code="0xca" name="Ecircumflex"/><!-- LATIN CAPITAL LETTER E WITH CIRCUMFLEX -->
- <map code="0xcb" name="Edieresis"/><!-- LATIN CAPITAL LETTER E WITH DIAERESIS -->
- <map code="0xcc" name="Igrave"/><!-- LATIN CAPITAL LETTER I WITH GRAVE -->
- <map code="0xcd" name="Iacute"/><!-- LATIN CAPITAL LETTER I WITH ACUTE -->
- <map code="0xce" name="Icircumflex"/><!-- LATIN CAPITAL LETTER I WITH CIRCUMFLEX -->
- <map code="0xcf" name="Idieresis"/><!-- LATIN CAPITAL LETTER I WITH DIAERESIS -->
- <map code="0xd0" name="Eth"/><!-- LATIN CAPITAL LETTER ETH -->
- <map code="0xd1" name="Ntilde"/><!-- LATIN CAPITAL LETTER N WITH TILDE -->
- <map code="0xd2" name="Ograve"/><!-- LATIN CAPITAL LETTER O WITH GRAVE -->
- <map code="0xd3" name="Oacute"/><!-- LATIN CAPITAL LETTER O WITH ACUTE -->
- <map code="0xd4" name="Ocircumflex"/><!-- LATIN CAPITAL LETTER O WITH CIRCUMFLEX -->
- <map code="0xd5" name="Otilde"/><!-- LATIN CAPITAL LETTER O WITH TILDE -->
- <map code="0xd6" name="Odieresis"/><!-- LATIN CAPITAL LETTER O WITH DIAERESIS -->
- <map code="0xd7" name="multiply"/><!-- MULTIPLICATION SIGN -->
- <map code="0xd8" name="Oslash"/><!-- LATIN CAPITAL LETTER O WITH STROKE -->
- <map code="0xd9" name="Ugrave"/><!-- LATIN CAPITAL LETTER U WITH GRAVE -->
- <map code="0xda" name="Uacute"/><!-- LATIN CAPITAL LETTER U WITH ACUTE -->
- <map code="0xdb" name="Ucircumflex"/><!-- LATIN CAPITAL LETTER U WITH CIRCUMFLEX -->
- <map code="0xdc" name="Udieresis"/><!-- LATIN CAPITAL LETTER U WITH DIAERESIS -->
- <map code="0xdd" name="Yacute"/><!-- LATIN CAPITAL LETTER Y WITH ACUTE -->
- <map code="0xde" name="Thorn"/><!-- LATIN CAPITAL LETTER THORN -->
- <map code="0xdf" name="germandbls"/><!-- LATIN SMALL LETTER SHARP S -->
- <map code="0xe0" name="agrave"/><!-- LATIN SMALL LETTER A WITH GRAVE -->
- <map code="0xe1" name="aacute"/><!-- LATIN SMALL LETTER A WITH ACUTE -->
- <map code="0xe2" name="acircumflex"/><!-- LATIN SMALL LETTER A WITH CIRCUMFLEX -->
- <map code="0xe3" name="atilde"/><!-- LATIN SMALL LETTER A WITH TILDE -->
- <map code="0xe4" name="adieresis"/><!-- LATIN SMALL LETTER A WITH DIAERESIS -->
- <map code="0xe5" name="aring"/><!-- LATIN SMALL LETTER A WITH RING ABOVE -->
- <map code="0xe6" name="ae"/><!-- LATIN SMALL LETTER AE -->
- <map code="0xe7" name="ccedilla"/><!-- LATIN SMALL LETTER C WITH CEDILLA -->
- <map code="0xe8" name="egrave"/><!-- LATIN SMALL LETTER E WITH GRAVE -->
- <map code="0xe9" name="eacute"/><!-- LATIN SMALL LETTER E WITH ACUTE -->
- <map code="0xea" name="ecircumflex"/><!-- LATIN SMALL LETTER E WITH CIRCUMFLEX -->
- <map code="0xeb" name="edieresis"/><!-- LATIN SMALL LETTER E WITH DIAERESIS -->
- <map code="0xec" name="igrave"/><!-- LATIN SMALL LETTER I WITH GRAVE -->
- <map code="0xed" name="iacute"/><!-- LATIN SMALL LETTER I WITH ACUTE -->
- <map code="0xee" name="icircumflex"/><!-- LATIN SMALL LETTER I WITH CIRCUMFLEX -->
- <map code="0xef" name="idieresis"/><!-- LATIN SMALL LETTER I WITH DIAERESIS -->
- <map code="0xf0" name="eth"/><!-- LATIN SMALL LETTER ETH -->
- <map code="0xf1" name="ntilde"/><!-- LATIN SMALL LETTER N WITH TILDE -->
- <map code="0xf2" name="ograve"/><!-- LATIN SMALL LETTER O WITH GRAVE -->
- <map code="0xf3" name="oacute"/><!-- LATIN SMALL LETTER O WITH ACUTE -->
- <map code="0xf4" name="ocircumflex"/><!-- LATIN SMALL LETTER O WITH CIRCUMFLEX -->
- <map code="0xf5" name="otilde"/><!-- LATIN SMALL LETTER O WITH TILDE -->
- <map code="0xf6" name="odieresis"/><!-- LATIN SMALL LETTER O WITH DIAERESIS -->
- <map code="0xf7" name="divide"/><!-- DIVISION SIGN -->
- <map code="0xf8" name="oslash"/><!-- LATIN SMALL LETTER O WITH STROKE -->
- <map code="0xf9" name="ugrave"/><!-- LATIN SMALL LETTER U WITH GRAVE -->
- <map code="0xfa" name="uacute"/><!-- LATIN SMALL LETTER U WITH ACUTE -->
- <map code="0xfb" name="ucircumflex"/><!-- LATIN SMALL LETTER U WITH CIRCUMFLEX -->
- <map code="0xfc" name="udieresis"/><!-- LATIN SMALL LETTER U WITH DIAERESIS -->
- <map code="0xfd" name="yacute"/><!-- LATIN SMALL LETTER Y WITH ACUTE -->
- <map code="0xfe" name="thorn"/><!-- LATIN SMALL LETTER THORN -->
- <map code="0xff" name="ydieresis"/><!-- LATIN SMALL LETTER Y WITH DIAERESIS -->
- <map code="0x100" name="Amacron"/><!-- LATIN CAPITAL LETTER A WITH MACRON -->
- <map code="0x101" name="amacron"/><!-- LATIN SMALL LETTER A WITH MACRON -->
- <map code="0x102" name="Abreve"/><!-- LATIN CAPITAL LETTER A WITH BREVE -->
- <map code="0x103" name="abreve"/><!-- LATIN SMALL LETTER A WITH BREVE -->
- <map code="0x104" name="Aogonek"/><!-- LATIN CAPITAL LETTER A WITH OGONEK -->
- <map code="0x105" name="aogonek"/><!-- LATIN SMALL LETTER A WITH OGONEK -->
- <map code="0x106" name="Cacute"/><!-- LATIN CAPITAL LETTER C WITH ACUTE -->
- <map code="0x107" name="cacute"/><!-- LATIN SMALL LETTER C WITH ACUTE -->
- <map code="0x108" name="Ccircumflex"/><!-- LATIN CAPITAL LETTER C WITH CIRCUMFLEX -->
- <map code="0x109" name="ccircumflex"/><!-- LATIN SMALL LETTER C WITH CIRCUMFLEX -->
- <map code="0x10a" name="Cdotaccent"/><!-- LATIN CAPITAL LETTER C WITH DOT ABOVE -->
- <map code="0x10b" name="cdotaccent"/><!-- LATIN SMALL LETTER C WITH DOT ABOVE -->
- <map code="0x10c" name="Ccaron"/><!-- LATIN CAPITAL LETTER C WITH CARON -->
- <map code="0x10d" name="ccaron"/><!-- LATIN SMALL LETTER C WITH CARON -->
- <map code="0x10e" name="Dcaron"/><!-- LATIN CAPITAL LETTER D WITH CARON -->
- <map code="0x10f" name="dcaron"/><!-- LATIN SMALL LETTER D WITH CARON -->
- <map code="0x110" name="Dcroat"/><!-- LATIN CAPITAL LETTER D WITH STROKE -->
- <map code="0x111" name="dcroat"/><!-- LATIN SMALL LETTER D WITH STROKE -->
- <map code="0x112" name="Emacron"/><!-- LATIN CAPITAL LETTER E WITH MACRON -->
- <map code="0x113" name="emacron"/><!-- LATIN SMALL LETTER E WITH MACRON -->
- <map code="0x114" name="Ebreve"/><!-- LATIN CAPITAL LETTER E WITH BREVE -->
- <map code="0x115" name="ebreve"/><!-- LATIN SMALL LETTER E WITH BREVE -->
- <map code="0x116" name="Edotaccent"/><!-- LATIN CAPITAL LETTER E WITH DOT ABOVE -->
- <map code="0x117" name="edotaccent"/><!-- LATIN SMALL LETTER E WITH DOT ABOVE -->
- <map code="0x118" name="Eogonek"/><!-- LATIN CAPITAL LETTER E WITH OGONEK -->
- <map code="0x119" name="eogonek"/><!-- LATIN SMALL LETTER E WITH OGONEK -->
- <map code="0x11a" name="Ecaron"/><!-- LATIN CAPITAL LETTER E WITH CARON -->
- <map code="0x11b" name="ecaron"/><!-- LATIN SMALL LETTER E WITH CARON -->
- <map code="0x11c" name="Gcircumflex"/><!-- LATIN CAPITAL LETTER G WITH CIRCUMFLEX -->
- <map code="0x11d" name="gcircumflex"/><!-- LATIN SMALL LETTER G WITH CIRCUMFLEX -->
- <map code="0x11e" name="Gbreve"/><!-- LATIN CAPITAL LETTER G WITH BREVE -->
- <map code="0x11f" name="gbreve"/><!-- LATIN SMALL LETTER G WITH BREVE -->
- <map code="0x120" name="Gdotaccent"/><!-- LATIN CAPITAL LETTER G WITH DOT ABOVE -->
- <map code="0x121" name="gdotaccent"/><!-- LATIN SMALL LETTER G WITH DOT ABOVE -->
- <map code="0x122" name="Gcommaaccent"/><!-- LATIN CAPITAL LETTER G WITH CEDILLA -->
- <map code="0x123" name="gcommaaccent"/><!-- LATIN SMALL LETTER G WITH CEDILLA -->
- <map code="0x124" name="Hcircumflex"/><!-- LATIN CAPITAL LETTER H WITH CIRCUMFLEX -->
- <map code="0x125" name="hcircumflex"/><!-- LATIN SMALL LETTER H WITH CIRCUMFLEX -->
- <map code="0x126" name="Hbar"/><!-- LATIN CAPITAL LETTER H WITH STROKE -->
- <map code="0x127" name="hbar"/><!-- LATIN SMALL LETTER H WITH STROKE -->
- <map code="0x128" name="Itilde"/><!-- LATIN CAPITAL LETTER I WITH TILDE -->
- <map code="0x129" name="itilde"/><!-- LATIN SMALL LETTER I WITH TILDE -->
- <map code="0x12a" name="Imacron"/><!-- LATIN CAPITAL LETTER I WITH MACRON -->
- <map code="0x12b" name="imacron"/><!-- LATIN SMALL LETTER I WITH MACRON -->
- <map code="0x12c" name="Ibreve"/><!-- LATIN CAPITAL LETTER I WITH BREVE -->
- <map code="0x12d" name="ibreve"/><!-- LATIN SMALL LETTER I WITH BREVE -->
- <map code="0x12e" name="Iogonek"/><!-- LATIN CAPITAL LETTER I WITH OGONEK -->
- <map code="0x12f" name="iogonek"/><!-- LATIN SMALL LETTER I WITH OGONEK -->
- <map code="0x130" name="Idotaccent"/><!-- LATIN CAPITAL LETTER I WITH DOT ABOVE -->
- <map code="0x131" name="dotlessi"/><!-- LATIN SMALL LETTER DOTLESS I -->
- <map code="0x132" name="IJ"/><!-- LATIN CAPITAL LIGATURE IJ -->
- <map code="0x133" name="ij"/><!-- LATIN SMALL LIGATURE IJ -->
- <map code="0x134" name="Jcircumflex"/><!-- LATIN CAPITAL LETTER J WITH CIRCUMFLEX -->
- <map code="0x135" name="jcircumflex"/><!-- LATIN SMALL LETTER J WITH CIRCUMFLEX -->
- <map code="0x136" name="Kcommaaccent"/><!-- LATIN CAPITAL LETTER K WITH CEDILLA -->
- <map code="0x137" name="kcommaaccent"/><!-- LATIN SMALL LETTER K WITH CEDILLA -->
- <map code="0x138" name="kgreenlandic"/><!-- LATIN SMALL LETTER KRA -->
- <map code="0x139" name="Lacute"/><!-- LATIN CAPITAL LETTER L WITH ACUTE -->
- <map code="0x13a" name="lacute"/><!-- LATIN SMALL LETTER L WITH ACUTE -->
- <map code="0x13b" name="Lcommaaccent"/><!-- LATIN CAPITAL LETTER L WITH CEDILLA -->
- <map code="0x13c" name="lcommaaccent"/><!-- LATIN SMALL LETTER L WITH CEDILLA -->
- <map code="0x13d" name="Lcaron"/><!-- LATIN CAPITAL LETTER L WITH CARON -->
- <map code="0x13e" name="lcaron"/><!-- LATIN SMALL LETTER L WITH CARON -->
- <map code="0x13f" name="Ldot"/><!-- LATIN CAPITAL LETTER L WITH MIDDLE DOT -->
- <map code="0x140" name="ldot"/><!-- LATIN SMALL LETTER L WITH MIDDLE DOT -->
- <map code="0x141" name="Lslash"/><!-- LATIN CAPITAL LETTER L WITH STROKE -->
- <map code="0x142" name="lslash"/><!-- LATIN SMALL LETTER L WITH STROKE -->
- <map code="0x143" name="Nacute"/><!-- LATIN CAPITAL LETTER N WITH ACUTE -->
- <map code="0x144" name="nacute"/><!-- LATIN SMALL LETTER N WITH ACUTE -->
- <map code="0x145" name="Ncommaaccent"/><!-- LATIN CAPITAL LETTER N WITH CEDILLA -->
- <map code="0x146" name="ncommaaccent"/><!-- LATIN SMALL LETTER N WITH CEDILLA -->
- <map code="0x147" name="Ncaron"/><!-- LATIN CAPITAL LETTER N WITH CARON -->
- <map code="0x148" name="ncaron"/><!-- LATIN SMALL LETTER N WITH CARON -->
- <map code="0x149" name="napostrophe"/><!-- LATIN SMALL LETTER N PRECEDED BY APOSTROPHE -->
- <map code="0x14a" name="Eng"/><!-- LATIN CAPITAL LETTER ENG -->
- <map code="0x14b" name="eng"/><!-- LATIN SMALL LETTER ENG -->
- <map code="0x14c" name="Omacron"/><!-- LATIN CAPITAL LETTER O WITH MACRON -->
- <map code="0x14d" name="omacron"/><!-- LATIN SMALL LETTER O WITH MACRON -->
- <map code="0x14e" name="Obreve"/><!-- LATIN CAPITAL LETTER O WITH BREVE -->
- <map code="0x14f" name="obreve"/><!-- LATIN SMALL LETTER O WITH BREVE -->
- <map code="0x150" name="Ohungarumlaut"/><!-- LATIN CAPITAL LETTER O WITH DOUBLE ACUTE -->
- <map code="0x151" name="ohungarumlaut"/><!-- LATIN SMALL LETTER O WITH DOUBLE ACUTE -->
- <map code="0x152" name="OE"/><!-- LATIN CAPITAL LIGATURE OE -->
- <map code="0x153" name="oe"/><!-- LATIN SMALL LIGATURE OE -->
- <map code="0x154" name="Racute"/><!-- LATIN CAPITAL LETTER R WITH ACUTE -->
- <map code="0x155" name="racute"/><!-- LATIN SMALL LETTER R WITH ACUTE -->
- <map code="0x156" name="Rcommaaccent"/><!-- LATIN CAPITAL LETTER R WITH CEDILLA -->
- <map code="0x157" name="rcommaaccent"/><!-- LATIN SMALL LETTER R WITH CEDILLA -->
- <map code="0x158" name="Rcaron"/><!-- LATIN CAPITAL LETTER R WITH CARON -->
- <map code="0x159" name="rcaron"/><!-- LATIN SMALL LETTER R WITH CARON -->
- <map code="0x15a" name="Sacute"/><!-- LATIN CAPITAL LETTER S WITH ACUTE -->
- <map code="0x15b" name="sacute"/><!-- LATIN SMALL LETTER S WITH ACUTE -->
- <map code="0x15c" name="Scircumflex"/><!-- LATIN CAPITAL LETTER S WITH CIRCUMFLEX -->
- <map code="0x15d" name="scircumflex"/><!-- LATIN SMALL LETTER S WITH CIRCUMFLEX -->
- <map code="0x15e" name="Scedilla"/><!-- LATIN CAPITAL LETTER S WITH CEDILLA -->
- <map code="0x15f" name="scedilla"/><!-- LATIN SMALL LETTER S WITH CEDILLA -->
- <map code="0x160" name="Scaron"/><!-- LATIN CAPITAL LETTER S WITH CARON -->
- <map code="0x161" name="scaron"/><!-- LATIN SMALL LETTER S WITH CARON -->
- <map code="0x162" name="Tcommaaccent"/><!-- LATIN CAPITAL LETTER T WITH CEDILLA -->
- <map code="0x163" name="tcommaaccent"/><!-- LATIN SMALL LETTER T WITH CEDILLA -->
- <map code="0x164" name="Tcaron"/><!-- LATIN CAPITAL LETTER T WITH CARON -->
- <map code="0x165" name="tcaron"/><!-- LATIN SMALL LETTER T WITH CARON -->
- <map code="0x166" name="Tbar"/><!-- LATIN CAPITAL LETTER T WITH STROKE -->
- <map code="0x167" name="tbar"/><!-- LATIN SMALL LETTER T WITH STROKE -->
- <map code="0x168" name="Utilde"/><!-- LATIN CAPITAL LETTER U WITH TILDE -->
- <map code="0x169" name="utilde"/><!-- LATIN SMALL LETTER U WITH TILDE -->
- <map code="0x16a" name="Umacron"/><!-- LATIN CAPITAL LETTER U WITH MACRON -->
- <map code="0x16b" name="umacron"/><!-- LATIN SMALL LETTER U WITH MACRON -->
- <map code="0x16c" name="Ubreve"/><!-- LATIN CAPITAL LETTER U WITH BREVE -->
- <map code="0x16d" name="ubreve"/><!-- LATIN SMALL LETTER U WITH BREVE -->
- <map code="0x16e" name="Uring"/><!-- LATIN CAPITAL LETTER U WITH RING ABOVE -->
- <map code="0x16f" name="uring"/><!-- LATIN SMALL LETTER U WITH RING ABOVE -->
- <map code="0x170" name="Uhungarumlaut"/><!-- LATIN CAPITAL LETTER U WITH DOUBLE ACUTE -->
- <map code="0x171" name="uhungarumlaut"/><!-- LATIN SMALL LETTER U WITH DOUBLE ACUTE -->
- <map code="0x172" name="Uogonek"/><!-- LATIN CAPITAL LETTER U WITH OGONEK -->
- <map code="0x173" name="uogonek"/><!-- LATIN SMALL LETTER U WITH OGONEK -->
- <map code="0x174" name="Wcircumflex"/><!-- LATIN CAPITAL LETTER W WITH CIRCUMFLEX -->
- <map code="0x175" name="wcircumflex"/><!-- LATIN SMALL LETTER W WITH CIRCUMFLEX -->
- <map code="0x176" name="Ycircumflex"/><!-- LATIN CAPITAL LETTER Y WITH CIRCUMFLEX -->
- <map code="0x177" name="ycircumflex"/><!-- LATIN SMALL LETTER Y WITH CIRCUMFLEX -->
- <map code="0x178" name="Ydieresis"/><!-- LATIN CAPITAL LETTER Y WITH DIAERESIS -->
- <map code="0x179" name="Zacute"/><!-- LATIN CAPITAL LETTER Z WITH ACUTE -->
- <map code="0x17a" name="zacute"/><!-- LATIN SMALL LETTER Z WITH ACUTE -->
- <map code="0x17b" name="Zdotaccent"/><!-- LATIN CAPITAL LETTER Z WITH DOT ABOVE -->
- <map code="0x17c" name="zdotaccent"/><!-- LATIN SMALL LETTER Z WITH DOT ABOVE -->
- <map code="0x17d" name="Zcaron"/><!-- LATIN CAPITAL LETTER Z WITH CARON -->
- <map code="0x17e" name="zcaron"/><!-- LATIN SMALL LETTER Z WITH CARON -->
- <map code="0x17f" name="longs"/><!-- LATIN SMALL LETTER LONG S -->
- <map code="0x192" name="florin"/><!-- LATIN SMALL LETTER F WITH HOOK -->
- <map code="0x218" name="Scommaaccent"/><!-- LATIN CAPITAL LETTER S WITH COMMA BELOW -->
- <map code="0x219" name="scommaaccent"/><!-- LATIN SMALL LETTER S WITH COMMA BELOW -->
- <map code="0x21a" name="Tcommabelow"/><!-- LATIN CAPITAL LETTER T WITH COMMA BELOW -->
- <map code="0x21b" name="tcommabelow"/><!-- LATIN SMALL LETTER T WITH COMMA BELOW -->
- <map code="0x2c6" name="circumflex"/><!-- MODIFIER LETTER CIRCUMFLEX ACCENT -->
- <map code="0x2c7" name="caron"/><!-- CARON -->
- <map code="0x2c9" name="macron"/><!-- MODIFIER LETTER MACRON -->
- <map code="0x2d8" name="breve"/><!-- BREVE -->
- <map code="0x2d9" name="dotaccent"/><!-- DOT ABOVE -->
- <map code="0x2da" name="ring"/><!-- RING ABOVE -->
- <map code="0x2db" name="ogonek"/><!-- OGONEK -->
- <map code="0x2dc" name="tilde"/><!-- SMALL TILDE -->
- <map code="0x2dd" name="hungarumlaut"/><!-- DOUBLE ACUTE ACCENT -->
- <map code="0x326" name="Unterkomma"/><!-- COMBINING COMMA BELOW -->
- <map code="0x37e" name="semicolon#1"/><!-- GREEK QUESTION MARK -->
- <map code="0x387" name="anoteleia"/><!-- GREEK ANO TELEIA -->
- <map code="0x2010" name="hyphen#1"/><!-- HYPHEN -->
- <map code="0x2011" name="nbhyphen"/><!-- NON-BREAKING HYPHEN -->
- <map code="0x2012" name="figuredash"/><!-- FIGURE DASH -->
- <map code="0x2013" name="endash"/><!-- EN DASH -->
- <map code="0x2014" name="emdash"/><!-- EM DASH -->
- <map code="0x2015" name="afii00208"/><!-- HORIZONTAL BAR -->
- <map code="0x2018" name="quoteleft"/><!-- LEFT SINGLE QUOTATION MARK -->
- <map code="0x2019" name="quoteright"/><!-- RIGHT SINGLE QUOTATION MARK -->
- <map code="0x201a" name="quotesinglbase"/><!-- SINGLE LOW-9 QUOTATION MARK -->
- <map code="0x201b" name="quotereversed"/><!-- SINGLE HIGH-REVERSED-9 QUOTATION MARK -->
- <map code="0x201c" name="quotedblleft"/><!-- LEFT DOUBLE QUOTATION MARK -->
- <map code="0x201d" name="quotedblright"/><!-- RIGHT DOUBLE QUOTATION MARK -->
- <map code="0x201e" name="quotedblbase"/><!-- DOUBLE LOW-9 QUOTATION MARK -->
- <map code="0x2020" name="dagger"/><!-- DAGGER -->
- <map code="0x2021" name="daggerdbl"/><!-- DOUBLE DAGGER -->
- <map code="0x2022" name="bullet"/><!-- BULLET -->
- <map code="0x2026" name="ellipsis"/><!-- HORIZONTAL ELLIPSIS -->
- <map code="0x2030" name="perthousand"/><!-- PER MILLE SIGN -->
- <map code="0x2039" name="guilsinglleft"/><!-- SINGLE LEFT-POINTING ANGLE QUOTATION MARK -->
- <map code="0x203a" name="guilsinglright"/><!-- SINGLE RIGHT-POINTING ANGLE QUOTATION MARK -->
- <map code="0x203e" name="radicalex"/><!-- OVERLINE -->
- <map code="0x2044" name="fraction"/><!-- FRACTION SLASH -->
- <map code="0x20ac" name="Euro"/><!-- EURO SIGN -->
- <map code="0x2122" name="trademark"/><!-- TRADE MARK SIGN -->
- <map code="0x212e" name="estimated"/><!-- ESTIMATED SYMBOL -->
- <map code="0x2212" name="minus"/><!-- MINUS SIGN -->
- <map code="0x2215" name="fraction#1"/><!-- DIVISION SLASH -->
- <map code="0x2219" name="periodcentered"/><!-- BULLET OPERATOR -->
- <map code="0x22c5" name="dotmath"/><!-- DOT OPERATOR -->
- <map code="0xea01" name="fi#1"/><!-- Private Use -->
- <map code="0xea02" name="fl#1"/><!-- Private Use -->
- <map code="0xf001" name="fi"/><!-- Private Use -->
- <map code="0xf002" name="fl"/><!-- Private Use -->
- <map code="0xf004" name="foursuperiour"/><!-- Private Use -->
- <map code="0xf6be" name="dotlessj"/><!-- Private Use -->
- <map code="0xfb01" name="fi"/><!-- LATIN SMALL LIGATURE FI -->
- <map code="0xfb02" name="fl"/><!-- LATIN SMALL LIGATURE FL -->
- </cmap_format_4>
- </cmap>
-
- <fpgm>
- <assembly>
- NPUSHB[ ] /* 15 values pushed */
- 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- FDEF[ ]
- SLOOP[ ]
- MDAP[1]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- MDAP[1]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP1[ ]
- SRP2[ ]
- IP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP1[ ]
- SRP2[ ]
- SLOOP[ ]
- IP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- SLOOP[ ]
- MIRP[11101]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- SLOOP[ ]
- MIRP[10100]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- SLOOP[ ]
- MDRP[11101]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- SLOOP[ ]
- MDRP[10100]
- ALIGNRP[ ]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- MIRP[11101]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- MIRP[10100]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- MDRP[11101]
- ENDF[ ]
- FDEF[ ]
- SRP0[ ]
- MDRP[10100]
- ENDF[ ]
- FDEF[ ]
- MDRP[00100]
- ENDF[ ]
- FDEF[ ]
- MDRP[00000]
- ENDF[ ]
- FDEF[ ]
- SVTCA[0]
- NPUSHB[ ] /* 10 values pushed */
- 1 0 0 1 1 2 2 3 3 0
- SZPS[ ]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SZPS[ ]
- ENDF[ ]
- </assembly>
- </fpgm>
-
- <prep>
- <assembly>
- PUSHB[ ] /* 2 values pushed */
- 48 1
- PUSHW[ ] /* 1 value pushed */
- 329
- RTG[ ]
- SCANCTRL[ ]
- SCANTYPE[ ]
- SCVTCI[ ]
- </assembly>
- </prep>
-
- <cvt>
- <cv index="0" value="1480"/>
- <cv index="1" value="1086"/>
- <cv index="2" value="0"/>
- <cv index="3" value="-512"/>
- <cv index="4" value="196"/>
- <cv index="5" value="200"/>
- <cv index="6" value="125"/>
- <cv index="7" value="149"/>
- <cv index="8" value="247"/>
- <cv index="9" value="213"/>
- <cv index="10" value="150"/>
- <cv index="11" value="101"/>
- <cv index="12" value="196"/>
- <cv index="13" value="172"/>
- <cv index="14" value="181"/>
- <cv index="15" value="157"/>
- <cv index="16" value="113"/>
- <cv index="17" value="109"/>
- <cv index="18" value="133"/>
- <cv index="19" value="121"/>
- <cv index="20" value="104"/>
- <cv index="21" value="97"/>
- <cv index="22" value="138"/>
- <cv index="23" value="22"/>
- <cv index="24" value="183"/>
- <cv index="25" value="140"/>
- <cv index="26" value="224"/>
- <cv index="27" value="186"/>
- <cv index="28" value="206"/>
- <cv index="29" value="160"/>
- <cv index="30" value="171"/>
- <cv index="31" value="135"/>
- <cv index="32" value="87"/>
- <cv index="33" value="210"/>
- <cv index="34" value="167"/>
- <cv index="35" value="155"/>
- <cv index="36" value="227"/>
- <cv index="37" value="159"/>
- <cv index="38" value="119"/>
- <cv index="39" value="152"/>
- <cv index="40" value="149"/>
- <cv index="41" value="195"/>
- <cv index="42" value="137"/>
- <cv index="43" value="205"/>
- <cv index="44" value="89"/>
- <cv index="45" value="165"/>
- </cvt>
-
- <loca>
- <!-- The 'loca' table will be calculated by the compiler -->
- </loca>
-
- <glyf>
-
- <!-- The xMin, yMin, xMax and yMax values
- will be recalculated by the compiler. -->
-
- <TTGlyph name=".notdef" xMin="57" yMin="0" xMax="512" yMax="1480">
- <contour>
- <pt x="57" y="0" on="1"/>
- <pt x="57" y="1480" on="1"/>
- <pt x="512" y="1480" on="1"/>
- <pt x="512" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="455" y="57" on="1"/>
- <pt x="455" y="1423" on="1"/>
- <pt x="114" y="1423" on="1"/>
- <pt x="114" y="57" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 16 values pushed */
- 5 6 2 1 4 7 3 0 5 4 2 3 6 7 1 0
- MDAP[1]
- ALIGNRP[ ]
- MDRP[11100]
- ALIGNRP[ ]
- MDAP[1]
- ALIGNRP[ ]
- MDRP[11100]
- ALIGNRP[ ]
- SVTCA[0]
- MDAP[1]
- ALIGNRP[ ]
- MDRP[11100]
- ALIGNRP[ ]
- MDAP[1]
- ALIGNRP[ ]
- MDRP[11100]
- ALIGNRP[ ]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name=".notdef#1"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#10"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#11"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#12"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#13"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#14"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#15"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#16"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#17"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#18"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#2"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#3"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#4"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#5"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#6"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#7"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#8"/><!-- contains no outline data -->
-
- <TTGlyph name=".notdef#9"/><!-- contains no outline data -->
-
- <TTGlyph name="A" xMin="19" yMin="0" xMax="1342" yMax="1480">
- <contour>
- <pt x="19" y="0" on="1"/>
- <pt x="581" y="1480" on="1"/>
- <pt x="789" y="1480" on="1"/>
- <pt x="1342" y="0" on="1"/>
- <pt x="1116" y="0" on="1"/>
- <pt x="962" y="410" on="1"/>
- <pt x="368" y="410" on="1"/>
- <pt x="214" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="428" y="566" on="1"/>
- <pt x="904" y="566" on="1"/>
- <pt x="667" y="1200" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 40 values pushed */
- 10 1 8 2 0 0 9 8 15 1 5 1 4 48 196 6 5 1 7 4 3 0 3 2 0
- 2 1 0 14 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="AE" xMin="19" yMin="0" xMax="1990" yMax="1480">
- <contour>
- <pt x="597" y="569" on="1"/>
- <pt x="1015" y="569" on="1"/>
- <pt x="1015" y="1227" on="1"/>
- </contour>
- <contour>
- <pt x="19" y="0" on="1"/>
- <pt x="959" y="1480" on="1"/>
- <pt x="1947" y="1480" on="1"/>
- <pt x="1947" y="1323" on="1"/>
- <pt x="1225" y="1323" on="1"/>
- <pt x="1225" y="848" on="1"/>
- <pt x="1847" y="848" on="1"/>
- <pt x="1847" y="693" on="1"/>
- <pt x="1225" y="693" on="1"/>
- <pt x="1225" y="157" on="1"/>
- <pt x="1990" y="157" on="1"/>
- <pt x="1990" y="0" on="1"/>
- <pt x="1015" y="0" on="1"/>
- <pt x="1015" y="414" on="1"/>
- <pt x="498" y="414" on="1"/>
- <pt x="236" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 2 6 8 2 0 0 7 6 15 1 4 11 10 15 1 8 13 12 15 1 3 3 4 48 196
- 9 8 1 17 16 1 18 15 14 3 3 1 0 1 4 0 5 4 0 14 18 17 4 3 0
- 5 13 1 0 0 16 15 2 1 33 3 7 1 4 48 196 14 13 1 6 5 1 10 9 1
- 12 11 8 7 3 16 15 2 1 3 5 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Aacute" xMin="19" yMin="0" xMax="1342" yMax="1925">
- <contour>
- <pt x="19" y="0" on="1"/>
- <pt x="581" y="1480" on="1"/>
- <pt x="789" y="1480" on="1"/>
- <pt x="1342" y="0" on="1"/>
- <pt x="1116" y="0" on="1"/>
- <pt x="962" y="410" on="1"/>
- <pt x="368" y="410" on="1"/>
- <pt x="214" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="428" y="566" on="1"/>
- <pt x="904" y="566" on="1"/>
- <pt x="667" y="1200" on="1"/>
- </contour>
- <contour>
- <pt x="537" y="1604" on="1"/>
- <pt x="778" y="1925" on="1"/>
- <pt x="1006" y="1925" on="1"/>
- <pt x="685" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 50 values pushed */
- 10 1 8 2 0 0 9 8 15 1 5 1 4 48 196 13 12 1 14 11 1 6 5 1 7
- 4 3 0 3 4 0 2 1 0 14 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Abreve" xMin="21" yMin="0" xMax="1344" yMax="1925">
- <contour>
- <pt x="21" y="0" on="1"/>
- <pt x="583" y="1480" on="1"/>
- <pt x="791" y="1480" on="1"/>
- <pt x="1344" y="0" on="1"/>
- <pt x="1118" y="0" on="1"/>
- <pt x="964" y="410" on="1"/>
- <pt x="370" y="410" on="1"/>
- <pt x="216" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="430" y="566" on="1"/>
- <pt x="906" y="566" on="1"/>
- <pt x="669" y="1200" on="1"/>
- </contour>
- <contour>
- <pt x="354" y="1925" on="1"/>
- <pt x="477" y="1925" on="1"/>
- <pt x="498" y="1831" on="0"/>
- <pt x="552" y="1791" on="1"/>
- <pt x="604" y="1752" on="0"/>
- <pt x="687" y="1752" on="1"/>
- <pt x="781" y="1752" on="0"/>
- <pt x="835" y="1801" on="1"/>
- <pt x="878" y="1841" on="0"/>
- <pt x="897" y="1925" on="1"/>
- <pt x="1020" y="1925" on="1"/>
- <pt x="1004" y="1791" on="0"/>
- <pt x="931" y="1710" on="1"/>
- <pt x="837" y="1604" on="0"/>
- <pt x="687" y="1604" on="1"/>
- <pt x="530" y="1604" on="0"/>
- <pt x="435" y="1719" on="1"/>
- <pt x="370" y="1797" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 59 values pushed */
- 0 0 16 40 25 48 196 10 1 8 2 21 20 12 11 4 13 25 1 0 0 9 8 15 1
- 5 1 4 48 196 6 5 1 7 4 3 0 3 2 0 2 1 0 14 21 20 12 11 10 9
- 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Acircumflex" xMin="19" yMin="0" xMax="1342" yMax="1925">
- <contour>
- <pt x="19" y="0" on="1"/>
- <pt x="581" y="1480" on="1"/>
- <pt x="789" y="1480" on="1"/>
- <pt x="1342" y="0" on="1"/>
- <pt x="1116" y="0" on="1"/>
- <pt x="962" y="410" on="1"/>
- <pt x="368" y="410" on="1"/>
- <pt x="214" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="428" y="566" on="1"/>
- <pt x="904" y="566" on="1"/>
- <pt x="667" y="1200" on="1"/>
- </contour>
- <contour>
- <pt x="335" y="1604" on="1"/>
- <pt x="576" y="1925" on="1"/>
- <pt x="794" y="1925" on="1"/>
- <pt x="1035" y="1604" on="1"/>
- <pt x="887" y="1604" on="1"/>
- <pt x="686" y="1806" on="1"/>
- <pt x="684" y="1806" on="1"/>
- <pt x="483" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 17 16 2 12 11 3 10 1 8 2 0 0 9 8 15 1 5 1 4 48 196 13 12 1 18
- 15 14 11 3 6 5 1 7 4 3 0 3 4 0 2 1 0 14 18 17 16 15 14 13 12
- 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Adieresis" xMin="19" yMin="0" xMax="1342" yMax="1777">
- <contour>
- <pt x="19" y="0" on="1"/>
- <pt x="581" y="1480" on="1"/>
- <pt x="789" y="1480" on="1"/>
- <pt x="1342" y="0" on="1"/>
- <pt x="1116" y="0" on="1"/>
- <pt x="962" y="410" on="1"/>
- <pt x="368" y="410" on="1"/>
- <pt x="214" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="428" y="566" on="1"/>
- <pt x="904" y="566" on="1"/>
- <pt x="667" y="1200" on="1"/>
- </contour>
- <contour>
- <pt x="401" y="1604" on="1"/>
- <pt x="401" y="1777" on="1"/>
- <pt x="574" y="1777" on="1"/>
- <pt x="574" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="796" y="1604" on="1"/>
- <pt x="796" y="1777" on="1"/>
- <pt x="969" y="1777" on="1"/>
- <pt x="969" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 93 values pushed */
- 10 1 8 2 0 0 18 15 14 11 13 3 12 9 8 15 1 5 2 4 48 196 17 16 13
- 12 3 6 5 1 7 4 3 0 3 3 0 2 1 0 14 9 5 2 17 15 3 10 2 1
- 3 15 13 3 8 13 11 2 4 3 2 13 17 7 6 0 3 13 11 0 0 16 15 13 1
- 17 14 13 13 1 11 2 4 48 196 18 17 1 12 11 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Agrave" xMin="19" yMin="0" xMax="1342" yMax="1925">
- <contour>
- <pt x="19" y="0" on="1"/>
- <pt x="581" y="1480" on="1"/>
- <pt x="789" y="1480" on="1"/>
- <pt x="1342" y="0" on="1"/>
- <pt x="1116" y="0" on="1"/>
- <pt x="962" y="410" on="1"/>
- <pt x="368" y="410" on="1"/>
- <pt x="214" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="428" y="566" on="1"/>
- <pt x="904" y="566" on="1"/>
- <pt x="667" y="1200" on="1"/>
- </contour>
- <contour>
- <pt x="833" y="1604" on="1"/>
- <pt x="685" y="1604" on="1"/>
- <pt x="364" y="1925" on="1"/>
- <pt x="592" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 50 values pushed */
- 10 1 8 2 0 0 9 8 15 1 5 1 4 48 196 14 13 1 12 11 1 6 5 1 7
- 4 3 0 3 4 0 2 1 0 14 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Amacron" xMin="21" yMin="0" xMax="1344" yMax="1752">
- <contour>
- <pt x="21" y="0" on="1"/>
- <pt x="583" y="1480" on="1"/>
- <pt x="791" y="1480" on="1"/>
- <pt x="1344" y="0" on="1"/>
- <pt x="1118" y="0" on="1"/>
- <pt x="964" y="410" on="1"/>
- <pt x="370" y="410" on="1"/>
- <pt x="216" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="430" y="566" on="1"/>
- <pt x="906" y="566" on="1"/>
- <pt x="669" y="1200" on="1"/>
- </contour>
- <contour>
- <pt x="366" y="1604" on="1"/>
- <pt x="366" y="1752" on="1"/>
- <pt x="1008" y="1752" on="1"/>
- <pt x="1008" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 64 values pushed */
- 10 1 8 2 0 0 14 11 7 1 12 9 8 15 1 5 2 4 48 196 13 12 1 6 5
- 1 7 4 3 0 3 3 0 2 1 0 14 10 9 8 6 5 2 1 7 13 11 3 4 3
- 2 13 13 7 0 11 14 13 1 12 11 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Aogonek" xMin="19" yMin="-370" xMax="1342" yMax="1480">
- <contour>
- <pt x="19" y="0" on="1"/>
- <pt x="581" y="1480" on="1"/>
- <pt x="789" y="1480" on="1"/>
- <pt x="1342" y="0" on="1"/>
- <pt x="1116" y="0" on="1"/>
- <pt x="962" y="410" on="1"/>
- <pt x="368" y="410" on="1"/>
- <pt x="214" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="428" y="566" on="1"/>
- <pt x="904" y="566" on="1"/>
- <pt x="667" y="1200" on="1"/>
- </contour>
- <contour>
- <pt x="1116" y="0" on="1"/>
- <pt x="1223" y="0" on="1"/>
- <pt x="1095" y="-81" on="0"/>
- <pt x="1095" y="-179" on="1"/>
- <pt x="1095" y="-275" on="0"/>
- <pt x="1210" y="-275" on="1"/>
- <pt x="1263" y="-275" on="0"/>
- <pt x="1300" y="-260" on="1"/>
- <pt x="1300" y="-341" on="1"/>
- <pt x="1238" y="-370" on="0"/>
- <pt x="1161" y="-370" on="1"/>
- <pt x="958" y="-370" on="0"/>
- <pt x="958" y="-212" on="1"/>
- <pt x="958" y="-90" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 16 21 21 48 196 10 1 8 2 19 18 21 0 0 0 9 8 15 1 5 1 4 48
- 196 6 5 1 12 11 7 4 3 0 5 2 0 2 1 0 14 0 0 14 42 23 48 196 23
- 19 18 12 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Aring" xMin="19" yMin="0" xMax="1342" yMax="1935">
- <contour>
- <pt x="19" y="0" on="1"/>
- <pt x="581" y="1480" on="1"/>
- <pt x="789" y="1480" on="1"/>
- <pt x="1342" y="0" on="1"/>
- <pt x="1116" y="0" on="1"/>
- <pt x="962" y="410" on="1"/>
- <pt x="368" y="410" on="1"/>
- <pt x="214" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="428" y="566" on="1"/>
- <pt x="904" y="566" on="1"/>
- <pt x="667" y="1200" on="1"/>
- </contour>
- <contour>
- <pt x="685" y="1935" on="1"/>
- <pt x="779" y="1935" on="0"/>
- <pt x="845" y="1869" on="1"/>
- <pt x="912" y="1803" on="0"/>
- <pt x="912" y="1709" on="1"/>
- <pt x="912" y="1614" on="0"/>
- <pt x="845" y="1547" on="1"/>
- <pt x="778" y="1481" on="0"/>
- <pt x="683" y="1481" on="1"/>
- <pt x="600" y="1481" on="0"/>
- <pt x="538" y="1535" on="1"/>
- <pt x="458" y="1604" on="0"/>
- <pt x="458" y="1708" on="1"/>
- <pt x="458" y="1802" on="0"/>
- <pt x="524" y="1868" on="1"/>
- <pt x="591" y="1935" on="0"/>
- </contour>
- <contour>
- <pt x="685" y="1848" on="1"/>
- <pt x="626" y="1848" on="0"/>
- <pt x="585" y="1808" on="1"/>
- <pt x="544" y="1767" on="0"/>
- <pt x="544" y="1708" on="1"/>
- <pt x="544" y="1650" on="0"/>
- <pt x="585" y="1609" on="1"/>
- <pt x="627" y="1567" on="0"/>
- <pt x="683" y="1567" on="1"/>
- <pt x="737" y="1567" on="0"/>
- <pt x="776" y="1600" on="1"/>
- <pt x="826" y="1643" on="0"/>
- <pt x="826" y="1709" on="1"/>
- <pt x="826" y="1767" on="0"/>
- <pt x="784" y="1808" on="1"/>
- <pt x="743" y="1848" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 66 values pushed */
- 0 0 35 44 19 27 44 11 48 196 19 0 10 1 8 2 11 1 0 0 9 8 15 1 5
- 1 4 48 196 6 5 1 7 4 3 0 3 2 0 2 1 0 14 0 0 39 32 15 31 32
- 23 48 196 23 15 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Atilde" xMin="19" yMin="0" xMax="1342" yMax="1838">
- <contour>
- <pt x="19" y="0" on="1"/>
- <pt x="581" y="1480" on="1"/>
- <pt x="789" y="1480" on="1"/>
- <pt x="1342" y="0" on="1"/>
- <pt x="1116" y="0" on="1"/>
- <pt x="962" y="410" on="1"/>
- <pt x="368" y="410" on="1"/>
- <pt x="214" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="428" y="566" on="1"/>
- <pt x="904" y="566" on="1"/>
- <pt x="667" y="1200" on="1"/>
- </contour>
- <contour>
- <pt x="352" y="1604" on="1"/>
- <pt x="359" y="1697" on="0"/>
- <pt x="384" y="1748" on="1"/>
- <pt x="430" y="1838" on="0"/>
- <pt x="539" y="1838" on="1"/>
- <pt x="611" y="1838" on="0"/>
- <pt x="672" y="1800" on="1"/>
- <pt x="732" y="1763" on="1"/>
- <pt x="789" y="1728" on="0"/>
- <pt x="819" y="1728" on="1"/>
- <pt x="884" y="1728" on="0"/>
- <pt x="895" y="1838" on="1"/>
- <pt x="1018" y="1838" on="1"/>
- <pt x="1011" y="1744" on="0"/>
- <pt x="986" y="1694" on="1"/>
- <pt x="941" y="1604" on="0"/>
- <pt x="833" y="1604" on="1"/>
- <pt x="761" y="1604" on="0"/>
- <pt x="698" y="1643" on="1"/>
- <pt x="638" y="1680" on="1"/>
- <pt x="583" y="1714" on="0"/>
- <pt x="551" y="1714" on="1"/>
- <pt x="486" y="1714" on="0"/>
- <pt x="475" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 63 values pushed */
- 0 0 32 6 15 20 6 27 48 196 10 1 8 2 34 23 22 11 4 13 27 15 1 0 0
- 9 8 15 1 5 1 4 48 196 6 5 1 7 4 3 0 3 2 0 2 1 0 14 34 23
- 22 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="B" xMin="165" yMin="0" xMax="1231" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="639" y="1480" on="1"/>
- <pt x="931" y="1480" on="0"/>
- <pt x="1051" y="1405" on="1"/>
- <pt x="1172" y="1329" on="0"/>
- <pt x="1172" y="1149" on="1"/>
- <pt x="1172" y="983" on="0"/>
- <pt x="1053" y="880" on="1"/>
- <pt x="981" y="818" on="0"/>
- <pt x="844" y="771" on="1"/>
- <pt x="1018" y="719" on="0"/>
- <pt x="1106" y="644" on="1"/>
- <pt x="1231" y="538" on="0"/>
- <pt x="1231" y="369" on="1"/>
- <pt x="1231" y="212" on="0"/>
- <pt x="1129" y="108" on="1"/>
- <pt x="1057" y="34" on="0"/>
- <pt x="940" y="15" on="1"/>
- <pt x="847" y="0" on="0"/>
- <pt x="691" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="375" y="157" on="1"/>
- <pt x="530" y="157" on="1"/>
- <pt x="824" y="157" on="0"/>
- <pt x="917" y="201" on="1"/>
- <pt x="1009" y="244" on="0"/>
- <pt x="1009" y="383" on="1"/>
- <pt x="1009" y="536" on="0"/>
- <pt x="890" y="616" on="1"/>
- <pt x="771" y="697" on="0"/>
- <pt x="546" y="697" on="1"/>
- <pt x="375" y="697" on="1"/>
- </contour>
- <contour>
- <pt x="375" y="830" on="1"/>
- <pt x="554" y="830" on="1"/>
- <pt x="956" y="830" on="0"/>
- <pt x="956" y="1113" on="1"/>
- <pt x="956" y="1256" on="0"/>
- <pt x="841" y="1294" on="1"/>
- <pt x="753" y="1323" on="0"/>
- <pt x="569" y="1323" on="1"/>
- <pt x="375" y="1323" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 76 values pushed */
- 10 32 30 2 0 0 40 39 15 1 1 31 30 31 1 32 22 21 15 1 0 3 4 48 196
- 33 32 1 20 0 1 2 0 2 1 0 14 0 0 35 9 6 26 26 14 48 196 39 33 30
- 22 20 10 2 7 13 14 6 21 0 0 40 32 31 21 33 3 0 1 4 48 196 1 0 1
- 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="C" xMin="116" yMin="-37" xMax="1352" yMax="1517">
- <contour>
- <pt x="1352" y="76" on="1"/>
- <pt x="1123" y="-37" on="0"/>
- <pt x="862" y="-37" on="1"/>
- <pt x="497" y="-37" on="0"/>
- <pt x="307" y="161" on="1"/>
- <pt x="116" y="359" on="0"/>
- <pt x="116" y="738" on="1"/>
- <pt x="116" y="1116" on="0"/>
- <pt x="310" y="1317" on="1"/>
- <pt x="504" y="1517" on="0"/>
- <pt x="871" y="1517" on="1"/>
- <pt x="1076" y="1517" on="0"/>
- <pt x="1350" y="1452" on="1"/>
- <pt x="1350" y="1255" on="1"/>
- <pt x="1039" y="1360" on="0"/>
- <pt x="860" y="1360" on="1"/>
- <pt x="609" y="1360" on="0"/>
- <pt x="475" y="1200" on="1"/>
- <pt x="341" y="1041" on="0"/>
- <pt x="341" y="740" on="1"/>
- <pt x="341" y="446" on="0"/>
- <pt x="484" y="287" on="1"/>
- <pt x="627" y="127" on="0"/>
- <pt x="886" y="127" on="1"/>
- <pt x="1103" y="127" on="0"/>
- <pt x="1352" y="256" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 0 0 23 29 2 15 29 10 48 196 10 0 2 2 1 1 25 13 12 0 4 0 2 3 0
- 0 14 0 0 19 26 6 48 196 6 12 25 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Cacute" xMin="116" yMin="-37" xMax="1352" yMax="1925">
- <contour>
- <pt x="1352" y="76" on="1"/>
- <pt x="1123" y="-37" on="0"/>
- <pt x="862" y="-37" on="1"/>
- <pt x="497" y="-37" on="0"/>
- <pt x="307" y="161" on="1"/>
- <pt x="116" y="359" on="0"/>
- <pt x="116" y="738" on="1"/>
- <pt x="116" y="1116" on="0"/>
- <pt x="310" y="1317" on="1"/>
- <pt x="504" y="1517" on="0"/>
- <pt x="871" y="1517" on="1"/>
- <pt x="1076" y="1517" on="0"/>
- <pt x="1350" y="1452" on="1"/>
- <pt x="1350" y="1255" on="1"/>
- <pt x="1039" y="1360" on="0"/>
- <pt x="860" y="1360" on="1"/>
- <pt x="609" y="1360" on="0"/>
- <pt x="475" y="1200" on="1"/>
- <pt x="341" y="1041" on="0"/>
- <pt x="341" y="740" on="1"/>
- <pt x="341" y="446" on="0"/>
- <pt x="484" y="287" on="1"/>
- <pt x="627" y="127" on="0"/>
- <pt x="886" y="127" on="1"/>
- <pt x="1103" y="127" on="0"/>
- <pt x="1352" y="256" on="1"/>
- </contour>
- <contour>
- <pt x="705" y="1604" on="1"/>
- <pt x="946" y="1925" on="1"/>
- <pt x="1174" y="1925" on="1"/>
- <pt x="853" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 58 values pushed */
- 0 0 23 29 2 15 29 10 48 196 10 0 2 2 1 1 25 13 12 0 4 0 2 3 0
- 0 28 27 1 29 26 1 2 0 14 0 0 19 26 6 48 196 29 28 27 26 4 13 6 12
- 25 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ccaron" xMin="116" yMin="-37" xMax="1352" yMax="1925">
- <contour>
- <pt x="1352" y="76" on="1"/>
- <pt x="1123" y="-37" on="0"/>
- <pt x="862" y="-37" on="1"/>
- <pt x="497" y="-37" on="0"/>
- <pt x="307" y="161" on="1"/>
- <pt x="116" y="359" on="0"/>
- <pt x="116" y="738" on="1"/>
- <pt x="116" y="1116" on="0"/>
- <pt x="310" y="1317" on="1"/>
- <pt x="504" y="1517" on="0"/>
- <pt x="871" y="1517" on="1"/>
- <pt x="1076" y="1517" on="0"/>
- <pt x="1350" y="1452" on="1"/>
- <pt x="1350" y="1255" on="1"/>
- <pt x="1039" y="1360" on="0"/>
- <pt x="860" y="1360" on="1"/>
- <pt x="609" y="1360" on="0"/>
- <pt x="475" y="1200" on="1"/>
- <pt x="341" y="1041" on="0"/>
- <pt x="341" y="740" on="1"/>
- <pt x="341" y="446" on="0"/>
- <pt x="484" y="287" on="1"/>
- <pt x="627" y="127" on="0"/>
- <pt x="886" y="127" on="1"/>
- <pt x="1103" y="127" on="0"/>
- <pt x="1352" y="256" on="1"/>
- </contour>
- <contour>
- <pt x="1203" y="1925" on="1"/>
- <pt x="962" y="1604" on="1"/>
- <pt x="744" y="1604" on="1"/>
- <pt x="503" y="1925" on="1"/>
- <pt x="651" y="1925" on="1"/>
- <pt x="852" y="1723" on="1"/>
- <pt x="854" y="1723" on="1"/>
- <pt x="1055" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 70 values pushed */
- 0 0 23 29 2 15 29 10 48 196 10 0 2 2 32 31 2 26 27 3 1 1 25 13 12
- 0 4 0 2 3 0 0 33 30 29 26 3 28 27 1 2 0 14 0 0 19 26 6 48 196
- 33 32 31 30 29 28 27 26 8 13 6 12 25 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ccedilla" xMin="116" yMin="-432" xMax="1352" yMax="1517">
- <contour>
- <pt x="1352" y="76" on="1"/>
- <pt x="1123" y="-37" on="0"/>
- <pt x="862" y="-37" on="1"/>
- <pt x="497" y="-37" on="0"/>
- <pt x="307" y="161" on="1"/>
- <pt x="116" y="359" on="0"/>
- <pt x="116" y="738" on="1"/>
- <pt x="116" y="1116" on="0"/>
- <pt x="310" y="1317" on="1"/>
- <pt x="504" y="1517" on="0"/>
- <pt x="871" y="1517" on="1"/>
- <pt x="1076" y="1517" on="0"/>
- <pt x="1350" y="1452" on="1"/>
- <pt x="1350" y="1255" on="1"/>
- <pt x="1039" y="1360" on="0"/>
- <pt x="860" y="1360" on="1"/>
- <pt x="609" y="1360" on="0"/>
- <pt x="475" y="1200" on="1"/>
- <pt x="341" y="1041" on="0"/>
- <pt x="341" y="740" on="1"/>
- <pt x="341" y="446" on="0"/>
- <pt x="484" y="287" on="1"/>
- <pt x="627" y="127" on="0"/>
- <pt x="886" y="127" on="1"/>
- <pt x="1103" y="127" on="0"/>
- <pt x="1352" y="256" on="1"/>
- </contour>
- <contour>
- <pt x="767" y="0" on="1"/>
- <pt x="864" y="0" on="1"/>
- <pt x="804" y="-109" on="1"/>
- <pt x="876" y="-111" on="0"/>
- <pt x="928" y="-148" on="1"/>
- <pt x="998" y="-197" on="0"/>
- <pt x="998" y="-269" on="1"/>
- <pt x="998" y="-337" on="0"/>
- <pt x="939" y="-384" on="1"/>
- <pt x="880" y="-432" on="0"/>
- <pt x="795" y="-432" on="1"/>
- <pt x="728" y="-432" on="0"/>
- <pt x="651" y="-411" on="1"/>
- <pt x="651" y="-330" on="1"/>
- <pt x="701" y="-345" on="0"/>
- <pt x="755" y="-345" on="1"/>
- <pt x="859" y="-345" on="0"/>
- <pt x="859" y="-271" on="1"/>
- <pt x="859" y="-178" on="0"/>
- <pt x="672" y="-175" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 0 0 41 44 36 23 29 2 15 29 10 48 196 10 0 2 2 1 1 25 13 12 0 4 0
- 2 3 0 0 1 45 39 38 28 27 26 6 13 36 2 0 14 0 0 43 42 32 19 26 6
- 48 196 45 39 38 28 27 26 6 13 32 6 12 25 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ccircumflex" xMin="116" yMin="-37" xMax="1352" yMax="1925">
- <contour>
- <pt x="1352" y="76" on="1"/>
- <pt x="1123" y="-37" on="0"/>
- <pt x="862" y="-37" on="1"/>
- <pt x="497" y="-37" on="0"/>
- <pt x="307" y="161" on="1"/>
- <pt x="116" y="359" on="0"/>
- <pt x="116" y="738" on="1"/>
- <pt x="116" y="1116" on="0"/>
- <pt x="310" y="1317" on="1"/>
- <pt x="504" y="1517" on="0"/>
- <pt x="871" y="1517" on="1"/>
- <pt x="1076" y="1517" on="0"/>
- <pt x="1350" y="1452" on="1"/>
- <pt x="1350" y="1255" on="1"/>
- <pt x="1039" y="1360" on="0"/>
- <pt x="860" y="1360" on="1"/>
- <pt x="609" y="1360" on="0"/>
- <pt x="475" y="1200" on="1"/>
- <pt x="341" y="1041" on="0"/>
- <pt x="341" y="740" on="1"/>
- <pt x="341" y="446" on="0"/>
- <pt x="484" y="287" on="1"/>
- <pt x="627" y="127" on="0"/>
- <pt x="886" y="127" on="1"/>
- <pt x="1103" y="127" on="0"/>
- <pt x="1352" y="256" on="1"/>
- </contour>
- <contour>
- <pt x="503" y="1604" on="1"/>
- <pt x="744" y="1925" on="1"/>
- <pt x="962" y="1925" on="1"/>
- <pt x="1203" y="1604" on="1"/>
- <pt x="1055" y="1604" on="1"/>
- <pt x="854" y="1806" on="1"/>
- <pt x="852" y="1806" on="1"/>
- <pt x="651" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 70 values pushed */
- 0 0 23 29 2 15 29 10 48 196 10 0 2 2 32 31 2 27 26 3 1 1 25 13 12
- 0 4 0 2 3 0 0 28 27 1 33 30 29 26 3 2 0 14 0 0 19 26 6 48 196
- 33 32 31 30 29 28 27 26 8 13 6 12 25 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Cdotaccent" xMin="116" yMin="-37" xMax="1352" yMax="1801">
- <contour>
- <pt x="1352" y="76" on="1"/>
- <pt x="1123" y="-37" on="0"/>
- <pt x="862" y="-37" on="1"/>
- <pt x="497" y="-37" on="0"/>
- <pt x="307" y="161" on="1"/>
- <pt x="116" y="359" on="0"/>
- <pt x="116" y="738" on="1"/>
- <pt x="116" y="1116" on="0"/>
- <pt x="310" y="1317" on="1"/>
- <pt x="504" y="1517" on="0"/>
- <pt x="871" y="1517" on="1"/>
- <pt x="1076" y="1517" on="0"/>
- <pt x="1350" y="1452" on="1"/>
- <pt x="1350" y="1255" on="1"/>
- <pt x="1039" y="1360" on="0"/>
- <pt x="860" y="1360" on="1"/>
- <pt x="609" y="1360" on="0"/>
- <pt x="475" y="1200" on="1"/>
- <pt x="341" y="1041" on="0"/>
- <pt x="341" y="740" on="1"/>
- <pt x="341" y="446" on="0"/>
- <pt x="484" y="287" on="1"/>
- <pt x="627" y="127" on="0"/>
- <pt x="886" y="127" on="1"/>
- <pt x="1103" y="127" on="0"/>
- <pt x="1352" y="256" on="1"/>
- </contour>
- <contour>
- <pt x="754" y="1604" on="1"/>
- <pt x="754" y="1801" on="1"/>
- <pt x="951" y="1801" on="1"/>
- <pt x="951" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 73 values pushed */
- 0 0 23 29 2 15 29 10 48 196 10 0 2 2 1 1 25 13 12 0 4 0 2 3 0
- 0 0 0 29 26 5 1 27 1 4 48 196 28 27 1 0 14 0 0 19 26 6 48 196 6
- 26 0 0 27 26 4 1 28 1 4 48 196 29 28 1 25 0 1 13 12 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="D" xMin="165" yMin="0" xMax="1386" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="639" y="1480" on="1"/>
- <pt x="1386" y="1480" on="0"/>
- <pt x="1386" y="774" on="1"/>
- <pt x="1386" y="406" on="0"/>
- <pt x="1191" y="203" on="1"/>
- <pt x="997" y="0" on="0"/>
- <pt x="642" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="375" y="157" on="1"/>
- <pt x="627" y="157" on="1"/>
- <pt x="1161" y="157" on="0"/>
- <pt x="1161" y="750" on="1"/>
- <pt x="1161" y="1099" on="0"/>
- <pt x="950" y="1242" on="1"/>
- <pt x="888" y="1284" on="0"/>
- <pt x="803" y="1302" on="1"/>
- <pt x="700" y="1323" on="0"/>
- <pt x="530" y="1323" on="1"/>
- <pt x="375" y="1323" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 54 values pushed */
- 0 0 19 18 15 1 1 10 9 15 1 0 2 4 48 196 8 0 1 0 2 1 0 14 0
- 0 12 26 4 48 196 18 10 8 2 4 13 4 9 0 0 19 9 33 1 0 1 4 48 196
- 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Dcaron" xMin="165" yMin="0" xMax="1386" yMax="1925">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="639" y="1480" on="1"/>
- <pt x="1386" y="1480" on="0"/>
- <pt x="1386" y="774" on="1"/>
- <pt x="1386" y="406" on="0"/>
- <pt x="1191" y="203" on="1"/>
- <pt x="997" y="0" on="0"/>
- <pt x="642" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="375" y="157" on="1"/>
- <pt x="627" y="157" on="1"/>
- <pt x="1161" y="157" on="0"/>
- <pt x="1161" y="750" on="1"/>
- <pt x="1161" y="1099" on="0"/>
- <pt x="950" y="1242" on="1"/>
- <pt x="888" y="1284" on="0"/>
- <pt x="803" y="1302" on="1"/>
- <pt x="700" y="1323" on="0"/>
- <pt x="530" y="1323" on="1"/>
- <pt x="375" y="1323" on="1"/>
- </contour>
- <contour>
- <pt x="1032" y="1925" on="1"/>
- <pt x="791" y="1604" on="1"/>
- <pt x="573" y="1604" on="1"/>
- <pt x="332" y="1925" on="1"/>
- <pt x="480" y="1925" on="1"/>
- <pt x="681" y="1723" on="1"/>
- <pt x="683" y="1723" on="1"/>
- <pt x="884" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 26 25 2 20 21 3 0 0 19 18 15 1 1 10 9 15 1 0 2 4 48 196 27 24 23
- 20 3 22 21 1 8 0 1 3 0 2 1 0 14 0 0 12 26 4 48 196 23 9 0 2
- 27 26 25 24 22 21 20 18 10 8 2 11 13 4 9 0 0 19 9 33 1 0 1 4 48
- 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Dcroat" xMin="5" yMin="0" xMax="1386" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="679" on="1"/>
- <pt x="5" y="679" on="1"/>
- <pt x="5" y="836" on="1"/>
- <pt x="165" y="836" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="639" y="1480" on="1"/>
- <pt x="1386" y="1480" on="0"/>
- <pt x="1386" y="774" on="1"/>
- <pt x="1386" y="406" on="0"/>
- <pt x="1191" y="203" on="1"/>
- <pt x="996" y="0" on="0"/>
- <pt x="642" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="375" y="157" on="1"/>
- <pt x="627" y="157" on="1"/>
- <pt x="1161" y="157" on="0"/>
- <pt x="1161" y="750" on="1"/>
- <pt x="1161" y="1099" on="0"/>
- <pt x="950" y="1242" on="1"/>
- <pt x="888" y="1284" on="0"/>
- <pt x="803" y="1302" on="1"/>
- <pt x="700" y="1323" on="0"/>
- <pt x="530" y="1323" on="1"/>
- <pt x="375" y="1323" on="1"/>
- <pt x="375" y="836" on="1"/>
- <pt x="708" y="836" on="1"/>
- <pt x="708" y="679" on="1"/>
- <pt x="375" y="679" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 0 0 23 22 15 1 5 27 26 2 1 15 3 3 14 13 15 1 0 3 4 48 196 25 24
- 4 3 3 12 0 1 2 0 6 5 0 14 0 0 16 26 8 48 196 22 14 12 6 4 25
- 13 3 8 25 0 0 27 24 23 13 33 3 0 1 4 48 196 26 25 1 5 4 1 0 3
- 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="E" xMin="191" yMin="0" xMax="1308" yMax="1480">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="1264" y="1480" on="1"/>
- <pt x="1264" y="1323" on="1"/>
- <pt x="401" y="1323" on="1"/>
- <pt x="401" y="848" on="1"/>
- <pt x="1165" y="848" on="1"/>
- <pt x="1165" y="693" on="1"/>
- <pt x="401" y="693" on="1"/>
- <pt x="401" y="157" on="1"/>
- <pt x="1308" y="157" on="1"/>
- <pt x="1308" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 60 values pushed */
- 0 0 4 3 15 1 1 8 7 15 1 5 10 9 15 1 0 3 4 48 196 6 5 1 11
- 0 1 2 0 2 1 0 14 0 0 9 8 5 4 33 3 0 1 4 48 196 11 10 1 3
- 2 1 7 6 1 1 0 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Eacute" xMin="191" yMin="0" xMax="1308" yMax="1925">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="1264" y="1480" on="1"/>
- <pt x="1264" y="1323" on="1"/>
- <pt x="401" y="1323" on="1"/>
- <pt x="401" y="848" on="1"/>
- <pt x="1165" y="848" on="1"/>
- <pt x="1165" y="693" on="1"/>
- <pt x="401" y="693" on="1"/>
- <pt x="401" y="157" on="1"/>
- <pt x="1308" y="157" on="1"/>
- <pt x="1308" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="598" y="1604" on="1"/>
- <pt x="839" y="1925" on="1"/>
- <pt x="1067" y="1925" on="1"/>
- <pt x="746" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 0 0 4 3 15 1 1 8 7 15 1 5 10 9 15 1 0 3 4 48 196 14 13 1 15
- 12 1 6 5 1 11 0 1 4 0 2 1 0 14 15 14 13 12 4 6 4 3 0 0 9
- 8 5 4 33 3 0 1 4 48 196 11 10 1 3 2 1 7 6 1 1 0 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ebreve" xMin="191" yMin="0" xMax="1308" yMax="1925">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="1264" y="1480" on="1"/>
- <pt x="1264" y="1323" on="1"/>
- <pt x="401" y="1323" on="1"/>
- <pt x="401" y="848" on="1"/>
- <pt x="1165" y="848" on="1"/>
- <pt x="1165" y="693" on="1"/>
- <pt x="401" y="693" on="1"/>
- <pt x="401" y="157" on="1"/>
- <pt x="1308" y="157" on="1"/>
- <pt x="1308" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="404" y="1925" on="1"/>
- <pt x="527" y="1925" on="1"/>
- <pt x="548" y="1831" on="0"/>
- <pt x="602" y="1791" on="1"/>
- <pt x="654" y="1752" on="0"/>
- <pt x="737" y="1752" on="1"/>
- <pt x="831" y="1752" on="0"/>
- <pt x="885" y="1801" on="1"/>
- <pt x="928" y="1841" on="0"/>
- <pt x="947" y="1925" on="1"/>
- <pt x="1070" y="1925" on="1"/>
- <pt x="1054" y="1791" on="0"/>
- <pt x="981" y="1710" on="1"/>
- <pt x="887" y="1604" on="0"/>
- <pt x="737" y="1604" on="1"/>
- <pt x="580" y="1604" on="0"/>
- <pt x="485" y="1719" on="1"/>
- <pt x="420" y="1797" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 0 0 17 40 26 48 196 22 21 13 12 4 13 26 1 0 0 4 3 15 1 1 8 7 15
- 1 5 10 9 15 1 0 3 4 48 196 6 5 1 11 0 1 2 0 2 1 0 14 22 21
- 13 12 4 6 4 3 0 0 9 8 5 4 33 3 0 1 4 48 196 11 10 1 3 2 1
- 7 6 1 1 0 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ecaron" xMin="191" yMin="0" xMax="1308" yMax="1925">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="1264" y="1480" on="1"/>
- <pt x="1264" y="1323" on="1"/>
- <pt x="401" y="1323" on="1"/>
- <pt x="401" y="848" on="1"/>
- <pt x="1165" y="848" on="1"/>
- <pt x="1165" y="693" on="1"/>
- <pt x="401" y="693" on="1"/>
- <pt x="401" y="157" on="1"/>
- <pt x="1308" y="157" on="1"/>
- <pt x="1308" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1082" y="1925" on="1"/>
- <pt x="841" y="1604" on="1"/>
- <pt x="623" y="1604" on="1"/>
- <pt x="382" y="1925" on="1"/>
- <pt x="530" y="1925" on="1"/>
- <pt x="731" y="1723" on="1"/>
- <pt x="733" y="1723" on="1"/>
- <pt x="934" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 89 values pushed */
- 18 17 2 12 13 3 0 0 4 3 15 1 1 8 7 15 1 5 10 9 15 1 0 3 4
- 48 196 19 16 15 12 3 14 13 1 6 5 1 11 0 1 4 0 2 1 0 14 19 18 17
- 16 14 13 12 7 6 4 3 15 4 0 2 0 0 9 8 5 4 33 3 0 1 4 48 196
- 11 10 1 3 2 1 7 6 1 1 0 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ecircumflex" xMin="191" yMin="0" xMax="1308" yMax="1925">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="1264" y="1480" on="1"/>
- <pt x="1264" y="1323" on="1"/>
- <pt x="401" y="1323" on="1"/>
- <pt x="401" y="848" on="1"/>
- <pt x="1165" y="848" on="1"/>
- <pt x="1165" y="693" on="1"/>
- <pt x="401" y="693" on="1"/>
- <pt x="401" y="157" on="1"/>
- <pt x="1308" y="157" on="1"/>
- <pt x="1308" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="399" y="1604" on="1"/>
- <pt x="640" y="1925" on="1"/>
- <pt x="858" y="1925" on="1"/>
- <pt x="1099" y="1604" on="1"/>
- <pt x="951" y="1604" on="1"/>
- <pt x="750" y="1806" on="1"/>
- <pt x="748" y="1806" on="1"/>
- <pt x="547" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 89 values pushed */
- 18 17 2 13 12 3 0 0 4 3 15 1 1 8 7 15 1 5 10 9 15 1 0 3 4
- 48 196 14 13 1 19 16 15 12 3 6 5 1 11 0 1 4 0 2 1 0 14 19 18 17
- 16 15 14 13 7 6 4 3 12 4 0 2 0 0 9 8 5 4 33 3 0 1 4 48 196
- 11 10 1 3 2 1 7 6 1 1 0 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Edieresis" xMin="191" yMin="0" xMax="1308" yMax="1777">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="1264" y="1480" on="1"/>
- <pt x="1264" y="1323" on="1"/>
- <pt x="401" y="1323" on="1"/>
- <pt x="401" y="848" on="1"/>
- <pt x="1165" y="848" on="1"/>
- <pt x="1165" y="693" on="1"/>
- <pt x="401" y="693" on="1"/>
- <pt x="401" y="157" on="1"/>
- <pt x="1308" y="157" on="1"/>
- <pt x="1308" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="450" y="1604" on="1"/>
- <pt x="450" y="1777" on="1"/>
- <pt x="623" y="1777" on="1"/>
- <pt x="623" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="845" y="1604" on="1"/>
- <pt x="845" y="1777" on="1"/>
- <pt x="1018" y="1777" on="1"/>
- <pt x="1018" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 88 values pushed */
- 0 0 19 16 15 12 13 3 13 4 3 15 1 1 8 7 15 1 5 10 9 15 1 0 4
- 4 48 196 18 17 14 13 3 6 5 1 11 0 1 3 0 2 1 0 14 0 0 17 16 13
- 1 18 15 14 13 1 12 9 8 5 4 33 3 0 3 4 48 196 19 18 1 13 12 1 11
- 10 1 3 2 1 7 6 1 1 0 1 6 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Edotaccent" xMin="191" yMin="0" xMax="1308" yMax="1801">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="1264" y="1480" on="1"/>
- <pt x="1264" y="1323" on="1"/>
- <pt x="401" y="1323" on="1"/>
- <pt x="401" y="848" on="1"/>
- <pt x="1165" y="848" on="1"/>
- <pt x="1165" y="693" on="1"/>
- <pt x="401" y="693" on="1"/>
- <pt x="401" y="157" on="1"/>
- <pt x="1308" y="157" on="1"/>
- <pt x="1308" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="635" y="1604" on="1"/>
- <pt x="635" y="1801" on="1"/>
- <pt x="832" y="1801" on="1"/>
- <pt x="832" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 76 values pushed */
- 0 0 15 12 5 1 13 4 3 15 1 1 8 7 15 1 5 10 9 15 1 0 4 4 48
- 196 14 13 1 6 5 1 11 0 1 3 0 2 1 0 14 0 0 15 14 4 1 12 9 8
- 5 4 33 3 0 2 4 48 196 13 12 1 11 10 1 3 2 1 7 6 1 1 0 1 5
- 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Egrave" xMin="191" yMin="0" xMax="1308" yMax="1925">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="1264" y="1480" on="1"/>
- <pt x="1264" y="1323" on="1"/>
- <pt x="401" y="1323" on="1"/>
- <pt x="401" y="848" on="1"/>
- <pt x="1165" y="848" on="1"/>
- <pt x="1165" y="693" on="1"/>
- <pt x="401" y="693" on="1"/>
- <pt x="401" y="157" on="1"/>
- <pt x="1308" y="157" on="1"/>
- <pt x="1308" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="894" y="1604" on="1"/>
- <pt x="746" y="1604" on="1"/>
- <pt x="425" y="1925" on="1"/>
- <pt x="653" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 74 values pushed */
- 0 0 4 3 15 1 1 8 7 15 1 5 10 9 15 1 0 3 4 48 196 15 14 1 13
- 12 1 6 5 1 11 0 1 4 0 2 1 0 14 15 14 13 12 4 6 4 3 0 0 9
- 8 5 4 33 3 0 1 4 48 196 11 10 1 3 2 1 7 6 1 1 0 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Emacron" xMin="191" yMin="0" xMax="1308" yMax="1752">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="1264" y="1480" on="1"/>
- <pt x="1264" y="1323" on="1"/>
- <pt x="401" y="1323" on="1"/>
- <pt x="401" y="848" on="1"/>
- <pt x="1165" y="848" on="1"/>
- <pt x="1165" y="693" on="1"/>
- <pt x="401" y="693" on="1"/>
- <pt x="401" y="157" on="1"/>
- <pt x="1308" y="157" on="1"/>
- <pt x="1308" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="401" y="1604" on="1"/>
- <pt x="401" y="1752" on="1"/>
- <pt x="1043" y="1752" on="1"/>
- <pt x="1043" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 0 0 15 12 7 1 13 4 3 15 1 1 8 7 15 1 5 10 9 15 1 0 4 4 48
- 196 14 13 1 6 5 1 11 0 1 3 0 2 1 0 14 0 0 13 12 9 8 5 4 33
- 5 0 1 4 48 196 15 14 1 13 12 9 8 5 4 5 11 10 1 3 2 1 7 6 1
- 1 0 1 6 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Eng" xMin="165" yMin="-420" xMax="1313" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="370" y="1480" on="1"/>
- <pt x="1133" y="337" on="1"/>
- <pt x="1133" y="1480" on="1"/>
- <pt x="1313" y="1480" on="1"/>
- <pt x="1313" y="-92" on="1"/>
- <pt x="1313" y="-420" on="0"/>
- <pt x="995" y="-420" on="1"/>
- <pt x="921" y="-420" on="0"/>
- <pt x="844" y="-399" on="1"/>
- <pt x="844" y="-245" on="1"/>
- <pt x="910" y="-272" on="0"/>
- <pt x="985" y="-272" on="1"/>
- <pt x="1133" y="-272" on="0"/>
- <pt x="1133" y="-55" on="1"/>
- <pt x="1133" y="-40" on="1"/>
- <pt x="345" y="1143" on="1"/>
- <pt x="345" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 66 values pushed */
- 0 0 13 40 8 48 196 17 3 2 1 0 3 16 15 11 10 6 5 13 8 0 18 0 1
- 0 5 4 2 1 0 3 14 2 10 17 2 0 0 16 15 4 3 24 3 5 18 17 24 1
- 0 2 4 48 196 6 5 1 11 10 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Eogonek" xMin="191" yMin="-370" xMax="1308" yMax="1480">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="1264" y="1480" on="1"/>
- <pt x="1264" y="1323" on="1"/>
- <pt x="401" y="1323" on="1"/>
- <pt x="401" y="848" on="1"/>
- <pt x="1165" y="848" on="1"/>
- <pt x="1165" y="693" on="1"/>
- <pt x="401" y="693" on="1"/>
- <pt x="401" y="157" on="1"/>
- <pt x="1308" y="157" on="1"/>
- <pt x="1308" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1075" y="0" on="1"/>
- <pt x="1182" y="0" on="1"/>
- <pt x="1054" y="-81" on="0"/>
- <pt x="1054" y="-179" on="1"/>
- <pt x="1054" y="-275" on="0"/>
- <pt x="1169" y="-275" on="1"/>
- <pt x="1222" y="-275" on="0"/>
- <pt x="1259" y="-260" on="1"/>
- <pt x="1259" y="-341" on="1"/>
- <pt x="1197" y="-370" on="0"/>
- <pt x="1120" y="-370" on="1"/>
- <pt x="917" y="-370" on="0"/>
- <pt x="917" y="-212" on="1"/>
- <pt x="917" y="-90" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 94 values pushed */
- 0 0 17 21 22 48 196 20 19 22 0 0 0 4 3 15 1 1 8 7 15 1 5 10 9
- 15 1 0 3 4 48 196 6 5 1 13 12 11 0 3 2 0 2 1 0 14 0 0 15 42
- 24 48 196 20 19 13 3 2 6 3 24 24 12 2 6 4 3 0 0 9 8 5 4 33 3
- 0 1 4 48 196 11 10 1 3 2 1 7 6 1 1 0 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Eth" xMin="5" yMin="0" xMax="1386" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="679" on="1"/>
- <pt x="5" y="679" on="1"/>
- <pt x="5" y="836" on="1"/>
- <pt x="165" y="836" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="639" y="1480" on="1"/>
- <pt x="1386" y="1480" on="0"/>
- <pt x="1386" y="774" on="1"/>
- <pt x="1386" y="406" on="0"/>
- <pt x="1191" y="203" on="1"/>
- <pt x="996" y="0" on="0"/>
- <pt x="642" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="375" y="157" on="1"/>
- <pt x="627" y="157" on="1"/>
- <pt x="1161" y="157" on="0"/>
- <pt x="1161" y="750" on="1"/>
- <pt x="1161" y="1099" on="0"/>
- <pt x="950" y="1242" on="1"/>
- <pt x="888" y="1284" on="0"/>
- <pt x="803" y="1302" on="1"/>
- <pt x="700" y="1323" on="0"/>
- <pt x="530" y="1323" on="1"/>
- <pt x="375" y="1323" on="1"/>
- <pt x="375" y="836" on="1"/>
- <pt x="708" y="836" on="1"/>
- <pt x="708" y="679" on="1"/>
- <pt x="375" y="679" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 0 0 23 22 15 1 5 27 26 2 1 15 3 3 14 13 15 1 0 3 4 48 196 25 24
- 4 3 3 12 0 1 2 0 6 5 0 14 0 0 16 26 8 48 196 22 14 12 6 4 25
- 13 3 8 25 0 0 27 24 23 13 33 3 0 1 4 48 196 26 25 1 5 4 1 0 3
- 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Euro" xMin="0" yMin="-37" xMax="1080" yMax="1515">
- <contour>
- <pt x="377" y="537" on="1"/>
- <pt x="416" y="376" on="0"/>
- <pt x="475" y="288" on="1"/>
- <pt x="582" y="127" on="0"/>
- <pt x="773" y="127" on="1"/>
- <pt x="898" y="127" on="0"/>
- <pt x="1080" y="199" on="1"/>
- <pt x="1080" y="27" on="1"/>
- <pt x="884" y="-37" on="0"/>
- <pt x="748" y="-37" on="1"/>
- <pt x="516" y="-37" on="0"/>
- <pt x="372" y="100" on="1"/>
- <pt x="270" y="197" on="0"/>
- <pt x="219" y="357" on="1"/>
- <pt x="200" y="415" on="0"/>
- <pt x="177" y="537" on="1"/>
- <pt x="0" y="537" on="1"/>
- <pt x="51" y="660" on="1"/>
- <pt x="162" y="660" on="1"/>
- <pt x="160" y="735" on="1"/>
- <pt x="160" y="739" on="0"/>
- <pt x="161" y="758" on="1"/>
- <pt x="162" y="801" on="0"/>
- <pt x="165" y="857" on="1"/>
- <pt x="0" y="857" on="1"/>
- <pt x="51" y="981" on="1"/>
- <pt x="183" y="981" on="1"/>
- <pt x="223" y="1147" on="0"/>
- <pt x="271" y="1232" on="1"/>
- <pt x="429" y="1515" on="0"/>
- <pt x="782" y="1515" on="1"/>
- <pt x="908" y="1515" on="0"/>
- <pt x="1079" y="1471" on="1"/>
- <pt x="1079" y="1289" on="1"/>
- <pt x="911" y="1360" on="0"/>
- <pt x="784" y="1360" on="1"/>
- <pt x="607" y="1360" on="0"/>
- <pt x="502" y="1232" on="1"/>
- <pt x="442" y="1158" on="0"/>
- <pt x="410" y="1066" on="1"/>
- <pt x="397" y="1030" on="0"/>
- <pt x="383" y="981" on="1"/>
- <pt x="950" y="981" on="1"/>
- <pt x="899" y="857" on="1"/>
- <pt x="362" y="857" on="1"/>
- <pt x="358" y="783" on="0"/>
- <pt x="357" y="736" on="1"/>
- <pt x="359" y="660" on="1"/>
- <pt x="818" y="660" on="1"/>
- <pt x="767" y="537" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 90 values pushed */
- 0 0 35 35 30 4 45 9 48 196 30 0 9 2 1 33 32 2 0 25 3 0 1 7 6
- 2 0 2 3 0 0 0 44 43 24 23 6 3 25 49 16 15 0 6 3 17 2 4 48 196
- 42 41 26 25 3 48 47 18 17 3 2 0 14 49 48 47 44 43 42 41 26 25 24 23 18
- 17 16 15 0 16 13 32 7 6 1 33 32 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Euro#1" xMin="0" yMin="-37" xMax="1080" yMax="1515">
- <contour>
- <pt x="377" y="537" on="1"/>
- <pt x="416" y="376" on="0"/>
- <pt x="475" y="288" on="1"/>
- <pt x="582" y="127" on="0"/>
- <pt x="773" y="127" on="1"/>
- <pt x="898" y="127" on="0"/>
- <pt x="1080" y="199" on="1"/>
- <pt x="1080" y="27" on="1"/>
- <pt x="884" y="-37" on="0"/>
- <pt x="748" y="-37" on="1"/>
- <pt x="516" y="-37" on="0"/>
- <pt x="372" y="100" on="1"/>
- <pt x="270" y="197" on="0"/>
- <pt x="219" y="357" on="1"/>
- <pt x="200" y="415" on="0"/>
- <pt x="177" y="537" on="1"/>
- <pt x="0" y="537" on="1"/>
- <pt x="51" y="660" on="1"/>
- <pt x="162" y="660" on="1"/>
- <pt x="160" y="735" on="1"/>
- <pt x="160" y="739" on="0"/>
- <pt x="161" y="758" on="1"/>
- <pt x="162" y="801" on="0"/>
- <pt x="165" y="857" on="1"/>
- <pt x="0" y="857" on="1"/>
- <pt x="51" y="981" on="1"/>
- <pt x="183" y="981" on="1"/>
- <pt x="223" y="1147" on="0"/>
- <pt x="271" y="1232" on="1"/>
- <pt x="429" y="1515" on="0"/>
- <pt x="782" y="1515" on="1"/>
- <pt x="908" y="1515" on="0"/>
- <pt x="1079" y="1471" on="1"/>
- <pt x="1079" y="1289" on="1"/>
- <pt x="911" y="1360" on="0"/>
- <pt x="784" y="1360" on="1"/>
- <pt x="607" y="1360" on="0"/>
- <pt x="502" y="1232" on="1"/>
- <pt x="442" y="1158" on="0"/>
- <pt x="410" y="1066" on="1"/>
- <pt x="397" y="1030" on="0"/>
- <pt x="383" y="981" on="1"/>
- <pt x="950" y="981" on="1"/>
- <pt x="899" y="857" on="1"/>
- <pt x="362" y="857" on="1"/>
- <pt x="358" y="783" on="0"/>
- <pt x="357" y="736" on="1"/>
- <pt x="359" y="660" on="1"/>
- <pt x="818" y="660" on="1"/>
- <pt x="767" y="537" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 90 values pushed */
- 0 0 35 35 30 4 45 9 48 196 30 0 9 2 1 33 32 2 0 25 3 0 1 7 6
- 2 0 2 3 0 0 0 44 43 24 23 6 3 25 49 16 15 0 6 3 17 2 4 48 196
- 42 41 26 25 3 48 47 18 17 3 2 0 14 49 48 47 44 43 42 41 26 25 24 23 18
- 17 16 15 0 16 13 32 7 6 1 33 32 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="F" xMin="191" yMin="0" xMax="1196" yMax="1480">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="1196" y="1480" on="1"/>
- <pt x="1196" y="1323" on="1"/>
- <pt x="401" y="1323" on="1"/>
- <pt x="401" y="827" on="1"/>
- <pt x="1096" y="827" on="1"/>
- <pt x="1096" y="672" on="1"/>
- <pt x="401" y="672" on="1"/>
- <pt x="401" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 52 values pushed */
- 0 0 4 3 15 1 1 8 7 15 1 5 2 4 48 196 6 5 1 9 0 1 2 0 2
- 1 0 14 0 0 9 8 5 4 33 3 0 1 4 48 196 3 2 1 7 6 1 1 0 1
- 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="G" xMin="93" yMin="-37" xMax="1405" yMax="1517">
- <contour>
- <pt x="1405" y="688" on="1"/>
- <pt x="1405" y="40" on="1"/>
- <pt x="1131" y="-37" on="0"/>
- <pt x="871" y="-37" on="1"/>
- <pt x="93" y="-37" on="0"/>
- <pt x="93" y="735" on="1"/>
- <pt x="93" y="1113" on="0"/>
- <pt x="294" y="1315" on="1"/>
- <pt x="496" y="1517" on="0"/>
- <pt x="877" y="1517" on="1"/>
- <pt x="1123" y="1517" on="0"/>
- <pt x="1403" y="1450" on="1"/>
- <pt x="1403" y="1256" on="1"/>
- <pt x="1082" y="1360" on="0"/>
- <pt x="868" y="1360" on="1"/>
- <pt x="318" y="1360" on="0"/>
- <pt x="318" y="744" on="1"/>
- <pt x="318" y="440" on="0"/>
- <pt x="470" y="280" on="1"/>
- <pt x="621" y="120" on="0"/>
- <pt x="900" y="120" on="1"/>
- <pt x="1015" y="120" on="0"/>
- <pt x="1196" y="157" on="1"/>
- <pt x="1196" y="534" on="1"/>
- <pt x="949" y="534" on="1"/>
- <pt x="949" y="688" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 0 0 20 29 3 14 29 9 48 196 9 0 3 2 1 12 11 2 0 0 3 0 1 22 1
- 2 23 2 3 0 0 0 24 23 15 1 0 1 4 48 196 25 0 1 0 14 0 0 16 26
- 5 48 196 5 24 0 0 23 22 33 1 0 1 4 48 196 1 0 1 12 11 1 25 24 1
- 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Gbreve" xMin="93" yMin="-37" xMax="1405" yMax="1925">
- <contour>
- <pt x="1405" y="688" on="1"/>
- <pt x="1405" y="40" on="1"/>
- <pt x="1131" y="-37" on="0"/>
- <pt x="871" y="-37" on="1"/>
- <pt x="93" y="-37" on="0"/>
- <pt x="93" y="735" on="1"/>
- <pt x="93" y="1113" on="0"/>
- <pt x="294" y="1315" on="1"/>
- <pt x="496" y="1517" on="0"/>
- <pt x="877" y="1517" on="1"/>
- <pt x="1123" y="1517" on="0"/>
- <pt x="1403" y="1450" on="1"/>
- <pt x="1403" y="1256" on="1"/>
- <pt x="1082" y="1360" on="0"/>
- <pt x="868" y="1360" on="1"/>
- <pt x="318" y="1360" on="0"/>
- <pt x="318" y="744" on="1"/>
- <pt x="318" y="440" on="0"/>
- <pt x="470" y="280" on="1"/>
- <pt x="621" y="120" on="0"/>
- <pt x="900" y="120" on="1"/>
- <pt x="1015" y="120" on="0"/>
- <pt x="1196" y="157" on="1"/>
- <pt x="1196" y="534" on="1"/>
- <pt x="949" y="534" on="1"/>
- <pt x="949" y="688" on="1"/>
- </contour>
- <contour>
- <pt x="534" y="1925" on="1"/>
- <pt x="657" y="1925" on="1"/>
- <pt x="678" y="1831" on="0"/>
- <pt x="732" y="1791" on="1"/>
- <pt x="784" y="1752" on="0"/>
- <pt x="867" y="1752" on="1"/>
- <pt x="961" y="1752" on="0"/>
- <pt x="1015" y="1801" on="1"/>
- <pt x="1058" y="1841" on="0"/>
- <pt x="1077" y="1925" on="1"/>
- <pt x="1200" y="1925" on="1"/>
- <pt x="1184" y="1791" on="0"/>
- <pt x="1111" y="1710" on="1"/>
- <pt x="1017" y="1604" on="0"/>
- <pt x="867" y="1604" on="1"/>
- <pt x="710" y="1604" on="0"/>
- <pt x="615" y="1719" on="1"/>
- <pt x="550" y="1797" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 100 values pushed */
- 0 0 31 40 40 20 29 3 14 29 9 48 196 9 0 3 2 1 12 11 2 0 0 3 0
- 1 22 1 2 23 2 3 0 1 36 35 27 26 4 13 40 0 0 0 0 24 23 15 1 0
- 1 4 48 196 25 0 1 0 14 0 0 16 26 5 48 196 36 11 22 2 35 22 24 2 27
- 26 5 24 0 0 23 22 33 1 0 1 4 48 196 1 0 1 12 11 1 25 24 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Gcircumflex" xMin="93" yMin="-37" xMax="1405" yMax="1925">
- <contour>
- <pt x="1405" y="688" on="1"/>
- <pt x="1405" y="40" on="1"/>
- <pt x="1131" y="-37" on="0"/>
- <pt x="871" y="-37" on="1"/>
- <pt x="93" y="-37" on="0"/>
- <pt x="93" y="735" on="1"/>
- <pt x="93" y="1113" on="0"/>
- <pt x="294" y="1315" on="1"/>
- <pt x="496" y="1517" on="0"/>
- <pt x="877" y="1517" on="1"/>
- <pt x="1123" y="1517" on="0"/>
- <pt x="1403" y="1450" on="1"/>
- <pt x="1403" y="1256" on="1"/>
- <pt x="1082" y="1360" on="0"/>
- <pt x="868" y="1360" on="1"/>
- <pt x="318" y="1360" on="0"/>
- <pt x="318" y="744" on="1"/>
- <pt x="318" y="440" on="0"/>
- <pt x="470" y="280" on="1"/>
- <pt x="621" y="120" on="0"/>
- <pt x="900" y="120" on="1"/>
- <pt x="1015" y="120" on="0"/>
- <pt x="1196" y="157" on="1"/>
- <pt x="1196" y="534" on="1"/>
- <pt x="949" y="534" on="1"/>
- <pt x="949" y="688" on="1"/>
- </contour>
- <contour>
- <pt x="517" y="1604" on="1"/>
- <pt x="758" y="1925" on="1"/>
- <pt x="976" y="1925" on="1"/>
- <pt x="1217" y="1604" on="1"/>
- <pt x="1069" y="1604" on="1"/>
- <pt x="868" y="1806" on="1"/>
- <pt x="866" y="1806" on="1"/>
- <pt x="665" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 109 values pushed */
- 0 0 20 29 3 14 29 9 48 196 9 0 3 2 32 31 2 27 26 3 1 12 11 2 0
- 0 3 0 1 22 1 2 23 2 3 0 0 0 24 23 15 1 0 1 4 48 196 28 27 1
- 33 30 29 26 3 25 0 1 3 0 14 0 0 16 26 5 48 196 29 11 22 2 30 28 2
- 22 24 3 33 32 31 27 26 5 13 5 24 0 0 23 22 33 1 0 1 4 48 196 1 0
- 1 12 11 1 25 24 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Gcommaaccent" xMin="93" yMin="-432" xMax="1405" yMax="1517">
- <contour>
- <pt x="1405" y="688" on="1"/>
- <pt x="1405" y="40" on="1"/>
- <pt x="1128" y="-37" on="0"/>
- <pt x="871" y="-37" on="1"/>
- <pt x="93" y="-37" on="0"/>
- <pt x="93" y="735" on="1"/>
- <pt x="93" y="1113" on="0"/>
- <pt x="294" y="1315" on="1"/>
- <pt x="496" y="1517" on="0"/>
- <pt x="877" y="1517" on="1"/>
- <pt x="1123" y="1517" on="0"/>
- <pt x="1403" y="1450" on="1"/>
- <pt x="1403" y="1256" on="1"/>
- <pt x="1082" y="1360" on="0"/>
- <pt x="868" y="1360" on="1"/>
- <pt x="318" y="1360" on="0"/>
- <pt x="318" y="744" on="1"/>
- <pt x="318" y="440" on="0"/>
- <pt x="470" y="280" on="1"/>
- <pt x="621" y="120" on="0"/>
- <pt x="900" y="120" on="1"/>
- <pt x="1016" y="120" on="0"/>
- <pt x="1196" y="157" on="1"/>
- <pt x="1196" y="534" on="1"/>
- <pt x="949" y="534" on="1"/>
- <pt x="949" y="688" on="1"/>
- </contour>
- <contour>
- <pt x="700" y="-421" on="1"/>
- <pt x="700" y="-336" on="1"/>
- <pt x="757" y="-345" on="0"/>
- <pt x="798" y="-345" on="1"/>
- <pt x="907" y="-345" on="0"/>
- <pt x="907" y="-278" on="1"/>
- <pt x="907" y="-204" on="0"/>
- <pt x="749" y="-188" on="1"/>
- <pt x="749" y="-111" on="1"/>
- <pt x="883" y="-114" on="0"/>
- <pt x="949" y="-143" on="1"/>
- <pt x="1042" y="-185" on="0"/>
- <pt x="1042" y="-280" on="1"/>
- <pt x="1042" y="-432" on="0"/>
- <pt x="825" y="-432" on="1"/>
- <pt x="765" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 104 values pushed */
- 0 0 29 44 40 20 29 3 14 29 9 48 196 9 0 3 2 1 12 11 2 0 0 3 0
- 1 22 1 2 23 2 3 0 1 34 33 27 26 4 13 40 2 0 0 0 24 23 15 1 0
- 1 4 48 196 25 0 1 0 14 0 0 31 42 38 16 26 5 48 196 38 38 22 24 2 34
- 33 27 26 4 13 5 24 0 0 23 22 33 1 0 1 4 48 196 1 0 1 12 11 1 25
- 24 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Gdotaccent" xMin="93" yMin="-37" xMax="1405" yMax="1801">
- <contour>
- <pt x="1405" y="688" on="1"/>
- <pt x="1405" y="40" on="1"/>
- <pt x="1131" y="-37" on="0"/>
- <pt x="871" y="-37" on="1"/>
- <pt x="93" y="-37" on="0"/>
- <pt x="93" y="735" on="1"/>
- <pt x="93" y="1113" on="0"/>
- <pt x="294" y="1315" on="1"/>
- <pt x="496" y="1517" on="0"/>
- <pt x="877" y="1517" on="1"/>
- <pt x="1123" y="1517" on="0"/>
- <pt x="1403" y="1450" on="1"/>
- <pt x="1403" y="1256" on="1"/>
- <pt x="1082" y="1360" on="0"/>
- <pt x="868" y="1360" on="1"/>
- <pt x="318" y="1360" on="0"/>
- <pt x="318" y="744" on="1"/>
- <pt x="318" y="440" on="0"/>
- <pt x="470" y="280" on="1"/>
- <pt x="621" y="120" on="0"/>
- <pt x="900" y="120" on="1"/>
- <pt x="1015" y="120" on="0"/>
- <pt x="1196" y="157" on="1"/>
- <pt x="1196" y="534" on="1"/>
- <pt x="949" y="534" on="1"/>
- <pt x="949" y="688" on="1"/>
- </contour>
- <contour>
- <pt x="768" y="1604" on="1"/>
- <pt x="768" y="1801" on="1"/>
- <pt x="965" y="1801" on="1"/>
- <pt x="965" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 94 values pushed */
- 0 0 20 29 3 14 29 9 48 196 9 0 3 2 1 12 11 2 0 0 3 0 1 22 1
- 2 23 2 3 0 0 0 29 26 5 1 27 24 23 15 1 0 2 4 48 196 28 27 1 25
- 0 1 2 0 14 0 0 16 26 5 48 196 5 26 0 0 27 26 4 1 28 23 22 33 1
- 0 2 4 48 196 29 28 1 1 0 1 12 11 1 25 24 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="H" xMin="165" yMin="0" xMax="1313" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="375" y="1480" on="1"/>
- <pt x="375" y="856" on="1"/>
- <pt x="1104" y="856" on="1"/>
- <pt x="1104" y="1480" on="1"/>
- <pt x="1313" y="1480" on="1"/>
- <pt x="1313" y="0" on="1"/>
- <pt x="1104" y="0" on="1"/>
- <pt x="1104" y="699" on="1"/>
- <pt x="375" y="699" on="1"/>
- <pt x="375" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 56 values pushed */
- 0 0 10 9 15 1 3 1 4 48 196 4 3 1 11 8 7 0 3 2 0 6 5 2 1
- 0 3 14 0 0 9 8 5 4 33 3 6 11 10 3 2 33 3 0 2 4 48 196 7 6
- 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Hbar" xMin="17" yMin="0" xMax="1461" yMax="1480">
- <contour>
- <pt x="375" y="856" on="1"/>
- <pt x="1104" y="856" on="1"/>
- <pt x="1104" y="1110" on="1"/>
- <pt x="375" y="1110" on="1"/>
- </contour>
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1110" on="1"/>
- <pt x="17" y="1110" on="1"/>
- <pt x="17" y="1234" on="1"/>
- <pt x="165" y="1234" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="375" y="1480" on="1"/>
- <pt x="375" y="1234" on="1"/>
- <pt x="1104" y="1234" on="1"/>
- <pt x="1104" y="1480" on="1"/>
- <pt x="1313" y="1480" on="1"/>
- <pt x="1313" y="1234" on="1"/>
- <pt x="1461" y="1234" on="1"/>
- <pt x="1461" y="1110" on="1"/>
- <pt x="1313" y="1110" on="1"/>
- <pt x="1313" y="0" on="1"/>
- <pt x="1104" y="0" on="1"/>
- <pt x="1104" y="699" on="1"/>
- <pt x="375" y="699" on="1"/>
- <pt x="375" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 107 values pushed */
- 0 0 18 17 6 5 3 2 6 5 7 1 4 48 196 16 15 12 11 8 7 5 22 21 1
- 23 20 19 4 3 18 17 6 5 3 2 5 1 0 1 5 0 14 13 10 9 0 3 14 17
- 16 2 13 14 7 6 4 0 0 21 20 13 12 2 1 33 5 14 23 22 11 10 3 0 33
- 5 4 2 4 48 196 19 18 15 14 3 9 8 5 4 3 21 20 13 12 2 1 5 23 22
- 11 10 3 0 5 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Hcircumflex" xMin="165" yMin="0" xMax="1313" yMax="1925">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="375" y="1480" on="1"/>
- <pt x="375" y="856" on="1"/>
- <pt x="1104" y="856" on="1"/>
- <pt x="1104" y="1480" on="1"/>
- <pt x="1313" y="1480" on="1"/>
- <pt x="1313" y="0" on="1"/>
- <pt x="1104" y="0" on="1"/>
- <pt x="1104" y="699" on="1"/>
- <pt x="375" y="699" on="1"/>
- <pt x="375" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="389" y="1604" on="1"/>
- <pt x="630" y="1925" on="1"/>
- <pt x="848" y="1925" on="1"/>
- <pt x="1089" y="1604" on="1"/>
- <pt x="941" y="1604" on="1"/>
- <pt x="740" y="1806" on="1"/>
- <pt x="738" y="1806" on="1"/>
- <pt x="537" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 82 values pushed */
- 18 17 2 13 12 3 0 0 10 9 15 1 3 1 4 48 196 14 13 1 19 16 15 12 3
- 4 3 1 11 8 7 0 3 4 0 6 5 2 1 0 3 14 19 18 17 16 15 14 13 12
- 8 4 2 3 0 0 9 8 5 4 33 3 6 11 10 3 2 33 3 0 2 4 48 196 7
- 6 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="I" xMin="180" yMin="0" xMax="390" yMax="1480">
- <contour>
- <pt x="180" y="0" on="1"/>
- <pt x="180" y="1480" on="1"/>
- <pt x="390" y="1480" on="1"/>
- <pt x="390" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 23 values pushed */
- 3 0 1 0 2 1 0 14 0 0 3 2 33 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="IJ" xMin="180" yMin="-296" xMax="1322" yMax="1480">
- <component glyphName="I" x="0" y="0" flags="0x4"/>
- <component glyphName="J" x="482" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="Iacute" xMin="137" yMin="0" xMax="606" yMax="1925">
- <contour>
- <pt x="180" y="0" on="1"/>
- <pt x="180" y="1480" on="1"/>
- <pt x="390" y="1480" on="1"/>
- <pt x="390" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="137" y="1604" on="1"/>
- <pt x="378" y="1925" on="1"/>
- <pt x="606" y="1925" on="1"/>
- <pt x="285" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 40 values pushed */
- 6 5 1 7 4 1 3 0 1 3 0 2 1 0 14 7 5 2 2 0 3 6 2 4 0
- 0 0 3 2 33 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ibreve" xMin="-48" yMin="0" xMax="618" yMax="1925">
- <contour>
- <pt x="180" y="0" on="1"/>
- <pt x="180" y="1480" on="1"/>
- <pt x="390" y="1480" on="1"/>
- <pt x="390" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="-48" y="1925" on="1"/>
- <pt x="75" y="1925" on="1"/>
- <pt x="96" y="1831" on="0"/>
- <pt x="150" y="1791" on="1"/>
- <pt x="202" y="1752" on="0"/>
- <pt x="285" y="1752" on="1"/>
- <pt x="379" y="1752" on="0"/>
- <pt x="433" y="1801" on="1"/>
- <pt x="476" y="1841" on="0"/>
- <pt x="495" y="1925" on="1"/>
- <pt x="618" y="1925" on="1"/>
- <pt x="602" y="1791" on="0"/>
- <pt x="529" y="1710" on="1"/>
- <pt x="435" y="1604" on="0"/>
- <pt x="285" y="1604" on="1"/>
- <pt x="128" y="1604" on="0"/>
- <pt x="33" y="1719" on="1"/>
- <pt x="-32" y="1797" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 46 values pushed */
- 0 0 9 7 18 48 196 14 13 5 4 4 13 18 1 3 0 1 0 2 1 0 14 14 13
- 2 13 2 5 4 0 0 0 3 2 9 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Icircumflex" xMin="-65" yMin="0" xMax="635" yMax="1925">
- <contour>
- <pt x="180" y="0" on="1"/>
- <pt x="180" y="1480" on="1"/>
- <pt x="390" y="1480" on="1"/>
- <pt x="390" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="-65" y="1604" on="1"/>
- <pt x="176" y="1925" on="1"/>
- <pt x="394" y="1925" on="1"/>
- <pt x="635" y="1604" on="1"/>
- <pt x="487" y="1604" on="1"/>
- <pt x="286" y="1806" on="1"/>
- <pt x="284" y="1806" on="1"/>
- <pt x="83" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 56 values pushed */
- 10 9 2 5 4 3 6 5 1 11 8 7 4 3 3 0 1 3 0 2 1 0 14 10 9
- 2 2 0 3 8 7 6 3 13 2 11 5 4 3 13 0 0 0 3 2 33 1 0 1 4
- 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Idieresis" xMin="1" yMin="0" xMax="569" yMax="1777">
- <contour>
- <pt x="180" y="0" on="1"/>
- <pt x="180" y="1480" on="1"/>
- <pt x="390" y="1480" on="1"/>
- <pt x="390" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1" y="1604" on="1"/>
- <pt x="1" y="1777" on="1"/>
- <pt x="174" y="1777" on="1"/>
- <pt x="174" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="396" y="1604" on="1"/>
- <pt x="396" y="1777" on="1"/>
- <pt x="569" y="1777" on="1"/>
- <pt x="569" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 59 values pushed */
- 0 0 11 8 7 4 13 3 5 1 4 48 196 10 9 6 5 3 3 0 1 2 0 2 1
- 0 14 0 0 9 8 13 1 10 7 6 13 1 4 3 2 33 1 0 3 4 48 196 11 10
- 1 5 4 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Idotaccent" xMin="180" yMin="0" xMax="390" yMax="1801">
- <contour>
- <pt x="180" y="0" on="1"/>
- <pt x="180" y="1480" on="1"/>
- <pt x="390" y="1480" on="1"/>
- <pt x="390" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="186" y="1604" on="1"/>
- <pt x="186" y="1801" on="1"/>
- <pt x="383" y="1801" on="1"/>
- <pt x="383" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 0 0 7 4 5 1 5 1 4 48 196 6 5 1 3 0 1 2 0 2 1 0 14 0 0
- 7 6 4 1 4 3 2 33 1 0 2 4 48 196 5 4 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Igrave" xMin="-36" yMin="0" xMax="433" yMax="1925">
- <contour>
- <pt x="180" y="0" on="1"/>
- <pt x="180" y="1480" on="1"/>
- <pt x="390" y="1480" on="1"/>
- <pt x="390" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="433" y="1604" on="1"/>
- <pt x="285" y="1604" on="1"/>
- <pt x="-36" y="1925" on="1"/>
- <pt x="192" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 40 values pushed */
- 7 6 1 5 4 1 3 0 1 3 0 2 1 0 14 7 5 2 2 0 3 4 2 6 0
- 0 0 3 2 33 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Imacron" xMin="-36" yMin="0" xMax="606" yMax="1752">
- <contour>
- <pt x="180" y="0" on="1"/>
- <pt x="180" y="1480" on="1"/>
- <pt x="390" y="1480" on="1"/>
- <pt x="390" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="-36" y="1604" on="1"/>
- <pt x="-36" y="1752" on="1"/>
- <pt x="606" y="1752" on="1"/>
- <pt x="606" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 45 values pushed */
- 0 0 7 4 7 1 5 1 4 48 196 6 5 1 3 0 1 2 0 2 1 0 14 0 0
- 3 2 33 1 0 1 4 48 196 7 6 1 5 4 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Iogonek" xMin="120" yMin="-370" xMax="462" yMax="1480">
- <contour>
- <pt x="180" y="0" on="1"/>
- <pt x="180" y="1480" on="1"/>
- <pt x="390" y="1480" on="1"/>
- <pt x="390" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="278" y="0" on="1"/>
- <pt x="385" y="0" on="1"/>
- <pt x="257" y="-80" on="0"/>
- <pt x="257" y="-179" on="1"/>
- <pt x="257" y="-275" on="0"/>
- <pt x="372" y="-275" on="1"/>
- <pt x="425" y="-275" on="0"/>
- <pt x="462" y="-260" on="1"/>
- <pt x="462" y="-341" on="1"/>
- <pt x="400" y="-370" on="0"/>
- <pt x="322" y="-370" on="1"/>
- <pt x="120" y="-370" on="0"/>
- <pt x="120" y="-212" on="1"/>
- <pt x="120" y="-90" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 56 values pushed */
- 0 0 9 21 14 48 196 12 11 14 0 5 4 3 0 3 0 2 1 0 14 0 0 7 42
- 16 48 196 5 4 2 2 0 3 12 11 2 13 2 16 0 0 0 3 2 33 1 0 1 4
- 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Itilde" xMin="-48" yMin="0" xMax="618" yMax="1838">
- <contour>
- <pt x="180" y="0" on="1"/>
- <pt x="180" y="1480" on="1"/>
- <pt x="390" y="1480" on="1"/>
- <pt x="390" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="-48" y="1604" on="1"/>
- <pt x="-41" y="1697" on="0"/>
- <pt x="-16" y="1748" on="1"/>
- <pt x="30" y="1838" on="0"/>
- <pt x="139" y="1838" on="1"/>
- <pt x="211" y="1838" on="0"/>
- <pt x="272" y="1800" on="1"/>
- <pt x="332" y="1763" on="1"/>
- <pt x="389" y="1728" on="0"/>
- <pt x="419" y="1728" on="1"/>
- <pt x="484" y="1728" on="0"/>
- <pt x="495" y="1838" on="1"/>
- <pt x="618" y="1838" on="1"/>
- <pt x="611" y="1744" on="0"/>
- <pt x="586" y="1694" on="1"/>
- <pt x="541" y="1604" on="0"/>
- <pt x="433" y="1604" on="1"/>
- <pt x="361" y="1604" on="0"/>
- <pt x="298" y="1643" on="1"/>
- <pt x="238" y="1680" on="1"/>
- <pt x="183" y="1714" on="0"/>
- <pt x="151" y="1714" on="1"/>
- <pt x="86" y="1714" on="0"/>
- <pt x="75" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 50 values pushed */
- 0 0 25 6 8 13 6 20 48 196 27 16 15 4 4 13 20 8 1 3 0 1 0 2 1
- 0 14 16 15 2 13 2 27 4 0 0 0 3 2 9 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="J" xMin="49" yMin="-296" xMax="840" yMax="1480">
- <contour>
- <pt x="49" y="-232" on="1"/>
- <pt x="49" y="-51" on="1"/>
- <pt x="220" y="-128" on="0"/>
- <pt x="369" y="-128" on="1"/>
- <pt x="540" y="-128" on="0"/>
- <pt x="589" y="-49" on="1"/>
- <pt x="630" y="19" on="0"/>
- <pt x="630" y="180" on="1"/>
- <pt x="630" y="1480" on="1"/>
- <pt x="840" y="1480" on="1"/>
- <pt x="840" y="187" on="1"/>
- <pt x="840" y="-296" on="0"/>
- <pt x="359" y="-296" on="1"/>
- <pt x="197" y="-296" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 0 0 3 30 12 48 196 1 10 7 2 8 2 3 0 1 1 0 12 2 0 9 8 0 14
- 0 0 8 7 33 1 9 1 4 48 196 10 9 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Jcircumflex" xMin="49" yMin="-296" xMax="1061" yMax="1925">
- <contour>
- <pt x="49" y="-232" on="1"/>
- <pt x="49" y="-51" on="1"/>
- <pt x="220" y="-128" on="0"/>
- <pt x="369" y="-128" on="1"/>
- <pt x="540" y="-128" on="0"/>
- <pt x="589" y="-49" on="1"/>
- <pt x="630" y="19" on="0"/>
- <pt x="630" y="180" on="1"/>
- <pt x="630" y="1480" on="1"/>
- <pt x="840" y="1480" on="1"/>
- <pt x="840" y="187" on="1"/>
- <pt x="840" y="-296" on="0"/>
- <pt x="359" y="-296" on="1"/>
- <pt x="197" y="-296" on="0"/>
- </contour>
- <contour>
- <pt x="361" y="1604" on="1"/>
- <pt x="602" y="1925" on="1"/>
- <pt x="820" y="1925" on="1"/>
- <pt x="1061" y="1604" on="1"/>
- <pt x="913" y="1604" on="1"/>
- <pt x="712" y="1806" on="1"/>
- <pt x="710" y="1806" on="1"/>
- <pt x="509" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 79 values pushed */
- 0 0 3 30 12 48 196 20 19 2 15 14 3 1 10 7 2 8 2 3 0 1 1 0 12
- 2 0 16 15 1 21 18 17 14 3 2 0 9 8 0 14 20 19 16 3 9 7 3 21 15
- 14 3 7 0 3 18 17 2 13 9 0 0 8 7 33 1 9 1 4 48 196 10 9 1 1
- 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="K" xMin="191" yMin="0" xMax="1317" yMax="1480">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="388" y="1480" on="1"/>
- <pt x="388" y="752" on="1"/>
- <pt x="1003" y="1480" on="1"/>
- <pt x="1214" y="1480" on="1"/>
- <pt x="618" y="774" on="1"/>
- <pt x="1317" y="0" on="1"/>
- <pt x="1051" y="0" on="1"/>
- <pt x="388" y="750" on="1"/>
- <pt x="388" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 45 values pushed */
- 9 6 3 3 1 0 3 10 8 7 0 3 0 5 4 2 1 0 3 14 8 7 6 5 4
- 5 13 2 0 0 10 9 3 2 4 3 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Kcommaaccent" xMin="191" yMin="-432" xMax="1317" yMax="1480">
- <contour>
- <pt x="191" y="0" on="1"/>
- <pt x="191" y="1480" on="1"/>
- <pt x="388" y="1480" on="1"/>
- <pt x="388" y="752" on="1"/>
- <pt x="1003" y="1480" on="1"/>
- <pt x="1214" y="1480" on="1"/>
- <pt x="618" y="774" on="1"/>
- <pt x="1317" y="0" on="1"/>
- <pt x="1051" y="0" on="1"/>
- <pt x="388" y="750" on="1"/>
- <pt x="388" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="487" y="-421" on="1"/>
- <pt x="487" y="-336" on="1"/>
- <pt x="544" y="-345" on="0"/>
- <pt x="584" y="-345" on="1"/>
- <pt x="694" y="-345" on="0"/>
- <pt x="694" y="-278" on="1"/>
- <pt x="694" y="-204" on="0"/>
- <pt x="536" y="-188" on="1"/>
- <pt x="536" y="-111" on="1"/>
- <pt x="670" y="-114" on="0"/>
- <pt x="736" y="-143" on="1"/>
- <pt x="829" y="-185" on="0"/>
- <pt x="829" y="-280" on="1"/>
- <pt x="829" y="-432" on="0"/>
- <pt x="612" y="-432" on="1"/>
- <pt x="553" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 0 0 14 44 25 48 196 9 6 3 3 1 0 3 19 18 12 11 4 13 25 0 10 8 7
- 0 3 0 5 4 2 1 0 3 14 0 0 16 42 23 48 196 19 18 12 11 8 7 6 5
- 4 9 13 23 2 0 0 10 9 3 2 4 3 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="L" xMin="165" yMin="0" xMax="1101" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="375" y="1480" on="1"/>
- <pt x="375" y="157" on="1"/>
- <pt x="1101" y="157" on="1"/>
- <pt x="1101" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 38 values pushed */
- 0 0 4 3 15 1 0 1 4 48 196 5 0 1 0 2 1 0 14 0 0 3 2 33 1
- 0 1 4 48 196 5 4 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Lacute" xMin="165" yMin="0" xMax="1101" yMax="1925">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="375" y="1480" on="1"/>
- <pt x="375" y="157" on="1"/>
- <pt x="1101" y="157" on="1"/>
- <pt x="1101" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="177" y="1604" on="1"/>
- <pt x="418" y="1925" on="1"/>
- <pt x="646" y="1925" on="1"/>
- <pt x="325" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 0 0 4 3 15 1 0 1 4 48 196 8 7 1 9 6 1 5 0 1 3 0 2 1 0
- 14 8 7 2 4 2 3 9 6 2 2 0 3 0 0 3 2 33 1 0 1 4 48 196 5
- 4 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Lcaron" xMin="165" yMin="0" xMax="1101" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="375" y="1480" on="1"/>
- <pt x="375" y="157" on="1"/>
- <pt x="1101" y="157" on="1"/>
- <pt x="1101" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="671" y="1026" on="1"/>
- <pt x="671" y="1085" on="1"/>
- <pt x="747" y="1106" on="0"/>
- <pt x="747" y="1266" on="1"/>
- <pt x="747" y="1283" on="1"/>
- <pt x="671" y="1283" on="1"/>
- <pt x="671" y="1480" on="1"/>
- <pt x="868" y="1480" on="1"/>
- <pt x="868" y="1309" on="1"/>
- <pt x="867" y="1047" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 67 values pushed */
- 14 11 10 9 7 6 6 1 3 3 0 0 4 3 15 1 0 1 4 48 196 5 0 1 0
- 13 12 2 1 0 3 14 10 9 2 13 6 3 0 0 12 11 7 6 4 3 13 3 2 33
- 1 0 2 4 48 196 14 13 1 5 4 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Lcommaaccent" xMin="165" yMin="-432" xMax="1101" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="375" y="1480" on="1"/>
- <pt x="375" y="157" on="1"/>
- <pt x="1101" y="157" on="1"/>
- <pt x="1101" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="449" y="-421" on="1"/>
- <pt x="449" y="-336" on="1"/>
- <pt x="506" y="-345" on="0"/>
- <pt x="546" y="-345" on="1"/>
- <pt x="656" y="-345" on="0"/>
- <pt x="656" y="-278" on="1"/>
- <pt x="656" y="-204" on="0"/>
- <pt x="498" y="-188" on="1"/>
- <pt x="498" y="-111" on="1"/>
- <pt x="632" y="-114" on="0"/>
- <pt x="698" y="-143" on="1"/>
- <pt x="791" y="-185" on="0"/>
- <pt x="791" y="-280" on="1"/>
- <pt x="791" y="-432" on="0"/>
- <pt x="574" y="-432" on="1"/>
- <pt x="515" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 70 values pushed */
- 0 0 9 44 20 48 196 14 13 7 6 4 13 20 0 0 0 4 3 15 1 0 1 4 48
- 196 5 0 1 0 2 1 0 14 0 0 11 42 18 48 196 18 18 14 13 7 6 5 4 2
- 3 0 0 3 2 33 1 0 1 4 48 196 5 4 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ldot" xMin="165" yMin="0" xMax="1101" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="375" y="1480" on="1"/>
- <pt x="375" y="157" on="1"/>
- <pt x="1101" y="157" on="1"/>
- <pt x="1101" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="743" y="642" on="1"/>
- <pt x="743" y="839" on="1"/>
- <pt x="940" y="839" on="1"/>
- <pt x="940" y="642" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 55 values pushed */
- 0 0 9 6 5 1 7 4 3 15 1 0 2 4 48 196 8 7 1 5 0 1 2 0 2
- 1 0 14 0 0 7 6 4 1 8 3 2 33 1 0 2 4 48 196 9 8 1 5 4 1
- 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Lslash" xMin="17" yMin="0" xMax="1100" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="692" on="1"/>
- <pt x="17" y="612" on="1"/>
- <pt x="17" y="780" on="1"/>
- <pt x="165" y="862" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="375" y="1480" on="1"/>
- <pt x="375" y="976" on="1"/>
- <pt x="621" y="1110" on="1"/>
- <pt x="621" y="941" on="1"/>
- <pt x="375" y="807" on="1"/>
- <pt x="375" y="157" on="1"/>
- <pt x="1100" y="157" on="1"/>
- <pt x="1100" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 60 values pushed */
- 10 9 8 7 4 3 2 1 8 5 11 3 0 0 12 11 15 1 0 1 4 48 196 13 0
- 1 0 6 5 0 14 0 0 11 10 7 6 33 3 0 1 4 48 196 13 12 1 9 8 1
- 5 4 1 0 3 3 2 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="M" xMin="165" yMin="0" xMax="1541" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="456" y="1480" on="1"/>
- <pt x="863" y="335" on="1"/>
- <pt x="1281" y="1480" on="1"/>
- <pt x="1541" y="1480" on="1"/>
- <pt x="1541" y="0" on="1"/>
- <pt x="1345" y="0" on="1"/>
- <pt x="1345" y="1203" on="1"/>
- <pt x="941" y="99" on="1"/>
- <pt x="738" y="99" on="1"/>
- <pt x="346" y="1207" on="1"/>
- <pt x="346" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 11 8 3 3 1 9 3 10 9 1 12 7 6 0 3 2 0 5 4 2 1 0 3 14 10
- 9 4 3 2 5 7 11 3 0 0 8 7 4 1 5 12 11 24 1 0 2 4 48 196 6
- 5 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="N" xMin="165" yMin="0" xMax="1313" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="370" y="1480" on="1"/>
- <pt x="1133" y="337" on="1"/>
- <pt x="1133" y="1480" on="1"/>
- <pt x="1313" y="1480" on="1"/>
- <pt x="1313" y="0" on="1"/>
- <pt x="1107" y="0" on="1"/>
- <pt x="345" y="1143" on="1"/>
- <pt x="345" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 49 values pushed */
- 8 3 2 1 0 3 9 7 6 0 3 0 5 4 2 1 0 3 14 7 2 2 3 8 3
- 0 0 4 3 24 1 5 9 8 24 1 0 2 4 48 196 6 5 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Nacute" xMin="165" yMin="0" xMax="1313" yMax="1925">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="370" y="1480" on="1"/>
- <pt x="1133" y="337" on="1"/>
- <pt x="1133" y="1480" on="1"/>
- <pt x="1313" y="1480" on="1"/>
- <pt x="1313" y="0" on="1"/>
- <pt x="1107" y="0" on="1"/>
- <pt x="345" y="1143" on="1"/>
- <pt x="345" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="591" y="1604" on="1"/>
- <pt x="832" y="1925" on="1"/>
- <pt x="1060" y="1925" on="1"/>
- <pt x="739" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 60 values pushed */
- 8 3 2 1 0 3 12 11 1 13 10 1 9 7 6 0 3 3 0 5 4 2 1 0 3
- 14 13 12 11 10 7 2 6 3 8 3 0 0 4 3 24 1 5 9 8 24 1 0 2 4
- 48 196 6 5 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ncaron" xMin="165" yMin="0" xMax="1313" yMax="1925">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="370" y="1480" on="1"/>
- <pt x="1133" y="337" on="1"/>
- <pt x="1133" y="1480" on="1"/>
- <pt x="1313" y="1480" on="1"/>
- <pt x="1313" y="0" on="1"/>
- <pt x="1107" y="0" on="1"/>
- <pt x="345" y="1143" on="1"/>
- <pt x="345" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1089" y="1925" on="1"/>
- <pt x="848" y="1604" on="1"/>
- <pt x="630" y="1604" on="1"/>
- <pt x="389" y="1925" on="1"/>
- <pt x="537" y="1925" on="1"/>
- <pt x="738" y="1723" on="1"/>
- <pt x="740" y="1723" on="1"/>
- <pt x="941" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 16 15 2 10 11 3 8 3 2 1 0 3 17 14 13 10 3 12 11 1 9 7 6 0 3
- 3 0 5 4 2 1 0 3 14 17 16 15 14 13 12 11 10 7 2 10 3 8 3 0 0
- 4 3 24 1 5 9 8 24 1 0 2 4 48 196 6 5 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ncommaaccent" xMin="165" yMin="-432" xMax="1313" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="370" y="1480" on="1"/>
- <pt x="1133" y="337" on="1"/>
- <pt x="1133" y="1480" on="1"/>
- <pt x="1313" y="1480" on="1"/>
- <pt x="1313" y="0" on="1"/>
- <pt x="1107" y="0" on="1"/>
- <pt x="345" y="1143" on="1"/>
- <pt x="345" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="518" y="-421" on="1"/>
- <pt x="518" y="-336" on="1"/>
- <pt x="575" y="-345" on="0"/>
- <pt x="615" y="-345" on="1"/>
- <pt x="725" y="-345" on="0"/>
- <pt x="725" y="-278" on="1"/>
- <pt x="725" y="-205" on="0"/>
- <pt x="567" y="-188" on="1"/>
- <pt x="567" y="-111" on="1"/>
- <pt x="702" y="-114" on="0"/>
- <pt x="767" y="-143" on="1"/>
- <pt x="860" y="-185" on="0"/>
- <pt x="860" y="-280" on="1"/>
- <pt x="860" y="-432" on="0"/>
- <pt x="643" y="-432" on="1"/>
- <pt x="584" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 0 0 13 44 24 48 196 8 3 2 1 0 3 18 17 11 10 4 13 24 0 9 7 6 0
- 3 0 5 4 2 1 0 3 14 0 0 15 42 22 48 196 22 22 18 17 11 10 7 2 7
- 3 8 3 0 0 4 3 24 1 5 9 8 24 1 0 2 4 48 196 6 5 1 1 0 1
- 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ntilde" xMin="165" yMin="0" xMax="1313" yMax="1838">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="370" y="1480" on="1"/>
- <pt x="1133" y="337" on="1"/>
- <pt x="1133" y="1480" on="1"/>
- <pt x="1313" y="1480" on="1"/>
- <pt x="1313" y="0" on="1"/>
- <pt x="1107" y="0" on="1"/>
- <pt x="345" y="1143" on="1"/>
- <pt x="345" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="432" y="1604" on="1"/>
- <pt x="439" y="1698" on="0"/>
- <pt x="464" y="1748" on="1"/>
- <pt x="510" y="1838" on="0"/>
- <pt x="619" y="1838" on="1"/>
- <pt x="690" y="1838" on="0"/>
- <pt x="752" y="1800" on="1"/>
- <pt x="812" y="1763" on="1"/>
- <pt x="869" y="1728" on="0"/>
- <pt x="899" y="1728" on="1"/>
- <pt x="964" y="1728" on="0"/>
- <pt x="975" y="1838" on="1"/>
- <pt x="1098" y="1838" on="1"/>
- <pt x="1091" y="1744" on="0"/>
- <pt x="1066" y="1694" on="1"/>
- <pt x="1021" y="1604" on="0"/>
- <pt x="913" y="1604" on="1"/>
- <pt x="841" y="1604" on="0"/>
- <pt x="778" y="1643" on="1"/>
- <pt x="718" y="1680" on="1"/>
- <pt x="663" y="1714" on="0"/>
- <pt x="631" y="1714" on="1"/>
- <pt x="566" y="1714" on="0"/>
- <pt x="555" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 0 0 31 6 14 19 6 26 48 196 8 3 2 1 0 3 33 22 21 10 4 13 26 14 1
- 9 7 6 0 3 0 5 4 2 1 0 3 14 33 22 21 10 7 2 6 3 8 3 0 0
- 4 3 24 1 5 9 8 24 1 0 2 4 48 196 6 5 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="O" xMin="93" yMin="-37" xMax="1501" yMax="1517">
- <contour>
- <pt x="797" y="1517" on="1"/>
- <pt x="1116" y="1517" on="0"/>
- <pt x="1309" y="1306" on="1"/>
- <pt x="1501" y="1094" on="0"/>
- <pt x="1501" y="742" on="1"/>
- <pt x="1501" y="383" on="0"/>
- <pt x="1309" y="173" on="1"/>
- <pt x="1116" y="-37" on="0"/>
- <pt x="787" y="-37" on="1"/>
- <pt x="505" y="-37" on="0"/>
- <pt x="322" y="136" on="1"/>
- <pt x="93" y="353" on="0"/>
- <pt x="93" y="740" on="1"/>
- <pt x="93" y="1095" on="0"/>
- <pt x="285" y="1306" on="1"/>
- <pt x="477" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="797" y="1360" on="1"/>
- <pt x="570" y="1360" on="0"/>
- <pt x="444" y="1197" on="1"/>
- <pt x="318" y="1034" on="0"/>
- <pt x="318" y="741" on="1"/>
- <pt x="318" y="450" on="0"/>
- <pt x="444" y="285" on="1"/>
- <pt x="569" y="120" on="0"/>
- <pt x="792" y="120" on="1"/>
- <pt x="999" y="120" on="0"/>
- <pt x="1122" y="252" on="1"/>
- <pt x="1276" y="415" on="0"/>
- <pt x="1276" y="742" on="1"/>
- <pt x="1276" y="1034" on="0"/>
- <pt x="1149" y="1197" on="1"/>
- <pt x="1022" y="1360" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 27 values pushed */
- 0 0 24 29 8 16 29 0 48 196 8 2 0 0 14 0 0 28 26 4 20 26 12 48 196
- 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="OE" xMin="93" yMin="-37" xMax="1991" yMax="1517">
- <contour>
- <pt x="1129" y="0" on="1"/>
- <pt x="1129" y="58" on="1"/>
- <pt x="965" y="-37" on="0"/>
- <pt x="775" y="-37" on="1"/>
- <pt x="469" y="-37" on="0"/>
- <pt x="281" y="177" on="1"/>
- <pt x="93" y="391" on="0"/>
- <pt x="93" y="740" on="1"/>
- <pt x="93" y="1095" on="0"/>
- <pt x="282" y="1306" on="1"/>
- <pt x="471" y="1517" on="0"/>
- <pt x="785" y="1517" on="1"/>
- <pt x="967" y="1517" on="0"/>
- <pt x="1129" y="1423" on="1"/>
- <pt x="1129" y="1480" on="1"/>
- <pt x="1947" y="1480" on="1"/>
- <pt x="1947" y="1323" on="1"/>
- <pt x="1339" y="1323" on="1"/>
- <pt x="1339" y="848" on="1"/>
- <pt x="1848" y="848" on="1"/>
- <pt x="1848" y="693" on="1"/>
- <pt x="1339" y="693" on="1"/>
- <pt x="1339" y="157" on="1"/>
- <pt x="1991" y="157" on="1"/>
- <pt x="1991" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1129" y="569" on="1"/>
- <pt x="1129" y="911" on="1"/>
- <pt x="1129" y="1147" on="0"/>
- <pt x="1048" y="1253" on="1"/>
- <pt x="967" y="1360" on="0"/>
- <pt x="788" y="1360" on="1"/>
- <pt x="565" y="1360" on="0"/>
- <pt x="441" y="1197" on="1"/>
- <pt x="316" y="1034" on="0"/>
- <pt x="316" y="740" on="1"/>
- <pt x="316" y="446" on="0"/>
- <pt x="441" y="283" on="1"/>
- <pt x="567" y="120" on="0"/>
- <pt x="789" y="120" on="1"/>
- <pt x="1129" y="120" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 103 values pushed */
- 0 0 38 29 3 30 29 11 48 196 11 0 3 2 13 14 16 2 26 16 18 2 25 20 22
- 2 1 22 0 2 0 0 17 16 15 1 14 21 20 15 1 18 23 22 15 1 0 3 4 48
- 196 19 18 1 24 0 1 2 0 15 14 0 14 0 0 34 26 7 48 196 7 0 0 0 26
- 25 14 13 1 0 33 5 17 1 4 48 196 24 23 1 16 15 1 20 19 1 22 21 18 17
- 3 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Oacute" xMin="92" yMin="-37" xMax="1500" yMax="1925">
- <contour>
- <pt x="796" y="1517" on="1"/>
- <pt x="1115" y="1517" on="0"/>
- <pt x="1308" y="1306" on="1"/>
- <pt x="1500" y="1094" on="0"/>
- <pt x="1500" y="742" on="1"/>
- <pt x="1500" y="383" on="0"/>
- <pt x="1308" y="173" on="1"/>
- <pt x="1115" y="-37" on="0"/>
- <pt x="786" y="-37" on="1"/>
- <pt x="504" y="-37" on="0"/>
- <pt x="321" y="136" on="1"/>
- <pt x="92" y="353" on="0"/>
- <pt x="92" y="740" on="1"/>
- <pt x="92" y="1095" on="0"/>
- <pt x="284" y="1306" on="1"/>
- <pt x="476" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="796" y="1360" on="1"/>
- <pt x="569" y="1360" on="0"/>
- <pt x="443" y="1197" on="1"/>
- <pt x="317" y="1034" on="0"/>
- <pt x="317" y="741" on="1"/>
- <pt x="317" y="450" on="0"/>
- <pt x="443" y="285" on="1"/>
- <pt x="568" y="120" on="0"/>
- <pt x="791" y="120" on="1"/>
- <pt x="998" y="120" on="0"/>
- <pt x="1121" y="252" on="1"/>
- <pt x="1275" y="415" on="0"/>
- <pt x="1275" y="742" on="1"/>
- <pt x="1275" y="1034" on="0"/>
- <pt x="1148" y="1197" on="1"/>
- <pt x="1021" y="1360" on="0"/>
- </contour>
- <contour>
- <pt x="648" y="1604" on="1"/>
- <pt x="889" y="1925" on="1"/>
- <pt x="1117" y="1925" on="1"/>
- <pt x="796" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 39 values pushed */
- 0 0 24 29 8 16 29 0 48 196 8 2 0 0 34 33 1 35 32 1 2 0 14 0 0
- 28 26 4 20 26 12 48 196 35 34 33 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Obreve" xMin="93" yMin="-37" xMax="1501" yMax="1925">
- <contour>
- <pt x="797" y="1517" on="1"/>
- <pt x="1116" y="1517" on="0"/>
- <pt x="1309" y="1306" on="1"/>
- <pt x="1501" y="1094" on="0"/>
- <pt x="1501" y="742" on="1"/>
- <pt x="1501" y="383" on="0"/>
- <pt x="1309" y="173" on="1"/>
- <pt x="1116" y="-37" on="0"/>
- <pt x="787" y="-37" on="1"/>
- <pt x="505" y="-37" on="0"/>
- <pt x="322" y="136" on="1"/>
- <pt x="93" y="353" on="0"/>
- <pt x="93" y="740" on="1"/>
- <pt x="93" y="1095" on="0"/>
- <pt x="285" y="1306" on="1"/>
- <pt x="477" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="797" y="1360" on="1"/>
- <pt x="570" y="1360" on="0"/>
- <pt x="444" y="1197" on="1"/>
- <pt x="318" y="1034" on="0"/>
- <pt x="318" y="741" on="1"/>
- <pt x="318" y="450" on="0"/>
- <pt x="444" y="285" on="1"/>
- <pt x="569" y="120" on="0"/>
- <pt x="792" y="120" on="1"/>
- <pt x="999" y="120" on="0"/>
- <pt x="1122" y="252" on="1"/>
- <pt x="1276" y="415" on="0"/>
- <pt x="1276" y="742" on="1"/>
- <pt x="1276" y="1034" on="0"/>
- <pt x="1149" y="1197" on="1"/>
- <pt x="1022" y="1360" on="0"/>
- </contour>
- <contour>
- <pt x="464" y="1925" on="1"/>
- <pt x="587" y="1925" on="1"/>
- <pt x="608" y="1831" on="0"/>
- <pt x="662" y="1791" on="1"/>
- <pt x="714" y="1752" on="0"/>
- <pt x="797" y="1752" on="1"/>
- <pt x="890" y="1752" on="0"/>
- <pt x="945" y="1801" on="1"/>
- <pt x="988" y="1841" on="0"/>
- <pt x="1007" y="1925" on="1"/>
- <pt x="1130" y="1925" on="1"/>
- <pt x="1114" y="1791" on="0"/>
- <pt x="1041" y="1710" on="1"/>
- <pt x="947" y="1604" on="0"/>
- <pt x="797" y="1604" on="1"/>
- <pt x="640" y="1604" on="0"/>
- <pt x="545" y="1719" on="1"/>
- <pt x="480" y="1797" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 0 0 37 7 46 24 35 8 16 35 0 48 196 8 2 0 0 1 42 41 33 32 4 13 46
- 0 0 14 0 0 28 36 4 20 36 12 48 196 42 41 33 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ocircumflex" xMin="92" yMin="-37" xMax="1500" yMax="1925">
- <contour>
- <pt x="796" y="1517" on="1"/>
- <pt x="1115" y="1517" on="0"/>
- <pt x="1308" y="1306" on="1"/>
- <pt x="1500" y="1094" on="0"/>
- <pt x="1500" y="742" on="1"/>
- <pt x="1500" y="383" on="0"/>
- <pt x="1308" y="173" on="1"/>
- <pt x="1115" y="-37" on="0"/>
- <pt x="786" y="-37" on="1"/>
- <pt x="504" y="-37" on="0"/>
- <pt x="321" y="136" on="1"/>
- <pt x="92" y="353" on="0"/>
- <pt x="92" y="740" on="1"/>
- <pt x="92" y="1095" on="0"/>
- <pt x="284" y="1306" on="1"/>
- <pt x="476" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="796" y="1360" on="1"/>
- <pt x="569" y="1360" on="0"/>
- <pt x="443" y="1197" on="1"/>
- <pt x="317" y="1034" on="0"/>
- <pt x="317" y="741" on="1"/>
- <pt x="317" y="450" on="0"/>
- <pt x="443" y="285" on="1"/>
- <pt x="568" y="120" on="0"/>
- <pt x="791" y="120" on="1"/>
- <pt x="998" y="120" on="0"/>
- <pt x="1121" y="252" on="1"/>
- <pt x="1275" y="415" on="0"/>
- <pt x="1275" y="742" on="1"/>
- <pt x="1275" y="1034" on="0"/>
- <pt x="1148" y="1197" on="1"/>
- <pt x="1021" y="1360" on="0"/>
- </contour>
- <contour>
- <pt x="446" y="1604" on="1"/>
- <pt x="687" y="1925" on="1"/>
- <pt x="905" y="1925" on="1"/>
- <pt x="1146" y="1604" on="1"/>
- <pt x="998" y="1604" on="1"/>
- <pt x="797" y="1806" on="1"/>
- <pt x="795" y="1806" on="1"/>
- <pt x="594" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 51 values pushed */
- 0 0 24 29 8 16 29 0 48 196 8 2 0 0 38 37 2 33 32 3 34 33 1 39 36
- 35 32 3 2 0 14 0 0 28 26 4 20 26 12 48 196 39 38 37 36 35 34 33 32 12
- 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Odieresis" xMin="92" yMin="-37" xMax="1500" yMax="1777">
- <contour>
- <pt x="796" y="1517" on="1"/>
- <pt x="1115" y="1517" on="0"/>
- <pt x="1308" y="1306" on="1"/>
- <pt x="1500" y="1094" on="0"/>
- <pt x="1500" y="742" on="1"/>
- <pt x="1500" y="383" on="0"/>
- <pt x="1308" y="173" on="1"/>
- <pt x="1115" y="-37" on="0"/>
- <pt x="786" y="-37" on="1"/>
- <pt x="504" y="-37" on="0"/>
- <pt x="321" y="136" on="1"/>
- <pt x="92" y="353" on="0"/>
- <pt x="92" y="740" on="1"/>
- <pt x="92" y="1095" on="0"/>
- <pt x="284" y="1306" on="1"/>
- <pt x="476" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="796" y="1360" on="1"/>
- <pt x="569" y="1360" on="0"/>
- <pt x="443" y="1197" on="1"/>
- <pt x="317" y="1034" on="0"/>
- <pt x="317" y="741" on="1"/>
- <pt x="317" y="450" on="0"/>
- <pt x="443" y="285" on="1"/>
- <pt x="568" y="120" on="0"/>
- <pt x="791" y="120" on="1"/>
- <pt x="998" y="120" on="0"/>
- <pt x="1121" y="252" on="1"/>
- <pt x="1275" y="415" on="0"/>
- <pt x="1275" y="742" on="1"/>
- <pt x="1275" y="1034" on="0"/>
- <pt x="1148" y="1197" on="1"/>
- <pt x="1021" y="1360" on="0"/>
- </contour>
- <contour>
- <pt x="512" y="1604" on="1"/>
- <pt x="512" y="1777" on="1"/>
- <pt x="685" y="1777" on="1"/>
- <pt x="685" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="907" y="1604" on="1"/>
- <pt x="907" y="1777" on="1"/>
- <pt x="1080" y="1777" on="1"/>
- <pt x="1080" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 0 0 24 29 8 16 29 0 48 196 8 2 0 0 0 0 39 36 35 32 13 3 33 1 4
- 48 196 38 37 34 33 3 0 14 0 0 28 26 4 20 26 12 48 196 4 38 12 32 0 0
- 37 36 13 1 38 35 34 13 1 32 2 4 48 196 39 38 1 33 32 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ograve" xMin="92" yMin="-37" xMax="1500" yMax="1925">
- <contour>
- <pt x="796" y="1517" on="1"/>
- <pt x="1115" y="1517" on="0"/>
- <pt x="1308" y="1306" on="1"/>
- <pt x="1500" y="1094" on="0"/>
- <pt x="1500" y="742" on="1"/>
- <pt x="1500" y="383" on="0"/>
- <pt x="1308" y="173" on="1"/>
- <pt x="1115" y="-37" on="0"/>
- <pt x="786" y="-37" on="1"/>
- <pt x="504" y="-37" on="0"/>
- <pt x="321" y="136" on="1"/>
- <pt x="92" y="353" on="0"/>
- <pt x="92" y="740" on="1"/>
- <pt x="92" y="1095" on="0"/>
- <pt x="284" y="1306" on="1"/>
- <pt x="476" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="796" y="1360" on="1"/>
- <pt x="569" y="1360" on="0"/>
- <pt x="443" y="1197" on="1"/>
- <pt x="317" y="1034" on="0"/>
- <pt x="317" y="741" on="1"/>
- <pt x="317" y="450" on="0"/>
- <pt x="443" y="285" on="1"/>
- <pt x="568" y="120" on="0"/>
- <pt x="791" y="120" on="1"/>
- <pt x="998" y="120" on="0"/>
- <pt x="1121" y="252" on="1"/>
- <pt x="1275" y="415" on="0"/>
- <pt x="1275" y="742" on="1"/>
- <pt x="1275" y="1034" on="0"/>
- <pt x="1148" y="1197" on="1"/>
- <pt x="1021" y="1360" on="0"/>
- </contour>
- <contour>
- <pt x="944" y="1604" on="1"/>
- <pt x="796" y="1604" on="1"/>
- <pt x="475" y="1925" on="1"/>
- <pt x="703" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 39 values pushed */
- 0 0 24 29 8 16 29 0 48 196 8 2 0 0 35 34 1 33 32 1 2 0 14 0 0
- 28 26 4 20 26 12 48 196 35 34 33 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ohungarumlaut" xMin="93" yMin="-37" xMax="1501" yMax="1925">
- <contour>
- <pt x="797" y="1517" on="1"/>
- <pt x="1116" y="1517" on="0"/>
- <pt x="1309" y="1306" on="1"/>
- <pt x="1501" y="1094" on="0"/>
- <pt x="1501" y="742" on="1"/>
- <pt x="1501" y="383" on="0"/>
- <pt x="1309" y="173" on="1"/>
- <pt x="1116" y="-37" on="0"/>
- <pt x="787" y="-37" on="1"/>
- <pt x="505" y="-37" on="0"/>
- <pt x="322" y="136" on="1"/>
- <pt x="93" y="353" on="0"/>
- <pt x="93" y="740" on="1"/>
- <pt x="93" y="1095" on="0"/>
- <pt x="285" y="1306" on="1"/>
- <pt x="477" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="797" y="1360" on="1"/>
- <pt x="570" y="1360" on="0"/>
- <pt x="444" y="1197" on="1"/>
- <pt x="318" y="1034" on="0"/>
- <pt x="318" y="741" on="1"/>
- <pt x="318" y="450" on="0"/>
- <pt x="444" y="285" on="1"/>
- <pt x="569" y="120" on="0"/>
- <pt x="792" y="120" on="1"/>
- <pt x="999" y="120" on="0"/>
- <pt x="1122" y="252" on="1"/>
- <pt x="1276" y="415" on="0"/>
- <pt x="1276" y="742" on="1"/>
- <pt x="1276" y="1034" on="0"/>
- <pt x="1149" y="1197" on="1"/>
- <pt x="1022" y="1360" on="0"/>
- </contour>
- <contour>
- <pt x="566" y="1604" on="1"/>
- <pt x="807" y="1925" on="1"/>
- <pt x="998" y="1925" on="1"/>
- <pt x="677" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="918" y="1604" on="1"/>
- <pt x="1158" y="1925" on="1"/>
- <pt x="1349" y="1925" on="1"/>
- <pt x="1029" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 51 values pushed */
- 0 0 24 29 8 16 29 0 48 196 8 2 0 0 1 39 36 35 32 4 33 0 3 0 38
- 37 34 33 3 0 14 0 0 28 26 4 20 26 12 48 196 39 38 37 36 35 34 33 32 12
- 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Omacron" xMin="93" yMin="-37" xMax="1501" yMax="1752">
- <contour>
- <pt x="797" y="1517" on="1"/>
- <pt x="1116" y="1517" on="0"/>
- <pt x="1309" y="1306" on="1"/>
- <pt x="1501" y="1094" on="0"/>
- <pt x="1501" y="742" on="1"/>
- <pt x="1501" y="383" on="0"/>
- <pt x="1309" y="173" on="1"/>
- <pt x="1116" y="-37" on="0"/>
- <pt x="787" y="-37" on="1"/>
- <pt x="505" y="-37" on="0"/>
- <pt x="322" y="136" on="1"/>
- <pt x="93" y="353" on="0"/>
- <pt x="93" y="740" on="1"/>
- <pt x="93" y="1095" on="0"/>
- <pt x="285" y="1306" on="1"/>
- <pt x="477" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="797" y="1360" on="1"/>
- <pt x="570" y="1360" on="0"/>
- <pt x="444" y="1197" on="1"/>
- <pt x="318" y="1034" on="0"/>
- <pt x="318" y="741" on="1"/>
- <pt x="318" y="450" on="0"/>
- <pt x="444" y="285" on="1"/>
- <pt x="569" y="120" on="0"/>
- <pt x="792" y="120" on="1"/>
- <pt x="999" y="120" on="0"/>
- <pt x="1122" y="252" on="1"/>
- <pt x="1276" y="415" on="0"/>
- <pt x="1276" y="742" on="1"/>
- <pt x="1276" y="1034" on="0"/>
- <pt x="1149" y="1197" on="1"/>
- <pt x="1022" y="1360" on="0"/>
- </contour>
- <contour>
- <pt x="476" y="1604" on="1"/>
- <pt x="476" y="1752" on="1"/>
- <pt x="1118" y="1752" on="1"/>
- <pt x="1118" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 52 values pushed */
- 0 0 24 29 8 16 29 0 48 196 8 2 0 0 0 0 35 32 7 1 33 1 4 48 196
- 34 33 1 0 14 0 0 28 26 4 20 26 12 48 196 4 34 12 32 35 34 1 33 32 1
- 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Oslash" xMin="93" yMin="-37" xMax="1501" yMax="1517">
- <contour>
- <pt x="104" y="-37" on="1"/>
- <pt x="278" y="184" on="1"/>
- <pt x="196" y="286" on="0"/>
- <pt x="154" y="390" on="1"/>
- <pt x="93" y="545" on="0"/>
- <pt x="93" y="742" on="1"/>
- <pt x="93" y="1094" on="0"/>
- <pt x="285" y="1306" on="1"/>
- <pt x="476" y="1517" on="0"/>
- <pt x="795" y="1517" on="1"/>
- <pt x="1038" y="1517" on="0"/>
- <pt x="1223" y="1384" on="1"/>
- <pt x="1329" y="1517" on="1"/>
- <pt x="1501" y="1517" on="1"/>
- <pt x="1322" y="1290" on="1"/>
- <pt x="1401" y="1188" on="0"/>
- <pt x="1442" y="1085" on="1"/>
- <pt x="1501" y="932" on="0"/>
- <pt x="1501" y="738" on="1"/>
- <pt x="1501" y="385" on="0"/>
- <pt x="1309" y="174" on="1"/>
- <pt x="1118" y="-37" on="0"/>
- <pt x="798" y="-37" on="1"/>
- <pt x="563" y="-37" on="0"/>
- <pt x="378" y="91" on="1"/>
- <pt x="276" y="-37" on="1"/>
- </contour>
- <contour>
- <pt x="491" y="235" on="1"/>
- <pt x="621" y="120" on="0"/>
- <pt x="798" y="120" on="1"/>
- <pt x="1023" y="120" on="0"/>
- <pt x="1149" y="283" on="1"/>
- <pt x="1276" y="446" on="0"/>
- <pt x="1276" y="737" on="1"/>
- <pt x="1276" y="969" on="0"/>
- <pt x="1194" y="1127" on="1"/>
- </contour>
- <contour>
- <pt x="1110" y="1240" on="1"/>
- <pt x="976" y="1360" on="0"/>
- <pt x="796" y="1360" on="1"/>
- <pt x="571" y="1360" on="0"/>
- <pt x="445" y="1197" on="1"/>
- <pt x="318" y="1034" on="0"/>
- <pt x="318" y="743" on="1"/>
- <pt x="318" y="507" on="0"/>
- <pt x="405" y="345" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 0 0 37 29 9 28 29 22 48 196 22 2 9 0 1 1 35 34 14 11 4 0 1 3 0
- 0 1 1 43 26 24 1 4 1 2 3 0 0 13 12 1 25 0 1 2 0 14 0 0 41
- 26 5 32 26 18 48 196 43 35 34 26 25 24 18 14 13 12 11 5 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Otilde" xMin="92" yMin="-37" xMax="1500" yMax="1838">
- <contour>
- <pt x="796" y="1517" on="1"/>
- <pt x="1115" y="1517" on="0"/>
- <pt x="1308" y="1306" on="1"/>
- <pt x="1500" y="1094" on="0"/>
- <pt x="1500" y="742" on="1"/>
- <pt x="1500" y="383" on="0"/>
- <pt x="1308" y="173" on="1"/>
- <pt x="1115" y="-37" on="0"/>
- <pt x="786" y="-37" on="1"/>
- <pt x="504" y="-37" on="0"/>
- <pt x="321" y="136" on="1"/>
- <pt x="92" y="353" on="0"/>
- <pt x="92" y="740" on="1"/>
- <pt x="92" y="1095" on="0"/>
- <pt x="284" y="1306" on="1"/>
- <pt x="476" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="796" y="1360" on="1"/>
- <pt x="569" y="1360" on="0"/>
- <pt x="443" y="1197" on="1"/>
- <pt x="317" y="1034" on="0"/>
- <pt x="317" y="741" on="1"/>
- <pt x="317" y="450" on="0"/>
- <pt x="443" y="285" on="1"/>
- <pt x="568" y="120" on="0"/>
- <pt x="791" y="120" on="1"/>
- <pt x="998" y="120" on="0"/>
- <pt x="1121" y="252" on="1"/>
- <pt x="1275" y="415" on="0"/>
- <pt x="1275" y="742" on="1"/>
- <pt x="1275" y="1034" on="0"/>
- <pt x="1148" y="1197" on="1"/>
- <pt x="1021" y="1360" on="0"/>
- </contour>
- <contour>
- <pt x="463" y="1604" on="1"/>
- <pt x="470" y="1697" on="0"/>
- <pt x="495" y="1748" on="1"/>
- <pt x="541" y="1838" on="0"/>
- <pt x="650" y="1838" on="1"/>
- <pt x="722" y="1838" on="0"/>
- <pt x="783" y="1800" on="1"/>
- <pt x="843" y="1763" on="1"/>
- <pt x="900" y="1728" on="0"/>
- <pt x="930" y="1728" on="1"/>
- <pt x="995" y="1728" on="0"/>
- <pt x="1006" y="1838" on="1"/>
- <pt x="1129" y="1838" on="1"/>
- <pt x="1122" y="1744" on="0"/>
- <pt x="1097" y="1694" on="1"/>
- <pt x="1052" y="1604" on="0"/>
- <pt x="944" y="1604" on="1"/>
- <pt x="872" y="1604" on="0"/>
- <pt x="809" y="1643" on="1"/>
- <pt x="749" y="1680" on="1"/>
- <pt x="694" y="1714" on="0"/>
- <pt x="662" y="1714" on="1"/>
- <pt x="597" y="1714" on="0"/>
- <pt x="586" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 48 values pushed */
- 0 0 53 6 36 41 6 48 24 29 8 16 29 0 48 196 8 2 0 0 1 55 44 43 32
- 4 13 48 36 0 0 14 0 0 28 26 4 20 26 12 48 196 55 44 43 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="P" xMin="167" yMin="0" xMax="1318" yMax="1480">
- <contour>
- <pt x="167" y="0" on="1"/>
- <pt x="167" y="1480" on="1"/>
- <pt x="747" y="1480" on="1"/>
- <pt x="976" y="1480" on="0"/>
- <pt x="1075" y="1454" on="1"/>
- <pt x="1176" y="1427" on="0"/>
- <pt x="1239" y="1351" on="1"/>
- <pt x="1318" y="1255" on="0"/>
- <pt x="1318" y="1089" on="1"/>
- <pt x="1318" y="588" on="0"/>
- <pt x="685" y="588" on="1"/>
- <pt x="377" y="588" on="1"/>
- <pt x="377" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="377" y="747" on="1"/>
- <pt x="676" y="747" on="1"/>
- <pt x="1096" y="747" on="0"/>
- <pt x="1096" y="1076" on="1"/>
- <pt x="1096" y="1236" on="0"/>
- <pt x="987" y="1283" on="1"/>
- <pt x="894" y="1323" on="0"/>
- <pt x="681" y="1323" on="1"/>
- <pt x="377" y="1323" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 60 values pushed */
- 0 0 21 20 15 1 1 11 10 15 1 13 2 4 48 196 14 13 1 12 0 1 2 0 2
- 1 0 14 0 0 16 26 8 48 196 20 14 10 2 4 13 8 11 0 0 21 13 12 11 33
- 3 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Q" xMin="93" yMin="-296" xMax="1639" yMax="1517">
- <contour>
- <pt x="1639" y="-129" on="1"/>
- <pt x="1506" y="-296" on="1"/>
- <pt x="1156" y="-181" on="0"/>
- <pt x="922" y="-27" on="1"/>
- <pt x="819" y="-38" on="0"/>
- <pt x="765" y="-38" on="1"/>
- <pt x="471" y="-38" on="0"/>
- <pt x="282" y="180" on="1"/>
- <pt x="93" y="397" on="0"/>
- <pt x="93" y="741" on="1"/>
- <pt x="93" y="1093" on="0"/>
- <pt x="284" y="1305" on="1"/>
- <pt x="475" y="1517" on="0"/>
- <pt x="794" y="1517" on="1"/>
- <pt x="1116" y="1517" on="0"/>
- <pt x="1309" y="1305" on="1"/>
- <pt x="1502" y="1094" on="0"/>
- <pt x="1502" y="738" on="1"/>
- <pt x="1502" y="427" on="0"/>
- <pt x="1356" y="231" on="1"/>
- <pt x="1300" y="155" on="0"/>
- <pt x="1227" y="100" on="1"/>
- <pt x="1189" y="72" on="0"/>
- <pt x="1114" y="30" on="1"/>
- <pt x="1360" y="-80" on="0"/>
- </contour>
- <contour>
- <pt x="793" y="1360" on="1"/>
- <pt x="570" y="1360" on="0"/>
- <pt x="444" y="1195" on="1"/>
- <pt x="318" y="1031" on="0"/>
- <pt x="318" y="740" on="1"/>
- <pt x="318" y="450" on="0"/>
- <pt x="444" y="285" on="1"/>
- <pt x="570" y="120" on="0"/>
- <pt x="793" y="120" on="1"/>
- <pt x="1018" y="120" on="0"/>
- <pt x="1147" y="282" on="1"/>
- <pt x="1276" y="444" on="0"/>
- <pt x="1276" y="734" on="1"/>
- <pt x="1276" y="1003" on="0"/>
- <pt x="1173" y="1163" on="1"/>
- <pt x="1046" y="1360" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 0 0 33 29 5 25 29 13 48 196 13 0 5 2 1 1 23 0 2 2 0 0 1 3 1
- 0 3 13 2 0 14 0 0 37 26 17 29 26 9 48 196 23 17 9 3 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="R" xMin="165" yMin="0" xMax="1434" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="783" y="1480" on="1"/>
- <pt x="1239" y="1480" on="0"/>
- <pt x="1239" y="1113" on="1"/>
- <pt x="1239" y="933" on="0"/>
- <pt x="1128" y="817" on="1"/>
- <pt x="1063" y="748" on="0"/>
- <pt x="940" y="693" on="1"/>
- <pt x="1434" y="0" on="1"/>
- <pt x="1176" y="0" on="1"/>
- <pt x="755" y="626" on="1"/>
- <pt x="375" y="626" on="1"/>
- <pt x="375" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="375" y="783" on="1"/>
- <pt x="610" y="783" on="1"/>
- <pt x="824" y="783" on="0"/>
- <pt x="923" y="857" on="1"/>
- <pt x="1023" y="932" on="0"/>
- <pt x="1023" y="1089" on="1"/>
- <pt x="1023" y="1216" on="0"/>
- <pt x="942" y="1269" on="1"/>
- <pt x="862" y="1323" on="0"/>
- <pt x="675" y="1323" on="1"/>
- <pt x="375" y="1323" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 69 values pushed */
- 8 14 11 2 0 0 24 23 15 1 1 12 11 15 1 14 2 4 48 196 15 14 1 13 10
- 9 0 3 2 0 2 1 0 14 0 0 19 9 4 48 196 23 15 11 10 9 8 2 7 13
- 4 12 0 0 24 14 13 12 33 3 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Racute" xMin="165" yMin="0" xMax="1434" yMax="1925">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="783" y="1480" on="1"/>
- <pt x="1239" y="1480" on="0"/>
- <pt x="1239" y="1113" on="1"/>
- <pt x="1239" y="933" on="0"/>
- <pt x="1128" y="817" on="1"/>
- <pt x="1063" y="748" on="0"/>
- <pt x="940" y="693" on="1"/>
- <pt x="1434" y="0" on="1"/>
- <pt x="1176" y="0" on="1"/>
- <pt x="755" y="626" on="1"/>
- <pt x="375" y="626" on="1"/>
- <pt x="375" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="375" y="783" on="1"/>
- <pt x="610" y="783" on="1"/>
- <pt x="824" y="783" on="0"/>
- <pt x="923" y="857" on="1"/>
- <pt x="1023" y="932" on="0"/>
- <pt x="1023" y="1089" on="1"/>
- <pt x="1023" y="1216" on="0"/>
- <pt x="942" y="1269" on="1"/>
- <pt x="862" y="1323" on="0"/>
- <pt x="675" y="1323" on="1"/>
- <pt x="375" y="1323" on="1"/>
- </contour>
- <contour>
- <pt x="523" y="1604" on="1"/>
- <pt x="764" y="1925" on="1"/>
- <pt x="992" y="1925" on="1"/>
- <pt x="671" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 79 values pushed */
- 8 14 11 2 0 0 24 23 15 1 1 12 11 15 1 14 2 4 48 196 27 26 1 28 25
- 1 15 14 1 13 10 9 0 3 4 0 2 1 0 14 0 0 19 9 4 48 196 28 27 26
- 25 23 15 11 10 9 8 2 11 13 4 12 0 0 24 14 13 12 33 3 0 1 4 48 196
- 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Rcaron" xMin="165" yMin="0" xMax="1434" yMax="1925">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="783" y="1480" on="1"/>
- <pt x="1239" y="1480" on="0"/>
- <pt x="1239" y="1113" on="1"/>
- <pt x="1239" y="933" on="0"/>
- <pt x="1128" y="817" on="1"/>
- <pt x="1063" y="748" on="0"/>
- <pt x="940" y="693" on="1"/>
- <pt x="1434" y="0" on="1"/>
- <pt x="1176" y="0" on="1"/>
- <pt x="755" y="626" on="1"/>
- <pt x="375" y="626" on="1"/>
- <pt x="375" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="375" y="783" on="1"/>
- <pt x="610" y="783" on="1"/>
- <pt x="824" y="783" on="0"/>
- <pt x="923" y="857" on="1"/>
- <pt x="1023" y="932" on="0"/>
- <pt x="1023" y="1089" on="1"/>
- <pt x="1023" y="1216" on="0"/>
- <pt x="942" y="1269" on="1"/>
- <pt x="862" y="1323" on="0"/>
- <pt x="675" y="1323" on="1"/>
- <pt x="375" y="1323" on="1"/>
- </contour>
- <contour>
- <pt x="982" y="1925" on="1"/>
- <pt x="741" y="1604" on="1"/>
- <pt x="523" y="1604" on="1"/>
- <pt x="282" y="1925" on="1"/>
- <pt x="430" y="1925" on="1"/>
- <pt x="631" y="1723" on="1"/>
- <pt x="633" y="1723" on="1"/>
- <pt x="834" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 94 values pushed */
- 31 30 2 25 26 3 8 14 11 2 0 0 24 23 15 1 1 12 11 15 1 14 2 4 48
- 196 32 29 28 25 3 27 26 1 15 14 1 13 10 9 0 3 4 0 2 1 0 14 0 0
- 19 9 4 48 196 28 12 0 2 32 31 30 29 27 26 25 23 15 11 10 9 8 2 14 13
- 4 12 0 0 24 14 13 12 33 3 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Rcommaaccent" xMin="165" yMin="-432" xMax="1434" yMax="1480">
- <contour>
- <pt x="165" y="0" on="1"/>
- <pt x="165" y="1480" on="1"/>
- <pt x="783" y="1480" on="1"/>
- <pt x="1239" y="1480" on="0"/>
- <pt x="1239" y="1113" on="1"/>
- <pt x="1239" y="933" on="0"/>
- <pt x="1128" y="817" on="1"/>
- <pt x="1063" y="748" on="0"/>
- <pt x="940" y="693" on="1"/>
- <pt x="1434" y="0" on="1"/>
- <pt x="1176" y="0" on="1"/>
- <pt x="755" y="626" on="1"/>
- <pt x="375" y="626" on="1"/>
- <pt x="375" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="375" y="783" on="1"/>
- <pt x="610" y="783" on="1"/>
- <pt x="824" y="783" on="0"/>
- <pt x="923" y="857" on="1"/>
- <pt x="1023" y="932" on="0"/>
- <pt x="1023" y="1089" on="1"/>
- <pt x="1023" y="1216" on="0"/>
- <pt x="942" y="1269" on="1"/>
- <pt x="862" y="1323" on="0"/>
- <pt x="675" y="1323" on="1"/>
- <pt x="375" y="1323" on="1"/>
- </contour>
- <contour>
- <pt x="523" y="-421" on="1"/>
- <pt x="523" y="-336" on="1"/>
- <pt x="580" y="-345" on="0"/>
- <pt x="620" y="-345" on="1"/>
- <pt x="730" y="-345" on="0"/>
- <pt x="730" y="-278" on="1"/>
- <pt x="730" y="-204" on="0"/>
- <pt x="572" y="-188" on="1"/>
- <pt x="572" y="-111" on="1"/>
- <pt x="706" y="-114" on="0"/>
- <pt x="772" y="-143" on="1"/>
- <pt x="865" y="-185" on="0"/>
- <pt x="865" y="-280" on="1"/>
- <pt x="865" y="-432" on="0"/>
- <pt x="648" y="-432" on="1"/>
- <pt x="589" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 92 values pushed */
- 0 0 28 44 39 48 196 8 14 11 2 33 32 26 25 4 13 39 0 0 0 24 23 15 1
- 1 12 11 15 1 14 2 4 48 196 15 14 1 13 10 9 0 3 2 0 2 1 0 14 0
- 0 30 42 37 19 9 4 48 196 33 32 26 25 23 15 11 10 9 8 2 11 13 37 4 12
- 0 0 24 14 13 12 33 3 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="S" xMin="120" yMin="-37" xMax="1243" yMax="1517">
- <contour>
- <pt x="120" y="52" on="1"/>
- <pt x="120" y="260" on="1"/>
- <pt x="416" y="120" on="0"/>
- <pt x="704" y="120" on="1"/>
- <pt x="1027" y="120" on="0"/>
- <pt x="1027" y="359" on="1"/>
- <pt x="1027" y="483" on="0"/>
- <pt x="938" y="541" on="1"/>
- <pt x="869" y="587" on="0"/>
- <pt x="716" y="637" on="1"/>
- <pt x="515" y="703" on="1"/>
- <pt x="128" y="830" on="0"/>
- <pt x="128" y="1122" on="1"/>
- <pt x="128" y="1517" on="0"/>
- <pt x="670" y="1517" on="1"/>
- <pt x="902" y="1517" on="0"/>
- <pt x="1151" y="1454" on="1"/>
- <pt x="1151" y="1261" on="1"/>
- <pt x="891" y="1360" on="0"/>
- <pt x="657" y="1360" on="1"/>
- <pt x="331" y="1360" on="0"/>
- <pt x="331" y="1138" on="1"/>
- <pt x="331" y="1051" on="0"/>
- <pt x="392" y="998" on="1"/>
- <pt x="455" y="943" on="0"/>
- <pt x="614" y="891" on="1"/>
- <pt x="820" y="824" on="1"/>
- <pt x="1053" y="748" on="0"/>
- <pt x="1148" y="650" on="1"/>
- <pt x="1243" y="553" on="0"/>
- <pt x="1243" y="390" on="1"/>
- <pt x="1243" y="193" on="0"/>
- <pt x="1097" y="78" on="1"/>
- <pt x="952" y="-37" on="0"/>
- <pt x="696" y="-37" on="1"/>
- <pt x="444" y="-37" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 52 values pushed */
- 0 0 19 29 14 3 29 34 48 196 34 2 14 0 1 1 17 16 1 0 4 0 2 3 0
- 0 14 0 0 21 43 12 5 9 30 48 196 12 12 16 0 2 30 16 17 16 1 1 0 1
- 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Sacute" xMin="120" yMin="-37" xMax="1243" yMax="1925">
- <contour>
- <pt x="120" y="52" on="1"/>
- <pt x="120" y="260" on="1"/>
- <pt x="416" y="120" on="0"/>
- <pt x="704" y="120" on="1"/>
- <pt x="1027" y="120" on="0"/>
- <pt x="1027" y="359" on="1"/>
- <pt x="1027" y="483" on="0"/>
- <pt x="938" y="541" on="1"/>
- <pt x="869" y="587" on="0"/>
- <pt x="716" y="637" on="1"/>
- <pt x="515" y="703" on="1"/>
- <pt x="128" y="830" on="0"/>
- <pt x="128" y="1122" on="1"/>
- <pt x="128" y="1517" on="0"/>
- <pt x="670" y="1517" on="1"/>
- <pt x="902" y="1517" on="0"/>
- <pt x="1151" y="1454" on="1"/>
- <pt x="1151" y="1261" on="1"/>
- <pt x="891" y="1360" on="0"/>
- <pt x="657" y="1360" on="1"/>
- <pt x="331" y="1360" on="0"/>
- <pt x="331" y="1138" on="1"/>
- <pt x="331" y="1051" on="0"/>
- <pt x="392" y="998" on="1"/>
- <pt x="455" y="943" on="0"/>
- <pt x="614" y="891" on="1"/>
- <pt x="820" y="824" on="1"/>
- <pt x="1053" y="748" on="0"/>
- <pt x="1148" y="650" on="1"/>
- <pt x="1243" y="553" on="0"/>
- <pt x="1243" y="390" on="1"/>
- <pt x="1243" y="193" on="0"/>
- <pt x="1097" y="78" on="1"/>
- <pt x="952" y="-37" on="0"/>
- <pt x="696" y="-37" on="1"/>
- <pt x="444" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="523" y="1604" on="1"/>
- <pt x="764" y="1925" on="1"/>
- <pt x="992" y="1925" on="1"/>
- <pt x="671" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 19 29 14 3 29 34 48 196 34 2 14 0 1 1 17 16 1 0 4 0 2 3 0
- 0 38 37 1 39 36 1 2 0 14 0 0 21 43 12 5 9 30 48 196 12 39 38 37 36
- 12 5 16 0 3 30 16 17 16 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Scaron" xMin="120" yMin="-37" xMax="1243" yMax="1925">
- <contour>
- <pt x="120" y="52" on="1"/>
- <pt x="120" y="260" on="1"/>
- <pt x="416" y="120" on="0"/>
- <pt x="704" y="120" on="1"/>
- <pt x="1027" y="120" on="0"/>
- <pt x="1027" y="359" on="1"/>
- <pt x="1027" y="483" on="0"/>
- <pt x="938" y="541" on="1"/>
- <pt x="869" y="587" on="0"/>
- <pt x="716" y="637" on="1"/>
- <pt x="515" y="703" on="1"/>
- <pt x="128" y="830" on="0"/>
- <pt x="128" y="1122" on="1"/>
- <pt x="128" y="1517" on="0"/>
- <pt x="670" y="1517" on="1"/>
- <pt x="902" y="1517" on="0"/>
- <pt x="1151" y="1454" on="1"/>
- <pt x="1151" y="1261" on="1"/>
- <pt x="891" y="1360" on="0"/>
- <pt x="657" y="1360" on="1"/>
- <pt x="331" y="1360" on="0"/>
- <pt x="331" y="1138" on="1"/>
- <pt x="331" y="1051" on="0"/>
- <pt x="392" y="998" on="1"/>
- <pt x="455" y="943" on="0"/>
- <pt x="614" y="891" on="1"/>
- <pt x="820" y="824" on="1"/>
- <pt x="1053" y="748" on="0"/>
- <pt x="1148" y="650" on="1"/>
- <pt x="1243" y="553" on="0"/>
- <pt x="1243" y="390" on="1"/>
- <pt x="1243" y="193" on="0"/>
- <pt x="1097" y="78" on="1"/>
- <pt x="952" y="-37" on="0"/>
- <pt x="696" y="-37" on="1"/>
- <pt x="444" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="1021" y="1925" on="1"/>
- <pt x="780" y="1604" on="1"/>
- <pt x="562" y="1604" on="1"/>
- <pt x="321" y="1925" on="1"/>
- <pt x="469" y="1925" on="1"/>
- <pt x="670" y="1723" on="1"/>
- <pt x="672" y="1723" on="1"/>
- <pt x="873" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 0 0 19 29 14 3 29 34 48 196 34 2 14 0 42 41 2 36 37 3 1 1 17 16 1
- 0 4 0 2 3 0 0 43 40 39 36 3 38 37 1 2 0 14 0 0 21 43 12 5 9
- 30 48 196 12 43 42 41 40 39 38 37 36 12 9 16 0 3 30 16 17 16 1 1 0 1
- 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Scedilla" xMin="120" yMin="-432" xMax="1243" yMax="1517">
- <contour>
- <pt x="120" y="52" on="1"/>
- <pt x="120" y="260" on="1"/>
- <pt x="416" y="120" on="0"/>
- <pt x="704" y="120" on="1"/>
- <pt x="1027" y="120" on="0"/>
- <pt x="1027" y="359" on="1"/>
- <pt x="1027" y="483" on="0"/>
- <pt x="938" y="541" on="1"/>
- <pt x="870" y="587" on="0"/>
- <pt x="716" y="637" on="1"/>
- <pt x="515" y="703" on="1"/>
- <pt x="128" y="830" on="0"/>
- <pt x="128" y="1122" on="1"/>
- <pt x="128" y="1517" on="0"/>
- <pt x="670" y="1517" on="1"/>
- <pt x="902" y="1517" on="0"/>
- <pt x="1151" y="1454" on="1"/>
- <pt x="1151" y="1261" on="1"/>
- <pt x="891" y="1360" on="0"/>
- <pt x="657" y="1360" on="1"/>
- <pt x="331" y="1360" on="0"/>
- <pt x="331" y="1138" on="1"/>
- <pt x="331" y="1051" on="0"/>
- <pt x="392" y="998" on="1"/>
- <pt x="455" y="943" on="0"/>
- <pt x="614" y="891" on="1"/>
- <pt x="820" y="824" on="1"/>
- <pt x="1053" y="748" on="0"/>
- <pt x="1148" y="650" on="1"/>
- <pt x="1243" y="553" on="0"/>
- <pt x="1243" y="391" on="1"/>
- <pt x="1243" y="192" on="0"/>
- <pt x="1097" y="78" on="1"/>
- <pt x="951" y="-37" on="0"/>
- <pt x="696" y="-37" on="1"/>
- <pt x="444" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="601" y="0" on="1"/>
- <pt x="698" y="0" on="1"/>
- <pt x="638" y="-109" on="1"/>
- <pt x="710" y="-111" on="0"/>
- <pt x="762" y="-148" on="1"/>
- <pt x="832" y="-197" on="0"/>
- <pt x="832" y="-269" on="1"/>
- <pt x="832" y="-337" on="0"/>
- <pt x="773" y="-384" on="1"/>
- <pt x="714" y="-432" on="0"/>
- <pt x="629" y="-432" on="1"/>
- <pt x="562" y="-432" on="0"/>
- <pt x="485" y="-411" on="1"/>
- <pt x="485" y="-330" on="1"/>
- <pt x="535" y="-345" on="0"/>
- <pt x="589" y="-345" on="1"/>
- <pt x="693" y="-345" on="0"/>
- <pt x="693" y="-271" on="1"/>
- <pt x="693" y="-178" on="0"/>
- <pt x="506" y="-175" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 79 values pushed */
- 0 0 51 44 46 19 29 14 3 29 34 48 196 34 2 14 0 1 1 17 16 1 0 4 0
- 2 3 0 0 1 55 49 48 38 37 36 6 13 46 2 0 14 0 0 53 42 42 21 43 12
- 5 9 30 48 196 42 12 55 49 48 42 38 37 36 12 8 16 0 3 30 16 17 16 1 1
- 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Scircumflex" xMin="120" yMin="-37" xMax="1243" yMax="1925">
- <contour>
- <pt x="120" y="52" on="1"/>
- <pt x="120" y="260" on="1"/>
- <pt x="416" y="120" on="0"/>
- <pt x="704" y="120" on="1"/>
- <pt x="1027" y="120" on="0"/>
- <pt x="1027" y="359" on="1"/>
- <pt x="1027" y="483" on="0"/>
- <pt x="938" y="541" on="1"/>
- <pt x="869" y="587" on="0"/>
- <pt x="716" y="637" on="1"/>
- <pt x="515" y="703" on="1"/>
- <pt x="128" y="830" on="0"/>
- <pt x="128" y="1122" on="1"/>
- <pt x="128" y="1517" on="0"/>
- <pt x="670" y="1517" on="1"/>
- <pt x="902" y="1517" on="0"/>
- <pt x="1151" y="1454" on="1"/>
- <pt x="1151" y="1261" on="1"/>
- <pt x="891" y="1360" on="0"/>
- <pt x="657" y="1360" on="1"/>
- <pt x="331" y="1360" on="0"/>
- <pt x="331" y="1138" on="1"/>
- <pt x="331" y="1051" on="0"/>
- <pt x="392" y="998" on="1"/>
- <pt x="455" y="943" on="0"/>
- <pt x="614" y="891" on="1"/>
- <pt x="820" y="824" on="1"/>
- <pt x="1053" y="748" on="0"/>
- <pt x="1148" y="650" on="1"/>
- <pt x="1243" y="553" on="0"/>
- <pt x="1243" y="390" on="1"/>
- <pt x="1243" y="193" on="0"/>
- <pt x="1097" y="78" on="1"/>
- <pt x="952" y="-37" on="0"/>
- <pt x="696" y="-37" on="1"/>
- <pt x="444" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="321" y="1604" on="1"/>
- <pt x="562" y="1925" on="1"/>
- <pt x="780" y="1925" on="1"/>
- <pt x="1021" y="1604" on="1"/>
- <pt x="873" y="1604" on="1"/>
- <pt x="672" y="1806" on="1"/>
- <pt x="670" y="1806" on="1"/>
- <pt x="469" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 0 0 19 29 14 3 29 34 48 196 34 2 14 0 42 41 2 37 36 3 1 1 17 16 1
- 0 4 0 2 3 0 0 38 37 1 43 40 39 36 3 2 0 14 0 0 21 43 12 5 9
- 30 48 196 12 43 42 41 40 39 38 37 36 12 9 16 0 3 30 16 17 16 1 1 0 1
- 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Scommaaccent" xMin="120" yMin="-432" xMax="1243" yMax="1517">
- <contour>
- <pt x="120" y="52" on="1"/>
- <pt x="120" y="260" on="1"/>
- <pt x="416" y="120" on="0"/>
- <pt x="704" y="120" on="1"/>
- <pt x="1027" y="120" on="0"/>
- <pt x="1027" y="359" on="1"/>
- <pt x="1027" y="483" on="0"/>
- <pt x="938" y="541" on="1"/>
- <pt x="870" y="587" on="0"/>
- <pt x="716" y="637" on="1"/>
- <pt x="515" y="703" on="1"/>
- <pt x="128" y="830" on="0"/>
- <pt x="128" y="1122" on="1"/>
- <pt x="128" y="1517" on="0"/>
- <pt x="670" y="1517" on="1"/>
- <pt x="902" y="1517" on="0"/>
- <pt x="1151" y="1454" on="1"/>
- <pt x="1151" y="1261" on="1"/>
- <pt x="891" y="1360" on="0"/>
- <pt x="657" y="1360" on="1"/>
- <pt x="331" y="1360" on="0"/>
- <pt x="331" y="1138" on="1"/>
- <pt x="331" y="1051" on="0"/>
- <pt x="392" y="998" on="1"/>
- <pt x="455" y="943" on="0"/>
- <pt x="614" y="891" on="1"/>
- <pt x="820" y="824" on="1"/>
- <pt x="1053" y="748" on="0"/>
- <pt x="1148" y="650" on="1"/>
- <pt x="1243" y="553" on="0"/>
- <pt x="1243" y="391" on="1"/>
- <pt x="1243" y="192" on="0"/>
- <pt x="1097" y="78" on="1"/>
- <pt x="951" y="-37" on="0"/>
- <pt x="696" y="-37" on="1"/>
- <pt x="444" y="-37" on="0"/>
- </contour>
- <contour>
- <pt x="524" y="-421" on="1"/>
- <pt x="524" y="-336" on="1"/>
- <pt x="581" y="-345" on="0"/>
- <pt x="621" y="-345" on="1"/>
- <pt x="731" y="-345" on="0"/>
- <pt x="731" y="-278" on="1"/>
- <pt x="731" y="-204" on="0"/>
- <pt x="573" y="-188" on="1"/>
- <pt x="573" y="-111" on="1"/>
- <pt x="707" y="-114" on="0"/>
- <pt x="773" y="-143" on="1"/>
- <pt x="866" y="-185" on="0"/>
- <pt x="866" y="-280" on="1"/>
- <pt x="866" y="-432" on="0"/>
- <pt x="649" y="-432" on="1"/>
- <pt x="590" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 75 values pushed */
- 0 0 39 44 50 19 29 14 3 29 34 48 196 34 2 14 0 1 1 17 16 1 0 4 0
- 2 3 0 0 1 44 43 37 36 4 13 50 2 0 14 0 0 41 42 48 21 43 12 5 9
- 30 48 196 48 12 48 44 43 37 36 12 6 16 0 3 30 16 17 16 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="T" xMin="20" yMin="0" xMax="1230" yMax="1480">
- <contour>
- <pt x="520" y="0" on="1"/>
- <pt x="520" y="1323" on="1"/>
- <pt x="20" y="1323" on="1"/>
- <pt x="20" y="1480" on="1"/>
- <pt x="1230" y="1480" on="1"/>
- <pt x="1230" y="1323" on="1"/>
- <pt x="730" y="1323" on="1"/>
- <pt x="730" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 43 values pushed */
- 0 0 6 5 2 1 15 3 3 1 4 48 196 7 0 1 0 4 3 0 14 0 0 7 6
- 33 1 0 1 4 48 196 5 4 1 1 0 1 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Tbar" xMin="20" yMin="0" xMax="1230" yMax="1480">
- <contour>
- <pt x="520" y="0" on="1"/>
- <pt x="520" y="715" on="1"/>
- <pt x="217" y="715" on="1"/>
- <pt x="217" y="863" on="1"/>
- <pt x="520" y="863" on="1"/>
- <pt x="520" y="1323" on="1"/>
- <pt x="20" y="1323" on="1"/>
- <pt x="20" y="1480" on="1"/>
- <pt x="1230" y="1480" on="1"/>
- <pt x="1230" y="1323" on="1"/>
- <pt x="730" y="1323" on="1"/>
- <pt x="730" y="863" on="1"/>
- <pt x="1033" y="863" on="1"/>
- <pt x="1033" y="715" on="1"/>
- <pt x="730" y="715" on="1"/>
- <pt x="730" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 66 values pushed */
- 0 0 10 9 6 5 15 3 7 14 13 2 1 7 3 3 2 4 48 196 12 11 4 3 3
- 15 0 1 2 0 8 7 0 14 0 0 15 14 11 10 33 3 0 1 4 48 196 9 8 1
- 13 12 1 5 4 1 0 3 3 2 1 7 6 1 5 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Tcaron" xMin="20" yMin="0" xMax="1230" yMax="1925">
- <contour>
- <pt x="520" y="0" on="1"/>
- <pt x="520" y="1323" on="1"/>
- <pt x="20" y="1323" on="1"/>
- <pt x="20" y="1480" on="1"/>
- <pt x="1230" y="1480" on="1"/>
- <pt x="1230" y="1323" on="1"/>
- <pt x="730" y="1323" on="1"/>
- <pt x="730" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="975" y="1925" on="1"/>
- <pt x="734" y="1604" on="1"/>
- <pt x="516" y="1604" on="1"/>
- <pt x="275" y="1925" on="1"/>
- <pt x="423" y="1925" on="1"/>
- <pt x="624" y="1723" on="1"/>
- <pt x="626" y="1723" on="1"/>
- <pt x="827" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 78 values pushed */
- 14 13 2 8 9 3 0 0 6 5 2 1 15 3 3 1 4 48 196 15 12 11 8 3 10
- 9 1 7 0 1 3 0 4 3 0 14 15 9 8 3 4 6 3 14 13 2 6 0 3 12
- 11 10 3 0 2 3 0 0 7 6 33 1 0 1 4 48 196 5 4 1 1 0 1 3 2
- 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Tcommaaccent" xMin="20" yMin="-432" xMax="1230" yMax="1480">
- <contour>
- <pt x="520" y="0" on="1"/>
- <pt x="520" y="1323" on="1"/>
- <pt x="20" y="1323" on="1"/>
- <pt x="20" y="1480" on="1"/>
- <pt x="1230" y="1480" on="1"/>
- <pt x="1230" y="1323" on="1"/>
- <pt x="730" y="1323" on="1"/>
- <pt x="730" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="586" y="0" on="1"/>
- <pt x="683" y="0" on="1"/>
- <pt x="623" y="-109" on="1"/>
- <pt x="695" y="-111" on="0"/>
- <pt x="747" y="-148" on="1"/>
- <pt x="817" y="-197" on="0"/>
- <pt x="817" y="-268" on="1"/>
- <pt x="817" y="-337" on="0"/>
- <pt x="759" y="-384" on="1"/>
- <pt x="700" y="-432" on="0"/>
- <pt x="614" y="-432" on="1"/>
- <pt x="546" y="-432" on="0"/>
- <pt x="470" y="-411" on="1"/>
- <pt x="470" y="-330" on="1"/>
- <pt x="520" y="-345" on="0"/>
- <pt x="574" y="-345" on="1"/>
- <pt x="678" y="-345" on="0"/>
- <pt x="678" y="-271" on="1"/>
- <pt x="678" y="-178" on="0"/>
- <pt x="491" y="-175" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 0 0 23 44 18 48 196 27 21 20 10 4 13 18 0 0 0 6 5 2 1 15 3 3 1
- 4 48 196 9 8 7 0 3 0 4 3 0 14 0 0 25 42 14 48 196 14 14 4 6 2
- 10 9 8 3 6 0 3 27 21 20 3 0 2 3 0 0 7 6 33 1 0 1 4 48 196
- 5 4 1 1 0 1 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Tcommabelow" xMin="20" yMin="-432" xMax="1230" yMax="1480">
- <contour>
- <pt x="520" y="0" on="1"/>
- <pt x="520" y="1323" on="1"/>
- <pt x="20" y="1323" on="1"/>
- <pt x="20" y="1480" on="1"/>
- <pt x="1230" y="1480" on="1"/>
- <pt x="1230" y="1323" on="1"/>
- <pt x="730" y="1323" on="1"/>
- <pt x="730" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="471" y="-421" on="1"/>
- <pt x="471" y="-336" on="1"/>
- <pt x="528" y="-345" on="0"/>
- <pt x="568" y="-345" on="1"/>
- <pt x="678" y="-345" on="0"/>
- <pt x="678" y="-278" on="1"/>
- <pt x="678" y="-204" on="0"/>
- <pt x="520" y="-188" on="1"/>
- <pt x="520" y="-111" on="1"/>
- <pt x="654" y="-114" on="0"/>
- <pt x="720" y="-143" on="1"/>
- <pt x="813" y="-185" on="0"/>
- <pt x="813" y="-280" on="1"/>
- <pt x="813" y="-432" on="0"/>
- <pt x="596" y="-432" on="1"/>
- <pt x="537" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 78 values pushed */
- 0 0 11 32 22 48 196 16 15 9 8 4 13 22 0 0 0 6 5 2 1 37 3 3 1
- 4 48 196 7 0 1 0 4 3 0 14 0 0 13 22 20 48 196 20 20 4 6 2 9 8
- 2 0 2 3 0 0 7 6 9 1 0 1 4 48 196 5 4 1 16 15 1 0 3 3 2
- 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Thorn" xMin="167" yMin="0" xMax="1318" yMax="1480">
- <contour>
- <pt x="167" y="0" on="1"/>
- <pt x="167" y="1480" on="1"/>
- <pt x="377" y="1480" on="1"/>
- <pt x="377" y="1201" on="1"/>
- <pt x="747" y="1201" on="1"/>
- <pt x="975" y="1201" on="0"/>
- <pt x="1075" y="1174" on="1"/>
- <pt x="1175" y="1148" on="0"/>
- <pt x="1239" y="1071" on="1"/>
- <pt x="1318" y="976" on="0"/>
- <pt x="1318" y="810" on="1"/>
- <pt x="1318" y="308" on="0"/>
- <pt x="685" y="308" on="1"/>
- <pt x="375" y="308" on="1"/>
- <pt x="375" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="375" y="467" on="1"/>
- <pt x="676" y="467" on="1"/>
- <pt x="1096" y="467" on="0"/>
- <pt x="1096" y="796" on="1"/>
- <pt x="1096" y="956" on="0"/>
- <pt x="987" y="1003" on="1"/>
- <pt x="894" y="1043" on="0"/>
- <pt x="681" y="1043" on="1"/>
- <pt x="375" y="1043" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 68 values pushed */
- 0 0 23 22 15 1 3 16 15 15 1 12 2 4 48 196 4 3 1 13 12 1 14 0 1
- 3 0 2 1 0 14 0 0 18 26 10 48 196 22 16 12 4 4 13 10 2 0 0 3 2
- 33 1 0 23 15 14 13 33 3 0 2 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="U" xMin="166" yMin="-37" xMax="1312" yMax="1480">
- <contour>
- <pt x="166" y="1480" on="1"/>
- <pt x="376" y="1480" on="1"/>
- <pt x="376" y="546" on="1"/>
- <pt x="376" y="388" on="0"/>
- <pt x="402" y="314" on="1"/>
- <pt x="427" y="241" on="0"/>
- <pt x="499" y="190" on="1"/>
- <pt x="599" y="120" on="0"/>
- <pt x="768" y="120" on="1"/>
- <pt x="967" y="120" on="0"/>
- <pt x="1047" y="214" on="1"/>
- <pt x="1128" y="307" on="0"/>
- <pt x="1128" y="539" on="1"/>
- <pt x="1128" y="1480" on="1"/>
- <pt x="1312" y="1480" on="1"/>
- <pt x="1312" y="542" on="1"/>
- <pt x="1312" y="344" on="0"/>
- <pt x="1273" y="242" on="1"/>
- <pt x="1234" y="139" on="0"/>
- <pt x="1129" y="64" on="1"/>
- <pt x="987" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="448" y="-37" on="0"/>
- <pt x="307" y="103" on="1"/>
- <pt x="166" y="243" on="0"/>
- <pt x="166" y="548" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 50 values pushed */
- 0 0 8 29 21 48 196 21 2 1 25 15 12 2 4 0 2 3 0 14 13 1 0 0 3
- 14 0 0 13 12 24 1 14 2 1 33 1 0 2 4 48 196 15 14 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Uacute" xMin="166" yMin="-37" xMax="1312" yMax="1925">
- <contour>
- <pt x="166" y="1480" on="1"/>
- <pt x="376" y="1480" on="1"/>
- <pt x="376" y="546" on="1"/>
- <pt x="376" y="388" on="0"/>
- <pt x="402" y="314" on="1"/>
- <pt x="427" y="241" on="0"/>
- <pt x="499" y="190" on="1"/>
- <pt x="599" y="120" on="0"/>
- <pt x="768" y="120" on="1"/>
- <pt x="967" y="120" on="0"/>
- <pt x="1047" y="214" on="1"/>
- <pt x="1128" y="307" on="0"/>
- <pt x="1128" y="539" on="1"/>
- <pt x="1128" y="1480" on="1"/>
- <pt x="1312" y="1480" on="1"/>
- <pt x="1312" y="542" on="1"/>
- <pt x="1312" y="344" on="0"/>
- <pt x="1273" y="242" on="1"/>
- <pt x="1234" y="139" on="0"/>
- <pt x="1129" y="64" on="1"/>
- <pt x="987" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="448" y="-37" on="0"/>
- <pt x="307" y="103" on="1"/>
- <pt x="166" y="243" on="0"/>
- <pt x="166" y="548" on="1"/>
- </contour>
- <contour>
- <pt x="604" y="1604" on="1"/>
- <pt x="845" y="1925" on="1"/>
- <pt x="1073" y="1925" on="1"/>
- <pt x="752" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 66 values pushed */
- 0 0 8 29 21 48 196 21 2 1 25 15 12 2 4 0 2 3 0 28 27 1 29 26 1
- 2 0 14 13 1 0 0 3 14 29 28 27 26 4 12 1 3 0 0 13 12 24 1 14 2
- 1 33 1 0 2 4 48 196 15 14 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ubreve" xMin="166" yMin="-37" xMax="1312" yMax="1925">
- <contour>
- <pt x="166" y="1480" on="1"/>
- <pt x="376" y="1480" on="1"/>
- <pt x="376" y="546" on="1"/>
- <pt x="376" y="388" on="0"/>
- <pt x="402" y="314" on="1"/>
- <pt x="427" y="241" on="0"/>
- <pt x="499" y="190" on="1"/>
- <pt x="599" y="120" on="0"/>
- <pt x="768" y="120" on="1"/>
- <pt x="967" y="120" on="0"/>
- <pt x="1047" y="214" on="1"/>
- <pt x="1128" y="307" on="0"/>
- <pt x="1128" y="539" on="1"/>
- <pt x="1128" y="1480" on="1"/>
- <pt x="1312" y="1480" on="1"/>
- <pt x="1312" y="542" on="1"/>
- <pt x="1312" y="344" on="0"/>
- <pt x="1273" y="242" on="1"/>
- <pt x="1234" y="139" on="0"/>
- <pt x="1129" y="64" on="1"/>
- <pt x="987" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="448" y="-37" on="0"/>
- <pt x="307" y="103" on="1"/>
- <pt x="166" y="243" on="0"/>
- <pt x="166" y="548" on="1"/>
- </contour>
- <contour>
- <pt x="419" y="1925" on="1"/>
- <pt x="542" y="1925" on="1"/>
- <pt x="563" y="1831" on="0"/>
- <pt x="617" y="1791" on="1"/>
- <pt x="669" y="1752" on="0"/>
- <pt x="752" y="1752" on="1"/>
- <pt x="846" y="1752" on="0"/>
- <pt x="900" y="1801" on="1"/>
- <pt x="943" y="1841" on="0"/>
- <pt x="962" y="1925" on="1"/>
- <pt x="1085" y="1925" on="1"/>
- <pt x="1069" y="1791" on="0"/>
- <pt x="996" y="1710" on="1"/>
- <pt x="902" y="1604" on="0"/>
- <pt x="752" y="1604" on="1"/>
- <pt x="595" y="1604" on="0"/>
- <pt x="500" y="1719" on="1"/>
- <pt x="435" y="1797" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 69 values pushed */
- 0 0 31 7 40 8 35 21 48 196 21 2 1 25 15 12 2 4 0 2 3 0 36 35 27
- 26 4 13 40 0 14 13 1 0 0 3 14 36 35 27 26 4 12 1 3 0 0 13 12 27
- 1 14 2 1 9 1 0 2 4 48 196 15 14 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ucircumflex" xMin="166" yMin="-37" xMax="1312" yMax="1925">
- <contour>
- <pt x="166" y="1480" on="1"/>
- <pt x="376" y="1480" on="1"/>
- <pt x="376" y="546" on="1"/>
- <pt x="376" y="388" on="0"/>
- <pt x="402" y="314" on="1"/>
- <pt x="427" y="241" on="0"/>
- <pt x="499" y="190" on="1"/>
- <pt x="599" y="120" on="0"/>
- <pt x="768" y="120" on="1"/>
- <pt x="967" y="120" on="0"/>
- <pt x="1047" y="214" on="1"/>
- <pt x="1128" y="307" on="0"/>
- <pt x="1128" y="539" on="1"/>
- <pt x="1128" y="1480" on="1"/>
- <pt x="1312" y="1480" on="1"/>
- <pt x="1312" y="542" on="1"/>
- <pt x="1312" y="344" on="0"/>
- <pt x="1273" y="242" on="1"/>
- <pt x="1234" y="139" on="0"/>
- <pt x="1129" y="64" on="1"/>
- <pt x="987" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="448" y="-37" on="0"/>
- <pt x="307" y="103" on="1"/>
- <pt x="166" y="243" on="0"/>
- <pt x="166" y="548" on="1"/>
- </contour>
- <contour>
- <pt x="402" y="1604" on="1"/>
- <pt x="643" y="1925" on="1"/>
- <pt x="861" y="1925" on="1"/>
- <pt x="1102" y="1604" on="1"/>
- <pt x="954" y="1604" on="1"/>
- <pt x="753" y="1806" on="1"/>
- <pt x="751" y="1806" on="1"/>
- <pt x="550" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 78 values pushed */
- 0 0 8 29 21 48 196 21 2 32 31 2 27 26 3 1 25 15 12 2 4 0 2 3 0
- 28 27 1 33 30 29 26 3 2 0 14 13 1 0 0 3 14 33 32 31 30 29 28 27 26
- 8 12 1 3 0 0 13 12 24 1 14 2 1 33 1 0 2 4 48 196 15 14 1 25 0
- 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Udieresis" xMin="166" yMin="-37" xMax="1312" yMax="1777">
- <contour>
- <pt x="166" y="1480" on="1"/>
- <pt x="376" y="1480" on="1"/>
- <pt x="376" y="546" on="1"/>
- <pt x="376" y="388" on="0"/>
- <pt x="402" y="314" on="1"/>
- <pt x="427" y="241" on="0"/>
- <pt x="499" y="190" on="1"/>
- <pt x="599" y="120" on="0"/>
- <pt x="768" y="120" on="1"/>
- <pt x="967" y="120" on="0"/>
- <pt x="1047" y="214" on="1"/>
- <pt x="1128" y="307" on="0"/>
- <pt x="1128" y="539" on="1"/>
- <pt x="1128" y="1480" on="1"/>
- <pt x="1312" y="1480" on="1"/>
- <pt x="1312" y="542" on="1"/>
- <pt x="1312" y="344" on="0"/>
- <pt x="1273" y="242" on="1"/>
- <pt x="1234" y="139" on="0"/>
- <pt x="1129" y="64" on="1"/>
- <pt x="987" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="448" y="-37" on="0"/>
- <pt x="307" y="103" on="1"/>
- <pt x="166" y="243" on="0"/>
- <pt x="166" y="548" on="1"/>
- </contour>
- <contour>
- <pt x="468" y="1604" on="1"/>
- <pt x="468" y="1777" on="1"/>
- <pt x="641" y="1777" on="1"/>
- <pt x="641" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="863" y="1604" on="1"/>
- <pt x="863" y="1777" on="1"/>
- <pt x="1036" y="1777" on="1"/>
- <pt x="1036" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 0 0 8 29 21 48 196 21 2 1 25 15 12 2 4 0 2 3 0 0 0 33 30 29 26
- 13 3 27 1 4 48 196 32 31 28 27 3 0 14 13 1 0 0 3 14 0 0 31 30 13
- 1 32 29 28 13 1 26 13 12 24 1 14 2 1 33 1 0 4 4 48 196 33 32 1 27
- 26 1 15 14 1 25 0 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ugrave" xMin="166" yMin="-37" xMax="1312" yMax="1925">
- <contour>
- <pt x="166" y="1480" on="1"/>
- <pt x="376" y="1480" on="1"/>
- <pt x="376" y="546" on="1"/>
- <pt x="376" y="388" on="0"/>
- <pt x="402" y="314" on="1"/>
- <pt x="427" y="241" on="0"/>
- <pt x="499" y="190" on="1"/>
- <pt x="599" y="120" on="0"/>
- <pt x="768" y="120" on="1"/>
- <pt x="967" y="120" on="0"/>
- <pt x="1047" y="214" on="1"/>
- <pt x="1128" y="307" on="0"/>
- <pt x="1128" y="539" on="1"/>
- <pt x="1128" y="1480" on="1"/>
- <pt x="1312" y="1480" on="1"/>
- <pt x="1312" y="542" on="1"/>
- <pt x="1312" y="344" on="0"/>
- <pt x="1273" y="242" on="1"/>
- <pt x="1234" y="139" on="0"/>
- <pt x="1129" y="64" on="1"/>
- <pt x="987" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="448" y="-37" on="0"/>
- <pt x="307" y="103" on="1"/>
- <pt x="166" y="243" on="0"/>
- <pt x="166" y="548" on="1"/>
- </contour>
- <contour>
- <pt x="900" y="1604" on="1"/>
- <pt x="752" y="1604" on="1"/>
- <pt x="431" y="1925" on="1"/>
- <pt x="659" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 66 values pushed */
- 0 0 8 29 21 48 196 21 2 1 25 15 12 2 4 0 2 3 0 29 28 1 27 26 1
- 2 0 14 13 1 0 0 3 14 29 28 27 26 4 12 1 3 0 0 13 12 24 1 14 2
- 1 33 1 0 2 4 48 196 15 14 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Uhungarumlaut" xMin="166" yMin="-37" xMax="1312" yMax="1925">
- <contour>
- <pt x="166" y="1480" on="1"/>
- <pt x="376" y="1480" on="1"/>
- <pt x="376" y="546" on="1"/>
- <pt x="376" y="388" on="0"/>
- <pt x="402" y="314" on="1"/>
- <pt x="427" y="241" on="0"/>
- <pt x="499" y="190" on="1"/>
- <pt x="599" y="120" on="0"/>
- <pt x="768" y="120" on="1"/>
- <pt x="967" y="120" on="0"/>
- <pt x="1047" y="214" on="1"/>
- <pt x="1128" y="307" on="0"/>
- <pt x="1128" y="539" on="1"/>
- <pt x="1128" y="1480" on="1"/>
- <pt x="1312" y="1480" on="1"/>
- <pt x="1312" y="542" on="1"/>
- <pt x="1312" y="344" on="0"/>
- <pt x="1273" y="242" on="1"/>
- <pt x="1234" y="139" on="0"/>
- <pt x="1129" y="64" on="1"/>
- <pt x="987" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="448" y="-37" on="0"/>
- <pt x="307" y="103" on="1"/>
- <pt x="166" y="243" on="0"/>
- <pt x="166" y="548" on="1"/>
- </contour>
- <contour>
- <pt x="499" y="1604" on="1"/>
- <pt x="740" y="1925" on="1"/>
- <pt x="931" y="1925" on="1"/>
- <pt x="610" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="851" y="1604" on="1"/>
- <pt x="1091" y="1925" on="1"/>
- <pt x="1282" y="1925" on="1"/>
- <pt x="962" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 79 values pushed */
- 0 0 8 29 21 48 196 21 2 33 30 29 26 4 27 0 3 1 25 15 12 2 4 0 2
- 3 0 32 31 28 27 3 0 14 13 1 0 0 3 14 32 14 12 2 33 31 30 29 28 27
- 26 7 12 1 3 0 0 13 12 24 1 14 2 1 33 1 0 2 4 48 196 15 14 1 25
- 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Umacron" xMin="166" yMin="-37" xMax="1312" yMax="1752">
- <contour>
- <pt x="166" y="1480" on="1"/>
- <pt x="376" y="1480" on="1"/>
- <pt x="376" y="546" on="1"/>
- <pt x="376" y="388" on="0"/>
- <pt x="402" y="314" on="1"/>
- <pt x="427" y="241" on="0"/>
- <pt x="499" y="190" on="1"/>
- <pt x="599" y="120" on="0"/>
- <pt x="768" y="120" on="1"/>
- <pt x="967" y="120" on="0"/>
- <pt x="1047" y="214" on="1"/>
- <pt x="1128" y="307" on="0"/>
- <pt x="1128" y="539" on="1"/>
- <pt x="1128" y="1480" on="1"/>
- <pt x="1312" y="1480" on="1"/>
- <pt x="1312" y="542" on="1"/>
- <pt x="1312" y="344" on="0"/>
- <pt x="1273" y="242" on="1"/>
- <pt x="1234" y="139" on="0"/>
- <pt x="1129" y="64" on="1"/>
- <pt x="987" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="448" y="-37" on="0"/>
- <pt x="307" y="103" on="1"/>
- <pt x="166" y="243" on="0"/>
- <pt x="166" y="548" on="1"/>
- </contour>
- <contour>
- <pt x="431" y="1604" on="1"/>
- <pt x="431" y="1752" on="1"/>
- <pt x="1073" y="1752" on="1"/>
- <pt x="1073" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 0 0 8 29 21 48 196 21 2 1 25 15 12 2 4 0 2 3 0 0 0 29 26 7 1
- 27 1 4 48 196 28 27 1 0 14 13 1 0 0 3 14 0 0 13 12 24 1 14 2 1
- 33 1 0 2 4 48 196 29 28 1 27 26 1 15 14 1 25 0 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Unterkomma" xMin="170" yMin="-432" xMax="512" yMax="-111">
- <contour>
- <pt x="170" y="-421" on="1"/>
- <pt x="170" y="-336" on="1"/>
- <pt x="227" y="-345" on="0"/>
- <pt x="267" y="-345" on="1"/>
- <pt x="377" y="-345" on="0"/>
- <pt x="377" y="-278" on="1"/>
- <pt x="377" y="-204" on="0"/>
- <pt x="219" y="-188" on="1"/>
- <pt x="219" y="-111" on="1"/>
- <pt x="353" y="-114" on="0"/>
- <pt x="419" y="-143" on="1"/>
- <pt x="512" y="-185" on="0"/>
- <pt x="512" y="-280" on="1"/>
- <pt x="512" y="-432" on="0"/>
- <pt x="295" y="-432" on="1"/>
- <pt x="236" y="-432" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 0 0 3 44 14 48 196 14 8 7 1 0 14 0 0 5 42 12 48 196 12 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Uogonek" xMin="166" yMin="-370" xMax="1312" yMax="1480">
- <contour>
- <pt x="166" y="1480" on="1"/>
- <pt x="376" y="1480" on="1"/>
- <pt x="376" y="546" on="1"/>
- <pt x="376" y="388" on="0"/>
- <pt x="402" y="314" on="1"/>
- <pt x="427" y="241" on="0"/>
- <pt x="499" y="190" on="1"/>
- <pt x="599" y="120" on="0"/>
- <pt x="768" y="120" on="1"/>
- <pt x="967" y="120" on="0"/>
- <pt x="1047" y="214" on="1"/>
- <pt x="1128" y="307" on="0"/>
- <pt x="1128" y="539" on="1"/>
- <pt x="1128" y="1480" on="1"/>
- <pt x="1312" y="1480" on="1"/>
- <pt x="1312" y="542" on="1"/>
- <pt x="1312" y="344" on="0"/>
- <pt x="1273" y="242" on="1"/>
- <pt x="1234" y="139" on="0"/>
- <pt x="1129" y="64" on="1"/>
- <pt x="987" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="448" y="-37" on="0"/>
- <pt x="307" y="103" on="1"/>
- <pt x="166" y="243" on="0"/>
- <pt x="166" y="548" on="1"/>
- </contour>
- <contour>
- <pt x="800" y="0" on="1"/>
- <pt x="907" y="0" on="1"/>
- <pt x="779" y="-81" on="0"/>
- <pt x="779" y="-179" on="1"/>
- <pt x="779" y="-275" on="0"/>
- <pt x="894" y="-275" on="1"/>
- <pt x="947" y="-275" on="0"/>
- <pt x="984" y="-260" on="1"/>
- <pt x="984" y="-341" on="1"/>
- <pt x="922" y="-370" on="0"/>
- <pt x="844" y="-370" on="1"/>
- <pt x="642" y="-370" on="0"/>
- <pt x="642" y="-212" on="1"/>
- <pt x="642" y="-90" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 0 0 31 21 36 8 29 21 48 196 21 2 1 25 15 12 2 4 0 2 3 0 1 34 33
- 27 26 4 13 36 2 0 14 13 1 0 0 3 14 0 0 29 42 38 48 196 38 38 34 33
- 27 26 5 12 1 3 0 0 13 12 24 1 14 2 1 33 1 0 2 4 48 196 15 14 1
- 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Uring" xMin="166" yMin="-37" xMax="1312" yMax="2033">
- <contour>
- <pt x="166" y="1480" on="1"/>
- <pt x="376" y="1480" on="1"/>
- <pt x="376" y="546" on="1"/>
- <pt x="376" y="388" on="0"/>
- <pt x="402" y="314" on="1"/>
- <pt x="427" y="241" on="0"/>
- <pt x="499" y="190" on="1"/>
- <pt x="599" y="120" on="0"/>
- <pt x="768" y="120" on="1"/>
- <pt x="967" y="120" on="0"/>
- <pt x="1047" y="214" on="1"/>
- <pt x="1128" y="307" on="0"/>
- <pt x="1128" y="539" on="1"/>
- <pt x="1128" y="1480" on="1"/>
- <pt x="1312" y="1480" on="1"/>
- <pt x="1312" y="542" on="1"/>
- <pt x="1312" y="344" on="0"/>
- <pt x="1273" y="242" on="1"/>
- <pt x="1234" y="139" on="0"/>
- <pt x="1129" y="64" on="1"/>
- <pt x="987" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="448" y="-37" on="0"/>
- <pt x="307" y="103" on="1"/>
- <pt x="166" y="243" on="0"/>
- <pt x="166" y="548" on="1"/>
- </contour>
- <contour>
- <pt x="752" y="2033" on="1"/>
- <pt x="846" y="2033" on="0"/>
- <pt x="912" y="1967" on="1"/>
- <pt x="979" y="1901" on="0"/>
- <pt x="979" y="1807" on="1"/>
- <pt x="979" y="1711" on="0"/>
- <pt x="912" y="1645" on="1"/>
- <pt x="846" y="1579" on="0"/>
- <pt x="750" y="1579" on="1"/>
- <pt x="667" y="1579" on="0"/>
- <pt x="605" y="1633" on="1"/>
- <pt x="525" y="1702" on="0"/>
- <pt x="525" y="1806" on="1"/>
- <pt x="525" y="1900" on="0"/>
- <pt x="591" y="1966" on="1"/>
- <pt x="658" y="2033" on="0"/>
- </contour>
- <contour>
- <pt x="752" y="1946" on="1"/>
- <pt x="693" y="1946" on="0"/>
- <pt x="652" y="1905" on="1"/>
- <pt x="611" y="1864" on="0"/>
- <pt x="611" y="1806" on="1"/>
- <pt x="611" y="1748" on="0"/>
- <pt x="652" y="1707" on="1"/>
- <pt x="694" y="1665" on="0"/>
- <pt x="750" y="1665" on="1"/>
- <pt x="804" y="1665" on="0"/>
- <pt x="843" y="1698" on="1"/>
- <pt x="893" y="1741" on="0"/>
- <pt x="893" y="1807" on="1"/>
- <pt x="893" y="1865" on="0"/>
- <pt x="851" y="1905" on="1"/>
- <pt x="810" y="1946" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 0 0 50 44 34 42 44 26 8 29 21 48 196 21 2 1 25 15 12 2 4 0 2 3 0
- 34 26 0 14 13 1 0 0 3 14 0 0 54 32 30 46 32 38 48 196 38 30 38 30 2
- 12 1 3 0 0 13 12 24 1 14 2 1 33 1 0 2 4 48 196 15 14 1 25 0 1
- 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Utilde" xMin="166" yMin="-37" xMax="1312" yMax="1838">
- <contour>
- <pt x="166" y="1480" on="1"/>
- <pt x="376" y="1480" on="1"/>
- <pt x="376" y="546" on="1"/>
- <pt x="376" y="388" on="0"/>
- <pt x="402" y="314" on="1"/>
- <pt x="427" y="241" on="0"/>
- <pt x="499" y="190" on="1"/>
- <pt x="599" y="120" on="0"/>
- <pt x="768" y="120" on="1"/>
- <pt x="967" y="120" on="0"/>
- <pt x="1047" y="214" on="1"/>
- <pt x="1128" y="307" on="0"/>
- <pt x="1128" y="539" on="1"/>
- <pt x="1128" y="1480" on="1"/>
- <pt x="1312" y="1480" on="1"/>
- <pt x="1312" y="542" on="1"/>
- <pt x="1312" y="344" on="0"/>
- <pt x="1273" y="242" on="1"/>
- <pt x="1234" y="139" on="0"/>
- <pt x="1129" y="64" on="1"/>
- <pt x="987" y="-37" on="0"/>
- <pt x="750" y="-37" on="1"/>
- <pt x="448" y="-37" on="0"/>
- <pt x="307" y="103" on="1"/>
- <pt x="166" y="243" on="0"/>
- <pt x="166" y="548" on="1"/>
- </contour>
- <contour>
- <pt x="419" y="1604" on="1"/>
- <pt x="426" y="1697" on="0"/>
- <pt x="451" y="1748" on="1"/>
- <pt x="497" y="1838" on="0"/>
- <pt x="606" y="1838" on="1"/>
- <pt x="678" y="1838" on="0"/>
- <pt x="739" y="1800" on="1"/>
- <pt x="799" y="1763" on="1"/>
- <pt x="856" y="1728" on="0"/>
- <pt x="886" y="1728" on="1"/>
- <pt x="951" y="1728" on="0"/>
- <pt x="962" y="1838" on="1"/>
- <pt x="1085" y="1838" on="1"/>
- <pt x="1078" y="1744" on="0"/>
- <pt x="1053" y="1694" on="1"/>
- <pt x="1008" y="1604" on="0"/>
- <pt x="900" y="1604" on="1"/>
- <pt x="828" y="1604" on="0"/>
- <pt x="765" y="1643" on="1"/>
- <pt x="705" y="1680" on="1"/>
- <pt x="650" y="1714" on="0"/>
- <pt x="618" y="1714" on="1"/>
- <pt x="553" y="1714" on="0"/>
- <pt x="542" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 73 values pushed */
- 0 0 47 6 30 35 6 42 8 35 21 48 196 21 2 1 25 15 12 2 4 0 2 3 0
- 49 38 37 26 4 13 42 30 0 14 13 1 0 0 3 14 49 38 37 26 4 12 1 3 0
- 0 13 12 27 1 14 2 1 9 1 0 2 4 48 196 15 14 1 25 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="V" xMin="36" yMin="0" xMax="1355" yMax="1480">
- <contour>
- <pt x="607" y="0" on="1"/>
- <pt x="36" y="1480" on="1"/>
- <pt x="252" y="1480" on="1"/>
- <pt x="724" y="265" on="1"/>
- <pt x="1176" y="1480" on="1"/>
- <pt x="1355" y="1480" on="1"/>
- <pt x="805" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 22 values pushed */
- 3 1 0 2 6 0 1 0 5 4 2 1 0 3 14 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="W" xMin="25" yMin="0" xMax="1908" yMax="1480">
- <contour>
- <pt x="406" y="0" on="1"/>
- <pt x="25" y="1480" on="1"/>
- <pt x="227" y="1480" on="1"/>
- <pt x="530" y="311" on="1"/>
- <pt x="877" y="1480" on="1"/>
- <pt x="1079" y="1480" on="1"/>
- <pt x="1412" y="322" on="1"/>
- <pt x="1737" y="1480" on="1"/>
- <pt x="1908" y="1480" on="1"/>
- <pt x="1492" y="0" on="1"/>
- <pt x="1284" y="0" on="1"/>
- <pt x="955" y="1141" on="1"/>
- <pt x="614" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 35 values pushed */
- 11 6 3 3 1 0 3 12 10 9 0 3 0 8 7 5 4 2 1 0 5 14 12 11 10
- 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Wcircumflex" xMin="25" yMin="0" xMax="1908" yMax="1925">
- <contour>
- <pt x="406" y="0" on="1"/>
- <pt x="25" y="1480" on="1"/>
- <pt x="227" y="1480" on="1"/>
- <pt x="530" y="311" on="1"/>
- <pt x="877" y="1480" on="1"/>
- <pt x="1079" y="1480" on="1"/>
- <pt x="1412" y="322" on="1"/>
- <pt x="1737" y="1480" on="1"/>
- <pt x="1908" y="1480" on="1"/>
- <pt x="1492" y="0" on="1"/>
- <pt x="1284" y="0" on="1"/>
- <pt x="955" y="1141" on="1"/>
- <pt x="614" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="628" y="1604" on="1"/>
- <pt x="869" y="1925" on="1"/>
- <pt x="1087" y="1925" on="1"/>
- <pt x="1328" y="1604" on="1"/>
- <pt x="1180" y="1604" on="1"/>
- <pt x="979" y="1806" on="1"/>
- <pt x="977" y="1806" on="1"/>
- <pt x="776" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 58 values pushed */
- 19 18 2 14 13 3 11 6 3 3 1 0 3 15 14 1 20 17 16 13 3 12 10 9 0
- 3 3 0 8 7 5 4 2 1 0 5 14 20 19 18 17 16 15 14 13 12 11 10 9 8
- 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="X" xMin="28" yMin="0" xMax="1338" yMax="1480">
- <contour>
- <pt x="28" y="0" on="1"/>
- <pt x="573" y="735" on="1"/>
- <pt x="52" y="1480" on="1"/>
- <pt x="300" y="1480" on="1"/>
- <pt x="701" y="905" on="1"/>
- <pt x="1128" y="1480" on="1"/>
- <pt x="1327" y="1480" on="1"/>
- <pt x="798" y="770" on="1"/>
- <pt x="1338" y="0" on="1"/>
- <pt x="1090" y="0" on="1"/>
- <pt x="670" y="598" on="1"/>
- <pt x="226" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 33 values pushed */
- 10 7 4 1 4 2 0 3 11 9 8 0 3 0 6 5 3 2 0 3 14 11 10 9 8
- 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Y" xMin="30" yMin="0" xMax="1337" yMax="1480">
- <contour>
- <pt x="561" y="0" on="1"/>
- <pt x="561" y="617" on="1"/>
- <pt x="30" y="1480" on="1"/>
- <pt x="270" y="1480" on="1"/>
- <pt x="691" y="795" on="1"/>
- <pt x="1142" y="1480" on="1"/>
- <pt x="1337" y="1480" on="1"/>
- <pt x="771" y="622" on="1"/>
- <pt x="771" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 45 values pushed */
- 7 4 1 3 2 0 3 8 0 1 0 6 5 3 2 0 3 14 4 7 0 2 6 5 2
- 13 7 3 2 0 0 0 8 7 33 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Yacute" xMin="30" yMin="0" xMax="1337" yMax="1925">
- <contour>
- <pt x="561" y="0" on="1"/>
- <pt x="561" y="617" on="1"/>
- <pt x="30" y="1480" on="1"/>
- <pt x="270" y="1480" on="1"/>
- <pt x="691" y="795" on="1"/>
- <pt x="1142" y="1480" on="1"/>
- <pt x="1337" y="1480" on="1"/>
- <pt x="771" y="622" on="1"/>
- <pt x="771" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="543" y="1604" on="1"/>
- <pt x="784" y="1925" on="1"/>
- <pt x="1012" y="1925" on="1"/>
- <pt x="691" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 59 values pushed */
- 7 4 1 3 2 0 3 11 10 1 12 9 1 8 0 1 3 0 6 5 3 2 0 3 14
- 12 4 2 7 0 3 11 10 6 5 4 13 7 9 3 2 3 13 0 0 0 8 7 33 1
- 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ycircumflex" xMin="30" yMin="0" xMax="1337" yMax="1925">
- <contour>
- <pt x="561" y="0" on="1"/>
- <pt x="561" y="617" on="1"/>
- <pt x="30" y="1480" on="1"/>
- <pt x="270" y="1480" on="1"/>
- <pt x="691" y="795" on="1"/>
- <pt x="1142" y="1480" on="1"/>
- <pt x="1337" y="1480" on="1"/>
- <pt x="771" y="622" on="1"/>
- <pt x="771" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="356" y="1604" on="1"/>
- <pt x="597" y="1925" on="1"/>
- <pt x="815" y="1925" on="1"/>
- <pt x="1056" y="1604" on="1"/>
- <pt x="908" y="1604" on="1"/>
- <pt x="707" y="1806" on="1"/>
- <pt x="705" y="1806" on="1"/>
- <pt x="504" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 15 14 2 10 9 3 7 4 1 3 2 0 3 11 10 1 16 13 12 9 3 8 0 1 3
- 0 6 5 3 2 0 3 14 15 14 10 4 4 7 0 3 13 12 11 6 5 5 13 7 16
- 9 3 2 4 13 0 0 0 8 7 33 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Ydieresis" xMin="30" yMin="0" xMax="1337" yMax="1777">
- <contour>
- <pt x="561" y="0" on="1"/>
- <pt x="561" y="617" on="1"/>
- <pt x="30" y="1480" on="1"/>
- <pt x="270" y="1480" on="1"/>
- <pt x="691" y="795" on="1"/>
- <pt x="1142" y="1480" on="1"/>
- <pt x="1337" y="1480" on="1"/>
- <pt x="771" y="622" on="1"/>
- <pt x="771" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="422" y="1604" on="1"/>
- <pt x="422" y="1777" on="1"/>
- <pt x="595" y="1777" on="1"/>
- <pt x="595" y="1604" on="1"/>
- </contour>
- <contour>
- <pt x="817" y="1604" on="1"/>
- <pt x="817" y="1777" on="1"/>
- <pt x="990" y="1777" on="1"/>
- <pt x="990" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 7 4 1 3 2 0 3 0 0 16 13 12 9 13 3 10 1 4 48 196 15 14 11 10 3
- 8 0 1 2 0 6 5 3 2 0 3 14 4 7 11 2 6 5 2 13 15 3 2 9 0
- 0 14 13 13 1 15 12 11 13 1 9 8 7 33 1 0 3 4 48 196 16 15 1 10 9
- 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Z" xMin="101" yMin="0" xMax="1148" yMax="1480">
- <contour>
- <pt x="101" y="0" on="1"/>
- <pt x="101" y="169" on="1"/>
- <pt x="896" y="1323" on="1"/>
- <pt x="150" y="1323" on="1"/>
- <pt x="150" y="1480" on="1"/>
- <pt x="1148" y="1480" on="1"/>
- <pt x="1148" y="1323" on="1"/>
- <pt x="353" y="169" on="1"/>
- <pt x="1148" y="169" on="1"/>
- <pt x="1148" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 46 values pushed */
- 0 0 6 3 2 15 2 4 1 4 8 7 1 2 0 1 6 48 196 9 0 1 0 5 4
- 0 14 7 2 2 5 3 3 9 8 6 5 3 4 3 1 1 0 1 3 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Zacute" xMin="101" yMin="0" xMax="1148" yMax="1925">
- <contour>
- <pt x="101" y="0" on="1"/>
- <pt x="101" y="169" on="1"/>
- <pt x="896" y="1323" on="1"/>
- <pt x="150" y="1323" on="1"/>
- <pt x="150" y="1480" on="1"/>
- <pt x="1148" y="1480" on="1"/>
- <pt x="1148" y="1323" on="1"/>
- <pt x="353" y="169" on="1"/>
- <pt x="1148" y="169" on="1"/>
- <pt x="1148" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="477" y="1604" on="1"/>
- <pt x="718" y="1925" on="1"/>
- <pt x="946" y="1925" on="1"/>
- <pt x="625" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 0 0 6 3 2 15 2 4 1 4 8 7 1 2 0 1 6 48 196 12 11 1 13 10 1
- 9 0 1 3 0 5 4 0 14 13 12 11 10 7 2 6 5 3 3 9 8 6 5 3 4
- 3 1 1 0 1 3 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Zcaron" xMin="101" yMin="0" xMax="1148" yMax="1925">
- <contour>
- <pt x="101" y="0" on="1"/>
- <pt x="101" y="169" on="1"/>
- <pt x="896" y="1323" on="1"/>
- <pt x="150" y="1323" on="1"/>
- <pt x="150" y="1480" on="1"/>
- <pt x="1148" y="1480" on="1"/>
- <pt x="1148" y="1323" on="1"/>
- <pt x="353" y="169" on="1"/>
- <pt x="1148" y="169" on="1"/>
- <pt x="1148" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="987" y="1925" on="1"/>
- <pt x="746" y="1604" on="1"/>
- <pt x="528" y="1604" on="1"/>
- <pt x="287" y="1925" on="1"/>
- <pt x="435" y="1925" on="1"/>
- <pt x="636" y="1723" on="1"/>
- <pt x="638" y="1723" on="1"/>
- <pt x="839" y="1925" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 69 values pushed */
- 16 15 2 10 11 3 0 0 6 3 2 15 2 4 1 4 8 7 1 2 0 1 6 48 196
- 17 14 13 10 3 12 11 1 9 0 1 3 0 5 4 0 14 17 16 15 14 13 12 11 10
- 7 2 10 5 3 3 9 8 6 5 3 4 3 1 1 0 1 3 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="Zdotaccent" xMin="101" yMin="0" xMax="1148" yMax="1801">
- <contour>
- <pt x="101" y="0" on="1"/>
- <pt x="101" y="169" on="1"/>
- <pt x="896" y="1323" on="1"/>
- <pt x="150" y="1323" on="1"/>
- <pt x="150" y="1480" on="1"/>
- <pt x="1148" y="1480" on="1"/>
- <pt x="1148" y="1323" on="1"/>
- <pt x="353" y="169" on="1"/>
- <pt x="1148" y="169" on="1"/>
- <pt x="1148" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="538" y="1604" on="1"/>
- <pt x="538" y="1801" on="1"/>
- <pt x="735" y="1801" on="1"/>
- <pt x="735" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 0 0 13 10 5 1 11 6 3 2 15 2 4 2 4 8 7 1 2 0 1 6 48 196 12
- 11 1 9 0 1 2 0 5 4 0 14 2 5 12 2 7 10 3 2 0 0 13 12 4 1
- 10 1 4 48 196 11 10 1 9 8 6 5 3 4 3 1 1 0 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="a" xMin="95" yMin="-25" xMax="1098" yMax="1110">
- <contour>
- <pt x="774" y="138" on="1"/>
- <pt x="589" y="-25" on="0"/>
- <pt x="414" y="-25" on="1"/>
- <pt x="273" y="-25" on="0"/>
- <pt x="184" y="58" on="1"/>
- <pt x="95" y="142" on="0"/>
- <pt x="95" y="273" on="1"/>
- <pt x="95" y="642" on="0"/>
- <pt x="699" y="642" on="1"/>
- <pt x="745" y="642" on="1"/>
- <pt x="745" y="773" on="1"/>
- <pt x="745" y="962" on="0"/>
- <pt x="536" y="962" on="1"/>
- <pt x="374" y="962" on="0"/>
- <pt x="189" y="866" on="1"/>
- <pt x="189" y="1029" on="1"/>
- <pt x="394" y="1110" on="0"/>
- <pt x="574" y="1110" on="1"/>
- <pt x="766" y="1110" on="0"/>
- <pt x="854" y="1029" on="1"/>
- <pt x="942" y="949" on="0"/>
- <pt x="942" y="773" on="1"/>
- <pt x="942" y="281" on="1"/>
- <pt x="942" y="112" on="0"/>
- <pt x="1046" y="112" on="1"/>
- <pt x="1060" y="112" on="0"/>
- <pt x="1084" y="116" on="1"/>
- <pt x="1098" y="7" on="1"/>
- <pt x="1025" y="-25" on="0"/>
- <pt x="952" y="-25" on="1"/>
- <pt x="884" y="-25" on="0"/>
- <pt x="840" y="13" on="1"/>
- <pt x="797" y="50" on="0"/>
- </contour>
- <contour>
- <pt x="745" y="245" on="1"/>
- <pt x="745" y="526" on="1"/>
- <pt x="680" y="528" on="1"/>
- <pt x="620" y="530" on="0"/>
- <pt x="547" y="519" on="1"/>
- <pt x="299" y="484" on="0"/>
- <pt x="299" y="303" on="1"/>
- <pt x="299" y="136" on="0"/>
- <pt x="480" y="136" on="1"/>
- <pt x="606" y="136" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 82 values pushed */
- 0 0 41 29 2 12 40 17 48 196 29 2 17 1 2 2 24 1 1 34 33 27 26 24 22
- 21 15 14 10 9 8 0 13 1 2 3 0 0 14 0 0 39 43 6 48 196 0 21 9 2
- 8 9 14 2 27 26 2 13 21 6 14 0 0 34 33 10 9 4 3 21 1 4 48 196 22
- 21 1 15 14 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="aacute" xMin="95" yMin="-25" xMax="1098" yMax="1604">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="323" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="abreve" xMin="105" yMin="-25" xMax="1108" yMax="1604">
- <component glyphName="a" x="10" y="0" flags="0x4"/>
- <component glyphName="breve" x="248" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="acircumflex" xMin="95" yMin="-25" xMax="1098" yMax="1604">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="238" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="acute" xMin="107" yMin="1283" xMax="576" yMax="1604">
- <contour>
- <pt x="107" y="1283" on="1"/>
- <pt x="348" y="1604" on="1"/>
- <pt x="576" y="1604" on="1"/>
- <pt x="255" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 2 1 1 3 0 1 2 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="adieresis" xMin="95" yMin="-25" xMax="1098" yMax="1456">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="219" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ae" xMin="95" yMin="-25" xMax="1701" yMax="1110">
- <contour>
- <pt x="767" y="245" on="1"/>
- <pt x="767" y="526" on="1"/>
- <pt x="692" y="528" on="1"/>
- <pt x="627" y="530" on="0"/>
- <pt x="551" y="519" on="1"/>
- <pt x="292" y="483" on="0"/>
- <pt x="292" y="303" on="1"/>
- <pt x="292" y="136" on="0"/>
- <pt x="491" y="136" on="1"/>
- <pt x="628" y="136" on="0"/>
- </contour>
- <contour>
- <pt x="916" y="983" on="1"/>
- <pt x="1067" y="1110" on="0"/>
- <pt x="1259" y="1110" on="1"/>
- <pt x="1701" y="1110" on="0"/>
- <pt x="1701" y="573" on="1"/>
- <pt x="1701" y="512" on="1"/>
- <pt x="961" y="512" on="1"/>
- <pt x="973" y="395" on="0"/>
- <pt x="999" y="334" on="1"/>
- <pt x="1089" y="125" on="0"/>
- <pt x="1364" y="125" on="1"/>
- <pt x="1515" y="125" on="0"/>
- <pt x="1696" y="191" on="1"/>
- <pt x="1696" y="35" on="1"/>
- <pt x="1491" y="-25" on="0"/>
- <pt x="1318" y="-25" on="1"/>
- <pt x="1127" y="-25" on="0"/>
- <pt x="997" y="62" on="1"/>
- <pt x="925" y="110" on="0"/>
- <pt x="858" y="205" on="1"/>
- <pt x="743" y="82" on="0"/>
- <pt x="661" y="33" on="1"/>
- <pt x="562" y="-25" on="0"/>
- <pt x="427" y="-25" on="1"/>
- <pt x="277" y="-25" on="0"/>
- <pt x="186" y="57" on="1"/>
- <pt x="95" y="140" on="0"/>
- <pt x="95" y="272" on="1"/>
- <pt x="95" y="642" on="0"/>
- <pt x="721" y="642" on="1"/>
- <pt x="767" y="642" on="1"/>
- <pt x="767" y="773" on="1"/>
- <pt x="767" y="878" on="0"/>
- <pt x="718" y="920" on="1"/>
- <pt x="669" y="962" on="0"/>
- <pt x="547" y="962" on="1"/>
- <pt x="376" y="962" on="0"/>
- <pt x="189" y="866" on="1"/>
- <pt x="189" y="1029" on="1"/>
- <pt x="395" y="1110" on="0"/>
- <pt x="581" y="1110" on="1"/>
- <pt x="807" y="1110" on="0"/>
- </contour>
- <contour>
- <pt x="971" y="660" on="1"/>
- <pt x="1503" y="660" on="1"/>
- <pt x="1500" y="756" on="0"/>
- <pt x="1483" y="806" on="1"/>
- <pt x="1430" y="962" on="0"/>
- <pt x="1251" y="962" on="1"/>
- <pt x="1126" y="962" on="0"/>
- <pt x="1056" y="889" on="1"/>
- <pt x="989" y="820" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 103 values pushed */
- 0 0 57 40 12 45 40 50 20 40 25 48 196 50 1 33 2 25 2 12 1 1 48 47 41
- 10 4 1 52 3 0 40 39 14 1 4 52 15 3 8 1 29 23 22 8 0 5 15 2 3
- 0 0 0 16 15 7 1 52 1 4 48 196 53 52 1 0 14 53 52 29 16 10 5 22 0
- 3 6 39 6 2 0 47 3 15 14 2 13 22 37 47 23 22 1 48 47 1 41 40 1 0
- 3 3 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MDAP[1]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="afii00208" xMin="99" yMin="543" xMax="1950" yMax="642">
- <contour>
- <pt x="99" y="543" on="1"/>
- <pt x="99" y="642" on="1"/>
- <pt x="1950" y="642" on="1"/>
- <pt x="1950" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 11 1 1 1 4 48 196 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="agrave" xMin="95" yMin="-25" xMax="1098" yMax="1604">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="152" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="amacron" xMin="105" yMin="-25" xMax="1108" yMax="1431">
- <component glyphName="a" x="10" y="0" flags="0x4"/>
- <component glyphName="macron" x="217" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ampersand" xMin="56" yMin="-37" xMax="1293" yMax="1517">
- <contour>
- <pt x="1025" y="0" on="1"/>
- <pt x="952" y="87" on="1"/>
- <pt x="752" y="-37" on="0"/>
- <pt x="570" y="-37" on="1"/>
- <pt x="352" y="-37" on="0"/>
- <pt x="204" y="99" on="1"/>
- <pt x="56" y="235" on="0"/>
- <pt x="56" y="442" on="1"/>
- <pt x="56" y="647" on="0"/>
- <pt x="185" y="774" on="1"/>
- <pt x="261" y="848" on="0"/>
- <pt x="405" y="904" on="1"/>
- <pt x="317" y="1067" on="0"/>
- <pt x="317" y="1187" on="1"/>
- <pt x="317" y="1337" on="0"/>
- <pt x="409" y="1427" on="1"/>
- <pt x="502" y="1517" on="0"/>
- <pt x="659" y="1517" on="1"/>
- <pt x="808" y="1517" on="0"/>
- <pt x="895" y="1436" on="1"/>
- <pt x="982" y="1355" on="0"/>
- <pt x="982" y="1219" on="1"/>
- <pt x="982" y="1068" on="0"/>
- <pt x="866" y="959" on="1"/>
- <pt x="795" y="893" on="0"/>
- <pt x="661" y="832" on="1"/>
- <pt x="829" y="527" on="0"/>
- <pt x="995" y="328" on="1"/>
- <pt x="1094" y="455" on="0"/>
- <pt x="1094" y="707" on="1"/>
- <pt x="1094" y="787" on="1"/>
- <pt x="1289" y="787" on="1"/>
- <pt x="1289" y="441" on="0"/>
- <pt x="1087" y="221" on="1"/>
- <pt x="1175" y="109" on="0"/>
- <pt x="1293" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="866" y="202" on="1"/>
- <pt x="669" y="427" on="0"/>
- <pt x="475" y="790" on="1"/>
- <pt x="377" y="743" on="0"/>
- <pt x="327" y="684" on="1"/>
- <pt x="254" y="600" on="0"/>
- <pt x="254" y="477" on="1"/>
- <pt x="254" y="324" on="0"/>
- <pt x="356" y="218" on="1"/>
- <pt x="459" y="111" on="0"/>
- <pt x="602" y="111" on="1"/>
- <pt x="714" y="111" on="0"/>
- </contour>
- <contour>
- <pt x="587" y="956" on="1"/>
- <pt x="683" y="998" on="0"/>
- <pt x="729" y="1046" on="1"/>
- <pt x="797" y="1116" on="0"/>
- <pt x="797" y="1215" on="1"/>
- <pt x="797" y="1369" on="0"/>
- <pt x="657" y="1369" on="1"/>
- <pt x="509" y="1369" on="0"/>
- <pt x="509" y="1207" on="1"/>
- <pt x="509" y="1109" on="0"/>
- <pt x="579" y="972" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 0 0 54 40 17 46 40 3 48 196 17 0 3 2 1 48 38 25 11 4 0 30 3 0 36
- 33 29 27 1 5 30 0 3 31 30 1 35 0 1 2 0 14 0 0 56 41 13 52 14 21
- 42 41 7 48 196 48 38 36 35 33 31 30 29 27 25 21 13 11 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="anoteleia" xMin="161" yMin="491" xMax="408" yMax="738">
- <contour>
- <pt x="161" y="491" on="1"/>
- <pt x="161" y="738" on="1"/>
- <pt x="408" y="738" on="1"/>
- <pt x="408" y="491" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 3 0 8 1 1 1 4 48 196 2 1 1 0 14 0 0 3 2 8 1 0 1 4
- 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="aogonek" xMin="95" yMin="-370" xMax="1098" yMax="1110">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="ogonek" x="537" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="aring" xMin="95" yMin="-25" xMax="1098" yMax="1737">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="ring" x="238" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="asciicircum" xMin="36" yMin="592" xMax="924" yMax="1480">
- <contour>
- <pt x="480" y="1149" on="1"/>
- <pt x="201" y="592" on="1"/>
- <pt x="36" y="592" on="1"/>
- <pt x="480" y="1480" on="1"/>
- <pt x="924" y="592" on="1"/>
- <pt x="758" y="592" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 18 values pushed */
- 3 0 2 13 1 5 4 2 1 3 0 14 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="asciitilde" xMin="104" yMin="412" xMax="1091" yMax="772">
- <contour>
- <pt x="252" y="444" on="1"/>
- <pt x="104" y="444" on="1"/>
- <pt x="107" y="550" on="0"/>
- <pt x="126" y="605" on="1"/>
- <pt x="184" y="772" on="0"/>
- <pt x="370" y="772" on="1"/>
- <pt x="469" y="772" on="0"/>
- <pt x="569" y="703" on="1"/>
- <pt x="681" y="626" on="1"/>
- <pt x="747" y="580" on="1"/>
- <pt x="776" y="560" on="0"/>
- <pt x="824" y="560" on="1"/>
- <pt x="939" y="560" on="0"/>
- <pt x="943" y="740" on="1"/>
- <pt x="1091" y="740" on="1"/>
- <pt x="1088" y="634" on="0"/>
- <pt x="1069" y="579" on="1"/>
- <pt x="1011" y="412" on="0"/>
- <pt x="826" y="412" on="1"/>
- <pt x="727" y="412" on="0"/>
- <pt x="627" y="481" on="1"/>
- <pt x="515" y="558" on="1"/>
- <pt x="448" y="604" on="1"/>
- <pt x="419" y="624" on="0"/>
- <pt x="372" y="624" on="1"/>
- <pt x="256" y="624" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 27 values pushed */
- 0 0 24 7 5 11 7 18 48 196 5 13 18 0 14 13 1 1 0 1 2 0 14 14 13
- 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="asterisk" xMin="39" yMin="751" xMax="757" yMax="1480">
- <contour>
- <pt x="711" y="1289" on="1"/>
- <pt x="757" y="1148" on="1"/>
- <pt x="479" y="1082" on="1"/>
- <pt x="479" y="1084" on="1"/>
- <pt x="481" y="1095" on="0"/>
- <pt x="481" y="1096" on="1"/>
- <pt x="481" y="1097" on="1"/>
- <pt x="479" y="1139" on="0"/>
- <pt x="452" y="1164" on="1"/>
- </contour>
- <contour>
- <pt x="681" y="838" on="1"/>
- <pt x="561" y="751" on="1"/>
- <pt x="404" y="1018" on="1"/>
- <pt x="454" y="1024" on="0"/>
- <pt x="474" y="1069" on="1"/>
- </contour>
- <contour>
- <pt x="235" y="751" on="1"/>
- <pt x="115" y="838" on="1"/>
- <pt x="321" y="1069" on="1"/>
- <pt x="341" y="1024" on="0"/>
- <pt x="391" y="1018" on="1"/>
- </contour>
- <contour>
- <pt x="39" y="1148" on="1"/>
- <pt x="84" y="1289" on="1"/>
- <pt x="344" y="1164" on="1"/>
- <pt x="315" y="1138" on="0"/>
- <pt x="315" y="1097" on="1"/>
- <pt x="315" y="1096" on="1"/>
- <pt x="315" y="1095" on="0"/>
- <pt x="315" y="1091" on="1"/>
- <pt x="316" y="1088" on="1"/>
- <pt x="317" y="1084" on="0"/>
- <pt x="317" y="1082" on="1"/>
- </contour>
- <contour>
- <pt x="324" y="1480" on="1"/>
- <pt x="472" y="1480" on="1"/>
- <pt x="441" y="1172" on="1"/>
- <pt x="419" y="1183" on="0"/>
- <pt x="398" y="1183" on="1"/>
- <pt x="375" y="1183" on="0"/>
- <pt x="355" y="1172" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 34 1 36 34 32 24 23 21 20 19 8 1 0 11 30 1 3 0 1 1 29 18 16 15 14
- 13 11 10 9 3 2 11 1 2 3 0 0 31 30 0 14 36 32 31 30 29 24 23 21 20
- 19 18 16 15 14 13 11 10 9 8 5 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MDAP[1]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="at" xMin="253" yMin="-37" xMax="1844" yMax="1517">
- <contour>
- <pt x="1253" y="44" on="1"/>
- <pt x="1067" y="-37" on="0"/>
- <pt x="897" y="-37" on="1"/>
- <pt x="619" y="-37" on="0"/>
- <pt x="436" y="137" on="1"/>
- <pt x="253" y="310" on="0"/>
- <pt x="253" y="582" on="1"/>
- <pt x="253" y="949" on="0"/>
- <pt x="535" y="1233" on="1"/>
- <pt x="817" y="1517" on="0"/>
- <pt x="1186" y="1517" on="1"/>
- <pt x="1468" y="1517" on="0"/>
- <pt x="1656" y="1337" on="1"/>
- <pt x="1844" y="1157" on="0"/>
- <pt x="1844" y="889" on="1"/>
- <pt x="1844" y="643" on="0"/>
- <pt x="1693" y="469" on="1"/>
- <pt x="1542" y="296" on="0"/>
- <pt x="1327" y="296" on="1"/>
- <pt x="1160" y="296" on="0"/>
- <pt x="1160" y="411" on="1"/>
- <pt x="1160" y="450" on="0"/>
- <pt x="1181" y="516" on="1"/>
- <pt x="1221" y="642" on="1"/>
- <pt x="1209" y="642" on="1"/>
- <pt x="1124" y="486" on="0"/>
- <pt x="1048" y="408" on="1"/>
- <pt x="939" y="296" on="0"/>
- <pt x="818" y="296" on="1"/>
- <pt x="629" y="296" on="0"/>
- <pt x="629" y="523" on="1"/>
- <pt x="629" y="772" on="0"/>
- <pt x="791" y="975" on="1"/>
- <pt x="952" y="1178" on="0"/>
- <pt x="1157" y="1178" on="1"/>
- <pt x="1182" y="1178" on="0"/>
- <pt x="1222" y="1176" on="1"/>
- <pt x="1232" y="1175" on="0"/>
- <pt x="1245" y="1174" on="1"/>
- <pt x="1284" y="1172" on="0"/>
- <pt x="1311" y="1172" on="1"/>
- <pt x="1448" y="1172" on="1"/>
- <pt x="1322" y="536" on="1"/>
- <pt x="1316" y="506" on="0"/>
- <pt x="1316" y="475" on="1"/>
- <pt x="1316" y="407" on="0"/>
- <pt x="1393" y="407" on="1"/>
- <pt x="1525" y="407" on="0"/>
- <pt x="1629" y="549" on="1"/>
- <pt x="1733" y="692" on="0"/>
- <pt x="1733" y="874" on="1"/>
- <pt x="1733" y="1103" on="0"/>
- <pt x="1574" y="1255" on="1"/>
- <pt x="1415" y="1407" on="0"/>
- <pt x="1172" y="1407" on="1"/>
- <pt x="856" y="1407" on="0"/>
- <pt x="610" y="1158" on="1"/>
- <pt x="364" y="908" on="0"/>
- <pt x="364" y="591" on="1"/>
- <pt x="364" y="361" on="0"/>
- <pt x="519" y="218" on="1"/>
- <pt x="673" y="74" on="0"/>
- <pt x="913" y="74" on="1"/>
- <pt x="1067" y="74" on="0"/>
- <pt x="1217" y="146" on="1"/>
- </contour>
- <contour>
- <pt x="1233" y="833" on="1"/>
- <pt x="1272" y="1028" on="1"/>
- <pt x="1178" y="1061" on="0"/>
- <pt x="1112" y="1061" on="1"/>
- <pt x="971" y="1061" on="0"/>
- <pt x="877" y="918" on="1"/>
- <pt x="783" y="775" on="0"/>
- <pt x="783" y="568" on="1"/>
- <pt x="783" y="419" on="0"/>
- <pt x="863" y="419" on="1"/>
- <pt x="996" y="419" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 0 0 74 6 28 68 16 34 62 16 2 54 16 10 46 16 18 48 196 10 0 2 2 34 1
- 34 0 40 2 0 28 18 1 66 65 64 28 24 23 18 0 8 40 2 3 0 41 40 1 0
- 14 0 0 72 15 30 58 17 6 50 17 14 48 196 66 65 64 44 41 40 30 24 23 20 14
- 6 0
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MDAP[1]
- MDAP[1]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="atilde" xMin="95" yMin="-25" xMax="1098" yMax="1517">
- <component glyphName="a" x="0" y="0" flags="0x4"/>
- <component glyphName="tilde" x="206" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="b" xMin="154" yMin="-25" xMax="1052" yMax="1579">
- <contour>
- <pt x="351" y="703" on="1"/>
- <pt x="351" y="149" on="1"/>
- <pt x="488" y="123" on="0"/>
- <pt x="557" y="123" on="1"/>
- <pt x="839" y="123" on="0"/>
- <pt x="839" y="552" on="1"/>
- <pt x="839" y="733" on="0"/>
- <pt x="783" y="835" on="1"/>
- <pt x="728" y="938" on="0"/>
- <pt x="634" y="938" on="1"/>
- <pt x="508" y="938" on="0"/>
- </contour>
- <contour>
- <pt x="351" y="882" on="1"/>
- <pt x="407" y="984" on="0"/>
- <pt x="469" y="1036" on="1"/>
- <pt x="558" y="1110" on="0"/>
- <pt x="676" y="1110" on="1"/>
- <pt x="845" y="1110" on="0"/>
- <pt x="948" y="963" on="1"/>
- <pt x="1052" y="816" on="0"/>
- <pt x="1052" y="572" on="1"/>
- <pt x="1052" y="287" on="0"/>
- <pt x="918" y="131" on="1"/>
- <pt x="785" y="-25" on="0"/>
- <pt x="540" y="-25" on="1"/>
- <pt x="449" y="-25" on="0"/>
- <pt x="351" y="0" on="1"/>
- <pt x="154" y="-12" on="1"/>
- <pt x="154" y="1579" on="1"/>
- <pt x="351" y="1579" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 23 2 15 1 9 3 1 1 11 9 3 1 0 5 1 2 3 0 0 1 26 25 2 0 28
- 27 1 0 14 19 5 0 0 0 28 25 11 1 0 4 4 26 1 4 48 196 27 26 1 28
- 25 11 1 0 4 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="backslash" xMin="-59" yMin="-296" xMax="629" yMax="1480">
- <contour>
- <pt x="629" y="-296" on="1"/>
- <pt x="474" y="-296" on="1"/>
- <pt x="-59" y="1480" on="1"/>
- <pt x="96" y="1480" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 12 values pushed */
- 1 0 1 0 3 2 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="bar" xMin="192" yMin="-296" xMax="340" yMax="1579">
- <contour>
- <pt x="192" y="-296" on="1"/>
- <pt x="192" y="1579" on="1"/>
- <pt x="340" y="1579" on="1"/>
- <pt x="340" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 2 1 1 3 0 1 2 0 14 0 0 3 2 7 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="braceleft" xMin="25" yMin="-296" xMax="568" yMax="1579">
- <contour>
- <pt x="25" y="716" on="1"/>
- <pt x="86" y="716" on="1"/>
- <pt x="239" y="716" on="0"/>
- <pt x="239" y="880" on="1"/>
- <pt x="239" y="944" on="0"/>
- <pt x="223" y="1017" on="1"/>
- <pt x="204" y="1104" on="1"/>
- <pt x="185" y="1191" on="0"/>
- <pt x="185" y="1268" on="1"/>
- <pt x="185" y="1431" on="0"/>
- <pt x="321" y="1517" on="1"/>
- <pt x="416" y="1576" on="0"/>
- <pt x="568" y="1579" on="1"/>
- <pt x="568" y="1431" on="1"/>
- <pt x="515" y="1431" on="1"/>
- <pt x="446" y="1431" on="0"/>
- <pt x="402" y="1396" on="1"/>
- <pt x="357" y="1360" on="0"/>
- <pt x="357" y="1306" on="1"/>
- <pt x="357" y="1286" on="0"/>
- <pt x="370" y="1212" on="1"/>
- <pt x="387" y="1110" on="1"/>
- <pt x="398" y="1043" on="0"/>
- <pt x="398" y="962" on="1"/>
- <pt x="398" y="773" on="0"/>
- <pt x="251" y="642" on="1"/>
- <pt x="398" y="511" on="0"/>
- <pt x="398" y="320" on="1"/>
- <pt x="398" y="240" on="0"/>
- <pt x="387" y="173" on="1"/>
- <pt x="370" y="71" on="1"/>
- <pt x="357" y="-3" on="0"/>
- <pt x="357" y="-24" on="1"/>
- <pt x="357" y="-77" on="0"/>
- <pt x="403" y="-113" on="1"/>
- <pt x="447" y="-148" on="0"/>
- <pt x="515" y="-148" on="1"/>
- <pt x="568" y="-148" on="1"/>
- <pt x="568" y="-296" on="1"/>
- <pt x="408" y="-293" on="0"/>
- <pt x="311" y="-227" on="1"/>
- <pt x="185" y="-140" on="0"/>
- <pt x="185" y="17" on="1"/>
- <pt x="185" y="92" on="0"/>
- <pt x="204" y="179" on="1"/>
- <pt x="223" y="266" on="1"/>
- <pt x="239" y="339" on="0"/>
- <pt x="239" y="406" on="1"/>
- <pt x="239" y="568" on="0"/>
- <pt x="86" y="568" on="1"/>
- <pt x="25" y="568" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 55 values pushed */
- 50 49 38 37 36 25 14 13 12 1 0 14 0 0 47 15 27 32 13 42 18 13 8 3 15
- 23 48 196 42 27 23 8 49 42 36 27 25 23 14 8 1 9 12 0 3 38 37 13 12 3
- 50 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="braceright" xMin="116" yMin="-296" xMax="659" yMax="1579">
- <contour>
- <pt x="659" y="568" on="1"/>
- <pt x="597" y="568" on="1"/>
- <pt x="445" y="568" on="0"/>
- <pt x="445" y="404" on="1"/>
- <pt x="445" y="331" on="0"/>
- <pt x="460" y="266" on="1"/>
- <pt x="480" y="179" on="1"/>
- <pt x="499" y="96" on="0"/>
- <pt x="499" y="15" on="1"/>
- <pt x="499" y="-148" on="0"/>
- <pt x="361" y="-234" on="1"/>
- <pt x="267" y="-293" on="0"/>
- <pt x="116" y="-296" on="1"/>
- <pt x="116" y="-148" on="1"/>
- <pt x="168" y="-148" on="1"/>
- <pt x="236" y="-148" on="0"/>
- <pt x="281" y="-113" on="1"/>
- <pt x="326" y="-77" on="0"/>
- <pt x="326" y="-23" on="1"/>
- <pt x="326" y="3" on="0"/>
- <pt x="314" y="71" on="1"/>
- <pt x="296" y="173" on="1"/>
- <pt x="285" y="235" on="0"/>
- <pt x="285" y="321" on="1"/>
- <pt x="285" y="511" on="0"/>
- <pt x="432" y="642" on="1"/>
- <pt x="366" y="701" on="0"/>
- <pt x="333" y="760" on="1"/>
- <pt x="285" y="848" on="0"/>
- <pt x="285" y="963" on="1"/>
- <pt x="285" y="1048" on="0"/>
- <pt x="296" y="1110" on="1"/>
- <pt x="314" y="1212" on="1"/>
- <pt x="326" y="1280" on="0"/>
- <pt x="326" y="1308" on="1"/>
- <pt x="326" y="1360" on="0"/>
- <pt x="280" y="1396" on="1"/>
- <pt x="235" y="1431" on="0"/>
- <pt x="168" y="1431" on="1"/>
- <pt x="116" y="1431" on="1"/>
- <pt x="116" y="1579" on="1"/>
- <pt x="276" y="1576" on="0"/>
- <pt x="372" y="1510" on="1"/>
- <pt x="499" y="1423" on="0"/>
- <pt x="499" y="1266" on="1"/>
- <pt x="499" y="1187" on="0"/>
- <pt x="480" y="1104" on="1"/>
- <pt x="460" y="1017" on="1"/>
- <pt x="445" y="952" on="0"/>
- <pt x="445" y="877" on="1"/>
- <pt x="445" y="716" on="0"/>
- <pt x="597" y="716" on="1"/>
- <pt x="659" y="716" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 55 values pushed */
- 52 51 40 39 38 25 14 13 12 1 0 14 0 0 49 15 29 34 13 44 18 13 8 3 15
- 23 48 196 44 29 23 8 51 44 38 29 25 23 14 8 1 9 0 12 3 52 0 1 40 39
- 13 12 3 2 0
- LOOPCALL[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="bracketleft" xMin="149" yMin="-296" xMax="544" yMax="1579">
- <contour>
- <pt x="149" y="-296" on="1"/>
- <pt x="149" y="1579" on="1"/>
- <pt x="544" y="1579" on="1"/>
- <pt x="544" y="1431" on="1"/>
- <pt x="322" y="1431" on="1"/>
- <pt x="322" y="-148" on="1"/>
- <pt x="544" y="-148" on="1"/>
- <pt x="544" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 46 values pushed */
- 0 0 4 3 7 1 1 6 5 7 1 0 2 4 48 196 2 1 1 7 0 1 2 0 14
- 0 0 5 4 13 1 0 1 4 48 196 7 6 3 2 3 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="bracketright" xMin="26" yMin="-296" xMax="421" yMax="1579">
- <contour>
- <pt x="421" y="1579" on="1"/>
- <pt x="421" y="-296" on="1"/>
- <pt x="26" y="-296" on="1"/>
- <pt x="26" y="-148" on="1"/>
- <pt x="248" y="-148" on="1"/>
- <pt x="248" y="1431" on="1"/>
- <pt x="26" y="1431" on="1"/>
- <pt x="26" y="1579" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 46 values pushed */
- 0 0 6 5 7 1 0 4 3 7 1 1 2 4 48 196 7 0 1 2 1 1 2 0 14
- 0 0 5 4 13 1 0 1 4 48 196 1 0 1 7 6 3 2 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="breve" xMin="8" yMin="1283" xMax="674" yMax="1604">
- <contour>
- <pt x="8" y="1604" on="1"/>
- <pt x="131" y="1604" on="1"/>
- <pt x="152" y="1510" on="0"/>
- <pt x="206" y="1470" on="1"/>
- <pt x="258" y="1431" on="0"/>
- <pt x="341" y="1431" on="1"/>
- <pt x="435" y="1431" on="0"/>
- <pt x="489" y="1480" on="1"/>
- <pt x="532" y="1520" on="0"/>
- <pt x="551" y="1604" on="1"/>
- <pt x="674" y="1604" on="1"/>
- <pt x="658" y="1470" on="0"/>
- <pt x="585" y="1389" on="1"/>
- <pt x="491" y="1283" on="0"/>
- <pt x="341" y="1283" on="1"/>
- <pt x="184" y="1283" on="0"/>
- <pt x="89" y="1398" on="1"/>
- <pt x="24" y="1476" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 17 values pushed */
- 0 0 5 40 14 48 196 14 10 9 1 0 14 10 9 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="brokenbar" xMin="192" yMin="-296" xMax="340" yMax="1579">
- <contour>
- <pt x="192" y="-296" on="1"/>
- <pt x="192" y="444" on="1"/>
- <pt x="340" y="444" on="1"/>
- <pt x="340" y="-296" on="1"/>
- </contour>
- <contour>
- <pt x="192" y="839" on="1"/>
- <pt x="192" y="1579" on="1"/>
- <pt x="340" y="1579" on="1"/>
- <pt x="340" y="839" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 34 values pushed */
- 6 5 1 7 4 1 2 1 1 3 0 1 4 0 14 0 0 7 6 3 2 7 3 0 1
- 4 48 196 5 4 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="bullet" xMin="81" yMin="555" xMax="636" yMax="1110">
- <contour>
- <pt x="359" y="1110" on="1"/>
- <pt x="474" y="1110" on="0"/>
- <pt x="555" y="1028" on="1"/>
- <pt x="636" y="946" on="0"/>
- <pt x="636" y="831" on="1"/>
- <pt x="636" y="717" on="0"/>
- <pt x="554" y="636" on="1"/>
- <pt x="472" y="555" on="0"/>
- <pt x="354" y="555" on="1"/>
- <pt x="255" y="555" on="0"/>
- <pt x="179" y="621" on="1"/>
- <pt x="81" y="707" on="0"/>
- <pt x="81" y="833" on="1"/>
- <pt x="81" y="948" on="0"/>
- <pt x="163" y="1029" on="1"/>
- <pt x="244" y="1110" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 15 values pushed */
- 0 0 0 8 48 196 8 14 0 0 4 12 48 196 12
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="c" xMin="86" yMin="-25" xMax="926" yMax="1110">
- <contour>
- <pt x="926" y="33" on="1"/>
- <pt x="745" y="-25" on="0"/>
- <pt x="585" y="-25" on="1"/>
- <pt x="360" y="-25" on="0"/>
- <pt x="223" y="133" on="1"/>
- <pt x="86" y="290" on="0"/>
- <pt x="86" y="543" on="1"/>
- <pt x="86" y="809" on="0"/>
- <pt x="226" y="959" on="1"/>
- <pt x="365" y="1110" on="0"/>
- <pt x="616" y="1110" on="1"/>
- <pt x="742" y="1110" on="0"/>
- <pt x="914" y="1074" on="1"/>
- <pt x="914" y="910" on="1"/>
- <pt x="750" y="959" on="0"/>
- <pt x="652" y="959" on="1"/>
- <pt x="308" y="959" on="0"/>
- <pt x="308" y="543" on="1"/>
- <pt x="308" y="347" on="0"/>
- <pt x="397" y="241" on="1"/>
- <pt x="485" y="134" on="0"/>
- <pt x="644" y="134" on="1"/>
- <pt x="765" y="134" on="0"/>
- <pt x="926" y="203" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 0 0 21 29 2 15 40 10 48 196 10 1 2 2 1 1 23 13 12 0 4 1 2 3 0
- 0 14 0 0 17 26 6 48 196 6 12 23 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="cacute" xMin="86" yMin="-25" xMax="928" yMax="1604">
- <component glyphName="c" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="352" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="caron" xMin="-9" yMin="1283" xMax="691" yMax="1604">
- <contour>
- <pt x="691" y="1604" on="1"/>
- <pt x="450" y="1283" on="1"/>
- <pt x="232" y="1283" on="1"/>
- <pt x="-9" y="1604" on="1"/>
- <pt x="139" y="1604" on="1"/>
- <pt x="340" y="1402" on="1"/>
- <pt x="342" y="1402" on="1"/>
- <pt x="543" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 6 5 2 0 1 3 7 4 3 0 3 2 1 1 2 0 14 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ccaron" xMin="86" yMin="-25" xMax="957" yMax="1604">
- <component glyphName="c" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="266" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ccedilla" xMin="86" yMin="-432" xMax="926" yMax="1110">
- <component glyphName="c" x="0" y="0" flags="0x4"/>
- <component glyphName="cedilla" x="260" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ccircumflex" xMin="86" yMin="-25" xMax="957" yMax="1604">
- <contour>
- <pt x="926" y="33" on="1"/>
- <pt x="745" y="-25" on="0"/>
- <pt x="585" y="-25" on="1"/>
- <pt x="360" y="-25" on="0"/>
- <pt x="223" y="133" on="1"/>
- <pt x="86" y="290" on="0"/>
- <pt x="86" y="543" on="1"/>
- <pt x="86" y="809" on="0"/>
- <pt x="226" y="959" on="1"/>
- <pt x="365" y="1110" on="0"/>
- <pt x="616" y="1110" on="1"/>
- <pt x="742" y="1110" on="0"/>
- <pt x="914" y="1074" on="1"/>
- <pt x="914" y="910" on="1"/>
- <pt x="750" y="959" on="0"/>
- <pt x="652" y="959" on="1"/>
- <pt x="308" y="959" on="0"/>
- <pt x="308" y="543" on="1"/>
- <pt x="308" y="347" on="0"/>
- <pt x="397" y="241" on="1"/>
- <pt x="485" y="134" on="0"/>
- <pt x="644" y="134" on="1"/>
- <pt x="765" y="134" on="0"/>
- <pt x="926" y="203" on="1"/>
- </contour>
- <contour>
- <pt x="257" y="1283" on="1"/>
- <pt x="498" y="1604" on="1"/>
- <pt x="716" y="1604" on="1"/>
- <pt x="957" y="1283" on="1"/>
- <pt x="809" y="1283" on="1"/>
- <pt x="608" y="1485" on="1"/>
- <pt x="606" y="1485" on="1"/>
- <pt x="405" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 0 0 21 29 2 15 40 10 48 196 10 1 2 2 30 29 2 25 24 3 1 1 23 13 12
- 0 4 1 2 3 0 0 26 25 1 31 28 27 24 3 2 0 14 0 0 17 26 6 48 196
- 27 0 31 30 29 28 26 25 24 7 13 6 12 23 0 1 13 12 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="cdotaccent" xMin="86" yMin="-25" xMax="926" yMax="1480">
- <contour>
- <pt x="926" y="33" on="1"/>
- <pt x="745" y="-25" on="0"/>
- <pt x="585" y="-25" on="1"/>
- <pt x="360" y="-25" on="0"/>
- <pt x="223" y="133" on="1"/>
- <pt x="86" y="290" on="0"/>
- <pt x="86" y="543" on="1"/>
- <pt x="86" y="809" on="0"/>
- <pt x="226" y="959" on="1"/>
- <pt x="365" y="1110" on="0"/>
- <pt x="616" y="1110" on="1"/>
- <pt x="742" y="1110" on="0"/>
- <pt x="914" y="1074" on="1"/>
- <pt x="914" y="910" on="1"/>
- <pt x="750" y="959" on="0"/>
- <pt x="652" y="959" on="1"/>
- <pt x="308" y="959" on="0"/>
- <pt x="308" y="543" on="1"/>
- <pt x="308" y="347" on="0"/>
- <pt x="397" y="241" on="1"/>
- <pt x="485" y="134" on="0"/>
- <pt x="644" y="134" on="1"/>
- <pt x="765" y="134" on="0"/>
- <pt x="926" y="203" on="1"/>
- </contour>
- <contour>
- <pt x="508" y="1283" on="1"/>
- <pt x="508" y="1480" on="1"/>
- <pt x="705" y="1480" on="1"/>
- <pt x="705" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 0 0 21 29 2 15 40 10 48 196 10 1 2 2 1 1 23 13 12 0 4 1 2 3 0
- 0 0 0 27 24 5 1 25 1 4 48 196 26 25 0 14 0 0 17 26 6 48 196 6 24
- 0 0 25 24 4 1 26 1 4 48 196 27 26 1 23 0 1 13 12 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="cedilla" xMin="168" yMin="-432" xMax="515" yMax="0">
- <contour>
- <pt x="284" y="0" on="1"/>
- <pt x="381" y="0" on="1"/>
- <pt x="321" y="-109" on="1"/>
- <pt x="393" y="-111" on="0"/>
- <pt x="445" y="-148" on="1"/>
- <pt x="515" y="-197" on="0"/>
- <pt x="515" y="-269" on="1"/>
- <pt x="515" y="-337" on="0"/>
- <pt x="456" y="-384" on="1"/>
- <pt x="398" y="-432" on="0"/>
- <pt x="311" y="-432" on="1"/>
- <pt x="244" y="-432" on="0"/>
- <pt x="168" y="-411" on="1"/>
- <pt x="168" y="-330" on="1"/>
- <pt x="218" y="-345" on="0"/>
- <pt x="272" y="-345" on="1"/>
- <pt x="376" y="-345" on="0"/>
- <pt x="376" y="-271" on="1"/>
- <pt x="376" y="-178" on="0"/>
- <pt x="189" y="-175" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 29 values pushed */
- 0 0 15 44 10 48 196 19 13 12 10 2 1 0 14 0 0 17 42 6 48 196 19 13 12
- 6 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="cent" xMin="173" yMin="0" xMax="1014" yMax="1480">
- <contour>
- <pt x="631" y="0" on="1"/>
- <pt x="631" y="173" on="1"/>
- <pt x="443" y="197" on="0"/>
- <pt x="327" y="320" on="1"/>
- <pt x="173" y="483" on="0"/>
- <pt x="173" y="740" on="1"/>
- <pt x="173" y="1010" on="0"/>
- <pt x="331" y="1161" on="1"/>
- <pt x="441" y="1266" on="0"/>
- <pt x="631" y="1295" on="1"/>
- <pt x="631" y="1480" on="1"/>
- <pt x="730" y="1480" on="1"/>
- <pt x="730" y="1295" on="1"/>
- <pt x="863" y="1289" on="0"/>
- <pt x="1014" y="1249" on="1"/>
- <pt x="1014" y="1083" on="1"/>
- <pt x="836" y="1143" on="0"/>
- <pt x="730" y="1153" on="1"/>
- <pt x="730" y="313" on="1"/>
- <pt x="866" y="313" on="0"/>
- <pt x="1014" y="380" on="1"/>
- <pt x="1014" y="231" on="1"/>
- <pt x="865" y="173" on="0"/>
- <pt x="730" y="173" on="1"/>
- <pt x="730" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="631" y="1144" on="1"/>
- <pt x="572" y="1135" on="0"/>
- <pt x="542" y="1120" on="1"/>
- <pt x="389" y="1041" on="0"/>
- <pt x="389" y="739" on="1"/>
- <pt x="389" y="530" on="0"/>
- <pt x="480" y="422" on="1"/>
- <pt x="532" y="361" on="0"/>
- <pt x="631" y="324" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 55 values pushed */
- 33 25 24 23 21 20 18 17 15 14 12 11 10 9 1 0 14 0 0 29 9 5 48 196 5
- 0 0 0 33 25 10 9 1 0 11 5 11 1 4 48 196 21 20 15 14 3 24 23 18 17
- 12 11 5 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="circumflex" xMin="-9" yMin="1283" xMax="691" yMax="1604">
- <contour>
- <pt x="-9" y="1283" on="1"/>
- <pt x="232" y="1604" on="1"/>
- <pt x="450" y="1604" on="1"/>
- <pt x="691" y="1283" on="1"/>
- <pt x="543" y="1283" on="1"/>
- <pt x="342" y="1485" on="1"/>
- <pt x="340" y="1485" on="1"/>
- <pt x="139" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 6 5 2 1 0 3 2 1 1 7 4 3 0 3 2 0 14 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="colon" xMin="186" yMin="0" xMax="383" yMax="1086">
- <contour>
- <pt x="186" y="0" on="1"/>
- <pt x="186" y="197" on="1"/>
- <pt x="383" y="197" on="1"/>
- <pt x="383" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="186" y="888" on="1"/>
- <pt x="186" y="1086" on="1"/>
- <pt x="383" y="1086" on="1"/>
- <pt x="383" y="888" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 43 values pushed */
- 0 0 7 4 5 1 5 2 1 5 1 0 2 4 48 196 3 0 1 0 6 5 1 14 0
- 0 7 6 3 2 4 3 0 1 4 48 196 5 4 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="comma" xMin="161" yMin="-321" xMax="408" yMax="247">
- <contour>
- <pt x="161" y="-321" on="1"/>
- <pt x="161" y="-247" on="1"/>
- <pt x="257" y="-220" on="0"/>
- <pt x="257" y="-20" on="1"/>
- <pt x="257" y="0" on="1"/>
- <pt x="161" y="0" on="1"/>
- <pt x="161" y="247" on="1"/>
- <pt x="408" y="247" on="1"/>
- <pt x="408" y="33" on="1"/>
- <pt x="407" y="-294" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 37 values pushed */
- 8 5 4 3 1 0 6 13 6 7 6 1 0 14 4 3 2 7 0 3 0 0 8 7 8
- 1 0 1 4 48 196 6 5 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="copyright" xMin="15" yMin="0" xMax="1495" yMax="1480">
- <contour>
- <pt x="755" y="1480" on="1"/>
- <pt x="1060" y="1480" on="0"/>
- <pt x="1278" y="1263" on="1"/>
- <pt x="1495" y="1047" on="0"/>
- <pt x="1495" y="741" on="1"/>
- <pt x="1495" y="431" on="0"/>
- <pt x="1277" y="216" on="1"/>
- <pt x="1060" y="0" on="0"/>
- <pt x="746" y="0" on="1"/>
- <pt x="478" y="0" on="0"/>
- <pt x="277" y="176" on="1"/>
- <pt x="15" y="404" on="0"/>
- <pt x="15" y="741" on="1"/>
- <pt x="15" y="1047" on="0"/>
- <pt x="232" y="1263" on="1"/>
- <pt x="450" y="1480" on="0"/>
- </contour>
- <contour>
- <pt x="755" y="1375" on="1"/>
- <pt x="494" y="1375" on="0"/>
- <pt x="307" y="1188" on="1"/>
- <pt x="121" y="1002" on="0"/>
- <pt x="121" y="740" on="1"/>
- <pt x="121" y="482" on="0"/>
- <pt x="306" y="294" on="1"/>
- <pt x="491" y="106" on="0"/>
- <pt x="748" y="106" on="1"/>
- <pt x="987" y="106" on="0"/>
- <pt x="1164" y="256" on="1"/>
- <pt x="1390" y="448" on="0"/>
- <pt x="1390" y="741" on="1"/>
- <pt x="1390" y="1003" on="0"/>
- <pt x="1203" y="1188" on="1"/>
- <pt x="1016" y="1375" on="0"/>
- </contour>
- <contour>
- <pt x="1025" y="364" on="1"/>
- <pt x="887" y="317" on="0"/>
- <pt x="781" y="317" on="1"/>
- <pt x="603" y="317" on="0"/>
- <pt x="488" y="434" on="1"/>
- <pt x="373" y="551" on="0"/>
- <pt x="373" y="736" on="1"/>
- <pt x="373" y="927" on="0"/>
- <pt x="485" y="1042" on="1"/>
- <pt x="597" y="1157" on="0"/>
- <pt x="787" y="1157" on="1"/>
- <pt x="884" y="1157" on="0"/>
- <pt x="1001" y="1133" on="1"/>
- <pt x="1025" y="1128" on="1"/>
- <pt x="1025" y="1010" on="1"/>
- <pt x="895" y="1063" on="0"/>
- <pt x="794" y="1063" on="1"/>
- <pt x="668" y="1063" on="0"/>
- <pt x="591" y="974" on="1"/>
- <pt x="514" y="884" on="0"/>
- <pt x="514" y="739" on="1"/>
- <pt x="514" y="593" on="0"/>
- <pt x="594" y="508" on="1"/>
- <pt x="674" y="423" on="0"/>
- <pt x="809" y="423" on="1"/>
- <pt x="914" y="423" on="0"/>
- <pt x="1025" y="482" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 0 0 56 20 34 48 21 42 24 20 8 16 20 0 48 196 8 2 0 0 42 34 1 1 58
- 46 45 42 34 32 6 0 2 3 0 0 14 0 0 52 42 38 28 17 4 20 17 12 48 196
- 58 46 45 38 32 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="currency" xMin="122" yMin="293" xMax="1016" yMax="1188">
- <contour>
- <pt x="365" y="449" on="1"/>
- <pt x="209" y="293" on="1"/>
- <pt x="122" y="380" on="1"/>
- <pt x="277" y="536" on="1"/>
- <pt x="214" y="640" on="0"/>
- <pt x="214" y="740" on="1"/>
- <pt x="214" y="841" on="0"/>
- <pt x="278" y="944" on="1"/>
- <pt x="122" y="1100" on="1"/>
- <pt x="209" y="1188" on="1"/>
- <pt x="365" y="1032" on="1"/>
- <pt x="463" y="1095" on="0"/>
- <pt x="569" y="1095" on="1"/>
- <pt x="675" y="1095" on="0"/>
- <pt x="773" y="1032" on="1"/>
- <pt x="929" y="1188" on="1"/>
- <pt x="1016" y="1100" on="1"/>
- <pt x="860" y="944" on="1"/>
- <pt x="924" y="841" on="0"/>
- <pt x="924" y="740" on="1"/>
- <pt x="924" y="639" on="0"/>
- <pt x="861" y="536" on="1"/>
- <pt x="1016" y="380" on="1"/>
- <pt x="929" y="293" on="1"/>
- <pt x="773" y="449" on="1"/>
- <pt x="674" y="385" on="0"/>
- <pt x="569" y="385" on="1"/>
- <pt x="464" y="385" on="0"/>
- </contour>
- <contour>
- <pt x="569" y="972" on="1"/>
- <pt x="471" y="972" on="0"/>
- <pt x="404" y="905" on="1"/>
- <pt x="337" y="838" on="0"/>
- <pt x="337" y="739" on="1"/>
- <pt x="337" y="643" on="0"/>
- <pt x="404" y="576" on="1"/>
- <pt x="470" y="508" on="0"/>
- <pt x="566" y="508" on="1"/>
- <pt x="655" y="508" on="0"/>
- <pt x="719" y="562" on="1"/>
- <pt x="801" y="631" on="0"/>
- <pt x="801" y="741" on="1"/>
- <pt x="801" y="838" on="0"/>
- <pt x="734" y="905" on="1"/>
- <pt x="666" y="972" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 68 values pushed */
- 0 0 36 6 26 28 6 12 48 196 12 1 1 16 15 9 8 4 13 1 0 1 24 23 22
- 21 17 14 10 7 3 2 1 0 12 13 26 1 0 14 0 0 40 6 19 32 6 5 48 196
- 24 23 22 21 19 17 16 15 14 10 9 8 7 5 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="d" xMin="86" yMin="-25" xMax="984" yMax="1579">
- <contour>
- <pt x="787" y="382" on="1"/>
- <pt x="787" y="937" on="1"/>
- <pt x="648" y="962" on="0"/>
- <pt x="582" y="962" on="1"/>
- <pt x="299" y="962" on="0"/>
- <pt x="299" y="532" on="1"/>
- <pt x="299" y="354" on="0"/>
- <pt x="355" y="251" on="1"/>
- <pt x="410" y="148" on="0"/>
- <pt x="504" y="148" on="1"/>
- <pt x="630" y="148" on="0"/>
- </contour>
- <contour>
- <pt x="787" y="203" on="1"/>
- <pt x="731" y="101" on="0"/>
- <pt x="669" y="49" on="1"/>
- <pt x="581" y="-25" on="0"/>
- <pt x="462" y="-25" on="1"/>
- <pt x="293" y="-25" on="0"/>
- <pt x="190" y="123" on="1"/>
- <pt x="86" y="270" on="0"/>
- <pt x="86" y="514" on="1"/>
- <pt x="86" y="798" on="0"/>
- <pt x="220" y="954" on="1"/>
- <pt x="354" y="1110" on="0"/>
- <pt x="597" y="1110" on="1"/>
- <pt x="691" y="1110" on="0"/>
- <pt x="787" y="1086" on="1"/>
- <pt x="787" y="1579" on="1"/>
- <pt x="984" y="1579" on="1"/>
- <pt x="984" y="0" on="1"/>
- <pt x="787" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 23 1 15 2 9 3 1 25 11 9 3 1 0 6 1 28 3 0 27 26 1 29 28 1 2
- 0 14 19 5 0 0 0 29 26 25 11 1 0 4 5 27 1 4 48 196 28 27 1 29 26
- 25 11 1 0 5 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dagger" xMin="150" yMin="-296" xMax="989" yMax="1480">
- <contour>
- <pt x="471" y="-296" on="1"/>
- <pt x="495" y="839" on="1"/>
- <pt x="150" y="814" on="1"/>
- <pt x="150" y="962" on="1"/>
- <pt x="495" y="938" on="1"/>
- <pt x="471" y="1480" on="1"/>
- <pt x="668" y="1480" on="1"/>
- <pt x="643" y="938" on="1"/>
- <pt x="989" y="962" on="1"/>
- <pt x="989" y="814" on="1"/>
- <pt x="643" y="839" on="1"/>
- <pt x="668" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 42 values pushed */
- 1 10 9 8 7 4 3 2 1 8 5 2 3 0 11 0 1 0 6 5 0 14 11 10 7
- 6 5 4 1 0 8 8 2 3 9 8 1 3 2 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="daggerdbl" xMin="150" yMin="-296" xMax="989" yMax="1480">
- <contour>
- <pt x="471" y="-296" on="1"/>
- <pt x="495" y="247" on="1"/>
- <pt x="150" y="222" on="1"/>
- <pt x="150" y="370" on="1"/>
- <pt x="495" y="345" on="1"/>
- <pt x="495" y="839" on="1"/>
- <pt x="150" y="814" on="1"/>
- <pt x="150" y="962" on="1"/>
- <pt x="495" y="938" on="1"/>
- <pt x="471" y="1480" on="1"/>
- <pt x="668" y="1480" on="1"/>
- <pt x="643" y="938" on="1"/>
- <pt x="989" y="962" on="1"/>
- <pt x="989" y="814" on="1"/>
- <pt x="643" y="839" on="1"/>
- <pt x="643" y="345" on="1"/>
- <pt x="989" y="370" on="1"/>
- <pt x="989" y="222" on="1"/>
- <pt x="643" y="247" on="1"/>
- <pt x="668" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 1 18 17 16 15 14 13 12 11 8 7 6 5 4 3 2 1 16 9 2 3 0 19 0 1
- 0 10 9 0 14 19 10 2 12 11 3 9 0 2 1 2 3 0 0 18 15 14 11 7 3
- 1 1 4 48 196 17 16 13 12 3 8 5 4 1 3 7 6 3 2 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dcaron" xMin="86" yMin="-25" xMax="1259" yMax="1579">
- <contour>
- <pt x="787" y="382" on="1"/>
- <pt x="787" y="937" on="1"/>
- <pt x="648" y="962" on="0"/>
- <pt x="582" y="962" on="1"/>
- <pt x="299" y="962" on="0"/>
- <pt x="299" y="532" on="1"/>
- <pt x="299" y="354" on="0"/>
- <pt x="355" y="251" on="1"/>
- <pt x="410" y="148" on="0"/>
- <pt x="504" y="148" on="1"/>
- <pt x="630" y="148" on="0"/>
- </contour>
- <contour>
- <pt x="787" y="203" on="1"/>
- <pt x="731" y="101" on="0"/>
- <pt x="669" y="49" on="1"/>
- <pt x="581" y="-25" on="0"/>
- <pt x="462" y="-25" on="1"/>
- <pt x="293" y="-25" on="0"/>
- <pt x="190" y="123" on="1"/>
- <pt x="86" y="270" on="0"/>
- <pt x="86" y="514" on="1"/>
- <pt x="86" y="798" on="0"/>
- <pt x="220" y="954" on="1"/>
- <pt x="354" y="1110" on="0"/>
- <pt x="597" y="1110" on="1"/>
- <pt x="691" y="1110" on="0"/>
- <pt x="787" y="1086" on="1"/>
- <pt x="787" y="1579" on="1"/>
- <pt x="984" y="1579" on="1"/>
- <pt x="984" y="0" on="1"/>
- <pt x="787" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1061" y="1125" on="1"/>
- <pt x="1061" y="1184" on="1"/>
- <pt x="1138" y="1205" on="0"/>
- <pt x="1138" y="1365" on="1"/>
- <pt x="1138" y="1382" on="1"/>
- <pt x="1061" y="1382" on="1"/>
- <pt x="1061" y="1579" on="1"/>
- <pt x="1259" y="1579" on="1"/>
- <pt x="1259" y="1408" on="1"/>
- <pt x="1258" y="1146" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 23 1 15 2 1 38 35 34 33 31 30 6 26 1 3 0 9 3 1 25 11 9 3 1 0
- 6 1 28 3 0 37 36 27 26 3 29 28 1 2 0 14 34 33 2 37 30 3 19 5 0
- 0 0 36 35 31 30 4 3 37 29 26 25 11 1 0 4 5 27 2 4 48 196 38 37 1
- 28 27 1 29 26 25 11 1 0 5 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dcroat" xMin="86" yMin="-25" xMax="1132" yMax="1579">
- <contour>
- <pt x="787" y="1258" on="1"/>
- <pt x="466" y="1258" on="1"/>
- <pt x="466" y="1382" on="1"/>
- <pt x="787" y="1382" on="1"/>
- <pt x="787" y="1579" on="1"/>
- <pt x="984" y="1579" on="1"/>
- <pt x="984" y="1382" on="1"/>
- <pt x="1132" y="1382" on="1"/>
- <pt x="1132" y="1258" on="1"/>
- <pt x="984" y="1258" on="1"/>
- <pt x="984" y="0" on="1"/>
- <pt x="787" y="0" on="1"/>
- <pt x="787" y="203" on="1"/>
- <pt x="731" y="101" on="0"/>
- <pt x="669" y="49" on="1"/>
- <pt x="581" y="-25" on="0"/>
- <pt x="462" y="-25" on="1"/>
- <pt x="293" y="-25" on="0"/>
- <pt x="190" y="123" on="1"/>
- <pt x="86" y="270" on="0"/>
- <pt x="86" y="514" on="1"/>
- <pt x="86" y="798" on="0"/>
- <pt x="220" y="954" on="1"/>
- <pt x="354" y="1110" on="0"/>
- <pt x="597" y="1110" on="1"/>
- <pt x="691" y="1110" on="0"/>
- <pt x="787" y="1086" on="1"/>
- </contour>
- <contour>
- <pt x="787" y="382" on="1"/>
- <pt x="787" y="937" on="1"/>
- <pt x="648" y="962" on="0"/>
- <pt x="582" y="962" on="1"/>
- <pt x="299" y="962" on="0"/>
- <pt x="299" y="532" on="1"/>
- <pt x="299" y="354" on="0"/>
- <pt x="355" y="251" on="1"/>
- <pt x="410" y="148" on="0"/>
- <pt x="504" y="148" on="1"/>
- <pt x="630" y="148" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 90 values pushed */
- 0 0 36 30 16 30 40 24 48 196 24 1 16 2 1 28 27 26 12 4 1 10 3 0 0
- 0 9 8 1 0 6 3 2 1 4 48 196 5 4 1 7 6 3 2 3 11 10 1 3 0
- 14 0 0 32 9 20 48 196 8 7 2 13 5 2 1 20 0 0 0 28 27 26 12 11 4
- 3 0 4 7 5 1 4 48 196 10 9 6 5 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="degree" xMin="114" yMin="925" xMax="706" yMax="1517">
- <contour>
- <pt x="410" y="1517" on="1"/>
- <pt x="531" y="1517" on="0"/>
- <pt x="619" y="1430" on="1"/>
- <pt x="706" y="1344" on="0"/>
- <pt x="706" y="1222" on="1"/>
- <pt x="706" y="1098" on="0"/>
- <pt x="619" y="1012" on="1"/>
- <pt x="531" y="925" on="0"/>
- <pt x="406" y="925" on="1"/>
- <pt x="300" y="925" on="0"/>
- <pt x="219" y="995" on="1"/>
- <pt x="114" y="1087" on="0"/>
- <pt x="114" y="1221" on="1"/>
- <pt x="114" y="1344" on="0"/>
- <pt x="201" y="1430" on="1"/>
- <pt x="289" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="410" y="1394" on="1"/>
- <pt x="339" y="1394" on="0"/>
- <pt x="288" y="1343" on="1"/>
- <pt x="237" y="1293" on="0"/>
- <pt x="237" y="1222" on="1"/>
- <pt x="237" y="1151" on="0"/>
- <pt x="288" y="1100" on="1"/>
- <pt x="338" y="1049" on="0"/>
- <pt x="408" y="1049" on="1"/>
- <pt x="473" y="1049" on="0"/>
- <pt x="521" y="1090" on="1"/>
- <pt x="583" y="1142" on="0"/>
- <pt x="583" y="1222" on="1"/>
- <pt x="583" y="1293" on="0"/>
- <pt x="532" y="1343" on="1"/>
- <pt x="481" y="1394" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 29 values pushed */
- 0 0 24 6 8 16 6 0 48 196 0 0 1 8 0 0 14 0 0 28 6 4 20 6 12
- 48 196 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dieresis" xMin="57" yMin="1283" xMax="625" yMax="1456">
- <contour>
- <pt x="57" y="1283" on="1"/>
- <pt x="57" y="1456" on="1"/>
- <pt x="230" y="1456" on="1"/>
- <pt x="230" y="1283" on="1"/>
- </contour>
- <contour>
- <pt x="452" y="1283" on="1"/>
- <pt x="452" y="1456" on="1"/>
- <pt x="625" y="1456" on="1"/>
- <pt x="625" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 0 0 7 4 3 0 13 3 1 1 4 48 196 6 5 2 1 3 0 14 0 0 5 4 13
- 1 6 3 2 13 1 0 2 4 48 196 7 6 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="divide" xMin="104" yMin="0" xMax="1091" yMax="1184">
- <contour>
- <pt x="104" y="518" on="1"/>
- <pt x="104" y="666" on="1"/>
- <pt x="1091" y="666" on="1"/>
- <pt x="1091" y="518" on="1"/>
- </contour>
- <contour>
- <pt x="474" y="938" on="1"/>
- <pt x="474" y="1184" on="1"/>
- <pt x="721" y="1184" on="1"/>
- <pt x="721" y="938" on="1"/>
- </contour>
- <contour>
- <pt x="474" y="0" on="1"/>
- <pt x="474" y="247" on="1"/>
- <pt x="721" y="247" on="1"/>
- <pt x="721" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 59 values pushed */
- 0 0 10 9 8 1 8 7 4 8 1 5 3 0 7 1 1 3 4 48 196 11 8 1 6
- 5 1 2 1 1 3 0 14 0 0 11 10 7 6 8 3 4 1 4 48 196 9 8 5 4
- 3 3 2 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dollar" xMin="103" yMin="-123" xMax="942" yMax="1604">
- <contour>
- <pt x="498" y="-123" on="1"/>
- <pt x="498" y="0" on="1"/>
- <pt x="322" y="0" on="0"/>
- <pt x="103" y="83" on="1"/>
- <pt x="103" y="253" on="1"/>
- <pt x="328" y="148" on="0"/>
- <pt x="498" y="148" on="1"/>
- <pt x="498" y="679" on="1"/>
- <pt x="312" y="795" on="0"/>
- <pt x="235" y="881" on="1"/>
- <pt x="147" y="981" on="0"/>
- <pt x="147" y="1125" on="1"/>
- <pt x="147" y="1296" on="0"/>
- <pt x="274" y="1398" on="1"/>
- <pt x="360" y="1467" on="0"/>
- <pt x="498" y="1480" on="1"/>
- <pt x="498" y="1604" on="1"/>
- <pt x="597" y="1604" on="1"/>
- <pt x="597" y="1480" on="1"/>
- <pt x="741" y="1480" on="0"/>
- <pt x="918" y="1413" on="1"/>
- <pt x="918" y="1252" on="1"/>
- <pt x="727" y="1335" on="0"/>
- <pt x="597" y="1345" on="1"/>
- <pt x="597" y="818" on="1"/>
- <pt x="609" y="810" on="1"/>
- <pt x="635" y="794" on="0"/>
- <pt x="658" y="781" on="1"/>
- <pt x="670" y="773" on="1"/>
- <pt x="796" y="698" on="0"/>
- <pt x="859" y="632" on="1"/>
- <pt x="942" y="546" on="0"/>
- <pt x="942" y="413" on="1"/>
- <pt x="942" y="232" on="0"/>
- <pt x="820" y="113" on="1"/>
- <pt x="735" y="31" on="0"/>
- <pt x="597" y="0" on="1"/>
- <pt x="597" y="-123" on="1"/>
- </contour>
- <contour>
- <pt x="597" y="160" on="1"/>
- <pt x="769" y="227" on="0"/>
- <pt x="769" y="385" on="1"/>
- <pt x="769" y="467" on="0"/>
- <pt x="721" y="520" on="1"/>
- <pt x="684" y="560" on="0"/>
- <pt x="597" y="621" on="1"/>
- </contour>
- <contour>
- <pt x="498" y="883" on="1"/>
- <pt x="498" y="1339" on="1"/>
- <pt x="319" y="1278" on="0"/>
- <pt x="319" y="1133" on="1"/>
- <pt x="319" y="1002" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 46 45 44 38 37 36 24 23 21 20 18 17 16 15 7 6 4 3 1 0 14 0 0 48 13
- 11 40 13 32 48 196 11 11 0 3 2 32 20 0 0 44 38 37 36 24 23 18 17 11 7
- 0 1 4 48 196 21 20 1 46 45 16 15 7 6 1 0 7 4 3 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dotaccent" xMin="242" yMin="1283" xMax="439" yMax="1480">
- <contour>
- <pt x="242" y="1283" on="1"/>
- <pt x="242" y="1480" on="1"/>
- <pt x="439" y="1480" on="1"/>
- <pt x="439" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 30 values pushed */
- 0 0 3 0 5 1 1 1 4 48 196 2 1 0 14 0 0 3 2 4 1 0 1 4 48
- 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dotlessi" xMin="129" yMin="0" xMax="326" yMax="1086">
- <contour>
- <pt x="129" y="0" on="1"/>
- <pt x="129" y="1086" on="1"/>
- <pt x="326" y="1086" on="1"/>
- <pt x="326" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 23 values pushed */
- 3 0 1 0 2 1 1 14 0 0 3 2 4 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dotlessj" xMin="-155" yMin="-419" xMax="331" yMax="1086">
- <contour>
- <pt x="-155" y="-387" on="1"/>
- <pt x="-155" y="-231" on="1"/>
- <pt x="-75" y="-271" on="0"/>
- <pt x="-5" y="-271" on="1"/>
- <pt x="92" y="-271" on="0"/>
- <pt x="115" y="-197" on="1"/>
- <pt x="133" y="-136" on="0"/>
- <pt x="133" y="0" on="1"/>
- <pt x="133" y="1086" on="1"/>
- <pt x="331" y="1086" on="1"/>
- <pt x="331" y="0" on="1"/>
- <pt x="331" y="-419" on="0"/>
- <pt x="11" y="-419" on="1"/>
- <pt x="-77" y="-419" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 40 values pushed */
- 0 0 3 40 12 48 196 1 10 7 1 0 4 13 12 2 0 9 8 1 14 0 0 8 7
- 4 1 9 1 4 48 196 10 9 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="dotmath" xMin="161" yMin="491" xMax="408" yMax="738">
- <contour>
- <pt x="161" y="491" on="1"/>
- <pt x="161" y="738" on="1"/>
- <pt x="408" y="738" on="1"/>
- <pt x="408" y="491" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 3 0 8 1 1 1 4 48 196 2 1 1 0 14 0 0 3 2 8 1 0 1 4
- 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="e" xMin="86" yMin="-25" xMax="1022" yMax="1110">
- <contour>
- <pt x="818" y="660" on="1"/>
- <pt x="815" y="758" on="0"/>
- <pt x="798" y="809" on="1"/>
- <pt x="746" y="963" on="0"/>
- <pt x="572" y="963" on="1"/>
- <pt x="451" y="963" on="0"/>
- <pt x="381" y="891" on="1"/>
- <pt x="313" y="822" on="0"/>
- <pt x="296" y="660" on="1"/>
- </contour>
- <contour>
- <pt x="1013" y="191" on="1"/>
- <pt x="1013" y="35" on="1"/>
- <pt x="810" y="-25" on="0"/>
- <pt x="641" y="-25" on="1"/>
- <pt x="386" y="-25" on="0"/>
- <pt x="236" y="133" on="1"/>
- <pt x="86" y="291" on="0"/>
- <pt x="86" y="557" on="1"/>
- <pt x="86" y="810" on="0"/>
- <pt x="219" y="960" on="1"/>
- <pt x="351" y="1110" on="0"/>
- <pt x="577" y="1110" on="1"/>
- <pt x="836" y="1110" on="0"/>
- <pt x="943" y="926" on="1"/>
- <pt x="1022" y="789" on="0"/>
- <pt x="1019" y="573" on="1"/>
- <pt x="1018" y="512" on="1"/>
- <pt x="293" y="512" on="1"/>
- <pt x="305" y="393" on="0"/>
- <pt x="332" y="331" on="1"/>
- <pt x="420" y="125" on="0"/>
- <pt x="683" y="125" on="1"/>
- <pt x="832" y="125" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 48 values pushed */
- 0 0 30 40 12 48 196 20 1 12 2 4 1 4 1 0 2 0 1 10 9 2 25 2 3
- 0 26 25 1 8 0 1 2 0 14 25 9 26 8 0 3 13 16 9 10 9 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="eacute" xMin="86" yMin="-25" xMax="1022" yMax="1604">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="315" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ebreve" xMin="86" yMin="-25" xMax="1022" yMax="1604">
- <contour>
- <pt x="818" y="660" on="1"/>
- <pt x="815" y="758" on="0"/>
- <pt x="798" y="809" on="1"/>
- <pt x="746" y="963" on="0"/>
- <pt x="572" y="963" on="1"/>
- <pt x="451" y="963" on="0"/>
- <pt x="381" y="891" on="1"/>
- <pt x="313" y="822" on="0"/>
- <pt x="296" y="660" on="1"/>
- </contour>
- <contour>
- <pt x="1013" y="191" on="1"/>
- <pt x="1013" y="35" on="1"/>
- <pt x="810" y="-25" on="0"/>
- <pt x="641" y="-25" on="1"/>
- <pt x="386" y="-25" on="0"/>
- <pt x="236" y="133" on="1"/>
- <pt x="86" y="291" on="0"/>
- <pt x="86" y="557" on="1"/>
- <pt x="86" y="810" on="0"/>
- <pt x="219" y="960" on="1"/>
- <pt x="351" y="1110" on="0"/>
- <pt x="577" y="1110" on="1"/>
- <pt x="836" y="1110" on="0"/>
- <pt x="943" y="926" on="1"/>
- <pt x="1022" y="789" on="0"/>
- <pt x="1019" y="573" on="1"/>
- <pt x="1018" y="512" on="1"/>
- <pt x="293" y="512" on="1"/>
- <pt x="305" y="393" on="0"/>
- <pt x="332" y="331" on="1"/>
- <pt x="420" y="125" on="0"/>
- <pt x="683" y="125" on="1"/>
- <pt x="832" y="125" on="0"/>
- </contour>
- <contour>
- <pt x="236" y="1604" on="1"/>
- <pt x="359" y="1604" on="1"/>
- <pt x="380" y="1511" on="0"/>
- <pt x="434" y="1470" on="1"/>
- <pt x="486" y="1431" on="0"/>
- <pt x="569" y="1431" on="1"/>
- <pt x="663" y="1431" on="0"/>
- <pt x="717" y="1480" on="1"/>
- <pt x="760" y="1520" on="0"/>
- <pt x="779" y="1604" on="1"/>
- <pt x="902" y="1604" on="1"/>
- <pt x="885" y="1469" on="0"/>
- <pt x="813" y="1389" on="1"/>
- <pt x="718" y="1283" on="0"/>
- <pt x="569" y="1283" on="1"/>
- <pt x="412" y="1283" on="0"/>
- <pt x="317" y="1398" on="1"/>
- <pt x="253" y="1475" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 37 40 46 30 40 12 48 196 20 1 12 2 4 1 4 1 0 2 0 1 10 9 2
- 25 2 3 0 1 42 41 33 32 4 13 46 1 0 26 25 1 8 0 1 2 0 14 25 9
- 42 41 33 32 26 8 0 7 13 16 9 10 9 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ecaron" xMin="86" yMin="-25" xMax="1022" yMax="1604">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="228" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ecircumflex" xMin="86" yMin="-25" xMax="1022" yMax="1604">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="240" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="edieresis" xMin="86" yMin="-25" xMax="1022" yMax="1456">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="241" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="edotaccent" xMin="86" yMin="-25" xMax="1022" yMax="1480">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="dotaccent" x="228" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="egrave" xMin="86" yMin="-25" xMax="1022" yMax="1604">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="143" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="eight" xMin="99" yMin="-37" xMax="1089" yMax="1517">
- <contour>
- <pt x="393" y="806" on="1"/>
- <pt x="295" y="877" on="0"/>
- <pt x="246" y="942" on="1"/>
- <pt x="176" y="1036" on="0"/>
- <pt x="176" y="1145" on="1"/>
- <pt x="176" y="1308" on="0"/>
- <pt x="299" y="1412" on="1"/>
- <pt x="422" y="1517" on="0"/>
- <pt x="620" y="1517" on="1"/>
- <pt x="804" y="1517" on="0"/>
- <pt x="917" y="1428" on="1"/>
- <pt x="1030" y="1340" on="0"/>
- <pt x="1030" y="1196" on="1"/>
- <pt x="1030" y="1067" on="0"/>
- <pt x="930" y="952" on="1"/>
- <pt x="869" y="883" on="0"/>
- <pt x="754" y="806" on="1"/>
- <pt x="904" y="729" on="0"/>
- <pt x="981" y="647" on="1"/>
- <pt x="1089" y="531" on="0"/>
- <pt x="1089" y="380" on="1"/>
- <pt x="1089" y="197" on="0"/>
- <pt x="948" y="80" on="1"/>
- <pt x="808" y="-37" on="0"/>
- <pt x="585" y="-37" on="1"/>
- <pt x="366" y="-37" on="0"/>
- <pt x="233" y="74" on="1"/>
- <pt x="99" y="185" on="0"/>
- <pt x="99" y="368" on="1"/>
- <pt x="99" y="528" on="0"/>
- <pt x="207" y="654" on="1"/>
- <pt x="271" y="730" on="0"/>
- </contour>
- <contour>
- <pt x="644" y="868" on="1"/>
- <pt x="851" y="1010" on="0"/>
- <pt x="851" y="1164" on="1"/>
- <pt x="851" y="1258" on="0"/>
- <pt x="783" y="1313" on="1"/>
- <pt x="715" y="1369" on="0"/>
- <pt x="599" y="1369" on="1"/>
- <pt x="489" y="1369" on="0"/>
- <pt x="422" y="1316" on="1"/>
- <pt x="355" y="1264" on="0"/>
- <pt x="355" y="1176" on="1"/>
- <pt x="355" y="1071" on="0"/>
- <pt x="468" y="982" on="1"/>
- <pt x="526" y="936" on="0"/>
- </contour>
- <contour>
- <pt x="500" y="726" on="1"/>
- <pt x="390" y="640" on="0"/>
- <pt x="346" y="577" on="1"/>
- <pt x="296" y="505" on="0"/>
- <pt x="296" y="397" on="1"/>
- <pt x="296" y="268" on="0"/>
- <pt x="378" y="190" on="1"/>
- <pt x="460" y="111" on="0"/>
- <pt x="595" y="111" on="1"/>
- <pt x="723" y="111" on="0"/>
- <pt x="804" y="178" on="1"/>
- <pt x="886" y="245" on="0"/>
- <pt x="886" y="352" on="1"/>
- <pt x="886" y="447" on="0"/>
- <pt x="823" y="512" on="1"/>
- <pt x="770" y="566" on="0"/>
- <pt x="640" y="643" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 51 values pushed */
- 0 0 54 40 24 38 40 8 48 196 24 2 8 0 1 1 46 32 16 0 4 0 2 3 0
- 0 14 0 0 58 43 20 50 41 28 42 14 4 34 14 12 48 196 46 32 28 20 16 12 4
- 0
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ellipsis" xMin="247" yMin="0" xMax="1802" yMax="197">
- <contour>
- <pt x="247" y="0" on="1"/>
- <pt x="247" y="197" on="1"/>
- <pt x="444" y="197" on="1"/>
- <pt x="444" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="926" y="0" on="1"/>
- <pt x="926" y="197" on="1"/>
- <pt x="1123" y="197" on="1"/>
- <pt x="1123" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1604" y="0" on="1"/>
- <pt x="1604" y="197" on="1"/>
- <pt x="1802" y="197" on="1"/>
- <pt x="1802" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 56 values pushed */
- 0 0 10 9 6 5 2 1 5 5 0 1 4 48 196 11 8 7 4 3 0 5 0 14 0
- 0 9 8 4 1 10 7 6 4 1 4 3 2 4 1 0 3 4 48 196 11 10 1 5 4
- 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="emacron" xMin="86" yMin="-25" xMax="1022" yMax="1431">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="macron" x="228" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="emdash" xMin="99" yMin="543" xMax="1950" yMax="642">
- <contour>
- <pt x="99" y="543" on="1"/>
- <pt x="99" y="642" on="1"/>
- <pt x="1950" y="642" on="1"/>
- <pt x="1950" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 11 1 1 1 4 48 196 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="endash" xMin="101" yMin="543" xMax="1039" yMax="666">
- <contour>
- <pt x="101" y="543" on="1"/>
- <pt x="101" y="666" on="1"/>
- <pt x="1039" y="666" on="1"/>
- <pt x="1039" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 6 1 1 1 4 48 196 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="eng" xMin="154" yMin="-420" xMax="997" yMax="1110">
- <contour>
- <pt x="154" y="0" on="1"/>
- <pt x="154" y="1086" on="1"/>
- <pt x="351" y="1086" on="1"/>
- <pt x="351" y="882" on="1"/>
- <pt x="424" y="984" on="0"/>
- <pt x="495" y="1035" on="1"/>
- <pt x="598" y="1110" on="0"/>
- <pt x="721" y="1110" on="1"/>
- <pt x="997" y="1110" on="0"/>
- <pt x="997" y="780" on="1"/>
- <pt x="997" y="-92" on="1"/>
- <pt x="997" y="-420" on="0"/>
- <pt x="679" y="-420" on="1"/>
- <pt x="605" y="-420" on="0"/>
- <pt x="528" y="-399" on="1"/>
- <pt x="528" y="-245" on="1"/>
- <pt x="593" y="-272" on="0"/>
- <pt x="651" y="-272" on="1"/>
- <pt x="799" y="-272" on="0"/>
- <pt x="799" y="-55" on="1"/>
- <pt x="799" y="716" on="1"/>
- <pt x="799" y="847" on="0"/>
- <pt x="772" y="894" on="1"/>
- <pt x="744" y="941" on="0"/>
- <pt x="668" y="941" on="1"/>
- <pt x="506" y="941" on="0"/>
- <pt x="351" y="703" on="1"/>
- <pt x="351" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 24 30 7 17 40 12 48 196 7 1 26 20 9 3 4 1 0 3 19 15 14 10 4
- 13 12 0 27 0 1 0 2 1 1 14 0 0 20 19 4 1 9 27 26 3 2 4 3 0
- 2 4 48 196 10 9 1 15 14 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="eogonek" xMin="86" yMin="-370" xMax="1022" yMax="1110">
- <component glyphName="e" x="0" y="0" flags="0x4"/>
- <component glyphName="ogonek" x="356" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="equal" xMin="104" yMin="333" xMax="1091" yMax="851">
- <contour>
- <pt x="104" y="333" on="1"/>
- <pt x="104" y="481" on="1"/>
- <pt x="1091" y="481" on="1"/>
- <pt x="1091" y="333" on="1"/>
- </contour>
- <contour>
- <pt x="104" y="703" on="1"/>
- <pt x="104" y="851" on="1"/>
- <pt x="1091" y="851" on="1"/>
- <pt x="1091" y="703" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 37 values pushed */
- 0 0 7 4 7 1 5 2 1 7 1 0 2 4 48 196 6 5 1 3 0 1 2 0 14
- 7 6 3 2 3 5 4 1 0 3 2 0
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="estimated" xMin="86" yMin="-25" xMax="1022" yMax="1110">
- <contour>
- <pt x="818" y="660" on="1"/>
- <pt x="815" y="758" on="0"/>
- <pt x="798" y="809" on="1"/>
- <pt x="746" y="963" on="0"/>
- <pt x="572" y="963" on="1"/>
- <pt x="451" y="963" on="0"/>
- <pt x="381" y="891" on="1"/>
- <pt x="313" y="822" on="0"/>
- <pt x="296" y="660" on="1"/>
- </contour>
- <contour>
- <pt x="1013" y="191" on="1"/>
- <pt x="1013" y="35" on="1"/>
- <pt x="810" y="-25" on="0"/>
- <pt x="641" y="-25" on="1"/>
- <pt x="386" y="-25" on="0"/>
- <pt x="236" y="133" on="1"/>
- <pt x="86" y="291" on="0"/>
- <pt x="86" y="557" on="1"/>
- <pt x="86" y="810" on="0"/>
- <pt x="219" y="960" on="1"/>
- <pt x="351" y="1110" on="0"/>
- <pt x="577" y="1110" on="1"/>
- <pt x="836" y="1110" on="0"/>
- <pt x="943" y="926" on="1"/>
- <pt x="1022" y="789" on="0"/>
- <pt x="1019" y="573" on="1"/>
- <pt x="1018" y="512" on="1"/>
- <pt x="293" y="512" on="1"/>
- <pt x="305" y="393" on="0"/>
- <pt x="332" y="331" on="1"/>
- <pt x="420" y="125" on="0"/>
- <pt x="683" y="125" on="1"/>
- <pt x="832" y="125" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 48 values pushed */
- 0 0 30 40 12 48 196 20 1 12 2 4 1 4 1 0 2 0 1 10 9 2 25 2 3
- 0 26 25 1 8 0 1 2 0 14 25 9 26 8 0 3 13 16 9 10 9 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="eth" xMin="86" yMin="-25" xMax="1052" yMax="1676">
- <contour>
- <pt x="126" y="1434" on="1"/>
- <pt x="126" y="1583" on="1"/>
- <pt x="326" y="1583" on="0"/>
- <pt x="488" y="1507" on="1"/>
- <pt x="642" y="1676" on="1"/>
- <pt x="721" y="1588" on="1"/>
- <pt x="591" y="1445" on="1"/>
- <pt x="716" y="1349" on="0"/>
- <pt x="783" y="1274" on="1"/>
- <pt x="1052" y="975" on="0"/>
- <pt x="1052" y="550" on="1"/>
- <pt x="1052" y="281" on="0"/>
- <pt x="924" y="128" on="1"/>
- <pt x="796" y="-25" on="0"/>
- <pt x="575" y="-25" on="1"/>
- <pt x="351" y="-25" on="0"/>
- <pt x="219" y="127" on="1"/>
- <pt x="86" y="279" on="0"/>
- <pt x="86" y="535" on="1"/>
- <pt x="86" y="793" on="0"/>
- <pt x="216" y="939" on="1"/>
- <pt x="345" y="1086" on="0"/>
- <pt x="570" y="1086" on="1"/>
- <pt x="624" y="1086" on="0"/>
- <pt x="690" y="1072" on="1"/>
- <pt x="613" y="1217" on="0"/>
- <pt x="473" y="1316" on="1"/>
- <pt x="324" y="1152" on="1"/>
- <pt x="245" y="1239" on="1"/>
- <pt x="373" y="1380" on="1"/>
- <pt x="271" y="1434" on="0"/>
- </contour>
- <contour>
- <pt x="566" y="938" on="1"/>
- <pt x="439" y="938" on="0"/>
- <pt x="368" y="832" on="1"/>
- <pt x="296" y="726" on="0"/>
- <pt x="296" y="531" on="1"/>
- <pt x="296" y="123" on="0"/>
- <pt x="570" y="123" on="1"/>
- <pt x="842" y="123" on="0"/>
- <pt x="842" y="530" on="1"/>
- <pt x="842" y="938" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 75 values pushed */
- 0 0 37 40 14 31 40 22 48 196 22 1 14 2 1 1 29 28 27 26 6 0 6 0 1
- 3 0 0 1 1 24 1 2 2 0 0 1 5 4 3 1 4 13 0 0 14 0 0 39 9
- 10 35 9 18 48 196 29 28 27 26 24 6 5 4 3 9 13 10 0 18 0 1 0 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="exclam" xMin="186" yMin="0" xMax="383" yMax="1480">
- <contour>
- <pt x="186" y="0" on="1"/>
- <pt x="186" y="197" on="1"/>
- <pt x="383" y="197" on="1"/>
- <pt x="383" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="211" y="395" on="1"/>
- <pt x="186" y="1184" on="1"/>
- <pt x="186" y="1480" on="1"/>
- <pt x="383" y="1480" on="1"/>
- <pt x="383" y="1184" on="1"/>
- <pt x="359" y="395" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 54 values pushed */
- 8 5 2 6 4 3 0 0 2 1 5 1 0 1 4 48 196 9 4 1 3 0 1 2 0
- 7 6 0 14 9 4 2 2 0 3 0 0 8 7 3 2 4 3 0 1 4 48 196 6 5
- 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="exclamdown" xMin="242" yMin="-395" xMax="439" yMax="1086">
- <contour>
- <pt x="439" y="1086" on="1"/>
- <pt x="439" y="888" on="1"/>
- <pt x="242" y="888" on="1"/>
- <pt x="242" y="1086" on="1"/>
- </contour>
- <contour>
- <pt x="415" y="691" on="1"/>
- <pt x="439" y="-99" on="1"/>
- <pt x="439" y="-395" on="1"/>
- <pt x="242" y="-395" on="1"/>
- <pt x="242" y="-99" on="1"/>
- <pt x="267" y="691" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 56 values pushed */
- 1 8 5 2 2 6 3 0 0 0 2 1 5 1 0 1 4 48 196 9 4 1 7 6 1
- 2 0 3 0 1 14 9 4 2 0 2 3 0 0 6 5 1 0 4 3 2 1 4 48 196
- 8 7 3 2 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="f" xMin="31" yMin="0" xMax="630" yMax="1604">
- <contour>
- <pt x="175" y="0" on="1"/>
- <pt x="175" y="938" on="1"/>
- <pt x="31" y="938" on="1"/>
- <pt x="31" y="1086" on="1"/>
- <pt x="175" y="1086" on="1"/>
- <pt x="175" y="1216" on="1"/>
- <pt x="175" y="1604" on="0"/>
- <pt x="483" y="1604" on="1"/>
- <pt x="548" y="1604" on="0"/>
- <pt x="630" y="1578" on="1"/>
- <pt x="630" y="1421" on="1"/>
- <pt x="556" y="1456" on="0"/>
- <pt x="504" y="1456" on="1"/>
- <pt x="431" y="1456" on="0"/>
- <pt x="402" y="1407" on="1"/>
- <pt x="373" y="1359" on="0"/>
- <pt x="373" y="1237" on="1"/>
- <pt x="373" y="1086" on="1"/>
- <pt x="568" y="1086" on="1"/>
- <pt x="568" y="938" on="1"/>
- <pt x="373" y="938" on="1"/>
- <pt x="373" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 68 values pushed */
- 0 0 12 40 7 48 196 16 10 9 5 4 13 7 3 0 0 20 19 2 1 7 3 3 1
- 4 48 196 21 0 1 0 18 17 4 3 1 3 14 0 0 21 20 17 16 4 3 0 1 4
- 48 196 10 9 1 19 18 1 5 4 1 0 3 3 2 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fi" xMin="31" yMin="0" xMax="896" yMax="1604">
- <contour>
- <pt x="175" y="0" on="1"/>
- <pt x="175" y="938" on="1"/>
- <pt x="31" y="938" on="1"/>
- <pt x="31" y="1086" on="1"/>
- <pt x="175" y="1086" on="1"/>
- <pt x="175" y="1216" on="1"/>
- <pt x="175" y="1604" on="0"/>
- <pt x="483" y="1604" on="1"/>
- <pt x="548" y="1604" on="0"/>
- <pt x="630" y="1578" on="1"/>
- <pt x="630" y="1421" on="1"/>
- <pt x="556" y="1456" on="0"/>
- <pt x="504" y="1456" on="1"/>
- <pt x="431" y="1456" on="0"/>
- <pt x="402" y="1407" on="1"/>
- <pt x="373" y="1359" on="0"/>
- <pt x="373" y="1237" on="1"/>
- <pt x="373" y="1086" on="1"/>
- <pt x="896" y="1086" on="1"/>
- <pt x="896" y="0" on="1"/>
- <pt x="699" y="0" on="1"/>
- <pt x="699" y="938" on="1"/>
- <pt x="373" y="938" on="1"/>
- <pt x="373" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="699" y="1283" on="1"/>
- <pt x="699" y="1480" on="1"/>
- <pt x="896" y="1480" on="1"/>
- <pt x="896" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 92 values pushed */
- 0 0 12 40 7 48 196 10 25 24 2 16 5 2 24 3 3 9 7 25 0 0 27 24 5
- 1 25 22 21 2 1 7 3 3 2 4 48 196 23 20 19 0 3 0 26 25 0 18 17 4
- 3 1 3 14 0 0 25 24 21 20 4 3 18 23 22 17 16 4 3 0 2 4 48 196 27
- 26 19 18 3 10 9 1 5 4 1 0 3 3 2 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fi#1" xMin="31" yMin="0" xMax="896" yMax="1604">
- <contour>
- <pt x="175" y="0" on="1"/>
- <pt x="175" y="938" on="1"/>
- <pt x="31" y="938" on="1"/>
- <pt x="31" y="1086" on="1"/>
- <pt x="175" y="1086" on="1"/>
- <pt x="175" y="1216" on="1"/>
- <pt x="175" y="1604" on="0"/>
- <pt x="483" y="1604" on="1"/>
- <pt x="548" y="1604" on="0"/>
- <pt x="630" y="1578" on="1"/>
- <pt x="630" y="1421" on="1"/>
- <pt x="556" y="1456" on="0"/>
- <pt x="504" y="1456" on="1"/>
- <pt x="431" y="1456" on="0"/>
- <pt x="402" y="1407" on="1"/>
- <pt x="373" y="1359" on="0"/>
- <pt x="373" y="1237" on="1"/>
- <pt x="373" y="1086" on="1"/>
- <pt x="896" y="1086" on="1"/>
- <pt x="896" y="0" on="1"/>
- <pt x="699" y="0" on="1"/>
- <pt x="699" y="938" on="1"/>
- <pt x="373" y="938" on="1"/>
- <pt x="373" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="699" y="1283" on="1"/>
- <pt x="699" y="1480" on="1"/>
- <pt x="896" y="1480" on="1"/>
- <pt x="896" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 92 values pushed */
- 0 0 12 40 7 48 196 10 25 24 2 16 5 2 24 3 3 9 7 25 0 0 27 24 5
- 1 25 22 21 2 1 7 3 3 2 4 48 196 23 20 19 0 3 0 26 25 0 18 17 4
- 3 1 3 14 0 0 25 24 21 20 4 3 18 23 22 17 16 4 3 0 2 4 48 196 27
- 26 19 18 3 10 9 1 5 4 1 0 3 3 2 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="figuredash" xMin="101" yMin="543" xMax="1039" yMax="666">
- <contour>
- <pt x="101" y="543" on="1"/>
- <pt x="101" y="666" on="1"/>
- <pt x="1039" y="666" on="1"/>
- <pt x="1039" y="543" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 0 0 3 0 6 1 1 1 4 48 196 2 1 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="five" xMin="163" yMin="-37" xMax="966" yMax="1480">
- <contour>
- <pt x="163" y="-6" on="1"/>
- <pt x="163" y="170" on="1"/>
- <pt x="315" y="111" on="0"/>
- <pt x="442" y="111" on="1"/>
- <pt x="589" y="111" on="0"/>
- <pt x="672" y="197" on="1"/>
- <pt x="756" y="284" on="0"/>
- <pt x="756" y="431" on="1"/>
- <pt x="756" y="767" on="0"/>
- <pt x="300" y="767" on="1"/>
- <pt x="245" y="767" on="0"/>
- <pt x="188" y="760" on="1"/>
- <pt x="188" y="1480" on="1"/>
- <pt x="936" y="1480" on="1"/>
- <pt x="936" y="1308" on="1"/>
- <pt x="361" y="1308" on="1"/>
- <pt x="361" y="918" on="1"/>
- <pt x="625" y="914" on="0"/>
- <pt x="775" y="811" on="1"/>
- <pt x="966" y="679" on="0"/>
- <pt x="966" y="424" on="1"/>
- <pt x="966" y="208" on="0"/>
- <pt x="821" y="86" on="1"/>
- <pt x="675" y="-37" on="0"/>
- <pt x="420" y="-37" on="1"/>
- <pt x="310" y="-37" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 70 values pushed */
- 0 0 3 40 24 48 196 24 2 9 1 16 11 9 1 4 14 2 3 0 1 0 2 0 0
- 0 15 14 13 1 12 1 4 48 196 13 12 0 14 0 0 7 9 20 48 196 20 13 0 0
- 16 15 13 1 11 1 4 48 196 14 13 1 12 11 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MDAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fl" xMin="31" yMin="0" xMax="896" yMax="1604">
- <contour>
- <pt x="175" y="0" on="1"/>
- <pt x="175" y="938" on="1"/>
- <pt x="31" y="938" on="1"/>
- <pt x="31" y="1086" on="1"/>
- <pt x="175" y="1086" on="1"/>
- <pt x="175" y="1216" on="1"/>
- <pt x="175" y="1604" on="0"/>
- <pt x="478" y="1604" on="1"/>
- <pt x="698" y="1579" on="1"/>
- <pt x="896" y="1579" on="1"/>
- <pt x="896" y="0" on="1"/>
- <pt x="698" y="0" on="1"/>
- <pt x="698" y="1431" on="1"/>
- <pt x="657" y="1439" on="1"/>
- <pt x="571" y="1456" on="0"/>
- <pt x="512" y="1456" on="1"/>
- <pt x="423" y="1456" on="0"/>
- <pt x="395" y="1396" on="1"/>
- <pt x="372" y="1346" on="0"/>
- <pt x="372" y="1237" on="1"/>
- <pt x="372" y="1086" on="1"/>
- <pt x="550" y="1086" on="1"/>
- <pt x="550" y="938" on="1"/>
- <pt x="372" y="938" on="1"/>
- <pt x="372" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 0 0 15 40 7 48 196 19 12 5 3 8 3 3 7 8 0 0 23 22 2 1 7 3 3
- 1 4 48 196 9 8 1 24 11 10 0 3 2 0 21 20 4 3 1 3 14 0 0 12 11
- 8 4 2 9 24 23 20 19 4 3 0 2 4 48 196 10 9 1 22 21 1 5 4 1 0
- 3 3 2 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fl#1" xMin="31" yMin="0" xMax="896" yMax="1604">
- <contour>
- <pt x="175" y="0" on="1"/>
- <pt x="175" y="938" on="1"/>
- <pt x="31" y="938" on="1"/>
- <pt x="31" y="1086" on="1"/>
- <pt x="175" y="1086" on="1"/>
- <pt x="175" y="1216" on="1"/>
- <pt x="175" y="1604" on="0"/>
- <pt x="478" y="1604" on="1"/>
- <pt x="698" y="1579" on="1"/>
- <pt x="896" y="1579" on="1"/>
- <pt x="896" y="0" on="1"/>
- <pt x="698" y="0" on="1"/>
- <pt x="698" y="1431" on="1"/>
- <pt x="657" y="1439" on="1"/>
- <pt x="571" y="1456" on="0"/>
- <pt x="512" y="1456" on="1"/>
- <pt x="423" y="1456" on="0"/>
- <pt x="395" y="1396" on="1"/>
- <pt x="372" y="1346" on="0"/>
- <pt x="372" y="1237" on="1"/>
- <pt x="372" y="1086" on="1"/>
- <pt x="550" y="1086" on="1"/>
- <pt x="550" y="938" on="1"/>
- <pt x="372" y="938" on="1"/>
- <pt x="372" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 81 values pushed */
- 0 0 15 40 7 48 196 19 12 5 3 8 3 3 7 8 0 0 23 22 2 1 7 3 3
- 1 4 48 196 9 8 1 24 11 10 0 3 2 0 21 20 4 3 1 3 14 0 0 12 11
- 8 4 2 9 24 23 20 19 4 3 0 2 4 48 196 10 9 1 22 21 1 5 4 1 0
- 3 3 2 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="florin" xMin="49" yMin="-296" xMax="1025" yMax="1517">
- <contour>
- <pt x="49" y="-296" on="1"/>
- <pt x="250" y="716" on="1"/>
- <pt x="84" y="716" on="1"/>
- <pt x="84" y="864" on="1"/>
- <pt x="280" y="864" on="1"/>
- <pt x="301" y="969" on="1"/>
- <pt x="411" y="1517" on="0"/>
- <pt x="799" y="1517" on="1"/>
- <pt x="903" y="1517" on="0"/>
- <pt x="1025" y="1489" on="1"/>
- <pt x="995" y="1332" on="1"/>
- <pt x="885" y="1370" on="0"/>
- <pt x="798" y="1370" on="1"/>
- <pt x="582" y="1370" on="0"/>
- <pt x="520" y="1060" on="1"/>
- <pt x="481" y="864" on="1"/>
- <pt x="670" y="864" on="1"/>
- <pt x="670" y="716" on="1"/>
- <pt x="451" y="716" on="1"/>
- <pt x="250" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 67 values pushed */
- 0 0 12 40 7 48 196 7 0 1 10 0 3 2 0 1 9 0 0 0 0 18 17 2 1
- 7 3 3 1 4 48 196 16 15 4 3 3 19 0 1 2 0 14 19 18 15 4 1 5 16
- 2 3 10 9 2 13 16 0 2 17 16 1 3 2 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="four" xMin="31" yMin="0" xMax="1071" yMax="1480">
- <contour>
- <pt x="688" y="0" on="1"/>
- <pt x="688" y="419" on="1"/>
- <pt x="31" y="419" on="1"/>
- <pt x="31" y="568" on="1"/>
- <pt x="688" y="1480" on="1"/>
- <pt x="873" y="1480" on="1"/>
- <pt x="873" y="580" on="1"/>
- <pt x="1071" y="580" on="1"/>
- <pt x="1071" y="419" on="1"/>
- <pt x="873" y="419" on="1"/>
- <pt x="873" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="224" y="580" on="1"/>
- <pt x="701" y="580" on="1"/>
- <pt x="701" y="1238" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 69 values pushed */
- 13 4 6 2 3 6 1 2 0 0 12 11 7 6 15 3 1 1 4 48 196 9 8 2 1
- 3 10 0 1 2 0 5 4 0 14 11 0 2 2 0 0 4 1 0 24 2 5 13 12 13
- 1 5 2 4 48 196 8 7 1 10 9 6 5 3 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="foursuperiour" xMin="3" yMin="592" xMax="669" yMax="1480">
- <contour>
- <pt x="410" y="592" on="1"/>
- <pt x="410" y="834" on="1"/>
- <pt x="3" y="834" on="1"/>
- <pt x="3" y="948" on="1"/>
- <pt x="406" y="1480" on="1"/>
- <pt x="546" y="1480" on="1"/>
- <pt x="546" y="951" on="1"/>
- <pt x="669" y="951" on="1"/>
- <pt x="669" y="834" on="1"/>
- <pt x="546" y="834" on="1"/>
- <pt x="546" y="592" on="1"/>
- </contour>
- <contour>
- <pt x="132" y="951" on="1"/>
- <pt x="410" y="951" on="1"/>
- <pt x="410" y="1315" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 66 values pushed */
- 13 4 6 2 3 6 1 2 10 0 1 0 0 9 8 2 1 38 3 6 1 4 48 196 5
- 4 1 12 11 7 6 3 2 0 14 8 7 2 13 5 11 4 3 2 4 13 0 0 0 13
- 12 1 0 22 3 5 1 4 48 196 10 9 6 5 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fraction" xMin="-441" yMin="-37" xMax="782" yMax="1517">
- <contour>
- <pt x="-441" y="-37" on="1"/>
- <pt x="647" y="1517" on="1"/>
- <pt x="782" y="1517" on="1"/>
- <pt x="-305" y="-37" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 9 values pushed */
- 3 2 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="fraction#1" xMin="-441" yMin="-37" xMax="782" yMax="1517">
- <contour>
- <pt x="-441" y="-37" on="1"/>
- <pt x="647" y="1517" on="1"/>
- <pt x="782" y="1517" on="1"/>
- <pt x="-305" y="-37" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 9 values pushed */
- 3 2 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="g" xMin="93" yMin="-420" xMax="991" yMax="1110">
- <contour>
- <pt x="794" y="432" on="1"/>
- <pt x="794" y="937" on="1"/>
- <pt x="653" y="962" on="0"/>
- <pt x="591" y="962" on="1"/>
- <pt x="306" y="962" on="0"/>
- <pt x="306" y="574" on="1"/>
- <pt x="306" y="401" on="0"/>
- <pt x="362" y="299" on="1"/>
- <pt x="418" y="197" on="0"/>
- <pt x="511" y="197" on="1"/>
- <pt x="637" y="197" on="0"/>
- </contour>
- <contour>
- <pt x="794" y="253" on="1"/>
- <pt x="739" y="151" on="0"/>
- <pt x="677" y="99" on="1"/>
- <pt x="588" y="25" on="0"/>
- <pt x="470" y="25" on="1"/>
- <pt x="302" y="25" on="0"/>
- <pt x="198" y="171" on="1"/>
- <pt x="93" y="316" on="0"/>
- <pt x="93" y="551" on="1"/>
- <pt x="93" y="817" on="0"/>
- <pt x="227" y="963" on="1"/>
- <pt x="361" y="1110" on="0"/>
- <pt x="603" y="1110" on="1"/>
- <pt x="697" y="1110" on="0"/>
- <pt x="794" y="1086" on="1"/>
- <pt x="991" y="1086" on="1"/>
- <pt x="991" y="296" on="1"/>
- <pt x="991" y="40" on="0"/>
- <pt x="964" y="-82" on="1"/>
- <pt x="891" y="-420" on="0"/>
- <pt x="463" y="-420" on="1"/>
- <pt x="283" y="-420" on="0"/>
- <pt x="100" y="-361" on="1"/>
- <pt x="100" y="-190" on="1"/>
- <pt x="315" y="-271" on="0"/>
- <pt x="462" y="-271" on="1"/>
- <pt x="794" y="-271" on="0"/>
- <pt x="794" y="82" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 0 0 36 40 31 48 196 23 1 15 2 9 3 1 38 27 11 9 3 1 0 7 25 2 3
- 0 1 34 33 31 2 0 26 25 1 14 5 5 0 33 2 19 33 27 26 1 34 33 1 38
- 25 11 1 0 4 3 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="gbreve" xMin="93" yMin="-420" xMax="991" yMax="1604">
- <component glyphName="g" x="0" y="0" flags="0x4"/>
- <component glyphName="breve" x="258" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="gcircumflex" xMin="93" yMin="-420" xMax="991" yMax="1604">
- <contour>
- <pt x="794" y="432" on="1"/>
- <pt x="794" y="937" on="1"/>
- <pt x="653" y="962" on="0"/>
- <pt x="591" y="962" on="1"/>
- <pt x="306" y="962" on="0"/>
- <pt x="306" y="574" on="1"/>
- <pt x="306" y="401" on="0"/>
- <pt x="362" y="299" on="1"/>
- <pt x="418" y="197" on="0"/>
- <pt x="511" y="197" on="1"/>
- <pt x="637" y="197" on="0"/>
- </contour>
- <contour>
- <pt x="794" y="253" on="1"/>
- <pt x="739" y="151" on="0"/>
- <pt x="677" y="99" on="1"/>
- <pt x="588" y="25" on="0"/>
- <pt x="470" y="25" on="1"/>
- <pt x="302" y="25" on="0"/>
- <pt x="198" y="171" on="1"/>
- <pt x="93" y="316" on="0"/>
- <pt x="93" y="551" on="1"/>
- <pt x="93" y="817" on="0"/>
- <pt x="227" y="963" on="1"/>
- <pt x="361" y="1110" on="0"/>
- <pt x="603" y="1110" on="1"/>
- <pt x="697" y="1110" on="0"/>
- <pt x="794" y="1086" on="1"/>
- <pt x="991" y="1086" on="1"/>
- <pt x="991" y="296" on="1"/>
- <pt x="991" y="40" on="0"/>
- <pt x="964" y="-82" on="1"/>
- <pt x="891" y="-420" on="0"/>
- <pt x="463" y="-420" on="1"/>
- <pt x="283" y="-420" on="0"/>
- <pt x="100" y="-361" on="1"/>
- <pt x="100" y="-190" on="1"/>
- <pt x="315" y="-271" on="0"/>
- <pt x="462" y="-271" on="1"/>
- <pt x="794" y="-271" on="0"/>
- <pt x="794" y="82" on="1"/>
- </contour>
- <contour>
- <pt x="249" y="1283" on="1"/>
- <pt x="490" y="1604" on="1"/>
- <pt x="708" y="1604" on="1"/>
- <pt x="949" y="1283" on="1"/>
- <pt x="801" y="1283" on="1"/>
- <pt x="600" y="1485" on="1"/>
- <pt x="598" y="1485" on="1"/>
- <pt x="397" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 86 values pushed */
- 0 0 36 40 31 48 196 23 1 15 2 45 44 2 40 39 3 9 3 1 38 27 11 9 3
- 1 0 7 25 2 3 0 1 34 33 31 2 0 41 40 1 46 43 42 39 3 2 0 26 25
- 1 14 43 42 2 26 0 3 5 46 45 44 41 40 39 5 7 0 33 3 19 33 27 26 1
- 34 33 1 38 25 11 1 0 4 3 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MDAP[1]
- MDAP[1]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="gcommaaccent" xMin="93" yMin="-420" xMax="991" yMax="1737">
- <contour>
- <pt x="794" y="432" on="1"/>
- <pt x="794" y="937" on="1"/>
- <pt x="653" y="962" on="0"/>
- <pt x="591" y="962" on="1"/>
- <pt x="306" y="962" on="0"/>
- <pt x="306" y="574" on="1"/>
- <pt x="306" y="401" on="0"/>
- <pt x="362" y="299" on="1"/>
- <pt x="418" y="197" on="0"/>
- <pt x="511" y="197" on="1"/>
- <pt x="637" y="197" on="0"/>
- </contour>
- <contour>
- <pt x="794" y="253" on="1"/>
- <pt x="739" y="151" on="0"/>
- <pt x="677" y="99" on="1"/>
- <pt x="588" y="25" on="0"/>
- <pt x="470" y="25" on="1"/>
- <pt x="302" y="25" on="0"/>
- <pt x="198" y="171" on="1"/>
- <pt x="93" y="316" on="0"/>
- <pt x="93" y="551" on="1"/>
- <pt x="93" y="817" on="0"/>
- <pt x="227" y="963" on="1"/>
- <pt x="361" y="1110" on="0"/>
- <pt x="603" y="1110" on="1"/>
- <pt x="697" y="1110" on="0"/>
- <pt x="794" y="1086" on="1"/>
- <pt x="991" y="1086" on="1"/>
- <pt x="991" y="296" on="1"/>
- <pt x="991" y="40" on="0"/>
- <pt x="964" y="-82" on="1"/>
- <pt x="891" y="-420" on="0"/>
- <pt x="463" y="-420" on="1"/>
- <pt x="283" y="-420" on="0"/>
- <pt x="100" y="-361" on="1"/>
- <pt x="100" y="-190" on="1"/>
- <pt x="315" y="-271" on="0"/>
- <pt x="462" y="-271" on="1"/>
- <pt x="794" y="-271" on="0"/>
- <pt x="794" y="82" on="1"/>
- </contour>
- <contour>
- <pt x="686" y="1737" on="1"/>
- <pt x="686" y="1678" on="1"/>
- <pt x="609" y="1657" on="0"/>
- <pt x="609" y="1497" on="1"/>
- <pt x="609" y="1480" on="1"/>
- <pt x="686" y="1480" on="1"/>
- <pt x="686" y="1283" on="1"/>
- <pt x="488" y="1283" on="1"/>
- <pt x="488" y="1454" on="1"/>
- <pt x="489" y="1716" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 92 values pushed */
- 0 0 36 40 31 48 196 23 1 15 2 9 3 1 38 27 11 9 3 1 0 7 25 2 3
- 0 47 44 43 42 40 39 6 13 45 1 34 33 31 2 0 46 45 1 0 26 25 1 14 43
- 42 2 39 46 3 5 5 46 33 2 19 33 0 0 45 44 40 39 4 3 46 1 4 48 196
- 47 46 1 27 26 1 34 33 1 38 25 11 1 0 4 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="gdotaccent" xMin="93" yMin="-420" xMax="991" yMax="1480">
- <contour>
- <pt x="794" y="432" on="1"/>
- <pt x="794" y="937" on="1"/>
- <pt x="653" y="962" on="0"/>
- <pt x="591" y="962" on="1"/>
- <pt x="306" y="962" on="0"/>
- <pt x="306" y="574" on="1"/>
- <pt x="306" y="401" on="0"/>
- <pt x="362" y="299" on="1"/>
- <pt x="418" y="197" on="0"/>
- <pt x="511" y="197" on="1"/>
- <pt x="637" y="197" on="0"/>
- </contour>
- <contour>
- <pt x="794" y="253" on="1"/>
- <pt x="739" y="151" on="0"/>
- <pt x="677" y="99" on="1"/>
- <pt x="588" y="25" on="0"/>
- <pt x="470" y="25" on="1"/>
- <pt x="302" y="25" on="0"/>
- <pt x="198" y="171" on="1"/>
- <pt x="93" y="316" on="0"/>
- <pt x="93" y="551" on="1"/>
- <pt x="93" y="817" on="0"/>
- <pt x="227" y="963" on="1"/>
- <pt x="361" y="1110" on="0"/>
- <pt x="603" y="1110" on="1"/>
- <pt x="697" y="1110" on="0"/>
- <pt x="794" y="1086" on="1"/>
- <pt x="991" y="1086" on="1"/>
- <pt x="991" y="296" on="1"/>
- <pt x="991" y="40" on="0"/>
- <pt x="964" y="-82" on="1"/>
- <pt x="891" y="-420" on="0"/>
- <pt x="463" y="-420" on="1"/>
- <pt x="283" y="-420" on="0"/>
- <pt x="100" y="-361" on="1"/>
- <pt x="100" y="-190" on="1"/>
- <pt x="315" y="-271" on="0"/>
- <pt x="462" y="-271" on="1"/>
- <pt x="794" y="-271" on="0"/>
- <pt x="794" y="82" on="1"/>
- </contour>
- <contour>
- <pt x="488" y="1283" on="1"/>
- <pt x="488" y="1480" on="1"/>
- <pt x="685" y="1480" on="1"/>
- <pt x="685" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 0 0 36 40 31 48 196 23 1 15 2 9 3 1 38 27 11 9 3 1 0 7 25 2 3
- 0 1 34 33 31 2 0 0 0 42 39 5 1 40 1 4 48 196 41 40 0 26 25 1 14
- 5 5 39 33 2 19 33 0 0 42 41 4 1 39 1 4 48 196 40 39 1 27 26 1 34
- 33 1 38 25 11 1 0 4 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="germandbls" xMin="129" yMin="-25" xMax="1165" yMax="1604">
- <contour>
- <pt x="129" y="0" on="1"/>
- <pt x="129" y="1151" on="1"/>
- <pt x="129" y="1406" on="0"/>
- <pt x="220" y="1505" on="1"/>
- <pt x="313" y="1604" on="0"/>
- <pt x="549" y="1604" on="1"/>
- <pt x="930" y="1604" on="0"/>
- <pt x="930" y="1333" on="1"/>
- <pt x="930" y="1203" on="0"/>
- <pt x="800" y="1063" on="1"/>
- <pt x="697" y="951" on="0"/>
- <pt x="697" y="899" on="1"/>
- <pt x="697" y="831" on="0"/>
- <pt x="808" y="749" on="1"/>
- <pt x="993" y="612" on="1"/>
- <pt x="1165" y="485" on="0"/>
- <pt x="1165" y="295" on="1"/>
- <pt x="1165" y="-25" on="0"/>
- <pt x="789" y="-25" on="1"/>
- <pt x="624" y="-25" on="0"/>
- <pt x="487" y="30" on="1"/>
- <pt x="487" y="202" on="1"/>
- <pt x="674" y="123" on="0"/>
- <pt x="789" y="123" on="1"/>
- <pt x="980" y="123" on="0"/>
- <pt x="980" y="276" on="1"/>
- <pt x="980" y="377" on="0"/>
- <pt x="865" y="465" on="1"/>
- <pt x="650" y="629" on="1"/>
- <pt x="521" y="727" on="0"/>
- <pt x="521" y="841" on="1"/>
- <pt x="521" y="936" on="0"/>
- <pt x="635" y="1084" on="1"/>
- <pt x="733" y="1212" on="0"/>
- <pt x="733" y="1299" on="1"/>
- <pt x="733" y="1456" on="0"/>
- <pt x="536" y="1456" on="1"/>
- <pt x="419" y="1456" on="0"/>
- <pt x="372" y="1407" on="1"/>
- <pt x="326" y="1358" on="0"/>
- <pt x="326" y="1234" on="1"/>
- <pt x="326" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 63 values pushed */
- 0 0 36 40 5 23 40 18 48 196 18 2 40 21 20 1 4 13 5 0 41 0 1 0 14
- 0 0 34 41 7 25 14 16 11 14 30 48 196 30 16 7 3 12 20 0 0 41 40 4 1
- 0 1 4 48 196 21 20 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="grave" xMin="106" yMin="1283" xMax="575" yMax="1604">
- <contour>
- <pt x="575" y="1283" on="1"/>
- <pt x="427" y="1283" on="1"/>
- <pt x="106" y="1604" on="1"/>
- <pt x="334" y="1604" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 3 2 1 1 0 1 2 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="greater" xMin="104" yMin="99" xMax="1091" yMax="1086">
- <contour>
- <pt x="104" y="1086" on="1"/>
- <pt x="1091" y="592" on="1"/>
- <pt x="104" y="99" on="1"/>
- <pt x="104" y="264" on="1"/>
- <pt x="758" y="591" on="1"/>
- <pt x="758" y="593" on="1"/>
- <pt x="104" y="920" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 6 5 4 3 2 1 0 14 5 4 1 3 13 0 6 3 2 0 3 0
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="guillemotleft" xMin="115" yMin="99" xMax="1003" yMax="987">
- <contour>
- <pt x="1003" y="913" on="1"/>
- <pt x="707" y="543" on="1"/>
- <pt x="1003" y="173" on="1"/>
- <pt x="905" y="99" on="1"/>
- <pt x="510" y="543" on="1"/>
- <pt x="905" y="987" on="1"/>
- </contour>
- <contour>
- <pt x="608" y="913" on="1"/>
- <pt x="312" y="543" on="1"/>
- <pt x="608" y="173" on="1"/>
- <pt x="510" y="99" on="1"/>
- <pt x="115" y="543" on="1"/>
- <pt x="510" y="987" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 11 10 9 8 7 6 5 4 3 2 1 0 14 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="guillemotright" xMin="136" yMin="99" xMax="1024" yMax="987">
- <contour>
- <pt x="136" y="173" on="1"/>
- <pt x="432" y="543" on="1"/>
- <pt x="136" y="913" on="1"/>
- <pt x="235" y="987" on="1"/>
- <pt x="629" y="543" on="1"/>
- <pt x="235" y="99" on="1"/>
- </contour>
- <contour>
- <pt x="531" y="173" on="1"/>
- <pt x="827" y="543" on="1"/>
- <pt x="531" y="913" on="1"/>
- <pt x="629" y="987" on="1"/>
- <pt x="1024" y="543" on="1"/>
- <pt x="629" y="99" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 11 10 9 8 7 6 5 4 3 2 1 0 14 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="guilsinglleft" xMin="74" yMin="99" xMax="567" yMax="987">
- <contour>
- <pt x="567" y="913" on="1"/>
- <pt x="271" y="543" on="1"/>
- <pt x="567" y="173" on="1"/>
- <pt x="469" y="99" on="1"/>
- <pt x="74" y="543" on="1"/>
- <pt x="469" y="987" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 5 4 3 2 1 0 14 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="guilsinglright" xMin="114" yMin="99" xMax="607" yMax="987">
- <contour>
- <pt x="114" y="173" on="1"/>
- <pt x="410" y="543" on="1"/>
- <pt x="114" y="913" on="1"/>
- <pt x="213" y="987" on="1"/>
- <pt x="607" y="543" on="1"/>
- <pt x="213" y="99" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 5 4 3 2 1 0 14 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="h" xMin="154" yMin="0" xMax="997" yMax="1579">
- <contour>
- <pt x="154" y="0" on="1"/>
- <pt x="154" y="1579" on="1"/>
- <pt x="351" y="1579" on="1"/>
- <pt x="351" y="882" on="1"/>
- <pt x="424" y="983" on="0"/>
- <pt x="495" y="1035" on="1"/>
- <pt x="598" y="1110" on="0"/>
- <pt x="721" y="1110" on="1"/>
- <pt x="997" y="1110" on="0"/>
- <pt x="997" y="780" on="1"/>
- <pt x="997" y="0" on="1"/>
- <pt x="799" y="0" on="1"/>
- <pt x="799" y="716" on="1"/>
- <pt x="799" y="848" on="0"/>
- <pt x="772" y="894" on="1"/>
- <pt x="744" y="941" on="0"/>
- <pt x="668" y="941" on="1"/>
- <pt x="506" y="941" on="0"/>
- <pt x="351" y="703" on="1"/>
- <pt x="351" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 56 values pushed */
- 0 0 16 30 7 48 196 7 1 1 18 12 9 3 4 1 0 3 0 2 1 1 19 11 10
- 0 3 2 0 14 0 0 12 11 4 1 9 19 18 3 2 4 3 0 2 4 48 196 10 9
- 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hbar" xMin="6" yMin="0" xMax="997" yMax="1579">
- <contour>
- <pt x="154" y="0" on="1"/>
- <pt x="154" y="1258" on="1"/>
- <pt x="6" y="1258" on="1"/>
- <pt x="6" y="1382" on="1"/>
- <pt x="154" y="1382" on="1"/>
- <pt x="154" y="1579" on="1"/>
- <pt x="351" y="1579" on="1"/>
- <pt x="351" y="1382" on="1"/>
- <pt x="647" y="1382" on="1"/>
- <pt x="647" y="1258" on="1"/>
- <pt x="351" y="1258" on="1"/>
- <pt x="351" y="882" on="1"/>
- <pt x="424" y="983" on="0"/>
- <pt x="495" y="1035" on="1"/>
- <pt x="598" y="1110" on="0"/>
- <pt x="721" y="1110" on="1"/>
- <pt x="997" y="1110" on="0"/>
- <pt x="997" y="780" on="1"/>
- <pt x="997" y="0" on="1"/>
- <pt x="799" y="0" on="1"/>
- <pt x="799" y="716" on="1"/>
- <pt x="799" y="848" on="0"/>
- <pt x="772" y="894" on="1"/>
- <pt x="744" y="941" on="0"/>
- <pt x="668" y="941" on="1"/>
- <pt x="506" y="941" on="0"/>
- <pt x="351" y="703" on="1"/>
- <pt x="351" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 0 0 24 30 15 48 196 15 1 1 26 20 17 11 4 1 0 3 0 0 0 10 9 2 1
- 6 3 3 1 4 48 196 6 5 1 8 7 4 3 3 27 19 18 0 3 3 0 14 9 8
- 2 19 6 3 3 2 0 0 0 20 19 4 1 17 27 26 11 10 7 6 4 5 0 2 4
- 48 196 18 17 1 5 4 1 0 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hcircumflex" xMin="154" yMin="0" xMax="997" yMax="1999">
- <contour>
- <pt x="154" y="0" on="1"/>
- <pt x="154" y="1579" on="1"/>
- <pt x="351" y="1579" on="1"/>
- <pt x="351" y="882" on="1"/>
- <pt x="424" y="983" on="0"/>
- <pt x="495" y="1035" on="1"/>
- <pt x="598" y="1110" on="0"/>
- <pt x="721" y="1110" on="1"/>
- <pt x="997" y="1110" on="0"/>
- <pt x="997" y="780" on="1"/>
- <pt x="997" y="0" on="1"/>
- <pt x="799" y="0" on="1"/>
- <pt x="799" y="716" on="1"/>
- <pt x="799" y="848" on="0"/>
- <pt x="772" y="894" on="1"/>
- <pt x="744" y="941" on="0"/>
- <pt x="668" y="941" on="1"/>
- <pt x="506" y="941" on="0"/>
- <pt x="351" y="703" on="1"/>
- <pt x="351" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="228" y="1678" on="1"/>
- <pt x="469" y="1999" on="1"/>
- <pt x="687" y="1999" on="1"/>
- <pt x="928" y="1678" on="1"/>
- <pt x="780" y="1678" on="1"/>
- <pt x="579" y="1880" on="1"/>
- <pt x="577" y="1880" on="1"/>
- <pt x="376" y="1678" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 0 0 16 7 48 196 7 1 26 25 2 21 20 3 1 18 12 9 3 4 1 0 3 0 22
- 21 1 27 24 23 20 3 2 1 1 19 11 10 0 3 4 0 14 23 9 11 2 27 26 25
- 24 22 21 6 11 2 3 20 2 0 2 0 0 12 11 5 1 9 19 18 3 2 5 3 0
- 2 4 48 196 10 9 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hungarumlaut" xMin="-51" yMin="1283" xMax="732" yMax="1604">
- <contour>
- <pt x="-51" y="1283" on="1"/>
- <pt x="190" y="1604" on="1"/>
- <pt x="381" y="1604" on="1"/>
- <pt x="60" y="1283" on="1"/>
- </contour>
- <contour>
- <pt x="301" y="1283" on="1"/>
- <pt x="541" y="1604" on="1"/>
- <pt x="732" y="1604" on="1"/>
- <pt x="412" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 22 values pushed */
- 7 4 3 0 4 13 1 6 5 2 1 3 0 14 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hyphen" xMin="88" yMin="518" xMax="594" yMax="666">
- <contour>
- <pt x="88" y="518" on="1"/>
- <pt x="88" y="666" on="1"/>
- <pt x="594" y="666" on="1"/>
- <pt x="594" y="518" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 196 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="hyphen#1" xMin="88" yMin="518" xMax="594" yMax="666">
- <contour>
- <pt x="88" y="518" on="1"/>
- <pt x="88" y="666" on="1"/>
- <pt x="594" y="666" on="1"/>
- <pt x="594" y="518" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 196 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="i" xMin="129" yMin="0" xMax="326" yMax="1480">
- <contour>
- <pt x="129" y="0" on="1"/>
- <pt x="129" y="1086" on="1"/>
- <pt x="326" y="1086" on="1"/>
- <pt x="326" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="129" y="1283" on="1"/>
- <pt x="129" y="1480" on="1"/>
- <pt x="326" y="1480" on="1"/>
- <pt x="326" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 41 values pushed */
- 0 0 7 4 5 1 5 1 4 48 196 3 0 1 0 6 5 0 2 1 1 14 0 0 7
- 6 3 2 4 3 0 1 4 48 196 5 4 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="iacute" xMin="79" yMin="0" xMax="548" yMax="1604">
- <component glyphName="dotlessi" x="-1" y="0" flags="0x4"/>
- <component glyphName="acute" x="-28" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ibreve" xMin="-106" yMin="0" xMax="560" yMax="1604">
- <contour>
- <pt x="128" y="0" on="1"/>
- <pt x="128" y="1086" on="1"/>
- <pt x="325" y="1086" on="1"/>
- <pt x="325" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="-106" y="1604" on="1"/>
- <pt x="17" y="1604" on="1"/>
- <pt x="38" y="1510" on="0"/>
- <pt x="92" y="1470" on="1"/>
- <pt x="144" y="1431" on="0"/>
- <pt x="227" y="1431" on="1"/>
- <pt x="321" y="1431" on="0"/>
- <pt x="375" y="1480" on="1"/>
- <pt x="418" y="1520" on="0"/>
- <pt x="437" y="1604" on="1"/>
- <pt x="560" y="1604" on="1"/>
- <pt x="544" y="1470" on="0"/>
- <pt x="471" y="1389" on="1"/>
- <pt x="377" y="1283" on="0"/>
- <pt x="227" y="1283" on="1"/>
- <pt x="70" y="1283" on="0"/>
- <pt x="-25" y="1398" on="1"/>
- <pt x="-90" y="1476" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 46 values pushed */
- 0 0 9 40 18 48 196 14 13 5 4 4 13 18 1 3 0 1 0 2 1 1 14 14 13
- 2 13 2 5 4 0 0 0 3 2 4 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="icircumflex" xMin="-123" yMin="0" xMax="577" yMax="1604">
- <component glyphName="dotlessi" x="-1" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="-114" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="idieresis" xMin="-56" yMin="0" xMax="512" yMax="1456">
- <contour>
- <pt x="129" y="0" on="1"/>
- <pt x="129" y="1086" on="1"/>
- <pt x="326" y="1086" on="1"/>
- <pt x="326" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="-56" y="1283" on="1"/>
- <pt x="-56" y="1456" on="1"/>
- <pt x="117" y="1456" on="1"/>
- <pt x="117" y="1283" on="1"/>
- </contour>
- <contour>
- <pt x="339" y="1283" on="1"/>
- <pt x="339" y="1456" on="1"/>
- <pt x="512" y="1456" on="1"/>
- <pt x="512" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 59 values pushed */
- 0 0 11 8 7 4 13 3 5 1 4 48 196 10 9 6 5 3 3 0 1 2 0 2 1
- 1 14 0 0 9 8 13 1 10 7 6 13 1 4 3 2 4 1 0 3 4 48 196 11 10
- 1 5 4 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="igrave" xMin="-94" yMin="0" xMax="375" yMax="1604">
- <component glyphName="dotlessi" x="-1" y="0" flags="0x4"/>
- <component glyphName="grave" x="-200" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ij" xMin="129" yMin="-419" xMax="786" yMax="1480">
- <component glyphName="i" x="0" y="0" flags="0x4"/>
- <component glyphName="j" x="455" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="imacron" xMin="-94" yMin="0" xMax="548" yMax="1431">
- <component glyphName="dotlessi" x="-1" y="0" flags="0x4"/>
- <component glyphName="macron" x="-114" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="iogonek" xMin="61" yMin="-370" xMax="403" yMax="1480">
- <component glyphName="i" x="0" y="0" flags="0x4"/>
- <component glyphName="ogonek" x="-109" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="itilde" xMin="-106" yMin="0" xMax="560" yMax="1517">
- <contour>
- <pt x="128" y="0" on="1"/>
- <pt x="128" y="1086" on="1"/>
- <pt x="325" y="1086" on="1"/>
- <pt x="325" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="-106" y="1283" on="1"/>
- <pt x="-99" y="1376" on="0"/>
- <pt x="-74" y="1427" on="1"/>
- <pt x="-28" y="1517" on="0"/>
- <pt x="81" y="1517" on="1"/>
- <pt x="153" y="1517" on="0"/>
- <pt x="214" y="1479" on="1"/>
- <pt x="274" y="1442" on="1"/>
- <pt x="331" y="1407" on="0"/>
- <pt x="361" y="1407" on="1"/>
- <pt x="426" y="1407" on="0"/>
- <pt x="437" y="1517" on="1"/>
- <pt x="560" y="1517" on="1"/>
- <pt x="553" y="1423" on="0"/>
- <pt x="528" y="1373" on="1"/>
- <pt x="483" y="1283" on="0"/>
- <pt x="375" y="1283" on="1"/>
- <pt x="303" y="1283" on="0"/>
- <pt x="240" y="1322" on="1"/>
- <pt x="180" y="1359" on="1"/>
- <pt x="125" y="1393" on="0"/>
- <pt x="93" y="1393" on="1"/>
- <pt x="28" y="1393" on="0"/>
- <pt x="17" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 60 values pushed */
- 0 0 25 6 8 13 6 20 48 196 8 0 20 1 27 20 4 3 0 1 3 0 1 16 15
- 2 13 0 0 3 0 1 0 2 1 1 14 16 15 2 13 2 27 4 0 0 0 3 2 5
- 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="j" xMin="-155" yMin="-419" xMax="331" yMax="1480">
- <contour>
- <pt x="-155" y="-387" on="1"/>
- <pt x="-155" y="-231" on="1"/>
- <pt x="-75" y="-271" on="0"/>
- <pt x="-5" y="-271" on="1"/>
- <pt x="92" y="-271" on="0"/>
- <pt x="115" y="-197" on="1"/>
- <pt x="133" y="-136" on="0"/>
- <pt x="133" y="0" on="1"/>
- <pt x="133" y="1086" on="1"/>
- <pt x="331" y="1086" on="1"/>
- <pt x="331" y="0" on="1"/>
- <pt x="331" y="-419" on="0"/>
- <pt x="11" y="-419" on="1"/>
- <pt x="-77" y="-419" on="0"/>
- </contour>
- <contour>
- <pt x="133" y="1283" on="1"/>
- <pt x="133" y="1480" on="1"/>
- <pt x="331" y="1480" on="1"/>
- <pt x="331" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 58 values pushed */
- 0 0 3 40 12 48 196 1 10 7 1 0 4 13 12 2 0 0 0 17 14 5 1 15 1
- 4 48 196 16 15 0 9 8 1 14 0 0 15 14 8 7 4 3 9 1 4 48 196 17 16
- 10 9 3 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="jcircumflex" xMin="-155" yMin="-419" xMax="565" yMax="1604">
- <contour>
- <pt x="-155" y="-387" on="1"/>
- <pt x="-155" y="-231" on="1"/>
- <pt x="-75" y="-271" on="0"/>
- <pt x="-5" y="-271" on="1"/>
- <pt x="92" y="-271" on="0"/>
- <pt x="115" y="-197" on="1"/>
- <pt x="133" y="-136" on="0"/>
- <pt x="133" y="0" on="1"/>
- <pt x="133" y="1086" on="1"/>
- <pt x="331" y="1086" on="1"/>
- <pt x="331" y="0" on="1"/>
- <pt x="331" y="-419" on="0"/>
- <pt x="11" y="-419" on="1"/>
- <pt x="-77" y="-419" on="0"/>
- </contour>
- <contour>
- <pt x="-134" y="1283" on="1"/>
- <pt x="106" y="1604" on="1"/>
- <pt x="325" y="1604" on="1"/>
- <pt x="565" y="1283" on="1"/>
- <pt x="417" y="1283" on="1"/>
- <pt x="217" y="1485" on="1"/>
- <pt x="214" y="1485" on="1"/>
- <pt x="14" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 75 values pushed */
- 0 0 3 40 12 48 196 20 19 2 15 14 3 1 10 7 1 0 4 13 12 2 0 16 15
- 1 21 18 17 14 3 2 0 9 8 1 14 20 19 16 3 9 7 3 21 15 14 3 7 0
- 3 18 17 2 13 9 0 0 10 9 4 1 7 1 4 48 196 8 7 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="k" xMin="154" yMin="0" xMax="1006" yMax="1579">
- <contour>
- <pt x="154" y="0" on="1"/>
- <pt x="154" y="1579" on="1"/>
- <pt x="351" y="1579" on="1"/>
- <pt x="351" y="559" on="1"/>
- <pt x="715" y="1086" on="1"/>
- <pt x="903" y="1086" on="1"/>
- <pt x="556" y="573" on="1"/>
- <pt x="1006" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="351" y="557" on="1"/>
- <pt x="351" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 46 values pushed */
- 9 6 3 3 4 0 3 2 1 1 10 8 7 0 3 2 0 5 4 1 14 8 7 6 5
- 4 5 13 2 0 0 10 9 3 2 4 3 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="kcommaaccent" xMin="154" yMin="-432" xMax="1006" yMax="1579">
- <component glyphName="k" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="218" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="kgreenlandic" xMin="154" yMin="0" xMax="1006" yMax="1086">
- <contour>
- <pt x="154" y="0" on="1"/>
- <pt x="154" y="1086" on="1"/>
- <pt x="351" y="1086" on="1"/>
- <pt x="351" y="559" on="1"/>
- <pt x="715" y="1086" on="1"/>
- <pt x="903" y="1086" on="1"/>
- <pt x="556" y="573" on="1"/>
- <pt x="1006" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="351" y="557" on="1"/>
- <pt x="351" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 45 values pushed */
- 9 6 3 3 1 0 3 10 8 7 0 3 0 5 4 2 1 1 3 14 8 7 6 5 4
- 5 13 2 0 0 10 9 3 2 4 3 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="l" xMin="129" yMin="0" xMax="326" yMax="1579">
- <contour>
- <pt x="129" y="0" on="1"/>
- <pt x="129" y="1579" on="1"/>
- <pt x="326" y="1579" on="1"/>
- <pt x="326" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 2 1 1 3 0 1 2 0 14 0 0 3 2 4 1 0 1 4 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="lacute" xMin="79" yMin="0" xMax="548" yMax="1999">
- <component glyphName="l" x="-1" y="0" flags="0x4"/>
- <component glyphName="acute" x="-28" y="395" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="lcaron" xMin="129" yMin="0" xMax="610" yMax="1579">
- <contour>
- <pt x="129" y="0" on="1"/>
- <pt x="129" y="1579" on="1"/>
- <pt x="326" y="1579" on="1"/>
- <pt x="326" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="413" y="1125" on="1"/>
- <pt x="413" y="1184" on="1"/>
- <pt x="489" y="1205" on="0"/>
- <pt x="489" y="1365" on="1"/>
- <pt x="489" y="1382" on="1"/>
- <pt x="413" y="1382" on="1"/>
- <pt x="413" y="1579" on="1"/>
- <pt x="610" y="1579" on="1"/>
- <pt x="610" y="1408" on="1"/>
- <pt x="609" y="1146" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 53 values pushed */
- 12 9 8 7 5 4 6 1 0 3 11 10 2 1 3 3 0 1 2 0 14 8 7 2 11
- 4 3 0 0 10 9 5 4 4 3 11 3 2 4 1 0 2 4 48 196 12 11 1 1 0
- 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="lcommaaccent" xMin="79" yMin="-432" xMax="421" yMax="1579">
- <component glyphName="l" x="-1" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="-91" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ldot" xMin="129" yMin="0" xMax="672" yMax="1579">
- <contour>
- <pt x="129" y="0" on="1"/>
- <pt x="129" y="1579" on="1"/>
- <pt x="326" y="1579" on="1"/>
- <pt x="326" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="474" y="642" on="1"/>
- <pt x="474" y="839" on="1"/>
- <pt x="672" y="839" on="1"/>
- <pt x="672" y="642" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 0 0 7 4 5 1 5 1 4 48 196 6 5 1 2 1 1 3 0 1 3 0 14 0 0
- 5 4 4 1 6 3 2 4 1 0 2 4 48 196 7 6 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="less" xMin="104" yMin="99" xMax="1091" yMax="1086">
- <contour>
- <pt x="1091" y="99" on="1"/>
- <pt x="104" y="592" on="1"/>
- <pt x="1091" y="1086" on="1"/>
- <pt x="1091" y="920" on="1"/>
- <pt x="437" y="593" on="1"/>
- <pt x="437" y="591" on="1"/>
- <pt x="1091" y="264" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 20 values pushed */
- 6 5 4 3 2 1 0 14 5 4 1 3 13 0 6 3 2 0 3 0
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="logicalnot" xMin="86" yMin="296" xMax="1073" yMax="888">
- <contour>
- <pt x="86" y="740" on="1"/>
- <pt x="86" y="888" on="1"/>
- <pt x="1073" y="888" on="1"/>
- <pt x="1073" y="296" on="1"/>
- <pt x="925" y="296" on="1"/>
- <pt x="925" y="740" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 39 values pushed */
- 0 0 5 0 7 1 1 1 4 48 196 2 1 1 4 3 1 2 0 14 0 0 5 4 7
- 1 2 1 4 48 196 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="longs" xMin="8" yMin="0" xMax="512" yMax="1604">
- <contour>
- <pt x="144" y="0" on="1"/>
- <pt x="144" y="938" on="1"/>
- <pt x="8" y="938" on="1"/>
- <pt x="8" y="1086" on="1"/>
- <pt x="144" y="1086" on="1"/>
- <pt x="144" y="1216" on="1"/>
- <pt x="144" y="1399" on="0"/>
- <pt x="223" y="1501" on="1"/>
- <pt x="303" y="1604" on="0"/>
- <pt x="446" y="1604" on="1"/>
- <pt x="466" y="1604" on="0"/>
- <pt x="512" y="1599" on="1"/>
- <pt x="512" y="1452" on="1"/>
- <pt x="482" y="1456" on="0"/>
- <pt x="466" y="1456" on="1"/>
- <pt x="341" y="1456" on="0"/>
- <pt x="341" y="1237" on="1"/>
- <pt x="341" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 48 values pushed */
- 0 0 14 7 9 48 196 16 12 11 5 4 3 2 1 8 13 9 0 17 0 1 0 14 0
- 0 17 16 5 1 0 1 4 48 196 12 11 1 5 4 1 0 3 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="lslash" xMin="-7" yMin="0" xMax="462" yMax="1579">
- <contour>
- <pt x="129" y="0" on="1"/>
- <pt x="129" y="721" on="1"/>
- <pt x="-7" y="649" on="1"/>
- <pt x="-7" y="814" on="1"/>
- <pt x="129" y="889" on="1"/>
- <pt x="129" y="1579" on="1"/>
- <pt x="327" y="1579" on="1"/>
- <pt x="327" y="998" on="1"/>
- <pt x="462" y="1065" on="1"/>
- <pt x="462" y="901" on="1"/>
- <pt x="327" y="830" on="1"/>
- <pt x="327" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 10 9 8 7 4 3 2 1 8 5 0 3 6 5 1 11 0 1 2 0 14 0 0 11 10
- 7 6 4 3 0 1 4 48 196 9 8 1 5 4 1 0 3 3 2 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="m" xMin="154" yMin="0" xMax="1564" yMax="1110">
- <contour>
- <pt x="154" y="0" on="1"/>
- <pt x="154" y="1086" on="1"/>
- <pt x="351" y="1086" on="1"/>
- <pt x="351" y="882" on="1"/>
- <pt x="438" y="1012" on="0"/>
- <pt x="494" y="1058" on="1"/>
- <pt x="559" y="1110" on="0"/>
- <pt x="665" y="1110" on="1"/>
- <pt x="795" y="1110" on="0"/>
- <pt x="876" y="1026" on="1"/>
- <pt x="923" y="977" on="0"/>
- <pt x="958" y="882" on="1"/>
- <pt x="1046" y="1014" on="0"/>
- <pt x="1101" y="1058" on="1"/>
- <pt x="1166" y="1110" on="0"/>
- <pt x="1273" y="1110" on="1"/>
- <pt x="1564" y="1110" on="0"/>
- <pt x="1564" y="790" on="1"/>
- <pt x="1564" y="0" on="1"/>
- <pt x="1367" y="0" on="1"/>
- <pt x="1366" y="759" on="1"/>
- <pt x="1366" y="946" on="0"/>
- <pt x="1222" y="946" on="1"/>
- <pt x="1094" y="946" on="0"/>
- <pt x="958" y="728" on="1"/>
- <pt x="958" y="0" on="1"/>
- <pt x="760" y="0" on="1"/>
- <pt x="760" y="759" on="1"/>
- <pt x="760" y="946" on="0"/>
- <pt x="615" y="946" on="1"/>
- <pt x="487" y="946" on="0"/>
- <pt x="351" y="728" on="1"/>
- <pt x="351" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 70 values pushed */
- 0 0 29 29 7 22 29 15 48 196 15 1 7 1 31 27 24 17 11 3 6 1 0 3 32
- 26 25 19 18 0 5 0 2 1 1 14 19 17 11 2 0 0 25 24 11 4 2 26 32 31
- 3 2 4 3 0 2 4 48 196 18 17 1 27 26 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="macron" xMin="20" yMin="1283" xMax="662" yMax="1431">
- <contour>
- <pt x="20" y="1283" on="1"/>
- <pt x="20" y="1431" on="1"/>
- <pt x="662" y="1431" on="1"/>
- <pt x="662" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 196 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="macron#1" xMin="99" yMin="1456" xMax="1040" yMax="1604">
- <contour>
- <pt x="99" y="1456" on="1"/>
- <pt x="99" y="1604" on="1"/>
- <pt x="1040" y="1604" on="1"/>
- <pt x="1040" y="1456" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 196 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="minus" xMin="104" yMin="518" xMax="1091" yMax="666">
- <contour>
- <pt x="104" y="518" on="1"/>
- <pt x="104" y="666" on="1"/>
- <pt x="1091" y="666" on="1"/>
- <pt x="1091" y="518" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 196 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="mu" xMin="142" yMin="-395" xMax="984" yMax="1086">
- <contour>
- <pt x="142" y="1086" on="1"/>
- <pt x="339" y="1086" on="1"/>
- <pt x="339" y="370" on="1"/>
- <pt x="339" y="239" on="0"/>
- <pt x="366" y="192" on="1"/>
- <pt x="394" y="145" on="0"/>
- <pt x="470" y="145" on="1"/>
- <pt x="632" y="145" on="0"/>
- <pt x="787" y="382" on="1"/>
- <pt x="787" y="1086" on="1"/>
- <pt x="984" y="1086" on="1"/>
- <pt x="984" y="0" on="1"/>
- <pt x="787" y="0" on="1"/>
- <pt x="787" y="203" on="1"/>
- <pt x="629" y="-19" on="0"/>
- <pt x="469" y="-19" on="1"/>
- <pt x="404" y="-19" on="0"/>
- <pt x="339" y="25" on="1"/>
- <pt x="339" y="-395" on="1"/>
- <pt x="142" y="-395" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 60 values pushed */
- 0 0 6 29 15 48 196 15 2 17 13 8 2 4 0 11 3 12 11 1 19 18 1 2 0
- 10 9 1 0 1 3 14 0 0 13 12 9 8 4 3 10 18 17 2 1 4 3 0 2 4
- 48 196 11 10 1 19 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="multiply" xMin="118" yMin="112" xMax="1078" yMax="1072">
- <contour>
- <pt x="118" y="217" on="1"/>
- <pt x="493" y="592" on="1"/>
- <pt x="118" y="967" on="1"/>
- <pt x="223" y="1072" on="1"/>
- <pt x="598" y="697" on="1"/>
- <pt x="973" y="1072" on="1"/>
- <pt x="1078" y="967" on="1"/>
- <pt x="703" y="592" on="1"/>
- <pt x="1078" y="217" on="1"/>
- <pt x="973" y="112" on="1"/>
- <pt x="598" y="487" on="1"/>
- <pt x="223" y="112" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 30 values pushed */
- 1 11 10 9 8 7 6 5 4 3 2 1 0 12 13 1 0 14 11 10 9 8 7 6 5
- 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="n" xMin="154" yMin="0" xMax="997" yMax="1110">
- <contour>
- <pt x="154" y="0" on="1"/>
- <pt x="154" y="1086" on="1"/>
- <pt x="351" y="1086" on="1"/>
- <pt x="351" y="882" on="1"/>
- <pt x="424" y="983" on="0"/>
- <pt x="495" y="1035" on="1"/>
- <pt x="598" y="1110" on="0"/>
- <pt x="721" y="1110" on="1"/>
- <pt x="997" y="1110" on="0"/>
- <pt x="997" y="780" on="1"/>
- <pt x="997" y="0" on="1"/>
- <pt x="799" y="0" on="1"/>
- <pt x="799" y="716" on="1"/>
- <pt x="799" y="848" on="0"/>
- <pt x="772" y="894" on="1"/>
- <pt x="744" y="941" on="0"/>
- <pt x="668" y="941" on="1"/>
- <pt x="506" y="941" on="0"/>
- <pt x="351" y="703" on="1"/>
- <pt x="351" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 53 values pushed */
- 0 0 16 30 7 48 196 7 1 18 12 9 3 4 1 0 3 19 11 10 0 3 0 2 1
- 1 14 0 0 12 11 4 1 9 19 18 3 2 4 3 0 2 4 48 196 10 9 1 1 0
- 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="nacute" xMin="154" yMin="0" xMax="997" yMax="1604">
- <component glyphName="n" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="306" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="napostrophe" xMin="0" yMin="0" xMax="1095" yMax="1579">
- <contour>
- <pt x="252" y="0" on="1"/>
- <pt x="252" y="1086" on="1"/>
- <pt x="449" y="1086" on="1"/>
- <pt x="449" y="882" on="1"/>
- <pt x="522" y="983" on="0"/>
- <pt x="593" y="1035" on="1"/>
- <pt x="696" y="1110" on="0"/>
- <pt x="819" y="1110" on="1"/>
- <pt x="1095" y="1110" on="0"/>
- <pt x="1095" y="780" on="1"/>
- <pt x="1095" y="0" on="1"/>
- <pt x="897" y="0" on="1"/>
- <pt x="897" y="716" on="1"/>
- <pt x="897" y="847" on="0"/>
- <pt x="869" y="894" on="1"/>
- <pt x="841" y="941" on="0"/>
- <pt x="766" y="941" on="1"/>
- <pt x="604" y="941" on="0"/>
- <pt x="449" y="703" on="1"/>
- <pt x="449" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="0" y="1125" on="1"/>
- <pt x="0" y="1184" on="1"/>
- <pt x="76" y="1205" on="0"/>
- <pt x="76" y="1365" on="1"/>
- <pt x="76" y="1382" on="1"/>
- <pt x="0" y="1382" on="1"/>
- <pt x="0" y="1579" on="1"/>
- <pt x="197" y="1579" on="1"/>
- <pt x="197" y="1408" on="1"/>
- <pt x="196" y="1146" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 0 0 16 30 7 48 196 7 1 28 25 24 23 21 20 6 26 1 3 18 12 9 3 4 1
- 0 3 27 26 1 19 11 10 0 3 2 0 2 1 1 14 24 23 2 27 20 3 0 0 28
- 27 4 1 20 12 11 4 1 9 19 18 3 2 4 3 0 3 4 48 196 26 25 21 20 3
- 10 9 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="nbhyphen" xMin="88" yMin="518" xMax="594" yMax="666">
- <contour>
- <pt x="88" y="518" on="1"/>
- <pt x="88" y="666" on="1"/>
- <pt x="594" y="666" on="1"/>
- <pt x="594" y="518" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 196 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ncaron" xMin="154" yMin="0" xMax="997" yMax="1604">
- <component glyphName="n" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="243" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ncommaaccent" xMin="154" yMin="-432" xMax="997" yMax="1110">
- <component glyphName="n" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="243" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="nine" xMin="84" yMin="-38" xMax="1027" yMax="1518">
- <contour>
- <pt x="813" y="702" on="1"/>
- <pt x="675" y="530" on="0"/>
- <pt x="476" y="530" on="1"/>
- <pt x="294" y="530" on="0"/>
- <pt x="189" y="654" on="1"/>
- <pt x="84" y="778" on="0"/>
- <pt x="84" y="995" on="1"/>
- <pt x="84" y="1235" on="0"/>
- <pt x="208" y="1376" on="1"/>
- <pt x="331" y="1518" on="0"/>
- <pt x="539" y="1518" on="1"/>
- <pt x="767" y="1518" on="0"/>
- <pt x="897" y="1323" on="1"/>
- <pt x="1027" y="1128" on="0"/>
- <pt x="1027" y="788" on="1"/>
- <pt x="1027" y="400" on="0"/>
- <pt x="872" y="181" on="1"/>
- <pt x="717" y="-38" on="0"/>
- <pt x="443" y="-38" on="1"/>
- <pt x="315" y="-38" on="0"/>
- <pt x="163" y="18" on="1"/>
- <pt x="163" y="190" on="1"/>
- <pt x="346" y="111" on="0"/>
- <pt x="447" y="111" on="1"/>
- <pt x="668" y="111" on="0"/>
- <pt x="757" y="333" on="1"/>
- <pt x="792" y="420" on="0"/>
- <pt x="804" y="529" on="1"/>
- <pt x="811" y="587" on="0"/>
- </contour>
- <contour>
- <pt x="522" y="1369" on="1"/>
- <pt x="278" y="1369" on="0"/>
- <pt x="278" y="1036" on="1"/>
- <pt x="278" y="672" on="0"/>
- <pt x="529" y="672" on="1"/>
- <pt x="653" y="672" on="0"/>
- <pt x="729" y="758" on="1"/>
- <pt x="806" y="845" on="0"/>
- <pt x="806" y="992" on="1"/>
- <pt x="806" y="1155" on="0"/>
- <pt x="727" y="1262" on="1"/>
- <pt x="647" y="1369" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 50 values pushed */
- 0 0 33 40 2 29 40 10 23 40 18 48 196 18 2 10 0 2 1 1 21 20 2 0 4
- 0 2 3 0 0 14 0 0 37 26 14 31 41 6 48 196 0 14 20 6 20 21 20 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="nonbreakingspace"/><!-- contains no outline data -->
-
- <TTGlyph name="ntilde" xMin="154" yMin="0" xMax="997" yMax="1517">
- <component glyphName="n" x="0" y="0" flags="0x4"/>
- <component glyphName="tilde" x="221" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="numbersign" xMin="25" yMin="0" xMax="1114" yMax="1480">
- <contour>
- <pt x="125" y="0" on="1"/>
- <pt x="236" y="444" on="1"/>
- <pt x="25" y="444" on="1"/>
- <pt x="49" y="568" on="1"/>
- <pt x="267" y="568" on="1"/>
- <pt x="354" y="913" on="1"/>
- <pt x="118" y="913" on="1"/>
- <pt x="143" y="1036" on="1"/>
- <pt x="384" y="1036" on="1"/>
- <pt x="496" y="1480" on="1"/>
- <pt x="623" y="1480" on="1"/>
- <pt x="512" y="1036" on="1"/>
- <pt x="775" y="1036" on="1"/>
- <pt x="886" y="1480" on="1"/>
- <pt x="1014" y="1480" on="1"/>
- <pt x="903" y="1036" on="1"/>
- <pt x="1114" y="1036" on="1"/>
- <pt x="1090" y="913" on="1"/>
- <pt x="872" y="913" on="1"/>
- <pt x="785" y="568" on="1"/>
- <pt x="1021" y="568" on="1"/>
- <pt x="997" y="444" on="1"/>
- <pt x="755" y="444" on="1"/>
- <pt x="644" y="0" on="1"/>
- <pt x="516" y="0" on="1"/>
- <pt x="627" y="444" on="1"/>
- <pt x="364" y="444" on="1"/>
- <pt x="253" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="394" y="568" on="1"/>
- <pt x="658" y="568" on="1"/>
- <pt x="745" y="913" on="1"/>
- <pt x="481" y="913" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 14 13 10 9 4 13 7 27 24 23 0 4 13 1 0 0 31 30 18 17 6 5 6 5 7
- 29 28 20 19 4 3 6 5 1 2 4 48 196 16 15 12 11 8 7 5 26 25 22 21 2
- 1 5 2 0 14 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12
- 11 10 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="o" xMin="86" yMin="-25" xMax="1052" yMax="1110">
- <contour>
- <pt x="569" y="1110" on="1"/>
- <pt x="792" y="1110" on="0"/>
- <pt x="922" y="958" on="1"/>
- <pt x="1052" y="807" on="0"/>
- <pt x="1052" y="544" on="1"/>
- <pt x="1052" y="277" on="0"/>
- <pt x="922" y="126" on="1"/>
- <pt x="792" y="-25" on="0"/>
- <pt x="562" y="-25" on="1"/>
- <pt x="365" y="-25" on="0"/>
- <pt x="242" y="100" on="1"/>
- <pt x="86" y="257" on="0"/>
- <pt x="86" y="543" on="1"/>
- <pt x="86" y="806" on="0"/>
- <pt x="216" y="958" on="1"/>
- <pt x="346" y="1110" on="0"/>
- </contour>
- <contour>
- <pt x="569" y="962" on="1"/>
- <pt x="299" y="962" on="0"/>
- <pt x="299" y="544" on="1"/>
- <pt x="299" y="123" on="0"/>
- <pt x="568" y="123" on="1"/>
- <pt x="839" y="123" on="0"/>
- <pt x="839" y="547" on="1"/>
- <pt x="839" y="962" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 27 values pushed */
- 0 0 20 40 8 16 40 0 48 196 8 2 0 1 14 0 0 22 9 4 18 9 12 48 196
- 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="oacute" xMin="86" yMin="-25" xMax="1052" yMax="1604">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="314" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="obreve" xMin="86" yMin="-25" xMax="1052" yMax="1604">
- <contour>
- <pt x="569" y="1110" on="1"/>
- <pt x="792" y="1110" on="0"/>
- <pt x="922" y="958" on="1"/>
- <pt x="1052" y="807" on="0"/>
- <pt x="1052" y="544" on="1"/>
- <pt x="1052" y="277" on="0"/>
- <pt x="922" y="126" on="1"/>
- <pt x="792" y="-25" on="0"/>
- <pt x="562" y="-25" on="1"/>
- <pt x="365" y="-25" on="0"/>
- <pt x="242" y="100" on="1"/>
- <pt x="86" y="257" on="0"/>
- <pt x="86" y="543" on="1"/>
- <pt x="86" y="806" on="0"/>
- <pt x="216" y="958" on="1"/>
- <pt x="346" y="1110" on="0"/>
- </contour>
- <contour>
- <pt x="569" y="962" on="1"/>
- <pt x="299" y="962" on="0"/>
- <pt x="299" y="544" on="1"/>
- <pt x="299" y="123" on="0"/>
- <pt x="568" y="123" on="1"/>
- <pt x="839" y="123" on="0"/>
- <pt x="839" y="547" on="1"/>
- <pt x="839" y="962" on="0"/>
- </contour>
- <contour>
- <pt x="236" y="1604" on="1"/>
- <pt x="359" y="1604" on="1"/>
- <pt x="380" y="1511" on="0"/>
- <pt x="434" y="1470" on="1"/>
- <pt x="486" y="1431" on="0"/>
- <pt x="569" y="1431" on="1"/>
- <pt x="663" y="1431" on="0"/>
- <pt x="717" y="1480" on="1"/>
- <pt x="760" y="1520" on="0"/>
- <pt x="779" y="1604" on="1"/>
- <pt x="902" y="1604" on="1"/>
- <pt x="885" y="1469" on="0"/>
- <pt x="813" y="1389" on="1"/>
- <pt x="718" y="1283" on="0"/>
- <pt x="569" y="1283" on="1"/>
- <pt x="412" y="1283" on="0"/>
- <pt x="317" y="1398" on="1"/>
- <pt x="253" y="1475" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 44 values pushed */
- 0 0 29 7 38 20 7 8 16 7 0 48 196 8 2 0 1 1 34 33 25 24 4 13 38
- 1 0 14 0 0 22 9 4 18 9 12 48 196 34 33 25 24 12 4
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ocircumflex" xMin="86" yMin="-25" xMax="1052" yMax="1604">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="228" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="odieresis" xMin="86" yMin="-25" xMax="1052" yMax="1456">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="228" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="oe" xMin="86" yMin="-25" xMax="1812" yMax="1110">
- <contour>
- <pt x="990" y="910" on="1"/>
- <pt x="1054" y="999" on="0"/>
- <pt x="1125" y="1044" on="1"/>
- <pt x="1230" y="1110" on="0"/>
- <pt x="1375" y="1110" on="1"/>
- <pt x="1633" y="1110" on="0"/>
- <pt x="1734" y="927" on="1"/>
- <pt x="1809" y="791" on="0"/>
- <pt x="1812" y="512" on="1"/>
- <pt x="1099" y="512" on="1"/>
- <pt x="1117" y="321" on="0"/>
- <pt x="1191" y="233" on="1"/>
- <pt x="1283" y="123" on="0"/>
- <pt x="1494" y="123" on="1"/>
- <pt x="1649" y="123" on="0"/>
- <pt x="1812" y="194" on="1"/>
- <pt x="1812" y="37" on="1"/>
- <pt x="1620" y="-25" on="0"/>
- <pt x="1444" y="-25" on="1"/>
- <pt x="1264" y="-25" on="0"/>
- <pt x="1157" y="33" on="1"/>
- <pt x="1077" y="77" on="0"/>
- <pt x="995" y="174" on="1"/>
- <pt x="934" y="86" on="0"/>
- <pt x="862" y="41" on="1"/>
- <pt x="755" y="-25" on="0"/>
- <pt x="606" y="-25" on="1"/>
- <pt x="368" y="-25" on="0"/>
- <pt x="227" y="129" on="1"/>
- <pt x="86" y="283" on="0"/>
- <pt x="86" y="543" on="1"/>
- <pt x="86" y="805" on="0"/>
- <pt x="228" y="957" on="1"/>
- <pt x="369" y="1110" on="0"/>
- <pt x="608" y="1110" on="1"/>
- <pt x="764" y="1110" on="0"/>
- <pt x="872" y="1035" on="1"/>
- <pt x="934" y="992" on="0"/>
- </contour>
- <contour>
- <pt x="608" y="962" on="1"/>
- <pt x="295" y="962" on="0"/>
- <pt x="295" y="547" on="1"/>
- <pt x="295" y="365" on="0"/>
- <pt x="356" y="260" on="1"/>
- <pt x="435" y="123" on="0"/>
- <pt x="610" y="123" on="1"/>
- <pt x="898" y="123" on="0"/>
- <pt x="898" y="543" on="1"/>
- <pt x="898" y="736" on="0"/>
- <pt x="838" y="840" on="1"/>
- <pt x="768" y="962" on="0"/>
- </contour>
- <contour>
- <pt x="1105" y="648" on="1"/>
- <pt x="1602" y="648" on="1"/>
- <pt x="1599" y="776" on="0"/>
- <pt x="1568" y="844" on="1"/>
- <pt x="1513" y="962" on="0"/>
- <pt x="1371" y="962" on="1"/>
- <pt x="1233" y="962" on="0"/>
- <pt x="1166" y="857" on="1"/>
- <pt x="1120" y="786" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 0 0 55 40 4 44 40 26 38 40 34 13 40 18 48 196 34 1 26 2 18 2 4 1 1
- 0 1 50 2 0 1 22 16 15 3 8 2 3 0 0 0 9 8 31 1 50 1 4 48 196
- 51 50 1 0 14 0 0 40 43 30 48 196 51 50 22 9 0 5 13 46 30 8 16 15 8
- 2 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ogonek" xMin="170" yMin="-370" xMax="512" yMax="0">
- <contour>
- <pt x="328" y="0" on="1"/>
- <pt x="435" y="0" on="1"/>
- <pt x="307" y="-80" on="0"/>
- <pt x="307" y="-179" on="1"/>
- <pt x="307" y="-275" on="0"/>
- <pt x="422" y="-275" on="1"/>
- <pt x="475" y="-275" on="0"/>
- <pt x="512" y="-260" on="1"/>
- <pt x="512" y="-341" on="1"/>
- <pt x="450" y="-370" on="0"/>
- <pt x="372" y="-370" on="1"/>
- <pt x="170" y="-370" on="0"/>
- <pt x="170" y="-212" on="1"/>
- <pt x="170" y="-90" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 0 0 5 21 10 48 196 10 8 7 1 0 14 0 0 3 42 12 48 196 12 8 7 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ograve" xMin="86" yMin="-25" xMax="1052" yMax="1604">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="142" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ohungarumlaut" xMin="86" yMin="-25" xMax="1121" yMax="1604">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="hungarumlaut" x="389" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="omacron" xMin="86" yMin="-25" xMax="1052" yMax="1431">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="macron" x="228" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="one" xMin="230" yMin="0" xMax="1020" yMax="1517">
- <contour>
- <pt x="230" y="0" on="1"/>
- <pt x="230" y="148" on="1"/>
- <pt x="526" y="148" on="1"/>
- <pt x="526" y="1316" on="1"/>
- <pt x="230" y="1242" on="1"/>
- <pt x="230" y="1394" on="1"/>
- <pt x="724" y="1517" on="1"/>
- <pt x="724" y="148" on="1"/>
- <pt x="1020" y="148" on="1"/>
- <pt x="1020" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 49 values pushed */
- 6 5 4 3 4 13 1 0 0 8 7 2 1 7 3 0 1 4 48 196 9 0 1 0 14
- 0 0 7 6 4 1 2 1 4 48 196 9 8 1 3 2 1 5 4 1 0 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="onehalf" xMin="116" yMin="-37" xMax="1584" yMax="1517">
- <contour>
- <pt x="1019" y="0" on="1"/>
- <pt x="1019" y="122" on="1"/>
- <pt x="1082" y="234" on="0"/>
- <pt x="1201" y="341" on="1"/>
- <pt x="1271" y="403" on="1"/>
- <pt x="1427" y="541" on="0"/>
- <pt x="1427" y="663" on="1"/>
- <pt x="1427" y="809" on="0"/>
- <pt x="1266" y="809" on="1"/>
- <pt x="1174" y="809" on="0"/>
- <pt x="1041" y="740" on="1"/>
- <pt x="1041" y="857" on="1"/>
- <pt x="1173" y="910" on="0"/>
- <pt x="1292" y="910" on="1"/>
- <pt x="1423" y="910" on="0"/>
- <pt x="1504" y="842" on="1"/>
- <pt x="1584" y="775" on="0"/>
- <pt x="1584" y="667" on="1"/>
- <pt x="1584" y="523" on="0"/>
- <pt x="1400" y="374" on="1"/>
- <pt x="1347" y="331" on="1"/>
- <pt x="1214" y="222" on="0"/>
- <pt x="1191" y="122" on="1"/>
- <pt x="1580" y="122" on="1"/>
- <pt x="1580" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="140" y="-37" on="1"/>
- <pt x="1228" y="1517" on="1"/>
- <pt x="1364" y="1517" on="1"/>
- <pt x="276" y="-37" on="1"/>
- </contour>
- <contour>
- <pt x="313" y="592" on="1"/>
- <pt x="313" y="1351" on="1"/>
- <pt x="116" y="1302" on="1"/>
- <pt x="116" y="1416" on="1"/>
- <pt x="461" y="1503" on="1"/>
- <pt x="461" y="592" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 85 values pushed */
- 0 0 8 11 13 48 196 33 32 31 30 27 26 11 10 8 13 13 29 28 25 0 0 0 23
- 22 1 38 2 0 1 4 48 196 34 29 1 24 0 1 2 0 14 0 0 6 37 17 48 196
- 27 26 24 23 22 11 10 1 0 9 13 17 33 32 31 28 25 4 13 29 0 0 34 33 7
- 1 29 1 4 48 196 30 29 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="onequarter" xMin="116" yMin="-37" xMax="1584" yMax="1517">
- <contour>
- <pt x="313" y="592" on="1"/>
- <pt x="313" y="1351" on="1"/>
- <pt x="116" y="1302" on="1"/>
- <pt x="116" y="1416" on="1"/>
- <pt x="461" y="1503" on="1"/>
- <pt x="461" y="592" on="1"/>
- </contour>
- <contour>
- <pt x="1325" y="0" on="1"/>
- <pt x="1325" y="242" on="1"/>
- <pt x="918" y="242" on="1"/>
- <pt x="918" y="355" on="1"/>
- <pt x="1321" y="888" on="1"/>
- <pt x="1461" y="888" on="1"/>
- <pt x="1461" y="359" on="1"/>
- <pt x="1584" y="359" on="1"/>
- <pt x="1584" y="242" on="1"/>
- <pt x="1461" y="242" on="1"/>
- <pt x="1461" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1047" y="359" on="1"/>
- <pt x="1325" y="359" on="1"/>
- <pt x="1325" y="723" on="1"/>
- </contour>
- <contour>
- <pt x="191" y="-37" on="1"/>
- <pt x="1279" y="1517" on="1"/>
- <pt x="1414" y="1517" on="1"/>
- <pt x="326" y="-37" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 107 values pushed */
- 19 10 0 2 9 12 7 2 22 21 4 3 2 1 6 13 10 23 20 16 6 4 13 7 0
- 0 18 17 13 12 38 3 7 1 4 48 196 11 10 1 15 14 8 7 3 5 0 1 3 0
- 14 22 11 6 2 21 17 10 9 8 5 6 4 3 23 4 0 2 14 13 2 13 11 20 3
- 2 3 13 0 0 0 19 18 7 6 22 3 11 5 4 7 1 0 2 4 48 196 16 15 12
- 11 3 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="onesuperior" xMin="123" yMin="592" xMax="468" yMax="1503">
- <contour>
- <pt x="320" y="592" on="1"/>
- <pt x="320" y="1351" on="1"/>
- <pt x="123" y="1302" on="1"/>
- <pt x="123" y="1416" on="1"/>
- <pt x="468" y="1503" on="1"/>
- <pt x="468" y="592" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 30 values pushed */
- 4 3 2 1 4 13 0 5 0 1 0 14 3 2 0 0 0 1 0 7 1 4 1 4 48
- 196 5 4 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ordfeminine" xMin="86" yMin="822" xMax="712" yMax="1518">
- <contour>
- <pt x="485" y="915" on="1"/>
- <pt x="383" y="822" on="0"/>
- <pt x="281" y="822" on="1"/>
- <pt x="196" y="822" on="0"/>
- <pt x="141" y="875" on="1"/>
- <pt x="86" y="929" on="0"/>
- <pt x="86" y="1009" on="1"/>
- <pt x="86" y="1237" on="0"/>
- <pt x="428" y="1237" on="1"/>
- <pt x="476" y="1237" on="1"/>
- <pt x="476" y="1307" on="1"/>
- <pt x="476" y="1417" on="0"/>
- <pt x="355" y="1417" on="1"/>
- <pt x="258" y="1417" on="0"/>
- <pt x="145" y="1358" on="1"/>
- <pt x="145" y="1469" on="1"/>
- <pt x="272" y="1518" on="0"/>
- <pt x="383" y="1518" on="1"/>
- <pt x="625" y="1518" on="0"/>
- <pt x="625" y="1311" on="1"/>
- <pt x="625" y="1013" on="1"/>
- <pt x="625" y="919" on="0"/>
- <pt x="680" y="922" on="1"/>
- <pt x="686" y="922" on="1"/>
- <pt x="689" y="922" on="0"/>
- <pt x="695" y="923" on="1"/>
- <pt x="700" y="923" on="0"/>
- <pt x="706" y="924" on="1"/>
- <pt x="712" y="841" on="1"/>
- <pt x="661" y="822" on="0"/>
- <pt x="616" y="822" on="1"/>
- <pt x="518" y="822" on="0"/>
- <pt x="490" y="915" on="1"/>
- </contour>
- <contour>
- <pt x="476" y="996" on="1"/>
- <pt x="476" y="1150" on="1"/>
- <pt x="438" y="1150" on="1"/>
- <pt x="234" y="1150" on="0"/>
- <pt x="234" y="1026" on="1"/>
- <pt x="234" y="932" on="0"/>
- <pt x="331" y="932" on="1"/>
- <pt x="399" y="932" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 80 values pushed */
- 0 0 39 16 2 12 20 17 48 196 17 0 1 35 34 33 32 28 27 20 19 15 14 10 9
- 8 0 14 13 30 22 2 3 12 0 0 14 0 0 37 7 6 48 196 32 0 2 19 9 3
- 28 27 2 13 19 35 15 14 8 4 13 6 9 0 0 34 33 10 9 7 3 19 1 4 48
- 196 20 19 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ordmasculine" xMin="74" yMin="822" xMax="673" yMax="1517">
- <contour>
- <pt x="374" y="1517" on="1"/>
- <pt x="512" y="1517" on="0"/>
- <pt x="593" y="1424" on="1"/>
- <pt x="673" y="1331" on="0"/>
- <pt x="673" y="1171" on="1"/>
- <pt x="673" y="1008" on="0"/>
- <pt x="593" y="915" on="1"/>
- <pt x="512" y="822" on="0"/>
- <pt x="371" y="822" on="1"/>
- <pt x="248" y="822" on="0"/>
- <pt x="171" y="899" on="1"/>
- <pt x="74" y="995" on="0"/>
- <pt x="74" y="1170" on="1"/>
- <pt x="74" y="1330" on="0"/>
- <pt x="155" y="1423" on="1"/>
- <pt x="236" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="374" y="1416" on="1"/>
- <pt x="231" y="1416" on="0"/>
- <pt x="231" y="1170" on="1"/>
- <pt x="231" y="924" on="0"/>
- <pt x="374" y="924" on="1"/>
- <pt x="516" y="924" on="0"/>
- <pt x="516" y="1172" on="1"/>
- <pt x="516" y="1416" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 29 values pushed */
- 0 0 20 20 8 16 20 0 48 196 0 0 1 8 0 0 14 0 0 22 15 4 18 15 12
- 48 196 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="oslash" xMin="143" yMin="-25" xMax="1109" yMax="1110">
- <contour>
- <pt x="348" y="59" on="1"/>
- <pt x="287" y="-25" on="1"/>
- <pt x="143" y="-25" on="1"/>
- <pt x="264" y="142" on="1"/>
- <pt x="143" y="309" on="0"/>
- <pt x="143" y="544" on="1"/>
- <pt x="143" y="808" on="0"/>
- <pt x="273" y="959" on="1"/>
- <pt x="403" y="1110" on="0"/>
- <pt x="630" y="1110" on="1"/>
- <pt x="790" y="1110" on="0"/>
- <pt x="904" y="1027" on="1"/>
- <pt x="965" y="1110" on="1"/>
- <pt x="1109" y="1110" on="1"/>
- <pt x="988" y="943" on="1"/>
- <pt x="1109" y="775" on="0"/>
- <pt x="1109" y="542" on="1"/>
- <pt x="1109" y="280" on="0"/>
- <pt x="979" y="128" on="1"/>
- <pt x="850" y="-25" on="0"/>
- <pt x="625" y="-25" on="1"/>
- <pt x="465" y="-25" on="0"/>
- </contour>
- <contour>
- <pt x="450" y="201" on="1"/>
- <pt x="452" y="199" on="1"/>
- <pt x="494" y="157" on="0"/>
- <pt x="529" y="142" on="1"/>
- <pt x="574" y="123" on="0"/>
- <pt x="625" y="123" on="1"/>
- <pt x="896" y="123" on="0"/>
- <pt x="896" y="544" on="1"/>
- <pt x="896" y="669" on="0"/>
- <pt x="866" y="775" on="1"/>
- </contour>
- <contour>
- <pt x="802" y="885" on="1"/>
- <pt x="800" y="887" on="1"/>
- <pt x="725" y="962" on="0"/>
- <pt x="627" y="962" on="1"/>
- <pt x="356" y="962" on="0"/>
- <pt x="356" y="547" on="1"/>
- <pt x="356" y="405" on="0"/>
- <pt x="386" y="310" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 63 values pushed */
- 0 0 35 40 9 27 40 20 48 196 20 2 9 1 1 1 39 32 31 22 14 11 3 0 8
- 1 2 3 0 0 13 12 1 2 1 1 2 0 14 0 0 37 9 5 29 9 16 48 196 39
- 32 31 22 16 14 13 12 11 5 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="otilde" xMin="86" yMin="-25" xMax="1052" yMax="1517">
- <component glyphName="o" x="0" y="0" flags="0x4"/>
- <component glyphName="tilde" x="228" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="p" xMin="154" yMin="-395" xMax="1052" yMax="1110">
- <contour>
- <pt x="351" y="-395" on="1"/>
- <pt x="154" y="-395" on="1"/>
- <pt x="154" y="1086" on="1"/>
- <pt x="351" y="1086" on="1"/>
- <pt x="351" y="882" on="1"/>
- <pt x="407" y="984" on="0"/>
- <pt x="469" y="1036" on="1"/>
- <pt x="557" y="1110" on="0"/>
- <pt x="676" y="1110" on="1"/>
- <pt x="845" y="1110" on="0"/>
- <pt x="948" y="963" on="1"/>
- <pt x="1052" y="816" on="0"/>
- <pt x="1052" y="572" on="1"/>
- <pt x="1052" y="287" on="0"/>
- <pt x="918" y="131" on="1"/>
- <pt x="785" y="-25" on="0"/>
- <pt x="540" y="-25" on="1"/>
- <pt x="449" y="-25" on="0"/>
- <pt x="351" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="351" y="703" on="1"/>
- <pt x="351" y="149" on="1"/>
- <pt x="488" y="123" on="0"/>
- <pt x="557" y="123" on="1"/>
- <pt x="839" y="123" on="0"/>
- <pt x="839" y="552" on="1"/>
- <pt x="839" y="733" on="0"/>
- <pt x="783" y="835" on="1"/>
- <pt x="728" y="938" on="0"/>
- <pt x="634" y="938" on="1"/>
- <pt x="508" y="938" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 28 30 8 22 40 16 48 196 16 2 8 1 1 20 19 4 3 2 2 3 0 1 18
- 2 0 2 0 1 0 1 0 3 2 1 14 0 0 24 9 12 48 196 12 0 0 0 20 19
- 18 4 3 0 4 5 1 1 4 48 196 2 1 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="paragraph" xMin="88" yMin="-296" xMax="902" yMax="1480">
- <contour>
- <pt x="507" y="-296" on="1"/>
- <pt x="507" y="740" on="1"/>
- <pt x="325" y="757" on="0"/>
- <pt x="222" y="843" on="1"/>
- <pt x="88" y="954" on="0"/>
- <pt x="88" y="1155" on="1"/>
- <pt x="88" y="1331" on="0"/>
- <pt x="184" y="1405" on="1"/>
- <pt x="280" y="1480" on="0"/>
- <pt x="507" y="1480" on="1"/>
- <pt x="902" y="1480" on="1"/>
- <pt x="902" y="-296" on="1"/>
- <pt x="779" y="-296" on="1"/>
- <pt x="779" y="1357" on="1"/>
- <pt x="631" y="1357" on="1"/>
- <pt x="631" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 57 values pushed */
- 1 1 13 2 2 0 1 15 12 11 0 4 13 2 0 0 0 14 13 6 1 9 1 4 48
- 196 10 9 0 14 5 0 0 0 13 12 19 1 10 9 1 0 19 2 14 2 4 48 196 11
- 10 1 15 14 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="parenleft" xMin="131" yMin="-296" xMax="600" yMax="1579">
- <contour>
- <pt x="600" y="-160" on="1"/>
- <pt x="600" y="-296" on="1"/>
- <pt x="400" y="-154" on="0"/>
- <pt x="284" y="55" on="1"/>
- <pt x="131" y="328" on="0"/>
- <pt x="131" y="642" on="1"/>
- <pt x="131" y="970" on="0"/>
- <pt x="297" y="1252" on="1"/>
- <pt x="411" y="1444" on="0"/>
- <pt x="600" y="1579" on="1"/>
- <pt x="600" y="1443" on="1"/>
- <pt x="465" y="1293" on="0"/>
- <pt x="404" y="1136" on="1"/>
- <pt x="328" y="941" on="0"/>
- <pt x="328" y="642" on="1"/>
- <pt x="328" y="330" on="0"/>
- <pt x="411" y="129" on="1"/>
- <pt x="473" y="-18" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 17 values pushed */
- 10 9 1 0 14 0 0 14 41 5 48 196 10 9 5 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="parenright" xMin="82" yMin="-296" xMax="551" yMax="1579">
- <contour>
- <pt x="82" y="1443" on="1"/>
- <pt x="82" y="1579" on="1"/>
- <pt x="282" y="1437" on="0"/>
- <pt x="399" y="1228" on="1"/>
- <pt x="551" y="956" on="0"/>
- <pt x="551" y="642" on="1"/>
- <pt x="551" y="312" on="0"/>
- <pt x="385" y="31" on="1"/>
- <pt x="271" y="-161" on="0"/>
- <pt x="82" y="-296" on="1"/>
- <pt x="82" y="-160" on="1"/>
- <pt x="217" y="-9" on="0"/>
- <pt x="278" y="148" on="1"/>
- <pt x="353" y="343" on="0"/>
- <pt x="353" y="642" on="1"/>
- <pt x="353" y="953" on="0"/>
- <pt x="270" y="1154" on="1"/>
- <pt x="210" y="1299" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 17 values pushed */
- 10 9 1 0 14 0 0 14 41 5 48 196 10 9 5 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="percent" xMin="112" yMin="-37" xMax="1709" yMax="1517">
- <contour>
- <pt x="250" y="-37" on="1"/>
- <pt x="1416" y="1517" on="1"/>
- <pt x="1570" y="1517" on="1"/>
- <pt x="405" y="-37" on="1"/>
- </contour>
- <contour>
- <pt x="429" y="1480" on="1"/>
- <pt x="576" y="1480" on="0"/>
- <pt x="661" y="1381" on="1"/>
- <pt x="747" y="1281" on="0"/>
- <pt x="747" y="1110" on="1"/>
- <pt x="747" y="939" on="0"/>
- <pt x="661" y="840" on="1"/>
- <pt x="576" y="740" on="0"/>
- <pt x="430" y="740" on="1"/>
- <pt x="282" y="740" on="0"/>
- <pt x="197" y="840" on="1"/>
- <pt x="112" y="940" on="0"/>
- <pt x="112" y="1115" on="1"/>
- <pt x="112" y="1266" on="0"/>
- <pt x="182" y="1362" on="1"/>
- <pt x="270" y="1480" on="0"/>
- </contour>
- <contour>
- <pt x="429" y="1382" on="1"/>
- <pt x="356" y="1382" on="0"/>
- <pt x="311" y="1308" on="1"/>
- <pt x="266" y="1233" on="0"/>
- <pt x="266" y="1116" on="1"/>
- <pt x="266" y="1001" on="0"/>
- <pt x="303" y="929" on="1"/>
- <pt x="348" y="839" on="0"/>
- <pt x="429" y="839" on="1"/>
- <pt x="503" y="839" on="0"/>
- <pt x="548" y="914" on="1"/>
- <pt x="593" y="989" on="0"/>
- <pt x="593" y="1110" on="1"/>
- <pt x="593" y="1233" on="0"/>
- <pt x="548" y="1307" on="1"/>
- <pt x="502" y="1382" on="0"/>
- </contour>
- <contour>
- <pt x="1392" y="740" on="1"/>
- <pt x="1539" y="740" on="0"/>
- <pt x="1624" y="640" on="1"/>
- <pt x="1709" y="541" on="0"/>
- <pt x="1709" y="370" on="1"/>
- <pt x="1709" y="199" on="0"/>
- <pt x="1624" y="100" on="1"/>
- <pt x="1538" y="0" on="0"/>
- <pt x="1392" y="0" on="1"/>
- <pt x="1244" y="0" on="0"/>
- <pt x="1159" y="100" on="1"/>
- <pt x="1074" y="200" on="0"/>
- <pt x="1074" y="375" on="1"/>
- <pt x="1074" y="527" on="0"/>
- <pt x="1144" y="622" on="1"/>
- <pt x="1232" y="740" on="0"/>
- </contour>
- <contour>
- <pt x="1392" y="642" on="1"/>
- <pt x="1318" y="642" on="0"/>
- <pt x="1273" y="568" on="1"/>
- <pt x="1228" y="493" on="0"/>
- <pt x="1228" y="376" on="1"/>
- <pt x="1228" y="262" on="0"/>
- <pt x="1265" y="189" on="1"/>
- <pt x="1309" y="99" on="0"/>
- <pt x="1392" y="99" on="1"/>
- <pt x="1465" y="99" on="0"/>
- <pt x="1510" y="174" on="1"/>
- <pt x="1555" y="249" on="0"/>
- <pt x="1555" y="370" on="1"/>
- <pt x="1555" y="493" on="0"/>
- <pt x="1510" y="567" on="1"/>
- <pt x="1465" y="642" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 60 21 44 52 21 36 28 21 12 20 21 4 48 196 44 2 4 0 36 12 1 1 36
- 12 2 0 2 3 0 0 2 1 1 3 0 1 2 0 14 0 0 64 15 40 56 15 48 32
- 15 8 24 15 16 48 196 48 40 16 8 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="period" xMin="161" yMin="0" xMax="408" yMax="247">
- <contour>
- <pt x="161" y="0" on="1"/>
- <pt x="161" y="247" on="1"/>
- <pt x="408" y="247" on="1"/>
- <pt x="408" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 2 1 8 1 0 1 4 48 196 3 0 1 0 14 0 0 3 2 8 1 0 1 4
- 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="periodcentered" xMin="161" yMin="491" xMax="408" yMax="738">
- <contour>
- <pt x="161" y="491" on="1"/>
- <pt x="161" y="738" on="1"/>
- <pt x="408" y="738" on="1"/>
- <pt x="408" y="491" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 3 0 8 1 1 1 4 48 196 2 1 1 0 14 0 0 3 2 8 1 0 1 4
- 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="periodcentered#1" xMin="161" yMin="491" xMax="408" yMax="738">
- <contour>
- <pt x="161" y="491" on="1"/>
- <pt x="161" y="738" on="1"/>
- <pt x="408" y="738" on="1"/>
- <pt x="408" y="491" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 0 0 3 0 8 1 1 1 4 48 196 2 1 1 0 14 0 0 3 2 8 1 0 1 4
- 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="perthousand" xMin="25" yMin="-37" xMax="2024" yMax="1517">
- <contour>
- <pt x="340" y="1480" on="1"/>
- <pt x="483" y="1480" on="0"/>
- <pt x="569" y="1380" on="1"/>
- <pt x="654" y="1281" on="0"/>
- <pt x="654" y="1111" on="1"/>
- <pt x="654" y="938" on="0"/>
- <pt x="569" y="839" on="1"/>
- <pt x="484" y="740" on="0"/>
- <pt x="335" y="740" on="1"/>
- <pt x="209" y="740" on="0"/>
- <pt x="127" y="822" on="1"/>
- <pt x="25" y="925" on="0"/>
- <pt x="25" y="1110" on="1"/>
- <pt x="25" y="1280" on="0"/>
- <pt x="110" y="1380" on="1"/>
- <pt x="196" y="1480" on="0"/>
- </contour>
- <contour>
- <pt x="338" y="1382" on="1"/>
- <pt x="173" y="1382" on="0"/>
- <pt x="173" y="1111" on="1"/>
- <pt x="173" y="839" on="0"/>
- <pt x="340" y="839" on="1"/>
- <pt x="506" y="839" on="0"/>
- <pt x="506" y="1109" on="1"/>
- <pt x="506" y="1235" on="0"/>
- <pt x="461" y="1308" on="1"/>
- <pt x="415" y="1382" on="0"/>
- </contour>
- <contour>
- <pt x="1006" y="740" on="1"/>
- <pt x="1150" y="740" on="0"/>
- <pt x="1235" y="640" on="1"/>
- <pt x="1320" y="541" on="0"/>
- <pt x="1320" y="371" on="1"/>
- <pt x="1320" y="198" on="0"/>
- <pt x="1235" y="99" on="1"/>
- <pt x="1150" y="0" on="0"/>
- <pt x="1002" y="0" on="1"/>
- <pt x="874" y="0" on="0"/>
- <pt x="793" y="81" on="1"/>
- <pt x="691" y="184" on="0"/>
- <pt x="691" y="370" on="1"/>
- <pt x="691" y="540" on="0"/>
- <pt x="776" y="640" on="1"/>
- <pt x="862" y="740" on="0"/>
- </contour>
- <contour>
- <pt x="1004" y="642" on="1"/>
- <pt x="839" y="642" on="0"/>
- <pt x="839" y="370" on="1"/>
- <pt x="839" y="99" on="0"/>
- <pt x="1006" y="99" on="1"/>
- <pt x="1172" y="99" on="0"/>
- <pt x="1172" y="369" on="1"/>
- <pt x="1172" y="495" on="0"/>
- <pt x="1127" y="569" on="1"/>
- <pt x="1081" y="642" on="0"/>
- </contour>
- <contour>
- <pt x="1709" y="740" on="1"/>
- <pt x="1853" y="740" on="0"/>
- <pt x="1938" y="640" on="1"/>
- <pt x="2024" y="541" on="0"/>
- <pt x="2024" y="372" on="1"/>
- <pt x="2024" y="198" on="0"/>
- <pt x="1938" y="99" on="1"/>
- <pt x="1852" y="0" on="0"/>
- <pt x="1706" y="0" on="1"/>
- <pt x="1578" y="0" on="0"/>
- <pt x="1496" y="82" on="1"/>
- <pt x="1394" y="185" on="0"/>
- <pt x="1394" y="370" on="1"/>
- <pt x="1394" y="540" on="0"/>
- <pt x="1479" y="640" on="1"/>
- <pt x="1565" y="740" on="0"/>
- </contour>
- <contour>
- <pt x="1707" y="642" on="1"/>
- <pt x="1542" y="642" on="0"/>
- <pt x="1542" y="370" on="1"/>
- <pt x="1542" y="99" on="0"/>
- <pt x="1709" y="99" on="1"/>
- <pt x="1876" y="99" on="0"/>
- <pt x="1876" y="370" on="1"/>
- <pt x="1876" y="495" on="0"/>
- <pt x="1830" y="569" on="1"/>
- <pt x="1785" y="642" on="0"/>
- </contour>
- <contour>
- <pt x="61" y="-37" on="1"/>
- <pt x="1149" y="1517" on="1"/>
- <pt x="1284" y="1517" on="1"/>
- <pt x="196" y="-37" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 87 values pushed */
- 0 0 72 21 60 68 21 52 46 21 34 42 21 26 20 21 8 16 21 0 48 196 60 2 34
- 2 0 0 52 26 8 1 1 52 26 8 3 0 2 3 0 0 1 80 79 2 13 0 0 1
- 81 78 2 0 14 0 0 74 7 56 70 7 64 48 7 30 44 7 38 22 7 4 18 7 12
- 48 196 81 80 79 78 64 56 38 30 12 4
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MDAP[1]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="plus" xMin="104" yMin="99" xMax="1091" yMax="1086">
- <contour>
- <pt x="523" y="99" on="1"/>
- <pt x="523" y="518" on="1"/>
- <pt x="104" y="518" on="1"/>
- <pt x="104" y="666" on="1"/>
- <pt x="523" y="666" on="1"/>
- <pt x="523" y="1086" on="1"/>
- <pt x="671" y="1086" on="1"/>
- <pt x="671" y="666" on="1"/>
- <pt x="1091" y="666" on="1"/>
- <pt x="1091" y="518" on="1"/>
- <pt x="671" y="518" on="1"/>
- <pt x="671" y="99" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 53 values pushed */
- 0 0 10 9 2 1 7 3 3 1 4 48 196 8 7 4 3 3 11 0 1 2 0 6 5
- 1 14 0 0 11 10 7 6 7 3 0 1 4 48 196 9 8 1 5 4 1 0 3 3 2
- 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="plusminus" xMin="104" yMin="0" xMax="1091" yMax="1184">
- <contour>
- <pt x="523" y="296" on="1"/>
- <pt x="523" y="666" on="1"/>
- <pt x="104" y="666" on="1"/>
- <pt x="104" y="814" on="1"/>
- <pt x="523" y="814" on="1"/>
- <pt x="523" y="1184" on="1"/>
- <pt x="672" y="1184" on="1"/>
- <pt x="672" y="814" on="1"/>
- <pt x="1091" y="814" on="1"/>
- <pt x="1091" y="666" on="1"/>
- <pt x="672" y="666" on="1"/>
- <pt x="672" y="296" on="1"/>
- </contour>
- <contour>
- <pt x="104" y="0" on="1"/>
- <pt x="104" y="148" on="1"/>
- <pt x="1091" y="148" on="1"/>
- <pt x="1091" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 14 13 7 1 12 10 9 2 1 7 3 3 2 4 48 196 15 12 1 6 5 1 8
- 7 4 3 3 11 0 1 4 0 14 0 0 11 10 7 6 7 3 0 1 4 48 196 15 14
- 9 8 3 5 4 1 0 3 13 12 3 2 3 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="q" xMin="86" yMin="-395" xMax="984" yMax="1110">
- <contour>
- <pt x="787" y="1086" on="1"/>
- <pt x="984" y="1086" on="1"/>
- <pt x="984" y="-395" on="1"/>
- <pt x="787" y="-395" on="1"/>
- <pt x="787" y="203" on="1"/>
- <pt x="731" y="101" on="0"/>
- <pt x="669" y="49" on="1"/>
- <pt x="581" y="-25" on="0"/>
- <pt x="462" y="-25" on="1"/>
- <pt x="293" y="-25" on="0"/>
- <pt x="190" y="123" on="1"/>
- <pt x="86" y="270" on="0"/>
- <pt x="86" y="514" on="1"/>
- <pt x="86" y="798" on="0"/>
- <pt x="220" y="954" on="1"/>
- <pt x="354" y="1110" on="0"/>
- <pt x="597" y="1110" on="1"/>
- <pt x="691" y="1110" on="0"/>
- </contour>
- <contour>
- <pt x="787" y="382" on="1"/>
- <pt x="787" y="937" on="1"/>
- <pt x="648" y="962" on="0"/>
- <pt x="582" y="962" on="1"/>
- <pt x="299" y="962" on="0"/>
- <pt x="299" y="532" on="1"/>
- <pt x="299" y="354" on="0"/>
- <pt x="355" y="251" on="1"/>
- <pt x="410" y="148" on="0"/>
- <pt x="504" y="148" on="1"/>
- <pt x="630" y="148" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 58 values pushed */
- 0 0 27 30 8 21 40 16 48 196 16 1 8 2 1 19 18 4 3 0 2 3 0 3 2
- 1 0 1 0 1 14 0 0 23 9 12 48 196 12 0 0 0 19 18 4 3 0 4 4 1
- 1 4 48 196 2 1 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="question" xMin="138" yMin="0" xMax="1014" yMax="1517">
- <contour>
- <pt x="376" y="0" on="1"/>
- <pt x="376" y="197" on="1"/>
- <pt x="573" y="197" on="1"/>
- <pt x="573" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="376" y="395" on="1"/>
- <pt x="376" y="449" on="1"/>
- <pt x="375" y="694" on="0"/>
- <pt x="539" y="822" on="1"/>
- <pt x="628" y="891" on="1"/>
- <pt x="804" y="1027" on="0"/>
- <pt x="804" y="1174" on="1"/>
- <pt x="804" y="1369" on="0"/>
- <pt x="530" y="1369" on="1"/>
- <pt x="362" y="1369" on="0"/>
- <pt x="138" y="1295" on="1"/>
- <pt x="138" y="1462" on="1"/>
- <pt x="359" y="1517" on="0"/>
- <pt x="545" y="1517" on="1"/>
- <pt x="749" y="1517" on="0"/>
- <pt x="865" y="1451" on="1"/>
- <pt x="1014" y="1365" on="0"/>
- <pt x="1014" y="1177" on="1"/>
- <pt x="1014" y="989" on="0"/>
- <pt x="823" y="871" on="1"/>
- <pt x="742" y="821" on="1"/>
- <pt x="643" y="760" on="0"/>
- <pt x="608" y="694" on="1"/>
- <pt x="573" y="629" on="0"/>
- <pt x="573" y="505" on="1"/>
- <pt x="573" y="395" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 71 values pushed */
- 0 0 12 40 17 48 196 17 0 1 28 15 14 5 4 0 4 3 0 0 0 2 1 5 1
- 0 1 4 48 196 29 4 1 3 0 1 2 0 14 0 0 10 9 21 48 196 21 2 0 0
- 29 28 3 2 4 3 0 1 4 48 196 15 14 1 5 4 1 0 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="questiondown" xMin="185" yMin="-432" xMax="1061" yMax="1086">
- <contour>
- <pt x="823" y="1086" on="1"/>
- <pt x="823" y="888" on="1"/>
- <pt x="626" y="888" on="1"/>
- <pt x="626" y="1086" on="1"/>
- </contour>
- <contour>
- <pt x="823" y="691" on="1"/>
- <pt x="823" y="636" on="1"/>
- <pt x="823" y="392" on="0"/>
- <pt x="660" y="264" on="1"/>
- <pt x="571" y="195" on="1"/>
- <pt x="395" y="58" on="0"/>
- <pt x="395" y="-88" on="1"/>
- <pt x="395" y="-284" on="0"/>
- <pt x="670" y="-284" on="1"/>
- <pt x="838" y="-284" on="0"/>
- <pt x="1061" y="-209" on="1"/>
- <pt x="1061" y="-376" on="1"/>
- <pt x="842" y="-432" on="0"/>
- <pt x="655" y="-432" on="1"/>
- <pt x="450" y="-432" on="0"/>
- <pt x="334" y="-365" on="1"/>
- <pt x="185" y="-280" on="0"/>
- <pt x="185" y="-91" on="1"/>
- <pt x="185" y="97" on="0"/>
- <pt x="376" y="215" on="1"/>
- <pt x="457" y="265" on="1"/>
- <pt x="556" y="326" on="0"/>
- <pt x="591" y="391" on="1"/>
- <pt x="626" y="457" on="0"/>
- <pt x="626" y="580" on="1"/>
- <pt x="626" y="691" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 72 values pushed */
- 0 0 12 40 17 48 196 1 28 5 2 4 2 3 0 1 15 14 17 2 0 0 0 2 1
- 5 1 0 1 4 48 196 29 4 1 0 3 0 1 14 0 0 10 9 21 48 196 21 2 0
- 0 29 28 3 2 4 3 0 1 4 48 196 15 14 1 5 4 1 0 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotedbl" xMin="92" yMin="1086" xMax="635" yMax="1579">
- <contour>
- <pt x="117" y="1086" on="1"/>
- <pt x="92" y="1579" on="1"/>
- <pt x="289" y="1579" on="1"/>
- <pt x="265" y="1086" on="1"/>
- </contour>
- <contour>
- <pt x="462" y="1086" on="1"/>
- <pt x="437" y="1579" on="1"/>
- <pt x="635" y="1579" on="1"/>
- <pt x="610" y="1086" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 21 values pushed */
- 6 5 2 1 3 0 7 4 3 0 1 3 14 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotedblbase" xMin="70" yMin="-321" xMax="613" yMax="197">
- <contour>
- <pt x="70" y="-321" on="1"/>
- <pt x="70" y="-247" on="1"/>
- <pt x="141" y="-210" on="0"/>
- <pt x="141" y="-23" on="1"/>
- <pt x="141" y="0" on="1"/>
- <pt x="70" y="0" on="1"/>
- <pt x="70" y="197" on="1"/>
- <pt x="267" y="197" on="1"/>
- <pt x="267" y="31" on="1"/>
- <pt x="266" y="-271" on="0"/>
- </contour>
- <contour>
- <pt x="415" y="-321" on="1"/>
- <pt x="415" y="-247" on="1"/>
- <pt x="486" y="-209" on="0"/>
- <pt x="486" y="-23" on="1"/>
- <pt x="486" y="0" on="1"/>
- <pt x="415" y="0" on="1"/>
- <pt x="415" y="197" on="1"/>
- <pt x="613" y="197" on="1"/>
- <pt x="613" y="31" on="1"/>
- <pt x="612" y="-271" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 18 15 14 13 11 10 8 5 4 3 1 0 12 13 6 17 16 7 6 3 0 14 14 13 2
- 17 10 3 4 3 2 7 0 3 0 0 16 15 11 10 4 3 17 8 7 4 1 0 2 4
- 48 196 18 17 1 6 5 1 0 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotedblleft" xMin="57" yMin="1061" xMax="600" yMax="1579">
- <contour>
- <pt x="600" y="1579" on="1"/>
- <pt x="600" y="1505" on="1"/>
- <pt x="529" y="1468" on="0"/>
- <pt x="529" y="1281" on="1"/>
- <pt x="529" y="1258" on="1"/>
- <pt x="600" y="1258" on="1"/>
- <pt x="600" y="1061" on="1"/>
- <pt x="402" y="1061" on="1"/>
- <pt x="402" y="1227" on="1"/>
- <pt x="403" y="1529" on="0"/>
- </contour>
- <contour>
- <pt x="254" y="1579" on="1"/>
- <pt x="254" y="1505" on="1"/>
- <pt x="184" y="1468" on="0"/>
- <pt x="184" y="1281" on="1"/>
- <pt x="184" y="1258" on="1"/>
- <pt x="254" y="1258" on="1"/>
- <pt x="254" y="1061" on="1"/>
- <pt x="57" y="1061" on="1"/>
- <pt x="57" y="1227" on="1"/>
- <pt x="58" y="1529" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 18 15 14 13 11 10 8 5 4 3 1 0 12 13 6 17 16 7 6 3 0 14 4 3 2
- 0 7 3 14 13 2 10 17 3 0 0 16 15 11 10 4 3 17 8 7 4 1 0 2 4
- 48 196 18 17 1 6 5 1 0 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotedblright" xMin="82" yMin="1061" xMax="625" yMax="1579">
- <contour>
- <pt x="82" y="1061" on="1"/>
- <pt x="82" y="1135" on="1"/>
- <pt x="153" y="1172" on="0"/>
- <pt x="153" y="1359" on="1"/>
- <pt x="153" y="1382" on="1"/>
- <pt x="82" y="1382" on="1"/>
- <pt x="82" y="1579" on="1"/>
- <pt x="279" y="1579" on="1"/>
- <pt x="279" y="1413" on="1"/>
- <pt x="278" y="1111" on="0"/>
- </contour>
- <contour>
- <pt x="427" y="1061" on="1"/>
- <pt x="427" y="1135" on="1"/>
- <pt x="498" y="1172" on="0"/>
- <pt x="498" y="1359" on="1"/>
- <pt x="498" y="1382" on="1"/>
- <pt x="427" y="1382" on="1"/>
- <pt x="427" y="1579" on="1"/>
- <pt x="625" y="1579" on="1"/>
- <pt x="625" y="1413" on="1"/>
- <pt x="624" y="1111" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 18 15 14 13 11 10 8 5 4 3 1 0 12 13 6 17 16 7 6 3 0 14 14 13 2
- 17 10 3 4 3 2 7 0 3 0 0 16 15 11 10 4 3 17 8 7 4 1 0 2 4
- 48 196 18 17 1 6 5 1 0 3 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quoteleft" xMin="92" yMin="1012" xMax="339" yMax="1579">
- <contour>
- <pt x="339" y="1579" on="1"/>
- <pt x="339" y="1505" on="1"/>
- <pt x="243" y="1478" on="0"/>
- <pt x="243" y="1279" on="1"/>
- <pt x="243" y="1258" on="1"/>
- <pt x="339" y="1258" on="1"/>
- <pt x="339" y="1012" on="1"/>
- <pt x="92" y="1012" on="1"/>
- <pt x="92" y="1226" on="1"/>
- <pt x="93" y="1551" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 37 values pushed */
- 8 5 4 3 1 0 6 13 6 7 6 1 0 14 4 3 2 0 7 3 0 0 6 5 1
- 0 8 3 7 1 4 48 196 8 7 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotereversed"/><!-- contains no outline data -->
-
- <TTGlyph name="quoteright" xMin="116" yMin="1012" xMax="363" yMax="1579">
- <contour>
- <pt x="116" y="1012" on="1"/>
- <pt x="116" y="1086" on="1"/>
- <pt x="212" y="1113" on="0"/>
- <pt x="212" y="1312" on="1"/>
- <pt x="212" y="1332" on="1"/>
- <pt x="116" y="1332" on="1"/>
- <pt x="116" y="1579" on="1"/>
- <pt x="363" y="1579" on="1"/>
- <pt x="363" y="1365" on="1"/>
- <pt x="362" y="1036" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 37 values pushed */
- 8 5 4 3 1 0 6 13 6 7 6 1 0 14 4 3 2 7 0 3 0 0 8 7 8
- 1 0 1 4 48 196 6 5 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotesinglbase" xMin="104" yMin="-296" xMax="351" yMax="247">
- <contour>
- <pt x="104" y="-296" on="1"/>
- <pt x="104" y="-222" on="1"/>
- <pt x="200" y="-195" on="0"/>
- <pt x="200" y="-20" on="1"/>
- <pt x="200" y="0" on="1"/>
- <pt x="104" y="0" on="1"/>
- <pt x="104" y="247" on="1"/>
- <pt x="351" y="247" on="1"/>
- <pt x="351" y="33" on="1"/>
- <pt x="350" y="-270" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 37 values pushed */
- 8 5 4 3 1 0 6 13 6 7 6 1 0 14 4 3 2 7 0 3 0 0 8 7 8
- 1 0 1 4 48 196 6 5 1 0 3 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="quotesingle" xMin="72" yMin="1036" xMax="319" yMax="1579">
- <contour>
- <pt x="121" y="1036" on="1"/>
- <pt x="72" y="1579" on="1"/>
- <pt x="319" y="1579" on="1"/>
- <pt x="269" y="1036" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 13 values pushed */
- 2 1 1 3 0 1 2 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- LOOPCALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="r" xMin="154" yMin="0" xMax="668" yMax="1110">
- <contour>
- <pt x="154" y="0" on="1"/>
- <pt x="154" y="1086" on="1"/>
- <pt x="351" y="1086" on="1"/>
- <pt x="351" y="882" on="1"/>
- <pt x="394" y="985" on="0"/>
- <pt x="443" y="1036" on="1"/>
- <pt x="514" y="1110" on="0"/>
- <pt x="612" y="1110" on="1"/>
- <pt x="631" y="1110" on="0"/>
- <pt x="668" y="1105" on="1"/>
- <pt x="668" y="921" on="1"/>
- <pt x="616" y="938" on="0"/>
- <pt x="584" y="938" on="1"/>
- <pt x="475" y="938" on="0"/>
- <pt x="351" y="716" on="1"/>
- <pt x="351" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 47 values pushed */
- 0 0 12 30 7 48 196 7 1 14 10 3 3 1 0 3 9 1 15 0 1 0 2 1 1
- 14 0 0 15 14 3 2 4 3 0 1 4 48 196 10 9 1 1 0 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00000]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="racute" xMin="154" yMin="0" xMax="722" yMax="1604">
- <component glyphName="r" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="146" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="radicalex" xMin="99" yMin="1456" xMax="1040" yMax="1604">
- <contour>
- <pt x="99" y="1456" on="1"/>
- <pt x="99" y="1604" on="1"/>
- <pt x="1040" y="1604" on="1"/>
- <pt x="1040" y="1456" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 196 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="rcaron" xMin="2" yMin="0" xMax="702" yMax="1604">
- <component glyphName="r" x="1" y="0" flags="0x4"/>
- <component glyphName="caron" x="11" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="rcommaaccent" xMin="154" yMin="-432" xMax="668" yMax="1110">
- <component glyphName="r" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="-16" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="registered" xMin="15" yMin="0" xMax="1495" yMax="1480">
- <contour>
- <pt x="755" y="1480" on="1"/>
- <pt x="1060" y="1480" on="0"/>
- <pt x="1278" y="1263" on="1"/>
- <pt x="1495" y="1047" on="0"/>
- <pt x="1495" y="741" on="1"/>
- <pt x="1495" y="431" on="0"/>
- <pt x="1277" y="216" on="1"/>
- <pt x="1060" y="0" on="0"/>
- <pt x="746" y="0" on="1"/>
- <pt x="478" y="0" on="0"/>
- <pt x="277" y="176" on="1"/>
- <pt x="15" y="404" on="0"/>
- <pt x="15" y="741" on="1"/>
- <pt x="15" y="1047" on="0"/>
- <pt x="232" y="1263" on="1"/>
- <pt x="450" y="1480" on="0"/>
- </contour>
- <contour>
- <pt x="755" y="1375" on="1"/>
- <pt x="494" y="1375" on="0"/>
- <pt x="307" y="1188" on="1"/>
- <pt x="121" y="1002" on="0"/>
- <pt x="121" y="740" on="1"/>
- <pt x="121" y="482" on="0"/>
- <pt x="306" y="294" on="1"/>
- <pt x="491" y="106" on="0"/>
- <pt x="748" y="106" on="1"/>
- <pt x="987" y="106" on="0"/>
- <pt x="1164" y="256" on="1"/>
- <pt x="1390" y="448" on="0"/>
- <pt x="1390" y="741" on="1"/>
- <pt x="1390" y="1003" on="0"/>
- <pt x="1203" y="1188" on="1"/>
- <pt x="1016" y="1375" on="0"/>
- </contour>
- <contour>
- <pt x="511" y="337" on="1"/>
- <pt x="511" y="1137" on="1"/>
- <pt x="763" y="1137" on="1"/>
- <pt x="1005" y="1137" on="0"/>
- <pt x="1005" y="942" on="1"/>
- <pt x="1005" y="803" on="0"/>
- <pt x="865" y="709" on="1"/>
- <pt x="1106" y="337" on="1"/>
- <pt x="957" y="337" on="1"/>
- <pt x="741" y="671" on="1"/>
- <pt x="640" y="671" on="1"/>
- <pt x="640" y="337" on="1"/>
- </contour>
- <contour>
- <pt x="632" y="770" on="1"/>
- <pt x="668" y="770" on="1"/>
- <pt x="880" y="770" on="0"/>
- <pt x="880" y="925" on="1"/>
- <pt x="880" y="1055" on="0"/>
- <pt x="703" y="1055" on="1"/>
- <pt x="632" y="1055" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 83 values pushed */
- 0 0 24 20 8 16 20 0 48 196 8 2 0 0 50 49 45 44 42 41 38 7 33 32 3
- 34 33 1 43 40 39 32 3 2 0 14 0 0 47 6 36 28 17 4 20 17 12 48 196 49
- 45 41 40 39 38 34 7 13 36 4 42 12 32 0 0 43 42 18 1 32 50 44 19 1 32
- 2 4 48 196 33 32 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ring" xMin="114" yMin="1283" xMax="568" yMax="1737">
- <contour>
- <pt x="341" y="1737" on="1"/>
- <pt x="435" y="1737" on="0"/>
- <pt x="501" y="1671" on="1"/>
- <pt x="568" y="1605" on="0"/>
- <pt x="568" y="1511" on="1"/>
- <pt x="568" y="1415" on="0"/>
- <pt x="501" y="1349" on="1"/>
- <pt x="435" y="1283" on="0"/>
- <pt x="339" y="1283" on="1"/>
- <pt x="256" y="1283" on="0"/>
- <pt x="194" y="1337" on="1"/>
- <pt x="114" y="1406" on="0"/>
- <pt x="114" y="1510" on="1"/>
- <pt x="114" y="1604" on="0"/>
- <pt x="180" y="1670" on="1"/>
- <pt x="246" y="1737" on="0"/>
- </contour>
- <contour>
- <pt x="341" y="1650" on="1"/>
- <pt x="283" y="1650" on="0"/>
- <pt x="241" y="1609" on="1"/>
- <pt x="200" y="1569" on="0"/>
- <pt x="200" y="1510" on="1"/>
- <pt x="200" y="1452" on="0"/>
- <pt x="241" y="1411" on="1"/>
- <pt x="282" y="1369" on="0"/>
- <pt x="339" y="1369" on="1"/>
- <pt x="393" y="1369" on="0"/>
- <pt x="432" y="1402" on="1"/>
- <pt x="482" y="1445" on="0"/>
- <pt x="482" y="1511" on="1"/>
- <pt x="482" y="1569" on="0"/>
- <pt x="440" y="1609" on="1"/>
- <pt x="399" y="1650" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 25 values pushed */
- 0 0 24 44 8 16 44 0 48 196 8 0 14 0 0 28 32 4 20 32 12 48 196 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="s" xMin="116" yMin="-25" xMax="908" yMax="1110">
- <contour>
- <pt x="116" y="38" on="1"/>
- <pt x="116" y="219" on="1"/>
- <pt x="315" y="123" on="0"/>
- <pt x="483" y="123" on="1"/>
- <pt x="710" y="123" on="0"/>
- <pt x="710" y="283" on="1"/>
- <pt x="710" y="393" on="0"/>
- <pt x="551" y="445" on="1"/>
- <pt x="375" y="503" on="1"/>
- <pt x="122" y="586" on="0"/>
- <pt x="122" y="807" on="1"/>
- <pt x="122" y="1110" on="0"/>
- <pt x="536" y="1110" on="1"/>
- <pt x="655" y="1110" on="0"/>
- <pt x="825" y="1078" on="1"/>
- <pt x="825" y="913" on="1"/>
- <pt x="674" y="962" on="0"/>
- <pt x="523" y="962" on="1"/>
- <pt x="317" y="962" on="0"/>
- <pt x="317" y="827" on="1"/>
- <pt x="317" y="729" on="0"/>
- <pt x="458" y="683" on="1"/>
- <pt x="615" y="632" on="1"/>
- <pt x="908" y="537" on="0"/>
- <pt x="908" y="302" on="1"/>
- <pt x="908" y="151" on="0"/>
- <pt x="792" y="63" on="1"/>
- <pt x="676" y="-25" on="0"/>
- <pt x="475" y="-25" on="1"/>
- <pt x="316" y="-25" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 52 values pushed */
- 0 0 17 40 12 3 40 28 48 196 28 2 12 1 1 1 15 14 1 0 4 1 2 3 0
- 0 14 0 0 19 41 10 5 41 24 48 196 10 10 14 0 2 24 14 15 14 1 1 0 1
- 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="sacute" xMin="116" yMin="-25" xMax="908" yMax="1604">
- <component glyphName="s" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="294" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="scaron" xMin="116" yMin="-25" xMax="908" yMax="1604">
- <component glyphName="s" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="208" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="scedilla" xMin="116" yMin="-432" xMax="908" yMax="1110">
- <component glyphName="s" x="0" y="0" flags="0x4"/>
- <component glyphName="cedilla" x="165" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="scircumflex" xMin="116" yMin="-25" xMax="908" yMax="1604">
- <contour>
- <pt x="116" y="38" on="1"/>
- <pt x="116" y="219" on="1"/>
- <pt x="315" y="123" on="0"/>
- <pt x="483" y="123" on="1"/>
- <pt x="710" y="123" on="0"/>
- <pt x="710" y="283" on="1"/>
- <pt x="710" y="393" on="0"/>
- <pt x="551" y="445" on="1"/>
- <pt x="375" y="503" on="1"/>
- <pt x="122" y="586" on="0"/>
- <pt x="122" y="807" on="1"/>
- <pt x="122" y="1110" on="0"/>
- <pt x="536" y="1110" on="1"/>
- <pt x="655" y="1110" on="0"/>
- <pt x="825" y="1078" on="1"/>
- <pt x="825" y="913" on="1"/>
- <pt x="674" y="962" on="0"/>
- <pt x="523" y="962" on="1"/>
- <pt x="317" y="962" on="0"/>
- <pt x="317" y="827" on="1"/>
- <pt x="317" y="729" on="0"/>
- <pt x="458" y="683" on="1"/>
- <pt x="615" y="632" on="1"/>
- <pt x="908" y="537" on="0"/>
- <pt x="908" y="302" on="1"/>
- <pt x="908" y="151" on="0"/>
- <pt x="792" y="63" on="1"/>
- <pt x="676" y="-25" on="0"/>
- <pt x="475" y="-25" on="1"/>
- <pt x="316" y="-25" on="0"/>
- </contour>
- <contour>
- <pt x="199" y="1283" on="1"/>
- <pt x="440" y="1604" on="1"/>
- <pt x="658" y="1604" on="1"/>
- <pt x="899" y="1283" on="1"/>
- <pt x="751" y="1283" on="1"/>
- <pt x="550" y="1485" on="1"/>
- <pt x="548" y="1485" on="1"/>
- <pt x="347" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 77 values pushed */
- 0 0 17 40 12 3 40 28 48 196 28 2 12 1 36 35 2 31 30 3 1 1 15 14 1
- 0 4 1 2 3 0 0 32 31 1 37 34 33 30 3 2 0 14 0 0 19 41 10 5 41
- 24 48 196 10 37 36 35 34 32 31 30 10 8 14 0 3 33 24 14 15 14 1 1 0 1
- 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="scommaaccent" xMin="116" yMin="-432" xMax="908" yMax="1110">
- <component glyphName="s" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="197" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="section" xMin="129" yMin="-334" xMax="1010" yMax="1517">
- <contour>
- <pt x="129" y="-260" on="1"/>
- <pt x="129" y="-80" on="1"/>
- <pt x="379" y="-185" on="0"/>
- <pt x="541" y="-185" on="1"/>
- <pt x="667" y="-185" on="0"/>
- <pt x="749" y="-135" on="1"/>
- <pt x="830" y="-85" on="0"/>
- <pt x="830" y="-3" on="1"/>
- <pt x="830" y="72" on="0"/>
- <pt x="769" y="114" on="1"/>
- <pt x="719" y="150" on="0"/>
- <pt x="600" y="201" on="1"/>
- <pt x="423" y="277" on="1"/>
- <pt x="134" y="401" on="0"/>
- <pt x="134" y="613" on="1"/>
- <pt x="134" y="758" on="0"/>
- <pt x="280" y="912" on="1"/>
- <pt x="139" y="1011" on="0"/>
- <pt x="139" y="1156" on="1"/>
- <pt x="139" y="1317" on="0"/>
- <pt x="269" y="1417" on="1"/>
- <pt x="398" y="1517" on="0"/>
- <pt x="611" y="1517" on="1"/>
- <pt x="756" y="1517" on="0"/>
- <pt x="954" y="1470" on="1"/>
- <pt x="954" y="1310" on="1"/>
- <pt x="747" y="1369" on="0"/>
- <pt x="608" y="1369" on="1"/>
- <pt x="478" y="1369" on="0"/>
- <pt x="398" y="1318" on="1"/>
- <pt x="318" y="1267" on="0"/>
- <pt x="318" y="1186" on="1"/>
- <pt x="318" y="1077" on="0"/>
- <pt x="493" y="1006" on="1"/>
- <pt x="629" y="951" on="1"/>
- <pt x="837" y="867" on="0"/>
- <pt x="915" y="789" on="1"/>
- <pt x="995" y="709" on="0"/>
- <pt x="995" y="589" on="1"/>
- <pt x="995" y="448" on="0"/>
- <pt x="846" y="277" on="1"/>
- <pt x="1010" y="176" on="0"/>
- <pt x="1010" y="9" on="1"/>
- <pt x="1010" y="-148" on="0"/>
- <pt x="876" y="-241" on="1"/>
- <pt x="743" y="-334" on="0"/>
- <pt x="523" y="-334" on="1"/>
- <pt x="369" y="-334" on="0"/>
- </contour>
- <contour>
- <pt x="748" y="341" on="1"/>
- <pt x="822" y="443" on="0"/>
- <pt x="822" y="534" on="1"/>
- <pt x="822" y="607" on="0"/>
- <pt x="774" y="654" on="1"/>
- <pt x="726" y="701" on="0"/>
- <pt x="602" y="753" on="1"/>
- <pt x="380" y="846" on="1"/>
- <pt x="306" y="751" on="0"/>
- <pt x="306" y="664" on="1"/>
- <pt x="306" y="529" on="0"/>
- <pt x="536" y="431" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 66 values pushed */
- 0 0 27 40 22 3 40 46 48 196 22 0 1 55 48 40 25 24 16 1 0 8 13 46 0
- 0 14 0 0 57 13 14 50 13 38 31 14 18 7 14 42 48 196 18 14 55 48 40 18 16
- 14 6 24 0 3 42 38 24 25 24 1 1 0 1 2 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- CALL[ ]
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="semicolon" xMin="186" yMin="-321" xMax="383" yMax="1086">
- <contour>
- <pt x="186" y="-321" on="1"/>
- <pt x="186" y="-247" on="1"/>
- <pt x="257" y="-210" on="0"/>
- <pt x="257" y="-23" on="1"/>
- <pt x="257" y="0" on="1"/>
- <pt x="186" y="0" on="1"/>
- <pt x="186" y="197" on="1"/>
- <pt x="383" y="197" on="1"/>
- <pt x="383" y="31" on="1"/>
- <pt x="382" y="-271" on="0"/>
- </contour>
- <contour>
- <pt x="186" y="888" on="1"/>
- <pt x="186" y="1086" on="1"/>
- <pt x="383" y="1086" on="1"/>
- <pt x="383" y="888" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 1 8 6 2 2 0 1 5 4 3 1 0 5 13 2 0 0 0 13 10 5 1 11 1 4
- 48 196 7 6 1 0 12 11 1 14 4 3 2 7 0 3 0 0 13 12 8 7 4 3 0
- 1 4 48 196 11 10 6 5 1 0 5 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="semicolon#1" xMin="186" yMin="-321" xMax="383" yMax="1086">
- <contour>
- <pt x="186" y="-321" on="1"/>
- <pt x="186" y="-247" on="1"/>
- <pt x="257" y="-210" on="0"/>
- <pt x="257" y="-23" on="1"/>
- <pt x="257" y="0" on="1"/>
- <pt x="186" y="0" on="1"/>
- <pt x="186" y="197" on="1"/>
- <pt x="383" y="197" on="1"/>
- <pt x="383" y="31" on="1"/>
- <pt x="382" y="-271" on="0"/>
- </contour>
- <contour>
- <pt x="186" y="888" on="1"/>
- <pt x="186" y="1086" on="1"/>
- <pt x="383" y="1086" on="1"/>
- <pt x="383" y="888" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 62 values pushed */
- 1 8 6 2 2 0 1 5 4 3 1 0 5 13 2 0 0 0 13 10 5 1 11 1 4
- 48 196 7 6 1 0 12 11 1 14 4 3 2 7 0 3 0 0 13 12 8 7 4 3 0
- 1 4 48 196 11 10 6 5 1 0 5 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="seven" xMin="136" yMin="0" xMax="1086" yMax="1480">
- <contour>
- <pt x="222" y="0" on="1"/>
- <pt x="251" y="173" on="0"/>
- <pt x="304" y="299" on="1"/>
- <pt x="357" y="424" on="0"/>
- <pt x="494" y="645" on="1"/>
- <pt x="898" y="1295" on="1"/>
- <pt x="136" y="1295" on="1"/>
- <pt x="136" y="1480" on="1"/>
- <pt x="1086" y="1480" on="1"/>
- <pt x="1086" y="1295" on="1"/>
- <pt x="517" y="456" on="0"/>
- <pt x="449" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 35 values pushed */
- 0 0 9 6 5 27 2 7 1 4 48 196 11 0 1 0 8 7 0 14 11 5 0 3 8
- 6 3 9 8 1 7 6 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="sfthyphen" xMin="88" yMin="518" xMax="594" yMax="666">
- <contour>
- <pt x="88" y="518" on="1"/>
- <pt x="88" y="666" on="1"/>
- <pt x="594" y="666" on="1"/>
- <pt x="594" y="518" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 196 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="six" xMin="84" yMin="-37" xMax="1027" yMax="1518">
- <contour>
- <pt x="298" y="778" on="1"/>
- <pt x="436" y="950" on="0"/>
- <pt x="635" y="950" on="1"/>
- <pt x="817" y="950" on="0"/>
- <pt x="922" y="826" on="1"/>
- <pt x="1027" y="703" on="0"/>
- <pt x="1027" y="486" on="1"/>
- <pt x="1027" y="245" on="0"/>
- <pt x="903" y="104" on="1"/>
- <pt x="779" y="-37" on="0"/>
- <pt x="571" y="-37" on="1"/>
- <pt x="344" y="-37" on="0"/>
- <pt x="214" y="158" on="1"/>
- <pt x="84" y="352" on="0"/>
- <pt x="84" y="693" on="1"/>
- <pt x="84" y="1080" on="0"/>
- <pt x="239" y="1299" on="1"/>
- <pt x="394" y="1518" on="0"/>
- <pt x="668" y="1518" on="1"/>
- <pt x="794" y="1518" on="0"/>
- <pt x="947" y="1462" on="1"/>
- <pt x="947" y="1290" on="1"/>
- <pt x="766" y="1370" on="0"/>
- <pt x="664" y="1370" on="1"/>
- <pt x="443" y="1370" on="0"/>
- <pt x="354" y="1148" on="1"/>
- <pt x="319" y="1060" on="0"/>
- <pt x="307" y="951" on="1"/>
- <pt x="300" y="893" on="0"/>
- </contour>
- <contour>
- <pt x="582" y="808" on="1"/>
- <pt x="458" y="808" on="0"/>
- <pt x="382" y="722" on="1"/>
- <pt x="305" y="636" on="0"/>
- <pt x="305" y="489" on="1"/>
- <pt x="305" y="325" on="0"/>
- <pt x="384" y="218" on="1"/>
- <pt x="463" y="111" on="0"/>
- <pt x="589" y="111" on="1"/>
- <pt x="833" y="111" on="0"/>
- <pt x="833" y="445" on="1"/>
- <pt x="833" y="808" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 50 values pushed */
- 0 0 37 40 10 29 40 2 23 40 18 48 196 18 0 10 2 2 1 1 21 20 2 0 4
- 0 2 3 0 0 14 0 0 39 41 6 33 26 14 48 196 6 20 0 14 20 21 20 1 0
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="slash" xMin="-59" yMin="-296" xMax="629" yMax="1480">
- <contour>
- <pt x="-59" y="-296" on="1"/>
- <pt x="474" y="1480" on="1"/>
- <pt x="629" y="1480" on="1"/>
- <pt x="96" y="-296" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 12 values pushed */
- 3 0 1 0 2 1 0 14 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="space"/><!-- contains no outline data -->
-
- <TTGlyph name="sterling" xMin="121" yMin="0" xMax="966" yMax="1517">
- <contour>
- <pt x="121" y="0" on="1"/>
- <pt x="121" y="173" on="1"/>
- <pt x="330" y="240" on="0"/>
- <pt x="331" y="489" on="1"/>
- <pt x="331" y="716" on="1"/>
- <pt x="152" y="716" on="1"/>
- <pt x="152" y="864" on="1"/>
- <pt x="331" y="864" on="1"/>
- <pt x="331" y="1079" on="1"/>
- <pt x="331" y="1292" on="0"/>
- <pt x="432" y="1404" on="1"/>
- <pt x="533" y="1517" on="0"/>
- <pt x="725" y="1517" on="1"/>
- <pt x="827" y="1517" on="0"/>
- <pt x="951" y="1487" on="1"/>
- <pt x="951" y="1320" on="1"/>
- <pt x="822" y="1369" on="0"/>
- <pt x="716" y="1369" on="1"/>
- <pt x="528" y="1369" on="0"/>
- <pt x="528" y="1139" on="1"/>
- <pt x="528" y="864" on="1"/>
- <pt x="744" y="864" on="1"/>
- <pt x="744" y="716" on="1"/>
- <pt x="528" y="716" on="1"/>
- <pt x="528" y="589" on="1"/>
- <pt x="528" y="409" on="0"/>
- <pt x="480" y="319" on="1"/>
- <pt x="442" y="245" on="0"/>
- <pt x="355" y="173" on="1"/>
- <pt x="966" y="173" on="1"/>
- <pt x="966" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 97 values pushed */
- 0 0 17 40 12 48 196 12 0 1 19 15 8 3 0 6 3 0 24 3 2 4 1 3 1
- 14 0 0 0 0 23 22 5 4 7 3 6 29 28 1 13 2 0 2 4 48 196 21 20 7
- 6 3 30 0 1 2 0 14 28 19 3 2 0 0 24 23 20 19 4 3 3 1 4 48 196
- 30 29 1 15 14 1 22 21 1 8 7 4 3 3 6 5 1 1 0 1 6 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="t" xMin="29" yMin="-25" xMax="559" yMax="1302">
- <contour>
- <pt x="530" y="-6" on="1"/>
- <pt x="470" y="-25" on="0"/>
- <pt x="417" y="-25" on="1"/>
- <pt x="152" y="-25" on="0"/>
- <pt x="152" y="300" on="1"/>
- <pt x="152" y="938" on="1"/>
- <pt x="29" y="938" on="1"/>
- <pt x="29" y="1086" on="1"/>
- <pt x="152" y="1086" on="1"/>
- <pt x="152" y="1283" on="1"/>
- <pt x="349" y="1302" on="1"/>
- <pt x="349" y="1086" on="1"/>
- <pt x="559" y="1086" on="1"/>
- <pt x="559" y="938" on="1"/>
- <pt x="349" y="938" on="1"/>
- <pt x="349" y="336" on="1"/>
- <pt x="349" y="207" on="0"/>
- <pt x="371" y="165" on="1"/>
- <pt x="393" y="123" on="0"/>
- <pt x="463" y="123" on="1"/>
- <pt x="501" y="123" on="0"/>
- <pt x="530" y="134" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 76 values pushed */
- 0 0 19 40 2 48 196 2 2 1 21 15 4 3 5 2 3 0 10 9 2 13 7 1 0
- 2 0 0 0 14 13 6 5 7 3 7 1 4 48 196 12 11 8 7 1 3 14 0 0 15
- 14 11 10 4 3 4 1 4 48 196 13 12 1 21 0 1 9 8 5 4 3 7 6 1 4
- 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tbar" xMin="29" yMin="-25" xMax="559" yMax="1302">
- <contour>
- <pt x="152" y="568" on="1"/>
- <pt x="29" y="568" on="1"/>
- <pt x="29" y="691" on="1"/>
- <pt x="152" y="691" on="1"/>
- <pt x="152" y="938" on="1"/>
- <pt x="29" y="938" on="1"/>
- <pt x="29" y="1086" on="1"/>
- <pt x="152" y="1086" on="1"/>
- <pt x="152" y="1283" on="1"/>
- <pt x="349" y="1302" on="1"/>
- <pt x="349" y="1086" on="1"/>
- <pt x="559" y="1086" on="1"/>
- <pt x="559" y="938" on="1"/>
- <pt x="349" y="938" on="1"/>
- <pt x="349" y="691" on="1"/>
- <pt x="559" y="691" on="1"/>
- <pt x="559" y="568" on="1"/>
- <pt x="349" y="568" on="1"/>
- <pt x="349" y="336" on="1"/>
- <pt x="349" y="207" on="0"/>
- <pt x="371" y="165" on="1"/>
- <pt x="393" y="123" on="0"/>
- <pt x="463" y="123" on="1"/>
- <pt x="501" y="123" on="0"/>
- <pt x="530" y="134" on="1"/>
- <pt x="530" y="-6" on="1"/>
- <pt x="470" y="-25" on="0"/>
- <pt x="417" y="-25" on="1"/>
- <pt x="152" y="-25" on="0"/>
- <pt x="152" y="300" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 97 values pushed */
- 0 0 22 40 27 48 196 27 2 1 29 24 18 3 0 2 3 0 9 8 2 13 6 1 25
- 2 0 0 0 13 12 5 4 7 3 6 17 16 1 0 6 3 2 2 4 48 196 15 14 3
- 2 3 0 11 10 7 6 1 3 14 0 0 18 17 14 13 10 9 4 5 0 1 4 48 196
- 16 15 12 11 3 25 24 1 29 8 7 4 3 0 5 6 5 2 1 3 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tcaron" xMin="29" yMin="-25" xMax="719" yMax="1688">
- <contour>
- <pt x="530" y="-6" on="1"/>
- <pt x="470" y="-25" on="0"/>
- <pt x="417" y="-25" on="1"/>
- <pt x="152" y="-25" on="0"/>
- <pt x="152" y="300" on="1"/>
- <pt x="152" y="938" on="1"/>
- <pt x="29" y="938" on="1"/>
- <pt x="29" y="1086" on="1"/>
- <pt x="152" y="1086" on="1"/>
- <pt x="152" y="1283" on="1"/>
- <pt x="349" y="1302" on="1"/>
- <pt x="349" y="1086" on="1"/>
- <pt x="559" y="1086" on="1"/>
- <pt x="559" y="938" on="1"/>
- <pt x="349" y="938" on="1"/>
- <pt x="349" y="336" on="1"/>
- <pt x="349" y="207" on="0"/>
- <pt x="371" y="165" on="1"/>
- <pt x="393" y="123" on="0"/>
- <pt x="463" y="123" on="1"/>
- <pt x="501" y="123" on="0"/>
- <pt x="530" y="134" on="1"/>
- </contour>
- <contour>
- <pt x="522" y="1234" on="1"/>
- <pt x="522" y="1293" on="1"/>
- <pt x="598" y="1314" on="0"/>
- <pt x="598" y="1474" on="1"/>
- <pt x="598" y="1491" on="1"/>
- <pt x="522" y="1491" on="1"/>
- <pt x="522" y="1688" on="1"/>
- <pt x="719" y="1688" on="1"/>
- <pt x="719" y="1517" on="1"/>
- <pt x="718" y="1255" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 103 values pushed */
- 0 0 19 40 2 48 196 2 2 30 27 26 25 23 22 10 9 8 28 7 3 1 21 15 4
- 3 5 2 3 0 1 0 2 0 0 0 14 13 6 5 7 3 7 1 4 48 196 29 28 1
- 0 12 11 8 7 1 3 14 26 25 2 29 12 3 0 0 28 27 23 22 4 3 29 15 14
- 11 10 4 3 4 2 4 48 196 30 29 1 13 12 1 21 0 1 9 8 5 4 3 7 6
- 1 5 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tcommaaccent" xMin="29" yMin="-432" xMax="559" yMax="1302">
- <contour>
- <pt x="530" y="-6" on="1"/>
- <pt x="470" y="-25" on="0"/>
- <pt x="417" y="-25" on="1"/>
- <pt x="152" y="-25" on="0"/>
- <pt x="152" y="300" on="1"/>
- <pt x="152" y="938" on="1"/>
- <pt x="29" y="938" on="1"/>
- <pt x="29" y="1086" on="1"/>
- <pt x="152" y="1086" on="1"/>
- <pt x="152" y="1283" on="1"/>
- <pt x="349" y="1302" on="1"/>
- <pt x="349" y="1086" on="1"/>
- <pt x="559" y="1086" on="1"/>
- <pt x="559" y="938" on="1"/>
- <pt x="349" y="938" on="1"/>
- <pt x="349" y="336" on="1"/>
- <pt x="349" y="207" on="0"/>
- <pt x="371" y="165" on="1"/>
- <pt x="393" y="123" on="0"/>
- <pt x="463" y="123" on="1"/>
- <pt x="501" y="123" on="0"/>
- <pt x="530" y="134" on="1"/>
- </contour>
- <contour>
- <pt x="299" y="0" on="1"/>
- <pt x="396" y="0" on="1"/>
- <pt x="336" y="-109" on="1"/>
- <pt x="408" y="-111" on="0"/>
- <pt x="460" y="-148" on="1"/>
- <pt x="530" y="-197" on="0"/>
- <pt x="530" y="-268" on="1"/>
- <pt x="530" y="-337" on="0"/>
- <pt x="472" y="-384" on="1"/>
- <pt x="413" y="-432" on="0"/>
- <pt x="327" y="-432" on="1"/>
- <pt x="259" y="-432" on="0"/>
- <pt x="183" y="-411" on="1"/>
- <pt x="183" y="-330" on="1"/>
- <pt x="233" y="-345" on="0"/>
- <pt x="287" y="-345" on="1"/>
- <pt x="391" y="-345" on="0"/>
- <pt x="391" y="-271" on="1"/>
- <pt x="391" y="-178" on="0"/>
- <pt x="204" y="-175" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 109 values pushed */
- 0 0 37 44 32 19 40 2 48 196 2 2 1 21 15 4 3 5 2 3 0 10 9 2 13
- 7 1 41 35 34 24 23 22 0 7 13 32 2 0 0 0 14 13 6 5 7 3 7 1 4
- 48 196 12 11 8 7 1 3 14 0 0 39 42 28 48 196 23 0 10 2 41 35 34 24 22
- 5 10 4 3 0 0 15 14 11 10 4 3 4 1 4 48 196 13 12 1 28 21 0 2 9
- 8 5 4 3 7 6 1 4 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tcommabelow" xMin="29" yMin="-432" xMax="559" yMax="1302">
- <component glyphName="t" x="0" y="0" flags="0x4"/>
- <component glyphName="Unterkomma" x="7" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="thorn" xMin="154" yMin="-395" xMax="1052" yMax="1579">
- <contour>
- <pt x="351" y="-395" on="1"/>
- <pt x="154" y="-395" on="1"/>
- <pt x="154" y="1579" on="1"/>
- <pt x="351" y="1579" on="1"/>
- <pt x="351" y="882" on="1"/>
- <pt x="407" y="984" on="0"/>
- <pt x="469" y="1036" on="1"/>
- <pt x="557" y="1110" on="0"/>
- <pt x="676" y="1110" on="1"/>
- <pt x="845" y="1110" on="0"/>
- <pt x="948" y="963" on="1"/>
- <pt x="1052" y="816" on="0"/>
- <pt x="1052" y="572" on="1"/>
- <pt x="1052" y="287" on="0"/>
- <pt x="918" y="131" on="1"/>
- <pt x="785" y="-25" on="0"/>
- <pt x="540" y="-25" on="1"/>
- <pt x="449" y="-25" on="0"/>
- <pt x="351" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="351" y="703" on="1"/>
- <pt x="351" y="149" on="1"/>
- <pt x="488" y="123" on="0"/>
- <pt x="557" y="123" on="1"/>
- <pt x="839" y="123" on="0"/>
- <pt x="839" y="552" on="1"/>
- <pt x="839" y="733" on="0"/>
- <pt x="783" y="835" on="1"/>
- <pt x="728" y="938" on="0"/>
- <pt x="634" y="938" on="1"/>
- <pt x="508" y="938" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 68 values pushed */
- 0 0 28 30 8 22 40 16 48 196 16 2 8 1 1 1 20 19 4 3 1 2 3 0 0
- 1 18 2 0 2 0 3 2 1 1 0 1 2 0 14 0 0 24 9 12 48 196 12 0 0
- 0 20 19 18 4 3 0 4 5 1 1 4 48 196 2 1 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="three" xMin="153" yMin="-37" xMax="966" yMax="1517">
- <contour>
- <pt x="153" y="11" on="1"/>
- <pt x="153" y="195" on="1"/>
- <pt x="160" y="192" on="1"/>
- <pt x="186" y="181" on="0"/>
- <pt x="197" y="178" on="1"/>
- <pt x="306" y="138" on="0"/>
- <pt x="345" y="128" on="1"/>
- <pt x="410" y="111" on="0"/>
- <pt x="463" y="111" on="1"/>
- <pt x="614" y="111" on="0"/>
- <pt x="689" y="195" on="1"/>
- <pt x="755" y="267" on="0"/>
- <pt x="755" y="400" on="1"/>
- <pt x="755" y="555" on="0"/>
- <pt x="654" y="637" on="1"/>
- <pt x="554" y="719" on="0"/>
- <pt x="368" y="719" on="1"/>
- <pt x="290" y="719" on="1"/>
- <pt x="290" y="852" on="1"/>
- <pt x="358" y="853" on="1"/>
- <pt x="530" y="856" on="0"/>
- <pt x="623" y="932" on="1"/>
- <pt x="720" y="1010" on="0"/>
- <pt x="720" y="1147" on="1"/>
- <pt x="720" y="1369" on="0"/>
- <pt x="481" y="1369" on="1"/>
- <pt x="358" y="1369" on="0"/>
- <pt x="173" y="1286" on="1"/>
- <pt x="173" y="1458" on="1"/>
- <pt x="354" y="1517" on="0"/>
- <pt x="493" y="1517" on="1"/>
- <pt x="734" y="1517" on="0"/>
- <pt x="839" y="1402" on="1"/>
- <pt x="917" y="1317" on="0"/>
- <pt x="917" y="1176" on="1"/>
- <pt x="917" y="1017" on="0"/>
- <pt x="805" y="914" on="1"/>
- <pt x="739" y="853" on="0"/>
- <pt x="609" y="802" on="1"/>
- <pt x="723" y="772" on="0"/>
- <pt x="781" y="738" on="1"/>
- <pt x="966" y="631" on="0"/>
- <pt x="966" y="408" on="1"/>
- <pt x="966" y="206" on="0"/>
- <pt x="833" y="85" on="1"/>
- <pt x="700" y="-37" on="0"/>
- <pt x="483" y="-37" on="1"/>
- <pt x="366" y="-37" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 65 values pushed */
- 0 0 25 40 30 8 40 46 48 196 46 2 30 0 1 1 38 28 27 18 17 16 1 0 8
- 0 2 3 0 0 14 0 0 23 41 34 12 9 42 48 196 38 18 17 16 4 13 42 34 27
- 0 0 28 27 23 1 0 1 5 48 196 1 0 1 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- CALL[ ]
- SZP0[ ]
- SZP1[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="threequarters" xMin="111" yMin="-37" xMax="1597" yMax="1517">
- <contour>
- <pt x="123" y="1353" on="1"/>
- <pt x="123" y="1465" on="1"/>
- <pt x="237" y="1503" on="0"/>
- <pt x="349" y="1503" on="1"/>
- <pt x="631" y="1503" on="0"/>
- <pt x="631" y="1295" on="1"/>
- <pt x="631" y="1199" on="0"/>
- <pt x="562" y="1137" on="1"/>
- <pt x="521" y="1101" on="0"/>
- <pt x="440" y="1071" on="1"/>
- <pt x="568" y="1038" on="0"/>
- <pt x="619" y="970" on="1"/>
- <pt x="660" y="914" on="0"/>
- <pt x="660" y="832" on="1"/>
- <pt x="660" y="711" on="0"/>
- <pt x="573" y="641" on="1"/>
- <pt x="487" y="570" on="0"/>
- <pt x="335" y="570" on="1"/>
- <pt x="233" y="570" on="0"/>
- <pt x="111" y="599" on="1"/>
- <pt x="111" y="721" on="1"/>
- <pt x="246" y="670" on="0"/>
- <pt x="324" y="670" on="1"/>
- <pt x="504" y="670" on="0"/>
- <pt x="504" y="831" on="1"/>
- <pt x="504" y="1015" on="0"/>
- <pt x="244" y="1015" on="1"/>
- <pt x="193" y="1015" on="1"/>
- <pt x="193" y="1108" on="1"/>
- <pt x="237" y="1108" on="1"/>
- <pt x="481" y="1108" on="0"/>
- <pt x="481" y="1275" on="1"/>
- <pt x="481" y="1403" on="0"/>
- <pt x="326" y="1403" on="1"/>
- <pt x="235" y="1403" on="0"/>
- </contour>
- <contour>
- <pt x="1338" y="0" on="1"/>
- <pt x="1338" y="242" on="1"/>
- <pt x="931" y="242" on="1"/>
- <pt x="931" y="355" on="1"/>
- <pt x="1334" y="888" on="1"/>
- <pt x="1473" y="888" on="1"/>
- <pt x="1473" y="359" on="1"/>
- <pt x="1597" y="359" on="1"/>
- <pt x="1597" y="242" on="1"/>
- <pt x="1473" y="242" on="1"/>
- <pt x="1473" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="1060" y="359" on="1"/>
- <pt x="1338" y="359" on="1"/>
- <pt x="1338" y="723" on="1"/>
- </contour>
- <contour>
- <pt x="284" y="-37" on="1"/>
- <pt x="1372" y="1517" on="1"/>
- <pt x="1507" y="1517" on="1"/>
- <pt x="419" y="-37" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 126 values pushed */
- 0 0 33 11 3 22 11 17 48 196 17 48 20 19 17 4 39 41 3 38 41 36 2 51 50
- 29 28 27 26 9 1 0 9 13 3 39 52 49 45 35 4 13 36 0 0 47 46 42 41 38
- 3 36 1 4 48 196 40 39 1 44 43 37 36 3 2 0 14 0 0 31 39 5 24 37 13
- 48 196 50 40 35 2 51 43 42 3 13 40 52 49 46 39 38 37 29 28 27 26 20 19 9
- 1 0 15 13 13 5 35 0 0 48 47 36 35 22 3 40 1 4 48 196 45 44 41 40 3
- 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00100]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="threesuperior" xMin="74" yMin="570" xMax="623" yMax="1503">
- <contour>
- <pt x="86" y="1353" on="1"/>
- <pt x="86" y="1465" on="1"/>
- <pt x="200" y="1503" on="0"/>
- <pt x="312" y="1503" on="1"/>
- <pt x="594" y="1503" on="0"/>
- <pt x="594" y="1295" on="1"/>
- <pt x="594" y="1199" on="0"/>
- <pt x="525" y="1137" on="1"/>
- <pt x="484" y="1101" on="0"/>
- <pt x="403" y="1071" on="1"/>
- <pt x="531" y="1038" on="0"/>
- <pt x="582" y="970" on="1"/>
- <pt x="623" y="914" on="0"/>
- <pt x="623" y="832" on="1"/>
- <pt x="623" y="711" on="0"/>
- <pt x="536" y="641" on="1"/>
- <pt x="450" y="570" on="0"/>
- <pt x="298" y="570" on="1"/>
- <pt x="196" y="570" on="0"/>
- <pt x="74" y="599" on="1"/>
- <pt x="74" y="721" on="1"/>
- <pt x="209" y="670" on="0"/>
- <pt x="287" y="670" on="1"/>
- <pt x="467" y="670" on="0"/>
- <pt x="467" y="831" on="1"/>
- <pt x="467" y="1015" on="0"/>
- <pt x="207" y="1015" on="1"/>
- <pt x="156" y="1015" on="1"/>
- <pt x="156" y="1108" on="1"/>
- <pt x="200" y="1108" on="1"/>
- <pt x="444" y="1108" on="0"/>
- <pt x="444" y="1275" on="1"/>
- <pt x="444" y="1403" on="0"/>
- <pt x="289" y="1403" on="1"/>
- <pt x="198" y="1403" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 43 values pushed */
- 0 0 33 11 3 22 11 17 48 196 29 28 27 26 20 19 17 9 3 1 0 14 0 0 31
- 39 5 24 37 13 48 196 29 28 27 26 20 19 13 9 5 1 0
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="tilde" xMin="8" yMin="1283" xMax="674" yMax="1517">
- <contour>
- <pt x="8" y="1283" on="1"/>
- <pt x="15" y="1376" on="0"/>
- <pt x="40" y="1427" on="1"/>
- <pt x="86" y="1517" on="0"/>
- <pt x="195" y="1517" on="1"/>
- <pt x="267" y="1517" on="0"/>
- <pt x="328" y="1479" on="1"/>
- <pt x="388" y="1442" on="1"/>
- <pt x="445" y="1407" on="0"/>
- <pt x="475" y="1407" on="1"/>
- <pt x="540" y="1407" on="0"/>
- <pt x="551" y="1517" on="1"/>
- <pt x="674" y="1517" on="1"/>
- <pt x="667" y="1423" on="0"/>
- <pt x="642" y="1373" on="1"/>
- <pt x="597" y="1283" on="0"/>
- <pt x="489" y="1283" on="1"/>
- <pt x="417" y="1283" on="0"/>
- <pt x="354" y="1322" on="1"/>
- <pt x="294" y="1359" on="1"/>
- <pt x="239" y="1393" on="0"/>
- <pt x="207" y="1393" on="1"/>
- <pt x="142" y="1393" on="0"/>
- <pt x="131" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 30 values pushed */
- 0 0 21 6 4 9 6 16 48 196 4 0 1 12 11 2 13 0 0 1 23 0 16 0 0
- 14 23 12 11 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- MDRP[00100]
- MDRP[00000]
- MDRP[00000]
- SZP0[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="trademark" xMin="222" yMin="740" xMax="1764" yMax="1480">
- <contour>
- <pt x="469" y="740" on="1"/>
- <pt x="469" y="1357" on="1"/>
- <pt x="222" y="1357" on="1"/>
- <pt x="222" y="1480" on="1"/>
- <pt x="888" y="1480" on="1"/>
- <pt x="888" y="1357" on="1"/>
- <pt x="641" y="1357" on="1"/>
- <pt x="641" y="740" on="1"/>
- </contour>
- <contour>
- <pt x="1012" y="740" on="1"/>
- <pt x="1012" y="1480" on="1"/>
- <pt x="1245" y="1480" on="1"/>
- <pt x="1401" y="1053" on="1"/>
- <pt x="1551" y="1480" on="1"/>
- <pt x="1764" y="1480" on="1"/>
- <pt x="1764" y="740" on="1"/>
- <pt x="1591" y="740" on="1"/>
- <pt x="1591" y="1277" on="1"/>
- <pt x="1428" y="802" on="1"/>
- <pt x="1310" y="802" on="1"/>
- <pt x="1147" y="1234" on="1"/>
- <pt x="1147" y="740" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 97 values pushed */
- 1 19 16 2 1 1 3 0 1 18 17 11 3 1 0 3 0 0 0 6 5 2 1 6 3
- 3 1 4 48 196 20 15 14 8 7 0 5 0 13 12 10 9 4 3 0 5 14 18 17 12
- 11 10 5 15 19 3 5 4 2 8 6 3 3 2 0 0 0 16 15 13 1 13 9 8 18
- 1 19 7 6 13 1 0 3 4 48 196 14 13 1 20 19 1 1 0 1 3 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00000]
- MDRP[00000]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="two" xMin="102" yMin="0" xMax="941" yMax="1517">
- <contour>
- <pt x="102" y="0" on="1"/>
- <pt x="102" y="173" on="1"/>
- <pt x="170" y="333" on="0"/>
- <pt x="332" y="502" on="1"/>
- <pt x="440" y="612" on="1"/>
- <pt x="538" y="712" on="1"/>
- <pt x="731" y="909" on="0"/>
- <pt x="731" y="1107" on="1"/>
- <pt x="731" y="1248" on="0"/>
- <pt x="657" y="1315" on="1"/>
- <pt x="597" y="1370" on="0"/>
- <pt x="491" y="1370" on="1"/>
- <pt x="353" y="1370" on="0"/>
- <pt x="139" y="1250" on="1"/>
- <pt x="139" y="1424" on="1"/>
- <pt x="342" y="1517" on="0"/>
- <pt x="517" y="1517" on="1"/>
- <pt x="711" y="1517" on="0"/>
- <pt x="826" y="1404" on="1"/>
- <pt x="941" y="1292" on="0"/>
- <pt x="941" y="1102" on="1"/>
- <pt x="941" y="971" on="0"/>
- <pt x="882" y="870" on="1"/>
- <pt x="820" y="766" on="0"/>
- <pt x="658" y="620" on="1"/>
- <pt x="589" y="558" on="1"/>
- <pt x="382" y="370" on="0"/>
- <pt x="340" y="173" on="1"/>
- <pt x="933" y="173" on="1"/>
- <pt x="933" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 58 values pushed */
- 0 0 11 40 16 48 196 16 0 1 14 13 2 0 1 3 0 0 0 28 27 1 13 2 0
- 1 4 48 196 29 0 1 0 14 0 0 7 9 20 48 196 27 28 13 2 20 28 29 28 1
- 14 13 1 1 0 1 3 0
- LOOPCALL[ ]
- SRP0[ ]
- MDRP[00100]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="twosuperior" xMin="74" yMin="592" xMax="639" yMax="1503">
- <contour>
- <pt x="74" y="592" on="1"/>
- <pt x="74" y="714" on="1"/>
- <pt x="142" y="832" on="0"/>
- <pt x="256" y="933" on="1"/>
- <pt x="326" y="995" on="1"/>
- <pt x="482" y="1133" on="0"/>
- <pt x="482" y="1255" on="1"/>
- <pt x="482" y="1401" on="0"/>
- <pt x="321" y="1401" on="1"/>
- <pt x="226" y="1401" on="0"/>
- <pt x="96" y="1332" on="1"/>
- <pt x="96" y="1449" on="1"/>
- <pt x="227" y="1503" on="0"/>
- <pt x="347" y="1503" on="1"/>
- <pt x="478" y="1503" on="0"/>
- <pt x="559" y="1435" on="1"/>
- <pt x="639" y="1367" on="0"/>
- <pt x="639" y="1260" on="1"/>
- <pt x="639" y="1120" on="0"/>
- <pt x="455" y="967" on="1"/>
- <pt x="402" y="923" on="1"/>
- <pt x="269" y="813" on="0"/>
- <pt x="246" y="714" on="1"/>
- <pt x="635" y="714" on="1"/>
- <pt x="635" y="592" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 45 values pushed */
- 0 0 8 11 13 48 196 11 10 2 13 13 1 0 0 24 0 38 1 1 1 4 48 196 23
- 22 1 2 0 14 0 0 6 37 17 48 196 24 23 22 17 11 10 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[1]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="u" xMin="142" yMin="-25" xMax="984" yMax="1086">
- <contour>
- <pt x="787" y="0" on="1"/>
- <pt x="787" y="203" on="1"/>
- <pt x="714" y="102" on="0"/>
- <pt x="644" y="50" on="1"/>
- <pt x="541" y="-25" on="0"/>
- <pt x="418" y="-25" on="1"/>
- <pt x="142" y="-25" on="0"/>
- <pt x="142" y="306" on="1"/>
- <pt x="142" y="1086" on="1"/>
- <pt x="339" y="1086" on="1"/>
- <pt x="339" y="370" on="1"/>
- <pt x="339" y="239" on="0"/>
- <pt x="366" y="192" on="1"/>
- <pt x="394" y="145" on="0"/>
- <pt x="470" y="145" on="1"/>
- <pt x="632" y="145" on="0"/>
- <pt x="787" y="382" on="1"/>
- <pt x="787" y="1086" on="1"/>
- <pt x="984" y="1086" on="1"/>
- <pt x="984" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 54 values pushed */
- 0 0 14 30 5 48 196 5 2 16 10 7 1 4 8 0 3 19 0 1 0 18 17 9 8
- 1 3 14 0 0 17 16 1 0 4 3 18 10 9 4 1 7 2 4 48 196 19 18 1 8
- 7 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="uacute" xMin="142" yMin="-25" xMax="984" yMax="1604">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="308" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ubreve" xMin="142" yMin="-25" xMax="984" yMax="1604">
- <contour>
- <pt x="787" y="0" on="1"/>
- <pt x="787" y="203" on="1"/>
- <pt x="714" y="102" on="0"/>
- <pt x="644" y="50" on="1"/>
- <pt x="541" y="-25" on="0"/>
- <pt x="418" y="-25" on="1"/>
- <pt x="142" y="-25" on="0"/>
- <pt x="142" y="306" on="1"/>
- <pt x="142" y="1086" on="1"/>
- <pt x="339" y="1086" on="1"/>
- <pt x="339" y="370" on="1"/>
- <pt x="339" y="239" on="0"/>
- <pt x="366" y="192" on="1"/>
- <pt x="394" y="145" on="0"/>
- <pt x="470" y="145" on="1"/>
- <pt x="632" y="145" on="0"/>
- <pt x="787" y="382" on="1"/>
- <pt x="787" y="1086" on="1"/>
- <pt x="984" y="1086" on="1"/>
- <pt x="984" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="230" y="1604" on="1"/>
- <pt x="353" y="1604" on="1"/>
- <pt x="374" y="1511" on="0"/>
- <pt x="428" y="1470" on="1"/>
- <pt x="480" y="1431" on="0"/>
- <pt x="563" y="1431" on="1"/>
- <pt x="657" y="1431" on="0"/>
- <pt x="711" y="1480" on="1"/>
- <pt x="754" y="1520" on="0"/>
- <pt x="773" y="1604" on="1"/>
- <pt x="896" y="1604" on="1"/>
- <pt x="880" y="1470" on="0"/>
- <pt x="807" y="1389" on="1"/>
- <pt x="713" y="1283" on="0"/>
- <pt x="563" y="1283" on="1"/>
- <pt x="406" y="1283" on="0"/>
- <pt x="311" y="1398" on="1"/>
- <pt x="247" y="1475" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 79 values pushed */
- 0 0 25 40 34 14 30 5 48 196 5 2 16 10 7 1 4 8 0 3 30 29 21 20 4
- 13 34 8 19 0 1 0 18 17 9 8 1 3 14 30 18 0 2 29 21 2 0 9 3 20
- 9 7 2 0 0 17 16 1 0 4 3 18 10 9 4 1 7 2 4 48 196 19 18 1 8
- 7 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SRP0[ ]
- MDRP[00100]
- LOOPCALL[ ]
- CALL[ ]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ucircumflex" xMin="142" yMin="-25" xMax="984" yMax="1604">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="circumflex" x="222" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="udieresis" xMin="142" yMin="-25" xMax="984" yMax="1456">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="222" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ugrave" xMin="142" yMin="-25" xMax="984" yMax="1604">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="grave" x="148" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="uhungarumlaut" xMin="142" yMin="-25" xMax="1073" yMax="1604">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="hungarumlaut" x="341" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="umacron" xMin="142" yMin="-25" xMax="984" yMax="1431">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="macron" x="222" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="underscore" xMin="0" yMin="-148" xMax="1139" yMax="0">
- <contour>
- <pt x="0" y="-148" on="1"/>
- <pt x="0" y="0" on="1"/>
- <pt x="1139" y="0" on="1"/>
- <pt x="1139" y="-148" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 24 values pushed */
- 0 0 3 0 7 1 1 1 4 48 196 2 1 1 0 14 3 2 1 1 0 1 2 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="uogonek" xMin="142" yMin="-370" xMax="984" yMax="1086">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="ogonek" x="465" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="uring" xMin="142" yMin="-25" xMax="984" yMax="1737">
- <component glyphName="u" x="0" y="0" flags="0x4"/>
- <component glyphName="ring" x="222" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="utilde" xMin="142" yMin="-25" xMax="984" yMax="1517">
- <contour>
- <pt x="787" y="0" on="1"/>
- <pt x="787" y="203" on="1"/>
- <pt x="714" y="102" on="0"/>
- <pt x="644" y="50" on="1"/>
- <pt x="541" y="-25" on="0"/>
- <pt x="418" y="-25" on="1"/>
- <pt x="142" y="-25" on="0"/>
- <pt x="142" y="306" on="1"/>
- <pt x="142" y="1086" on="1"/>
- <pt x="339" y="1086" on="1"/>
- <pt x="339" y="370" on="1"/>
- <pt x="339" y="239" on="0"/>
- <pt x="366" y="192" on="1"/>
- <pt x="394" y="145" on="0"/>
- <pt x="470" y="145" on="1"/>
- <pt x="632" y="145" on="0"/>
- <pt x="787" y="382" on="1"/>
- <pt x="787" y="1086" on="1"/>
- <pt x="984" y="1086" on="1"/>
- <pt x="984" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="230" y="1283" on="1"/>
- <pt x="237" y="1377" on="0"/>
- <pt x="262" y="1427" on="1"/>
- <pt x="308" y="1517" on="0"/>
- <pt x="417" y="1517" on="1"/>
- <pt x="488" y="1517" on="0"/>
- <pt x="550" y="1479" on="1"/>
- <pt x="610" y="1442" on="1"/>
- <pt x="667" y="1407" on="0"/>
- <pt x="697" y="1407" on="1"/>
- <pt x="762" y="1407" on="0"/>
- <pt x="773" y="1517" on="1"/>
- <pt x="896" y="1517" on="1"/>
- <pt x="889" y="1423" on="0"/>
- <pt x="864" y="1373" on="1"/>
- <pt x="819" y="1283" on="0"/>
- <pt x="711" y="1283" on="1"/>
- <pt x="639" y="1283" on="0"/>
- <pt x="576" y="1322" on="1"/>
- <pt x="516" y="1359" on="1"/>
- <pt x="461" y="1393" on="0"/>
- <pt x="429" y="1393" on="1"/>
- <pt x="364" y="1393" on="0"/>
- <pt x="353" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 93 values pushed */
- 0 0 41 6 24 29 6 36 14 30 5 48 196 24 0 5 2 36 1 43 36 20 3 0 8
- 3 0 16 10 7 1 4 8 0 3 1 32 31 2 13 0 0 19 0 1 0 18 17 9 8
- 1 3 14 32 18 0 2 43 31 2 0 9 3 20 9 7 2 0 0 17 16 1 0 4 3
- 18 10 9 4 1 7 2 4 48 196 19 18 1 8 7 1 2 0
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP0[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SZP0[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- MDAP[1]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="v" xMin="19" yMin="0" xMax="1012" yMax="1086">
- <contour>
- <pt x="404" y="0" on="1"/>
- <pt x="19" y="1086" on="1"/>
- <pt x="218" y="1086" on="1"/>
- <pt x="519" y="241" on="1"/>
- <pt x="837" y="1086" on="1"/>
- <pt x="1012" y="1086" on="1"/>
- <pt x="601" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 22 values pushed */
- 3 1 0 2 6 0 1 0 5 4 2 1 1 3 14 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="w" xMin="11" yMin="0" xMax="1465" yMax="1086">
- <contour>
- <pt x="273" y="0" on="1"/>
- <pt x="11" y="1086" on="1"/>
- <pt x="204" y="1086" on="1"/>
- <pt x="400" y="268" on="1"/>
- <pt x="650" y="1086" on="1"/>
- <pt x="847" y="1086" on="1"/>
- <pt x="1067" y="265" on="1"/>
- <pt x="1295" y="1086" on="1"/>
- <pt x="1465" y="1086" on="1"/>
- <pt x="1160" y="0" on="1"/>
- <pt x="962" y="0" on="1"/>
- <pt x="732" y="841" on="1"/>
- <pt x="472" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 35 values pushed */
- 11 6 3 3 1 0 3 12 10 9 0 3 0 8 7 5 4 2 1 1 5 14 12 11 10
- 9 8 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="wcircumflex" xMin="11" yMin="0" xMax="1465" yMax="1604">
- <contour>
- <pt x="273" y="0" on="1"/>
- <pt x="11" y="1086" on="1"/>
- <pt x="204" y="1086" on="1"/>
- <pt x="400" y="268" on="1"/>
- <pt x="650" y="1086" on="1"/>
- <pt x="847" y="1086" on="1"/>
- <pt x="1067" y="265" on="1"/>
- <pt x="1295" y="1086" on="1"/>
- <pt x="1465" y="1086" on="1"/>
- <pt x="1160" y="0" on="1"/>
- <pt x="962" y="0" on="1"/>
- <pt x="732" y="841" on="1"/>
- <pt x="472" y="0" on="1"/>
- </contour>
- <contour>
- <pt x="398" y="1283" on="1"/>
- <pt x="639" y="1604" on="1"/>
- <pt x="857" y="1604" on="1"/>
- <pt x="1098" y="1283" on="1"/>
- <pt x="950" y="1283" on="1"/>
- <pt x="749" y="1485" on="1"/>
- <pt x="747" y="1485" on="1"/>
- <pt x="546" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 58 values pushed */
- 19 18 2 14 13 3 11 6 3 3 1 0 3 15 14 1 20 17 16 13 3 12 10 9 0
- 3 3 0 8 7 5 4 2 1 1 5 14 20 19 18 17 16 15 14 13 12 11 10 9 8
- 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="x" xMin="28" yMin="0" xMax="993" yMax="1086">
- <contour>
- <pt x="28" y="0" on="1"/>
- <pt x="381" y="574" on="1"/>
- <pt x="40" y="1086" on="1"/>
- <pt x="268" y="1086" on="1"/>
- <pt x="540" y="679" on="1"/>
- <pt x="784" y="1086" on="1"/>
- <pt x="966" y="1086" on="1"/>
- <pt x="634" y="539" on="1"/>
- <pt x="993" y="0" on="1"/>
- <pt x="766" y="0" on="1"/>
- <pt x="472" y="436" on="1"/>
- <pt x="210" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 33 values pushed */
- 10 7 4 1 4 2 0 3 11 9 8 0 3 0 6 5 3 2 1 3 14 11 10 9 8
- 7 6 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="y" xMin="19" yMin="-395" xMax="1012" yMax="1086">
- <contour>
- <pt x="404" y="0" on="1"/>
- <pt x="19" y="1086" on="1"/>
- <pt x="219" y="1086" on="1"/>
- <pt x="514" y="253" on="1"/>
- <pt x="838" y="1086" on="1"/>
- <pt x="1012" y="1086" on="1"/>
- <pt x="438" y="-395" on="1"/>
- <pt x="233" y="-395" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 31 values pushed */
- 1 3 1 2 2 0 1 0 2 6 2 0 7 6 1 0 5 4 2 1 1 3 14 7 6
- 5 4 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="yacute" xMin="19" yMin="-395" xMax="1012" yMax="1604">
- <component glyphName="y" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="259" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="ycircumflex" xMin="19" yMin="-395" xMax="1012" yMax="1604">
- <contour>
- <pt x="404" y="0" on="1"/>
- <pt x="19" y="1086" on="1"/>
- <pt x="219" y="1086" on="1"/>
- <pt x="514" y="253" on="1"/>
- <pt x="838" y="1086" on="1"/>
- <pt x="1012" y="1086" on="1"/>
- <pt x="438" y="-395" on="1"/>
- <pt x="233" y="-395" on="1"/>
- </contour>
- <contour>
- <pt x="178" y="1283" on="1"/>
- <pt x="419" y="1604" on="1"/>
- <pt x="637" y="1604" on="1"/>
- <pt x="878" y="1283" on="1"/>
- <pt x="730" y="1283" on="1"/>
- <pt x="529" y="1485" on="1"/>
- <pt x="527" y="1485" on="1"/>
- <pt x="326" y="1283" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 54 values pushed */
- 14 13 2 9 8 3 1 3 1 2 2 0 1 0 2 6 2 0 10 9 1 15 12 11 8
- 3 7 6 1 3 0 5 4 2 1 1 3 14 15 14 13 12 11 10 9 8 7 6 5 4
- 3 2 1 0
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- MDAP[0]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SZP1[ ]
- CALL[ ]
- SZP1[ ]
- SZP0[ ]
- CALL[ ]
- SZP0[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="ydieresis" xMin="19" yMin="-395" xMax="1012" yMax="1456">
- <component glyphName="y" x="0" y="0" flags="0x4"/>
- <component glyphName="dieresis" x="188" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="yen" xMin="25" yMin="0" xMax="1077" yMax="1480">
- <contour>
- <pt x="453" y="0" on="1"/>
- <pt x="453" y="345" on="1"/>
- <pt x="157" y="345" on="1"/>
- <pt x="157" y="469" on="1"/>
- <pt x="453" y="469" on="1"/>
- <pt x="453" y="617" on="1"/>
- <pt x="157" y="617" on="1"/>
- <pt x="157" y="740" on="1"/>
- <pt x="453" y="740" on="1"/>
- <pt x="25" y="1480" on="1"/>
- <pt x="253" y="1480" on="1"/>
- <pt x="575" y="922" on="1"/>
- <pt x="577" y="922" on="1"/>
- <pt x="900" y="1480" on="1"/>
- <pt x="1077" y="1480" on="1"/>
- <pt x="650" y="740" on="1"/>
- <pt x="946" y="740" on="1"/>
- <pt x="946" y="617" on="1"/>
- <pt x="650" y="617" on="1"/>
- <pt x="650" y="469" on="1"/>
- <pt x="946" y="469" on="1"/>
- <pt x="946" y="345" on="1"/>
- <pt x="650" y="345" on="1"/>
- <pt x="650" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 93 values pushed */
- 12 11 2 9 7 3 0 0 18 17 6 5 6 3 7 20 19 4 3 6 3 1 2 4 48
- 196 16 15 8 7 3 22 21 2 1 3 23 0 1 3 0 14 13 10 9 0 3 14 12 11
- 2 15 0 3 21 20 17 16 14 13 6 13 15 10 9 7 6 3 2 6 13 0 0 0 23
- 22 19 18 15 4 4 0 1 4 48 196 8 5 4 1 0 4 0
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- LOOPCALL[ ]
- SRP0[ ]
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- SLOOP[ ]
- MIAP[1]
- ALIGNRP[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="z" xMin="74" yMin="0" xMax="950" yMax="1086">
- <contour>
- <pt x="74" y="0" on="1"/>
- <pt x="74" y="148" on="1"/>
- <pt x="695" y="938" on="1"/>
- <pt x="105" y="938" on="1"/>
- <pt x="105" y="1086" on="1"/>
- <pt x="938" y="1086" on="1"/>
- <pt x="938" y="938" on="1"/>
- <pt x="317" y="148" on="1"/>
- <pt x="950" y="148" on="1"/>
- <pt x="950" y="0" on="1"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 46 values pushed */
- 0 0 6 3 2 7 2 4 8 7 1 7 2 0 2 4 48 196 9 0 1 0 5 4 1
- 14 7 2 2 5 3 3 9 8 1 6 5 1 4 3 1 1 0 1 4 0
- LOOPCALL[ ]
- CALL[ ]
- CALL[ ]
- MIAP[1]
- ALIGNRP[ ]
- CALL[ ]
- SSW[ ]
- SSWCI[ ]
- LOOPCALL[ ]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- <TTGlyph name="zacute" xMin="74" yMin="0" xMax="950" yMax="1604">
- <component glyphName="z" x="0" y="0" flags="0x4"/>
- <component glyphName="acute" x="257" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="zcaron" xMin="74" yMin="0" xMax="950" yMax="1604">
- <component glyphName="z" x="0" y="0" flags="0x4"/>
- <component glyphName="caron" x="174" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="zdotaccent" xMin="74" yMin="0" xMax="950" yMax="1480">
- <component glyphName="z" x="0" y="0" flags="0x4"/>
- <component glyphName="dotaccent" x="168" y="0" flags="0x4"/>
- </TTGlyph>
-
- <TTGlyph name="zero" xMin="80" yMin="-37" xMax="1058" yMax="1517">
- <contour>
- <pt x="569" y="1517" on="1"/>
- <pt x="794" y="1517" on="0"/>
- <pt x="926" y="1309" on="1"/>
- <pt x="1058" y="1101" on="0"/>
- <pt x="1058" y="744" on="1"/>
- <pt x="1058" y="378" on="0"/>
- <pt x="926" y="171" on="1"/>
- <pt x="794" y="-37" on="0"/>
- <pt x="563" y="-37" on="1"/>
- <pt x="365" y="-37" on="0"/>
- <pt x="240" y="132" on="1"/>
- <pt x="80" y="346" on="0"/>
- <pt x="80" y="742" on="1"/>
- <pt x="80" y="1101" on="0"/>
- <pt x="212" y="1308" on="1"/>
- <pt x="344" y="1517" on="0"/>
- </contour>
- <contour>
- <pt x="569" y="1369" on="1"/>
- <pt x="435" y="1369" on="0"/>
- <pt x="363" y="1205" on="1"/>
- <pt x="290" y="1040" on="0"/>
- <pt x="290" y="741" on="1"/>
- <pt x="290" y="444" on="0"/>
- <pt x="363" y="277" on="1"/>
- <pt x="435" y="111" on="0"/>
- <pt x="570" y="111" on="1"/>
- <pt x="692" y="111" on="0"/>
- <pt x="759" y="233" on="1"/>
- <pt x="849" y="395" on="0"/>
- <pt x="849" y="743" on="1"/>
- <pt x="849" y="1045" on="0"/>
- <pt x="776" y="1206" on="1"/>
- <pt x="701" y="1369" on="0"/>
- </contour>
- <instructions><assembly>
- NPUSHB[ ] /* 27 values pushed */
- 0 0 24 40 8 16 40 0 48 196 8 2 0 0 14 0 0 28 43 4 20 9 12 48 196
- 12 4
- MDAP[1]
- MDAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- CALL[ ]
- MIAP[1]
- MIAP[1]
- SSW[ ]
- SSWCI[ ]
- SRP0[ ]
- MIRP[01101]
- SRP0[ ]
- MIRP[01101]
- SSW[ ]
- SSWCI[ ]
- IUP[1]
- IUP[0]
- </assembly></instructions>
- </TTGlyph>
-
- </glyf>
-
- <kern>
- <version value="0"/>
- <kernsubtable coverage="1" format="0">
- <pair l="A" r="C" v="-76"/>
- <pair l="A" r="Ccedilla" v="-80"/>
- <pair l="A" r="G" v="-63"/>
- <pair l="A" r="O" v="-67"/>
- <pair l="A" r="Odieresis" v="-67"/>
- <pair l="A" r="Q" v="-70"/>
- <pair l="A" r="T" v="-178"/>
- <pair l="A" r="U" v="-71"/>
- <pair l="A" r="Uacute" v="-71"/>
- <pair l="A" r="Ucircumflex" v="-71"/>
- <pair l="A" r="Udieresis" v="-71"/>
- <pair l="A" r="Ugrave" v="-71"/>
- <pair l="A" r="V" v="-144"/>
- <pair l="A" r="W" v="-90"/>
- <pair l="A" r="Y" v="-185"/>
- <pair l="A" r="a" v="-9"/>
- <pair l="A" r="b" v="-4"/>
- <pair l="A" r="c" v="-40"/>
- <pair l="A" r="ccedilla" v="-41"/>
- <pair l="A" r="comma" v="28"/>
- <pair l="A" r="d" v="-32"/>
- <pair l="A" r="e" v="-41"/>
- <pair l="A" r="g" v="-46"/>
- <pair l="A" r="guillemotleft" v="-76"/>
- <pair l="A" r="guilsinglleft" v="-56"/>
- <pair l="A" r="hyphen" v="-4"/>
- <pair l="A" r="o" v="-36"/>
- <pair l="A" r="period" v="27"/>
- <pair l="A" r="q" v="-32"/>
- <pair l="A" r="quotedblright" v="-117"/>
- <pair l="A" r="quoteright" v="-130"/>
- <pair l="A" r="t" v="-30"/>
- <pair l="A" r="u" v="-29"/>
- <pair l="A" r="v" v="-65"/>
- <pair l="A" r="w" v="-29"/>
- <pair l="A" r="y" v="-65"/>
- <pair l="Aacute" r="C" v="-76"/>
- <pair l="Aacute" r="G" v="-63"/>
- <pair l="Aacute" r="O" v="-67"/>
- <pair l="Aacute" r="Q" v="-70"/>
- <pair l="Aacute" r="T" v="-178"/>
- <pair l="Aacute" r="U" v="-71"/>
- <pair l="Aacute" r="V" v="-144"/>
- <pair l="Aacute" r="W" v="-90"/>
- <pair l="Aacute" r="Y" v="-185"/>
- <pair l="Aacute" r="a" v="-9"/>
- <pair l="Aacute" r="b" v="-4"/>
- <pair l="Aacute" r="c" v="-40"/>
- <pair l="Aacute" r="comma" v="28"/>
- <pair l="Aacute" r="d" v="-32"/>
- <pair l="Aacute" r="e" v="-41"/>
- <pair l="Aacute" r="g" v="-46"/>
- <pair l="Aacute" r="guillemotleft" v="-76"/>
- <pair l="Aacute" r="guilsinglleft" v="-56"/>
- <pair l="Aacute" r="hyphen" v="-4"/>
- <pair l="Aacute" r="o" v="-36"/>
- <pair l="Aacute" r="period" v="27"/>
- <pair l="Aacute" r="q" v="-32"/>
- <pair l="Aacute" r="quoteright" v="-130"/>
- <pair l="Aacute" r="t" v="-30"/>
- <pair l="Aacute" r="u" v="-29"/>
- <pair l="Aacute" r="v" v="-65"/>
- <pair l="Aacute" r="w" v="-29"/>
- <pair l="Aacute" r="y" v="-65"/>
- <pair l="Acircumflex" r="C" v="-76"/>
- <pair l="Acircumflex" r="G" v="-63"/>
- <pair l="Acircumflex" r="O" v="-67"/>
- <pair l="Acircumflex" r="Q" v="-70"/>
- <pair l="Acircumflex" r="T" v="-178"/>
- <pair l="Acircumflex" r="U" v="-71"/>
- <pair l="Acircumflex" r="V" v="-144"/>
- <pair l="Acircumflex" r="W" v="-90"/>
- <pair l="Acircumflex" r="Y" v="-185"/>
- <pair l="Acircumflex" r="comma" v="28"/>
- <pair l="Acircumflex" r="period" v="27"/>
- <pair l="Adieresis" r="C" v="-76"/>
- <pair l="Adieresis" r="G" v="-63"/>
- <pair l="Adieresis" r="O" v="-67"/>
- <pair l="Adieresis" r="Q" v="-70"/>
- <pair l="Adieresis" r="T" v="-178"/>
- <pair l="Adieresis" r="U" v="-71"/>
- <pair l="Adieresis" r="V" v="-144"/>
- <pair l="Adieresis" r="W" v="-90"/>
- <pair l="Adieresis" r="Y" v="-185"/>
- <pair l="Adieresis" r="a" v="-9"/>
- <pair l="Adieresis" r="b" v="-4"/>
- <pair l="Adieresis" r="c" v="-40"/>
- <pair l="Adieresis" r="comma" v="28"/>
- <pair l="Adieresis" r="d" v="-32"/>
- <pair l="Adieresis" r="g" v="-46"/>
- <pair l="Adieresis" r="guillemotleft" v="-76"/>
- <pair l="Adieresis" r="guilsinglleft" v="-56"/>
- <pair l="Adieresis" r="hyphen" v="-4"/>
- <pair l="Adieresis" r="o" v="-36"/>
- <pair l="Adieresis" r="period" v="27"/>
- <pair l="Adieresis" r="q" v="-32"/>
- <pair l="Adieresis" r="quotedblright" v="-117"/>
- <pair l="Adieresis" r="quoteright" v="-130"/>
- <pair l="Adieresis" r="t" v="-30"/>
- <pair l="Adieresis" r="u" v="-29"/>
- <pair l="Adieresis" r="v" v="-65"/>
- <pair l="Adieresis" r="w" v="-29"/>
- <pair l="Adieresis" r="y" v="-65"/>
- <pair l="Agrave" r="C" v="-76"/>
- <pair l="Agrave" r="G" v="-63"/>
- <pair l="Agrave" r="O" v="-67"/>
- <pair l="Agrave" r="Q" v="-70"/>
- <pair l="Agrave" r="T" v="-178"/>
- <pair l="Agrave" r="U" v="-71"/>
- <pair l="Agrave" r="V" v="-144"/>
- <pair l="Agrave" r="W" v="-90"/>
- <pair l="Agrave" r="Y" v="-185"/>
- <pair l="Agrave" r="comma" v="28"/>
- <pair l="Agrave" r="period" v="27"/>
- <pair l="Aring" r="C" v="-76"/>
- <pair l="Aring" r="G" v="-63"/>
- <pair l="Aring" r="O" v="-67"/>
- <pair l="Aring" r="Q" v="-70"/>
- <pair l="Aring" r="T" v="-178"/>
- <pair l="Aring" r="U" v="-71"/>
- <pair l="Aring" r="V" v="-144"/>
- <pair l="Aring" r="W" v="-90"/>
- <pair l="Aring" r="Y" v="-185"/>
- <pair l="Aring" r="a" v="-9"/>
- <pair l="Aring" r="b" v="-4"/>
- <pair l="Aring" r="c" v="-40"/>
- <pair l="Aring" r="comma" v="28"/>
- <pair l="Aring" r="d" v="-32"/>
- <pair l="Aring" r="e" v="-41"/>
- <pair l="Aring" r="g" v="-46"/>
- <pair l="Aring" r="guillemotleft" v="-76"/>
- <pair l="Aring" r="guilsinglleft" v="-56"/>
- <pair l="Aring" r="hyphen" v="-4"/>
- <pair l="Aring" r="o" v="-36"/>
- <pair l="Aring" r="period" v="27"/>
- <pair l="Aring" r="q" v="-32"/>
- <pair l="Aring" r="quotedblright" v="-117"/>
- <pair l="Aring" r="quoteright" v="-130"/>
- <pair l="Aring" r="t" v="-30"/>
- <pair l="Aring" r="u" v="-29"/>
- <pair l="Aring" r="v" v="-65"/>
- <pair l="Aring" r="w" v="-29"/>
- <pair l="Aring" r="y" v="-65"/>
- <pair l="Atilde" r="C" v="-76"/>
- <pair l="Atilde" r="G" v="-63"/>
- <pair l="Atilde" r="O" v="-67"/>
- <pair l="Atilde" r="Q" v="-70"/>
- <pair l="Atilde" r="T" v="-178"/>
- <pair l="Atilde" r="U" v="-71"/>
- <pair l="Atilde" r="V" v="-144"/>
- <pair l="Atilde" r="W" v="-90"/>
- <pair l="Atilde" r="Y" v="-185"/>
- <pair l="Atilde" r="comma" v="28"/>
- <pair l="Atilde" r="period" v="27"/>
- <pair l="B" r="A" v="-39"/>
- <pair l="B" r="AE" v="-61"/>
- <pair l="B" r="Aacute" v="-39"/>
- <pair l="B" r="Acircumflex" v="-39"/>
- <pair l="B" r="Adieresis" v="-39"/>
- <pair l="B" r="Aring" v="-39"/>
- <pair l="B" r="Atilde" v="-39"/>
- <pair l="B" r="O" v="-37"/>
- <pair l="B" r="OE" v="-37"/>
- <pair l="B" r="Oacute" v="-37"/>
- <pair l="B" r="Ocircumflex" v="-37"/>
- <pair l="B" r="Odieresis" v="-37"/>
- <pair l="B" r="Ograve" v="-37"/>
- <pair l="B" r="Oslash" v="-30"/>
- <pair l="B" r="V" v="-69"/>
- <pair l="B" r="W" v="-50"/>
- <pair l="B" r="Y" v="-82"/>
- <pair l="C" r="A" v="3"/>
- <pair l="C" r="AE" v="-5"/>
- <pair l="C" r="Aacute" v="3"/>
- <pair l="C" r="Adieresis" v="3"/>
- <pair l="C" r="Aring" v="3"/>
- <pair l="C" r="H" v="-56"/>
- <pair l="C" r="K" v="-69"/>
- <pair l="C" r="O" v="-84"/>
- <pair l="C" r="Oacute" v="-84"/>
- <pair l="C" r="Odieresis" v="-84"/>
- <pair l="Ccedilla" r="A" v="0"/>
- <pair l="D" r="A" v="-72"/>
- <pair l="D" r="Aacute" v="-72"/>
- <pair l="D" r="Acircumflex" v="-72"/>
- <pair l="D" r="Adieresis" v="-72"/>
- <pair l="D" r="Agrave" v="-72"/>
- <pair l="D" r="Aring" v="-72"/>
- <pair l="D" r="Atilde" v="-72"/>
- <pair l="D" r="J" v="-247"/>
- <pair l="D" r="T" v="-63"/>
- <pair l="D" r="V" v="-69"/>
- <pair l="D" r="W" v="-33"/>
- <pair l="D" r="X" v="-87"/>
- <pair l="D" r="Y" v="-100"/>
- <pair l="F" r="A" v="-122"/>
- <pair l="F" r="Aacute" v="-122"/>
- <pair l="F" r="Acircumflex" v="-122"/>
- <pair l="F" r="Adieresis" v="-122"/>
- <pair l="F" r="Agrave" v="-122"/>
- <pair l="F" r="Aring" v="-122"/>
- <pair l="F" r="Atilde" v="-122"/>
- <pair l="F" r="J" v="-251"/>
- <pair l="F" r="O" v="-33"/>
- <pair l="F" r="Odieresis" v="-32"/>
- <pair l="F" r="a" v="-102"/>
- <pair l="F" r="aacute" v="-102"/>
- <pair l="F" r="adieresis" v="-77"/>
- <pair l="F" r="ae" v="-102"/>
- <pair l="F" r="aring" v="-102"/>
- <pair l="F" r="comma" v="-189"/>
- <pair l="F" r="e" v="-35"/>
- <pair l="F" r="eacute" v="-35"/>
- <pair l="F" r="hyphen" v="4"/>
- <pair l="F" r="i" v="-4"/>
- <pair l="F" r="j" v="-6"/>
- <pair l="F" r="o" v="-35"/>
- <pair l="F" r="oacute" v="-35"/>
- <pair l="F" r="odieresis" v="-35"/>
- <pair l="F" r="oe" v="-36"/>
- <pair l="F" r="oslash" v="-64"/>
- <pair l="F" r="period" v="-190"/>
- <pair l="F" r="r" v="-66"/>
- <pair l="F" r="u" v="-60"/>
- <pair l="G" r="A" v="-20"/>
- <pair l="G" r="AE" v="-24"/>
- <pair l="G" r="Aacute" v="-20"/>
- <pair l="G" r="Acircumflex" v="-20"/>
- <pair l="G" r="Adieresis" v="-20"/>
- <pair l="G" r="Agrave" v="-20"/>
- <pair l="G" r="Aring" v="-20"/>
- <pair l="G" r="Atilde" v="-20"/>
- <pair l="G" r="T" v="-14"/>
- <pair l="G" r="V" v="-29"/>
- <pair l="G" r="W" v="-22"/>
- <pair l="G" r="Y" v="-30"/>
- <pair l="J" r="A" v="-23"/>
- <pair l="J" r="AE" v="-24"/>
- <pair l="J" r="Adieresis" v="-23"/>
- <pair l="J" r="Aring" v="-23"/>
- <pair l="K" r="C" v="-148"/>
- <pair l="K" r="G" v="-138"/>
- <pair l="K" r="O" v="-140"/>
- <pair l="K" r="OE" v="-139"/>
- <pair l="K" r="Oacute" v="-139"/>
- <pair l="K" r="Odieresis" v="-139"/>
- <pair l="K" r="S" v="-8"/>
- <pair l="K" r="T" v="3"/>
- <pair l="K" r="a" v="-46"/>
- <pair l="K" r="adieresis" v="-46"/>
- <pair l="K" r="ae" v="-46"/>
- <pair l="K" r="aring" v="-46"/>
- <pair l="K" r="e" v="-105"/>
- <pair l="K" r="hyphen" v="-173"/>
- <pair l="K" r="o" v="-94"/>
- <pair l="K" r="oacute" v="-94"/>
- <pair l="K" r="odieresis" v="-94"/>
- <pair l="K" r="u" v="-63"/>
- <pair l="K" r="udieresis" v="-63"/>
- <pair l="K" r="y" v="-138"/>
- <pair l="L" r="A" v="60"/>
- <pair l="L" r="AE" v="59"/>
- <pair l="L" r="Aacute" v="60"/>
- <pair l="L" r="Adieresis" v="60"/>
- <pair l="L" r="Aring" v="60"/>
- <pair l="L" r="C" v="-76"/>
- <pair l="L" r="Ccedilla" v="-84"/>
- <pair l="L" r="G" v="-65"/>
- <pair l="L" r="O" v="-71"/>
- <pair l="L" r="Oacute" v="-70"/>
- <pair l="L" r="Ocircumflex" v="-70"/>
- <pair l="L" r="Odieresis" v="-70"/>
- <pair l="L" r="Ograve" v="-70"/>
- <pair l="L" r="Otilde" v="-70"/>
- <pair l="L" r="S" v="11"/>
- <pair l="L" r="T" v="-188"/>
- <pair l="L" r="U" v="-54"/>
- <pair l="L" r="Udieresis" v="-54"/>
- <pair l="L" r="V" v="-198"/>
- <pair l="L" r="W" v="-108"/>
- <pair l="L" r="Y" v="-208"/>
- <pair l="L" r="hyphen" v="-259"/>
- <pair l="L" r="quotedblright" v="-260"/>
- <pair l="L" r="quoteright" v="-277"/>
- <pair l="L" r="u" v="-9"/>
- <pair l="L" r="udieresis" v="-9"/>
- <pair l="L" r="y" v="-102"/>
- <pair l="N" r="A" v="-4"/>
- <pair l="N" r="AE" v="-5"/>
- <pair l="N" r="Aacute" v="-4"/>
- <pair l="N" r="Adieresis" v="-4"/>
- <pair l="N" r="Aring" v="-4"/>
- <pair l="N" r="C" v="-11"/>
- <pair l="N" r="Ccedilla" v="-11"/>
- <pair l="N" r="G" v="0"/>
- <pair l="N" r="O" v="-2"/>
- <pair l="N" r="Oacute" v="-1"/>
- <pair l="N" r="Odieresis" v="-1"/>
- <pair l="N" r="a" v="-24"/>
- <pair l="N" r="aacute" v="-24"/>
- <pair l="N" r="adieresis" v="-24"/>
- <pair l="N" r="ae" v="-25"/>
- <pair l="N" r="aring" v="-24"/>
- <pair l="N" r="comma" v="-1"/>
- <pair l="N" r="e" v="-5"/>
- <pair l="N" r="eacute" v="-5"/>
- <pair l="N" r="o" v="-2"/>
- <pair l="N" r="oacute" v="-2"/>
- <pair l="N" r="odieresis" v="-2"/>
- <pair l="N" r="oslash" v="-25"/>
- <pair l="N" r="period" v="-2"/>
- <pair l="N" r="u" v="-3"/>
- <pair l="N" r="udieresis" v="-3"/>
- <pair l="O" r="A" v="-66"/>
- <pair l="O" r="AE" v="-106"/>
- <pair l="O" r="Aacute" v="-66"/>
- <pair l="O" r="Adieresis" v="-66"/>
- <pair l="O" r="Aring" v="-66"/>
- <pair l="O" r="T" v="-66"/>
- <pair l="O" r="V" v="-72"/>
- <pair l="O" r="W" v="-31"/>
- <pair l="O" r="X" v="-84"/>
- <pair l="O" r="Y" v="-106"/>
- <pair l="Oacute" r="A" v="-66"/>
- <pair l="Oacute" r="T" v="-67"/>
- <pair l="Oacute" r="V" v="-73"/>
- <pair l="Oacute" r="W" v="-32"/>
- <pair l="Oacute" r="Y" v="-107"/>
- <pair l="Ocircumflex" r="T" v="-67"/>
- <pair l="Ocircumflex" r="V" v="-73"/>
- <pair l="Ocircumflex" r="Y" v="-107"/>
- <pair l="Odieresis" r="A" v="-66"/>
- <pair l="Odieresis" r="T" v="-67"/>
- <pair l="Odieresis" r="V" v="-73"/>
- <pair l="Odieresis" r="W" v="-32"/>
- <pair l="Odieresis" r="X" v="-84"/>
- <pair l="Odieresis" r="Y" v="-107"/>
- <pair l="Ograve" r="T" v="-67"/>
- <pair l="Ograve" r="V" v="-73"/>
- <pair l="Ograve" r="Y" v="-107"/>
- <pair l="Oslash" r="A" v="-65"/>
- <pair l="Otilde" r="T" v="-67"/>
- <pair l="Otilde" r="V" v="-73"/>
- <pair l="Otilde" r="Y" v="-107"/>
- <pair l="P" r="A" v="-125"/>
- <pair l="P" r="AE" v="-226"/>
- <pair l="P" r="Aacute" v="-125"/>
- <pair l="P" r="Adieresis" v="-125"/>
- <pair l="P" r="Aring" v="-125"/>
- <pair l="P" r="J" v="-249"/>
- <pair l="P" r="a" v="-32"/>
- <pair l="P" r="aacute" v="-32"/>
- <pair l="P" r="adieresis" v="-32"/>
- <pair l="P" r="ae" v="-32"/>
- <pair l="P" r="aring" v="-32"/>
- <pair l="P" r="comma" v="-226"/>
- <pair l="P" r="e" v="-29"/>
- <pair l="P" r="eacute" v="-29"/>
- <pair l="P" r="hyphen" v="-27"/>
- <pair l="P" r="o" v="-30"/>
- <pair l="P" r="oacute" v="-30"/>
- <pair l="P" r="odieresis" v="-30"/>
- <pair l="P" r="oe" v="-32"/>
- <pair l="P" r="oslash" v="-58"/>
- <pair l="P" r="period" v="-227"/>
- <pair l="R" r="C" v="-87"/>
- <pair l="R" r="Ccedilla" v="-87"/>
- <pair l="R" r="G" v="-76"/>
- <pair l="R" r="O" v="-78"/>
- <pair l="R" r="OE" v="-77"/>
- <pair l="R" r="Oacute" v="-78"/>
- <pair l="R" r="Odieresis" v="-78"/>
- <pair l="R" r="T" v="-64"/>
- <pair l="R" r="U" v="-75"/>
- <pair l="R" r="Udieresis" v="-75"/>
- <pair l="R" r="V" v="-97"/>
- <pair l="R" r="W" v="-78"/>
- <pair l="R" r="Y" v="-112"/>
- <pair l="R" r="a" v="-39"/>
- <pair l="R" r="aacute" v="-39"/>
- <pair l="R" r="adieresis" v="-39"/>
- <pair l="R" r="ae" v="-37"/>
- <pair l="R" r="aring" v="-39"/>
- <pair l="R" r="e" v="-82"/>
- <pair l="R" r="eacute" v="-82"/>
- <pair l="R" r="hyphen" v="-98"/>
- <pair l="R" r="o" v="-77"/>
- <pair l="R" r="oacute" v="-77"/>
- <pair l="R" r="odieresis" v="-77"/>
- <pair l="R" r="oe" v="-81"/>
- <pair l="R" r="u" v="-56"/>
- <pair l="R" r="uacute" v="-56"/>
- <pair l="R" r="udieresis" v="-56"/>
- <pair l="R" r="y" v="-44"/>
- <pair l="S" r="A" v="-36"/>
- <pair l="S" r="AE" v="-60"/>
- <pair l="S" r="Aacute" v="-36"/>
- <pair l="S" r="Adieresis" v="-36"/>
- <pair l="S" r="Aring" v="-36"/>
- <pair l="S" r="T" v="-27"/>
- <pair l="S" r="V" v="-42"/>
- <pair l="S" r="W" v="-35"/>
- <pair l="S" r="Y" v="-43"/>
- <pair l="S" r="t" v="-48"/>
- <pair l="T" r="A" v="-180"/>
- <pair l="T" r="AE" v="-182"/>
- <pair l="T" r="Aacute" v="-180"/>
- <pair l="T" r="Acircumflex" v="-180"/>
- <pair l="T" r="Adieresis" v="-180"/>
- <pair l="T" r="Agrave" v="-180"/>
- <pair l="T" r="Aring" v="-180"/>
- <pair l="T" r="Atilde" v="-180"/>
- <pair l="T" r="C" v="-75"/>
- <pair l="T" r="G" v="-66"/>
- <pair l="T" r="J" v="-235"/>
- <pair l="T" r="O" v="-66"/>
- <pair l="T" r="OE" v="-65"/>
- <pair l="T" r="Oacute" v="-66"/>
- <pair l="T" r="Ocircumflex" v="-66"/>
- <pair l="T" r="Odieresis" v="-66"/>
- <pair l="T" r="Ograve" v="-66"/>
- <pair l="T" r="Oslash" v="-66"/>
- <pair l="T" r="Otilde" v="-66"/>
- <pair l="T" r="S" v="-5"/>
- <pair l="T" r="V" v="58"/>
- <pair l="T" r="W" v="65"/>
- <pair l="T" r="Y" v="59"/>
- <pair l="T" r="a" v="-211"/>
- <pair l="T" r="ae" v="-211"/>
- <pair l="T" r="c" v="-191"/>
- <pair l="T" r="colon" v="-238"/>
- <pair l="T" r="comma" v="-179"/>
- <pair l="T" r="e" v="-192"/>
- <pair l="T" r="g" v="-196"/>
- <pair l="T" r="guillemotleft" v="-227"/>
- <pair l="T" r="guilsinglleft" v="-206"/>
- <pair l="T" r="hyphen" v="-140"/>
- <pair l="T" r="i" v="12"/>
- <pair l="T" r="j" v="9"/>
- <pair l="T" r="o" v="-188"/>
- <pair l="T" r="oslash" v="-208"/>
- <pair l="T" r="period" v="-180"/>
- <pair l="T" r="r" v="-183"/>
- <pair l="T" r="s" v="-216"/>
- <pair l="T" r="semicolon" v="-229"/>
- <pair l="T" r="u" v="-182"/>
- <pair l="T" r="v" v="-184"/>
- <pair l="T" r="w" v="-175"/>
- <pair l="T" r="y" v="-184"/>
- <pair l="U" r="A" v="-64"/>
- <pair l="U" r="AE" v="-89"/>
- <pair l="U" r="Aacute" v="-64"/>
- <pair l="U" r="Acircumflex" v="-64"/>
- <pair l="U" r="Adieresis" v="-64"/>
- <pair l="U" r="Aring" v="-64"/>
- <pair l="U" r="Atilde" v="-64"/>
- <pair l="U" r="comma" v="-37"/>
- <pair l="U" r="m" v="-15"/>
- <pair l="U" r="n" v="-15"/>
- <pair l="U" r="p" v="-15"/>
- <pair l="U" r="period" v="-33"/>
- <pair l="U" r="r" v="-15"/>
- <pair l="Uacute" r="A" v="-64"/>
- <pair l="Uacute" r="comma" v="-37"/>
- <pair l="Uacute" r="m" v="-15"/>
- <pair l="Uacute" r="n" v="-15"/>
- <pair l="Uacute" r="p" v="-15"/>
- <pair l="Uacute" r="period" v="-33"/>
- <pair l="Uacute" r="r" v="-15"/>
- <pair l="Ucircumflex" r="A" v="-64"/>
- <pair l="Udieresis" r="A" v="-64"/>
- <pair l="Udieresis" r="b" v="-14"/>
- <pair l="Udieresis" r="comma" v="-37"/>
- <pair l="Udieresis" r="m" v="-15"/>
- <pair l="Udieresis" r="n" v="-15"/>
- <pair l="Udieresis" r="p" v="-15"/>
- <pair l="Udieresis" r="period" v="-33"/>
- <pair l="Udieresis" r="r" v="-15"/>
- <pair l="Ugrave" r="A" v="-64"/>
- <pair l="V" r="A" v="-125"/>
- <pair l="V" r="AE" v="-200"/>
- <pair l="V" r="Aacute" v="-125"/>
- <pair l="V" r="Acircumflex" v="-125"/>
- <pair l="V" r="Adieresis" v="-125"/>
- <pair l="V" r="Agrave" v="-125"/>
- <pair l="V" r="Aring" v="-125"/>
- <pair l="V" r="Atilde" v="-125"/>
- <pair l="V" r="C" v="-67"/>
- <pair l="V" r="G" v="-58"/>
- <pair l="V" r="O" v="-58"/>
- <pair l="V" r="Oacute" v="-57"/>
- <pair l="V" r="Ocircumflex" v="-57"/>
- <pair l="V" r="Odieresis" v="-57"/>
- <pair l="V" r="Ograve" v="-57"/>
- <pair l="V" r="Oslash" v="-58"/>
- <pair l="V" r="Otilde" v="-57"/>
- <pair l="V" r="S" v="-23"/>
- <pair l="V" r="T" v="74"/>
- <pair l="V" r="a" v="-96"/>
- <pair l="V" r="ae" v="-96"/>
- <pair l="V" r="colon" v="-83"/>
- <pair l="V" r="comma" v="-153"/>
- <pair l="V" r="e" v="-101"/>
- <pair l="V" r="g" v="-100"/>
- <pair l="V" r="guillemotleft" v="-142"/>
- <pair l="V" r="guilsinglleft" v="-122"/>
- <pair l="V" r="hyphen" v="-48"/>
- <pair l="V" r="i" v="16"/>
- <pair l="V" r="o" v="-101"/>
- <pair l="V" r="oslash" v="-124"/>
- <pair l="V" r="period" v="-154"/>
- <pair l="V" r="r" v="-66"/>
- <pair l="V" r="semicolon" v="-79"/>
- <pair l="V" r="u" v="-64"/>
- <pair l="V" r="y" v="-4"/>
- <pair l="W" r="A" v="-100"/>
- <pair l="W" r="AE" v="-142"/>
- <pair l="W" r="Aacute" v="-100"/>
- <pair l="W" r="Acircumflex" v="-100"/>
- <pair l="W" r="Adieresis" v="-100"/>
- <pair l="W" r="Agrave" v="-100"/>
- <pair l="W" r="Aring" v="-100"/>
- <pair l="W" r="Atilde" v="-100"/>
- <pair l="W" r="C" v="-50"/>
- <pair l="W" r="G" v="-39"/>
- <pair l="W" r="O" v="-41"/>
- <pair l="W" r="Oacute" v="-40"/>
- <pair l="W" r="Ocircumflex" v="-40"/>
- <pair l="W" r="Odieresis" v="-40"/>
- <pair l="W" r="Ograve" v="-40"/>
- <pair l="W" r="Oslash" v="-34"/>
- <pair l="W" r="Otilde" v="-40"/>
- <pair l="W" r="S" v="-23"/>
- <pair l="W" r="T" v="65"/>
- <pair l="W" r="a" v="-84"/>
- <pair l="W" r="ae" v="-84"/>
- <pair l="W" r="colon" v="-73"/>
- <pair l="W" r="comma" v="-106"/>
- <pair l="W" r="e" v="-72"/>
- <pair l="W" r="g" v="-75"/>
- <pair l="W" r="guillemotleft" v="-109"/>
- <pair l="W" r="guilsinglleft" v="-89"/>
- <pair l="W" r="hyphen" v="-17"/>
- <pair l="W" r="i" v="8"/>
- <pair l="W" r="o" v="-69"/>
- <pair l="W" r="oslash" v="-91"/>
- <pair l="W" r="period" v="-107"/>
- <pair l="W" r="r" v="-57"/>
- <pair l="W" r="semicolon" v="-70"/>
- <pair l="W" r="u" v="-54"/>
- <pair l="W" r="y" v="4"/>
- <pair l="X" r="C" v="-89"/>
- <pair l="X" r="O" v="-81"/>
- <pair l="X" r="Odieresis" v="-80"/>
- <pair l="X" r="Q" v="-81"/>
- <pair l="X" r="a" v="-30"/>
- <pair l="X" r="e" v="-83"/>
- <pair l="X" r="hyphen" v="-105"/>
- <pair l="X" r="o" v="-73"/>
- <pair l="X" r="u" v="-47"/>
- <pair l="X" r="y" v="-94"/>
- <pair l="Y" r="A" v="-197"/>
- <pair l="Y" r="AE" v="-219"/>
- <pair l="Y" r="Aacute" v="-197"/>
- <pair l="Y" r="Acircumflex" v="-197"/>
- <pair l="Y" r="Adieresis" v="-197"/>
- <pair l="Y" r="Agrave" v="-197"/>
- <pair l="Y" r="Aring" v="-197"/>
- <pair l="Y" r="Atilde" v="-197"/>
- <pair l="Y" r="C" v="-118"/>
- <pair l="Y" r="G" v="-111"/>
- <pair l="Y" r="O" v="-110"/>
- <pair l="Y" r="Oacute" v="-109"/>
- <pair l="Y" r="Ocircumflex" v="-109"/>
- <pair l="Y" r="Odieresis" v="-109"/>
- <pair l="Y" r="Ograve" v="-109"/>
- <pair l="Y" r="Oslash" v="-110"/>
- <pair l="Y" r="Otilde" v="-109"/>
- <pair l="Y" r="S" v="-55"/>
- <pair l="Y" r="T" v="65"/>
- <pair l="Y" r="a" v="-167"/>
- <pair l="Y" r="ae" v="-167"/>
- <pair l="Y" r="colon" v="-150"/>
- <pair l="Y" r="comma" v="-216"/>
- <pair l="Y" r="e" v="-193"/>
- <pair l="Y" r="g" v="-191"/>
- <pair l="Y" r="guillemotleft" v="-258"/>
- <pair l="Y" r="guilsinglleft" v="-238"/>
- <pair l="Y" r="hyphen" v="-166"/>
- <pair l="Y" r="i" v="7"/>
- <pair l="Y" r="o" v="-189"/>
- <pair l="Y" r="oslash" v="-211"/>
- <pair l="Y" r="p" v="-130"/>
- <pair l="Y" r="period" v="-217"/>
- <pair l="Y" r="semicolon" v="-143"/>
- <pair l="Y" r="u" v="-131"/>
- <pair l="Y" r="v" v="-72"/>
- <pair l="Z" r="v" v="-60"/>
- <pair l="Z" r="y" v="-60"/>
- <pair l="a" r="j" v="-2"/>
- <pair l="a" r="quoteright" v="-45"/>
- <pair l="a" r="v" v="-55"/>
- <pair l="a" r="w" v="-22"/>
- <pair l="a" r="y" v="-55"/>
- <pair l="aacute" r="v" v="-55"/>
- <pair l="aacute" r="w" v="-22"/>
- <pair l="aacute" r="y" v="-55"/>
- <pair l="adieresis" r="v" v="-55"/>
- <pair l="adieresis" r="w" v="-22"/>
- <pair l="adieresis" r="y" v="-55"/>
- <pair l="ae" r="v" v="-42"/>
- <pair l="ae" r="w" v="-26"/>
- <pair l="ae" r="y" v="-42"/>
- <pair l="agrave" r="v" v="-55"/>
- <pair l="agrave" r="w" v="-22"/>
- <pair l="agrave" r="y" v="-55"/>
- <pair l="aring" r="v" v="-55"/>
- <pair l="aring" r="w" v="-22"/>
- <pair l="aring" r="y" v="-55"/>
- <pair l="b" r="v" v="-28"/>
- <pair l="b" r="w" v="0"/>
- <pair l="b" r="y" v="-28"/>
- <pair l="c" r="h" v="-41"/>
- <pair l="c" r="k" v="-41"/>
- <pair l="comma" r="one" v="-104"/>
- <pair l="comma" r="quotedblright" v="-54"/>
- <pair l="comma" r="quoteright" v="-67"/>
- <pair l="e" r="quoteright" v="-27"/>
- <pair l="e" r="t" v="-29"/>
- <pair l="e" r="v" v="-41"/>
- <pair l="e" r="w" v="-24"/>
- <pair l="e" r="x" v="-2"/>
- <pair l="e" r="y" v="-41"/>
- <pair l="eacute" r="v" v="-41"/>
- <pair l="eacute" r="w" v="-24"/>
- <pair l="eacute" r="y" v="-41"/>
- <pair l="ecircumflex" r="v" v="-41"/>
- <pair l="ecircumflex" r="w" v="-24"/>
- <pair l="ecircumflex" r="y" v="-41"/>
- <pair l="eight" r="four" v="48"/>
- <pair l="eight" r="one" v="-80"/>
- <pair l="eight" r="seven" v="-36"/>
- <pair l="f" r="a" v="-10"/>
- <pair l="f" r="aacute" v="-10"/>
- <pair l="f" r="adieresis" v="-10"/>
- <pair l="f" r="ae" v="-10"/>
- <pair l="f" r="aring" v="-10"/>
- <pair l="f" r="e" v="-12"/>
- <pair l="f" r="eacute" v="-12"/>
- <pair l="f" r="f" v="68"/>
- <pair l="f" r="i" v="50"/>
- <pair l="f" r="j" v="48"/>
- <pair l="f" r="l" v="50"/>
- <pair l="f" r="o" v="-11"/>
- <pair l="f" r="oacute" v="-11"/>
- <pair l="f" r="odieresis" v="-11"/>
- <pair l="f" r="oe" v="-16"/>
- <pair l="f" r="oslash" v="-40"/>
- <pair l="f" r="quoteright" v="60"/>
- <pair l="f" r="s" v="14"/>
- <pair l="f" r="t" v="69"/>
- <pair l="five" r="four" v="-11"/>
- <pair l="five" r="one" v="-125"/>
- <pair l="five" r="seven" v="-79"/>
- <pair l="four" r="four" v="41"/>
- <pair l="four" r="one" v="-157"/>
- <pair l="four" r="seven" v="-110"/>
- <pair l="g" r="a" v="-27"/>
- <pair l="g" r="adieresis" v="-27"/>
- <pair l="g" r="ae" v="-27"/>
- <pair l="g" r="aring" v="-27"/>
- <pair l="g" r="e" v="-7"/>
- <pair l="g" r="eacute" v="-7"/>
- <pair l="g" r="l" v="3"/>
- <pair l="g" r="oacute" v="-4"/>
- <pair l="g" r="odieresis" v="-4"/>
- <pair l="g" r="r" v="-9"/>
- <pair l="guillemotright" r="A" v="-75"/>
- <pair l="guillemotright" r="AE" v="-142"/>
- <pair l="guillemotright" r="Aacute" v="-75"/>
- <pair l="guillemotright" r="Adieresis" v="-75"/>
- <pair l="guillemotright" r="Aring" v="-75"/>
- <pair l="guillemotright" r="T" v="-226"/>
- <pair l="guillemotright" r="V" v="-162"/>
- <pair l="guillemotright" r="W" v="-97"/>
- <pair l="guillemotright" r="Y" v="-242"/>
- <pair l="guilsinglright" r="A" v="-54"/>
- <pair l="guilsinglright" r="AE" v="-120"/>
- <pair l="guilsinglright" r="Aacute" v="-54"/>
- <pair l="guilsinglright" r="Adieresis" v="-54"/>
- <pair l="guilsinglright" r="Aring" v="-54"/>
- <pair l="guilsinglright" r="T" v="-205"/>
- <pair l="guilsinglright" r="V" v="-140"/>
- <pair l="guilsinglright" r="W" v="-75"/>
- <pair l="guilsinglright" r="Y" v="-221"/>
- <pair l="h" r="quoteright" v="-11"/>
- <pair l="h" r="y" v="-29"/>
- <pair l="hyphen" r="A" v="-2"/>
- <pair l="hyphen" r="AE" v="-79"/>
- <pair l="hyphen" r="Aacute" v="-2"/>
- <pair l="hyphen" r="Adieresis" v="-2"/>
- <pair l="hyphen" r="Aring" v="-2"/>
- <pair l="hyphen" r="T" v="-139"/>
- <pair l="hyphen" r="V" v="-65"/>
- <pair l="hyphen" r="W" v="-4"/>
- <pair l="hyphen" r="Y" v="-148"/>
- <pair l="i" r="T" v="14"/>
- <pair l="i" r="j" v="12"/>
- <pair l="k" r="a" v="-31"/>
- <pair l="k" r="aacute" v="-31"/>
- <pair l="k" r="adieresis" v="-31"/>
- <pair l="k" r="ae" v="-29"/>
- <pair l="k" r="aring" v="-31"/>
- <pair l="k" r="comma" v="-5"/>
- <pair l="k" r="e" v="-76"/>
- <pair l="k" r="eacute" v="-76"/>
- <pair l="k" r="g" v="-81"/>
- <pair l="k" r="hyphen" v="-102"/>
- <pair l="k" r="o" v="-71"/>
- <pair l="k" r="oacute" v="-71"/>
- <pair l="k" r="odieresis" v="-71"/>
- <pair l="k" r="period" v="-5"/>
- <pair l="k" r="s" v="5"/>
- <pair l="k" r="u" v="-46"/>
- <pair l="k" r="udieresis" v="-46"/>
- <pair l="l" r="v" v="9"/>
- <pair l="l" r="y" v="9"/>
- <pair l="m" r="p" v="-9"/>
- <pair l="m" r="v" v="-29"/>
- <pair l="m" r="w" v="-1"/>
- <pair l="m" r="y" v="-29"/>
- <pair l="n" r="T" v="-182"/>
- <pair l="n" r="p" v="-8"/>
- <pair l="n" r="quoteright" v="-11"/>
- <pair l="n" r="v" v="-29"/>
- <pair l="n" r="w" v="0"/>
- <pair l="n" r="y" v="-29"/>
- <pair l="nine" r="four" v="12"/>
- <pair l="nine" r="one" v="-121"/>
- <pair l="nine" r="seven" v="-84"/>
- <pair l="o" r="T" v="-188"/>
- <pair l="o" r="quoteright" v="-23"/>
- <pair l="o" r="t" v="-9"/>
- <pair l="o" r="v" v="-33"/>
- <pair l="o" r="w" v="-3"/>
- <pair l="o" r="x" v="-41"/>
- <pair l="o" r="y" v="-33"/>
- <pair l="oacute" r="v" v="-33"/>
- <pair l="oacute" r="w" v="-3"/>
- <pair l="oacute" r="y" v="-33"/>
- <pair l="ocircumflex" r="t" v="-9"/>
- <pair l="odieresis" r="t" v="-9"/>
- <pair l="odieresis" r="v" v="-33"/>
- <pair l="odieresis" r="w" v="-3"/>
- <pair l="odieresis" r="x" v="-41"/>
- <pair l="odieresis" r="y" v="-33"/>
- <pair l="ograve" r="v" v="-33"/>
- <pair l="ograve" r="w" v="-3"/>
- <pair l="ograve" r="y" v="-33"/>
- <pair l="one" r="comma" v="-48"/>
- <pair l="one" r="eight" v="-50"/>
- <pair l="one" r="five" v="-49"/>
- <pair l="one" r="four" v="-111"/>
- <pair l="one" r="nine" v="-50"/>
- <pair l="one" r="one" v="-83"/>
- <pair l="one" r="period" v="-48"/>
- <pair l="one" r="seven" v="-80"/>
- <pair l="one" r="six" v="-76"/>
- <pair l="one" r="three" v="-44"/>
- <pair l="one" r="two" v="-19"/>
- <pair l="one" r="zero" v="-81"/>
- <pair l="p" r="t" v="-5"/>
- <pair l="p" r="y" v="-28"/>
- <pair l="period" r="one" v="-104"/>
- <pair l="period" r="quotedblright" v="-56"/>
- <pair l="period" r="quoteright" v="-69"/>
- <pair l="q" r="c" v="-10"/>
- <pair l="q" r="u" v="-8"/>
- <pair l="quotedblbase" r="A" v="75"/>
- <pair l="quotedblbase" r="AE" v="47"/>
- <pair l="quotedblbase" r="T" v="-134"/>
- <pair l="quotedblbase" r="V" v="-130"/>
- <pair l="quotedblbase" r="W" v="-46"/>
- <pair l="quotedblbase" r="Y" v="-155"/>
- <pair l="quotedblleft" r="A" v="-118"/>
- <pair l="quotedblleft" r="AE" v="-274"/>
- <pair l="quotedblleft" r="Aacute" v="-118"/>
- <pair l="quotedblleft" r="Adieresis" v="-118"/>
- <pair l="quotedblleft" r="Aring" v="-118"/>
- <pair l="quotedblleft" r="T" v="32"/>
- <pair l="quotedblleft" r="V" v="54"/>
- <pair l="quotedblleft" r="W" v="75"/>
- <pair l="quotedblleft" r="Y" v="29"/>
- <pair l="quotedblright" r="A" v="-115"/>
- <pair l="quotedblright" r="AE" v="-270"/>
- <pair l="quotedblright" r="Aacute" v="-115"/>
- <pair l="quotedblright" r="Adieresis" v="-115"/>
- <pair l="quotedblright" r="Aring" v="-115"/>
- <pair l="quotedblright" r="T" v="52"/>
- <pair l="quotedblright" r="V" v="64"/>
- <pair l="quotedblright" r="W" v="84"/>
- <pair l="quotedblright" r="Y" v="42"/>
- <pair l="quoteleft" r="A" v="-131"/>
- <pair l="quoteleft" r="AE" v="-282"/>
- <pair l="quoteleft" r="Aacute" v="-131"/>
- <pair l="quoteleft" r="Adieresis" v="-131"/>
- <pair l="quoteleft" r="Aring" v="-131"/>
- <pair l="quoteleft" r="T" v="15"/>
- <pair l="quoteleft" r="V" v="34"/>
- <pair l="quoteleft" r="W" v="56"/>
- <pair l="quoteleft" r="Y" v="7"/>
- <pair l="quoteright" r="A" v="-127"/>
- <pair l="quoteright" r="AE" v="-279"/>
- <pair l="quoteright" r="Aacute" v="-127"/>
- <pair l="quoteright" r="Adieresis" v="-127"/>
- <pair l="quoteright" r="Aring" v="-127"/>
- <pair l="quoteright" r="comma" v="-81"/>
- <pair l="quoteright" r="d" v="-41"/>
- <pair l="quoteright" r="o" v="-37"/>
- <pair l="quoteright" r="period" v="-83"/>
- <pair l="quoteright" r="r" v="-16"/>
- <pair l="quoteright" r="s" v="-19"/>
- <pair l="quoteright" r="t" v="15"/>
- <pair l="quoteright" r="v" v="22"/>
- <pair l="quoteright" r="w" v="35"/>
- <pair l="quoteright" r="y" v="22"/>
- <pair l="r" r="a" v="-16"/>
- <pair l="r" r="aacute" v="-16"/>
- <pair l="r" r="acircumflex" v="-16"/>
- <pair l="r" r="adieresis" v="-16"/>
- <pair l="r" r="ae" v="-16"/>
- <pair l="r" r="agrave" v="-16"/>
- <pair l="r" r="aring" v="-16"/>
- <pair l="r" r="c" v="-13"/>
- <pair l="r" r="ccedilla" v="-7"/>
- <pair l="r" r="colon" v="-11"/>
- <pair l="r" r="comma" v="-100"/>
- <pair l="r" r="d" v="-13"/>
- <pair l="r" r="e" v="-11"/>
- <pair l="r" r="eacute" v="-11"/>
- <pair l="r" r="ecircumflex" v="-11"/>
- <pair l="r" r="egrave" v="-11"/>
- <pair l="r" r="f" v="62"/>
- <pair l="r" r="g" v="-5"/>
- <pair l="r" r="h" v="1"/>
- <pair l="r" r="hyphen" v="-64"/>
- <pair l="r" r="i" v="13"/>
- <pair l="r" r="j" v="11"/>
- <pair l="r" r="k" v="1"/>
- <pair l="r" r="l" v="13"/>
- <pair l="r" r="m" v="1"/>
- <pair l="r" r="n" v="1"/>
- <pair l="r" r="o" v="-10"/>
- <pair l="r" r="oacute" v="-10"/>
- <pair l="r" r="ocircumflex" v="-10"/>
- <pair l="r" r="odieresis" v="-10"/>
- <pair l="r" r="oe" v="-14"/>
- <pair l="r" r="ograve" v="-10"/>
- <pair l="r" r="oslash" v="-39"/>
- <pair l="r" r="p" v="1"/>
- <pair l="r" r="period" v="-101"/>
- <pair l="r" r="q" v="-13"/>
- <pair l="r" r="quoteright" v="31"/>
- <pair l="r" r="r" v="1"/>
- <pair l="r" r="s" v="11"/>
- <pair l="r" r="semicolon" v="-11"/>
- <pair l="r" r="t" v="63"/>
- <pair l="r" r="u" v="7"/>
- <pair l="r" r="v" v="66"/>
- <pair l="r" r="w" v="71"/>
- <pair l="r" r="x" v="55"/>
- <pair l="r" r="y" v="66"/>
- <pair l="r" r="z" v="26"/>
- <pair l="s" r="quoteright" v="-69"/>
- <pair l="s" r="t" v="-29"/>
- <pair l="seven" r="colon" v="-103"/>
- <pair l="seven" r="comma" v="-230"/>
- <pair l="seven" r="eight" v="-34"/>
- <pair l="seven" r="five" v="-29"/>
- <pair l="seven" r="four" v="-164"/>
- <pair l="seven" r="one" v="-50"/>
- <pair l="seven" r="period" v="-231"/>
- <pair l="seven" r="seven" v="-3"/>
- <pair l="seven" r="six" v="-46"/>
- <pair l="seven" r="three" v="-22"/>
- <pair l="seven" r="two" v="-5"/>
- <pair l="six" r="four" v="18"/>
- <pair l="six" r="one" v="-120"/>
- <pair l="six" r="seven" v="-73"/>
- <pair l="t" r="S" v="19"/>
- <pair l="t" r="a" v="-1"/>
- <pair l="t" r="aacute" v="-1"/>
- <pair l="t" r="adieresis" v="-1"/>
- <pair l="t" r="ae" v="0"/>
- <pair l="t" r="aring" v="-1"/>
- <pair l="t" r="colon" v="-9"/>
- <pair l="t" r="e" v="-16"/>
- <pair l="t" r="eacute" v="-16"/>
- <pair l="t" r="h" v="3"/>
- <pair l="t" r="o" v="-15"/>
- <pair l="t" r="oacute" v="-15"/>
- <pair l="t" r="odieresis" v="-15"/>
- <pair l="t" r="quoteright" v="30"/>
- <pair l="t" r="semicolon" v="-9"/>
- <pair l="three" r="four" v="-11"/>
- <pair l="three" r="one" v="-137"/>
- <pair l="three" r="seven" v="-94"/>
- <pair l="two" r="four" v="-145"/>
- <pair l="two" r="one" v="-126"/>
- <pair l="two" r="seven" v="-91"/>
- <pair l="u" r="quoteright" v="0"/>
- <pair l="v" r="a" v="-26"/>
- <pair l="v" r="aacute" v="-26"/>
- <pair l="v" r="acircumflex" v="-26"/>
- <pair l="v" r="adieresis" v="-26"/>
- <pair l="v" r="ae" v="-26"/>
- <pair l="v" r="agrave" v="-26"/>
- <pair l="v" r="aring" v="-26"/>
- <pair l="v" r="atilde" v="-26"/>
- <pair l="v" r="c" v="-35"/>
- <pair l="v" r="colon" v="-11"/>
- <pair l="v" r="comma" v="-112"/>
- <pair l="v" r="e" v="-32"/>
- <pair l="v" r="eacute" v="-32"/>
- <pair l="v" r="ecircumflex" v="-32"/>
- <pair l="v" r="egrave" v="-32"/>
- <pair l="v" r="g" v="-31"/>
- <pair l="v" r="hyphen" v="2"/>
- <pair l="v" r="l" v="14"/>
- <pair l="v" r="o" v="-33"/>
- <pair l="v" r="oacute" v="-33"/>
- <pair l="v" r="odieresis" v="-33"/>
- <pair l="v" r="ograve" v="-33"/>
- <pair l="v" r="oslash" v="-61"/>
- <pair l="v" r="period" v="-113"/>
- <pair l="v" r="s" v="-17"/>
- <pair l="v" r="semicolon" v="-11"/>
- <pair l="w" r="a" v="-25"/>
- <pair l="w" r="aacute" v="-25"/>
- <pair l="w" r="acircumflex" v="-25"/>
- <pair l="w" r="adieresis" v="-25"/>
- <pair l="w" r="ae" v="-25"/>
- <pair l="w" r="agrave" v="-25"/>
- <pair l="w" r="aring" v="-25"/>
- <pair l="w" r="atilde" v="-25"/>
- <pair l="w" r="c" v="-18"/>
- <pair l="w" r="colon" v="-13"/>
- <pair l="w" r="comma" v="-70"/>
- <pair l="w" r="e" v="-19"/>
- <pair l="w" r="eacute" v="-19"/>
- <pair l="w" r="ecircumflex" v="-19"/>
- <pair l="w" r="egrave" v="-19"/>
- <pair l="w" r="g" v="-21"/>
- <pair l="w" r="hyphen" v="23"/>
- <pair l="w" r="l" v="12"/>
- <pair l="w" r="o" v="-15"/>
- <pair l="w" r="oacute" v="-15"/>
- <pair l="w" r="odieresis" v="-15"/>
- <pair l="w" r="ograve" v="-15"/>
- <pair l="w" r="oslash" v="-38"/>
- <pair l="w" r="period" v="-71"/>
- <pair l="w" r="s" v="-12"/>
- <pair l="w" r="semicolon" v="-13"/>
- <pair l="x" r="a" v="-32"/>
- <pair l="x" r="c" v="-49"/>
- <pair l="x" r="e" v="-50"/>
- <pair l="x" r="eacute" v="-50"/>
- <pair l="x" r="o" v="-45"/>
- <pair l="x" r="q" v="-43"/>
- <pair l="y" r="a" v="-26"/>
- <pair l="y" r="aacute" v="-26"/>
- <pair l="y" r="acircumflex" v="-26"/>
- <pair l="y" r="adieresis" v="-26"/>
- <pair l="y" r="ae" v="-26"/>
- <pair l="y" r="agrave" v="-26"/>
- <pair l="y" r="aring" v="-26"/>
- <pair l="y" r="atilde" v="-26"/>
- <pair l="y" r="c" v="-36"/>
- <pair l="y" r="colon" v="-11"/>
- <pair l="y" r="comma" v="-116"/>
- <pair l="y" r="e" v="-33"/>
- <pair l="y" r="eacute" v="-33"/>
- <pair l="y" r="ecircumflex" v="-33"/>
- <pair l="y" r="egrave" v="-33"/>
- <pair l="y" r="g" v="-32"/>
- <pair l="y" r="hyphen" v="0"/>
- <pair l="y" r="l" v="14"/>
- <pair l="y" r="o" v="-35"/>
- <pair l="y" r="oacute" v="-35"/>
- <pair l="y" r="odieresis" v="-35"/>
- <pair l="y" r="ograve" v="-35"/>
- <pair l="y" r="oslash" v="-62"/>
- <pair l="y" r="period" v="-117"/>
- <pair l="y" r="s" v="-17"/>
- <pair l="y" r="semicolon" v="-11"/>
- <pair l="zero" r="four" v="30"/>
- <pair l="zero" r="one" v="-111"/>
- <pair l="zero" r="seven" v="-73"/>
- </kernsubtable>
- </kern>
-
- <name>
- <namerecord nameID="0" platformID="1" platEncID="0" langID="0x0">
- Copyright (c) 2001 by Bigelow &amp; Holmes Inc. Instructions copyright (c) 2001 by URW++.
- </namerecord>
- <namerecord nameID="1" platformID="1" platEncID="0" langID="0x0">
- Luxi Sans
- </namerecord>
- <namerecord nameID="2" platformID="1" platEncID="0" langID="0x0">
- Regular
- </namerecord>
- <namerecord nameID="3" platformID="1" platEncID="0" langID="0x0">
- Luxi Sans Regular: B&amp;H
- </namerecord>
- <namerecord nameID="4" platformID="1" platEncID="0" langID="0x0">
- Luxi Sans Regular
- </namerecord>
- <namerecord nameID="5" platformID="1" platEncID="0" langID="0x0">
- 1.2 : October 12, 2001
- </namerecord>
- <namerecord nameID="6" platformID="1" platEncID="0" langID="0x0">
- LuxiSans
- </namerecord>
- <namerecord nameID="7" platformID="1" platEncID="0" langID="0x0">
- Luxi is a registered trademark of Bigelow &amp; Holmes Inc.
- </namerecord>
- <namerecord nameID="8" platformID="1" platEncID="0" langID="0x0">
- Bigelow &amp; Holmes Inc.
- </namerecord>
- <namerecord nameID="9" platformID="1" platEncID="0" langID="0x0">
- Kris Holmes and Charles Bigelow
- </namerecord>
- <namerecord nameID="11" platformID="1" platEncID="0" langID="0x0">
- http://www.urwpp.de
- </namerecord>
- <namerecord nameID="12" platformID="1" platEncID="0" langID="0x0">
- design@bigelowandholmes.com
- </namerecord>
- <namerecord nameID="0" platformID="3" platEncID="1" langID="0x409">
- Copyright (c) 2001 by Bigelow &amp; Holmes Inc. Instructions copyright (c) 2001 by URW++.
- </namerecord>
- <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
- Luxi Sans
- </namerecord>
- <namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
- Regular
- </namerecord>
- <namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
- Luxi Sans Regular: B&amp;H
- </namerecord>
- <namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
- Luxi Sans Regular
- </namerecord>
- <namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
- 1.2 : October 12, 2001
- </namerecord>
- <namerecord nameID="6" platformID="3" platEncID="1" langID="0x409">
- LuxiSans
- </namerecord>
- <namerecord nameID="7" platformID="3" platEncID="1" langID="0x409">
- Luxi is a registered trademark of Bigelow &amp; Holmes Inc.
- </namerecord>
- <namerecord nameID="8" platformID="3" platEncID="1" langID="0x409">
- Bigelow &amp; Holmes Inc.
- </namerecord>
- <namerecord nameID="9" platformID="3" platEncID="1" langID="0x409">
- Kris Holmes and Charles Bigelow
- </namerecord>
- <namerecord nameID="11" platformID="3" platEncID="1" langID="0x409">
- http://www.urwpp.de
- </namerecord>
- <namerecord nameID="12" platformID="3" platEncID="1" langID="0x409">
- design@bigelowandholmes.com
- </namerecord>
- </name>
-
- <post>
- <formatType value="2.0"/>
- <italicAngle value="0.0"/>
- <underlinePosition value="0"/>
- <underlineThickness value="0"/>
- <isFixedPitch value="0"/>
- <minMemType42 value="0"/>
- <maxMemType42 value="0"/>
- <minMemType1 value="0"/>
- <maxMemType1 value="0"/>
- <psNames>
- <!-- This file uses unique glyph names based on the information
- found in the 'post' table. Since these names might not be unique,
- we have to invent artificial names in case of clashes. In order to
- be able to retain the original information, we need a name to
- ps name mapping for those cases where they differ. That's what
- you see below.
- -->
- <psName name=".notdef#1" psName=".notdef"/>
- <psName name=".notdef#10" psName=".notdef"/>
- <psName name=".notdef#11" psName=".notdef"/>
- <psName name=".notdef#12" psName=".notdef"/>
- <psName name=".notdef#13" psName=".notdef"/>
- <psName name=".notdef#14" psName=".notdef"/>
- <psName name=".notdef#15" psName=".notdef"/>
- <psName name=".notdef#16" psName=".notdef"/>
- <psName name=".notdef#17" psName=".notdef"/>
- <psName name=".notdef#18" psName=".notdef"/>
- <psName name=".notdef#2" psName=".notdef"/>
- <psName name=".notdef#3" psName=".notdef"/>
- <psName name=".notdef#4" psName=".notdef"/>
- <psName name=".notdef#5" psName=".notdef"/>
- <psName name=".notdef#6" psName=".notdef"/>
- <psName name=".notdef#7" psName=".notdef"/>
- <psName name=".notdef#8" psName=".notdef"/>
- <psName name=".notdef#9" psName=".notdef"/>
- <psName name="Euro#1" psName="Euro"/>
- <psName name="fi#1" psName="fi"/>
- <psName name="fl#1" psName="fl"/>
- <psName name="fraction#1" psName="fraction"/>
- <psName name="hyphen#1" psName="hyphen"/>
- <psName name="macron#1" psName="macron"/>
- <psName name="periodcentered#1" psName="periodcentered"/>
- <psName name="semicolon#1" psName="semicolon"/>
- </psNames>
- <extraNames>
- <!-- following are the name that are not taken from the standard Mac glyph order -->
- <psName name="fraction"/>
- <psName name="fi"/>
- <psName name="Euro"/>
- <psName name="tilde"/>
- <psName name="macron"/>
- <psName name="Euro"/>
- <psName name="sfthyphen"/>
- <psName name="periodcentered"/>
- <psName name="Amacron"/>
- <psName name="amacron"/>
- <psName name="Abreve"/>
- <psName name="abreve"/>
- <psName name="Aogonek"/>
- <psName name="aogonek"/>
- <psName name="Ccircumflex"/>
- <psName name="ccircumflex"/>
- <psName name="Cdotaccent"/>
- <psName name="cdotaccent"/>
- <psName name="Dcaron"/>
- <psName name="dcaron"/>
- <psName name="Dcroat"/>
- <psName name="dcroat"/>
- <psName name="Emacron"/>
- <psName name="emacron"/>
- <psName name="Ebreve"/>
- <psName name="ebreve"/>
- <psName name="Edotaccent"/>
- <psName name="edotaccent"/>
- <psName name="Eogonek"/>
- <psName name="eogonek"/>
- <psName name="Ecaron"/>
- <psName name="ecaron"/>
- <psName name="Gcircumflex"/>
- <psName name="gcircumflex"/>
- <psName name="Gdotaccent"/>
- <psName name="gdotaccent"/>
- <psName name="Gcommaaccent"/>
- <psName name="gcommaaccent"/>
- <psName name="Hcircumflex"/>
- <psName name="hcircumflex"/>
- <psName name="Hbar"/>
- <psName name="hbar"/>
- <psName name="Itilde"/>
- <psName name="itilde"/>
- <psName name="Imacron"/>
- <psName name="imacron"/>
- <psName name="Ibreve"/>
- <psName name="ibreve"/>
- <psName name="Iogonek"/>
- <psName name="iogonek"/>
- <psName name="IJ"/>
- <psName name="ij"/>
- <psName name="Jcircumflex"/>
- <psName name="jcircumflex"/>
- <psName name="Kcommaaccent"/>
- <psName name="kcommaaccent"/>
- <psName name="kgreenlandic"/>
- <psName name="Lacute"/>
- <psName name="lacute"/>
- <psName name="Lcommaaccent"/>
- <psName name="lcommaaccent"/>
- <psName name="Lcaron"/>
- <psName name="lcaron"/>
- <psName name="Ldot"/>
- <psName name="ldot"/>
- <psName name="Nacute"/>
- <psName name="nacute"/>
- <psName name="Ncommaaccent"/>
- <psName name="ncommaaccent"/>
- <psName name="Ncaron"/>
- <psName name="ncaron"/>
- <psName name="napostrophe"/>
- <psName name="Eng"/>
- <psName name="eng"/>
- <psName name="Omacron"/>
- <psName name="omacron"/>
- <psName name="Obreve"/>
- <psName name="obreve"/>
- <psName name="Ohungarumlaut"/>
- <psName name="ohungarumlaut"/>
- <psName name="Racute"/>
- <psName name="racute"/>
- <psName name="Rcommaaccent"/>
- <psName name="rcommaaccent"/>
- <psName name="Rcaron"/>
- <psName name="rcaron"/>
- <psName name="Sacute"/>
- <psName name="sacute"/>
- <psName name="Scircumflex"/>
- <psName name="scircumflex"/>
- <psName name="Tcommaaccent"/>
- <psName name="tcommaaccent"/>
- <psName name="Tcaron"/>
- <psName name="tcaron"/>
- <psName name="Tbar"/>
- <psName name="tbar"/>
- <psName name="Utilde"/>
- <psName name="utilde"/>
- <psName name="Umacron"/>
- <psName name="umacron"/>
- <psName name="Ubreve"/>
- <psName name="ubreve"/>
- <psName name="Uring"/>
- <psName name="uring"/>
- <psName name="Uhungarumlaut"/>
- <psName name="uhungarumlaut"/>
- <psName name="Uogonek"/>
- <psName name="uogonek"/>
- <psName name="Wcircumflex"/>
- <psName name="wcircumflex"/>
- <psName name="Ycircumflex"/>
- <psName name="ycircumflex"/>
- <psName name="Zacute"/>
- <psName name="zacute"/>
- <psName name="Zdotaccent"/>
- <psName name="zdotaccent"/>
- <psName name="longs"/>
- <psName name="Scommaaccent"/>
- <psName name="scommaaccent"/>
- <psName name="Tcommabelow"/>
- <psName name="tcommabelow"/>
- <psName name="Unterkomma"/>
- <psName name="semicolon"/>
- <psName name="anoteleia"/>
- <psName name="hyphen"/>
- <psName name="nbhyphen"/>
- <psName name="figuredash"/>
- <psName name="afii00208"/>
- <psName name="quotereversed"/>
- <psName name="radicalex"/>
- <psName name="estimated"/>
- <psName name="dotmath"/>
- <psName name="fi"/>
- <psName name="fl"/>
- <psName name="foursuperiour"/>
- <psName name="dotlessj"/>
- </extraNames>
- </post>
-
- <gasp>
- <gaspRange rangeMaxPPEM="8" rangeGaspBehavior="2"/>
- <gaspRange rangeMaxPPEM="16" rangeGaspBehavior="1"/>
- <gaspRange rangeMaxPPEM="65535" rangeGaspBehavior="3"/>
- </gasp>
-
- <vhea>
- <tableVersion value="1.0"/>
- <ascent value="2033"/>
- <descent value="432"/>
- <lineGap value="0"/>
- <advanceHeightMax value="2465"/>
- <minTopSideBearing value="0"/>
- <minBottomSideBearing value="0"/>
- <yMaxExtent value="2465"/>
- <caretSlopeRise value="0"/>
- <caretSlopeRun value="1"/>
- <reserved0 value="0"/>
- <reserved1 value="0"/>
- <reserved2 value="0"/>
- <reserved3 value="0"/>
- <reserved4 value="0"/>
- <metricDataFormat value="0"/>
- <numberOfVMetrics value="391"/>
- </vhea>
-
- <vmtx>
- <mtx name=".notdef" height="2465" tsb="553"/>
- <mtx name=".notdef#1" height="0" tsb="0"/>
- <mtx name=".notdef#10" height="2465" tsb="0"/>
- <mtx name=".notdef#11" height="2465" tsb="0"/>
- <mtx name=".notdef#12" height="2465" tsb="0"/>
- <mtx name=".notdef#13" height="2465" tsb="0"/>
- <mtx name=".notdef#14" height="2465" tsb="0"/>
- <mtx name=".notdef#15" height="2465" tsb="0"/>
- <mtx name=".notdef#16" height="1139" tsb="0"/>
- <mtx name=".notdef#17" height="2465" tsb="0"/>
- <mtx name=".notdef#18" height="2465" tsb="0"/>
- <mtx name=".notdef#2" height="2465" tsb="0"/>
- <mtx name=".notdef#3" height="2465" tsb="0"/>
- <mtx name=".notdef#4" height="2465" tsb="0"/>
- <mtx name=".notdef#5" height="2465" tsb="0"/>
- <mtx name=".notdef#6" height="2465" tsb="0"/>
- <mtx name=".notdef#7" height="2465" tsb="0"/>
- <mtx name=".notdef#8" height="2465" tsb="0"/>
- <mtx name=".notdef#9" height="2465" tsb="0"/>
- <mtx name="A" height="2465" tsb="553"/>
- <mtx name="AE" height="2465" tsb="553"/>
- <mtx name="Aacute" height="2465" tsb="108"/>
- <mtx name="Abreve" height="2465" tsb="108"/>
- <mtx name="Acircumflex" height="2465" tsb="108"/>
- <mtx name="Adieresis" height="2465" tsb="256"/>
- <mtx name="Agrave" height="2465" tsb="108"/>
- <mtx name="Amacron" height="2465" tsb="281"/>
- <mtx name="Aogonek" height="2465" tsb="553"/>
- <mtx name="Aring" height="2465" tsb="98"/>
- <mtx name="Atilde" height="2465" tsb="195"/>
- <mtx name="B" height="2465" tsb="553"/>
- <mtx name="C" height="2465" tsb="516"/>
- <mtx name="Cacute" height="2465" tsb="108"/>
- <mtx name="Ccaron" height="2465" tsb="108"/>
- <mtx name="Ccedilla" height="2465" tsb="516"/>
- <mtx name="Ccircumflex" height="2465" tsb="108"/>
- <mtx name="Cdotaccent" height="2465" tsb="232"/>
- <mtx name="D" height="2465" tsb="553"/>
- <mtx name="Dcaron" height="2465" tsb="108"/>
- <mtx name="Dcroat" height="2465" tsb="553"/>
- <mtx name="E" height="2465" tsb="553"/>
- <mtx name="Eacute" height="2465" tsb="108"/>
- <mtx name="Ebreve" height="2465" tsb="108"/>
- <mtx name="Ecaron" height="2465" tsb="108"/>
- <mtx name="Ecircumflex" height="2465" tsb="108"/>
- <mtx name="Edieresis" height="2465" tsb="256"/>
- <mtx name="Edotaccent" height="2465" tsb="232"/>
- <mtx name="Egrave" height="2465" tsb="108"/>
- <mtx name="Emacron" height="2465" tsb="281"/>
- <mtx name="Eng" height="2465" tsb="553"/>
- <mtx name="Eogonek" height="2465" tsb="553"/>
- <mtx name="Eth" height="2465" tsb="553"/>
- <mtx name="Euro" height="2465" tsb="518"/>
- <mtx name="Euro#1" height="2465" tsb="518"/>
- <mtx name="F" height="2465" tsb="553"/>
- <mtx name="G" height="2465" tsb="516"/>
- <mtx name="Gbreve" height="2465" tsb="108"/>
- <mtx name="Gcircumflex" height="2465" tsb="108"/>
- <mtx name="Gcommaaccent" height="2465" tsb="516"/>
- <mtx name="Gdotaccent" height="2465" tsb="232"/>
- <mtx name="H" height="2465" tsb="553"/>
- <mtx name="Hbar" height="2465" tsb="553"/>
- <mtx name="Hcircumflex" height="2465" tsb="108"/>
- <mtx name="I" height="2465" tsb="553"/>
- <mtx name="IJ" height="2465" tsb="553"/>
- <mtx name="Iacute" height="2465" tsb="108"/>
- <mtx name="Ibreve" height="2465" tsb="108"/>
- <mtx name="Icircumflex" height="2465" tsb="108"/>
- <mtx name="Idieresis" height="2465" tsb="256"/>
- <mtx name="Idotaccent" height="2465" tsb="232"/>
- <mtx name="Igrave" height="2465" tsb="108"/>
- <mtx name="Imacron" height="2465" tsb="281"/>
- <mtx name="Iogonek" height="2465" tsb="553"/>
- <mtx name="Itilde" height="2465" tsb="195"/>
- <mtx name="J" height="2465" tsb="553"/>
- <mtx name="Jcircumflex" height="2465" tsb="108"/>
- <mtx name="K" height="2465" tsb="553"/>
- <mtx name="Kcommaaccent" height="2465" tsb="553"/>
- <mtx name="L" height="2465" tsb="553"/>
- <mtx name="Lacute" height="2465" tsb="108"/>
- <mtx name="Lcaron" height="2465" tsb="553"/>
- <mtx name="Lcommaaccent" height="2465" tsb="553"/>
- <mtx name="Ldot" height="2465" tsb="553"/>
- <mtx name="Lslash" height="2465" tsb="553"/>
- <mtx name="M" height="2465" tsb="553"/>
- <mtx name="N" height="2465" tsb="553"/>
- <mtx name="Nacute" height="2465" tsb="108"/>
- <mtx name="Ncaron" height="2465" tsb="108"/>
- <mtx name="Ncommaaccent" height="2465" tsb="553"/>
- <mtx name="Ntilde" height="2465" tsb="195"/>
- <mtx name="O" height="2465" tsb="516"/>
- <mtx name="OE" height="2465" tsb="516"/>
- <mtx name="Oacute" height="2465" tsb="108"/>
- <mtx name="Obreve" height="2465" tsb="108"/>
- <mtx name="Ocircumflex" height="2465" tsb="108"/>
- <mtx name="Odieresis" height="2465" tsb="256"/>
- <mtx name="Ograve" height="2465" tsb="108"/>
- <mtx name="Ohungarumlaut" height="2465" tsb="108"/>
- <mtx name="Omacron" height="2465" tsb="281"/>
- <mtx name="Oslash" height="2465" tsb="516"/>
- <mtx name="Otilde" height="2465" tsb="195"/>
- <mtx name="P" height="2465" tsb="553"/>
- <mtx name="Q" height="2465" tsb="516"/>
- <mtx name="R" height="2465" tsb="553"/>
- <mtx name="Racute" height="2465" tsb="108"/>
- <mtx name="Rcaron" height="2465" tsb="108"/>
- <mtx name="Rcommaaccent" height="2465" tsb="553"/>
- <mtx name="S" height="2465" tsb="516"/>
- <mtx name="Sacute" height="2465" tsb="108"/>
- <mtx name="Scaron" height="2465" tsb="108"/>
- <mtx name="Scedilla" height="2465" tsb="516"/>
- <mtx name="Scircumflex" height="2465" tsb="108"/>
- <mtx name="Scommaaccent" height="2465" tsb="516"/>
- <mtx name="T" height="2465" tsb="553"/>
- <mtx name="Tbar" height="2465" tsb="553"/>
- <mtx name="Tcaron" height="2465" tsb="108"/>
- <mtx name="Tcommaaccent" height="2465" tsb="553"/>
- <mtx name="Tcommabelow" height="2465" tsb="553"/>
- <mtx name="Thorn" height="2465" tsb="553"/>
- <mtx name="U" height="2465" tsb="553"/>
- <mtx name="Uacute" height="2465" tsb="108"/>
- <mtx name="Ubreve" height="2465" tsb="108"/>
- <mtx name="Ucircumflex" height="2465" tsb="108"/>
- <mtx name="Udieresis" height="2465" tsb="256"/>
- <mtx name="Ugrave" height="2465" tsb="108"/>
- <mtx name="Uhungarumlaut" height="2465" tsb="108"/>
- <mtx name="Umacron" height="2465" tsb="281"/>
- <mtx name="Unterkomma" height="2465" tsb="2144"/>
- <mtx name="Uogonek" height="2465" tsb="553"/>
- <mtx name="Uring" height="2465" tsb="0"/>
- <mtx name="Utilde" height="2465" tsb="195"/>
- <mtx name="V" height="2465" tsb="553"/>
- <mtx name="W" height="2465" tsb="553"/>
- <mtx name="Wcircumflex" height="2465" tsb="108"/>
- <mtx name="X" height="2465" tsb="553"/>
- <mtx name="Y" height="2465" tsb="553"/>
- <mtx name="Yacute" height="2465" tsb="108"/>
- <mtx name="Ycircumflex" height="2465" tsb="108"/>
- <mtx name="Ydieresis" height="2465" tsb="256"/>
- <mtx name="Z" height="2465" tsb="553"/>
- <mtx name="Zacute" height="2465" tsb="108"/>
- <mtx name="Zcaron" height="2465" tsb="108"/>
- <mtx name="Zdotaccent" height="2465" tsb="232"/>
- <mtx name="a" height="2465" tsb="923"/>
- <mtx name="aacute" height="2465" tsb="429"/>
- <mtx name="abreve" height="2465" tsb="429"/>
- <mtx name="acircumflex" height="2465" tsb="429"/>
- <mtx name="acute" height="2465" tsb="429"/>
- <mtx name="adieresis" height="2465" tsb="577"/>
- <mtx name="ae" height="2465" tsb="923"/>
- <mtx name="afii00208" height="2465" tsb="1391"/>
- <mtx name="agrave" height="2465" tsb="429"/>
- <mtx name="amacron" height="2465" tsb="602"/>
- <mtx name="ampersand" height="2465" tsb="516"/>
- <mtx name="anoteleia" height="2465" tsb="1295"/>
- <mtx name="aogonek" height="2465" tsb="923"/>
- <mtx name="aring" height="2465" tsb="296"/>
- <mtx name="asciicircum" height="2465" tsb="553"/>
- <mtx name="asciitilde" height="2465" tsb="1261"/>
- <mtx name="asterisk" height="2465" tsb="553"/>
- <mtx name="at" height="2465" tsb="516"/>
- <mtx name="atilde" height="2465" tsb="516"/>
- <mtx name="b" height="2465" tsb="454"/>
- <mtx name="backslash" height="2465" tsb="553"/>
- <mtx name="bar" height="2465" tsb="454"/>
- <mtx name="braceleft" height="2465" tsb="454"/>
- <mtx name="braceright" height="2465" tsb="454"/>
- <mtx name="bracketleft" height="2465" tsb="454"/>
- <mtx name="bracketright" height="2465" tsb="454"/>
- <mtx name="breve" height="2465" tsb="429"/>
- <mtx name="brokenbar" height="2465" tsb="454"/>
- <mtx name="bullet" height="2465" tsb="923"/>
- <mtx name="c" height="2465" tsb="923"/>
- <mtx name="cacute" height="2465" tsb="429"/>
- <mtx name="caron" height="2465" tsb="429"/>
- <mtx name="ccaron" height="2465" tsb="429"/>
- <mtx name="ccedilla" height="2465" tsb="923"/>
- <mtx name="ccircumflex" height="2465" tsb="429"/>
- <mtx name="cdotaccent" height="2465" tsb="553"/>
- <mtx name="cedilla" height="2465" tsb="2033"/>
- <mtx name="cent" height="2465" tsb="553"/>
- <mtx name="circumflex" height="2465" tsb="429"/>
- <mtx name="colon" height="2465" tsb="947"/>
- <mtx name="comma" height="2465" tsb="1786"/>
- <mtx name="copyright" height="2465" tsb="553"/>
- <mtx name="currency" height="2465" tsb="845"/>
- <mtx name="d" height="2465" tsb="454"/>
- <mtx name="dagger" height="2465" tsb="553"/>
- <mtx name="daggerdbl" height="2465" tsb="553"/>
- <mtx name="dcaron" height="2465" tsb="454"/>
- <mtx name="dcroat" height="2465" tsb="454"/>
- <mtx name="degree" height="2465" tsb="516"/>
- <mtx name="dieresis" height="2465" tsb="577"/>
- <mtx name="divide" height="2465" tsb="849"/>
- <mtx name="dollar" height="2465" tsb="429"/>
- <mtx name="dotaccent" height="2465" tsb="553"/>
- <mtx name="dotlessi" height="2465" tsb="947"/>
- <mtx name="dotlessj" height="2465" tsb="947"/>
- <mtx name="dotmath" height="2465" tsb="1295"/>
- <mtx name="e" height="2465" tsb="923"/>
- <mtx name="eacute" height="2465" tsb="429"/>
- <mtx name="ebreve" height="2465" tsb="429"/>
- <mtx name="ecaron" height="2465" tsb="429"/>
- <mtx name="ecircumflex" height="2465" tsb="429"/>
- <mtx name="edieresis" height="2465" tsb="577"/>
- <mtx name="edotaccent" height="2465" tsb="553"/>
- <mtx name="egrave" height="2465" tsb="429"/>
- <mtx name="eight" height="2465" tsb="516"/>
- <mtx name="ellipsis" height="2465" tsb="1836"/>
- <mtx name="emacron" height="2465" tsb="602"/>
- <mtx name="emdash" height="2465" tsb="1391"/>
- <mtx name="endash" height="2465" tsb="1367"/>
- <mtx name="eng" height="2465" tsb="923"/>
- <mtx name="eogonek" height="2465" tsb="923"/>
- <mtx name="equal" height="2465" tsb="1182"/>
- <mtx name="estimated" height="2465" tsb="923"/>
- <mtx name="eth" height="2465" tsb="357"/>
- <mtx name="exclam" height="2465" tsb="553"/>
- <mtx name="exclamdown" height="2465" tsb="947"/>
- <mtx name="f" height="2465" tsb="429"/>
- <mtx name="fi" height="2465" tsb="429"/>
- <mtx name="fi#1" height="2465" tsb="429"/>
- <mtx name="figuredash" height="2465" tsb="1367"/>
- <mtx name="five" height="2465" tsb="553"/>
- <mtx name="fl" height="2465" tsb="429"/>
- <mtx name="fl#1" height="2465" tsb="429"/>
- <mtx name="florin" height="2465" tsb="516"/>
- <mtx name="four" height="2465" tsb="553"/>
- <mtx name="foursuperiour" height="2465" tsb="553"/>
- <mtx name="fraction" height="2465" tsb="516"/>
- <mtx name="fraction#1" height="2465" tsb="516"/>
- <mtx name="g" height="2465" tsb="923"/>
- <mtx name="gbreve" height="2465" tsb="429"/>
- <mtx name="gcircumflex" height="2465" tsb="429"/>
- <mtx name="gcommaaccent" height="2465" tsb="296"/>
- <mtx name="gdotaccent" height="2465" tsb="553"/>
- <mtx name="germandbls" height="2465" tsb="429"/>
- <mtx name="grave" height="2465" tsb="429"/>
- <mtx name="greater" height="2465" tsb="947"/>
- <mtx name="guillemotleft" height="2465" tsb="1046"/>
- <mtx name="guillemotright" height="2465" tsb="1046"/>
- <mtx name="guilsinglleft" height="2465" tsb="1046"/>
- <mtx name="guilsinglright" height="2465" tsb="1046"/>
- <mtx name="h" height="2465" tsb="454"/>
- <mtx name="hbar" height="2465" tsb="454"/>
- <mtx name="hcircumflex" height="2465" tsb="34"/>
- <mtx name="hungarumlaut" height="2465" tsb="429"/>
- <mtx name="hyphen" height="2465" tsb="1367"/>
- <mtx name="hyphen#1" height="2465" tsb="1367"/>
- <mtx name="i" height="2465" tsb="553"/>
- <mtx name="iacute" height="2465" tsb="429"/>
- <mtx name="ibreve" height="2465" tsb="429"/>
- <mtx name="icircumflex" height="2465" tsb="429"/>
- <mtx name="idieresis" height="2465" tsb="577"/>
- <mtx name="igrave" height="2465" tsb="429"/>
- <mtx name="ij" height="2465" tsb="553"/>
- <mtx name="imacron" height="2465" tsb="602"/>
- <mtx name="iogonek" height="2465" tsb="553"/>
- <mtx name="itilde" height="2465" tsb="516"/>
- <mtx name="j" height="2465" tsb="553"/>
- <mtx name="jcircumflex" height="2465" tsb="429"/>
- <mtx name="k" height="2465" tsb="454"/>
- <mtx name="kcommaaccent" height="2465" tsb="454"/>
- <mtx name="kgreenlandic" height="2465" tsb="947"/>
- <mtx name="l" height="2465" tsb="454"/>
- <mtx name="lacute" height="2465" tsb="34"/>
- <mtx name="lcaron" height="2465" tsb="454"/>
- <mtx name="lcommaaccent" height="2465" tsb="454"/>
- <mtx name="ldot" height="2465" tsb="454"/>
- <mtx name="less" height="2465" tsb="947"/>
- <mtx name="logicalnot" height="2465" tsb="1145"/>
- <mtx name="longs" height="2465" tsb="429"/>
- <mtx name="lslash" height="2465" tsb="454"/>
- <mtx name="m" height="2465" tsb="923"/>
- <mtx name="macron" height="2465" tsb="602"/>
- <mtx name="macron#1" height="2465" tsb="429"/>
- <mtx name="minus" height="2465" tsb="1367"/>
- <mtx name="mu" height="2465" tsb="947"/>
- <mtx name="multiply" height="2465" tsb="961"/>
- <mtx name="n" height="2465" tsb="923"/>
- <mtx name="nacute" height="2465" tsb="429"/>
- <mtx name="napostrophe" height="2465" tsb="454"/>
- <mtx name="nbhyphen" height="2465" tsb="1367"/>
- <mtx name="ncaron" height="2465" tsb="429"/>
- <mtx name="ncommaaccent" height="2465" tsb="923"/>
- <mtx name="nine" height="2465" tsb="515"/>
- <mtx name="nonbreakingspace" height="2465" tsb="2033"/>
- <mtx name="ntilde" height="2465" tsb="516"/>
- <mtx name="numbersign" height="2465" tsb="553"/>
- <mtx name="o" height="2465" tsb="923"/>
- <mtx name="oacute" height="2465" tsb="429"/>
- <mtx name="obreve" height="2465" tsb="429"/>
- <mtx name="ocircumflex" height="2465" tsb="429"/>
- <mtx name="odieresis" height="2465" tsb="577"/>
- <mtx name="oe" height="2465" tsb="923"/>
- <mtx name="ogonek" height="2465" tsb="2033"/>
- <mtx name="ograve" height="2465" tsb="429"/>
- <mtx name="ohungarumlaut" height="2465" tsb="429"/>
- <mtx name="omacron" height="2465" tsb="602"/>
- <mtx name="one" height="2465" tsb="516"/>
- <mtx name="onehalf" height="2465" tsb="516"/>
- <mtx name="onequarter" height="2465" tsb="516"/>
- <mtx name="onesuperior" height="2465" tsb="530"/>
- <mtx name="ordfeminine" height="2465" tsb="515"/>
- <mtx name="ordmasculine" height="2465" tsb="516"/>
- <mtx name="oslash" height="2465" tsb="923"/>
- <mtx name="otilde" height="2465" tsb="516"/>
- <mtx name="p" height="2465" tsb="923"/>
- <mtx name="paragraph" height="2465" tsb="553"/>
- <mtx name="parenleft" height="2465" tsb="454"/>
- <mtx name="parenright" height="2465" tsb="454"/>
- <mtx name="percent" height="2465" tsb="516"/>
- <mtx name="period" height="2465" tsb="1786"/>
- <mtx name="periodcentered" height="2465" tsb="1295"/>
- <mtx name="periodcentered#1" height="2465" tsb="1295"/>
- <mtx name="perthousand" height="2465" tsb="516"/>
- <mtx name="plus" height="2465" tsb="947"/>
- <mtx name="plusminus" height="2465" tsb="849"/>
- <mtx name="q" height="2465" tsb="923"/>
- <mtx name="question" height="2465" tsb="516"/>
- <mtx name="questiondown" height="2465" tsb="947"/>
- <mtx name="quotedbl" height="2465" tsb="454"/>
- <mtx name="quotedblbase" height="2465" tsb="1836"/>
- <mtx name="quotedblleft" height="2465" tsb="454"/>
- <mtx name="quotedblright" height="2465" tsb="454"/>
- <mtx name="quoteleft" height="2465" tsb="454"/>
- <mtx name="quotereversed" height="2465" tsb="2033"/>
- <mtx name="quoteright" height="2465" tsb="454"/>
- <mtx name="quotesinglbase" height="2465" tsb="1786"/>
- <mtx name="quotesingle" height="2465" tsb="454"/>
- <mtx name="r" height="2465" tsb="923"/>
- <mtx name="racute" height="2465" tsb="429"/>
- <mtx name="radicalex" height="2465" tsb="429"/>
- <mtx name="rcaron" height="2465" tsb="429"/>
- <mtx name="rcommaaccent" height="2465" tsb="923"/>
- <mtx name="registered" height="2465" tsb="553"/>
- <mtx name="ring" height="2465" tsb="296"/>
- <mtx name="s" height="2465" tsb="923"/>
- <mtx name="sacute" height="2465" tsb="429"/>
- <mtx name="scaron" height="2465" tsb="429"/>
- <mtx name="scedilla" height="2465" tsb="923"/>
- <mtx name="scircumflex" height="2465" tsb="429"/>
- <mtx name="scommaaccent" height="2465" tsb="923"/>
- <mtx name="section" height="2465" tsb="516"/>
- <mtx name="semicolon" height="2465" tsb="947"/>
- <mtx name="semicolon#1" height="2465" tsb="947"/>
- <mtx name="seven" height="2465" tsb="553"/>
- <mtx name="sfthyphen" height="2465" tsb="1367"/>
- <mtx name="six" height="2465" tsb="515"/>
- <mtx name="slash" height="2465" tsb="553"/>
- <mtx name="space" height="2465" tsb="2033"/>
- <mtx name="sterling" height="2465" tsb="516"/>
- <mtx name="t" height="2465" tsb="731"/>
- <mtx name="tbar" height="2465" tsb="731"/>
- <mtx name="tcaron" height="2465" tsb="345"/>
- <mtx name="tcommaaccent" height="2465" tsb="731"/>
- <mtx name="tcommabelow" height="2465" tsb="731"/>
- <mtx name="thorn" height="2465" tsb="454"/>
- <mtx name="three" height="2465" tsb="516"/>
- <mtx name="threequarters" height="2465" tsb="516"/>
- <mtx name="threesuperior" height="2465" tsb="530"/>
- <mtx name="tilde" height="2465" tsb="516"/>
- <mtx name="trademark" height="2465" tsb="553"/>
- <mtx name="two" height="2465" tsb="516"/>
- <mtx name="twosuperior" height="2465" tsb="530"/>
- <mtx name="u" height="2465" tsb="947"/>
- <mtx name="uacute" height="2465" tsb="429"/>
- <mtx name="ubreve" height="2465" tsb="429"/>
- <mtx name="ucircumflex" height="2465" tsb="429"/>
- <mtx name="udieresis" height="2465" tsb="577"/>
- <mtx name="ugrave" height="2465" tsb="429"/>
- <mtx name="uhungarumlaut" height="2465" tsb="429"/>
- <mtx name="umacron" height="2465" tsb="602"/>
- <mtx name="underscore" height="2465" tsb="2033"/>
- <mtx name="uogonek" height="2465" tsb="947"/>
- <mtx name="uring" height="2465" tsb="296"/>
- <mtx name="utilde" height="2465" tsb="516"/>
- <mtx name="v" height="2465" tsb="947"/>
- <mtx name="w" height="2465" tsb="947"/>
- <mtx name="wcircumflex" height="2465" tsb="429"/>
- <mtx name="x" height="2465" tsb="947"/>
- <mtx name="y" height="2465" tsb="947"/>
- <mtx name="yacute" height="2465" tsb="429"/>
- <mtx name="ycircumflex" height="2465" tsb="429"/>
- <mtx name="ydieresis" height="2465" tsb="577"/>
- <mtx name="yen" height="2465" tsb="553"/>
- <mtx name="z" height="2465" tsb="947"/>
- <mtx name="zacute" height="2465" tsb="429"/>
- <mtx name="zcaron" height="2465" tsb="429"/>
- <mtx name="zdotaccent" height="2465" tsb="553"/>
- <mtx name="zero" height="2465" tsb="516"/>
- </vmtx>
-
-</ttFont>
diff --git a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/make-other-hinting-txts.sh b/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/make-other-hinting-txts.sh
deleted file mode 100755
index afee131e8..000000000
--- a/Godeps/_workspace/src/code.google.com/p/freetype-go/testdata/make-other-hinting-txts.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/usr/bin/env bash
-#
-# This script creates the optional x-*-hinting.txt files from fonts that are
-# not checked in for copyright or file size reasons.
-#
-# Run it from this directory (testdata).
-#
-# It has only been tested on an Ubuntu 14.04 system.
-
-set -e
-
-: ${FONTDIR:=/usr/share/fonts/truetype}
-
-ln -sf $FONTDIR/droid/DroidSansJapanese.ttf x-droid-sans-japanese.ttf
-ln -sf $FONTDIR/msttcorefonts/Arial_Bold.ttf x-arial-bold.ttf
-ln -sf $FONTDIR/msttcorefonts/Times_New_Roman.ttf x-times-new-roman.ttf
-ln -sf $FONTDIR/ttf-dejavu/DejaVuSans-Oblique.ttf x-deja-vu-sans-oblique.ttf
-
-${CC:=gcc} ../cmd/print-glyph-points/main.c $(pkg-config --cflags --libs freetype2) -o print-glyph-points
-
-# Uncomment these lines to also recreate the luxisr-*-hinting.txt files.
-# ./print-glyph-points 12 luxisr.ttf sans_hinting > luxisr-12pt-sans-hinting.txt
-# ./print-glyph-points 12 luxisr.ttf with_hinting > luxisr-12pt-with-hinting.txt
-
-./print-glyph-points 9 x-droid-sans-japanese.ttf sans_hinting > x-droid-sans-japanese-9pt-sans-hinting.txt
-./print-glyph-points 9 x-droid-sans-japanese.ttf with_hinting > x-droid-sans-japanese-9pt-with-hinting.txt
-./print-glyph-points 11 x-arial-bold.ttf sans_hinting > x-arial-bold-11pt-sans-hinting.txt
-./print-glyph-points 11 x-arial-bold.ttf with_hinting > x-arial-bold-11pt-with-hinting.txt
-./print-glyph-points 13 x-times-new-roman.ttf sans_hinting > x-times-new-roman-13pt-sans-hinting.txt
-./print-glyph-points 13 x-times-new-roman.ttf with_hinting > x-times-new-roman-13pt-with-hinting.txt
-./print-glyph-points 17 x-deja-vu-sans-oblique.ttf sans_hinting > x-deja-vu-sans-oblique-17pt-sans-hinting.txt
-./print-glyph-points 17 x-deja-vu-sans-oblique.ttf with_hinting > x-deja-vu-sans-oblique-17pt-with-hinting.txt
-
-rm print-glyph-points
diff --git a/Godeps/_workspace/src/code.google.com/p/log4go/examples/ConsoleLogWriter_Manual.go b/Godeps/_workspace/src/code.google.com/p/log4go/examples/ConsoleLogWriter_Manual.go
index 394ca8380..d5ab3fa6c 100644
--- a/Godeps/_workspace/src/code.google.com/p/log4go/examples/ConsoleLogWriter_Manual.go
+++ b/Godeps/_workspace/src/code.google.com/p/log4go/examples/ConsoleLogWriter_Manual.go
@@ -4,7 +4,7 @@ import (
"time"
)
-import l4g "code.google.com/p/log4go"
+import l4g "github.com/mattermost/platform/Godeps/_workspace/src/code.google.com/p/log4go"
func main() {
log := l4g.NewLogger()
diff --git a/Godeps/_workspace/src/code.google.com/p/log4go/examples/FileLogWriter_Manual.go b/Godeps/_workspace/src/code.google.com/p/log4go/examples/FileLogWriter_Manual.go
index efd596aa6..2f73bf3ee 100644
--- a/Godeps/_workspace/src/code.google.com/p/log4go/examples/FileLogWriter_Manual.go
+++ b/Godeps/_workspace/src/code.google.com/p/log4go/examples/FileLogWriter_Manual.go
@@ -8,7 +8,7 @@ import (
"time"
)
-import l4g "code.google.com/p/log4go"
+import l4g "github.com/mattermost/platform/Godeps/_workspace/src/code.google.com/p/log4go"
const (
filename = "flw.log"
diff --git a/Godeps/_workspace/src/code.google.com/p/log4go/examples/SocketLogWriter_Manual.go b/Godeps/_workspace/src/code.google.com/p/log4go/examples/SocketLogWriter_Manual.go
index 400b698ca..6371d5933 100644
--- a/Godeps/_workspace/src/code.google.com/p/log4go/examples/SocketLogWriter_Manual.go
+++ b/Godeps/_workspace/src/code.google.com/p/log4go/examples/SocketLogWriter_Manual.go
@@ -4,7 +4,7 @@ import (
"time"
)
-import l4g "code.google.com/p/log4go"
+import l4g "github.com/mattermost/platform/Godeps/_workspace/src/code.google.com/p/log4go"
func main() {
log := l4g.NewLogger()
diff --git a/Godeps/_workspace/src/code.google.com/p/log4go/examples/XMLConfigurationExample.go b/Godeps/_workspace/src/code.google.com/p/log4go/examples/XMLConfigurationExample.go
index 164c2add4..5297f0728 100644
--- a/Godeps/_workspace/src/code.google.com/p/log4go/examples/XMLConfigurationExample.go
+++ b/Godeps/_workspace/src/code.google.com/p/log4go/examples/XMLConfigurationExample.go
@@ -1,6 +1,6 @@
package main
-import l4g "code.google.com/p/log4go"
+import l4g "github.com/mattermost/platform/Godeps/_workspace/src/code.google.com/p/log4go"
func main() {
// Load the configuration (isn't this easy?)
diff --git a/Godeps/_workspace/src/github.com/anachronistic/apns/client_mock.go b/Godeps/_workspace/src/github.com/anachronistic/apns/client_mock.go
index 29a1f4b23..f2271475e 100644
--- a/Godeps/_workspace/src/github.com/anachronistic/apns/client_mock.go
+++ b/Godeps/_workspace/src/github.com/anachronistic/apns/client_mock.go
@@ -1,6 +1,6 @@
package apns
-import "github.com/stretchr/testify/mock"
+import "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/mock"
type MockClient struct {
mock.Mock
diff --git a/Godeps/_workspace/src/github.com/anachronistic/apns/client_mock_test.go b/Godeps/_workspace/src/github.com/anachronistic/apns/client_mock_test.go
index 86e997b5a..84bbcf8e8 100644
--- a/Godeps/_workspace/src/github.com/anachronistic/apns/client_mock_test.go
+++ b/Godeps/_workspace/src/github.com/anachronistic/apns/client_mock_test.go
@@ -4,7 +4,7 @@ import (
"errors"
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
)
func TestMockClientConnectAndWrite(t *testing.T) {
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/README.md b/Godeps/_workspace/src/github.com/braintree/manners/README.md
index 8c9a239b4..09f6f9693 100644
--- a/Godeps/_workspace/src/github.com/braintree/manners/README.md
+++ b/Godeps/_workspace/src/github.com/braintree/manners/README.md
@@ -7,23 +7,26 @@ Manners allows you to shut your Go webserver down gracefully, without dropping a
```go
func main() {
handler := MyHTTPHandler()
- server := manners.NewServer()
- server.ListenAndServe(":7000", handler)
+ manners.ListenAndServe(":7000", handler)
}
```
Then, when you want to shut the server down:
```go
-server.Shutdown <- true
+manners.Close()
```
-(Note that this does not block until all the requests are finished. Rather, the call to server.ListenAndServe will stop blocking when all the requests are finished.)
+(Note that this does not block until all the requests are finished. Rather, the call to manners.ListenAndServe will stop blocking when all the requests are finished.)
Manners ensures that all requests are served by incrementing a WaitGroup when a request comes in and decrementing it when the request finishes.
If your request handler spawns Goroutines that are not guaranteed to finish with the request, you can ensure they are also completed with the `StartRoutine` and `FinishRoutine` functions on the server.
+### Known Issues
+
+Manners does not correctly shut down long-lived keepalive connections when issued a shutdown command. Clients on an idle keepalive connection may see a connection reset error rather than a close. See https://github.com/braintree/manners/issues/13 for details.
+
### Compatability
Manners 0.3.0 and above uses standard library functionality introduced in Go 1.3.
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/helper_test.go b/Godeps/_workspace/src/github.com/braintree/manners/helper_test.go
deleted file mode 100644
index ea721a180..000000000
--- a/Godeps/_workspace/src/github.com/braintree/manners/helper_test.go
+++ /dev/null
@@ -1,34 +0,0 @@
-package manners
-
-import (
- "net/http"
- "time"
-)
-
-// A response handler that blocks until it receives a signal; simulates an
-// arbitrarily long web request. The "ready" channel is to prevent a race
-// condition in the test where the test moves on before the server is ready
-// to handle the request.
-func newBlockingHandler(ready, done chan bool) *blockingHandler {
- return &blockingHandler{ready, done}
-}
-
-type blockingHandler struct {
- ready chan bool
- done chan bool
-}
-
-func (h *blockingHandler) ServeHTTP(resp http.ResponseWriter, req *http.Request) {
- h.ready <- true
- time.Sleep(1e2)
- h.done <- true
-}
-
-// A response handler that does nothing.
-func newTestHandler() testHandler {
- return testHandler{}
-}
-
-type testHandler struct{}
-
-func (h testHandler) ServeHTTP(resp http.ResponseWriter, req *http.Request) {}
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/helpers_test.go b/Godeps/_workspace/src/github.com/braintree/manners/helpers_test.go
new file mode 100644
index 000000000..dd9a8ba18
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/braintree/manners/helpers_test.go
@@ -0,0 +1,123 @@
+package manners
+
+import (
+ "bufio"
+ "crypto/tls"
+ "io/ioutil"
+ "net"
+ "net/http"
+ "testing"
+)
+
+func newServer() *GracefulServer {
+ return NewWithServer(new(http.Server))
+}
+
+// a simple step-controllable http client
+type client struct {
+ tls bool
+ addr net.Addr
+ connected chan error
+ sendrequest chan bool
+ response chan *rawResponse
+ closed chan bool
+}
+
+type rawResponse struct {
+ body []string
+ err error
+}
+
+func (c *client) Run() {
+ go func() {
+ var err error
+ conn, err := net.Dial(c.addr.Network(), c.addr.String())
+ if err != nil {
+ c.connected <- err
+ return
+ }
+ if c.tls {
+ conn = tls.Client(conn, &tls.Config{InsecureSkipVerify: true})
+ }
+ c.connected <- nil
+ for <-c.sendrequest {
+ _, err = conn.Write([]byte("GET / HTTP/1.1\nHost: localhost:8000\n\n"))
+ if err != nil {
+ c.response <- &rawResponse{err: err}
+ }
+ // Read response; no content
+ scanner := bufio.NewScanner(conn)
+ var lines []string
+ for scanner.Scan() {
+ // our null handler doesn't send a body, so we know the request is
+ // done when we reach the blank line after the headers
+ line := scanner.Text()
+ if line == "" {
+ break
+ }
+ lines = append(lines, line)
+ }
+ c.response <- &rawResponse{lines, scanner.Err()}
+ }
+ conn.Close()
+ ioutil.ReadAll(conn)
+ c.closed <- true
+ }()
+}
+
+func newClient(addr net.Addr, tls bool) *client {
+ return &client{
+ addr: addr,
+ tls: tls,
+ connected: make(chan error),
+ sendrequest: make(chan bool),
+ response: make(chan *rawResponse),
+ closed: make(chan bool),
+ }
+}
+
+// a handler that returns 200 ok with no body
+var nullHandler = http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {})
+
+func startGenericServer(t *testing.T, server *GracefulServer, statechanged chan http.ConnState, runner func() error) (l net.Listener, errc chan error) {
+ server.Addr = "localhost:0"
+ server.Handler = nullHandler
+ if statechanged != nil {
+ // Wrap the ConnState handler with something that will notify
+ // the statechanged channel when a state change happens
+ server.ConnState = func(conn net.Conn, newState http.ConnState) {
+ statechanged <- newState
+ }
+ }
+
+ server.up = make(chan net.Listener)
+ exitchan := make(chan error)
+
+ go func() {
+ exitchan <- runner()
+ }()
+
+ // wait for server socket to be bound
+ select {
+ case l = <-server.up:
+ // all good
+
+ case err := <-exitchan:
+ // all bad
+ t.Fatal("Server failed to start", err)
+ }
+ return l, exitchan
+}
+
+func startServer(t *testing.T, server *GracefulServer, statechanged chan http.ConnState) (
+ l net.Listener, errc chan error) {
+ return startGenericServer(t, server, statechanged, server.ListenAndServe)
+}
+
+func startTLSServer(t *testing.T, server *GracefulServer, certFile, keyFile string, statechanged chan http.ConnState) (l net.Listener, errc chan error) {
+ runner := func() error {
+ return server.ListenAndServeTLS(certFile, keyFile)
+ }
+
+ return startGenericServer(t, server, statechanged, runner)
+}
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/interfaces.go b/Godeps/_workspace/src/github.com/braintree/manners/interfaces.go
new file mode 100644
index 000000000..fd0732857
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/braintree/manners/interfaces.go
@@ -0,0 +1,7 @@
+package manners
+
+type waitGroup interface {
+ Add(int)
+ Done()
+ Wait()
+}
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/listener.go b/Godeps/_workspace/src/github.com/braintree/manners/listener.go
deleted file mode 100644
index dd84e4a2e..000000000
--- a/Godeps/_workspace/src/github.com/braintree/manners/listener.go
+++ /dev/null
@@ -1,49 +0,0 @@
-package manners
-
-import (
- "net"
- "sync"
-)
-
-func NewListener(l net.Listener, s *GracefulServer) *GracefulListener {
- return &GracefulListener{l, true, s, sync.RWMutex{}}
-}
-
-// A GracefulListener differs from a standard net.Listener in one way: if
-// Accept() is called after it is gracefully closed, it returns a
-// listenerAlreadyClosed error. The GracefulServer will ignore this
-// error.
-type GracefulListener struct {
- net.Listener
- open bool
- server *GracefulServer
- rw sync.RWMutex
-}
-
-func (l *GracefulListener) Accept() (net.Conn, error) {
- conn, err := l.Listener.Accept()
- if err != nil {
- l.rw.RLock()
- defer l.rw.RUnlock()
- if !l.open {
- err = listenerAlreadyClosed{err}
- }
- return nil, err
- }
- return conn, nil
-}
-
-func (l *GracefulListener) Close() error {
- l.rw.Lock()
- defer l.rw.Unlock()
- if !l.open {
- return nil
- }
- l.open = false
- err := l.Listener.Close()
- return err
-}
-
-type listenerAlreadyClosed struct {
- error
-}
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/server.go b/Godeps/_workspace/src/github.com/braintree/manners/server.go
index a79246668..e45f5c64b 100644
--- a/Godeps/_workspace/src/github.com/braintree/manners/server.go
+++ b/Godeps/_workspace/src/github.com/braintree/manners/server.go
@@ -1,83 +1,272 @@
+/*
+Package manners provides a wrapper for a standard net/http server that
+ensures all active HTTP client have completed their current request
+before the server shuts down.
+
+It can be used a drop-in replacement for the standard http package,
+or can wrap a pre-configured Server.
+
+eg.
+
+ http.Handle("/hello", func(w http.ResponseWriter, r *http.Request) {
+ w.Write([]byte("Hello\n"))
+ })
+
+ log.Fatal(manners.ListenAndServe(":8080", nil))
+
+or for a customized server:
+
+ s := manners.NewWithServer(&http.Server{
+ Addr: ":8080",
+ Handler: myHandler,
+ ReadTimeout: 10 * time.Second,
+ WriteTimeout: 10 * time.Second,
+ MaxHeaderBytes: 1 << 20,
+ })
+ log.Fatal(s.ListenAndServe())
+
+The server will shut down cleanly when the Close() method is called:
+
+ go func() {
+ sigchan := make(chan os.Signal, 1)
+ signal.Notify(sigchan, os.Interrupt, os.Kill)
+ <-sigchan
+ log.Info("Shutting down...")
+ manners.Close()
+ }()
+
+ http.Handle("/hello", myHandler)
+ log.Fatal(manners.ListenAndServe(":8080", nil))
+*/
package manners
import (
+ "crypto/tls"
"net"
"net/http"
"sync"
+ "sync/atomic"
)
-// Creates a new GracefulServer. The server will begin shutting down when
-// a value is passed to the Shutdown channel.
-func NewServer() *GracefulServer {
- return &GracefulServer{
- Shutdown: make(chan bool),
- }
-}
-
// A GracefulServer maintains a WaitGroup that counts how many in-flight
// requests the server is handling. When it receives a shutdown signal,
// it stops accepting new requests but does not actually shut down until
// all in-flight requests terminate.
+//
+// GracefulServer embeds the underlying net/http.Server making its non-override
+// methods and properties avaiable.
+//
+// It must be initialized by calling NewWithServer.
type GracefulServer struct {
- Shutdown chan bool
- wg sync.WaitGroup
- shutdownHandler func()
- InnerServer http.Server
+ *http.Server
+
+ shutdown chan bool
+ shutdownFinished chan bool
+ wg waitGroup
+
+ lcsmu sync.RWMutex
+ connections map[net.Conn]bool
+
+ up chan net.Listener // Only used by test code.
}
-// A helper function that emulates the functionality of http.ListenAndServe.
-func (s *GracefulServer) ListenAndServe(addr string, handler http.Handler) error {
- oldListener, err := net.Listen("tcp", addr)
+// NewWithServer wraps an existing http.Server object and returns a
+// GracefulServer that supports all of the original Server operations.
+func NewWithServer(s *http.Server) *GracefulServer {
+ return &GracefulServer{
+ Server: s,
+ shutdown: make(chan bool),
+ shutdownFinished: make(chan bool, 1),
+ wg: new(sync.WaitGroup),
+ connections: make(map[net.Conn]bool),
+ }
+}
+
+// Close stops the server from accepting new requets and begins shutting down.
+// It returns true if it's the first time Close is called.
+func (s *GracefulServer) Close() bool {
+ return <-s.shutdown
+}
+
+// BlockingClose is similar to Close, except that it blocks until the last
+// connection has been closed.
+func (s *GracefulServer) BlockingClose() bool {
+ result := s.Close()
+ <-s.shutdownFinished
+ return result
+}
+
+// ListenAndServe provides a graceful equivalent of net/http.Serve.ListenAndServe.
+func (s *GracefulServer) ListenAndServe() error {
+ addr := s.Addr
+ if addr == "" {
+ addr = ":http"
+ }
+ listener, err := net.Listen("tcp", addr)
if err != nil {
return err
}
- listener := NewListener(oldListener, s)
- err = s.Serve(listener, handler)
- return err
+ return s.Serve(listener)
+}
+
+// ListenAndServeTLS provides a graceful equivalent of net/http.Serve.ListenAndServeTLS.
+func (s *GracefulServer) ListenAndServeTLS(certFile, keyFile string) error {
+ // direct lift from net/http/server.go
+ addr := s.Addr
+ if addr == "" {
+ addr = ":https"
+ }
+ config := &tls.Config{}
+ if s.TLSConfig != nil {
+ *config = *s.TLSConfig
+ }
+ if config.NextProtos == nil {
+ config.NextProtos = []string{"http/1.1"}
+ }
+
+ var err error
+ config.Certificates = make([]tls.Certificate, 1)
+ config.Certificates[0], err = tls.LoadX509KeyPair(certFile, keyFile)
+ if err != nil {
+ return err
+ }
+
+ ln, err := net.Listen("tcp", addr)
+ if err != nil {
+ return err
+ }
+
+ return s.Serve(tls.NewListener(ln, config))
}
-// Similar to http.Serve. The listener passed must wrap a GracefulListener.
-func (s *GracefulServer) Serve(listener net.Listener, handler http.Handler) error {
- s.shutdownHandler = func() { listener.Close() }
- s.listenForShutdown()
- s.InnerServer.Handler = handler
- s.InnerServer.ConnState = func(conn net.Conn, newState http.ConnState) {
+// Serve provides a graceful equivalent net/http.Server.Serve.
+func (s *GracefulServer) Serve(listener net.Listener) error {
+ // Wrap the server HTTP handler into graceful one, that will close kept
+ // alive connections if a new request is received after shutdown.
+ gracefulHandler := newGracefulHandler(s.Server.Handler)
+ s.Server.Handler = gracefulHandler
+
+ // Start a goroutine that waits for a shutdown signal and will stop the
+ // listener when it receives the signal. That in turn will result in
+ // unblocking of the http.Serve call.
+ go func() {
+ s.shutdown <- true
+ close(s.shutdown)
+ gracefulHandler.Close()
+ s.Server.SetKeepAlivesEnabled(false)
+ listener.Close()
+ }()
+
+ originalConnState := s.Server.ConnState
+
+ // s.ConnState is invoked by the net/http.Server every time a connection
+ // changes state. It keeps track of each connection's state over time,
+ // enabling manners to handle persisted connections correctly.
+ s.ConnState = func(conn net.Conn, newState http.ConnState) {
+ s.lcsmu.RLock()
+ protected := s.connections[conn]
+ s.lcsmu.RUnlock()
+
switch newState {
+
case http.StateNew:
+ // New connection -> StateNew
+ protected = true
s.StartRoutine()
- case http.StateClosed, http.StateHijacked:
- s.FinishRoutine()
+
+ case http.StateActive:
+ // (StateNew, StateIdle) -> StateActive
+ if gracefulHandler.IsClosed() {
+ conn.Close()
+ break
+ }
+
+ if !protected {
+ protected = true
+ s.StartRoutine()
+ }
+
+ default:
+ // (StateNew, StateActive) -> (StateIdle, StateClosed, StateHiJacked)
+ if protected {
+ s.FinishRoutine()
+ protected = false
+ }
+ }
+
+ s.lcsmu.Lock()
+ if newState == http.StateClosed || newState == http.StateHijacked {
+ delete(s.connections, conn)
+ } else {
+ s.connections[conn] = protected
+ }
+ s.lcsmu.Unlock()
+
+ if originalConnState != nil {
+ originalConnState(conn, newState)
}
}
- err := s.InnerServer.Serve(listener)
-
- // This block is reached when the server has received a shut down command.
- if err == nil {
- s.wg.Wait()
- return nil
- } else if _, ok := err.(listenerAlreadyClosed); ok {
- s.wg.Wait()
- return nil
+
+ // A hook to allow the server to notify others when it is ready to receive
+ // requests; only used by tests.
+ if s.up != nil {
+ s.up <- listener
+ }
+
+ err := s.Server.Serve(listener)
+ // An error returned on shutdown is not worth reporting.
+ if err != nil && gracefulHandler.IsClosed() {
+ err = nil
}
+
+ // Wait for pending requests to complete regardless the Serve result.
+ s.wg.Wait()
+ s.shutdownFinished <- true
return err
}
-// Increments the server's WaitGroup. Use this if a web request starts more
-// goroutines and these goroutines are not guaranteed to finish before the
-// request.
+// StartRoutine increments the server's WaitGroup. Use this if a web request
+// starts more goroutines and these goroutines are not guaranteed to finish
+// before the request.
func (s *GracefulServer) StartRoutine() {
s.wg.Add(1)
}
-// Decrement the server's WaitGroup. Used this to complement StartRoutine().
+// FinishRoutine decrements the server's WaitGroup. Use this to complement
+// StartRoutine().
func (s *GracefulServer) FinishRoutine() {
s.wg.Done()
}
-func (s *GracefulServer) listenForShutdown() {
- go func() {
- <-s.Shutdown
- s.shutdownHandler()
- }()
+// gracefulHandler is used by GracefulServer to prevent calling ServeHTTP on
+// to be closed kept-alive connections during the server shutdown.
+type gracefulHandler struct {
+ closed int32 // accessed atomically.
+ wrapped http.Handler
+}
+
+func newGracefulHandler(wrapped http.Handler) *gracefulHandler {
+ return &gracefulHandler{
+ wrapped: wrapped,
+ }
+}
+
+func (gh *gracefulHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
+ if atomic.LoadInt32(&gh.closed) == 0 {
+ gh.wrapped.ServeHTTP(w, r)
+ return
+ }
+ r.Body.Close()
+ // Server is shutting down at this moment, and the connection that this
+ // handler is being called on is about to be closed. So we do not need to
+ // actually execute the handler logic.
+}
+
+func (gh *gracefulHandler) Close() {
+ atomic.StoreInt32(&gh.closed, 1)
+}
+
+func (gh *gracefulHandler) IsClosed() bool {
+ return atomic.LoadInt32(&gh.closed) == 1
}
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/server_test.go b/Godeps/_workspace/src/github.com/braintree/manners/server_test.go
index 0da015566..e73613aa8 100644
--- a/Godeps/_workspace/src/github.com/braintree/manners/server_test.go
+++ b/Godeps/_workspace/src/github.com/braintree/manners/server_test.go
@@ -1,71 +1,254 @@
package manners
import (
+ helpers "github.com/mattermost/platform/Godeps/_workspace/src/github.com/braintree/manners/test_helpers"
+ "net"
"net/http"
"testing"
+ "time"
)
-// Tests that the server allows in-flight requests to complete before shutting
-// down.
+type httpInterface interface {
+ ListenAndServe() error
+ ListenAndServeTLS(certFile, keyFile string) error
+ Serve(listener net.Listener) error
+}
+
+// Test that the method signatures of the methods we override from net/http/Server match those of the original.
+func TestInterface(t *testing.T) {
+ var original, ours interface{}
+ original = &http.Server{}
+ ours = &GracefulServer{}
+ if _, ok := original.(httpInterface); !ok {
+ t.Errorf("httpInterface definition does not match the canonical server!")
+ }
+ if _, ok := ours.(httpInterface); !ok {
+ t.Errorf("GracefulServer does not implement httpInterface")
+ }
+}
+
+// Tests that the server allows in-flight requests to complete
+// before shutting down.
func TestGracefulness(t *testing.T) {
- ready := make(chan bool)
- done := make(chan bool)
+ server := newServer()
+ wg := helpers.NewWaitGroup()
+ server.wg = wg
+ statechanged := make(chan http.ConnState)
+ listener, exitchan := startServer(t, server, statechanged)
- exited := false
+ client := newClient(listener.Addr(), false)
+ client.Run()
- handler := newBlockingHandler(ready, done)
- server := NewServer()
+ // wait for client to connect, but don't let it send the request yet
+ if err := <-client.connected; err != nil {
+ t.Fatal("Client failed to connect to server", err)
+ }
+ // Even though the client is connected, the server ConnState handler may
+ // not know about that yet. So wait until it is called.
+ waitForState(t, statechanged, http.StateNew, "Request not received")
- go func() {
- err := server.ListenAndServe(":7000", handler)
- if err != nil {
- t.Error(err)
- }
+ server.Close()
+
+ waiting := <-wg.WaitCalled
+ if waiting < 1 {
+ t.Errorf("Expected the waitgroup to equal 1 at shutdown; actually %d", waiting)
+ }
+
+ // allow the client to finish sending the request and make sure the server exits after
+ // (client will be in connected but idle state at that point)
+ client.sendrequest <- true
+ close(client.sendrequest)
+ if err := <-exitchan; err != nil {
+ t.Error("Unexpected error during shutdown", err)
+ }
+}
+
+// Tests that the server begins to shut down when told to and does not accept
+// new requests once shutdown has begun
+func TestShutdown(t *testing.T) {
+ server := newServer()
+ wg := helpers.NewWaitGroup()
+ server.wg = wg
+ statechanged := make(chan http.ConnState)
+ listener, exitchan := startServer(t, server, statechanged)
+
+ client1 := newClient(listener.Addr(), false)
+ client1.Run()
+
+ // wait for client1 to connect
+ if err := <-client1.connected; err != nil {
+ t.Fatal("Client failed to connect to server", err)
+ }
+ // Even though the client is connected, the server ConnState handler may
+ // not know about that yet. So wait until it is called.
+ waitForState(t, statechanged, http.StateNew, "Request not received")
+
+ // start the shutdown; once it hits waitgroup.Wait()
+ // the listener should of been closed, though client1 is still connected
+ if server.Close() != true {
+ t.Fatal("first call to Close returned false")
+ }
+ if server.Close() != false {
+ t.Fatal("second call to Close returned true")
+ }
+
+ waiting := <-wg.WaitCalled
+ if waiting != 1 {
+ t.Errorf("Waitcount should be one, got %d", waiting)
+ }
+
+ // should get connection refused at this point
+ client2 := newClient(listener.Addr(), false)
+ client2.Run()
+
+ if err := <-client2.connected; err == nil {
+ t.Fatal("client2 connected when it should of received connection refused")
+ }
+
+ // let client1 finish so the server can exit
+ close(client1.sendrequest) // don't bother sending an actual request
+
+ <-exitchan
+}
+
+// If a request is sent to a closed server via a kept alive connection then
+// the server closes the connection upon receiving the request.
+func TestRequestAfterClose(t *testing.T) {
+ // Given
+ server := newServer()
+ srvStateChangedCh := make(chan http.ConnState, 100)
+ listener, srvClosedCh := startServer(t, server, srvStateChangedCh)
- exited = true
- }()
+ client := newClient(listener.Addr(), false)
+ client.Run()
+ <-client.connected
+ client.sendrequest <- true
+ <-client.response
- go func() {
- _, err := http.Get("http://localhost:7000")
- if err != nil {
- t.Error(err)
+ server.Close()
+ if err := <-srvClosedCh; err != nil {
+ t.Error("Unexpected error during shutdown", err)
+ }
+
+ // When
+ client.sendrequest <- true
+ rr := <-client.response
+
+ // Then
+ if rr.body != nil || rr.err != nil {
+ t.Errorf("Request should be rejected, body=%v, err=%v", rr.body, rr.err)
+ }
+}
+
+func waitForState(t *testing.T, waiter chan http.ConnState, state http.ConnState, errmsg string) {
+ for {
+ select {
+ case ns := <-waiter:
+ if ns == state {
+ return
+ }
+ case <-time.After(time.Second):
+ t.Fatal(errmsg)
}
- }()
+ }
+}
- // This will block until the server is inside the handler function.
- <-ready
+// Test that a request moving from active->idle->active using an actual
+// network connection still results in a corect shutdown
+func TestStateTransitionActiveIdleActive(t *testing.T) {
+ server := newServer()
+ wg := helpers.NewWaitGroup()
+ statechanged := make(chan http.ConnState)
+ server.wg = wg
+ listener, exitchan := startServer(t, server, statechanged)
- server.Shutdown <- true
- <-done
+ client := newClient(listener.Addr(), false)
+ client.Run()
+
+ // wait for client to connect, but don't let it send the request
+ if err := <-client.connected; err != nil {
+ t.Fatal("Client failed to connect to server", err)
+ }
+
+ for i := 0; i < 2; i++ {
+ client.sendrequest <- true
+ waitForState(t, statechanged, http.StateActive, "Client failed to reach active state")
+ <-client.response
+ waitForState(t, statechanged, http.StateIdle, "Client failed to reach idle state")
+ }
+
+ // client is now in an idle state
+
+ server.Close()
+ waiting := <-wg.WaitCalled
+ if waiting != 0 {
+ t.Errorf("Waitcount should be zero, got %d", waiting)
+ }
- if exited {
- t.Fatal("The request did not complete before server exited")
- } else {
- // The handler is being allowed to run to completion; test passes.
+ if err := <-exitchan; err != nil {
+ t.Error("Unexpected error during shutdown", err)
}
}
-// Tests that the server begins to shut down when told to and does not accept
-// new requests
-func TestShutdown(t *testing.T) {
- handler := newTestHandler()
- server := NewServer()
- exited := make(chan bool)
-
- go func() {
- err := server.ListenAndServe(":7100", handler)
- if err != nil {
- t.Error(err)
+// Test state transitions from new->active->-idle->closed using an actual
+// network connection and make sure the waitgroup count is correct at the end.
+func TestStateTransitionActiveIdleClosed(t *testing.T) {
+ var (
+ listener net.Listener
+ exitchan chan error
+ )
+
+ keyFile, err1 := helpers.NewTempFile(helpers.Key)
+ certFile, err2 := helpers.NewTempFile(helpers.Cert)
+ defer keyFile.Unlink()
+ defer certFile.Unlink()
+
+ if err1 != nil || err2 != nil {
+ t.Fatal("Failed to create temporary files", err1, err2)
+ }
+
+ for _, withTLS := range []bool{false, true} {
+ server := newServer()
+ wg := helpers.NewWaitGroup()
+ statechanged := make(chan http.ConnState)
+ server.wg = wg
+ if withTLS {
+ listener, exitchan = startTLSServer(t, server, certFile.Name(), keyFile.Name(), statechanged)
+ } else {
+ listener, exitchan = startServer(t, server, statechanged)
}
- exited <- true
- }()
- server.Shutdown <- true
+ client := newClient(listener.Addr(), withTLS)
+ client.Run()
+
+ // wait for client to connect, but don't let it send the request
+ if err := <-client.connected; err != nil {
+ t.Fatal("Client failed to connect to server", err)
+ }
- <-exited
- _, err := http.Get("http://localhost:7100")
+ client.sendrequest <- true
+ waitForState(t, statechanged, http.StateActive, "Client failed to reach active state")
- if err == nil {
- t.Fatal("Did not receive an error when trying to connect to server.")
+ rr := <-client.response
+ if rr.err != nil {
+ t.Fatalf("tls=%t unexpected error from client %s", withTLS, rr.err)
+ }
+
+ waitForState(t, statechanged, http.StateIdle, "Client failed to reach idle state")
+
+ // client is now in an idle state
+ close(client.sendrequest)
+ <-client.closed
+ waitForState(t, statechanged, http.StateClosed, "Client failed to reach closed state")
+
+ server.Close()
+ waiting := <-wg.WaitCalled
+ if waiting != 0 {
+ t.Errorf("Waitcount should be zero, got %d", waiting)
+ }
+
+ if err := <-exitchan; err != nil {
+ t.Error("Unexpected error during shutdown", err)
+ }
}
}
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/static.go b/Godeps/_workspace/src/github.com/braintree/manners/static.go
new file mode 100644
index 000000000..2a74b094b
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/braintree/manners/static.go
@@ -0,0 +1,35 @@
+package manners
+
+import (
+ "net"
+ "net/http"
+)
+
+var defaultServer *GracefulServer
+
+// ListenAndServe provides a graceful version of the function provided by the
+// net/http package. Call Close() to stop the server.
+func ListenAndServe(addr string, handler http.Handler) error {
+ defaultServer = NewWithServer(&http.Server{Addr: addr, Handler: handler})
+ return defaultServer.ListenAndServe()
+}
+
+// ListenAndServeTLS provides a graceful version of the function provided by the
+// net/http package. Call Close() to stop the server.
+func ListenAndServeTLS(addr string, certFile string, keyFile string, handler http.Handler) error {
+ defaultServer = NewWithServer(&http.Server{Addr: addr, Handler: handler})
+ return defaultServer.ListenAndServeTLS(certFile, keyFile)
+}
+
+// Serve provides a graceful version of the function provided by the net/http
+// package. Call Close() to stop the server.
+func Serve(l net.Listener, handler http.Handler) error {
+ defaultServer = NewWithServer(&http.Server{Handler: handler})
+ return defaultServer.Serve(l)
+}
+
+// Shuts down the default server used by ListenAndServe, ListenAndServeTLS and
+// Serve. It returns true if it's the first time Close is called.
+func Close() bool {
+ return defaultServer.Close()
+}
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/certs.go b/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/certs.go
new file mode 100644
index 000000000..ede248b3d
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/certs.go
@@ -0,0 +1,29 @@
+package test_helpers
+
+// A PEM-encoded TLS cert with SAN IPs "127.0.0.1" and "[::1]", expiring at the
+// last second of 2049 (the end of ASN.1 time).
+
+// generated from src/pkg/crypto/tls:
+// go run generate_cert.go --rsa-bits 512 --host 127.0.0.1,::1,example.com --ca --start-date "Jan 1 00:00:00 1970" --duration=1000000h
+var (
+ Cert = []byte(`-----BEGIN CERTIFICATE-----
+MIIBdzCCASOgAwIBAgIBADALBgkqhkiG9w0BAQUwEjEQMA4GA1UEChMHQWNtZSBD
+bzAeFw03MDAxMDEwMDAwMDBaFw00OTEyMzEyMzU5NTlaMBIxEDAOBgNVBAoTB0Fj
+bWUgQ28wWjALBgkqhkiG9w0BAQEDSwAwSAJBAN55NcYKZeInyTuhcCwFMhDHCmwa
+IUSdtXdcbItRB/yfXGBhiex00IaLXQnSU+QZPRZWYqeTEbFSgihqi1PUDy8CAwEA
+AaNoMGYwDgYDVR0PAQH/BAQDAgCkMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA8GA1Ud
+EwEB/wQFMAMBAf8wLgYDVR0RBCcwJYILZXhhbXBsZS5jb22HBH8AAAGHEAAAAAAA
+AAAAAAAAAAAAAAEwCwYJKoZIhvcNAQEFA0EAAoQn/ytgqpiLcZu9XKbCJsJcvkgk
+Se6AbGXgSlq+ZCEVo0qIwSgeBqmsJxUu7NCSOwVJLYNEBO2DtIxoYVk+MA==
+-----END CERTIFICATE-----`)
+
+ Key = []byte(`-----BEGIN RSA PRIVATE KEY-----
+MIIBPAIBAAJBAN55NcYKZeInyTuhcCwFMhDHCmwaIUSdtXdcbItRB/yfXGBhiex0
+0IaLXQnSU+QZPRZWYqeTEbFSgihqi1PUDy8CAwEAAQJBAQdUx66rfh8sYsgfdcvV
+NoafYpnEcB5s4m/vSVe6SU7dCK6eYec9f9wpT353ljhDUHq3EbmE4foNzJngh35d
+AekCIQDhRQG5Li0Wj8TM4obOnnXUXf1jRv0UkzE9AHWLG5q3AwIhAPzSjpYUDjVW
+MCUXgckTpKCuGwbJk7424Nb8bLzf3kllAiA5mUBgjfr/WtFSJdWcPQ4Zt9KTMNKD
+EUO0ukpTwEIl6wIhAMbGqZK3zAAFdq8DD2jPx+UJXnh0rnOkZBzDtJ6/iN69AiEA
+1Aq8MJgTaYsDQWyU/hDq5YkDJc9e9DSCvUIzqxQWMQE=
+-----END RSA PRIVATE KEY-----`)
+)
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/conn.go b/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/conn.go
new file mode 100644
index 000000000..8c610f58e
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/conn.go
@@ -0,0 +1,13 @@
+package test_helpers
+
+import "net"
+
+type Conn struct {
+ net.Conn
+ CloseCalled bool
+}
+
+func (c *Conn) Close() error {
+ c.CloseCalled = true
+ return nil
+}
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/listener.go b/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/listener.go
new file mode 100644
index 000000000..e3af35a6e
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/listener.go
@@ -0,0 +1,34 @@
+package test_helpers
+
+import (
+ "errors"
+ "net"
+)
+
+type Listener struct {
+ AcceptRelease chan bool
+ CloseCalled chan bool
+}
+
+func NewListener() *Listener {
+ return &Listener{
+ make(chan bool, 1),
+ make(chan bool, 1),
+ }
+}
+
+func (l *Listener) Addr() net.Addr {
+ addr, _ := net.ResolveTCPAddr("tcp", "127.0.0.1:8080")
+ return addr
+}
+
+func (l *Listener) Close() error {
+ l.CloseCalled <- true
+ l.AcceptRelease <- true
+ return nil
+}
+
+func (l *Listener) Accept() (net.Conn, error) {
+ <-l.AcceptRelease
+ return nil, errors.New("connection closed")
+}
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/temp_file.go b/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/temp_file.go
new file mode 100644
index 000000000..c4aa263a0
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/temp_file.go
@@ -0,0 +1,27 @@
+package test_helpers
+
+import (
+ "io/ioutil"
+ "os"
+)
+
+type TempFile struct {
+ *os.File
+}
+
+func NewTempFile(content []byte) (*TempFile, error) {
+ f, err := ioutil.TempFile("", "graceful-test")
+ if err != nil {
+ return nil, err
+ }
+
+ f.Write(content)
+ return &TempFile{f}, nil
+}
+
+func (tf *TempFile) Unlink() {
+ if tf.File != nil {
+ os.Remove(tf.Name())
+ tf.File = nil
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/wait_group.go b/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/wait_group.go
new file mode 100644
index 000000000..1df590db7
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/braintree/manners/test_helpers/wait_group.go
@@ -0,0 +1,33 @@
+package test_helpers
+
+import "sync"
+
+type WaitGroup struct {
+ sync.Mutex
+ Count int
+ WaitCalled chan int
+}
+
+func NewWaitGroup() *WaitGroup {
+ return &WaitGroup{
+ WaitCalled: make(chan int, 1),
+ }
+}
+
+func (wg *WaitGroup) Add(delta int) {
+ wg.Lock()
+ wg.Count++
+ wg.Unlock()
+}
+
+func (wg *WaitGroup) Done() {
+ wg.Lock()
+ wg.Count--
+ wg.Unlock()
+}
+
+func (wg *WaitGroup) Wait() {
+ wg.Lock()
+ wg.WaitCalled <- wg.Count
+ wg.Unlock()
+}
diff --git a/Godeps/_workspace/src/github.com/braintree/manners/transition_test.go b/Godeps/_workspace/src/github.com/braintree/manners/transition_test.go
new file mode 100644
index 000000000..303ff1e98
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/braintree/manners/transition_test.go
@@ -0,0 +1,54 @@
+package manners
+
+import (
+ helpers "github.com/mattermost/platform/Godeps/_workspace/src/github.com/braintree/manners/test_helpers"
+ "net/http"
+ "strings"
+ "testing"
+)
+
+func TestStateTransitions(t *testing.T) {
+ tests := []transitionTest{
+ transitionTest{[]http.ConnState{http.StateNew, http.StateActive}, 1},
+ transitionTest{[]http.ConnState{http.StateNew, http.StateClosed}, 0},
+ transitionTest{[]http.ConnState{http.StateNew, http.StateActive, http.StateClosed}, 0},
+ transitionTest{[]http.ConnState{http.StateNew, http.StateActive, http.StateHijacked}, 0},
+ transitionTest{[]http.ConnState{http.StateNew, http.StateActive, http.StateIdle}, 0},
+ transitionTest{[]http.ConnState{http.StateNew, http.StateActive, http.StateIdle, http.StateActive}, 1},
+ transitionTest{[]http.ConnState{http.StateNew, http.StateActive, http.StateIdle, http.StateActive, http.StateIdle}, 0},
+ transitionTest{[]http.ConnState{http.StateNew, http.StateActive, http.StateIdle, http.StateActive, http.StateClosed}, 0},
+ transitionTest{[]http.ConnState{http.StateNew, http.StateActive, http.StateIdle, http.StateActive, http.StateIdle, http.StateClosed}, 0},
+ }
+
+ for _, test := range tests {
+ testStateTransition(t, test)
+ }
+}
+
+type transitionTest struct {
+ states []http.ConnState
+ expectedWgCount int
+}
+
+func testStateTransition(t *testing.T, test transitionTest) {
+ server := newServer()
+ wg := helpers.NewWaitGroup()
+ server.wg = wg
+ startServer(t, server, nil)
+
+ conn := &helpers.Conn{}
+ for _, newState := range test.states {
+ server.ConnState(conn, newState)
+ }
+
+ server.Close()
+ waiting := <-wg.WaitCalled
+ if waiting != test.expectedWgCount {
+ names := make([]string, len(test.states))
+ for i, s := range test.states {
+ names[i] = s.String()
+ }
+ transitions := strings.Join(names, " -> ")
+ t.Errorf("%s - Waitcount should be %d, got %d", transitions, test.expectedWgCount, waiting)
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/bypass.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/bypass.go
new file mode 100644
index 000000000..565bf5899
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/bypass.go
@@ -0,0 +1,151 @@
+// Copyright (c) 2015 Dave Collins <dave@davec.name>
+//
+// Permission to use, copy, modify, and distribute this software for any
+// purpose with or without fee is hereby granted, provided that the above
+// copyright notice and this permission notice appear in all copies.
+//
+// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+// NOTE: Due to the following build constraints, this file will only be compiled
+// when the code is not running on Google App Engine and "-tags disableunsafe"
+// is not added to the go build command line.
+// +build !appengine,!disableunsafe
+
+package spew
+
+import (
+ "reflect"
+ "unsafe"
+)
+
+const (
+ // UnsafeDisabled is a build-time constant which specifies whether or
+ // not access to the unsafe package is available.
+ UnsafeDisabled = false
+
+ // ptrSize is the size of a pointer on the current arch.
+ ptrSize = unsafe.Sizeof((*byte)(nil))
+)
+
+var (
+ // offsetPtr, offsetScalar, and offsetFlag are the offsets for the
+ // internal reflect.Value fields. These values are valid before golang
+ // commit ecccf07e7f9d which changed the format. The are also valid
+ // after commit 82f48826c6c7 which changed the format again to mirror
+ // the original format. Code in the init function updates these offsets
+ // as necessary.
+ offsetPtr = uintptr(ptrSize)
+ offsetScalar = uintptr(0)
+ offsetFlag = uintptr(ptrSize * 2)
+
+ // flagKindWidth and flagKindShift indicate various bits that the
+ // reflect package uses internally to track kind information.
+ //
+ // flagRO indicates whether or not the value field of a reflect.Value is
+ // read-only.
+ //
+ // flagIndir indicates whether the value field of a reflect.Value is
+ // the actual data or a pointer to the data.
+ //
+ // These values are valid before golang commit 90a7c3c86944 which
+ // changed their positions. Code in the init function updates these
+ // flags as necessary.
+ flagKindWidth = uintptr(5)
+ flagKindShift = uintptr(flagKindWidth - 1)
+ flagRO = uintptr(1 << 0)
+ flagIndir = uintptr(1 << 1)
+)
+
+func init() {
+ // Older versions of reflect.Value stored small integers directly in the
+ // ptr field (which is named val in the older versions). Versions
+ // between commits ecccf07e7f9d and 82f48826c6c7 added a new field named
+ // scalar for this purpose which unfortunately came before the flag
+ // field, so the offset of the flag field is different for those
+ // versions.
+ //
+ // This code constructs a new reflect.Value from a known small integer
+ // and checks if the size of the reflect.Value struct indicates it has
+ // the scalar field. When it does, the offsets are updated accordingly.
+ vv := reflect.ValueOf(0xf00)
+ if unsafe.Sizeof(vv) == (ptrSize * 4) {
+ offsetScalar = ptrSize * 2
+ offsetFlag = ptrSize * 3
+ }
+
+ // Commit 90a7c3c86944 changed the flag positions such that the low
+ // order bits are the kind. This code extracts the kind from the flags
+ // field and ensures it's the correct type. When it's not, the flag
+ // order has been changed to the newer format, so the flags are updated
+ // accordingly.
+ upf := unsafe.Pointer(uintptr(unsafe.Pointer(&vv)) + offsetFlag)
+ upfv := *(*uintptr)(upf)
+ flagKindMask := uintptr((1<<flagKindWidth - 1) << flagKindShift)
+ if (upfv&flagKindMask)>>flagKindShift != uintptr(reflect.Int) {
+ flagKindShift = 0
+ flagRO = 1 << 5
+ flagIndir = 1 << 6
+
+ // Commit adf9b30e5594 modified the flags to separate the
+ // flagRO flag into two bits which specifies whether or not the
+ // field is embedded. This causes flagIndir to move over a bit
+ // and means that flagRO is the combination of either of the
+ // original flagRO bit and the new bit.
+ //
+ // This code detects the change by extracting what used to be
+ // the indirect bit to ensure it's set. When it's not, the flag
+ // order has been changed to the newer format, so the flags are
+ // updated accordingly.
+ if upfv&flagIndir == 0 {
+ flagRO = 3 << 5
+ flagIndir = 1 << 7
+ }
+ }
+}
+
+// unsafeReflectValue converts the passed reflect.Value into a one that bypasses
+// the typical safety restrictions preventing access to unaddressable and
+// unexported data. It works by digging the raw pointer to the underlying
+// value out of the protected value and generating a new unprotected (unsafe)
+// reflect.Value to it.
+//
+// This allows us to check for implementations of the Stringer and error
+// interfaces to be used for pretty printing ordinarily unaddressable and
+// inaccessible values such as unexported struct fields.
+func unsafeReflectValue(v reflect.Value) (rv reflect.Value) {
+ indirects := 1
+ vt := v.Type()
+ upv := unsafe.Pointer(uintptr(unsafe.Pointer(&v)) + offsetPtr)
+ rvf := *(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&v)) + offsetFlag))
+ if rvf&flagIndir != 0 {
+ vt = reflect.PtrTo(v.Type())
+ indirects++
+ } else if offsetScalar != 0 {
+ // The value is in the scalar field when it's not one of the
+ // reference types.
+ switch vt.Kind() {
+ case reflect.Uintptr:
+ case reflect.Chan:
+ case reflect.Func:
+ case reflect.Map:
+ case reflect.Ptr:
+ case reflect.UnsafePointer:
+ default:
+ upv = unsafe.Pointer(uintptr(unsafe.Pointer(&v)) +
+ offsetScalar)
+ }
+ }
+
+ pv := reflect.NewAt(vt, upv)
+ rv = pv
+ for i := 0; i < indirects; i++ {
+ rv = rv.Elem()
+ }
+ return rv
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/bypasssafe.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/bypasssafe.go
new file mode 100644
index 000000000..457e41235
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/bypasssafe.go
@@ -0,0 +1,37 @@
+// Copyright (c) 2015 Dave Collins <dave@davec.name>
+//
+// Permission to use, copy, modify, and distribute this software for any
+// purpose with or without fee is hereby granted, provided that the above
+// copyright notice and this permission notice appear in all copies.
+//
+// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+// NOTE: Due to the following build constraints, this file will only be compiled
+// when either the code is running on Google App Engine or "-tags disableunsafe"
+// is added to the go build command line.
+// +build appengine disableunsafe
+
+package spew
+
+import "reflect"
+
+const (
+ // UnsafeDisabled is a build-time constant which specifies whether or
+ // not access to the unsafe package is available.
+ UnsafeDisabled = true
+)
+
+// unsafeReflectValue typically converts the passed reflect.Value into a one
+// that bypasses the typical safety restrictions preventing access to
+// unaddressable and unexported data. However, doing this relies on access to
+// the unsafe package. This is a stub version which simply returns the passed
+// reflect.Value when the unsafe package is not available.
+func unsafeReflectValue(v reflect.Value) reflect.Value {
+ return v
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/common.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/common.go
new file mode 100644
index 000000000..14f02dc15
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/common.go
@@ -0,0 +1,341 @@
+/*
+ * Copyright (c) 2013 Dave Collins <dave@davec.name>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+package spew
+
+import (
+ "bytes"
+ "fmt"
+ "io"
+ "reflect"
+ "sort"
+ "strconv"
+)
+
+// Some constants in the form of bytes to avoid string overhead. This mirrors
+// the technique used in the fmt package.
+var (
+ panicBytes = []byte("(PANIC=")
+ plusBytes = []byte("+")
+ iBytes = []byte("i")
+ trueBytes = []byte("true")
+ falseBytes = []byte("false")
+ interfaceBytes = []byte("(interface {})")
+ commaNewlineBytes = []byte(",\n")
+ newlineBytes = []byte("\n")
+ openBraceBytes = []byte("{")
+ openBraceNewlineBytes = []byte("{\n")
+ closeBraceBytes = []byte("}")
+ asteriskBytes = []byte("*")
+ colonBytes = []byte(":")
+ colonSpaceBytes = []byte(": ")
+ openParenBytes = []byte("(")
+ closeParenBytes = []byte(")")
+ spaceBytes = []byte(" ")
+ pointerChainBytes = []byte("->")
+ nilAngleBytes = []byte("<nil>")
+ maxNewlineBytes = []byte("<max depth reached>\n")
+ maxShortBytes = []byte("<max>")
+ circularBytes = []byte("<already shown>")
+ circularShortBytes = []byte("<shown>")
+ invalidAngleBytes = []byte("<invalid>")
+ openBracketBytes = []byte("[")
+ closeBracketBytes = []byte("]")
+ percentBytes = []byte("%")
+ precisionBytes = []byte(".")
+ openAngleBytes = []byte("<")
+ closeAngleBytes = []byte(">")
+ openMapBytes = []byte("map[")
+ closeMapBytes = []byte("]")
+ lenEqualsBytes = []byte("len=")
+ capEqualsBytes = []byte("cap=")
+)
+
+// hexDigits is used to map a decimal value to a hex digit.
+var hexDigits = "0123456789abcdef"
+
+// catchPanic handles any panics that might occur during the handleMethods
+// calls.
+func catchPanic(w io.Writer, v reflect.Value) {
+ if err := recover(); err != nil {
+ w.Write(panicBytes)
+ fmt.Fprintf(w, "%v", err)
+ w.Write(closeParenBytes)
+ }
+}
+
+// handleMethods attempts to call the Error and String methods on the underlying
+// type the passed reflect.Value represents and outputes the result to Writer w.
+//
+// It handles panics in any called methods by catching and displaying the error
+// as the formatted value.
+func handleMethods(cs *ConfigState, w io.Writer, v reflect.Value) (handled bool) {
+ // We need an interface to check if the type implements the error or
+ // Stringer interface. However, the reflect package won't give us an
+ // interface on certain things like unexported struct fields in order
+ // to enforce visibility rules. We use unsafe, when it's available,
+ // to bypass these restrictions since this package does not mutate the
+ // values.
+ if !v.CanInterface() {
+ if UnsafeDisabled {
+ return false
+ }
+
+ v = unsafeReflectValue(v)
+ }
+
+ // Choose whether or not to do error and Stringer interface lookups against
+ // the base type or a pointer to the base type depending on settings.
+ // Technically calling one of these methods with a pointer receiver can
+ // mutate the value, however, types which choose to satisify an error or
+ // Stringer interface with a pointer receiver should not be mutating their
+ // state inside these interface methods.
+ if !cs.DisablePointerMethods && !UnsafeDisabled && !v.CanAddr() {
+ v = unsafeReflectValue(v)
+ }
+ if v.CanAddr() {
+ v = v.Addr()
+ }
+
+ // Is it an error or Stringer?
+ switch iface := v.Interface().(type) {
+ case error:
+ defer catchPanic(w, v)
+ if cs.ContinueOnMethod {
+ w.Write(openParenBytes)
+ w.Write([]byte(iface.Error()))
+ w.Write(closeParenBytes)
+ w.Write(spaceBytes)
+ return false
+ }
+
+ w.Write([]byte(iface.Error()))
+ return true
+
+ case fmt.Stringer:
+ defer catchPanic(w, v)
+ if cs.ContinueOnMethod {
+ w.Write(openParenBytes)
+ w.Write([]byte(iface.String()))
+ w.Write(closeParenBytes)
+ w.Write(spaceBytes)
+ return false
+ }
+ w.Write([]byte(iface.String()))
+ return true
+ }
+ return false
+}
+
+// printBool outputs a boolean value as true or false to Writer w.
+func printBool(w io.Writer, val bool) {
+ if val {
+ w.Write(trueBytes)
+ } else {
+ w.Write(falseBytes)
+ }
+}
+
+// printInt outputs a signed integer value to Writer w.
+func printInt(w io.Writer, val int64, base int) {
+ w.Write([]byte(strconv.FormatInt(val, base)))
+}
+
+// printUint outputs an unsigned integer value to Writer w.
+func printUint(w io.Writer, val uint64, base int) {
+ w.Write([]byte(strconv.FormatUint(val, base)))
+}
+
+// printFloat outputs a floating point value using the specified precision,
+// which is expected to be 32 or 64bit, to Writer w.
+func printFloat(w io.Writer, val float64, precision int) {
+ w.Write([]byte(strconv.FormatFloat(val, 'g', -1, precision)))
+}
+
+// printComplex outputs a complex value using the specified float precision
+// for the real and imaginary parts to Writer w.
+func printComplex(w io.Writer, c complex128, floatPrecision int) {
+ r := real(c)
+ w.Write(openParenBytes)
+ w.Write([]byte(strconv.FormatFloat(r, 'g', -1, floatPrecision)))
+ i := imag(c)
+ if i >= 0 {
+ w.Write(plusBytes)
+ }
+ w.Write([]byte(strconv.FormatFloat(i, 'g', -1, floatPrecision)))
+ w.Write(iBytes)
+ w.Write(closeParenBytes)
+}
+
+// printHexPtr outputs a uintptr formatted as hexidecimal with a leading '0x'
+// prefix to Writer w.
+func printHexPtr(w io.Writer, p uintptr) {
+ // Null pointer.
+ num := uint64(p)
+ if num == 0 {
+ w.Write(nilAngleBytes)
+ return
+ }
+
+ // Max uint64 is 16 bytes in hex + 2 bytes for '0x' prefix
+ buf := make([]byte, 18)
+
+ // It's simpler to construct the hex string right to left.
+ base := uint64(16)
+ i := len(buf) - 1
+ for num >= base {
+ buf[i] = hexDigits[num%base]
+ num /= base
+ i--
+ }
+ buf[i] = hexDigits[num]
+
+ // Add '0x' prefix.
+ i--
+ buf[i] = 'x'
+ i--
+ buf[i] = '0'
+
+ // Strip unused leading bytes.
+ buf = buf[i:]
+ w.Write(buf)
+}
+
+// valuesSorter implements sort.Interface to allow a slice of reflect.Value
+// elements to be sorted.
+type valuesSorter struct {
+ values []reflect.Value
+ strings []string // either nil or same len and values
+ cs *ConfigState
+}
+
+// newValuesSorter initializes a valuesSorter instance, which holds a set of
+// surrogate keys on which the data should be sorted. It uses flags in
+// ConfigState to decide if and how to populate those surrogate keys.
+func newValuesSorter(values []reflect.Value, cs *ConfigState) sort.Interface {
+ vs := &valuesSorter{values: values, cs: cs}
+ if canSortSimply(vs.values[0].Kind()) {
+ return vs
+ }
+ if !cs.DisableMethods {
+ vs.strings = make([]string, len(values))
+ for i := range vs.values {
+ b := bytes.Buffer{}
+ if !handleMethods(cs, &b, vs.values[i]) {
+ vs.strings = nil
+ break
+ }
+ vs.strings[i] = b.String()
+ }
+ }
+ if vs.strings == nil && cs.SpewKeys {
+ vs.strings = make([]string, len(values))
+ for i := range vs.values {
+ vs.strings[i] = Sprintf("%#v", vs.values[i].Interface())
+ }
+ }
+ return vs
+}
+
+// canSortSimply tests whether a reflect.Kind is a primitive that can be sorted
+// directly, or whether it should be considered for sorting by surrogate keys
+// (if the ConfigState allows it).
+func canSortSimply(kind reflect.Kind) bool {
+ // This switch parallels valueSortLess, except for the default case.
+ switch kind {
+ case reflect.Bool:
+ return true
+ case reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Int:
+ return true
+ case reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uint:
+ return true
+ case reflect.Float32, reflect.Float64:
+ return true
+ case reflect.String:
+ return true
+ case reflect.Uintptr:
+ return true
+ case reflect.Array:
+ return true
+ }
+ return false
+}
+
+// Len returns the number of values in the slice. It is part of the
+// sort.Interface implementation.
+func (s *valuesSorter) Len() int {
+ return len(s.values)
+}
+
+// Swap swaps the values at the passed indices. It is part of the
+// sort.Interface implementation.
+func (s *valuesSorter) Swap(i, j int) {
+ s.values[i], s.values[j] = s.values[j], s.values[i]
+ if s.strings != nil {
+ s.strings[i], s.strings[j] = s.strings[j], s.strings[i]
+ }
+}
+
+// valueSortLess returns whether the first value should sort before the second
+// value. It is used by valueSorter.Less as part of the sort.Interface
+// implementation.
+func valueSortLess(a, b reflect.Value) bool {
+ switch a.Kind() {
+ case reflect.Bool:
+ return !a.Bool() && b.Bool()
+ case reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Int:
+ return a.Int() < b.Int()
+ case reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uint:
+ return a.Uint() < b.Uint()
+ case reflect.Float32, reflect.Float64:
+ return a.Float() < b.Float()
+ case reflect.String:
+ return a.String() < b.String()
+ case reflect.Uintptr:
+ return a.Uint() < b.Uint()
+ case reflect.Array:
+ // Compare the contents of both arrays.
+ l := a.Len()
+ for i := 0; i < l; i++ {
+ av := a.Index(i)
+ bv := b.Index(i)
+ if av.Interface() == bv.Interface() {
+ continue
+ }
+ return valueSortLess(av, bv)
+ }
+ }
+ return a.String() < b.String()
+}
+
+// Less returns whether the value at index i should sort before the
+// value at index j. It is part of the sort.Interface implementation.
+func (s *valuesSorter) Less(i, j int) bool {
+ if s.strings == nil {
+ return valueSortLess(s.values[i], s.values[j])
+ }
+ return s.strings[i] < s.strings[j]
+}
+
+// sortValues is a sort function that handles both native types and any type that
+// can be converted to error or Stringer. Other inputs are sorted according to
+// their Value.String() value to ensure display stability.
+func sortValues(values []reflect.Value, cs *ConfigState) {
+ if len(values) == 0 {
+ return
+ }
+ sort.Sort(newValuesSorter(values, cs))
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/common_test.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/common_test.go
new file mode 100644
index 000000000..a25252cc1
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/common_test.go
@@ -0,0 +1,298 @@
+/*
+ * Copyright (c) 2013 Dave Collins <dave@davec.name>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+package spew_test
+
+import (
+ "fmt"
+ "reflect"
+ "testing"
+
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/davecgh/go-spew/spew"
+)
+
+// custom type to test Stinger interface on non-pointer receiver.
+type stringer string
+
+// String implements the Stringer interface for testing invocation of custom
+// stringers on types with non-pointer receivers.
+func (s stringer) String() string {
+ return "stringer " + string(s)
+}
+
+// custom type to test Stinger interface on pointer receiver.
+type pstringer string
+
+// String implements the Stringer interface for testing invocation of custom
+// stringers on types with only pointer receivers.
+func (s *pstringer) String() string {
+ return "stringer " + string(*s)
+}
+
+// xref1 and xref2 are cross referencing structs for testing circular reference
+// detection.
+type xref1 struct {
+ ps2 *xref2
+}
+type xref2 struct {
+ ps1 *xref1
+}
+
+// indirCir1, indirCir2, and indirCir3 are used to generate an indirect circular
+// reference for testing detection.
+type indirCir1 struct {
+ ps2 *indirCir2
+}
+type indirCir2 struct {
+ ps3 *indirCir3
+}
+type indirCir3 struct {
+ ps1 *indirCir1
+}
+
+// embed is used to test embedded structures.
+type embed struct {
+ a string
+}
+
+// embedwrap is used to test embedded structures.
+type embedwrap struct {
+ *embed
+ e *embed
+}
+
+// panicer is used to intentionally cause a panic for testing spew properly
+// handles them
+type panicer int
+
+func (p panicer) String() string {
+ panic("test panic")
+}
+
+// customError is used to test custom error interface invocation.
+type customError int
+
+func (e customError) Error() string {
+ return fmt.Sprintf("error: %d", int(e))
+}
+
+// stringizeWants converts a slice of wanted test output into a format suitable
+// for a test error message.
+func stringizeWants(wants []string) string {
+ s := ""
+ for i, want := range wants {
+ if i > 0 {
+ s += fmt.Sprintf("want%d: %s", i+1, want)
+ } else {
+ s += "want: " + want
+ }
+ }
+ return s
+}
+
+// testFailed returns whether or not a test failed by checking if the result
+// of the test is in the slice of wanted strings.
+func testFailed(result string, wants []string) bool {
+ for _, want := range wants {
+ if result == want {
+ return false
+ }
+ }
+ return true
+}
+
+type sortableStruct struct {
+ x int
+}
+
+func (ss sortableStruct) String() string {
+ return fmt.Sprintf("ss.%d", ss.x)
+}
+
+type unsortableStruct struct {
+ x int
+}
+
+type sortTestCase struct {
+ input []reflect.Value
+ expected []reflect.Value
+}
+
+func helpTestSortValues(tests []sortTestCase, cs *spew.ConfigState, t *testing.T) {
+ getInterfaces := func(values []reflect.Value) []interface{} {
+ interfaces := []interface{}{}
+ for _, v := range values {
+ interfaces = append(interfaces, v.Interface())
+ }
+ return interfaces
+ }
+
+ for _, test := range tests {
+ spew.SortValues(test.input, cs)
+ // reflect.DeepEqual cannot really make sense of reflect.Value,
+ // probably because of all the pointer tricks. For instance,
+ // v(2.0) != v(2.0) on a 32-bits system. Turn them into interface{}
+ // instead.
+ input := getInterfaces(test.input)
+ expected := getInterfaces(test.expected)
+ if !reflect.DeepEqual(input, expected) {
+ t.Errorf("Sort mismatch:\n %v != %v", input, expected)
+ }
+ }
+}
+
+// TestSortValues ensures the sort functionality for relect.Value based sorting
+// works as intended.
+func TestSortValues(t *testing.T) {
+ v := reflect.ValueOf
+
+ a := v("a")
+ b := v("b")
+ c := v("c")
+ embedA := v(embed{"a"})
+ embedB := v(embed{"b"})
+ embedC := v(embed{"c"})
+ tests := []sortTestCase{
+ // No values.
+ {
+ []reflect.Value{},
+ []reflect.Value{},
+ },
+ // Bools.
+ {
+ []reflect.Value{v(false), v(true), v(false)},
+ []reflect.Value{v(false), v(false), v(true)},
+ },
+ // Ints.
+ {
+ []reflect.Value{v(2), v(1), v(3)},
+ []reflect.Value{v(1), v(2), v(3)},
+ },
+ // Uints.
+ {
+ []reflect.Value{v(uint8(2)), v(uint8(1)), v(uint8(3))},
+ []reflect.Value{v(uint8(1)), v(uint8(2)), v(uint8(3))},
+ },
+ // Floats.
+ {
+ []reflect.Value{v(2.0), v(1.0), v(3.0)},
+ []reflect.Value{v(1.0), v(2.0), v(3.0)},
+ },
+ // Strings.
+ {
+ []reflect.Value{b, a, c},
+ []reflect.Value{a, b, c},
+ },
+ // Array
+ {
+ []reflect.Value{v([3]int{3, 2, 1}), v([3]int{1, 3, 2}), v([3]int{1, 2, 3})},
+ []reflect.Value{v([3]int{1, 2, 3}), v([3]int{1, 3, 2}), v([3]int{3, 2, 1})},
+ },
+ // Uintptrs.
+ {
+ []reflect.Value{v(uintptr(2)), v(uintptr(1)), v(uintptr(3))},
+ []reflect.Value{v(uintptr(1)), v(uintptr(2)), v(uintptr(3))},
+ },
+ // SortableStructs.
+ {
+ // Note: not sorted - DisableMethods is set.
+ []reflect.Value{v(sortableStruct{2}), v(sortableStruct{1}), v(sortableStruct{3})},
+ []reflect.Value{v(sortableStruct{2}), v(sortableStruct{1}), v(sortableStruct{3})},
+ },
+ // UnsortableStructs.
+ {
+ // Note: not sorted - SpewKeys is false.
+ []reflect.Value{v(unsortableStruct{2}), v(unsortableStruct{1}), v(unsortableStruct{3})},
+ []reflect.Value{v(unsortableStruct{2}), v(unsortableStruct{1}), v(unsortableStruct{3})},
+ },
+ // Invalid.
+ {
+ []reflect.Value{embedB, embedA, embedC},
+ []reflect.Value{embedB, embedA, embedC},
+ },
+ }
+ cs := spew.ConfigState{DisableMethods: true, SpewKeys: false}
+ helpTestSortValues(tests, &cs, t)
+}
+
+// TestSortValuesWithMethods ensures the sort functionality for relect.Value
+// based sorting works as intended when using string methods.
+func TestSortValuesWithMethods(t *testing.T) {
+ v := reflect.ValueOf
+
+ a := v("a")
+ b := v("b")
+ c := v("c")
+ tests := []sortTestCase{
+ // Ints.
+ {
+ []reflect.Value{v(2), v(1), v(3)},
+ []reflect.Value{v(1), v(2), v(3)},
+ },
+ // Strings.
+ {
+ []reflect.Value{b, a, c},
+ []reflect.Value{a, b, c},
+ },
+ // SortableStructs.
+ {
+ []reflect.Value{v(sortableStruct{2}), v(sortableStruct{1}), v(sortableStruct{3})},
+ []reflect.Value{v(sortableStruct{1}), v(sortableStruct{2}), v(sortableStruct{3})},
+ },
+ // UnsortableStructs.
+ {
+ // Note: not sorted - SpewKeys is false.
+ []reflect.Value{v(unsortableStruct{2}), v(unsortableStruct{1}), v(unsortableStruct{3})},
+ []reflect.Value{v(unsortableStruct{2}), v(unsortableStruct{1}), v(unsortableStruct{3})},
+ },
+ }
+ cs := spew.ConfigState{DisableMethods: false, SpewKeys: false}
+ helpTestSortValues(tests, &cs, t)
+}
+
+// TestSortValuesWithSpew ensures the sort functionality for relect.Value
+// based sorting works as intended when using spew to stringify keys.
+func TestSortValuesWithSpew(t *testing.T) {
+ v := reflect.ValueOf
+
+ a := v("a")
+ b := v("b")
+ c := v("c")
+ tests := []sortTestCase{
+ // Ints.
+ {
+ []reflect.Value{v(2), v(1), v(3)},
+ []reflect.Value{v(1), v(2), v(3)},
+ },
+ // Strings.
+ {
+ []reflect.Value{b, a, c},
+ []reflect.Value{a, b, c},
+ },
+ // SortableStructs.
+ {
+ []reflect.Value{v(sortableStruct{2}), v(sortableStruct{1}), v(sortableStruct{3})},
+ []reflect.Value{v(sortableStruct{1}), v(sortableStruct{2}), v(sortableStruct{3})},
+ },
+ // UnsortableStructs.
+ {
+ []reflect.Value{v(unsortableStruct{2}), v(unsortableStruct{1}), v(unsortableStruct{3})},
+ []reflect.Value{v(unsortableStruct{1}), v(unsortableStruct{2}), v(unsortableStruct{3})},
+ },
+ }
+ cs := spew.ConfigState{DisableMethods: true, SpewKeys: true}
+ helpTestSortValues(tests, &cs, t)
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/config.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/config.go
new file mode 100644
index 000000000..ee1ab07b3
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/config.go
@@ -0,0 +1,297 @@
+/*
+ * Copyright (c) 2013 Dave Collins <dave@davec.name>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+package spew
+
+import (
+ "bytes"
+ "fmt"
+ "io"
+ "os"
+)
+
+// ConfigState houses the configuration options used by spew to format and
+// display values. There is a global instance, Config, that is used to control
+// all top-level Formatter and Dump functionality. Each ConfigState instance
+// provides methods equivalent to the top-level functions.
+//
+// The zero value for ConfigState provides no indentation. You would typically
+// want to set it to a space or a tab.
+//
+// Alternatively, you can use NewDefaultConfig to get a ConfigState instance
+// with default settings. See the documentation of NewDefaultConfig for default
+// values.
+type ConfigState struct {
+ // Indent specifies the string to use for each indentation level. The
+ // global config instance that all top-level functions use set this to a
+ // single space by default. If you would like more indentation, you might
+ // set this to a tab with "\t" or perhaps two spaces with " ".
+ Indent string
+
+ // MaxDepth controls the maximum number of levels to descend into nested
+ // data structures. The default, 0, means there is no limit.
+ //
+ // NOTE: Circular data structures are properly detected, so it is not
+ // necessary to set this value unless you specifically want to limit deeply
+ // nested data structures.
+ MaxDepth int
+
+ // DisableMethods specifies whether or not error and Stringer interfaces are
+ // invoked for types that implement them.
+ DisableMethods bool
+
+ // DisablePointerMethods specifies whether or not to check for and invoke
+ // error and Stringer interfaces on types which only accept a pointer
+ // receiver when the current type is not a pointer.
+ //
+ // NOTE: This might be an unsafe action since calling one of these methods
+ // with a pointer receiver could technically mutate the value, however,
+ // in practice, types which choose to satisify an error or Stringer
+ // interface with a pointer receiver should not be mutating their state
+ // inside these interface methods. As a result, this option relies on
+ // access to the unsafe package, so it will not have any effect when
+ // running in environments without access to the unsafe package such as
+ // Google App Engine or with the "disableunsafe" build tag specified.
+ DisablePointerMethods bool
+
+ // ContinueOnMethod specifies whether or not recursion should continue once
+ // a custom error or Stringer interface is invoked. The default, false,
+ // means it will print the results of invoking the custom error or Stringer
+ // interface and return immediately instead of continuing to recurse into
+ // the internals of the data type.
+ //
+ // NOTE: This flag does not have any effect if method invocation is disabled
+ // via the DisableMethods or DisablePointerMethods options.
+ ContinueOnMethod bool
+
+ // SortKeys specifies map keys should be sorted before being printed. Use
+ // this to have a more deterministic, diffable output. Note that only
+ // native types (bool, int, uint, floats, uintptr and string) and types
+ // that support the error or Stringer interfaces (if methods are
+ // enabled) are supported, with other types sorted according to the
+ // reflect.Value.String() output which guarantees display stability.
+ SortKeys bool
+
+ // SpewKeys specifies that, as a last resort attempt, map keys should
+ // be spewed to strings and sorted by those strings. This is only
+ // considered if SortKeys is true.
+ SpewKeys bool
+}
+
+// Config is the active configuration of the top-level functions.
+// The configuration can be changed by modifying the contents of spew.Config.
+var Config = ConfigState{Indent: " "}
+
+// Errorf is a wrapper for fmt.Errorf that treats each argument as if it were
+// passed with a Formatter interface returned by c.NewFormatter. It returns
+// the formatted string as a value that satisfies error. See NewFormatter
+// for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Errorf(format, c.NewFormatter(a), c.NewFormatter(b))
+func (c *ConfigState) Errorf(format string, a ...interface{}) (err error) {
+ return fmt.Errorf(format, c.convertArgs(a)...)
+}
+
+// Fprint is a wrapper for fmt.Fprint that treats each argument as if it were
+// passed with a Formatter interface returned by c.NewFormatter. It returns
+// the number of bytes written and any write error encountered. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Fprint(w, c.NewFormatter(a), c.NewFormatter(b))
+func (c *ConfigState) Fprint(w io.Writer, a ...interface{}) (n int, err error) {
+ return fmt.Fprint(w, c.convertArgs(a)...)
+}
+
+// Fprintf is a wrapper for fmt.Fprintf that treats each argument as if it were
+// passed with a Formatter interface returned by c.NewFormatter. It returns
+// the number of bytes written and any write error encountered. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Fprintf(w, format, c.NewFormatter(a), c.NewFormatter(b))
+func (c *ConfigState) Fprintf(w io.Writer, format string, a ...interface{}) (n int, err error) {
+ return fmt.Fprintf(w, format, c.convertArgs(a)...)
+}
+
+// Fprintln is a wrapper for fmt.Fprintln that treats each argument as if it
+// passed with a Formatter interface returned by c.NewFormatter. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Fprintln(w, c.NewFormatter(a), c.NewFormatter(b))
+func (c *ConfigState) Fprintln(w io.Writer, a ...interface{}) (n int, err error) {
+ return fmt.Fprintln(w, c.convertArgs(a)...)
+}
+
+// Print is a wrapper for fmt.Print that treats each argument as if it were
+// passed with a Formatter interface returned by c.NewFormatter. It returns
+// the number of bytes written and any write error encountered. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Print(c.NewFormatter(a), c.NewFormatter(b))
+func (c *ConfigState) Print(a ...interface{}) (n int, err error) {
+ return fmt.Print(c.convertArgs(a)...)
+}
+
+// Printf is a wrapper for fmt.Printf that treats each argument as if it were
+// passed with a Formatter interface returned by c.NewFormatter. It returns
+// the number of bytes written and any write error encountered. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Printf(format, c.NewFormatter(a), c.NewFormatter(b))
+func (c *ConfigState) Printf(format string, a ...interface{}) (n int, err error) {
+ return fmt.Printf(format, c.convertArgs(a)...)
+}
+
+// Println is a wrapper for fmt.Println that treats each argument as if it were
+// passed with a Formatter interface returned by c.NewFormatter. It returns
+// the number of bytes written and any write error encountered. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Println(c.NewFormatter(a), c.NewFormatter(b))
+func (c *ConfigState) Println(a ...interface{}) (n int, err error) {
+ return fmt.Println(c.convertArgs(a)...)
+}
+
+// Sprint is a wrapper for fmt.Sprint that treats each argument as if it were
+// passed with a Formatter interface returned by c.NewFormatter. It returns
+// the resulting string. See NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Sprint(c.NewFormatter(a), c.NewFormatter(b))
+func (c *ConfigState) Sprint(a ...interface{}) string {
+ return fmt.Sprint(c.convertArgs(a)...)
+}
+
+// Sprintf is a wrapper for fmt.Sprintf that treats each argument as if it were
+// passed with a Formatter interface returned by c.NewFormatter. It returns
+// the resulting string. See NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Sprintf(format, c.NewFormatter(a), c.NewFormatter(b))
+func (c *ConfigState) Sprintf(format string, a ...interface{}) string {
+ return fmt.Sprintf(format, c.convertArgs(a)...)
+}
+
+// Sprintln is a wrapper for fmt.Sprintln that treats each argument as if it
+// were passed with a Formatter interface returned by c.NewFormatter. It
+// returns the resulting string. See NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Sprintln(c.NewFormatter(a), c.NewFormatter(b))
+func (c *ConfigState) Sprintln(a ...interface{}) string {
+ return fmt.Sprintln(c.convertArgs(a)...)
+}
+
+/*
+NewFormatter returns a custom formatter that satisfies the fmt.Formatter
+interface. As a result, it integrates cleanly with standard fmt package
+printing functions. The formatter is useful for inline printing of smaller data
+types similar to the standard %v format specifier.
+
+The custom formatter only responds to the %v (most compact), %+v (adds pointer
+addresses), %#v (adds types), and %#+v (adds types and pointer addresses) verb
+combinations. Any other verbs such as %x and %q will be sent to the the
+standard fmt package for formatting. In addition, the custom formatter ignores
+the width and precision arguments (however they will still work on the format
+specifiers not handled by the custom formatter).
+
+Typically this function shouldn't be called directly. It is much easier to make
+use of the custom formatter by calling one of the convenience functions such as
+c.Printf, c.Println, or c.Printf.
+*/
+func (c *ConfigState) NewFormatter(v interface{}) fmt.Formatter {
+ return newFormatter(c, v)
+}
+
+// Fdump formats and displays the passed arguments to io.Writer w. It formats
+// exactly the same as Dump.
+func (c *ConfigState) Fdump(w io.Writer, a ...interface{}) {
+ fdump(c, w, a...)
+}
+
+/*
+Dump displays the passed parameters to standard out with newlines, customizable
+indentation, and additional debug information such as complete types and all
+pointer addresses used to indirect to the final value. It provides the
+following features over the built-in printing facilities provided by the fmt
+package:
+
+ * Pointers are dereferenced and followed
+ * Circular data structures are detected and handled properly
+ * Custom Stringer/error interfaces are optionally invoked, including
+ on unexported types
+ * Custom types which only implement the Stringer/error interfaces via
+ a pointer receiver are optionally invoked when passing non-pointer
+ variables
+ * Byte arrays and slices are dumped like the hexdump -C command which
+ includes offsets, byte values in hex, and ASCII output
+
+The configuration options are controlled by modifying the public members
+of c. See ConfigState for options documentation.
+
+See Fdump if you would prefer dumping to an arbitrary io.Writer or Sdump to
+get the formatted result as a string.
+*/
+func (c *ConfigState) Dump(a ...interface{}) {
+ fdump(c, os.Stdout, a...)
+}
+
+// Sdump returns a string with the passed arguments formatted exactly the same
+// as Dump.
+func (c *ConfigState) Sdump(a ...interface{}) string {
+ var buf bytes.Buffer
+ fdump(c, &buf, a...)
+ return buf.String()
+}
+
+// convertArgs accepts a slice of arguments and returns a slice of the same
+// length with each argument converted to a spew Formatter interface using
+// the ConfigState associated with s.
+func (c *ConfigState) convertArgs(args []interface{}) (formatters []interface{}) {
+ formatters = make([]interface{}, len(args))
+ for index, arg := range args {
+ formatters[index] = newFormatter(c, arg)
+ }
+ return formatters
+}
+
+// NewDefaultConfig returns a ConfigState with the following default settings.
+//
+// Indent: " "
+// MaxDepth: 0
+// DisableMethods: false
+// DisablePointerMethods: false
+// ContinueOnMethod: false
+// SortKeys: false
+func NewDefaultConfig() *ConfigState {
+ return &ConfigState{Indent: " "}
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/doc.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/doc.go
new file mode 100644
index 000000000..5be0c4060
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/doc.go
@@ -0,0 +1,202 @@
+/*
+ * Copyright (c) 2013 Dave Collins <dave@davec.name>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+/*
+Package spew implements a deep pretty printer for Go data structures to aid in
+debugging.
+
+A quick overview of the additional features spew provides over the built-in
+printing facilities for Go data types are as follows:
+
+ * Pointers are dereferenced and followed
+ * Circular data structures are detected and handled properly
+ * Custom Stringer/error interfaces are optionally invoked, including
+ on unexported types
+ * Custom types which only implement the Stringer/error interfaces via
+ a pointer receiver are optionally invoked when passing non-pointer
+ variables
+ * Byte arrays and slices are dumped like the hexdump -C command which
+ includes offsets, byte values in hex, and ASCII output (only when using
+ Dump style)
+
+There are two different approaches spew allows for dumping Go data structures:
+
+ * Dump style which prints with newlines, customizable indentation,
+ and additional debug information such as types and all pointer addresses
+ used to indirect to the final value
+ * A custom Formatter interface that integrates cleanly with the standard fmt
+ package and replaces %v, %+v, %#v, and %#+v to provide inline printing
+ similar to the default %v while providing the additional functionality
+ outlined above and passing unsupported format verbs such as %x and %q
+ along to fmt
+
+Quick Start
+
+This section demonstrates how to quickly get started with spew. See the
+sections below for further details on formatting and configuration options.
+
+To dump a variable with full newlines, indentation, type, and pointer
+information use Dump, Fdump, or Sdump:
+ spew.Dump(myVar1, myVar2, ...)
+ spew.Fdump(someWriter, myVar1, myVar2, ...)
+ str := spew.Sdump(myVar1, myVar2, ...)
+
+Alternatively, if you would prefer to use format strings with a compacted inline
+printing style, use the convenience wrappers Printf, Fprintf, etc with
+%v (most compact), %+v (adds pointer addresses), %#v (adds types), or
+%#+v (adds types and pointer addresses):
+ spew.Printf("myVar1: %v -- myVar2: %+v", myVar1, myVar2)
+ spew.Printf("myVar3: %#v -- myVar4: %#+v", myVar3, myVar4)
+ spew.Fprintf(someWriter, "myVar1: %v -- myVar2: %+v", myVar1, myVar2)
+ spew.Fprintf(someWriter, "myVar3: %#v -- myVar4: %#+v", myVar3, myVar4)
+
+Configuration Options
+
+Configuration of spew is handled by fields in the ConfigState type. For
+convenience, all of the top-level functions use a global state available
+via the spew.Config global.
+
+It is also possible to create a ConfigState instance that provides methods
+equivalent to the top-level functions. This allows concurrent configuration
+options. See the ConfigState documentation for more details.
+
+The following configuration options are available:
+ * Indent
+ String to use for each indentation level for Dump functions.
+ It is a single space by default. A popular alternative is "\t".
+
+ * MaxDepth
+ Maximum number of levels to descend into nested data structures.
+ There is no limit by default.
+
+ * DisableMethods
+ Disables invocation of error and Stringer interface methods.
+ Method invocation is enabled by default.
+
+ * DisablePointerMethods
+ Disables invocation of error and Stringer interface methods on types
+ which only accept pointer receivers from non-pointer variables.
+ Pointer method invocation is enabled by default.
+
+ * ContinueOnMethod
+ Enables recursion into types after invoking error and Stringer interface
+ methods. Recursion after method invocation is disabled by default.
+
+ * SortKeys
+ Specifies map keys should be sorted before being printed. Use
+ this to have a more deterministic, diffable output. Note that
+ only native types (bool, int, uint, floats, uintptr and string)
+ and types which implement error or Stringer interfaces are
+ supported with other types sorted according to the
+ reflect.Value.String() output which guarantees display
+ stability. Natural map order is used by default.
+
+ * SpewKeys
+ Specifies that, as a last resort attempt, map keys should be
+ spewed to strings and sorted by those strings. This is only
+ considered if SortKeys is true.
+
+Dump Usage
+
+Simply call spew.Dump with a list of variables you want to dump:
+
+ spew.Dump(myVar1, myVar2, ...)
+
+You may also call spew.Fdump if you would prefer to output to an arbitrary
+io.Writer. For example, to dump to standard error:
+
+ spew.Fdump(os.Stderr, myVar1, myVar2, ...)
+
+A third option is to call spew.Sdump to get the formatted output as a string:
+
+ str := spew.Sdump(myVar1, myVar2, ...)
+
+Sample Dump Output
+
+See the Dump example for details on the setup of the types and variables being
+shown here.
+
+ (main.Foo) {
+ unexportedField: (*main.Bar)(0xf84002e210)({
+ flag: (main.Flag) flagTwo,
+ data: (uintptr) <nil>
+ }),
+ ExportedField: (map[interface {}]interface {}) (len=1) {
+ (string) (len=3) "one": (bool) true
+ }
+ }
+
+Byte (and uint8) arrays and slices are displayed uniquely like the hexdump -C
+command as shown.
+ ([]uint8) (len=32 cap=32) {
+ 00000000 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 |............... |
+ 00000010 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 |!"#$%&'()*+,-./0|
+ 00000020 31 32 |12|
+ }
+
+Custom Formatter
+
+Spew provides a custom formatter that implements the fmt.Formatter interface
+so that it integrates cleanly with standard fmt package printing functions. The
+formatter is useful for inline printing of smaller data types similar to the
+standard %v format specifier.
+
+The custom formatter only responds to the %v (most compact), %+v (adds pointer
+addresses), %#v (adds types), or %#+v (adds types and pointer addresses) verb
+combinations. Any other verbs such as %x and %q will be sent to the the
+standard fmt package for formatting. In addition, the custom formatter ignores
+the width and precision arguments (however they will still work on the format
+specifiers not handled by the custom formatter).
+
+Custom Formatter Usage
+
+The simplest way to make use of the spew custom formatter is to call one of the
+convenience functions such as spew.Printf, spew.Println, or spew.Printf. The
+functions have syntax you are most likely already familiar with:
+
+ spew.Printf("myVar1: %v -- myVar2: %+v", myVar1, myVar2)
+ spew.Printf("myVar3: %#v -- myVar4: %#+v", myVar3, myVar4)
+ spew.Println(myVar, myVar2)
+ spew.Fprintf(os.Stderr, "myVar1: %v -- myVar2: %+v", myVar1, myVar2)
+ spew.Fprintf(os.Stderr, "myVar3: %#v -- myVar4: %#+v", myVar3, myVar4)
+
+See the Index for the full list convenience functions.
+
+Sample Formatter Output
+
+Double pointer to a uint8:
+ %v: <**>5
+ %+v: <**>(0xf8400420d0->0xf8400420c8)5
+ %#v: (**uint8)5
+ %#+v: (**uint8)(0xf8400420d0->0xf8400420c8)5
+
+Pointer to circular struct with a uint8 field and a pointer to itself:
+ %v: <*>{1 <*><shown>}
+ %+v: <*>(0xf84003e260){ui8:1 c:<*>(0xf84003e260)<shown>}
+ %#v: (*main.circular){ui8:(uint8)1 c:(*main.circular)<shown>}
+ %#+v: (*main.circular)(0xf84003e260){ui8:(uint8)1 c:(*main.circular)(0xf84003e260)<shown>}
+
+See the Printf example for details on the setup of variables being shown
+here.
+
+Errors
+
+Since it is possible for custom Stringer/error interfaces to panic, spew
+detects them and handles them internally by printing the panic information
+inline with the output. Since spew is intended to provide deep pretty printing
+capabilities on structures, it intentionally does not return any errors.
+*/
+package spew
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dump.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dump.go
new file mode 100644
index 000000000..a0ff95e27
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dump.go
@@ -0,0 +1,509 @@
+/*
+ * Copyright (c) 2013 Dave Collins <dave@davec.name>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+package spew
+
+import (
+ "bytes"
+ "encoding/hex"
+ "fmt"
+ "io"
+ "os"
+ "reflect"
+ "regexp"
+ "strconv"
+ "strings"
+)
+
+var (
+ // uint8Type is a reflect.Type representing a uint8. It is used to
+ // convert cgo types to uint8 slices for hexdumping.
+ uint8Type = reflect.TypeOf(uint8(0))
+
+ // cCharRE is a regular expression that matches a cgo char.
+ // It is used to detect character arrays to hexdump them.
+ cCharRE = regexp.MustCompile("^.*\\._Ctype_char$")
+
+ // cUnsignedCharRE is a regular expression that matches a cgo unsigned
+ // char. It is used to detect unsigned character arrays to hexdump
+ // them.
+ cUnsignedCharRE = regexp.MustCompile("^.*\\._Ctype_unsignedchar$")
+
+ // cUint8tCharRE is a regular expression that matches a cgo uint8_t.
+ // It is used to detect uint8_t arrays to hexdump them.
+ cUint8tCharRE = regexp.MustCompile("^.*\\._Ctype_uint8_t$")
+)
+
+// dumpState contains information about the state of a dump operation.
+type dumpState struct {
+ w io.Writer
+ depth int
+ pointers map[uintptr]int
+ ignoreNextType bool
+ ignoreNextIndent bool
+ cs *ConfigState
+}
+
+// indent performs indentation according to the depth level and cs.Indent
+// option.
+func (d *dumpState) indent() {
+ if d.ignoreNextIndent {
+ d.ignoreNextIndent = false
+ return
+ }
+ d.w.Write(bytes.Repeat([]byte(d.cs.Indent), d.depth))
+}
+
+// unpackValue returns values inside of non-nil interfaces when possible.
+// This is useful for data types like structs, arrays, slices, and maps which
+// can contain varying types packed inside an interface.
+func (d *dumpState) unpackValue(v reflect.Value) reflect.Value {
+ if v.Kind() == reflect.Interface && !v.IsNil() {
+ v = v.Elem()
+ }
+ return v
+}
+
+// dumpPtr handles formatting of pointers by indirecting them as necessary.
+func (d *dumpState) dumpPtr(v reflect.Value) {
+ // Remove pointers at or below the current depth from map used to detect
+ // circular refs.
+ for k, depth := range d.pointers {
+ if depth >= d.depth {
+ delete(d.pointers, k)
+ }
+ }
+
+ // Keep list of all dereferenced pointers to show later.
+ pointerChain := make([]uintptr, 0)
+
+ // Figure out how many levels of indirection there are by dereferencing
+ // pointers and unpacking interfaces down the chain while detecting circular
+ // references.
+ nilFound := false
+ cycleFound := false
+ indirects := 0
+ ve := v
+ for ve.Kind() == reflect.Ptr {
+ if ve.IsNil() {
+ nilFound = true
+ break
+ }
+ indirects++
+ addr := ve.Pointer()
+ pointerChain = append(pointerChain, addr)
+ if pd, ok := d.pointers[addr]; ok && pd < d.depth {
+ cycleFound = true
+ indirects--
+ break
+ }
+ d.pointers[addr] = d.depth
+
+ ve = ve.Elem()
+ if ve.Kind() == reflect.Interface {
+ if ve.IsNil() {
+ nilFound = true
+ break
+ }
+ ve = ve.Elem()
+ }
+ }
+
+ // Display type information.
+ d.w.Write(openParenBytes)
+ d.w.Write(bytes.Repeat(asteriskBytes, indirects))
+ d.w.Write([]byte(ve.Type().String()))
+ d.w.Write(closeParenBytes)
+
+ // Display pointer information.
+ if len(pointerChain) > 0 {
+ d.w.Write(openParenBytes)
+ for i, addr := range pointerChain {
+ if i > 0 {
+ d.w.Write(pointerChainBytes)
+ }
+ printHexPtr(d.w, addr)
+ }
+ d.w.Write(closeParenBytes)
+ }
+
+ // Display dereferenced value.
+ d.w.Write(openParenBytes)
+ switch {
+ case nilFound == true:
+ d.w.Write(nilAngleBytes)
+
+ case cycleFound == true:
+ d.w.Write(circularBytes)
+
+ default:
+ d.ignoreNextType = true
+ d.dump(ve)
+ }
+ d.w.Write(closeParenBytes)
+}
+
+// dumpSlice handles formatting of arrays and slices. Byte (uint8 under
+// reflection) arrays and slices are dumped in hexdump -C fashion.
+func (d *dumpState) dumpSlice(v reflect.Value) {
+ // Determine whether this type should be hex dumped or not. Also,
+ // for types which should be hexdumped, try to use the underlying data
+ // first, then fall back to trying to convert them to a uint8 slice.
+ var buf []uint8
+ doConvert := false
+ doHexDump := false
+ numEntries := v.Len()
+ if numEntries > 0 {
+ vt := v.Index(0).Type()
+ vts := vt.String()
+ switch {
+ // C types that need to be converted.
+ case cCharRE.MatchString(vts):
+ fallthrough
+ case cUnsignedCharRE.MatchString(vts):
+ fallthrough
+ case cUint8tCharRE.MatchString(vts):
+ doConvert = true
+
+ // Try to use existing uint8 slices and fall back to converting
+ // and copying if that fails.
+ case vt.Kind() == reflect.Uint8:
+ // We need an addressable interface to convert the type
+ // to a byte slice. However, the reflect package won't
+ // give us an interface on certain things like
+ // unexported struct fields in order to enforce
+ // visibility rules. We use unsafe, when available, to
+ // bypass these restrictions since this package does not
+ // mutate the values.
+ vs := v
+ if !vs.CanInterface() || !vs.CanAddr() {
+ vs = unsafeReflectValue(vs)
+ }
+ if !UnsafeDisabled {
+ vs = vs.Slice(0, numEntries)
+
+ // Use the existing uint8 slice if it can be
+ // type asserted.
+ iface := vs.Interface()
+ if slice, ok := iface.([]uint8); ok {
+ buf = slice
+ doHexDump = true
+ break
+ }
+ }
+
+ // The underlying data needs to be converted if it can't
+ // be type asserted to a uint8 slice.
+ doConvert = true
+ }
+
+ // Copy and convert the underlying type if needed.
+ if doConvert && vt.ConvertibleTo(uint8Type) {
+ // Convert and copy each element into a uint8 byte
+ // slice.
+ buf = make([]uint8, numEntries)
+ for i := 0; i < numEntries; i++ {
+ vv := v.Index(i)
+ buf[i] = uint8(vv.Convert(uint8Type).Uint())
+ }
+ doHexDump = true
+ }
+ }
+
+ // Hexdump the entire slice as needed.
+ if doHexDump {
+ indent := strings.Repeat(d.cs.Indent, d.depth)
+ str := indent + hex.Dump(buf)
+ str = strings.Replace(str, "\n", "\n"+indent, -1)
+ str = strings.TrimRight(str, d.cs.Indent)
+ d.w.Write([]byte(str))
+ return
+ }
+
+ // Recursively call dump for each item.
+ for i := 0; i < numEntries; i++ {
+ d.dump(d.unpackValue(v.Index(i)))
+ if i < (numEntries - 1) {
+ d.w.Write(commaNewlineBytes)
+ } else {
+ d.w.Write(newlineBytes)
+ }
+ }
+}
+
+// dump is the main workhorse for dumping a value. It uses the passed reflect
+// value to figure out what kind of object we are dealing with and formats it
+// appropriately. It is a recursive function, however circular data structures
+// are detected and handled properly.
+func (d *dumpState) dump(v reflect.Value) {
+ // Handle invalid reflect values immediately.
+ kind := v.Kind()
+ if kind == reflect.Invalid {
+ d.w.Write(invalidAngleBytes)
+ return
+ }
+
+ // Handle pointers specially.
+ if kind == reflect.Ptr {
+ d.indent()
+ d.dumpPtr(v)
+ return
+ }
+
+ // Print type information unless already handled elsewhere.
+ if !d.ignoreNextType {
+ d.indent()
+ d.w.Write(openParenBytes)
+ d.w.Write([]byte(v.Type().String()))
+ d.w.Write(closeParenBytes)
+ d.w.Write(spaceBytes)
+ }
+ d.ignoreNextType = false
+
+ // Display length and capacity if the built-in len and cap functions
+ // work with the value's kind and the len/cap itself is non-zero.
+ valueLen, valueCap := 0, 0
+ switch v.Kind() {
+ case reflect.Array, reflect.Slice, reflect.Chan:
+ valueLen, valueCap = v.Len(), v.Cap()
+ case reflect.Map, reflect.String:
+ valueLen = v.Len()
+ }
+ if valueLen != 0 || valueCap != 0 {
+ d.w.Write(openParenBytes)
+ if valueLen != 0 {
+ d.w.Write(lenEqualsBytes)
+ printInt(d.w, int64(valueLen), 10)
+ }
+ if valueCap != 0 {
+ if valueLen != 0 {
+ d.w.Write(spaceBytes)
+ }
+ d.w.Write(capEqualsBytes)
+ printInt(d.w, int64(valueCap), 10)
+ }
+ d.w.Write(closeParenBytes)
+ d.w.Write(spaceBytes)
+ }
+
+ // Call Stringer/error interfaces if they exist and the handle methods flag
+ // is enabled
+ if !d.cs.DisableMethods {
+ if (kind != reflect.Invalid) && (kind != reflect.Interface) {
+ if handled := handleMethods(d.cs, d.w, v); handled {
+ return
+ }
+ }
+ }
+
+ switch kind {
+ case reflect.Invalid:
+ // Do nothing. We should never get here since invalid has already
+ // been handled above.
+
+ case reflect.Bool:
+ printBool(d.w, v.Bool())
+
+ case reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Int:
+ printInt(d.w, v.Int(), 10)
+
+ case reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uint:
+ printUint(d.w, v.Uint(), 10)
+
+ case reflect.Float32:
+ printFloat(d.w, v.Float(), 32)
+
+ case reflect.Float64:
+ printFloat(d.w, v.Float(), 64)
+
+ case reflect.Complex64:
+ printComplex(d.w, v.Complex(), 32)
+
+ case reflect.Complex128:
+ printComplex(d.w, v.Complex(), 64)
+
+ case reflect.Slice:
+ if v.IsNil() {
+ d.w.Write(nilAngleBytes)
+ break
+ }
+ fallthrough
+
+ case reflect.Array:
+ d.w.Write(openBraceNewlineBytes)
+ d.depth++
+ if (d.cs.MaxDepth != 0) && (d.depth > d.cs.MaxDepth) {
+ d.indent()
+ d.w.Write(maxNewlineBytes)
+ } else {
+ d.dumpSlice(v)
+ }
+ d.depth--
+ d.indent()
+ d.w.Write(closeBraceBytes)
+
+ case reflect.String:
+ d.w.Write([]byte(strconv.Quote(v.String())))
+
+ case reflect.Interface:
+ // The only time we should get here is for nil interfaces due to
+ // unpackValue calls.
+ if v.IsNil() {
+ d.w.Write(nilAngleBytes)
+ }
+
+ case reflect.Ptr:
+ // Do nothing. We should never get here since pointers have already
+ // been handled above.
+
+ case reflect.Map:
+ // nil maps should be indicated as different than empty maps
+ if v.IsNil() {
+ d.w.Write(nilAngleBytes)
+ break
+ }
+
+ d.w.Write(openBraceNewlineBytes)
+ d.depth++
+ if (d.cs.MaxDepth != 0) && (d.depth > d.cs.MaxDepth) {
+ d.indent()
+ d.w.Write(maxNewlineBytes)
+ } else {
+ numEntries := v.Len()
+ keys := v.MapKeys()
+ if d.cs.SortKeys {
+ sortValues(keys, d.cs)
+ }
+ for i, key := range keys {
+ d.dump(d.unpackValue(key))
+ d.w.Write(colonSpaceBytes)
+ d.ignoreNextIndent = true
+ d.dump(d.unpackValue(v.MapIndex(key)))
+ if i < (numEntries - 1) {
+ d.w.Write(commaNewlineBytes)
+ } else {
+ d.w.Write(newlineBytes)
+ }
+ }
+ }
+ d.depth--
+ d.indent()
+ d.w.Write(closeBraceBytes)
+
+ case reflect.Struct:
+ d.w.Write(openBraceNewlineBytes)
+ d.depth++
+ if (d.cs.MaxDepth != 0) && (d.depth > d.cs.MaxDepth) {
+ d.indent()
+ d.w.Write(maxNewlineBytes)
+ } else {
+ vt := v.Type()
+ numFields := v.NumField()
+ for i := 0; i < numFields; i++ {
+ d.indent()
+ vtf := vt.Field(i)
+ d.w.Write([]byte(vtf.Name))
+ d.w.Write(colonSpaceBytes)
+ d.ignoreNextIndent = true
+ d.dump(d.unpackValue(v.Field(i)))
+ if i < (numFields - 1) {
+ d.w.Write(commaNewlineBytes)
+ } else {
+ d.w.Write(newlineBytes)
+ }
+ }
+ }
+ d.depth--
+ d.indent()
+ d.w.Write(closeBraceBytes)
+
+ case reflect.Uintptr:
+ printHexPtr(d.w, uintptr(v.Uint()))
+
+ case reflect.UnsafePointer, reflect.Chan, reflect.Func:
+ printHexPtr(d.w, v.Pointer())
+
+ // There were not any other types at the time this code was written, but
+ // fall back to letting the default fmt package handle it in case any new
+ // types are added.
+ default:
+ if v.CanInterface() {
+ fmt.Fprintf(d.w, "%v", v.Interface())
+ } else {
+ fmt.Fprintf(d.w, "%v", v.String())
+ }
+ }
+}
+
+// fdump is a helper function to consolidate the logic from the various public
+// methods which take varying writers and config states.
+func fdump(cs *ConfigState, w io.Writer, a ...interface{}) {
+ for _, arg := range a {
+ if arg == nil {
+ w.Write(interfaceBytes)
+ w.Write(spaceBytes)
+ w.Write(nilAngleBytes)
+ w.Write(newlineBytes)
+ continue
+ }
+
+ d := dumpState{w: w, cs: cs}
+ d.pointers = make(map[uintptr]int)
+ d.dump(reflect.ValueOf(arg))
+ d.w.Write(newlineBytes)
+ }
+}
+
+// Fdump formats and displays the passed arguments to io.Writer w. It formats
+// exactly the same as Dump.
+func Fdump(w io.Writer, a ...interface{}) {
+ fdump(&Config, w, a...)
+}
+
+// Sdump returns a string with the passed arguments formatted exactly the same
+// as Dump.
+func Sdump(a ...interface{}) string {
+ var buf bytes.Buffer
+ fdump(&Config, &buf, a...)
+ return buf.String()
+}
+
+/*
+Dump displays the passed parameters to standard out with newlines, customizable
+indentation, and additional debug information such as complete types and all
+pointer addresses used to indirect to the final value. It provides the
+following features over the built-in printing facilities provided by the fmt
+package:
+
+ * Pointers are dereferenced and followed
+ * Circular data structures are detected and handled properly
+ * Custom Stringer/error interfaces are optionally invoked, including
+ on unexported types
+ * Custom types which only implement the Stringer/error interfaces via
+ a pointer receiver are optionally invoked when passing non-pointer
+ variables
+ * Byte arrays and slices are dumped like the hexdump -C command which
+ includes offsets, byte values in hex, and ASCII output
+
+The configuration options are controlled by an exported package global,
+spew.Config. See ConfigState for options documentation.
+
+See Fdump if you would prefer dumping to an arbitrary io.Writer or Sdump to
+get the formatted result as a string.
+*/
+func Dump(a ...interface{}) {
+ fdump(&Config, os.Stdout, a...)
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dump_test.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dump_test.go
new file mode 100644
index 000000000..0762e59ae
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dump_test.go
@@ -0,0 +1,1042 @@
+/*
+ * Copyright (c) 2013 Dave Collins <dave@davec.name>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+/*
+Test Summary:
+NOTE: For each test, a nil pointer, a single pointer and double pointer to the
+base test element are also tested to ensure proper indirection across all types.
+
+- Max int8, int16, int32, int64, int
+- Max uint8, uint16, uint32, uint64, uint
+- Boolean true and false
+- Standard complex64 and complex128
+- Array containing standard ints
+- Array containing type with custom formatter on pointer receiver only
+- Array containing interfaces
+- Array containing bytes
+- Slice containing standard float32 values
+- Slice containing type with custom formatter on pointer receiver only
+- Slice containing interfaces
+- Slice containing bytes
+- Nil slice
+- Standard string
+- Nil interface
+- Sub-interface
+- Map with string keys and int vals
+- Map with custom formatter type on pointer receiver only keys and vals
+- Map with interface keys and values
+- Map with nil interface value
+- Struct with primitives
+- Struct that contains another struct
+- Struct that contains custom type with Stringer pointer interface via both
+ exported and unexported fields
+- Struct that contains embedded struct and field to same struct
+- Uintptr to 0 (null pointer)
+- Uintptr address of real variable
+- Unsafe.Pointer to 0 (null pointer)
+- Unsafe.Pointer to address of real variable
+- Nil channel
+- Standard int channel
+- Function with no params and no returns
+- Function with param and no returns
+- Function with multiple params and multiple returns
+- Struct that is circular through self referencing
+- Structs that are circular through cross referencing
+- Structs that are indirectly circular
+- Type that panics in its Stringer interface
+*/
+
+package spew_test
+
+import (
+ "bytes"
+ "fmt"
+ "testing"
+ "unsafe"
+
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/davecgh/go-spew/spew"
+)
+
+// dumpTest is used to describe a test to be perfomed against the Dump method.
+type dumpTest struct {
+ in interface{}
+ wants []string
+}
+
+// dumpTests houses all of the tests to be performed against the Dump method.
+var dumpTests = make([]dumpTest, 0)
+
+// addDumpTest is a helper method to append the passed input and desired result
+// to dumpTests
+func addDumpTest(in interface{}, wants ...string) {
+ test := dumpTest{in, wants}
+ dumpTests = append(dumpTests, test)
+}
+
+func addIntDumpTests() {
+ // Max int8.
+ v := int8(127)
+ nv := (*int8)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "int8"
+ vs := "127"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+
+ // Max int16.
+ v2 := int16(32767)
+ nv2 := (*int16)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "int16"
+ v2s := "32767"
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*"+v2t+")("+v2Addr+")("+v2s+")\n")
+ addDumpTest(&pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s+")\n")
+ addDumpTest(nv2, "(*"+v2t+")(<nil>)\n")
+
+ // Max int32.
+ v3 := int32(2147483647)
+ nv3 := (*int32)(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "int32"
+ v3s := "2147483647"
+ addDumpTest(v3, "("+v3t+") "+v3s+"\n")
+ addDumpTest(pv3, "(*"+v3t+")("+v3Addr+")("+v3s+")\n")
+ addDumpTest(&pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")("+v3s+")\n")
+ addDumpTest(nv3, "(*"+v3t+")(<nil>)\n")
+
+ // Max int64.
+ v4 := int64(9223372036854775807)
+ nv4 := (*int64)(nil)
+ pv4 := &v4
+ v4Addr := fmt.Sprintf("%p", pv4)
+ pv4Addr := fmt.Sprintf("%p", &pv4)
+ v4t := "int64"
+ v4s := "9223372036854775807"
+ addDumpTest(v4, "("+v4t+") "+v4s+"\n")
+ addDumpTest(pv4, "(*"+v4t+")("+v4Addr+")("+v4s+")\n")
+ addDumpTest(&pv4, "(**"+v4t+")("+pv4Addr+"->"+v4Addr+")("+v4s+")\n")
+ addDumpTest(nv4, "(*"+v4t+")(<nil>)\n")
+
+ // Max int.
+ v5 := int(2147483647)
+ nv5 := (*int)(nil)
+ pv5 := &v5
+ v5Addr := fmt.Sprintf("%p", pv5)
+ pv5Addr := fmt.Sprintf("%p", &pv5)
+ v5t := "int"
+ v5s := "2147483647"
+ addDumpTest(v5, "("+v5t+") "+v5s+"\n")
+ addDumpTest(pv5, "(*"+v5t+")("+v5Addr+")("+v5s+")\n")
+ addDumpTest(&pv5, "(**"+v5t+")("+pv5Addr+"->"+v5Addr+")("+v5s+")\n")
+ addDumpTest(nv5, "(*"+v5t+")(<nil>)\n")
+}
+
+func addUintDumpTests() {
+ // Max uint8.
+ v := uint8(255)
+ nv := (*uint8)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "uint8"
+ vs := "255"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+
+ // Max uint16.
+ v2 := uint16(65535)
+ nv2 := (*uint16)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "uint16"
+ v2s := "65535"
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*"+v2t+")("+v2Addr+")("+v2s+")\n")
+ addDumpTest(&pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s+")\n")
+ addDumpTest(nv2, "(*"+v2t+")(<nil>)\n")
+
+ // Max uint32.
+ v3 := uint32(4294967295)
+ nv3 := (*uint32)(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "uint32"
+ v3s := "4294967295"
+ addDumpTest(v3, "("+v3t+") "+v3s+"\n")
+ addDumpTest(pv3, "(*"+v3t+")("+v3Addr+")("+v3s+")\n")
+ addDumpTest(&pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")("+v3s+")\n")
+ addDumpTest(nv3, "(*"+v3t+")(<nil>)\n")
+
+ // Max uint64.
+ v4 := uint64(18446744073709551615)
+ nv4 := (*uint64)(nil)
+ pv4 := &v4
+ v4Addr := fmt.Sprintf("%p", pv4)
+ pv4Addr := fmt.Sprintf("%p", &pv4)
+ v4t := "uint64"
+ v4s := "18446744073709551615"
+ addDumpTest(v4, "("+v4t+") "+v4s+"\n")
+ addDumpTest(pv4, "(*"+v4t+")("+v4Addr+")("+v4s+")\n")
+ addDumpTest(&pv4, "(**"+v4t+")("+pv4Addr+"->"+v4Addr+")("+v4s+")\n")
+ addDumpTest(nv4, "(*"+v4t+")(<nil>)\n")
+
+ // Max uint.
+ v5 := uint(4294967295)
+ nv5 := (*uint)(nil)
+ pv5 := &v5
+ v5Addr := fmt.Sprintf("%p", pv5)
+ pv5Addr := fmt.Sprintf("%p", &pv5)
+ v5t := "uint"
+ v5s := "4294967295"
+ addDumpTest(v5, "("+v5t+") "+v5s+"\n")
+ addDumpTest(pv5, "(*"+v5t+")("+v5Addr+")("+v5s+")\n")
+ addDumpTest(&pv5, "(**"+v5t+")("+pv5Addr+"->"+v5Addr+")("+v5s+")\n")
+ addDumpTest(nv5, "(*"+v5t+")(<nil>)\n")
+}
+
+func addBoolDumpTests() {
+ // Boolean true.
+ v := bool(true)
+ nv := (*bool)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "bool"
+ vs := "true"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+
+ // Boolean false.
+ v2 := bool(false)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "bool"
+ v2s := "false"
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*"+v2t+")("+v2Addr+")("+v2s+")\n")
+ addDumpTest(&pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s+")\n")
+}
+
+func addFloatDumpTests() {
+ // Standard float32.
+ v := float32(3.1415)
+ nv := (*float32)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "float32"
+ vs := "3.1415"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+
+ // Standard float64.
+ v2 := float64(3.1415926)
+ nv2 := (*float64)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "float64"
+ v2s := "3.1415926"
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*"+v2t+")("+v2Addr+")("+v2s+")\n")
+ addDumpTest(&pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s+")\n")
+ addDumpTest(nv2, "(*"+v2t+")(<nil>)\n")
+}
+
+func addComplexDumpTests() {
+ // Standard complex64.
+ v := complex(float32(6), -2)
+ nv := (*complex64)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "complex64"
+ vs := "(6-2i)"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+
+ // Standard complex128.
+ v2 := complex(float64(-6), 2)
+ nv2 := (*complex128)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "complex128"
+ v2s := "(-6+2i)"
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*"+v2t+")("+v2Addr+")("+v2s+")\n")
+ addDumpTest(&pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s+")\n")
+ addDumpTest(nv2, "(*"+v2t+")(<nil>)\n")
+}
+
+func addArrayDumpTests() {
+ // Array containing standard ints.
+ v := [3]int{1, 2, 3}
+ vLen := fmt.Sprintf("%d", len(v))
+ vCap := fmt.Sprintf("%d", cap(v))
+ nv := (*[3]int)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "int"
+ vs := "(len=" + vLen + " cap=" + vCap + ") {\n (" + vt + ") 1,\n (" +
+ vt + ") 2,\n (" + vt + ") 3\n}"
+ addDumpTest(v, "([3]"+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*[3]"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**[3]"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*[3]"+vt+")(<nil>)\n")
+
+ // Array containing type with custom formatter on pointer receiver only.
+ v2i0 := pstringer("1")
+ v2i1 := pstringer("2")
+ v2i2 := pstringer("3")
+ v2 := [3]pstringer{v2i0, v2i1, v2i2}
+ v2i0Len := fmt.Sprintf("%d", len(v2i0))
+ v2i1Len := fmt.Sprintf("%d", len(v2i1))
+ v2i2Len := fmt.Sprintf("%d", len(v2i2))
+ v2Len := fmt.Sprintf("%d", len(v2))
+ v2Cap := fmt.Sprintf("%d", cap(v2))
+ nv2 := (*[3]pstringer)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "spew_test.pstringer"
+ v2sp := "(len=" + v2Len + " cap=" + v2Cap + ") {\n (" + v2t +
+ ") (len=" + v2i0Len + ") stringer 1,\n (" + v2t +
+ ") (len=" + v2i1Len + ") stringer 2,\n (" + v2t +
+ ") (len=" + v2i2Len + ") " + "stringer 3\n}"
+ v2s := v2sp
+ if spew.UnsafeDisabled {
+ v2s = "(len=" + v2Len + " cap=" + v2Cap + ") {\n (" + v2t +
+ ") (len=" + v2i0Len + ") \"1\",\n (" + v2t + ") (len=" +
+ v2i1Len + ") \"2\",\n (" + v2t + ") (len=" + v2i2Len +
+ ") " + "\"3\"\n}"
+ }
+ addDumpTest(v2, "([3]"+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*[3]"+v2t+")("+v2Addr+")("+v2sp+")\n")
+ addDumpTest(&pv2, "(**[3]"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2sp+")\n")
+ addDumpTest(nv2, "(*[3]"+v2t+")(<nil>)\n")
+
+ // Array containing interfaces.
+ v3i0 := "one"
+ v3 := [3]interface{}{v3i0, int(2), uint(3)}
+ v3i0Len := fmt.Sprintf("%d", len(v3i0))
+ v3Len := fmt.Sprintf("%d", len(v3))
+ v3Cap := fmt.Sprintf("%d", cap(v3))
+ nv3 := (*[3]interface{})(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "[3]interface {}"
+ v3t2 := "string"
+ v3t3 := "int"
+ v3t4 := "uint"
+ v3s := "(len=" + v3Len + " cap=" + v3Cap + ") {\n (" + v3t2 + ") " +
+ "(len=" + v3i0Len + ") \"one\",\n (" + v3t3 + ") 2,\n (" +
+ v3t4 + ") 3\n}"
+ addDumpTest(v3, "("+v3t+") "+v3s+"\n")
+ addDumpTest(pv3, "(*"+v3t+")("+v3Addr+")("+v3s+")\n")
+ addDumpTest(&pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")("+v3s+")\n")
+ addDumpTest(nv3, "(*"+v3t+")(<nil>)\n")
+
+ // Array containing bytes.
+ v4 := [34]byte{
+ 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,
+ }
+ v4Len := fmt.Sprintf("%d", len(v4))
+ v4Cap := fmt.Sprintf("%d", cap(v4))
+ nv4 := (*[34]byte)(nil)
+ pv4 := &v4
+ v4Addr := fmt.Sprintf("%p", pv4)
+ pv4Addr := fmt.Sprintf("%p", &pv4)
+ v4t := "[34]uint8"
+ v4s := "(len=" + v4Len + " cap=" + v4Cap + ") " +
+ "{\n 00000000 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20" +
+ " |............... |\n" +
+ " 00000010 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30" +
+ " |!\"#$%&'()*+,-./0|\n" +
+ " 00000020 31 32 " +
+ " |12|\n}"
+ addDumpTest(v4, "("+v4t+") "+v4s+"\n")
+ addDumpTest(pv4, "(*"+v4t+")("+v4Addr+")("+v4s+")\n")
+ addDumpTest(&pv4, "(**"+v4t+")("+pv4Addr+"->"+v4Addr+")("+v4s+")\n")
+ addDumpTest(nv4, "(*"+v4t+")(<nil>)\n")
+}
+
+func addSliceDumpTests() {
+ // Slice containing standard float32 values.
+ v := []float32{3.14, 6.28, 12.56}
+ vLen := fmt.Sprintf("%d", len(v))
+ vCap := fmt.Sprintf("%d", cap(v))
+ nv := (*[]float32)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "float32"
+ vs := "(len=" + vLen + " cap=" + vCap + ") {\n (" + vt + ") 3.14,\n (" +
+ vt + ") 6.28,\n (" + vt + ") 12.56\n}"
+ addDumpTest(v, "([]"+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*[]"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**[]"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*[]"+vt+")(<nil>)\n")
+
+ // Slice containing type with custom formatter on pointer receiver only.
+ v2i0 := pstringer("1")
+ v2i1 := pstringer("2")
+ v2i2 := pstringer("3")
+ v2 := []pstringer{v2i0, v2i1, v2i2}
+ v2i0Len := fmt.Sprintf("%d", len(v2i0))
+ v2i1Len := fmt.Sprintf("%d", len(v2i1))
+ v2i2Len := fmt.Sprintf("%d", len(v2i2))
+ v2Len := fmt.Sprintf("%d", len(v2))
+ v2Cap := fmt.Sprintf("%d", cap(v2))
+ nv2 := (*[]pstringer)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "spew_test.pstringer"
+ v2s := "(len=" + v2Len + " cap=" + v2Cap + ") {\n (" + v2t + ") (len=" +
+ v2i0Len + ") stringer 1,\n (" + v2t + ") (len=" + v2i1Len +
+ ") stringer 2,\n (" + v2t + ") (len=" + v2i2Len + ") " +
+ "stringer 3\n}"
+ addDumpTest(v2, "([]"+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*[]"+v2t+")("+v2Addr+")("+v2s+")\n")
+ addDumpTest(&pv2, "(**[]"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s+")\n")
+ addDumpTest(nv2, "(*[]"+v2t+")(<nil>)\n")
+
+ // Slice containing interfaces.
+ v3i0 := "one"
+ v3 := []interface{}{v3i0, int(2), uint(3), nil}
+ v3i0Len := fmt.Sprintf("%d", len(v3i0))
+ v3Len := fmt.Sprintf("%d", len(v3))
+ v3Cap := fmt.Sprintf("%d", cap(v3))
+ nv3 := (*[]interface{})(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "[]interface {}"
+ v3t2 := "string"
+ v3t3 := "int"
+ v3t4 := "uint"
+ v3t5 := "interface {}"
+ v3s := "(len=" + v3Len + " cap=" + v3Cap + ") {\n (" + v3t2 + ") " +
+ "(len=" + v3i0Len + ") \"one\",\n (" + v3t3 + ") 2,\n (" +
+ v3t4 + ") 3,\n (" + v3t5 + ") <nil>\n}"
+ addDumpTest(v3, "("+v3t+") "+v3s+"\n")
+ addDumpTest(pv3, "(*"+v3t+")("+v3Addr+")("+v3s+")\n")
+ addDumpTest(&pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")("+v3s+")\n")
+ addDumpTest(nv3, "(*"+v3t+")(<nil>)\n")
+
+ // Slice containing bytes.
+ v4 := []byte{
+ 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,
+ }
+ v4Len := fmt.Sprintf("%d", len(v4))
+ v4Cap := fmt.Sprintf("%d", cap(v4))
+ nv4 := (*[]byte)(nil)
+ pv4 := &v4
+ v4Addr := fmt.Sprintf("%p", pv4)
+ pv4Addr := fmt.Sprintf("%p", &pv4)
+ v4t := "[]uint8"
+ v4s := "(len=" + v4Len + " cap=" + v4Cap + ") " +
+ "{\n 00000000 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20" +
+ " |............... |\n" +
+ " 00000010 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30" +
+ " |!\"#$%&'()*+,-./0|\n" +
+ " 00000020 31 32 " +
+ " |12|\n}"
+ addDumpTest(v4, "("+v4t+") "+v4s+"\n")
+ addDumpTest(pv4, "(*"+v4t+")("+v4Addr+")("+v4s+")\n")
+ addDumpTest(&pv4, "(**"+v4t+")("+pv4Addr+"->"+v4Addr+")("+v4s+")\n")
+ addDumpTest(nv4, "(*"+v4t+")(<nil>)\n")
+
+ // Nil slice.
+ v5 := []int(nil)
+ nv5 := (*[]int)(nil)
+ pv5 := &v5
+ v5Addr := fmt.Sprintf("%p", pv5)
+ pv5Addr := fmt.Sprintf("%p", &pv5)
+ v5t := "[]int"
+ v5s := "<nil>"
+ addDumpTest(v5, "("+v5t+") "+v5s+"\n")
+ addDumpTest(pv5, "(*"+v5t+")("+v5Addr+")("+v5s+")\n")
+ addDumpTest(&pv5, "(**"+v5t+")("+pv5Addr+"->"+v5Addr+")("+v5s+")\n")
+ addDumpTest(nv5, "(*"+v5t+")(<nil>)\n")
+}
+
+func addStringDumpTests() {
+ // Standard string.
+ v := "test"
+ vLen := fmt.Sprintf("%d", len(v))
+ nv := (*string)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "string"
+ vs := "(len=" + vLen + ") \"test\""
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+}
+
+func addInterfaceDumpTests() {
+ // Nil interface.
+ var v interface{}
+ nv := (*interface{})(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "interface {}"
+ vs := "<nil>"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+
+ // Sub-interface.
+ v2 := interface{}(uint16(65535))
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "uint16"
+ v2s := "65535"
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*"+v2t+")("+v2Addr+")("+v2s+")\n")
+ addDumpTest(&pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s+")\n")
+}
+
+func addMapDumpTests() {
+ // Map with string keys and int vals.
+ k := "one"
+ kk := "two"
+ m := map[string]int{k: 1, kk: 2}
+ klen := fmt.Sprintf("%d", len(k)) // not kLen to shut golint up
+ kkLen := fmt.Sprintf("%d", len(kk))
+ mLen := fmt.Sprintf("%d", len(m))
+ nilMap := map[string]int(nil)
+ nm := (*map[string]int)(nil)
+ pm := &m
+ mAddr := fmt.Sprintf("%p", pm)
+ pmAddr := fmt.Sprintf("%p", &pm)
+ mt := "map[string]int"
+ mt1 := "string"
+ mt2 := "int"
+ ms := "(len=" + mLen + ") {\n (" + mt1 + ") (len=" + klen + ") " +
+ "\"one\": (" + mt2 + ") 1,\n (" + mt1 + ") (len=" + kkLen +
+ ") \"two\": (" + mt2 + ") 2\n}"
+ ms2 := "(len=" + mLen + ") {\n (" + mt1 + ") (len=" + kkLen + ") " +
+ "\"two\": (" + mt2 + ") 2,\n (" + mt1 + ") (len=" + klen +
+ ") \"one\": (" + mt2 + ") 1\n}"
+ addDumpTest(m, "("+mt+") "+ms+"\n", "("+mt+") "+ms2+"\n")
+ addDumpTest(pm, "(*"+mt+")("+mAddr+")("+ms+")\n",
+ "(*"+mt+")("+mAddr+")("+ms2+")\n")
+ addDumpTest(&pm, "(**"+mt+")("+pmAddr+"->"+mAddr+")("+ms+")\n",
+ "(**"+mt+")("+pmAddr+"->"+mAddr+")("+ms2+")\n")
+ addDumpTest(nm, "(*"+mt+")(<nil>)\n")
+ addDumpTest(nilMap, "("+mt+") <nil>\n")
+
+ // Map with custom formatter type on pointer receiver only keys and vals.
+ k2 := pstringer("one")
+ v2 := pstringer("1")
+ m2 := map[pstringer]pstringer{k2: v2}
+ k2Len := fmt.Sprintf("%d", len(k2))
+ v2Len := fmt.Sprintf("%d", len(v2))
+ m2Len := fmt.Sprintf("%d", len(m2))
+ nilMap2 := map[pstringer]pstringer(nil)
+ nm2 := (*map[pstringer]pstringer)(nil)
+ pm2 := &m2
+ m2Addr := fmt.Sprintf("%p", pm2)
+ pm2Addr := fmt.Sprintf("%p", &pm2)
+ m2t := "map[spew_test.pstringer]spew_test.pstringer"
+ m2t1 := "spew_test.pstringer"
+ m2t2 := "spew_test.pstringer"
+ m2s := "(len=" + m2Len + ") {\n (" + m2t1 + ") (len=" + k2Len + ") " +
+ "stringer one: (" + m2t2 + ") (len=" + v2Len + ") stringer 1\n}"
+ if spew.UnsafeDisabled {
+ m2s = "(len=" + m2Len + ") {\n (" + m2t1 + ") (len=" + k2Len +
+ ") " + "\"one\": (" + m2t2 + ") (len=" + v2Len +
+ ") \"1\"\n}"
+ }
+ addDumpTest(m2, "("+m2t+") "+m2s+"\n")
+ addDumpTest(pm2, "(*"+m2t+")("+m2Addr+")("+m2s+")\n")
+ addDumpTest(&pm2, "(**"+m2t+")("+pm2Addr+"->"+m2Addr+")("+m2s+")\n")
+ addDumpTest(nm2, "(*"+m2t+")(<nil>)\n")
+ addDumpTest(nilMap2, "("+m2t+") <nil>\n")
+
+ // Map with interface keys and values.
+ k3 := "one"
+ k3Len := fmt.Sprintf("%d", len(k3))
+ m3 := map[interface{}]interface{}{k3: 1}
+ m3Len := fmt.Sprintf("%d", len(m3))
+ nilMap3 := map[interface{}]interface{}(nil)
+ nm3 := (*map[interface{}]interface{})(nil)
+ pm3 := &m3
+ m3Addr := fmt.Sprintf("%p", pm3)
+ pm3Addr := fmt.Sprintf("%p", &pm3)
+ m3t := "map[interface {}]interface {}"
+ m3t1 := "string"
+ m3t2 := "int"
+ m3s := "(len=" + m3Len + ") {\n (" + m3t1 + ") (len=" + k3Len + ") " +
+ "\"one\": (" + m3t2 + ") 1\n}"
+ addDumpTest(m3, "("+m3t+") "+m3s+"\n")
+ addDumpTest(pm3, "(*"+m3t+")("+m3Addr+")("+m3s+")\n")
+ addDumpTest(&pm3, "(**"+m3t+")("+pm3Addr+"->"+m3Addr+")("+m3s+")\n")
+ addDumpTest(nm3, "(*"+m3t+")(<nil>)\n")
+ addDumpTest(nilMap3, "("+m3t+") <nil>\n")
+
+ // Map with nil interface value.
+ k4 := "nil"
+ k4Len := fmt.Sprintf("%d", len(k4))
+ m4 := map[string]interface{}{k4: nil}
+ m4Len := fmt.Sprintf("%d", len(m4))
+ nilMap4 := map[string]interface{}(nil)
+ nm4 := (*map[string]interface{})(nil)
+ pm4 := &m4
+ m4Addr := fmt.Sprintf("%p", pm4)
+ pm4Addr := fmt.Sprintf("%p", &pm4)
+ m4t := "map[string]interface {}"
+ m4t1 := "string"
+ m4t2 := "interface {}"
+ m4s := "(len=" + m4Len + ") {\n (" + m4t1 + ") (len=" + k4Len + ")" +
+ " \"nil\": (" + m4t2 + ") <nil>\n}"
+ addDumpTest(m4, "("+m4t+") "+m4s+"\n")
+ addDumpTest(pm4, "(*"+m4t+")("+m4Addr+")("+m4s+")\n")
+ addDumpTest(&pm4, "(**"+m4t+")("+pm4Addr+"->"+m4Addr+")("+m4s+")\n")
+ addDumpTest(nm4, "(*"+m4t+")(<nil>)\n")
+ addDumpTest(nilMap4, "("+m4t+") <nil>\n")
+}
+
+func addStructDumpTests() {
+ // Struct with primitives.
+ type s1 struct {
+ a int8
+ b uint8
+ }
+ v := s1{127, 255}
+ nv := (*s1)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "spew_test.s1"
+ vt2 := "int8"
+ vt3 := "uint8"
+ vs := "{\n a: (" + vt2 + ") 127,\n b: (" + vt3 + ") 255\n}"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+
+ // Struct that contains another struct.
+ type s2 struct {
+ s1 s1
+ b bool
+ }
+ v2 := s2{s1{127, 255}, true}
+ nv2 := (*s2)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "spew_test.s2"
+ v2t2 := "spew_test.s1"
+ v2t3 := "int8"
+ v2t4 := "uint8"
+ v2t5 := "bool"
+ v2s := "{\n s1: (" + v2t2 + ") {\n a: (" + v2t3 + ") 127,\n b: (" +
+ v2t4 + ") 255\n },\n b: (" + v2t5 + ") true\n}"
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*"+v2t+")("+v2Addr+")("+v2s+")\n")
+ addDumpTest(&pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s+")\n")
+ addDumpTest(nv2, "(*"+v2t+")(<nil>)\n")
+
+ // Struct that contains custom type with Stringer pointer interface via both
+ // exported and unexported fields.
+ type s3 struct {
+ s pstringer
+ S pstringer
+ }
+ v3 := s3{"test", "test2"}
+ nv3 := (*s3)(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "spew_test.s3"
+ v3t2 := "spew_test.pstringer"
+ v3s := "{\n s: (" + v3t2 + ") (len=4) stringer test,\n S: (" + v3t2 +
+ ") (len=5) stringer test2\n}"
+ v3sp := v3s
+ if spew.UnsafeDisabled {
+ v3s = "{\n s: (" + v3t2 + ") (len=4) \"test\",\n S: (" +
+ v3t2 + ") (len=5) \"test2\"\n}"
+ v3sp = "{\n s: (" + v3t2 + ") (len=4) \"test\",\n S: (" +
+ v3t2 + ") (len=5) stringer test2\n}"
+ }
+ addDumpTest(v3, "("+v3t+") "+v3s+"\n")
+ addDumpTest(pv3, "(*"+v3t+")("+v3Addr+")("+v3sp+")\n")
+ addDumpTest(&pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")("+v3sp+")\n")
+ addDumpTest(nv3, "(*"+v3t+")(<nil>)\n")
+
+ // Struct that contains embedded struct and field to same struct.
+ e := embed{"embedstr"}
+ eLen := fmt.Sprintf("%d", len("embedstr"))
+ v4 := embedwrap{embed: &e, e: &e}
+ nv4 := (*embedwrap)(nil)
+ pv4 := &v4
+ eAddr := fmt.Sprintf("%p", &e)
+ v4Addr := fmt.Sprintf("%p", pv4)
+ pv4Addr := fmt.Sprintf("%p", &pv4)
+ v4t := "spew_test.embedwrap"
+ v4t2 := "spew_test.embed"
+ v4t3 := "string"
+ v4s := "{\n embed: (*" + v4t2 + ")(" + eAddr + ")({\n a: (" + v4t3 +
+ ") (len=" + eLen + ") \"embedstr\"\n }),\n e: (*" + v4t2 +
+ ")(" + eAddr + ")({\n a: (" + v4t3 + ") (len=" + eLen + ")" +
+ " \"embedstr\"\n })\n}"
+ addDumpTest(v4, "("+v4t+") "+v4s+"\n")
+ addDumpTest(pv4, "(*"+v4t+")("+v4Addr+")("+v4s+")\n")
+ addDumpTest(&pv4, "(**"+v4t+")("+pv4Addr+"->"+v4Addr+")("+v4s+")\n")
+ addDumpTest(nv4, "(*"+v4t+")(<nil>)\n")
+}
+
+func addUintptrDumpTests() {
+ // Null pointer.
+ v := uintptr(0)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "uintptr"
+ vs := "<nil>"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+
+ // Address of real variable.
+ i := 1
+ v2 := uintptr(unsafe.Pointer(&i))
+ nv2 := (*uintptr)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "uintptr"
+ v2s := fmt.Sprintf("%p", &i)
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*"+v2t+")("+v2Addr+")("+v2s+")\n")
+ addDumpTest(&pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s+")\n")
+ addDumpTest(nv2, "(*"+v2t+")(<nil>)\n")
+}
+
+func addUnsafePointerDumpTests() {
+ // Null pointer.
+ v := unsafe.Pointer(uintptr(0))
+ nv := (*unsafe.Pointer)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "unsafe.Pointer"
+ vs := "<nil>"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+
+ // Address of real variable.
+ i := 1
+ v2 := unsafe.Pointer(&i)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "unsafe.Pointer"
+ v2s := fmt.Sprintf("%p", &i)
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*"+v2t+")("+v2Addr+")("+v2s+")\n")
+ addDumpTest(&pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+}
+
+func addChanDumpTests() {
+ // Nil channel.
+ var v chan int
+ pv := &v
+ nv := (*chan int)(nil)
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "chan int"
+ vs := "<nil>"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+
+ // Real channel.
+ v2 := make(chan int)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "chan int"
+ v2s := fmt.Sprintf("%p", v2)
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*"+v2t+")("+v2Addr+")("+v2s+")\n")
+ addDumpTest(&pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s+")\n")
+}
+
+func addFuncDumpTests() {
+ // Function with no params and no returns.
+ v := addIntDumpTests
+ nv := (*func())(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "func()"
+ vs := fmt.Sprintf("%p", v)
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+
+ // Function with param and no returns.
+ v2 := TestDump
+ nv2 := (*func(*testing.T))(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "func(*testing.T)"
+ v2s := fmt.Sprintf("%p", v2)
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*"+v2t+")("+v2Addr+")("+v2s+")\n")
+ addDumpTest(&pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s+")\n")
+ addDumpTest(nv2, "(*"+v2t+")(<nil>)\n")
+
+ // Function with multiple params and multiple returns.
+ var v3 = func(i int, s string) (b bool, err error) {
+ return true, nil
+ }
+ nv3 := (*func(int, string) (bool, error))(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "func(int, string) (bool, error)"
+ v3s := fmt.Sprintf("%p", v3)
+ addDumpTest(v3, "("+v3t+") "+v3s+"\n")
+ addDumpTest(pv3, "(*"+v3t+")("+v3Addr+")("+v3s+")\n")
+ addDumpTest(&pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")("+v3s+")\n")
+ addDumpTest(nv3, "(*"+v3t+")(<nil>)\n")
+}
+
+func addCircularDumpTests() {
+ // Struct that is circular through self referencing.
+ type circular struct {
+ c *circular
+ }
+ v := circular{nil}
+ v.c = &v
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "spew_test.circular"
+ vs := "{\n c: (*" + vt + ")(" + vAddr + ")({\n c: (*" + vt + ")(" +
+ vAddr + ")(<already shown>)\n })\n}"
+ vs2 := "{\n c: (*" + vt + ")(" + vAddr + ")(<already shown>)\n}"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs2+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs2+")\n")
+
+ // Structs that are circular through cross referencing.
+ v2 := xref1{nil}
+ ts2 := xref2{&v2}
+ v2.ps2 = &ts2
+ pv2 := &v2
+ ts2Addr := fmt.Sprintf("%p", &ts2)
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "spew_test.xref1"
+ v2t2 := "spew_test.xref2"
+ v2s := "{\n ps2: (*" + v2t2 + ")(" + ts2Addr + ")({\n ps1: (*" + v2t +
+ ")(" + v2Addr + ")({\n ps2: (*" + v2t2 + ")(" + ts2Addr +
+ ")(<already shown>)\n })\n })\n}"
+ v2s2 := "{\n ps2: (*" + v2t2 + ")(" + ts2Addr + ")({\n ps1: (*" + v2t +
+ ")(" + v2Addr + ")(<already shown>)\n })\n}"
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+ addDumpTest(pv2, "(*"+v2t+")("+v2Addr+")("+v2s2+")\n")
+ addDumpTest(&pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")("+v2s2+")\n")
+
+ // Structs that are indirectly circular.
+ v3 := indirCir1{nil}
+ tic2 := indirCir2{nil}
+ tic3 := indirCir3{&v3}
+ tic2.ps3 = &tic3
+ v3.ps2 = &tic2
+ pv3 := &v3
+ tic2Addr := fmt.Sprintf("%p", &tic2)
+ tic3Addr := fmt.Sprintf("%p", &tic3)
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "spew_test.indirCir1"
+ v3t2 := "spew_test.indirCir2"
+ v3t3 := "spew_test.indirCir3"
+ v3s := "{\n ps2: (*" + v3t2 + ")(" + tic2Addr + ")({\n ps3: (*" + v3t3 +
+ ")(" + tic3Addr + ")({\n ps1: (*" + v3t + ")(" + v3Addr +
+ ")({\n ps2: (*" + v3t2 + ")(" + tic2Addr +
+ ")(<already shown>)\n })\n })\n })\n}"
+ v3s2 := "{\n ps2: (*" + v3t2 + ")(" + tic2Addr + ")({\n ps3: (*" + v3t3 +
+ ")(" + tic3Addr + ")({\n ps1: (*" + v3t + ")(" + v3Addr +
+ ")(<already shown>)\n })\n })\n}"
+ addDumpTest(v3, "("+v3t+") "+v3s+"\n")
+ addDumpTest(pv3, "(*"+v3t+")("+v3Addr+")("+v3s2+")\n")
+ addDumpTest(&pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")("+v3s2+")\n")
+}
+
+func addPanicDumpTests() {
+ // Type that panics in its Stringer interface.
+ v := panicer(127)
+ nv := (*panicer)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "spew_test.panicer"
+ vs := "(PANIC=test panic)127"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+}
+
+func addErrorDumpTests() {
+ // Type that has a custom Error interface.
+ v := customError(127)
+ nv := (*customError)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "spew_test.customError"
+ vs := "error: 127"
+ addDumpTest(v, "("+vt+") "+vs+"\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")("+vs+")\n")
+ addDumpTest(nv, "(*"+vt+")(<nil>)\n")
+}
+
+// TestDump executes all of the tests described by dumpTests.
+func TestDump(t *testing.T) {
+ // Setup tests.
+ addIntDumpTests()
+ addUintDumpTests()
+ addBoolDumpTests()
+ addFloatDumpTests()
+ addComplexDumpTests()
+ addArrayDumpTests()
+ addSliceDumpTests()
+ addStringDumpTests()
+ addInterfaceDumpTests()
+ addMapDumpTests()
+ addStructDumpTests()
+ addUintptrDumpTests()
+ addUnsafePointerDumpTests()
+ addChanDumpTests()
+ addFuncDumpTests()
+ addCircularDumpTests()
+ addPanicDumpTests()
+ addErrorDumpTests()
+ addCgoDumpTests()
+
+ t.Logf("Running %d tests", len(dumpTests))
+ for i, test := range dumpTests {
+ buf := new(bytes.Buffer)
+ spew.Fdump(buf, test.in)
+ s := buf.String()
+ if testFailed(s, test.wants) {
+ t.Errorf("Dump #%d\n got: %s %s", i, s, stringizeWants(test.wants))
+ continue
+ }
+ }
+}
+
+func TestDumpSortedKeys(t *testing.T) {
+ cfg := spew.ConfigState{SortKeys: true}
+ s := cfg.Sdump(map[int]string{1: "1", 3: "3", 2: "2"})
+ expected := "(map[int]string) (len=3) {\n(int) 1: (string) (len=1) " +
+ "\"1\",\n(int) 2: (string) (len=1) \"2\",\n(int) 3: (string) " +
+ "(len=1) \"3\"\n" +
+ "}\n"
+ if s != expected {
+ t.Errorf("Sorted keys mismatch:\n %v %v", s, expected)
+ }
+
+ s = cfg.Sdump(map[stringer]int{"1": 1, "3": 3, "2": 2})
+ expected = "(map[spew_test.stringer]int) (len=3) {\n" +
+ "(spew_test.stringer) (len=1) stringer 1: (int) 1,\n" +
+ "(spew_test.stringer) (len=1) stringer 2: (int) 2,\n" +
+ "(spew_test.stringer) (len=1) stringer 3: (int) 3\n" +
+ "}\n"
+ if s != expected {
+ t.Errorf("Sorted keys mismatch:\n %v %v", s, expected)
+ }
+
+ s = cfg.Sdump(map[pstringer]int{pstringer("1"): 1, pstringer("3"): 3, pstringer("2"): 2})
+ expected = "(map[spew_test.pstringer]int) (len=3) {\n" +
+ "(spew_test.pstringer) (len=1) stringer 1: (int) 1,\n" +
+ "(spew_test.pstringer) (len=1) stringer 2: (int) 2,\n" +
+ "(spew_test.pstringer) (len=1) stringer 3: (int) 3\n" +
+ "}\n"
+ if spew.UnsafeDisabled {
+ expected = "(map[spew_test.pstringer]int) (len=3) {\n" +
+ "(spew_test.pstringer) (len=1) \"1\": (int) 1,\n" +
+ "(spew_test.pstringer) (len=1) \"2\": (int) 2,\n" +
+ "(spew_test.pstringer) (len=1) \"3\": (int) 3\n" +
+ "}\n"
+ }
+ if s != expected {
+ t.Errorf("Sorted keys mismatch:\n %v %v", s, expected)
+ }
+
+ s = cfg.Sdump(map[customError]int{customError(1): 1, customError(3): 3, customError(2): 2})
+ expected = "(map[spew_test.customError]int) (len=3) {\n" +
+ "(spew_test.customError) error: 1: (int) 1,\n" +
+ "(spew_test.customError) error: 2: (int) 2,\n" +
+ "(spew_test.customError) error: 3: (int) 3\n" +
+ "}\n"
+ if s != expected {
+ t.Errorf("Sorted keys mismatch:\n %v %v", s, expected)
+ }
+
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dumpcgo_test.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dumpcgo_test.go
new file mode 100644
index 000000000..01f521794
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dumpcgo_test.go
@@ -0,0 +1,98 @@
+// Copyright (c) 2013 Dave Collins <dave@davec.name>
+//
+// Permission to use, copy, modify, and distribute this software for any
+// purpose with or without fee is hereby granted, provided that the above
+// copyright notice and this permission notice appear in all copies.
+//
+// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+// NOTE: Due to the following build constraints, this file will only be compiled
+// when both cgo is supported and "-tags testcgo" is added to the go test
+// command line. This means the cgo tests are only added (and hence run) when
+// specifially requested. This configuration is used because spew itself
+// does not require cgo to run even though it does handle certain cgo types
+// specially. Rather than forcing all clients to require cgo and an external
+// C compiler just to run the tests, this scheme makes them optional.
+// +build cgo,testcgo
+
+package spew_test
+
+import (
+ "fmt"
+
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/testdata"
+)
+
+func addCgoDumpTests() {
+ // C char pointer.
+ v := testdata.GetCgoCharPointer()
+ nv := testdata.GetCgoNullCharPointer()
+ pv := &v
+ vcAddr := fmt.Sprintf("%p", v)
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "*testdata._Ctype_char"
+ vs := "116"
+ addDumpTest(v, "("+vt+")("+vcAddr+")("+vs+")\n")
+ addDumpTest(pv, "(*"+vt+")("+vAddr+"->"+vcAddr+")("+vs+")\n")
+ addDumpTest(&pv, "(**"+vt+")("+pvAddr+"->"+vAddr+"->"+vcAddr+")("+vs+")\n")
+ addDumpTest(nv, "("+vt+")(<nil>)\n")
+
+ // C char array.
+ v2, v2l, v2c := testdata.GetCgoCharArray()
+ v2Len := fmt.Sprintf("%d", v2l)
+ v2Cap := fmt.Sprintf("%d", v2c)
+ v2t := "[6]testdata._Ctype_char"
+ v2s := "(len=" + v2Len + " cap=" + v2Cap + ") " +
+ "{\n 00000000 74 65 73 74 32 00 " +
+ " |test2.|\n}"
+ addDumpTest(v2, "("+v2t+") "+v2s+"\n")
+
+ // C unsigned char array.
+ v3, v3l, v3c := testdata.GetCgoUnsignedCharArray()
+ v3Len := fmt.Sprintf("%d", v3l)
+ v3Cap := fmt.Sprintf("%d", v3c)
+ v3t := "[6]testdata._Ctype_unsignedchar"
+ v3s := "(len=" + v3Len + " cap=" + v3Cap + ") " +
+ "{\n 00000000 74 65 73 74 33 00 " +
+ " |test3.|\n}"
+ addDumpTest(v3, "("+v3t+") "+v3s+"\n")
+
+ // C signed char array.
+ v4, v4l, v4c := testdata.GetCgoSignedCharArray()
+ v4Len := fmt.Sprintf("%d", v4l)
+ v4Cap := fmt.Sprintf("%d", v4c)
+ v4t := "[6]testdata._Ctype_schar"
+ v4t2 := "testdata._Ctype_schar"
+ v4s := "(len=" + v4Len + " cap=" + v4Cap + ") " +
+ "{\n (" + v4t2 + ") 116,\n (" + v4t2 + ") 101,\n (" + v4t2 +
+ ") 115,\n (" + v4t2 + ") 116,\n (" + v4t2 + ") 52,\n (" + v4t2 +
+ ") 0\n}"
+ addDumpTest(v4, "("+v4t+") "+v4s+"\n")
+
+ // C uint8_t array.
+ v5, v5l, v5c := testdata.GetCgoUint8tArray()
+ v5Len := fmt.Sprintf("%d", v5l)
+ v5Cap := fmt.Sprintf("%d", v5c)
+ v5t := "[6]testdata._Ctype_uint8_t"
+ v5s := "(len=" + v5Len + " cap=" + v5Cap + ") " +
+ "{\n 00000000 74 65 73 74 35 00 " +
+ " |test5.|\n}"
+ addDumpTest(v5, "("+v5t+") "+v5s+"\n")
+
+ // C typedefed unsigned char array.
+ v6, v6l, v6c := testdata.GetCgoTypdefedUnsignedCharArray()
+ v6Len := fmt.Sprintf("%d", v6l)
+ v6Cap := fmt.Sprintf("%d", v6c)
+ v6t := "[6]testdata._Ctype_custom_uchar_t"
+ v6s := "(len=" + v6Len + " cap=" + v6Cap + ") " +
+ "{\n 00000000 74 65 73 74 36 00 " +
+ " |test6.|\n}"
+ addDumpTest(v6, "("+v6t+") "+v6s+"\n")
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dumpnocgo_test.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dumpnocgo_test.go
new file mode 100644
index 000000000..52a0971fb
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/dumpnocgo_test.go
@@ -0,0 +1,26 @@
+// Copyright (c) 2013 Dave Collins <dave@davec.name>
+//
+// Permission to use, copy, modify, and distribute this software for any
+// purpose with or without fee is hereby granted, provided that the above
+// copyright notice and this permission notice appear in all copies.
+//
+// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+// NOTE: Due to the following build constraints, this file will only be compiled
+// when either cgo is not supported or "-tags testcgo" is not added to the go
+// test command line. This file intentionally does not setup any cgo tests in
+// this scenario.
+// +build !cgo !testcgo
+
+package spew_test
+
+func addCgoDumpTests() {
+ // Don't add any tests for cgo since this file is only compiled when
+ // there should not be any cgo tests.
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/example_test.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/example_test.go
new file mode 100644
index 000000000..2f739f278
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/example_test.go
@@ -0,0 +1,226 @@
+/*
+ * Copyright (c) 2013 Dave Collins <dave@davec.name>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+package spew_test
+
+import (
+ "fmt"
+
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/davecgh/go-spew/spew"
+)
+
+type Flag int
+
+const (
+ flagOne Flag = iota
+ flagTwo
+)
+
+var flagStrings = map[Flag]string{
+ flagOne: "flagOne",
+ flagTwo: "flagTwo",
+}
+
+func (f Flag) String() string {
+ if s, ok := flagStrings[f]; ok {
+ return s
+ }
+ return fmt.Sprintf("Unknown flag (%d)", int(f))
+}
+
+type Bar struct {
+ data uintptr
+}
+
+type Foo struct {
+ unexportedField Bar
+ ExportedField map[interface{}]interface{}
+}
+
+// This example demonstrates how to use Dump to dump variables to stdout.
+func ExampleDump() {
+ // The following package level declarations are assumed for this example:
+ /*
+ type Flag int
+
+ const (
+ flagOne Flag = iota
+ flagTwo
+ )
+
+ var flagStrings = map[Flag]string{
+ flagOne: "flagOne",
+ flagTwo: "flagTwo",
+ }
+
+ func (f Flag) String() string {
+ if s, ok := flagStrings[f]; ok {
+ return s
+ }
+ return fmt.Sprintf("Unknown flag (%d)", int(f))
+ }
+
+ type Bar struct {
+ data uintptr
+ }
+
+ type Foo struct {
+ unexportedField Bar
+ ExportedField map[interface{}]interface{}
+ }
+ */
+
+ // Setup some sample data structures for the example.
+ bar := Bar{uintptr(0)}
+ s1 := Foo{bar, map[interface{}]interface{}{"one": true}}
+ f := Flag(5)
+ b := []byte{
+ 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,
+ }
+
+ // Dump!
+ spew.Dump(s1, f, b)
+
+ // Output:
+ // (spew_test.Foo) {
+ // unexportedField: (spew_test.Bar) {
+ // data: (uintptr) <nil>
+ // },
+ // ExportedField: (map[interface {}]interface {}) (len=1) {
+ // (string) (len=3) "one": (bool) true
+ // }
+ // }
+ // (spew_test.Flag) Unknown flag (5)
+ // ([]uint8) (len=34 cap=34) {
+ // 00000000 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 |............... |
+ // 00000010 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 |!"#$%&'()*+,-./0|
+ // 00000020 31 32 |12|
+ // }
+ //
+}
+
+// This example demonstrates how to use Printf to display a variable with a
+// format string and inline formatting.
+func ExamplePrintf() {
+ // Create a double pointer to a uint 8.
+ ui8 := uint8(5)
+ pui8 := &ui8
+ ppui8 := &pui8
+
+ // Create a circular data type.
+ type circular struct {
+ ui8 uint8
+ c *circular
+ }
+ c := circular{ui8: 1}
+ c.c = &c
+
+ // Print!
+ spew.Printf("ppui8: %v\n", ppui8)
+ spew.Printf("circular: %v\n", c)
+
+ // Output:
+ // ppui8: <**>5
+ // circular: {1 <*>{1 <*><shown>}}
+}
+
+// This example demonstrates how to use a ConfigState.
+func ExampleConfigState() {
+ // Modify the indent level of the ConfigState only. The global
+ // configuration is not modified.
+ scs := spew.ConfigState{Indent: "\t"}
+
+ // Output using the ConfigState instance.
+ v := map[string]int{"one": 1}
+ scs.Printf("v: %v\n", v)
+ scs.Dump(v)
+
+ // Output:
+ // v: map[one:1]
+ // (map[string]int) (len=1) {
+ // (string) (len=3) "one": (int) 1
+ // }
+}
+
+// This example demonstrates how to use ConfigState.Dump to dump variables to
+// stdout
+func ExampleConfigState_Dump() {
+ // See the top-level Dump example for details on the types used in this
+ // example.
+
+ // Create two ConfigState instances with different indentation.
+ scs := spew.ConfigState{Indent: "\t"}
+ scs2 := spew.ConfigState{Indent: " "}
+
+ // Setup some sample data structures for the example.
+ bar := Bar{uintptr(0)}
+ s1 := Foo{bar, map[interface{}]interface{}{"one": true}}
+
+ // Dump using the ConfigState instances.
+ scs.Dump(s1)
+ scs2.Dump(s1)
+
+ // Output:
+ // (spew_test.Foo) {
+ // unexportedField: (spew_test.Bar) {
+ // data: (uintptr) <nil>
+ // },
+ // ExportedField: (map[interface {}]interface {}) (len=1) {
+ // (string) (len=3) "one": (bool) true
+ // }
+ // }
+ // (spew_test.Foo) {
+ // unexportedField: (spew_test.Bar) {
+ // data: (uintptr) <nil>
+ // },
+ // ExportedField: (map[interface {}]interface {}) (len=1) {
+ // (string) (len=3) "one": (bool) true
+ // }
+ // }
+ //
+}
+
+// This example demonstrates how to use ConfigState.Printf to display a variable
+// with a format string and inline formatting.
+func ExampleConfigState_Printf() {
+ // See the top-level Dump example for details on the types used in this
+ // example.
+
+ // Create two ConfigState instances and modify the method handling of the
+ // first ConfigState only.
+ scs := spew.NewDefaultConfig()
+ scs2 := spew.NewDefaultConfig()
+ scs.DisableMethods = true
+
+ // Alternatively
+ // scs := spew.ConfigState{Indent: " ", DisableMethods: true}
+ // scs2 := spew.ConfigState{Indent: " "}
+
+ // This is of type Flag which implements a Stringer and has raw value 1.
+ f := flagTwo
+
+ // Dump using the ConfigState instances.
+ scs.Printf("f: %v\n", f)
+ scs2.Printf("f: %v\n", f)
+
+ // Output:
+ // f: 1
+ // f: flagTwo
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/format.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/format.go
new file mode 100644
index 000000000..ecf3b80e2
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/format.go
@@ -0,0 +1,419 @@
+/*
+ * Copyright (c) 2013 Dave Collins <dave@davec.name>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+package spew
+
+import (
+ "bytes"
+ "fmt"
+ "reflect"
+ "strconv"
+ "strings"
+)
+
+// supportedFlags is a list of all the character flags supported by fmt package.
+const supportedFlags = "0-+# "
+
+// formatState implements the fmt.Formatter interface and contains information
+// about the state of a formatting operation. The NewFormatter function can
+// be used to get a new Formatter which can be used directly as arguments
+// in standard fmt package printing calls.
+type formatState struct {
+ value interface{}
+ fs fmt.State
+ depth int
+ pointers map[uintptr]int
+ ignoreNextType bool
+ cs *ConfigState
+}
+
+// buildDefaultFormat recreates the original format string without precision
+// and width information to pass in to fmt.Sprintf in the case of an
+// unrecognized type. Unless new types are added to the language, this
+// function won't ever be called.
+func (f *formatState) buildDefaultFormat() (format string) {
+ buf := bytes.NewBuffer(percentBytes)
+
+ for _, flag := range supportedFlags {
+ if f.fs.Flag(int(flag)) {
+ buf.WriteRune(flag)
+ }
+ }
+
+ buf.WriteRune('v')
+
+ format = buf.String()
+ return format
+}
+
+// constructOrigFormat recreates the original format string including precision
+// and width information to pass along to the standard fmt package. This allows
+// automatic deferral of all format strings this package doesn't support.
+func (f *formatState) constructOrigFormat(verb rune) (format string) {
+ buf := bytes.NewBuffer(percentBytes)
+
+ for _, flag := range supportedFlags {
+ if f.fs.Flag(int(flag)) {
+ buf.WriteRune(flag)
+ }
+ }
+
+ if width, ok := f.fs.Width(); ok {
+ buf.WriteString(strconv.Itoa(width))
+ }
+
+ if precision, ok := f.fs.Precision(); ok {
+ buf.Write(precisionBytes)
+ buf.WriteString(strconv.Itoa(precision))
+ }
+
+ buf.WriteRune(verb)
+
+ format = buf.String()
+ return format
+}
+
+// unpackValue returns values inside of non-nil interfaces when possible and
+// ensures that types for values which have been unpacked from an interface
+// are displayed when the show types flag is also set.
+// This is useful for data types like structs, arrays, slices, and maps which
+// can contain varying types packed inside an interface.
+func (f *formatState) unpackValue(v reflect.Value) reflect.Value {
+ if v.Kind() == reflect.Interface {
+ f.ignoreNextType = false
+ if !v.IsNil() {
+ v = v.Elem()
+ }
+ }
+ return v
+}
+
+// formatPtr handles formatting of pointers by indirecting them as necessary.
+func (f *formatState) formatPtr(v reflect.Value) {
+ // Display nil if top level pointer is nil.
+ showTypes := f.fs.Flag('#')
+ if v.IsNil() && (!showTypes || f.ignoreNextType) {
+ f.fs.Write(nilAngleBytes)
+ return
+ }
+
+ // Remove pointers at or below the current depth from map used to detect
+ // circular refs.
+ for k, depth := range f.pointers {
+ if depth >= f.depth {
+ delete(f.pointers, k)
+ }
+ }
+
+ // Keep list of all dereferenced pointers to possibly show later.
+ pointerChain := make([]uintptr, 0)
+
+ // Figure out how many levels of indirection there are by derferencing
+ // pointers and unpacking interfaces down the chain while detecting circular
+ // references.
+ nilFound := false
+ cycleFound := false
+ indirects := 0
+ ve := v
+ for ve.Kind() == reflect.Ptr {
+ if ve.IsNil() {
+ nilFound = true
+ break
+ }
+ indirects++
+ addr := ve.Pointer()
+ pointerChain = append(pointerChain, addr)
+ if pd, ok := f.pointers[addr]; ok && pd < f.depth {
+ cycleFound = true
+ indirects--
+ break
+ }
+ f.pointers[addr] = f.depth
+
+ ve = ve.Elem()
+ if ve.Kind() == reflect.Interface {
+ if ve.IsNil() {
+ nilFound = true
+ break
+ }
+ ve = ve.Elem()
+ }
+ }
+
+ // Display type or indirection level depending on flags.
+ if showTypes && !f.ignoreNextType {
+ f.fs.Write(openParenBytes)
+ f.fs.Write(bytes.Repeat(asteriskBytes, indirects))
+ f.fs.Write([]byte(ve.Type().String()))
+ f.fs.Write(closeParenBytes)
+ } else {
+ if nilFound || cycleFound {
+ indirects += strings.Count(ve.Type().String(), "*")
+ }
+ f.fs.Write(openAngleBytes)
+ f.fs.Write([]byte(strings.Repeat("*", indirects)))
+ f.fs.Write(closeAngleBytes)
+ }
+
+ // Display pointer information depending on flags.
+ if f.fs.Flag('+') && (len(pointerChain) > 0) {
+ f.fs.Write(openParenBytes)
+ for i, addr := range pointerChain {
+ if i > 0 {
+ f.fs.Write(pointerChainBytes)
+ }
+ printHexPtr(f.fs, addr)
+ }
+ f.fs.Write(closeParenBytes)
+ }
+
+ // Display dereferenced value.
+ switch {
+ case nilFound == true:
+ f.fs.Write(nilAngleBytes)
+
+ case cycleFound == true:
+ f.fs.Write(circularShortBytes)
+
+ default:
+ f.ignoreNextType = true
+ f.format(ve)
+ }
+}
+
+// format is the main workhorse for providing the Formatter interface. It
+// uses the passed reflect value to figure out what kind of object we are
+// dealing with and formats it appropriately. It is a recursive function,
+// however circular data structures are detected and handled properly.
+func (f *formatState) format(v reflect.Value) {
+ // Handle invalid reflect values immediately.
+ kind := v.Kind()
+ if kind == reflect.Invalid {
+ f.fs.Write(invalidAngleBytes)
+ return
+ }
+
+ // Handle pointers specially.
+ if kind == reflect.Ptr {
+ f.formatPtr(v)
+ return
+ }
+
+ // Print type information unless already handled elsewhere.
+ if !f.ignoreNextType && f.fs.Flag('#') {
+ f.fs.Write(openParenBytes)
+ f.fs.Write([]byte(v.Type().String()))
+ f.fs.Write(closeParenBytes)
+ }
+ f.ignoreNextType = false
+
+ // Call Stringer/error interfaces if they exist and the handle methods
+ // flag is enabled.
+ if !f.cs.DisableMethods {
+ if (kind != reflect.Invalid) && (kind != reflect.Interface) {
+ if handled := handleMethods(f.cs, f.fs, v); handled {
+ return
+ }
+ }
+ }
+
+ switch kind {
+ case reflect.Invalid:
+ // Do nothing. We should never get here since invalid has already
+ // been handled above.
+
+ case reflect.Bool:
+ printBool(f.fs, v.Bool())
+
+ case reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Int:
+ printInt(f.fs, v.Int(), 10)
+
+ case reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uint:
+ printUint(f.fs, v.Uint(), 10)
+
+ case reflect.Float32:
+ printFloat(f.fs, v.Float(), 32)
+
+ case reflect.Float64:
+ printFloat(f.fs, v.Float(), 64)
+
+ case reflect.Complex64:
+ printComplex(f.fs, v.Complex(), 32)
+
+ case reflect.Complex128:
+ printComplex(f.fs, v.Complex(), 64)
+
+ case reflect.Slice:
+ if v.IsNil() {
+ f.fs.Write(nilAngleBytes)
+ break
+ }
+ fallthrough
+
+ case reflect.Array:
+ f.fs.Write(openBracketBytes)
+ f.depth++
+ if (f.cs.MaxDepth != 0) && (f.depth > f.cs.MaxDepth) {
+ f.fs.Write(maxShortBytes)
+ } else {
+ numEntries := v.Len()
+ for i := 0; i < numEntries; i++ {
+ if i > 0 {
+ f.fs.Write(spaceBytes)
+ }
+ f.ignoreNextType = true
+ f.format(f.unpackValue(v.Index(i)))
+ }
+ }
+ f.depth--
+ f.fs.Write(closeBracketBytes)
+
+ case reflect.String:
+ f.fs.Write([]byte(v.String()))
+
+ case reflect.Interface:
+ // The only time we should get here is for nil interfaces due to
+ // unpackValue calls.
+ if v.IsNil() {
+ f.fs.Write(nilAngleBytes)
+ }
+
+ case reflect.Ptr:
+ // Do nothing. We should never get here since pointers have already
+ // been handled above.
+
+ case reflect.Map:
+ // nil maps should be indicated as different than empty maps
+ if v.IsNil() {
+ f.fs.Write(nilAngleBytes)
+ break
+ }
+
+ f.fs.Write(openMapBytes)
+ f.depth++
+ if (f.cs.MaxDepth != 0) && (f.depth > f.cs.MaxDepth) {
+ f.fs.Write(maxShortBytes)
+ } else {
+ keys := v.MapKeys()
+ if f.cs.SortKeys {
+ sortValues(keys, f.cs)
+ }
+ for i, key := range keys {
+ if i > 0 {
+ f.fs.Write(spaceBytes)
+ }
+ f.ignoreNextType = true
+ f.format(f.unpackValue(key))
+ f.fs.Write(colonBytes)
+ f.ignoreNextType = true
+ f.format(f.unpackValue(v.MapIndex(key)))
+ }
+ }
+ f.depth--
+ f.fs.Write(closeMapBytes)
+
+ case reflect.Struct:
+ numFields := v.NumField()
+ f.fs.Write(openBraceBytes)
+ f.depth++
+ if (f.cs.MaxDepth != 0) && (f.depth > f.cs.MaxDepth) {
+ f.fs.Write(maxShortBytes)
+ } else {
+ vt := v.Type()
+ for i := 0; i < numFields; i++ {
+ if i > 0 {
+ f.fs.Write(spaceBytes)
+ }
+ vtf := vt.Field(i)
+ if f.fs.Flag('+') || f.fs.Flag('#') {
+ f.fs.Write([]byte(vtf.Name))
+ f.fs.Write(colonBytes)
+ }
+ f.format(f.unpackValue(v.Field(i)))
+ }
+ }
+ f.depth--
+ f.fs.Write(closeBraceBytes)
+
+ case reflect.Uintptr:
+ printHexPtr(f.fs, uintptr(v.Uint()))
+
+ case reflect.UnsafePointer, reflect.Chan, reflect.Func:
+ printHexPtr(f.fs, v.Pointer())
+
+ // There were not any other types at the time this code was written, but
+ // fall back to letting the default fmt package handle it if any get added.
+ default:
+ format := f.buildDefaultFormat()
+ if v.CanInterface() {
+ fmt.Fprintf(f.fs, format, v.Interface())
+ } else {
+ fmt.Fprintf(f.fs, format, v.String())
+ }
+ }
+}
+
+// Format satisfies the fmt.Formatter interface. See NewFormatter for usage
+// details.
+func (f *formatState) Format(fs fmt.State, verb rune) {
+ f.fs = fs
+
+ // Use standard formatting for verbs that are not v.
+ if verb != 'v' {
+ format := f.constructOrigFormat(verb)
+ fmt.Fprintf(fs, format, f.value)
+ return
+ }
+
+ if f.value == nil {
+ if fs.Flag('#') {
+ fs.Write(interfaceBytes)
+ }
+ fs.Write(nilAngleBytes)
+ return
+ }
+
+ f.format(reflect.ValueOf(f.value))
+}
+
+// newFormatter is a helper function to consolidate the logic from the various
+// public methods which take varying config states.
+func newFormatter(cs *ConfigState, v interface{}) fmt.Formatter {
+ fs := &formatState{value: v, cs: cs}
+ fs.pointers = make(map[uintptr]int)
+ return fs
+}
+
+/*
+NewFormatter returns a custom formatter that satisfies the fmt.Formatter
+interface. As a result, it integrates cleanly with standard fmt package
+printing functions. The formatter is useful for inline printing of smaller data
+types similar to the standard %v format specifier.
+
+The custom formatter only responds to the %v (most compact), %+v (adds pointer
+addresses), %#v (adds types), or %#+v (adds types and pointer addresses) verb
+combinations. Any other verbs such as %x and %q will be sent to the the
+standard fmt package for formatting. In addition, the custom formatter ignores
+the width and precision arguments (however they will still work on the format
+specifiers not handled by the custom formatter).
+
+Typically this function shouldn't be called directly. It is much easier to make
+use of the custom formatter by calling one of the convenience functions such as
+Printf, Println, or Fprintf.
+*/
+func NewFormatter(v interface{}) fmt.Formatter {
+ return newFormatter(&Config, v)
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/format_test.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/format_test.go
new file mode 100644
index 000000000..793f9fb88
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/format_test.go
@@ -0,0 +1,1558 @@
+/*
+ * Copyright (c) 2013 Dave Collins <dave@davec.name>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+/*
+Test Summary:
+NOTE: For each test, a nil pointer, a single pointer and double pointer to the
+base test element are also tested to ensure proper indirection across all types.
+
+- Max int8, int16, int32, int64, int
+- Max uint8, uint16, uint32, uint64, uint
+- Boolean true and false
+- Standard complex64 and complex128
+- Array containing standard ints
+- Array containing type with custom formatter on pointer receiver only
+- Array containing interfaces
+- Slice containing standard float32 values
+- Slice containing type with custom formatter on pointer receiver only
+- Slice containing interfaces
+- Nil slice
+- Standard string
+- Nil interface
+- Sub-interface
+- Map with string keys and int vals
+- Map with custom formatter type on pointer receiver only keys and vals
+- Map with interface keys and values
+- Map with nil interface value
+- Struct with primitives
+- Struct that contains another struct
+- Struct that contains custom type with Stringer pointer interface via both
+ exported and unexported fields
+- Struct that contains embedded struct and field to same struct
+- Uintptr to 0 (null pointer)
+- Uintptr address of real variable
+- Unsafe.Pointer to 0 (null pointer)
+- Unsafe.Pointer to address of real variable
+- Nil channel
+- Standard int channel
+- Function with no params and no returns
+- Function with param and no returns
+- Function with multiple params and multiple returns
+- Struct that is circular through self referencing
+- Structs that are circular through cross referencing
+- Structs that are indirectly circular
+- Type that panics in its Stringer interface
+- Type that has a custom Error interface
+- %x passthrough with uint
+- %#x passthrough with uint
+- %f passthrough with precision
+- %f passthrough with width and precision
+- %d passthrough with width
+- %q passthrough with string
+*/
+
+package spew_test
+
+import (
+ "bytes"
+ "fmt"
+ "testing"
+ "unsafe"
+
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/davecgh/go-spew/spew"
+)
+
+// formatterTest is used to describe a test to be perfomed against NewFormatter.
+type formatterTest struct {
+ format string
+ in interface{}
+ wants []string
+}
+
+// formatterTests houses all of the tests to be performed against NewFormatter.
+var formatterTests = make([]formatterTest, 0)
+
+// addFormatterTest is a helper method to append the passed input and desired
+// result to formatterTests.
+func addFormatterTest(format string, in interface{}, wants ...string) {
+ test := formatterTest{format, in, wants}
+ formatterTests = append(formatterTests, test)
+}
+
+func addIntFormatterTests() {
+ // Max int8.
+ v := int8(127)
+ nv := (*int8)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "int8"
+ vs := "127"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Max int16.
+ v2 := int16(32767)
+ nv2 := (*int16)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "int16"
+ v2s := "32767"
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%v", nv2, "<nil>")
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s)
+ addFormatterTest("%#v", nv2, "(*"+v2t+")"+"<nil>")
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", nv2, "(*"+v2t+")"+"<nil>")
+
+ // Max int32.
+ v3 := int32(2147483647)
+ nv3 := (*int32)(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "int32"
+ v3s := "2147483647"
+ addFormatterTest("%v", v3, v3s)
+ addFormatterTest("%v", pv3, "<*>"+v3s)
+ addFormatterTest("%v", &pv3, "<**>"+v3s)
+ addFormatterTest("%v", nv3, "<nil>")
+ addFormatterTest("%+v", v3, v3s)
+ addFormatterTest("%+v", pv3, "<*>("+v3Addr+")"+v3s)
+ addFormatterTest("%+v", &pv3, "<**>("+pv3Addr+"->"+v3Addr+")"+v3s)
+ addFormatterTest("%+v", nv3, "<nil>")
+ addFormatterTest("%#v", v3, "("+v3t+")"+v3s)
+ addFormatterTest("%#v", pv3, "(*"+v3t+")"+v3s)
+ addFormatterTest("%#v", &pv3, "(**"+v3t+")"+v3s)
+ addFormatterTest("%#v", nv3, "(*"+v3t+")"+"<nil>")
+ addFormatterTest("%#+v", v3, "("+v3t+")"+v3s)
+ addFormatterTest("%#+v", pv3, "(*"+v3t+")("+v3Addr+")"+v3s)
+ addFormatterTest("%#+v", &pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")"+v3s)
+ addFormatterTest("%#v", nv3, "(*"+v3t+")"+"<nil>")
+
+ // Max int64.
+ v4 := int64(9223372036854775807)
+ nv4 := (*int64)(nil)
+ pv4 := &v4
+ v4Addr := fmt.Sprintf("%p", pv4)
+ pv4Addr := fmt.Sprintf("%p", &pv4)
+ v4t := "int64"
+ v4s := "9223372036854775807"
+ addFormatterTest("%v", v4, v4s)
+ addFormatterTest("%v", pv4, "<*>"+v4s)
+ addFormatterTest("%v", &pv4, "<**>"+v4s)
+ addFormatterTest("%v", nv4, "<nil>")
+ addFormatterTest("%+v", v4, v4s)
+ addFormatterTest("%+v", pv4, "<*>("+v4Addr+")"+v4s)
+ addFormatterTest("%+v", &pv4, "<**>("+pv4Addr+"->"+v4Addr+")"+v4s)
+ addFormatterTest("%+v", nv4, "<nil>")
+ addFormatterTest("%#v", v4, "("+v4t+")"+v4s)
+ addFormatterTest("%#v", pv4, "(*"+v4t+")"+v4s)
+ addFormatterTest("%#v", &pv4, "(**"+v4t+")"+v4s)
+ addFormatterTest("%#v", nv4, "(*"+v4t+")"+"<nil>")
+ addFormatterTest("%#+v", v4, "("+v4t+")"+v4s)
+ addFormatterTest("%#+v", pv4, "(*"+v4t+")("+v4Addr+")"+v4s)
+ addFormatterTest("%#+v", &pv4, "(**"+v4t+")("+pv4Addr+"->"+v4Addr+")"+v4s)
+ addFormatterTest("%#+v", nv4, "(*"+v4t+")"+"<nil>")
+
+ // Max int.
+ v5 := int(2147483647)
+ nv5 := (*int)(nil)
+ pv5 := &v5
+ v5Addr := fmt.Sprintf("%p", pv5)
+ pv5Addr := fmt.Sprintf("%p", &pv5)
+ v5t := "int"
+ v5s := "2147483647"
+ addFormatterTest("%v", v5, v5s)
+ addFormatterTest("%v", pv5, "<*>"+v5s)
+ addFormatterTest("%v", &pv5, "<**>"+v5s)
+ addFormatterTest("%v", nv5, "<nil>")
+ addFormatterTest("%+v", v5, v5s)
+ addFormatterTest("%+v", pv5, "<*>("+v5Addr+")"+v5s)
+ addFormatterTest("%+v", &pv5, "<**>("+pv5Addr+"->"+v5Addr+")"+v5s)
+ addFormatterTest("%+v", nv5, "<nil>")
+ addFormatterTest("%#v", v5, "("+v5t+")"+v5s)
+ addFormatterTest("%#v", pv5, "(*"+v5t+")"+v5s)
+ addFormatterTest("%#v", &pv5, "(**"+v5t+")"+v5s)
+ addFormatterTest("%#v", nv5, "(*"+v5t+")"+"<nil>")
+ addFormatterTest("%#+v", v5, "("+v5t+")"+v5s)
+ addFormatterTest("%#+v", pv5, "(*"+v5t+")("+v5Addr+")"+v5s)
+ addFormatterTest("%#+v", &pv5, "(**"+v5t+")("+pv5Addr+"->"+v5Addr+")"+v5s)
+ addFormatterTest("%#+v", nv5, "(*"+v5t+")"+"<nil>")
+}
+
+func addUintFormatterTests() {
+ // Max uint8.
+ v := uint8(255)
+ nv := (*uint8)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "uint8"
+ vs := "255"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Max uint16.
+ v2 := uint16(65535)
+ nv2 := (*uint16)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "uint16"
+ v2s := "65535"
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%v", nv2, "<nil>")
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s)
+ addFormatterTest("%#v", nv2, "(*"+v2t+")"+"<nil>")
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", nv2, "(*"+v2t+")"+"<nil>")
+
+ // Max uint32.
+ v3 := uint32(4294967295)
+ nv3 := (*uint32)(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "uint32"
+ v3s := "4294967295"
+ addFormatterTest("%v", v3, v3s)
+ addFormatterTest("%v", pv3, "<*>"+v3s)
+ addFormatterTest("%v", &pv3, "<**>"+v3s)
+ addFormatterTest("%v", nv3, "<nil>")
+ addFormatterTest("%+v", v3, v3s)
+ addFormatterTest("%+v", pv3, "<*>("+v3Addr+")"+v3s)
+ addFormatterTest("%+v", &pv3, "<**>("+pv3Addr+"->"+v3Addr+")"+v3s)
+ addFormatterTest("%+v", nv3, "<nil>")
+ addFormatterTest("%#v", v3, "("+v3t+")"+v3s)
+ addFormatterTest("%#v", pv3, "(*"+v3t+")"+v3s)
+ addFormatterTest("%#v", &pv3, "(**"+v3t+")"+v3s)
+ addFormatterTest("%#v", nv3, "(*"+v3t+")"+"<nil>")
+ addFormatterTest("%#+v", v3, "("+v3t+")"+v3s)
+ addFormatterTest("%#+v", pv3, "(*"+v3t+")("+v3Addr+")"+v3s)
+ addFormatterTest("%#+v", &pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")"+v3s)
+ addFormatterTest("%#v", nv3, "(*"+v3t+")"+"<nil>")
+
+ // Max uint64.
+ v4 := uint64(18446744073709551615)
+ nv4 := (*uint64)(nil)
+ pv4 := &v4
+ v4Addr := fmt.Sprintf("%p", pv4)
+ pv4Addr := fmt.Sprintf("%p", &pv4)
+ v4t := "uint64"
+ v4s := "18446744073709551615"
+ addFormatterTest("%v", v4, v4s)
+ addFormatterTest("%v", pv4, "<*>"+v4s)
+ addFormatterTest("%v", &pv4, "<**>"+v4s)
+ addFormatterTest("%v", nv4, "<nil>")
+ addFormatterTest("%+v", v4, v4s)
+ addFormatterTest("%+v", pv4, "<*>("+v4Addr+")"+v4s)
+ addFormatterTest("%+v", &pv4, "<**>("+pv4Addr+"->"+v4Addr+")"+v4s)
+ addFormatterTest("%+v", nv4, "<nil>")
+ addFormatterTest("%#v", v4, "("+v4t+")"+v4s)
+ addFormatterTest("%#v", pv4, "(*"+v4t+")"+v4s)
+ addFormatterTest("%#v", &pv4, "(**"+v4t+")"+v4s)
+ addFormatterTest("%#v", nv4, "(*"+v4t+")"+"<nil>")
+ addFormatterTest("%#+v", v4, "("+v4t+")"+v4s)
+ addFormatterTest("%#+v", pv4, "(*"+v4t+")("+v4Addr+")"+v4s)
+ addFormatterTest("%#+v", &pv4, "(**"+v4t+")("+pv4Addr+"->"+v4Addr+")"+v4s)
+ addFormatterTest("%#+v", nv4, "(*"+v4t+")"+"<nil>")
+
+ // Max uint.
+ v5 := uint(4294967295)
+ nv5 := (*uint)(nil)
+ pv5 := &v5
+ v5Addr := fmt.Sprintf("%p", pv5)
+ pv5Addr := fmt.Sprintf("%p", &pv5)
+ v5t := "uint"
+ v5s := "4294967295"
+ addFormatterTest("%v", v5, v5s)
+ addFormatterTest("%v", pv5, "<*>"+v5s)
+ addFormatterTest("%v", &pv5, "<**>"+v5s)
+ addFormatterTest("%v", nv5, "<nil>")
+ addFormatterTest("%+v", v5, v5s)
+ addFormatterTest("%+v", pv5, "<*>("+v5Addr+")"+v5s)
+ addFormatterTest("%+v", &pv5, "<**>("+pv5Addr+"->"+v5Addr+")"+v5s)
+ addFormatterTest("%+v", nv5, "<nil>")
+ addFormatterTest("%#v", v5, "("+v5t+")"+v5s)
+ addFormatterTest("%#v", pv5, "(*"+v5t+")"+v5s)
+ addFormatterTest("%#v", &pv5, "(**"+v5t+")"+v5s)
+ addFormatterTest("%#v", nv5, "(*"+v5t+")"+"<nil>")
+ addFormatterTest("%#+v", v5, "("+v5t+")"+v5s)
+ addFormatterTest("%#+v", pv5, "(*"+v5t+")("+v5Addr+")"+v5s)
+ addFormatterTest("%#+v", &pv5, "(**"+v5t+")("+pv5Addr+"->"+v5Addr+")"+v5s)
+ addFormatterTest("%#v", nv5, "(*"+v5t+")"+"<nil>")
+}
+
+func addBoolFormatterTests() {
+ // Boolean true.
+ v := bool(true)
+ nv := (*bool)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "bool"
+ vs := "true"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Boolean false.
+ v2 := bool(false)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "bool"
+ v2s := "false"
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s)
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s)
+}
+
+func addFloatFormatterTests() {
+ // Standard float32.
+ v := float32(3.1415)
+ nv := (*float32)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "float32"
+ vs := "3.1415"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Standard float64.
+ v2 := float64(3.1415926)
+ nv2 := (*float64)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "float64"
+ v2s := "3.1415926"
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s)
+ addFormatterTest("%#v", nv2, "(*"+v2t+")"+"<nil>")
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", nv2, "(*"+v2t+")"+"<nil>")
+}
+
+func addComplexFormatterTests() {
+ // Standard complex64.
+ v := complex(float32(6), -2)
+ nv := (*complex64)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "complex64"
+ vs := "(6-2i)"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Standard complex128.
+ v2 := complex(float64(-6), 2)
+ nv2 := (*complex128)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "complex128"
+ v2s := "(-6+2i)"
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s)
+ addFormatterTest("%#v", nv2, "(*"+v2t+")"+"<nil>")
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", nv2, "(*"+v2t+")"+"<nil>")
+}
+
+func addArrayFormatterTests() {
+ // Array containing standard ints.
+ v := [3]int{1, 2, 3}
+ nv := (*[3]int)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "[3]int"
+ vs := "[1 2 3]"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Array containing type with custom formatter on pointer receiver only.
+ v2 := [3]pstringer{"1", "2", "3"}
+ nv2 := (*[3]pstringer)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "[3]spew_test.pstringer"
+ v2sp := "[stringer 1 stringer 2 stringer 3]"
+ v2s := v2sp
+ if spew.UnsafeDisabled {
+ v2s = "[1 2 3]"
+ }
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2sp)
+ addFormatterTest("%v", &pv2, "<**>"+v2sp)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2sp)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2sp)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2sp)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2sp)
+ addFormatterTest("%#v", nv2, "(*"+v2t+")"+"<nil>")
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2sp)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2sp)
+ addFormatterTest("%#+v", nv2, "(*"+v2t+")"+"<nil>")
+
+ // Array containing interfaces.
+ v3 := [3]interface{}{"one", int(2), uint(3)}
+ nv3 := (*[3]interface{})(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "[3]interface {}"
+ v3t2 := "string"
+ v3t3 := "int"
+ v3t4 := "uint"
+ v3s := "[one 2 3]"
+ v3s2 := "[(" + v3t2 + ")one (" + v3t3 + ")2 (" + v3t4 + ")3]"
+ addFormatterTest("%v", v3, v3s)
+ addFormatterTest("%v", pv3, "<*>"+v3s)
+ addFormatterTest("%v", &pv3, "<**>"+v3s)
+ addFormatterTest("%+v", nv3, "<nil>")
+ addFormatterTest("%+v", v3, v3s)
+ addFormatterTest("%+v", pv3, "<*>("+v3Addr+")"+v3s)
+ addFormatterTest("%+v", &pv3, "<**>("+pv3Addr+"->"+v3Addr+")"+v3s)
+ addFormatterTest("%+v", nv3, "<nil>")
+ addFormatterTest("%#v", v3, "("+v3t+")"+v3s2)
+ addFormatterTest("%#v", pv3, "(*"+v3t+")"+v3s2)
+ addFormatterTest("%#v", &pv3, "(**"+v3t+")"+v3s2)
+ addFormatterTest("%#v", nv3, "(*"+v3t+")"+"<nil>")
+ addFormatterTest("%#+v", v3, "("+v3t+")"+v3s2)
+ addFormatterTest("%#+v", pv3, "(*"+v3t+")("+v3Addr+")"+v3s2)
+ addFormatterTest("%#+v", &pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")"+v3s2)
+ addFormatterTest("%#+v", nv3, "(*"+v3t+")"+"<nil>")
+}
+
+func addSliceFormatterTests() {
+ // Slice containing standard float32 values.
+ v := []float32{3.14, 6.28, 12.56}
+ nv := (*[]float32)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "[]float32"
+ vs := "[3.14 6.28 12.56]"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Slice containing type with custom formatter on pointer receiver only.
+ v2 := []pstringer{"1", "2", "3"}
+ nv2 := (*[]pstringer)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "[]spew_test.pstringer"
+ v2s := "[stringer 1 stringer 2 stringer 3]"
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s)
+ addFormatterTest("%#v", nv2, "(*"+v2t+")"+"<nil>")
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", nv2, "(*"+v2t+")"+"<nil>")
+
+ // Slice containing interfaces.
+ v3 := []interface{}{"one", int(2), uint(3), nil}
+ nv3 := (*[]interface{})(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "[]interface {}"
+ v3t2 := "string"
+ v3t3 := "int"
+ v3t4 := "uint"
+ v3t5 := "interface {}"
+ v3s := "[one 2 3 <nil>]"
+ v3s2 := "[(" + v3t2 + ")one (" + v3t3 + ")2 (" + v3t4 + ")3 (" + v3t5 +
+ ")<nil>]"
+ addFormatterTest("%v", v3, v3s)
+ addFormatterTest("%v", pv3, "<*>"+v3s)
+ addFormatterTest("%v", &pv3, "<**>"+v3s)
+ addFormatterTest("%+v", nv3, "<nil>")
+ addFormatterTest("%+v", v3, v3s)
+ addFormatterTest("%+v", pv3, "<*>("+v3Addr+")"+v3s)
+ addFormatterTest("%+v", &pv3, "<**>("+pv3Addr+"->"+v3Addr+")"+v3s)
+ addFormatterTest("%+v", nv3, "<nil>")
+ addFormatterTest("%#v", v3, "("+v3t+")"+v3s2)
+ addFormatterTest("%#v", pv3, "(*"+v3t+")"+v3s2)
+ addFormatterTest("%#v", &pv3, "(**"+v3t+")"+v3s2)
+ addFormatterTest("%#v", nv3, "(*"+v3t+")"+"<nil>")
+ addFormatterTest("%#+v", v3, "("+v3t+")"+v3s2)
+ addFormatterTest("%#+v", pv3, "(*"+v3t+")("+v3Addr+")"+v3s2)
+ addFormatterTest("%#+v", &pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")"+v3s2)
+ addFormatterTest("%#+v", nv3, "(*"+v3t+")"+"<nil>")
+
+ // Nil slice.
+ var v4 []int
+ nv4 := (*[]int)(nil)
+ pv4 := &v4
+ v4Addr := fmt.Sprintf("%p", pv4)
+ pv4Addr := fmt.Sprintf("%p", &pv4)
+ v4t := "[]int"
+ v4s := "<nil>"
+ addFormatterTest("%v", v4, v4s)
+ addFormatterTest("%v", pv4, "<*>"+v4s)
+ addFormatterTest("%v", &pv4, "<**>"+v4s)
+ addFormatterTest("%+v", nv4, "<nil>")
+ addFormatterTest("%+v", v4, v4s)
+ addFormatterTest("%+v", pv4, "<*>("+v4Addr+")"+v4s)
+ addFormatterTest("%+v", &pv4, "<**>("+pv4Addr+"->"+v4Addr+")"+v4s)
+ addFormatterTest("%+v", nv4, "<nil>")
+ addFormatterTest("%#v", v4, "("+v4t+")"+v4s)
+ addFormatterTest("%#v", pv4, "(*"+v4t+")"+v4s)
+ addFormatterTest("%#v", &pv4, "(**"+v4t+")"+v4s)
+ addFormatterTest("%#v", nv4, "(*"+v4t+")"+"<nil>")
+ addFormatterTest("%#+v", v4, "("+v4t+")"+v4s)
+ addFormatterTest("%#+v", pv4, "(*"+v4t+")("+v4Addr+")"+v4s)
+ addFormatterTest("%#+v", &pv4, "(**"+v4t+")("+pv4Addr+"->"+v4Addr+")"+v4s)
+ addFormatterTest("%#+v", nv4, "(*"+v4t+")"+"<nil>")
+}
+
+func addStringFormatterTests() {
+ // Standard string.
+ v := "test"
+ nv := (*string)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "string"
+ vs := "test"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+}
+
+func addInterfaceFormatterTests() {
+ // Nil interface.
+ var v interface{}
+ nv := (*interface{})(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "interface {}"
+ vs := "<nil>"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Sub-interface.
+ v2 := interface{}(uint16(65535))
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "uint16"
+ v2s := "65535"
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s)
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s)
+}
+
+func addMapFormatterTests() {
+ // Map with string keys and int vals.
+ v := map[string]int{"one": 1, "two": 2}
+ nilMap := map[string]int(nil)
+ nv := (*map[string]int)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "map[string]int"
+ vs := "map[one:1 two:2]"
+ vs2 := "map[two:2 one:1]"
+ addFormatterTest("%v", v, vs, vs2)
+ addFormatterTest("%v", pv, "<*>"+vs, "<*>"+vs2)
+ addFormatterTest("%v", &pv, "<**>"+vs, "<**>"+vs2)
+ addFormatterTest("%+v", nilMap, "<nil>")
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs, vs2)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs, "<*>("+vAddr+")"+vs2)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs,
+ "<**>("+pvAddr+"->"+vAddr+")"+vs2)
+ addFormatterTest("%+v", nilMap, "<nil>")
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs, "("+vt+")"+vs2)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs, "(*"+vt+")"+vs2)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs, "(**"+vt+")"+vs2)
+ addFormatterTest("%#v", nilMap, "("+vt+")"+"<nil>")
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs, "("+vt+")"+vs2)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs,
+ "(*"+vt+")("+vAddr+")"+vs2)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs,
+ "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs2)
+ addFormatterTest("%#+v", nilMap, "("+vt+")"+"<nil>")
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Map with custom formatter type on pointer receiver only keys and vals.
+ v2 := map[pstringer]pstringer{"one": "1"}
+ nv2 := (*map[pstringer]pstringer)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "map[spew_test.pstringer]spew_test.pstringer"
+ v2s := "map[stringer one:stringer 1]"
+ if spew.UnsafeDisabled {
+ v2s = "map[one:1]"
+ }
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s)
+ addFormatterTest("%#v", nv2, "(*"+v2t+")"+"<nil>")
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", nv2, "(*"+v2t+")"+"<nil>")
+
+ // Map with interface keys and values.
+ v3 := map[interface{}]interface{}{"one": 1}
+ nv3 := (*map[interface{}]interface{})(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "map[interface {}]interface {}"
+ v3t1 := "string"
+ v3t2 := "int"
+ v3s := "map[one:1]"
+ v3s2 := "map[(" + v3t1 + ")one:(" + v3t2 + ")1]"
+ addFormatterTest("%v", v3, v3s)
+ addFormatterTest("%v", pv3, "<*>"+v3s)
+ addFormatterTest("%v", &pv3, "<**>"+v3s)
+ addFormatterTest("%+v", nv3, "<nil>")
+ addFormatterTest("%+v", v3, v3s)
+ addFormatterTest("%+v", pv3, "<*>("+v3Addr+")"+v3s)
+ addFormatterTest("%+v", &pv3, "<**>("+pv3Addr+"->"+v3Addr+")"+v3s)
+ addFormatterTest("%+v", nv3, "<nil>")
+ addFormatterTest("%#v", v3, "("+v3t+")"+v3s2)
+ addFormatterTest("%#v", pv3, "(*"+v3t+")"+v3s2)
+ addFormatterTest("%#v", &pv3, "(**"+v3t+")"+v3s2)
+ addFormatterTest("%#v", nv3, "(*"+v3t+")"+"<nil>")
+ addFormatterTest("%#+v", v3, "("+v3t+")"+v3s2)
+ addFormatterTest("%#+v", pv3, "(*"+v3t+")("+v3Addr+")"+v3s2)
+ addFormatterTest("%#+v", &pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")"+v3s2)
+ addFormatterTest("%#+v", nv3, "(*"+v3t+")"+"<nil>")
+
+ // Map with nil interface value
+ v4 := map[string]interface{}{"nil": nil}
+ nv4 := (*map[string]interface{})(nil)
+ pv4 := &v4
+ v4Addr := fmt.Sprintf("%p", pv4)
+ pv4Addr := fmt.Sprintf("%p", &pv4)
+ v4t := "map[string]interface {}"
+ v4t1 := "interface {}"
+ v4s := "map[nil:<nil>]"
+ v4s2 := "map[nil:(" + v4t1 + ")<nil>]"
+ addFormatterTest("%v", v4, v4s)
+ addFormatterTest("%v", pv4, "<*>"+v4s)
+ addFormatterTest("%v", &pv4, "<**>"+v4s)
+ addFormatterTest("%+v", nv4, "<nil>")
+ addFormatterTest("%+v", v4, v4s)
+ addFormatterTest("%+v", pv4, "<*>("+v4Addr+")"+v4s)
+ addFormatterTest("%+v", &pv4, "<**>("+pv4Addr+"->"+v4Addr+")"+v4s)
+ addFormatterTest("%+v", nv4, "<nil>")
+ addFormatterTest("%#v", v4, "("+v4t+")"+v4s2)
+ addFormatterTest("%#v", pv4, "(*"+v4t+")"+v4s2)
+ addFormatterTest("%#v", &pv4, "(**"+v4t+")"+v4s2)
+ addFormatterTest("%#v", nv4, "(*"+v4t+")"+"<nil>")
+ addFormatterTest("%#+v", v4, "("+v4t+")"+v4s2)
+ addFormatterTest("%#+v", pv4, "(*"+v4t+")("+v4Addr+")"+v4s2)
+ addFormatterTest("%#+v", &pv4, "(**"+v4t+")("+pv4Addr+"->"+v4Addr+")"+v4s2)
+ addFormatterTest("%#+v", nv4, "(*"+v4t+")"+"<nil>")
+}
+
+func addStructFormatterTests() {
+ // Struct with primitives.
+ type s1 struct {
+ a int8
+ b uint8
+ }
+ v := s1{127, 255}
+ nv := (*s1)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "spew_test.s1"
+ vt2 := "int8"
+ vt3 := "uint8"
+ vs := "{127 255}"
+ vs2 := "{a:127 b:255}"
+ vs3 := "{a:(" + vt2 + ")127 b:(" + vt3 + ")255}"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs2)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs2)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs2)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs3)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs3)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs3)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs3)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs3)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs3)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Struct that contains another struct.
+ type s2 struct {
+ s1 s1
+ b bool
+ }
+ v2 := s2{s1{127, 255}, true}
+ nv2 := (*s2)(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "spew_test.s2"
+ v2t2 := "spew_test.s1"
+ v2t3 := "int8"
+ v2t4 := "uint8"
+ v2t5 := "bool"
+ v2s := "{{127 255} true}"
+ v2s2 := "{s1:{a:127 b:255} b:true}"
+ v2s3 := "{s1:(" + v2t2 + "){a:(" + v2t3 + ")127 b:(" + v2t4 + ")255} b:(" +
+ v2t5 + ")true}"
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%+v", v2, v2s2)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s2)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s2)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s3)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s3)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s3)
+ addFormatterTest("%#v", nv2, "(*"+v2t+")"+"<nil>")
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s3)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s3)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s3)
+ addFormatterTest("%#+v", nv2, "(*"+v2t+")"+"<nil>")
+
+ // Struct that contains custom type with Stringer pointer interface via both
+ // exported and unexported fields.
+ type s3 struct {
+ s pstringer
+ S pstringer
+ }
+ v3 := s3{"test", "test2"}
+ nv3 := (*s3)(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "spew_test.s3"
+ v3t2 := "spew_test.pstringer"
+ v3s := "{stringer test stringer test2}"
+ v3sp := v3s
+ v3s2 := "{s:stringer test S:stringer test2}"
+ v3s2p := v3s2
+ v3s3 := "{s:(" + v3t2 + ")stringer test S:(" + v3t2 + ")stringer test2}"
+ v3s3p := v3s3
+ if spew.UnsafeDisabled {
+ v3s = "{test test2}"
+ v3sp = "{test stringer test2}"
+ v3s2 = "{s:test S:test2}"
+ v3s2p = "{s:test S:stringer test2}"
+ v3s3 = "{s:(" + v3t2 + ")test S:(" + v3t2 + ")test2}"
+ v3s3p = "{s:(" + v3t2 + ")test S:(" + v3t2 + ")stringer test2}"
+ }
+ addFormatterTest("%v", v3, v3s)
+ addFormatterTest("%v", pv3, "<*>"+v3sp)
+ addFormatterTest("%v", &pv3, "<**>"+v3sp)
+ addFormatterTest("%+v", nv3, "<nil>")
+ addFormatterTest("%+v", v3, v3s2)
+ addFormatterTest("%+v", pv3, "<*>("+v3Addr+")"+v3s2p)
+ addFormatterTest("%+v", &pv3, "<**>("+pv3Addr+"->"+v3Addr+")"+v3s2p)
+ addFormatterTest("%+v", nv3, "<nil>")
+ addFormatterTest("%#v", v3, "("+v3t+")"+v3s3)
+ addFormatterTest("%#v", pv3, "(*"+v3t+")"+v3s3p)
+ addFormatterTest("%#v", &pv3, "(**"+v3t+")"+v3s3p)
+ addFormatterTest("%#v", nv3, "(*"+v3t+")"+"<nil>")
+ addFormatterTest("%#+v", v3, "("+v3t+")"+v3s3)
+ addFormatterTest("%#+v", pv3, "(*"+v3t+")("+v3Addr+")"+v3s3p)
+ addFormatterTest("%#+v", &pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")"+v3s3p)
+ addFormatterTest("%#+v", nv3, "(*"+v3t+")"+"<nil>")
+
+ // Struct that contains embedded struct and field to same struct.
+ e := embed{"embedstr"}
+ v4 := embedwrap{embed: &e, e: &e}
+ nv4 := (*embedwrap)(nil)
+ pv4 := &v4
+ eAddr := fmt.Sprintf("%p", &e)
+ v4Addr := fmt.Sprintf("%p", pv4)
+ pv4Addr := fmt.Sprintf("%p", &pv4)
+ v4t := "spew_test.embedwrap"
+ v4t2 := "spew_test.embed"
+ v4t3 := "string"
+ v4s := "{<*>{embedstr} <*>{embedstr}}"
+ v4s2 := "{embed:<*>(" + eAddr + "){a:embedstr} e:<*>(" + eAddr +
+ "){a:embedstr}}"
+ v4s3 := "{embed:(*" + v4t2 + "){a:(" + v4t3 + ")embedstr} e:(*" + v4t2 +
+ "){a:(" + v4t3 + ")embedstr}}"
+ v4s4 := "{embed:(*" + v4t2 + ")(" + eAddr + "){a:(" + v4t3 +
+ ")embedstr} e:(*" + v4t2 + ")(" + eAddr + "){a:(" + v4t3 + ")embedstr}}"
+ addFormatterTest("%v", v4, v4s)
+ addFormatterTest("%v", pv4, "<*>"+v4s)
+ addFormatterTest("%v", &pv4, "<**>"+v4s)
+ addFormatterTest("%+v", nv4, "<nil>")
+ addFormatterTest("%+v", v4, v4s2)
+ addFormatterTest("%+v", pv4, "<*>("+v4Addr+")"+v4s2)
+ addFormatterTest("%+v", &pv4, "<**>("+pv4Addr+"->"+v4Addr+")"+v4s2)
+ addFormatterTest("%+v", nv4, "<nil>")
+ addFormatterTest("%#v", v4, "("+v4t+")"+v4s3)
+ addFormatterTest("%#v", pv4, "(*"+v4t+")"+v4s3)
+ addFormatterTest("%#v", &pv4, "(**"+v4t+")"+v4s3)
+ addFormatterTest("%#v", nv4, "(*"+v4t+")"+"<nil>")
+ addFormatterTest("%#+v", v4, "("+v4t+")"+v4s4)
+ addFormatterTest("%#+v", pv4, "(*"+v4t+")("+v4Addr+")"+v4s4)
+ addFormatterTest("%#+v", &pv4, "(**"+v4t+")("+pv4Addr+"->"+v4Addr+")"+v4s4)
+ addFormatterTest("%#+v", nv4, "(*"+v4t+")"+"<nil>")
+}
+
+func addUintptrFormatterTests() {
+ // Null pointer.
+ v := uintptr(0)
+ nv := (*uintptr)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "uintptr"
+ vs := "<nil>"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Address of real variable.
+ i := 1
+ v2 := uintptr(unsafe.Pointer(&i))
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "uintptr"
+ v2s := fmt.Sprintf("%p", &i)
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s)
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s)
+}
+
+func addUnsafePointerFormatterTests() {
+ // Null pointer.
+ v := unsafe.Pointer(uintptr(0))
+ nv := (*unsafe.Pointer)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "unsafe.Pointer"
+ vs := "<nil>"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Address of real variable.
+ i := 1
+ v2 := unsafe.Pointer(&i)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "unsafe.Pointer"
+ v2s := fmt.Sprintf("%p", &i)
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s)
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s)
+}
+
+func addChanFormatterTests() {
+ // Nil channel.
+ var v chan int
+ pv := &v
+ nv := (*chan int)(nil)
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "chan int"
+ vs := "<nil>"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Real channel.
+ v2 := make(chan int)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "chan int"
+ v2s := fmt.Sprintf("%p", v2)
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s)
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s)
+}
+
+func addFuncFormatterTests() {
+ // Function with no params and no returns.
+ v := addIntFormatterTests
+ nv := (*func())(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "func()"
+ vs := fmt.Sprintf("%p", v)
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+
+ // Function with param and no returns.
+ v2 := TestFormatter
+ nv2 := (*func(*testing.T))(nil)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "func(*testing.T)"
+ v2s := fmt.Sprintf("%p", v2)
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s)
+ addFormatterTest("%v", &pv2, "<**>"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%+v", v2, v2s)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%+v", nv2, "<nil>")
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s)
+ addFormatterTest("%#v", nv2, "(*"+v2t+")"+"<nil>")
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s)
+ addFormatterTest("%#+v", nv2, "(*"+v2t+")"+"<nil>")
+
+ // Function with multiple params and multiple returns.
+ var v3 = func(i int, s string) (b bool, err error) {
+ return true, nil
+ }
+ nv3 := (*func(int, string) (bool, error))(nil)
+ pv3 := &v3
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "func(int, string) (bool, error)"
+ v3s := fmt.Sprintf("%p", v3)
+ addFormatterTest("%v", v3, v3s)
+ addFormatterTest("%v", pv3, "<*>"+v3s)
+ addFormatterTest("%v", &pv3, "<**>"+v3s)
+ addFormatterTest("%+v", nv3, "<nil>")
+ addFormatterTest("%+v", v3, v3s)
+ addFormatterTest("%+v", pv3, "<*>("+v3Addr+")"+v3s)
+ addFormatterTest("%+v", &pv3, "<**>("+pv3Addr+"->"+v3Addr+")"+v3s)
+ addFormatterTest("%+v", nv3, "<nil>")
+ addFormatterTest("%#v", v3, "("+v3t+")"+v3s)
+ addFormatterTest("%#v", pv3, "(*"+v3t+")"+v3s)
+ addFormatterTest("%#v", &pv3, "(**"+v3t+")"+v3s)
+ addFormatterTest("%#v", nv3, "(*"+v3t+")"+"<nil>")
+ addFormatterTest("%#+v", v3, "("+v3t+")"+v3s)
+ addFormatterTest("%#+v", pv3, "(*"+v3t+")("+v3Addr+")"+v3s)
+ addFormatterTest("%#+v", &pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")"+v3s)
+ addFormatterTest("%#+v", nv3, "(*"+v3t+")"+"<nil>")
+}
+
+func addCircularFormatterTests() {
+ // Struct that is circular through self referencing.
+ type circular struct {
+ c *circular
+ }
+ v := circular{nil}
+ v.c = &v
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "spew_test.circular"
+ vs := "{<*>{<*><shown>}}"
+ vs2 := "{<*><shown>}"
+ vs3 := "{c:<*>(" + vAddr + "){c:<*>(" + vAddr + ")<shown>}}"
+ vs4 := "{c:<*>(" + vAddr + ")<shown>}"
+ vs5 := "{c:(*" + vt + "){c:(*" + vt + ")<shown>}}"
+ vs6 := "{c:(*" + vt + ")<shown>}"
+ vs7 := "{c:(*" + vt + ")(" + vAddr + "){c:(*" + vt + ")(" + vAddr +
+ ")<shown>}}"
+ vs8 := "{c:(*" + vt + ")(" + vAddr + ")<shown>}"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs2)
+ addFormatterTest("%v", &pv, "<**>"+vs2)
+ addFormatterTest("%+v", v, vs3)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs4)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs4)
+ addFormatterTest("%#v", v, "("+vt+")"+vs5)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs6)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs6)
+ addFormatterTest("%#+v", v, "("+vt+")"+vs7)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs8)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs8)
+
+ // Structs that are circular through cross referencing.
+ v2 := xref1{nil}
+ ts2 := xref2{&v2}
+ v2.ps2 = &ts2
+ pv2 := &v2
+ ts2Addr := fmt.Sprintf("%p", &ts2)
+ v2Addr := fmt.Sprintf("%p", pv2)
+ pv2Addr := fmt.Sprintf("%p", &pv2)
+ v2t := "spew_test.xref1"
+ v2t2 := "spew_test.xref2"
+ v2s := "{<*>{<*>{<*><shown>}}}"
+ v2s2 := "{<*>{<*><shown>}}"
+ v2s3 := "{ps2:<*>(" + ts2Addr + "){ps1:<*>(" + v2Addr + "){ps2:<*>(" +
+ ts2Addr + ")<shown>}}}"
+ v2s4 := "{ps2:<*>(" + ts2Addr + "){ps1:<*>(" + v2Addr + ")<shown>}}"
+ v2s5 := "{ps2:(*" + v2t2 + "){ps1:(*" + v2t + "){ps2:(*" + v2t2 +
+ ")<shown>}}}"
+ v2s6 := "{ps2:(*" + v2t2 + "){ps1:(*" + v2t + ")<shown>}}"
+ v2s7 := "{ps2:(*" + v2t2 + ")(" + ts2Addr + "){ps1:(*" + v2t +
+ ")(" + v2Addr + "){ps2:(*" + v2t2 + ")(" + ts2Addr +
+ ")<shown>}}}"
+ v2s8 := "{ps2:(*" + v2t2 + ")(" + ts2Addr + "){ps1:(*" + v2t +
+ ")(" + v2Addr + ")<shown>}}"
+ addFormatterTest("%v", v2, v2s)
+ addFormatterTest("%v", pv2, "<*>"+v2s2)
+ addFormatterTest("%v", &pv2, "<**>"+v2s2)
+ addFormatterTest("%+v", v2, v2s3)
+ addFormatterTest("%+v", pv2, "<*>("+v2Addr+")"+v2s4)
+ addFormatterTest("%+v", &pv2, "<**>("+pv2Addr+"->"+v2Addr+")"+v2s4)
+ addFormatterTest("%#v", v2, "("+v2t+")"+v2s5)
+ addFormatterTest("%#v", pv2, "(*"+v2t+")"+v2s6)
+ addFormatterTest("%#v", &pv2, "(**"+v2t+")"+v2s6)
+ addFormatterTest("%#+v", v2, "("+v2t+")"+v2s7)
+ addFormatterTest("%#+v", pv2, "(*"+v2t+")("+v2Addr+")"+v2s8)
+ addFormatterTest("%#+v", &pv2, "(**"+v2t+")("+pv2Addr+"->"+v2Addr+")"+v2s8)
+
+ // Structs that are indirectly circular.
+ v3 := indirCir1{nil}
+ tic2 := indirCir2{nil}
+ tic3 := indirCir3{&v3}
+ tic2.ps3 = &tic3
+ v3.ps2 = &tic2
+ pv3 := &v3
+ tic2Addr := fmt.Sprintf("%p", &tic2)
+ tic3Addr := fmt.Sprintf("%p", &tic3)
+ v3Addr := fmt.Sprintf("%p", pv3)
+ pv3Addr := fmt.Sprintf("%p", &pv3)
+ v3t := "spew_test.indirCir1"
+ v3t2 := "spew_test.indirCir2"
+ v3t3 := "spew_test.indirCir3"
+ v3s := "{<*>{<*>{<*>{<*><shown>}}}}"
+ v3s2 := "{<*>{<*>{<*><shown>}}}"
+ v3s3 := "{ps2:<*>(" + tic2Addr + "){ps3:<*>(" + tic3Addr + "){ps1:<*>(" +
+ v3Addr + "){ps2:<*>(" + tic2Addr + ")<shown>}}}}"
+ v3s4 := "{ps2:<*>(" + tic2Addr + "){ps3:<*>(" + tic3Addr + "){ps1:<*>(" +
+ v3Addr + ")<shown>}}}"
+ v3s5 := "{ps2:(*" + v3t2 + "){ps3:(*" + v3t3 + "){ps1:(*" + v3t +
+ "){ps2:(*" + v3t2 + ")<shown>}}}}"
+ v3s6 := "{ps2:(*" + v3t2 + "){ps3:(*" + v3t3 + "){ps1:(*" + v3t +
+ ")<shown>}}}"
+ v3s7 := "{ps2:(*" + v3t2 + ")(" + tic2Addr + "){ps3:(*" + v3t3 + ")(" +
+ tic3Addr + "){ps1:(*" + v3t + ")(" + v3Addr + "){ps2:(*" + v3t2 +
+ ")(" + tic2Addr + ")<shown>}}}}"
+ v3s8 := "{ps2:(*" + v3t2 + ")(" + tic2Addr + "){ps3:(*" + v3t3 + ")(" +
+ tic3Addr + "){ps1:(*" + v3t + ")(" + v3Addr + ")<shown>}}}"
+ addFormatterTest("%v", v3, v3s)
+ addFormatterTest("%v", pv3, "<*>"+v3s2)
+ addFormatterTest("%v", &pv3, "<**>"+v3s2)
+ addFormatterTest("%+v", v3, v3s3)
+ addFormatterTest("%+v", pv3, "<*>("+v3Addr+")"+v3s4)
+ addFormatterTest("%+v", &pv3, "<**>("+pv3Addr+"->"+v3Addr+")"+v3s4)
+ addFormatterTest("%#v", v3, "("+v3t+")"+v3s5)
+ addFormatterTest("%#v", pv3, "(*"+v3t+")"+v3s6)
+ addFormatterTest("%#v", &pv3, "(**"+v3t+")"+v3s6)
+ addFormatterTest("%#+v", v3, "("+v3t+")"+v3s7)
+ addFormatterTest("%#+v", pv3, "(*"+v3t+")("+v3Addr+")"+v3s8)
+ addFormatterTest("%#+v", &pv3, "(**"+v3t+")("+pv3Addr+"->"+v3Addr+")"+v3s8)
+}
+
+func addPanicFormatterTests() {
+ // Type that panics in its Stringer interface.
+ v := panicer(127)
+ nv := (*panicer)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "spew_test.panicer"
+ vs := "(PANIC=test panic)127"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+}
+
+func addErrorFormatterTests() {
+ // Type that has a custom Error interface.
+ v := customError(127)
+ nv := (*customError)(nil)
+ pv := &v
+ vAddr := fmt.Sprintf("%p", pv)
+ pvAddr := fmt.Sprintf("%p", &pv)
+ vt := "spew_test.customError"
+ vs := "error: 127"
+ addFormatterTest("%v", v, vs)
+ addFormatterTest("%v", pv, "<*>"+vs)
+ addFormatterTest("%v", &pv, "<**>"+vs)
+ addFormatterTest("%v", nv, "<nil>")
+ addFormatterTest("%+v", v, vs)
+ addFormatterTest("%+v", pv, "<*>("+vAddr+")"+vs)
+ addFormatterTest("%+v", &pv, "<**>("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%+v", nv, "<nil>")
+ addFormatterTest("%#v", v, "("+vt+")"+vs)
+ addFormatterTest("%#v", pv, "(*"+vt+")"+vs)
+ addFormatterTest("%#v", &pv, "(**"+vt+")"+vs)
+ addFormatterTest("%#v", nv, "(*"+vt+")"+"<nil>")
+ addFormatterTest("%#+v", v, "("+vt+")"+vs)
+ addFormatterTest("%#+v", pv, "(*"+vt+")("+vAddr+")"+vs)
+ addFormatterTest("%#+v", &pv, "(**"+vt+")("+pvAddr+"->"+vAddr+")"+vs)
+ addFormatterTest("%#+v", nv, "(*"+vt+")"+"<nil>")
+}
+
+func addPassthroughFormatterTests() {
+ // %x passthrough with uint.
+ v := uint(4294967295)
+ pv := &v
+ vAddr := fmt.Sprintf("%x", pv)
+ pvAddr := fmt.Sprintf("%x", &pv)
+ vs := "ffffffff"
+ addFormatterTest("%x", v, vs)
+ addFormatterTest("%x", pv, vAddr)
+ addFormatterTest("%x", &pv, pvAddr)
+
+ // %#x passthrough with uint.
+ v2 := int(2147483647)
+ pv2 := &v2
+ v2Addr := fmt.Sprintf("%#x", pv2)
+ pv2Addr := fmt.Sprintf("%#x", &pv2)
+ v2s := "0x7fffffff"
+ addFormatterTest("%#x", v2, v2s)
+ addFormatterTest("%#x", pv2, v2Addr)
+ addFormatterTest("%#x", &pv2, pv2Addr)
+
+ // %f passthrough with precision.
+ addFormatterTest("%.2f", 3.1415, "3.14")
+ addFormatterTest("%.3f", 3.1415, "3.142")
+ addFormatterTest("%.4f", 3.1415, "3.1415")
+
+ // %f passthrough with width and precision.
+ addFormatterTest("%5.2f", 3.1415, " 3.14")
+ addFormatterTest("%6.3f", 3.1415, " 3.142")
+ addFormatterTest("%7.4f", 3.1415, " 3.1415")
+
+ // %d passthrough with width.
+ addFormatterTest("%3d", 127, "127")
+ addFormatterTest("%4d", 127, " 127")
+ addFormatterTest("%5d", 127, " 127")
+
+ // %q passthrough with string.
+ addFormatterTest("%q", "test", "\"test\"")
+}
+
+// TestFormatter executes all of the tests described by formatterTests.
+func TestFormatter(t *testing.T) {
+ // Setup tests.
+ addIntFormatterTests()
+ addUintFormatterTests()
+ addBoolFormatterTests()
+ addFloatFormatterTests()
+ addComplexFormatterTests()
+ addArrayFormatterTests()
+ addSliceFormatterTests()
+ addStringFormatterTests()
+ addInterfaceFormatterTests()
+ addMapFormatterTests()
+ addStructFormatterTests()
+ addUintptrFormatterTests()
+ addUnsafePointerFormatterTests()
+ addChanFormatterTests()
+ addFuncFormatterTests()
+ addCircularFormatterTests()
+ addPanicFormatterTests()
+ addErrorFormatterTests()
+ addPassthroughFormatterTests()
+
+ t.Logf("Running %d tests", len(formatterTests))
+ for i, test := range formatterTests {
+ buf := new(bytes.Buffer)
+ spew.Fprintf(buf, test.format, test.in)
+ s := buf.String()
+ if testFailed(s, test.wants) {
+ t.Errorf("Formatter #%d format: %s got: %s %s", i, test.format, s,
+ stringizeWants(test.wants))
+ continue
+ }
+ }
+}
+
+type testStruct struct {
+ x int
+}
+
+func (ts testStruct) String() string {
+ return fmt.Sprintf("ts.%d", ts.x)
+}
+
+type testStructP struct {
+ x int
+}
+
+func (ts *testStructP) String() string {
+ return fmt.Sprintf("ts.%d", ts.x)
+}
+
+func TestPrintSortedKeys(t *testing.T) {
+ cfg := spew.ConfigState{SortKeys: true}
+ s := cfg.Sprint(map[int]string{1: "1", 3: "3", 2: "2"})
+ expected := "map[1:1 2:2 3:3]"
+ if s != expected {
+ t.Errorf("Sorted keys mismatch 1:\n %v %v", s, expected)
+ }
+
+ s = cfg.Sprint(map[stringer]int{"1": 1, "3": 3, "2": 2})
+ expected = "map[stringer 1:1 stringer 2:2 stringer 3:3]"
+ if s != expected {
+ t.Errorf("Sorted keys mismatch 2:\n %v %v", s, expected)
+ }
+
+ s = cfg.Sprint(map[pstringer]int{pstringer("1"): 1, pstringer("3"): 3, pstringer("2"): 2})
+ expected = "map[stringer 1:1 stringer 2:2 stringer 3:3]"
+ if spew.UnsafeDisabled {
+ expected = "map[1:1 2:2 3:3]"
+ }
+ if s != expected {
+ t.Errorf("Sorted keys mismatch 3:\n %v %v", s, expected)
+ }
+
+ s = cfg.Sprint(map[testStruct]int{testStruct{1}: 1, testStruct{3}: 3, testStruct{2}: 2})
+ expected = "map[ts.1:1 ts.2:2 ts.3:3]"
+ if s != expected {
+ t.Errorf("Sorted keys mismatch 4:\n %v %v", s, expected)
+ }
+
+ if !spew.UnsafeDisabled {
+ s = cfg.Sprint(map[testStructP]int{testStructP{1}: 1, testStructP{3}: 3, testStructP{2}: 2})
+ expected = "map[ts.1:1 ts.2:2 ts.3:3]"
+ if s != expected {
+ t.Errorf("Sorted keys mismatch 5:\n %v %v", s, expected)
+ }
+ }
+
+ s = cfg.Sprint(map[customError]int{customError(1): 1, customError(3): 3, customError(2): 2})
+ expected = "map[error: 1:1 error: 2:2 error: 3:3]"
+ if s != expected {
+ t.Errorf("Sorted keys mismatch 6:\n %v %v", s, expected)
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/internal_test.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/internal_test.go
new file mode 100644
index 000000000..1069ee21c
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/internal_test.go
@@ -0,0 +1,87 @@
+/*
+ * Copyright (c) 2013 Dave Collins <dave@davec.name>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+/*
+This test file is part of the spew package rather than than the spew_test
+package because it needs access to internals to properly test certain cases
+which are not possible via the public interface since they should never happen.
+*/
+
+package spew
+
+import (
+ "bytes"
+ "reflect"
+ "testing"
+)
+
+// dummyFmtState implements a fake fmt.State to use for testing invalid
+// reflect.Value handling. This is necessary because the fmt package catches
+// invalid values before invoking the formatter on them.
+type dummyFmtState struct {
+ bytes.Buffer
+}
+
+func (dfs *dummyFmtState) Flag(f int) bool {
+ if f == int('+') {
+ return true
+ }
+ return false
+}
+
+func (dfs *dummyFmtState) Precision() (int, bool) {
+ return 0, false
+}
+
+func (dfs *dummyFmtState) Width() (int, bool) {
+ return 0, false
+}
+
+// TestInvalidReflectValue ensures the dump and formatter code handles an
+// invalid reflect value properly. This needs access to internal state since it
+// should never happen in real code and therefore can't be tested via the public
+// API.
+func TestInvalidReflectValue(t *testing.T) {
+ i := 1
+
+ // Dump invalid reflect value.
+ v := new(reflect.Value)
+ buf := new(bytes.Buffer)
+ d := dumpState{w: buf, cs: &Config}
+ d.dump(*v)
+ s := buf.String()
+ want := "<invalid>"
+ if s != want {
+ t.Errorf("InvalidReflectValue #%d\n got: %s want: %s", i, s, want)
+ }
+ i++
+
+ // Formatter invalid reflect value.
+ buf2 := new(dummyFmtState)
+ f := formatState{value: *v, cs: &Config, fs: buf2}
+ f.format(*v)
+ s = buf2.String()
+ want = "<invalid>"
+ if s != want {
+ t.Errorf("InvalidReflectValue #%d got: %s want: %s", i, s, want)
+ }
+}
+
+// SortValues makes the internal sortValues function available to the test
+// package.
+func SortValues(values []reflect.Value, cs *ConfigState) {
+ sortValues(values, cs)
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/internalunsafe_test.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/internalunsafe_test.go
new file mode 100644
index 000000000..83e070e9a
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/internalunsafe_test.go
@@ -0,0 +1,101 @@
+// Copyright (c) 2013-2015 Dave Collins <dave@davec.name>
+
+// Permission to use, copy, modify, and distribute this software for any
+// purpose with or without fee is hereby granted, provided that the above
+// copyright notice and this permission notice appear in all copies.
+
+// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+// NOTE: Due to the following build constraints, this file will only be compiled
+// when the code is not running on Google App Engine and "-tags disableunsafe"
+// is not added to the go build command line.
+// +build !appengine,!disableunsafe
+
+/*
+This test file is part of the spew package rather than than the spew_test
+package because it needs access to internals to properly test certain cases
+which are not possible via the public interface since they should never happen.
+*/
+
+package spew
+
+import (
+ "bytes"
+ "reflect"
+ "testing"
+ "unsafe"
+)
+
+// changeKind uses unsafe to intentionally change the kind of a reflect.Value to
+// the maximum kind value which does not exist. This is needed to test the
+// fallback code which punts to the standard fmt library for new types that
+// might get added to the language.
+func changeKind(v *reflect.Value, readOnly bool) {
+ rvf := (*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(v)) + offsetFlag))
+ *rvf = *rvf | ((1<<flagKindWidth - 1) << flagKindShift)
+ if readOnly {
+ *rvf |= flagRO
+ } else {
+ *rvf &= ^uintptr(flagRO)
+ }
+}
+
+// TestAddedReflectValue tests functionaly of the dump and formatter code which
+// falls back to the standard fmt library for new types that might get added to
+// the language.
+func TestAddedReflectValue(t *testing.T) {
+ i := 1
+
+ // Dump using a reflect.Value that is exported.
+ v := reflect.ValueOf(int8(5))
+ changeKind(&v, false)
+ buf := new(bytes.Buffer)
+ d := dumpState{w: buf, cs: &Config}
+ d.dump(v)
+ s := buf.String()
+ want := "(int8) 5"
+ if s != want {
+ t.Errorf("TestAddedReflectValue #%d\n got: %s want: %s", i, s, want)
+ }
+ i++
+
+ // Dump using a reflect.Value that is not exported.
+ changeKind(&v, true)
+ buf.Reset()
+ d.dump(v)
+ s = buf.String()
+ want = "(int8) <int8 Value>"
+ if s != want {
+ t.Errorf("TestAddedReflectValue #%d\n got: %s want: %s", i, s, want)
+ }
+ i++
+
+ // Formatter using a reflect.Value that is exported.
+ changeKind(&v, false)
+ buf2 := new(dummyFmtState)
+ f := formatState{value: v, cs: &Config, fs: buf2}
+ f.format(v)
+ s = buf2.String()
+ want = "5"
+ if s != want {
+ t.Errorf("TestAddedReflectValue #%d got: %s want: %s", i, s, want)
+ }
+ i++
+
+ // Formatter using a reflect.Value that is not exported.
+ changeKind(&v, true)
+ buf2.Reset()
+ f = formatState{value: v, cs: &Config, fs: buf2}
+ f.format(v)
+ s = buf2.String()
+ want = "<int8 Value>"
+ if s != want {
+ t.Errorf("TestAddedReflectValue #%d got: %s want: %s", i, s, want)
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/spew.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/spew.go
new file mode 100644
index 000000000..d8233f542
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/spew.go
@@ -0,0 +1,148 @@
+/*
+ * Copyright (c) 2013 Dave Collins <dave@davec.name>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+package spew
+
+import (
+ "fmt"
+ "io"
+)
+
+// Errorf is a wrapper for fmt.Errorf that treats each argument as if it were
+// passed with a default Formatter interface returned by NewFormatter. It
+// returns the formatted string as a value that satisfies error. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Errorf(format, spew.NewFormatter(a), spew.NewFormatter(b))
+func Errorf(format string, a ...interface{}) (err error) {
+ return fmt.Errorf(format, convertArgs(a)...)
+}
+
+// Fprint is a wrapper for fmt.Fprint that treats each argument as if it were
+// passed with a default Formatter interface returned by NewFormatter. It
+// returns the number of bytes written and any write error encountered. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Fprint(w, spew.NewFormatter(a), spew.NewFormatter(b))
+func Fprint(w io.Writer, a ...interface{}) (n int, err error) {
+ return fmt.Fprint(w, convertArgs(a)...)
+}
+
+// Fprintf is a wrapper for fmt.Fprintf that treats each argument as if it were
+// passed with a default Formatter interface returned by NewFormatter. It
+// returns the number of bytes written and any write error encountered. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Fprintf(w, format, spew.NewFormatter(a), spew.NewFormatter(b))
+func Fprintf(w io.Writer, format string, a ...interface{}) (n int, err error) {
+ return fmt.Fprintf(w, format, convertArgs(a)...)
+}
+
+// Fprintln is a wrapper for fmt.Fprintln that treats each argument as if it
+// passed with a default Formatter interface returned by NewFormatter. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Fprintln(w, spew.NewFormatter(a), spew.NewFormatter(b))
+func Fprintln(w io.Writer, a ...interface{}) (n int, err error) {
+ return fmt.Fprintln(w, convertArgs(a)...)
+}
+
+// Print is a wrapper for fmt.Print that treats each argument as if it were
+// passed with a default Formatter interface returned by NewFormatter. It
+// returns the number of bytes written and any write error encountered. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Print(spew.NewFormatter(a), spew.NewFormatter(b))
+func Print(a ...interface{}) (n int, err error) {
+ return fmt.Print(convertArgs(a)...)
+}
+
+// Printf is a wrapper for fmt.Printf that treats each argument as if it were
+// passed with a default Formatter interface returned by NewFormatter. It
+// returns the number of bytes written and any write error encountered. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Printf(format, spew.NewFormatter(a), spew.NewFormatter(b))
+func Printf(format string, a ...interface{}) (n int, err error) {
+ return fmt.Printf(format, convertArgs(a)...)
+}
+
+// Println is a wrapper for fmt.Println that treats each argument as if it were
+// passed with a default Formatter interface returned by NewFormatter. It
+// returns the number of bytes written and any write error encountered. See
+// NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Println(spew.NewFormatter(a), spew.NewFormatter(b))
+func Println(a ...interface{}) (n int, err error) {
+ return fmt.Println(convertArgs(a)...)
+}
+
+// Sprint is a wrapper for fmt.Sprint that treats each argument as if it were
+// passed with a default Formatter interface returned by NewFormatter. It
+// returns the resulting string. See NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Sprint(spew.NewFormatter(a), spew.NewFormatter(b))
+func Sprint(a ...interface{}) string {
+ return fmt.Sprint(convertArgs(a)...)
+}
+
+// Sprintf is a wrapper for fmt.Sprintf that treats each argument as if it were
+// passed with a default Formatter interface returned by NewFormatter. It
+// returns the resulting string. See NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Sprintf(format, spew.NewFormatter(a), spew.NewFormatter(b))
+func Sprintf(format string, a ...interface{}) string {
+ return fmt.Sprintf(format, convertArgs(a)...)
+}
+
+// Sprintln is a wrapper for fmt.Sprintln that treats each argument as if it
+// were passed with a default Formatter interface returned by NewFormatter. It
+// returns the resulting string. See NewFormatter for formatting details.
+//
+// This function is shorthand for the following syntax:
+//
+// fmt.Sprintln(spew.NewFormatter(a), spew.NewFormatter(b))
+func Sprintln(a ...interface{}) string {
+ return fmt.Sprintln(convertArgs(a)...)
+}
+
+// convertArgs accepts a slice of arguments and returns a slice of the same
+// length with each argument converted to a default spew Formatter interface.
+func convertArgs(args []interface{}) (formatters []interface{}) {
+ formatters = make([]interface{}, len(args))
+ for index, arg := range args {
+ formatters[index] = NewFormatter(arg)
+ }
+ return formatters
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/spew_test.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/spew_test.go
new file mode 100644
index 000000000..ada4256b0
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/spew_test.go
@@ -0,0 +1,309 @@
+/*
+ * Copyright (c) 2013 Dave Collins <dave@davec.name>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+package spew_test
+
+import (
+ "bytes"
+ "fmt"
+ "io/ioutil"
+ "os"
+ "testing"
+
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/davecgh/go-spew/spew"
+)
+
+// spewFunc is used to identify which public function of the spew package or
+// ConfigState a test applies to.
+type spewFunc int
+
+const (
+ fCSFdump spewFunc = iota
+ fCSFprint
+ fCSFprintf
+ fCSFprintln
+ fCSPrint
+ fCSPrintln
+ fCSSdump
+ fCSSprint
+ fCSSprintf
+ fCSSprintln
+ fCSErrorf
+ fCSNewFormatter
+ fErrorf
+ fFprint
+ fFprintln
+ fPrint
+ fPrintln
+ fSdump
+ fSprint
+ fSprintf
+ fSprintln
+)
+
+// Map of spewFunc values to names for pretty printing.
+var spewFuncStrings = map[spewFunc]string{
+ fCSFdump: "ConfigState.Fdump",
+ fCSFprint: "ConfigState.Fprint",
+ fCSFprintf: "ConfigState.Fprintf",
+ fCSFprintln: "ConfigState.Fprintln",
+ fCSSdump: "ConfigState.Sdump",
+ fCSPrint: "ConfigState.Print",
+ fCSPrintln: "ConfigState.Println",
+ fCSSprint: "ConfigState.Sprint",
+ fCSSprintf: "ConfigState.Sprintf",
+ fCSSprintln: "ConfigState.Sprintln",
+ fCSErrorf: "ConfigState.Errorf",
+ fCSNewFormatter: "ConfigState.NewFormatter",
+ fErrorf: "spew.Errorf",
+ fFprint: "spew.Fprint",
+ fFprintln: "spew.Fprintln",
+ fPrint: "spew.Print",
+ fPrintln: "spew.Println",
+ fSdump: "spew.Sdump",
+ fSprint: "spew.Sprint",
+ fSprintf: "spew.Sprintf",
+ fSprintln: "spew.Sprintln",
+}
+
+func (f spewFunc) String() string {
+ if s, ok := spewFuncStrings[f]; ok {
+ return s
+ }
+ return fmt.Sprintf("Unknown spewFunc (%d)", int(f))
+}
+
+// spewTest is used to describe a test to be performed against the public
+// functions of the spew package or ConfigState.
+type spewTest struct {
+ cs *spew.ConfigState
+ f spewFunc
+ format string
+ in interface{}
+ want string
+}
+
+// spewTests houses the tests to be performed against the public functions of
+// the spew package and ConfigState.
+//
+// These tests are only intended to ensure the public functions are exercised
+// and are intentionally not exhaustive of types. The exhaustive type
+// tests are handled in the dump and format tests.
+var spewTests []spewTest
+
+// redirStdout is a helper function to return the standard output from f as a
+// byte slice.
+func redirStdout(f func()) ([]byte, error) {
+ tempFile, err := ioutil.TempFile("", "ss-test")
+ if err != nil {
+ return nil, err
+ }
+ fileName := tempFile.Name()
+ defer os.Remove(fileName) // Ignore error
+
+ origStdout := os.Stdout
+ os.Stdout = tempFile
+ f()
+ os.Stdout = origStdout
+ tempFile.Close()
+
+ return ioutil.ReadFile(fileName)
+}
+
+func initSpewTests() {
+ // Config states with various settings.
+ scsDefault := spew.NewDefaultConfig()
+ scsNoMethods := &spew.ConfigState{Indent: " ", DisableMethods: true}
+ scsNoPmethods := &spew.ConfigState{Indent: " ", DisablePointerMethods: true}
+ scsMaxDepth := &spew.ConfigState{Indent: " ", MaxDepth: 1}
+ scsContinue := &spew.ConfigState{Indent: " ", ContinueOnMethod: true}
+
+ // Variables for tests on types which implement Stringer interface with and
+ // without a pointer receiver.
+ ts := stringer("test")
+ tps := pstringer("test")
+
+ // depthTester is used to test max depth handling for structs, array, slices
+ // and maps.
+ type depthTester struct {
+ ic indirCir1
+ arr [1]string
+ slice []string
+ m map[string]int
+ }
+ dt := depthTester{indirCir1{nil}, [1]string{"arr"}, []string{"slice"},
+ map[string]int{"one": 1}}
+
+ // Variable for tests on types which implement error interface.
+ te := customError(10)
+
+ spewTests = []spewTest{
+ {scsDefault, fCSFdump, "", int8(127), "(int8) 127\n"},
+ {scsDefault, fCSFprint, "", int16(32767), "32767"},
+ {scsDefault, fCSFprintf, "%v", int32(2147483647), "2147483647"},
+ {scsDefault, fCSFprintln, "", int(2147483647), "2147483647\n"},
+ {scsDefault, fCSPrint, "", int64(9223372036854775807), "9223372036854775807"},
+ {scsDefault, fCSPrintln, "", uint8(255), "255\n"},
+ {scsDefault, fCSSdump, "", uint8(64), "(uint8) 64\n"},
+ {scsDefault, fCSSprint, "", complex(1, 2), "(1+2i)"},
+ {scsDefault, fCSSprintf, "%v", complex(float32(3), 4), "(3+4i)"},
+ {scsDefault, fCSSprintln, "", complex(float64(5), 6), "(5+6i)\n"},
+ {scsDefault, fCSErrorf, "%#v", uint16(65535), "(uint16)65535"},
+ {scsDefault, fCSNewFormatter, "%v", uint32(4294967295), "4294967295"},
+ {scsDefault, fErrorf, "%v", uint64(18446744073709551615), "18446744073709551615"},
+ {scsDefault, fFprint, "", float32(3.14), "3.14"},
+ {scsDefault, fFprintln, "", float64(6.28), "6.28\n"},
+ {scsDefault, fPrint, "", true, "true"},
+ {scsDefault, fPrintln, "", false, "false\n"},
+ {scsDefault, fSdump, "", complex(-10, -20), "(complex128) (-10-20i)\n"},
+ {scsDefault, fSprint, "", complex(-1, -2), "(-1-2i)"},
+ {scsDefault, fSprintf, "%v", complex(float32(-3), -4), "(-3-4i)"},
+ {scsDefault, fSprintln, "", complex(float64(-5), -6), "(-5-6i)\n"},
+ {scsNoMethods, fCSFprint, "", ts, "test"},
+ {scsNoMethods, fCSFprint, "", &ts, "<*>test"},
+ {scsNoMethods, fCSFprint, "", tps, "test"},
+ {scsNoMethods, fCSFprint, "", &tps, "<*>test"},
+ {scsNoPmethods, fCSFprint, "", ts, "stringer test"},
+ {scsNoPmethods, fCSFprint, "", &ts, "<*>stringer test"},
+ {scsNoPmethods, fCSFprint, "", tps, "test"},
+ {scsNoPmethods, fCSFprint, "", &tps, "<*>stringer test"},
+ {scsMaxDepth, fCSFprint, "", dt, "{{<max>} [<max>] [<max>] map[<max>]}"},
+ {scsMaxDepth, fCSFdump, "", dt, "(spew_test.depthTester) {\n" +
+ " ic: (spew_test.indirCir1) {\n <max depth reached>\n },\n" +
+ " arr: ([1]string) (len=1 cap=1) {\n <max depth reached>\n },\n" +
+ " slice: ([]string) (len=1 cap=1) {\n <max depth reached>\n },\n" +
+ " m: (map[string]int) (len=1) {\n <max depth reached>\n }\n}\n"},
+ {scsContinue, fCSFprint, "", ts, "(stringer test) test"},
+ {scsContinue, fCSFdump, "", ts, "(spew_test.stringer) " +
+ "(len=4) (stringer test) \"test\"\n"},
+ {scsContinue, fCSFprint, "", te, "(error: 10) 10"},
+ {scsContinue, fCSFdump, "", te, "(spew_test.customError) " +
+ "(error: 10) 10\n"},
+ }
+}
+
+// TestSpew executes all of the tests described by spewTests.
+func TestSpew(t *testing.T) {
+ initSpewTests()
+
+ t.Logf("Running %d tests", len(spewTests))
+ for i, test := range spewTests {
+ buf := new(bytes.Buffer)
+ switch test.f {
+ case fCSFdump:
+ test.cs.Fdump(buf, test.in)
+
+ case fCSFprint:
+ test.cs.Fprint(buf, test.in)
+
+ case fCSFprintf:
+ test.cs.Fprintf(buf, test.format, test.in)
+
+ case fCSFprintln:
+ test.cs.Fprintln(buf, test.in)
+
+ case fCSPrint:
+ b, err := redirStdout(func() { test.cs.Print(test.in) })
+ if err != nil {
+ t.Errorf("%v #%d %v", test.f, i, err)
+ continue
+ }
+ buf.Write(b)
+
+ case fCSPrintln:
+ b, err := redirStdout(func() { test.cs.Println(test.in) })
+ if err != nil {
+ t.Errorf("%v #%d %v", test.f, i, err)
+ continue
+ }
+ buf.Write(b)
+
+ case fCSSdump:
+ str := test.cs.Sdump(test.in)
+ buf.WriteString(str)
+
+ case fCSSprint:
+ str := test.cs.Sprint(test.in)
+ buf.WriteString(str)
+
+ case fCSSprintf:
+ str := test.cs.Sprintf(test.format, test.in)
+ buf.WriteString(str)
+
+ case fCSSprintln:
+ str := test.cs.Sprintln(test.in)
+ buf.WriteString(str)
+
+ case fCSErrorf:
+ err := test.cs.Errorf(test.format, test.in)
+ buf.WriteString(err.Error())
+
+ case fCSNewFormatter:
+ fmt.Fprintf(buf, test.format, test.cs.NewFormatter(test.in))
+
+ case fErrorf:
+ err := spew.Errorf(test.format, test.in)
+ buf.WriteString(err.Error())
+
+ case fFprint:
+ spew.Fprint(buf, test.in)
+
+ case fFprintln:
+ spew.Fprintln(buf, test.in)
+
+ case fPrint:
+ b, err := redirStdout(func() { spew.Print(test.in) })
+ if err != nil {
+ t.Errorf("%v #%d %v", test.f, i, err)
+ continue
+ }
+ buf.Write(b)
+
+ case fPrintln:
+ b, err := redirStdout(func() { spew.Println(test.in) })
+ if err != nil {
+ t.Errorf("%v #%d %v", test.f, i, err)
+ continue
+ }
+ buf.Write(b)
+
+ case fSdump:
+ str := spew.Sdump(test.in)
+ buf.WriteString(str)
+
+ case fSprint:
+ str := spew.Sprint(test.in)
+ buf.WriteString(str)
+
+ case fSprintf:
+ str := spew.Sprintf(test.format, test.in)
+ buf.WriteString(str)
+
+ case fSprintln:
+ str := spew.Sprintln(test.in)
+ buf.WriteString(str)
+
+ default:
+ t.Errorf("%v #%d unrecognized function", test.f, i)
+ continue
+ }
+ s := buf.String()
+ if test.want != s {
+ t.Errorf("ConfigState #%d\n got: %s want: %s", i, s, test.want)
+ continue
+ }
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/testdata/dumpcgo.go b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/testdata/dumpcgo.go
new file mode 100644
index 000000000..5c87dd456
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/davecgh/go-spew/spew/testdata/dumpcgo.go
@@ -0,0 +1,82 @@
+// Copyright (c) 2013 Dave Collins <dave@davec.name>
+//
+// Permission to use, copy, modify, and distribute this software for any
+// purpose with or without fee is hereby granted, provided that the above
+// copyright notice and this permission notice appear in all copies.
+//
+// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+// NOTE: Due to the following build constraints, this file will only be compiled
+// when both cgo is supported and "-tags testcgo" is added to the go test
+// command line. This code should really only be in the dumpcgo_test.go file,
+// but unfortunately Go will not allow cgo in test files, so this is a
+// workaround to allow cgo types to be tested. This configuration is used
+// because spew itself does not require cgo to run even though it does handle
+// certain cgo types specially. Rather than forcing all clients to require cgo
+// and an external C compiler just to run the tests, this scheme makes them
+// optional.
+// +build cgo,testcgo
+
+package testdata
+
+/*
+#include <stdint.h>
+typedef unsigned char custom_uchar_t;
+
+char *ncp = 0;
+char *cp = "test";
+char ca[6] = {'t', 'e', 's', 't', '2', '\0'};
+unsigned char uca[6] = {'t', 'e', 's', 't', '3', '\0'};
+signed char sca[6] = {'t', 'e', 's', 't', '4', '\0'};
+uint8_t ui8ta[6] = {'t', 'e', 's', 't', '5', '\0'};
+custom_uchar_t tuca[6] = {'t', 'e', 's', 't', '6', '\0'};
+*/
+import "C"
+
+// GetCgoNullCharPointer returns a null char pointer via cgo. This is only
+// used for tests.
+func GetCgoNullCharPointer() interface{} {
+ return C.ncp
+}
+
+// GetCgoCharPointer returns a char pointer via cgo. This is only used for
+// tests.
+func GetCgoCharPointer() interface{} {
+ return C.cp
+}
+
+// GetCgoCharArray returns a char array via cgo and the array's len and cap.
+// This is only used for tests.
+func GetCgoCharArray() (interface{}, int, int) {
+ return C.ca, len(C.ca), cap(C.ca)
+}
+
+// GetCgoUnsignedCharArray returns an unsigned char array via cgo and the
+// array's len and cap. This is only used for tests.
+func GetCgoUnsignedCharArray() (interface{}, int, int) {
+ return C.uca, len(C.uca), cap(C.uca)
+}
+
+// GetCgoSignedCharArray returns a signed char array via cgo and the array's len
+// and cap. This is only used for tests.
+func GetCgoSignedCharArray() (interface{}, int, int) {
+ return C.sca, len(C.sca), cap(C.sca)
+}
+
+// GetCgoUint8tArray returns a uint8_t array via cgo and the array's len and
+// cap. This is only used for tests.
+func GetCgoUint8tArray() (interface{}, int, int) {
+ return C.ui8ta, len(C.ui8ta), cap(C.ui8ta)
+}
+
+// GetCgoTypdefedUnsignedCharArray returns a typedefed unsigned char array via
+// cgo and the array's len and cap. This is only used for tests.
+func GetCgoTypdefedUnsignedCharArray() (interface{}, int, int) {
+ return C.tuca, len(C.tuca), cap(C.tuca)
+}
diff --git a/Godeps/_workspace/src/github.com/disintegration/imaging/README.md b/Godeps/_workspace/src/github.com/disintegration/imaging/README.md
index 16ac8cf6c..25d836cef 100644
--- a/Godeps/_workspace/src/github.com/disintegration/imaging/README.md
+++ b/Godeps/_workspace/src/github.com/disintegration/imaging/README.md
@@ -32,8 +32,8 @@ dstImage800 := imaging.Resize(srcImage, 800, 0, imaging.Lanczos)
// scale down srcImage to fit the 800x600px bounding box
dstImageFit := imaging.Fit(srcImage, 800, 600, imaging.Lanczos)
-// resize and crop the srcImage to make a 100x100px thumbnail
-dstImageThumb := imaging.Thumbnail(srcImage, 100, 100, imaging.Lanczos)
+// resize and crop the srcImage to fill the 100x100px area
+dstImageFill := imaging.Fill(srcImage, 100, 100, imaging.Center, imaging.Lanczos)
```
Imaging supports image resizing using various resampling filters. The most notable ones:
@@ -63,6 +63,40 @@ Filter | Resize result
`imaging.Gaussian` | ![dstImage](http://disintegration.github.io/imaging/out_resize_down_gaussian.png)
`imaging.Lanczos` | ![dstImage](http://disintegration.github.io/imaging/out_resize_down_lanczos.png)
+**Resize functions comparison**
+
+Original image:
+
+![srcImage](http://disintegration.github.io/imaging/in.jpg)
+
+Resize the image to width=100px and height=100px:
+
+```go
+dstImage := imaging.Resize(srcImage, 100, 100, imaging.Lanczos)
+```
+![dstImage](http://disintegration.github.io/imaging/out-comp-resize.jpg)
+
+Resize the image to width=100px preserving the aspect ratio:
+
+```go
+dstImage := imaging.Resize(srcImage, 100, 0, imaging.Lanczos)
+```
+![dstImage](http://disintegration.github.io/imaging/out-comp-fit.jpg)
+
+Resize the image to fit the 100x100px boundng box preserving the aspect ratio:
+
+```go
+dstImage := imaging.Fit(srcImage, 100, 100, imaging.Lanczos)
+```
+![dstImage](http://disintegration.github.io/imaging/out-comp-fit.jpg)
+
+Resize and crop the image with a center anchor point to fill the 100x100px area:
+
+```go
+dstImage := imaging.Fill(srcImage, 100, 100, imaging.Center, imaging.Lanczos)
+```
+![dstImage](http://disintegration.github.io/imaging/out-comp-fill.jpg)
+
### Gaussian Blur
```go
dstImage := imaging.Blur(srcImage, 0.5)
diff --git a/Godeps/_workspace/src/github.com/disintegration/imaging/adjust_test.go b/Godeps/_workspace/src/github.com/disintegration/imaging/adjust_test.go
new file mode 100644
index 000000000..99898b0dc
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/disintegration/imaging/adjust_test.go
@@ -0,0 +1,504 @@
+package imaging
+
+import (
+ "image"
+ "testing"
+)
+
+func TestGrayscale(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ want *image.NRGBA
+ }{
+ {
+ "Grayscale 3x3",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x3d, 0x3d, 0x3d, 0x01, 0x78, 0x78, 0x78, 0x02, 0x17, 0x17, 0x17, 0x03,
+ 0x1f, 0x1f, 0x1f, 0xff, 0x25, 0x25, 0x25, 0xff, 0x66, 0x66, 0x66, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Grayscale(d.src)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestInvert(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ want *image.NRGBA
+ }{
+ {
+ "Invert 3x3",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x33, 0xff, 0xff, 0x01, 0xff, 0x33, 0xff, 0x02, 0xff, 0xff, 0x33, 0x03,
+ 0xee, 0xdd, 0xcc, 0xff, 0xcc, 0xdd, 0xee, 0xff, 0x55, 0xcc, 0x44, 0xff,
+ 0xff, 0xff, 0xff, 0xff, 0xcc, 0xcc, 0xcc, 0xff, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Invert(d.src)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestAdjustContrast(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ p float64
+ want *image.NRGBA
+ }{
+ {
+ "AdjustContrast 3x3 10",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 10,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xd5, 0x00, 0x00, 0x01, 0x00, 0xd5, 0x00, 0x02, 0x00, 0x00, 0xd5, 0x03,
+ 0x05, 0x18, 0x2b, 0xff, 0x2b, 0x18, 0x05, 0xff, 0xaf, 0x2b, 0xc2, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x2b, 0x2b, 0x2b, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ {
+ "AdjustContrast 3x3 100",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 100,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xff, 0x00, 0x00, 0x01, 0x00, 0xff, 0x00, 0x02, 0x00, 0x00, 0xff, 0x03,
+ 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ {
+ "AdjustContrast 3x3 -10",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ -10,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xc4, 0x0d, 0x0d, 0x01, 0x0d, 0xc4, 0x0d, 0x02, 0x0d, 0x0d, 0xc4, 0x03,
+ 0x1c, 0x2b, 0x3b, 0xff, 0x3b, 0x2b, 0x1c, 0xff, 0xa6, 0x3b, 0xb5, 0xff,
+ 0x0d, 0x0d, 0x0d, 0xff, 0x3b, 0x3b, 0x3b, 0xff, 0xf2, 0xf2, 0xf2, 0xff,
+ },
+ },
+ },
+ {
+ "AdjustContrast 3x3 -100",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ -100,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x80, 0x80, 0x80, 0x01, 0x80, 0x80, 0x80, 0x02, 0x80, 0x80, 0x80, 0x03,
+ 0x80, 0x80, 0x80, 0xff, 0x80, 0x80, 0x80, 0xff, 0x80, 0x80, 0x80, 0xff,
+ 0x80, 0x80, 0x80, 0xff, 0x80, 0x80, 0x80, 0xff, 0x80, 0x80, 0x80, 0xff,
+ },
+ },
+ },
+ {
+ "AdjustContrast 3x3 0",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 0,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := AdjustContrast(d.src, d.p)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestAdjustBrightness(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ p float64
+ want *image.NRGBA
+ }{
+ {
+ "AdjustBrightness 3x3 10",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 10,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xe6, 0x1a, 0x1a, 0x01, 0x1a, 0xe6, 0x1a, 0x02, 0x1a, 0x1a, 0xe6, 0x03,
+ 0x2b, 0x3c, 0x4d, 0xff, 0x4d, 0x3c, 0x2b, 0xff, 0xc4, 0x4d, 0xd5, 0xff,
+ 0x1a, 0x1a, 0x1a, 0xff, 0x4d, 0x4d, 0x4d, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ {
+ "AdjustBrightness 3x3 100",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 100,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0x02, 0xff, 0xff, 0xff, 0x03,
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ {
+ "AdjustBrightness 3x3 -10",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ -10,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xb3, 0x00, 0x00, 0x01, 0x00, 0xb3, 0x00, 0x02, 0x00, 0x00, 0xb3, 0x03,
+ 0x00, 0x09, 0x1a, 0xff, 0x1a, 0x09, 0x00, 0xff, 0x91, 0x1a, 0xa2, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x1a, 0x1a, 0x1a, 0xff, 0xe6, 0xe6, 0xe6, 0xff,
+ },
+ },
+ },
+ {
+ "AdjustBrightness 3x3 -100",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ -100,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03,
+ 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ },
+ {
+ "AdjustBrightness 3x3 0",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 0,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := AdjustBrightness(d.src, d.p)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestAdjustGamma(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ p float64
+ want *image.NRGBA
+ }{
+ {
+ "AdjustGamma 3x3 0.75",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 0.75,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xbd, 0x00, 0x00, 0x01, 0x00, 0xbd, 0x00, 0x02, 0x00, 0x00, 0xbd, 0x03,
+ 0x07, 0x11, 0x1e, 0xff, 0x1e, 0x11, 0x07, 0xff, 0x95, 0x1e, 0xa9, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x1e, 0x1e, 0x1e, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ {
+ "AdjustGamma 3x3 1.5",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 1.5,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xdc, 0x00, 0x00, 0x01, 0x00, 0xdc, 0x00, 0x02, 0x00, 0x00, 0xdc, 0x03,
+ 0x2a, 0x43, 0x57, 0xff, 0x57, 0x43, 0x2a, 0xff, 0xc3, 0x57, 0xcf, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x57, 0x57, 0x57, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ {
+ "AdjustGamma 3x3 1.0",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 1.0,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := AdjustGamma(d.src, d.p)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestAdjustSigmoid(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ m float64
+ p float64
+ want *image.NRGBA
+ }{
+ {
+ "AdjustSigmoid 3x3 0.5 3.0",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 0.5,
+ 3.0,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xd4, 0x00, 0x00, 0x01, 0x00, 0xd4, 0x00, 0x02, 0x00, 0x00, 0xd4, 0x03,
+ 0x0d, 0x1b, 0x2b, 0xff, 0x2b, 0x1b, 0x0d, 0xff, 0xb1, 0x2b, 0xc3, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x2b, 0x2b, 0x2b, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ {
+ "AdjustSigmoid 3x3 0.5 -3.0",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 0.5,
+ -3.0,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xc4, 0x00, 0x00, 0x01, 0x00, 0xc4, 0x00, 0x02, 0x00, 0x00, 0xc4, 0x03,
+ 0x16, 0x2a, 0x3b, 0xff, 0x3b, 0x2a, 0x16, 0xff, 0xa4, 0x3b, 0xb3, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x3b, 0x3b, 0x3b, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ {
+ "AdjustSigmoid 3x3 0.5 0.0",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 0.5,
+ 0.0,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0x00, 0x00, 0x01, 0x00, 0xcc, 0x00, 0x02, 0x00, 0x00, 0xcc, 0x03,
+ 0x11, 0x22, 0x33, 0xff, 0x33, 0x22, 0x11, 0xff, 0xaa, 0x33, 0xbb, 0xff,
+ 0x00, 0x00, 0x00, 0xff, 0x33, 0x33, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := AdjustSigmoid(d.src, d.m, d.p)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/disintegration/imaging/effects_test.go b/Godeps/_workspace/src/github.com/disintegration/imaging/effects_test.go
new file mode 100644
index 000000000..b7de0974c
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/disintegration/imaging/effects_test.go
@@ -0,0 +1,128 @@
+package imaging
+
+import (
+ "image"
+ "testing"
+)
+
+func TestBlur(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ sigma float64
+ want *image.NRGBA
+ }{
+ {
+ "Blur 3x3 0.5",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x66, 0xaa, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ },
+ },
+ 0.5,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x01, 0x02, 0x04, 0x04, 0x0a, 0x10, 0x18, 0x18, 0x01, 0x02, 0x04, 0x04,
+ 0x09, 0x10, 0x18, 0x18, 0x3f, 0x69, 0x9e, 0x9e, 0x09, 0x10, 0x18, 0x18,
+ 0x01, 0x02, 0x04, 0x04, 0x0a, 0x10, 0x18, 0x18, 0x01, 0x02, 0x04, 0x04,
+ },
+ },
+ },
+ {
+
+ "Blur 3x3 10",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x66, 0xaa, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ },
+ },
+ 10,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x0b, 0x13, 0x1c, 0x1c, 0x0b, 0x13, 0x1c, 0x1c, 0x0b, 0x13, 0x1c, 0x1c,
+ 0x0b, 0x13, 0x1c, 0x1c, 0x0b, 0x13, 0x1c, 0x1c, 0x0b, 0x13, 0x1c, 0x1c,
+ 0x0b, 0x13, 0x1c, 0x1c, 0x0b, 0x13, 0x1c, 0x1c, 0x0b, 0x13, 0x1c, 0x1c,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Blur(d.src, d.sigma)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestSharpen(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ sigma float64
+ want *image.NRGBA
+ }{
+ {
+ "Sharpen 3x3 0.5",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
+ 0x66, 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, 0x66, 0x66,
+ 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
+ },
+ },
+ 0.5,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x66, 0x66, 0x66, 0x66, 0x64, 0x64, 0x64, 0x64, 0x66, 0x66, 0x66, 0x66,
+ 0x64, 0x64, 0x64, 0x64, 0x7e, 0x7e, 0x7e, 0x7e, 0x64, 0x64, 0x64, 0x64,
+ 0x66, 0x66, 0x66, 0x66, 0x64, 0x64, 0x64, 0x64, 0x66, 0x66, 0x66, 0x66},
+ },
+ },
+ {
+
+ "Sharpen 3x3 10",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
+ 0x66, 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, 0x66, 0x66,
+ 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66},
+ },
+ 100,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 3),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64,
+ 0x64, 0x64, 0x64, 0x64, 0x86, 0x86, 0x86, 0x86, 0x64, 0x64, 0x64, 0x64,
+ 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Sharpen(d.src, d.sigma)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/disintegration/imaging/helpers.go b/Godeps/_workspace/src/github.com/disintegration/imaging/helpers.go
index 983b64d71..247962f2d 100644
--- a/Godeps/_workspace/src/github.com/disintegration/imaging/helpers.go
+++ b/Godeps/_workspace/src/github.com/disintegration/imaging/helpers.go
@@ -20,8 +20,8 @@ import (
"path/filepath"
"strings"
- "golang.org/x/image/bmp"
- "golang.org/x/image/tiff"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/bmp"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/tiff"
)
type Format int
@@ -226,9 +226,13 @@ func Clone(img image.Image) *image.NRGBA {
dst.Pix[di+1] = src.Pix[si+1]
dst.Pix[di+2] = src.Pix[si+2]
default:
- dst.Pix[di+0] = uint8(uint16(src.Pix[si+0]) * 0xff / uint16(a))
- dst.Pix[di+1] = uint8(uint16(src.Pix[si+1]) * 0xff / uint16(a))
- dst.Pix[di+2] = uint8(uint16(src.Pix[si+2]) * 0xff / uint16(a))
+ var tmp uint16
+ tmp = uint16(src.Pix[si+0]) * 0xff / uint16(a)
+ dst.Pix[di+0] = uint8(tmp)
+ tmp = uint16(src.Pix[si+1]) * 0xff / uint16(a)
+ dst.Pix[di+1] = uint8(tmp)
+ tmp = uint16(src.Pix[si+2]) * 0xff / uint16(a)
+ dst.Pix[di+2] = uint8(tmp)
}
di += 4
@@ -257,9 +261,13 @@ func Clone(img image.Image) *image.NRGBA {
dst.Pix[di+1] = src.Pix[si+2]
dst.Pix[di+2] = src.Pix[si+4]
default:
- dst.Pix[di+0] = uint8(uint16(src.Pix[si+0]) * 0xff / uint16(a))
- dst.Pix[di+1] = uint8(uint16(src.Pix[si+2]) * 0xff / uint16(a))
- dst.Pix[di+2] = uint8(uint16(src.Pix[si+4]) * 0xff / uint16(a))
+ var tmp uint16
+ tmp = uint16(src.Pix[si+0]) * 0xff / uint16(a)
+ dst.Pix[di+0] = uint8(tmp)
+ tmp = uint16(src.Pix[si+2]) * 0xff / uint16(a)
+ dst.Pix[di+1] = uint8(tmp)
+ tmp = uint16(src.Pix[si+4]) * 0xff / uint16(a)
+ dst.Pix[di+2] = uint8(tmp)
}
di += 4
diff --git a/Godeps/_workspace/src/github.com/disintegration/imaging/helpers_test.go b/Godeps/_workspace/src/github.com/disintegration/imaging/helpers_test.go
new file mode 100644
index 000000000..2d611a008
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/disintegration/imaging/helpers_test.go
@@ -0,0 +1,361 @@
+package imaging
+
+import (
+ "bytes"
+ "image"
+ "image/color"
+ "testing"
+)
+
+func compareNRGBA(img1, img2 *image.NRGBA, delta int) bool {
+ if !img1.Rect.Eq(img2.Rect) {
+ return false
+ }
+
+ if len(img1.Pix) != len(img2.Pix) {
+ return false
+ }
+
+ for i := 0; i < len(img1.Pix); i++ {
+ if absint(int(img1.Pix[i])-int(img2.Pix[i])) > delta {
+ return false
+ }
+ }
+
+ return true
+}
+
+func TestEncodeDecode(t *testing.T) {
+ imgWithAlpha := image.NewNRGBA(image.Rect(0, 0, 3, 3))
+ imgWithAlpha.Pix = []uint8{
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
+ 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
+ 244, 245, 246, 247, 248, 249, 250, 252, 252, 253, 254, 255,
+ }
+
+ imgWithoutAlpha := image.NewNRGBA(image.Rect(0, 0, 3, 3))
+ imgWithoutAlpha.Pix = []uint8{
+ 0, 1, 2, 255, 4, 5, 6, 255, 8, 9, 10, 255,
+ 127, 128, 129, 255, 131, 132, 133, 255, 135, 136, 137, 255,
+ 244, 245, 246, 255, 248, 249, 250, 255, 252, 253, 254, 255,
+ }
+
+ for _, format := range []Format{JPEG, PNG, GIF, BMP, TIFF} {
+ img := imgWithoutAlpha
+ if format == PNG {
+ img = imgWithAlpha
+ }
+
+ buf := &bytes.Buffer{}
+ err := Encode(buf, img, format)
+ if err != nil {
+ t.Errorf("fail encoding format %s", format)
+ continue
+ }
+
+ img2, err := Decode(buf)
+ if err != nil {
+ t.Errorf("fail decoding format %s", format)
+ continue
+ }
+ img2cloned := Clone(img2)
+
+ delta := 0
+ if format == JPEG {
+ delta = 3
+ } else if format == GIF {
+ delta = 16
+ }
+
+ if !compareNRGBA(img, img2cloned, delta) {
+ t.Errorf("test [DecodeEncode %s] failed: %#v %#v", format, img, img2cloned)
+ continue
+ }
+ }
+
+ buf := &bytes.Buffer{}
+ err := Encode(buf, imgWithAlpha, Format(100))
+ if err != ErrUnsupportedFormat {
+ t.Errorf("expected ErrUnsupportedFormat")
+ }
+}
+
+func TestNew(t *testing.T) {
+ td := []struct {
+ desc string
+ w, h int
+ c color.Color
+ dstBounds image.Rectangle
+ dstPix []uint8
+ }{
+ {
+ "New 1x1 black",
+ 1, 1,
+ color.NRGBA{0, 0, 0, 0},
+ image.Rect(0, 0, 1, 1),
+ []uint8{0x00, 0x00, 0x00, 0x00},
+ },
+ {
+ "New 1x2 red",
+ 1, 2,
+ color.NRGBA{255, 0, 0, 255},
+ image.Rect(0, 0, 1, 2),
+ []uint8{0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff},
+ },
+ {
+ "New 2x1 white",
+ 2, 1,
+ color.NRGBA{255, 255, 255, 255},
+ image.Rect(0, 0, 2, 1),
+ []uint8{0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
+ },
+ }
+
+ for _, d := range td {
+ got := New(d.w, d.h, d.c)
+ want := image.NewNRGBA(d.dstBounds)
+ want.Pix = d.dstPix
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestClone(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ want *image.NRGBA
+ }{
+ {
+ "Clone NRGBA",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 0, 1),
+ Stride: 1 * 4,
+ Pix: []uint8{0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff},
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 2),
+ Stride: 1 * 4,
+ Pix: []uint8{0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff},
+ },
+ },
+ {
+ "Clone NRGBA64",
+ &image.NRGBA64{
+ Rect: image.Rect(-1, -1, 0, 1),
+ Stride: 1 * 8,
+ Pix: []uint8{
+ 0x00, 0x00, 0x11, 0x11, 0x22, 0x22, 0x33, 0x33,
+ 0xcc, 0xcc, 0xdd, 0xdd, 0xee, 0xee, 0xff, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 2),
+ Stride: 1 * 4,
+ Pix: []uint8{0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff},
+ },
+ },
+ {
+ "Clone RGBA",
+ &image.RGBA{
+ Rect: image.Rect(-1, -1, 0, 1),
+ Stride: 1 * 4,
+ Pix: []uint8{0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff},
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 2),
+ Stride: 1 * 4,
+ Pix: []uint8{0x00, 0x55, 0xaa, 0x33, 0xcc, 0xdd, 0xee, 0xff},
+ },
+ },
+ {
+ "Clone RGBA64",
+ &image.RGBA64{
+ Rect: image.Rect(-1, -1, 0, 1),
+ Stride: 1 * 8,
+ Pix: []uint8{
+ 0x00, 0x00, 0x11, 0x11, 0x22, 0x22, 0x33, 0x33,
+ 0xcc, 0xcc, 0xdd, 0xdd, 0xee, 0xee, 0xff, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 2),
+ Stride: 1 * 4,
+ Pix: []uint8{0x00, 0x55, 0xaa, 0x33, 0xcc, 0xdd, 0xee, 0xff},
+ },
+ },
+ {
+ "Clone Gray",
+ &image.Gray{
+ Rect: image.Rect(-1, -1, 0, 1),
+ Stride: 1 * 1,
+ Pix: []uint8{0x11, 0xee},
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 2),
+ Stride: 1 * 4,
+ Pix: []uint8{0x11, 0x11, 0x11, 0xff, 0xee, 0xee, 0xee, 0xff},
+ },
+ },
+ {
+ "Clone Gray16",
+ &image.Gray16{
+ Rect: image.Rect(-1, -1, 0, 1),
+ Stride: 1 * 2,
+ Pix: []uint8{0x11, 0x11, 0xee, 0xee},
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 2),
+ Stride: 1 * 4,
+ Pix: []uint8{0x11, 0x11, 0x11, 0xff, 0xee, 0xee, 0xee, 0xff},
+ },
+ },
+ {
+ "Clone Alpha",
+ &image.Alpha{
+ Rect: image.Rect(-1, -1, 0, 1),
+ Stride: 1 * 1,
+ Pix: []uint8{0x11, 0xee},
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 2),
+ Stride: 1 * 4,
+ Pix: []uint8{0xff, 0xff, 0xff, 0x11, 0xff, 0xff, 0xff, 0xee},
+ },
+ },
+ {
+ "Clone YCbCr",
+ &image.YCbCr{
+ Rect: image.Rect(-1, -1, 5, 0),
+ SubsampleRatio: image.YCbCrSubsampleRatio444,
+ YStride: 6,
+ CStride: 6,
+ Y: []uint8{0x00, 0xff, 0x7f, 0x26, 0x4b, 0x0e},
+ Cb: []uint8{0x80, 0x80, 0x80, 0x6b, 0x56, 0xc0},
+ Cr: []uint8{0x80, 0x80, 0x80, 0xc0, 0x4b, 0x76},
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 6, 1),
+ Stride: 6 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0xff,
+ 0xff, 0xff, 0xff, 0xff,
+ 0x7f, 0x7f, 0x7f, 0xff,
+ 0x7f, 0x00, 0x00, 0xff,
+ 0x00, 0x7f, 0x00, 0xff,
+ 0x00, 0x00, 0x7f, 0xff,
+ },
+ },
+ },
+ {
+ "Clone YCbCr 444",
+ &image.YCbCr{
+ Y: []uint8{0x4c, 0x69, 0x1d, 0xb1, 0x96, 0xe2, 0x26, 0x34, 0xe, 0x59, 0x4b, 0x71, 0x0, 0x4c, 0x99, 0xff},
+ Cb: []uint8{0x55, 0xd4, 0xff, 0x8e, 0x2c, 0x01, 0x6b, 0xaa, 0xc0, 0x95, 0x56, 0x40, 0x80, 0x80, 0x80, 0x80},
+ Cr: []uint8{0xff, 0xeb, 0x6b, 0x36, 0x15, 0x95, 0xc0, 0xb5, 0x76, 0x41, 0x4b, 0x8c, 0x80, 0x80, 0x80, 0x80},
+ YStride: 4,
+ CStride: 4,
+ SubsampleRatio: image.YCbCrSubsampleRatio444,
+ Rect: image.Rectangle{Min: image.Point{X: 0, Y: 0}, Max: image.Point{X: 4, Y: 4}},
+ },
+ &image.NRGBA{
+ Pix: []uint8{0xff, 0x0, 0x0, 0xff, 0xff, 0x0, 0xff, 0xff, 0x0, 0x0, 0xff, 0xff, 0x49, 0xe1, 0xca, 0xff, 0x0, 0xff, 0x0, 0xff, 0xff, 0xff, 0x0, 0xff, 0x7f, 0x0, 0x0, 0xff, 0x7f, 0x0, 0x7f, 0xff, 0x0, 0x0, 0x7f, 0xff, 0x0, 0x7f, 0x7f, 0xff, 0x0, 0x7f, 0x0, 0xff, 0x82, 0x7f, 0x0, 0xff, 0x0, 0x0, 0x0, 0xff, 0x4c, 0x4c, 0x4c, 0xff, 0x99, 0x99, 0x99, 0xff, 0xff, 0xff, 0xff, 0xff},
+ Stride: 16,
+ Rect: image.Rectangle{Min: image.Point{X: 0, Y: 0}, Max: image.Point{X: 4, Y: 4}},
+ },
+ },
+ {
+ "Clone YCbCr 440",
+ &image.YCbCr{
+ Y: []uint8{0x4c, 0x69, 0x1d, 0xb1, 0x96, 0xe2, 0x26, 0x34, 0xe, 0x59, 0x4b, 0x71, 0x0, 0x4c, 0x99, 0xff},
+ Cb: []uint8{0x2c, 0x01, 0x6b, 0xaa, 0x80, 0x80, 0x80, 0x80},
+ Cr: []uint8{0x15, 0x95, 0xc0, 0xb5, 0x80, 0x80, 0x80, 0x80},
+ YStride: 4,
+ CStride: 4,
+ SubsampleRatio: image.YCbCrSubsampleRatio440,
+ Rect: image.Rectangle{Min: image.Point{X: 0, Y: 0}, Max: image.Point{X: 4, Y: 4}},
+ },
+ &image.NRGBA{
+ Pix: []uint8{0x0, 0xb5, 0x0, 0xff, 0x86, 0x86, 0x0, 0xff, 0x77, 0x0, 0x0, 0xff, 0xfb, 0x7d, 0xfb, 0xff, 0x0, 0xff, 0x1, 0xff, 0xff, 0xff, 0x1, 0xff, 0x80, 0x0, 0x1, 0xff, 0x7e, 0x0, 0x7e, 0xff, 0xe, 0xe, 0xe, 0xff, 0x59, 0x59, 0x59, 0xff, 0x4b, 0x4b, 0x4b, 0xff, 0x71, 0x71, 0x71, 0xff, 0x0, 0x0, 0x0, 0xff, 0x4c, 0x4c, 0x4c, 0xff, 0x99, 0x99, 0x99, 0xff, 0xff, 0xff, 0xff, 0xff},
+ Stride: 16,
+ Rect: image.Rectangle{Min: image.Point{X: 0, Y: 0}, Max: image.Point{X: 4, Y: 4}},
+ },
+ },
+ {
+ "Clone YCbCr 422",
+ &image.YCbCr{
+ Y: []uint8{0x4c, 0x69, 0x1d, 0xb1, 0x96, 0xe2, 0x26, 0x34, 0xe, 0x59, 0x4b, 0x71, 0x0, 0x4c, 0x99, 0xff},
+ Cb: []uint8{0xd4, 0x8e, 0x01, 0xaa, 0x95, 0x40, 0x80, 0x80},
+ Cr: []uint8{0xeb, 0x36, 0x95, 0xb5, 0x41, 0x8c, 0x80, 0x80},
+ YStride: 4,
+ CStride: 2,
+ SubsampleRatio: image.YCbCrSubsampleRatio422,
+ Rect: image.Rectangle{Min: image.Point{X: 0, Y: 0}, Max: image.Point{X: 4, Y: 4}},
+ },
+ &image.NRGBA{
+ Pix: []uint8{0xe2, 0x0, 0xe1, 0xff, 0xff, 0x0, 0xfe, 0xff, 0x0, 0x4d, 0x36, 0xff, 0x49, 0xe1, 0xca, 0xff, 0xb3, 0xb3, 0x0, 0xff, 0xff, 0xff, 0x1, 0xff, 0x70, 0x0, 0x70, 0xff, 0x7e, 0x0, 0x7e, 0xff, 0x0, 0x34, 0x33, 0xff, 0x1, 0x7f, 0x7e, 0xff, 0x5c, 0x58, 0x0, 0xff, 0x82, 0x7e, 0x0, 0xff, 0x0, 0x0, 0x0, 0xff, 0x4c, 0x4c, 0x4c, 0xff, 0x99, 0x99, 0x99, 0xff, 0xff, 0xff, 0xff, 0xff},
+ Stride: 16,
+ Rect: image.Rectangle{Min: image.Point{X: 0, Y: 0}, Max: image.Point{X: 4, Y: 4}},
+ },
+ },
+ {
+ "Clone YCbCr 420",
+ &image.YCbCr{
+ Y: []uint8{0x4c, 0x69, 0x1d, 0xb1, 0x96, 0xe2, 0x26, 0x34, 0xe, 0x59, 0x4b, 0x71, 0x0, 0x4c, 0x99, 0xff},
+ Cb: []uint8{0x01, 0xaa, 0x80, 0x80},
+ Cr: []uint8{0x95, 0xb5, 0x80, 0x80},
+ YStride: 4, CStride: 2,
+ SubsampleRatio: image.YCbCrSubsampleRatio420,
+ Rect: image.Rectangle{Min: image.Point{X: 0, Y: 0}, Max: image.Point{X: 4, Y: 4}},
+ },
+ &image.NRGBA{
+ Pix: []uint8{0x69, 0x69, 0x0, 0xff, 0x86, 0x86, 0x0, 0xff, 0x67, 0x0, 0x67, 0xff, 0xfb, 0x7d, 0xfb, 0xff, 0xb3, 0xb3, 0x0, 0xff, 0xff, 0xff, 0x1, 0xff, 0x70, 0x0, 0x70, 0xff, 0x7e, 0x0, 0x7e, 0xff, 0xe, 0xe, 0xe, 0xff, 0x59, 0x59, 0x59, 0xff, 0x4b, 0x4b, 0x4b, 0xff, 0x71, 0x71, 0x71, 0xff, 0x0, 0x0, 0x0, 0xff, 0x4c, 0x4c, 0x4c, 0xff, 0x99, 0x99, 0x99, 0xff, 0xff, 0xff, 0xff, 0xff},
+ Stride: 16,
+ Rect: image.Rectangle{Min: image.Point{X: 0, Y: 0}, Max: image.Point{X: 4, Y: 4}},
+ },
+ },
+ {
+ "Clone Paletted",
+ &image.Paletted{
+ Rect: image.Rect(-1, -1, 5, 0),
+ Stride: 6 * 1,
+ Palette: color.Palette{
+ color.NRGBA{R: 0x00, G: 0x00, B: 0x00, A: 0xff},
+ color.NRGBA{R: 0xff, G: 0xff, B: 0xff, A: 0xff},
+ color.NRGBA{R: 0x7f, G: 0x7f, B: 0x7f, A: 0xff},
+ color.NRGBA{R: 0x7f, G: 0x00, B: 0x00, A: 0xff},
+ color.NRGBA{R: 0x00, G: 0x7f, B: 0x00, A: 0xff},
+ color.NRGBA{R: 0x00, G: 0x00, B: 0x7f, A: 0xff},
+ },
+ Pix: []uint8{0x0, 0x1, 0x2, 0x3, 0x4, 0x5},
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 6, 1),
+ Stride: 6 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0xff,
+ 0xff, 0xff, 0xff, 0xff,
+ 0x7f, 0x7f, 0x7f, 0xff,
+ 0x7f, 0x00, 0x00, 0xff,
+ 0x00, 0x7f, 0x00, 0xff,
+ 0x00, 0x00, 0x7f, 0xff,
+ },
+ },
+ },
+ }
+
+ for _, d := range td {
+ got := Clone(d.src)
+ want := d.want
+
+ delta := 0
+ if _, ok := d.src.(*image.YCbCr); ok {
+ delta = 1
+ }
+
+ if !compareNRGBA(got, want, delta) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/disintegration/imaging/resize.go b/Godeps/_workspace/src/github.com/disintegration/imaging/resize.go
index d2efd5c83..3c792e904 100644
--- a/Godeps/_workspace/src/github.com/disintegration/imaging/resize.go
+++ b/Godeps/_workspace/src/github.com/disintegration/imaging/resize.go
@@ -267,20 +267,21 @@ func Fit(img image.Image, width, height int, filter ResampleFilter) *image.NRGBA
return Resize(img, newW, newH, filter)
}
-// Thumbnail scales the image up or down using the specified resample filter, crops it
-// to the specified width and hight and returns the transformed image.
+// Fill scales the image to the smallest possible size that will cover the specified dimensions,
+// crops the resized image to the specified dimensions using the given anchor point and returns
+// the transformed image.
//
// Supported resample filters: NearestNeighbor, Box, Linear, Hermite, MitchellNetravali,
// CatmullRom, BSpline, Gaussian, Lanczos, Hann, Hamming, Blackman, Bartlett, Welch, Cosine.
//
// Usage example:
//
-// dstImage := imaging.Thumbnail(srcImage, 100, 100, imaging.Lanczos)
+// dstImage := imaging.Fill(srcImage, 800, 600, imaging.Center, imaging.Lanczos)
//
-func Thumbnail(img image.Image, width, height int, filter ResampleFilter) *image.NRGBA {
- thumbW, thumbH := width, height
+func Fill(img image.Image, width, height int, anchor Anchor, filter ResampleFilter) *image.NRGBA {
+ minW, minH := width, height
- if thumbW <= 0 || thumbH <= 0 {
+ if minW <= 0 || minH <= 0 {
return &image.NRGBA{}
}
@@ -292,17 +293,35 @@ func Thumbnail(img image.Image, width, height int, filter ResampleFilter) *image
return &image.NRGBA{}
}
+ if srcW == minW && srcH == minH {
+ return Clone(img)
+ }
+
srcAspectRatio := float64(srcW) / float64(srcH)
- thumbAspectRatio := float64(thumbW) / float64(thumbH)
+ minAspectRatio := float64(minW) / float64(minH)
- var tmp image.Image
- if srcAspectRatio > thumbAspectRatio {
- tmp = Resize(img, 0, thumbH, filter)
+ var tmp *image.NRGBA
+ if srcAspectRatio < minAspectRatio {
+ tmp = Resize(img, minW, 0, filter)
} else {
- tmp = Resize(img, thumbW, 0, filter)
+ tmp = Resize(img, 0, minH, filter)
}
- return CropCenter(tmp, thumbW, thumbH)
+ return CropAnchor(tmp, minW, minH, anchor)
+}
+
+// Thumbnail scales the image up or down using the specified resample filter, crops it
+// to the specified width and hight and returns the transformed image.
+//
+// Supported resample filters: NearestNeighbor, Box, Linear, Hermite, MitchellNetravali,
+// CatmullRom, BSpline, Gaussian, Lanczos, Hann, Hamming, Blackman, Bartlett, Welch, Cosine.
+//
+// Usage example:
+//
+// dstImage := imaging.Thumbnail(srcImage, 100, 100, imaging.Lanczos)
+//
+func Thumbnail(img image.Image, width, height int, filter ResampleFilter) *image.NRGBA {
+ return Fill(img, width, height, Center, filter)
}
// Resample filter struct. It can be used to make custom filters.
diff --git a/Godeps/_workspace/src/github.com/disintegration/imaging/resize_test.go b/Godeps/_workspace/src/github.com/disintegration/imaging/resize_test.go
new file mode 100644
index 000000000..bc575dcbf
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/disintegration/imaging/resize_test.go
@@ -0,0 +1,455 @@
+package imaging
+
+import (
+ "image"
+ "testing"
+)
+
+func TestResize(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ w, h int
+ f ResampleFilter
+ want *image.NRGBA
+ }{
+ {
+ "Resize 2x2 1x1 box",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 1),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff,
+ },
+ },
+ 1, 1,
+ Box,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 1),
+ Stride: 1 * 4,
+ Pix: []uint8{0x40, 0x40, 0x40, 0xc0},
+ },
+ },
+ {
+ "Resize 2x2 2x2 box",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 1),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff,
+ },
+ },
+ 2, 2,
+ Box,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff,
+ },
+ },
+ },
+ {
+ "Resize 3x1 1x1 nearest",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 2, 0),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xff, 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff,
+ },
+ },
+ 1, 1,
+ NearestNeighbor,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 1),
+ Stride: 1 * 4,
+ Pix: []uint8{0x00, 0xff, 0x00, 0xff},
+ },
+ },
+ {
+ "Resize 2x2 0x4 box",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 1),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff,
+ },
+ },
+ 0, 4,
+ Box,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 4, 4),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff,
+ },
+ },
+ },
+ {
+ "Resize 2x2 4x0 linear",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 1),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff,
+ },
+ },
+ 4, 0,
+ Linear,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 4, 4),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x40, 0xbf, 0x00, 0x00, 0xbf, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0x40, 0x00, 0x40, 0x30, 0x30, 0x10, 0x70, 0x8f, 0x10, 0x30, 0xcf, 0xbf, 0x00, 0x40, 0xff,
+ 0x00, 0xbf, 0x00, 0xbf, 0x10, 0x8f, 0x30, 0xcf, 0x30, 0x30, 0x8f, 0xef, 0x40, 0x00, 0xbf, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0xbf, 0x40, 0xff, 0x00, 0x40, 0xbf, 0xff, 0x00, 0x00, 0xff, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Resize(d.src, d.w, d.h, d.f)
+ want := d.want
+ if !compareNRGBA(got, want, 1) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestFit(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ w, h int
+ f ResampleFilter
+ want *image.NRGBA
+ }{
+ {
+ "Fit 2x2 1x10 box",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 1),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff,
+ },
+ },
+ 1, 10,
+ Box,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 1),
+ Stride: 1 * 4,
+ Pix: []uint8{0x40, 0x40, 0x40, 0xc0},
+ },
+ },
+ {
+ "Fit 2x2 10x1 box",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 1),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff,
+ },
+ },
+ 10, 1,
+ Box,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 1),
+ Stride: 1 * 4,
+ Pix: []uint8{0x40, 0x40, 0x40, 0xc0},
+ },
+ },
+ {
+ "Fit 2x2 10x10 box",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 1),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff,
+ },
+ },
+ 10, 10,
+ Box,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Fit(d.src, d.w, d.h, d.f)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestFill(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ w, h int
+ a Anchor
+ f ResampleFilter
+ want *image.NRGBA
+ }{
+ {
+ "Fill 4x4 2x2 Center Nearest",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 2, 2,
+ Center,
+ NearestNeighbor,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x14, 0x15, 0x16, 0x17, 0x1c, 0x1d, 0x1e, 0x1f,
+ 0x34, 0x35, 0x36, 0x37, 0x3c, 0x3d, 0x3e, 0x3f,
+ },
+ },
+ },
+ {
+ "Fill 4x4 1x4 TopLeft Nearest",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 1, 4,
+ TopLeft,
+ NearestNeighbor,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 4),
+ Stride: 1 * 4,
+ Pix: []uint8{
+ 0x00, 0x01, 0x02, 0x03,
+ 0x10, 0x11, 0x12, 0x13,
+ 0x20, 0x21, 0x22, 0x23,
+ 0x30, 0x31, 0x32, 0x33,
+ },
+ },
+ },
+ {
+ "Fill 4x4 8x2 Bottom Nearest",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 8, 2,
+ Bottom,
+ NearestNeighbor,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 8, 2),
+ Stride: 8 * 4,
+ Pix: []uint8{
+ 0x30, 0x31, 0x32, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x3c, 0x3d, 0x3e, 0x3f,
+ 0x30, 0x31, 0x32, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x3c, 0x3d, 0x3e, 0x3f,
+ },
+ },
+ },
+ {
+ "Fill 4x4 2x8 Top Nearest",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 2, 8,
+ Top,
+ NearestNeighbor,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 8),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b,
+ 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b,
+ 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b,
+ 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b,
+ 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b,
+ 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b,
+ 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+ 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+ },
+ },
+ },
+ {
+ "Fill 4x4 4x4 TopRight Box",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 4, 4,
+ TopRight,
+ Box,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 4, 4),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ },
+ {
+ "Fill 4x4 0x4 Left Box",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 0, 4,
+ Left,
+ Box,
+ &image.NRGBA{},
+ },
+ {
+ "Fill 0x0 4x4 Right Box",
+ &image.NRGBA{},
+ 4, 4,
+ Right,
+ Box,
+ &image.NRGBA{},
+ },
+ }
+ for _, d := range td {
+ got := Fill(d.src, d.w, d.h, d.a, d.f)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestThumbnail(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ w, h int
+ f ResampleFilter
+ want *image.NRGBA
+ }{
+ {
+ "Thumbnail 6x2 1x1 box",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 5, 1),
+ Stride: 6 * 4,
+ Pix: []uint8{
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 1, 1,
+ Box,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 1),
+ Stride: 1 * 4,
+ Pix: []uint8{0x40, 0x40, 0x40, 0xc0},
+ },
+ },
+ {
+ "Thumbnail 2x6 1x1 box",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 5),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff,
+ 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xff, 0xff,
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 1, 1,
+ Box,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 1),
+ Stride: 1 * 4,
+ Pix: []uint8{0x40, 0x40, 0x40, 0xc0},
+ },
+ },
+ {
+ "Thumbnail 1x3 2x2 box",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 0, 2),
+ Stride: 1 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0x00,
+ 0xff, 0x00, 0x00, 0xff,
+ 0xff, 0xff, 0xff, 0xff,
+ },
+ },
+ 2, 2,
+ Box,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff,
+ 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Thumbnail(d.src, d.w, d.h, d.f)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/disintegration/imaging/tools_test.go b/Godeps/_workspace/src/github.com/disintegration/imaging/tools_test.go
new file mode 100644
index 000000000..2dace6299
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/disintegration/imaging/tools_test.go
@@ -0,0 +1,605 @@
+package imaging
+
+import (
+ "image"
+ "testing"
+)
+
+func TestCrop(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ r image.Rectangle
+ want *image.NRGBA
+ }{
+ {
+ "Crop 2x3 2x1",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ image.Rect(-1, 0, 1, 1),
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 1),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Crop(d.src, d.r)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestCropCenter(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ w, h int
+ want *image.NRGBA
+ }{
+ {
+ "CropCenter 2x3 2x1",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ 2, 1,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 1),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ },
+ },
+ },
+ {
+ "CropCenter 2x3 0x1",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ 0, 1,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 0, 0),
+ Stride: 0,
+ Pix: []uint8{},
+ },
+ },
+ {
+ "CropCenter 2x3 5x5",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ 5, 5,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 3),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := CropCenter(d.src, d.w, d.h)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestCropAnchor(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ w, h int
+ anchor Anchor
+ want *image.NRGBA
+ }{
+ {
+ "CropAnchor 4x4 2x2 TopLeft",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 2, 2,
+ TopLeft,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+ },
+ },
+ },
+ {
+ "CropAnchor 4x4 2x2 Top",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 2, 2,
+ Top,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b,
+ 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b,
+ },
+ },
+ },
+ {
+ "CropAnchor 4x4 2x2 TopRight",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 2, 2,
+ TopRight,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+ 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+ },
+ },
+ },
+ {
+ "CropAnchor 4x4 2x2 Left",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 2, 2,
+ Left,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+ 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+ },
+ },
+ },
+ {
+ "CropAnchor 4x4 2x2 Center",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 2, 2,
+ Center,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b,
+ 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b,
+ },
+ },
+ },
+ {
+ "CropAnchor 4x4 2x2 Right",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 2, 2,
+ Right,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+ 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+ },
+ },
+ },
+ {
+ "CropAnchor 4x4 2x2 BottomLeft",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 2, 2,
+ BottomLeft,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
+ 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
+ },
+ },
+ },
+ {
+ "CropAnchor 4x4 2x2 Bottom",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 2, 2,
+ Bottom,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b,
+ 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b,
+ },
+ },
+ },
+ {
+ "CropAnchor 4x4 2x2 BottomRight",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 2, 2,
+ BottomRight,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
+ 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+ },
+ },
+ },
+ {
+ "CropAnchor 4x4 0x0 BottomRight",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 0, 0,
+ BottomRight,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 0, 0),
+ Stride: 0,
+ Pix: []uint8{},
+ },
+ },
+ {
+ "CropAnchor 4x4 100x100 BottomRight",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 100, 100,
+ BottomRight,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 4, 4),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ },
+ {
+ "CropAnchor 4x4 1x100 BottomRight",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 1, 100,
+ BottomRight,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 1, 4),
+ Stride: 1 * 4,
+ Pix: []uint8{
+ 0x0c, 0x0d, 0x0e, 0x0f,
+ 0x1c, 0x1d, 0x1e, 0x1f,
+ 0x2c, 0x2d, 0x2e, 0x2f,
+ 0x3c, 0x3d, 0x3e, 0x3f,
+ },
+ },
+ },
+ {
+ "CropAnchor 4x4 0x100 BottomRight",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 3, 3),
+ Stride: 4 * 4,
+ Pix: []uint8{
+ 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,
+ },
+ },
+ 0, 100,
+ BottomRight,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 0, 0),
+ Stride: 0,
+ Pix: []uint8{},
+ },
+ },
+ }
+ for _, d := range td {
+ got := CropAnchor(d.src, d.w, d.h, d.anchor)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestPaste(t *testing.T) {
+ td := []struct {
+ desc string
+ src1 image.Image
+ src2 image.Image
+ p image.Point
+ want *image.NRGBA
+ }{
+ {
+ "Paste 2x3 2x1",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(1, 1, 3, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
+ },
+ },
+ image.Pt(-1, 0),
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 3),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Paste(d.src1, d.src2, d.p)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestPasteCenter(t *testing.T) {
+ td := []struct {
+ desc string
+ src1 image.Image
+ src2 image.Image
+ want *image.NRGBA
+ }{
+ {
+ "PasteCenter 2x3 2x1",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(1, 1, 3, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 3),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := PasteCenter(d.src1, d.src2)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestOverlay(t *testing.T) {
+ td := []struct {
+ desc string
+ src1 image.Image
+ src2 image.Image
+ p image.Point
+ a float64
+ want *image.NRGBA
+ }{
+ {
+ "Overlay 2x3 2x1 1.0",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0x60, 0x00, 0x90, 0xff, 0xff, 0x00, 0x99, 0x7f,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(1, 1, 3, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x20, 0x40, 0x80, 0x7f, 0xaa, 0xbb, 0xcc, 0xff,
+ },
+ },
+ image.Pt(-1, 0),
+ 1.0,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 3),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0x40, 0x1f, 0x88, 0xff, 0xaa, 0xbb, 0xcc, 0xff,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ },
+ {
+ "Overlay 2x2 2x2 0.5",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 1),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0xff, 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0xff,
+ 0x00, 0x00, 0xff, 0xff, 0x20, 0x20, 0x20, 0x00,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 1),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
+ 0xff, 0xff, 0x00, 0xff, 0x20, 0x20, 0x20, 0xff,
+ },
+ },
+ image.Pt(-1, -1),
+ 0.5,
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0xff, 0x7f, 0x7f, 0xff, 0x00, 0xff, 0x00, 0xff,
+ 0x7f, 0x7f, 0x7f, 0xff, 0x20, 0x20, 0x20, 0x7f,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Overlay(d.src1, d.src2, d.p, d.a)
+ want := d.want
+ if !compareNRGBA(got, want, 1) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/disintegration/imaging/transform_test.go b/Godeps/_workspace/src/github.com/disintegration/imaging/transform_test.go
new file mode 100644
index 000000000..6e64082f4
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/disintegration/imaging/transform_test.go
@@ -0,0 +1,261 @@
+package imaging
+
+import (
+ "image"
+ "testing"
+)
+
+func TestRotate90(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ want *image.NRGBA
+ }{
+ {
+ "Rotate90 2x3",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0xcc, 0xdd, 0xee, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,
+ 0x00, 0x11, 0x22, 0x33, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Rotate90(d.src)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestRotate180(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ want *image.NRGBA
+ }{
+ {
+ "Rotate180 2x3",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 3),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff, 0x00,
+ 0x00, 0xff, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00,
+ 0xcc, 0xdd, 0xee, 0xff, 0x00, 0x11, 0x22, 0x33,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Rotate180(d.src)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestRotate270(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ want *image.NRGBA
+ }{
+ {
+ "Rotate270 2x3",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x11, 0x22, 0x33,
+ 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xcc, 0xdd, 0xee, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Rotate270(d.src)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestFlipV(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ want *image.NRGBA
+ }{
+ {
+ "FlipV 2x3",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 3),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := FlipV(d.src)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestFlipH(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ want *image.NRGBA
+ }{
+ {
+ "FlipH 2x3",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 2, 3),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0xcc, 0xdd, 0xee, 0xff, 0x00, 0x11, 0x22, 0x33,
+ 0x00, 0xff, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff, 0x00,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := FlipH(d.src)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestTranspose(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ want *image.NRGBA
+ }{
+ {
+ "Transpose 2x3",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00,
+ 0xcc, 0xdd, 0xee, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Transpose(d.src)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
+
+func TestTransverse(t *testing.T) {
+ td := []struct {
+ desc string
+ src image.Image
+ want *image.NRGBA
+ }{
+ {
+ "Transverse 2x3",
+ &image.NRGBA{
+ Rect: image.Rect(-1, -1, 1, 2),
+ Stride: 2 * 4,
+ Pix: []uint8{
+ 0x00, 0x11, 0x22, 0x33, 0xcc, 0xdd, 0xee, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff,
+ },
+ },
+ &image.NRGBA{
+ Rect: image.Rect(0, 0, 3, 2),
+ Stride: 3 * 4,
+ Pix: []uint8{
+ 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0xcc, 0xdd, 0xee, 0xff,
+ 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x11, 0x22, 0x33,
+ },
+ },
+ },
+ }
+ for _, d := range td {
+ got := Transverse(d.src)
+ want := d.want
+ if !compareNRGBA(got, want, 0) {
+ t.Errorf("test [%s] failed: %#v", d.desc, got)
+ }
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/disintegration/imaging/utils_test.go b/Godeps/_workspace/src/github.com/disintegration/imaging/utils_test.go
new file mode 100644
index 000000000..c2384586b
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/disintegration/imaging/utils_test.go
@@ -0,0 +1,61 @@
+package imaging
+
+import (
+ "runtime"
+ "testing"
+)
+
+func testParallelN(enabled bool, n, procs int) bool {
+ data := make([]bool, n)
+ before := runtime.GOMAXPROCS(0)
+ runtime.GOMAXPROCS(procs)
+ parallel(n, func(start, end int) {
+ for i := start; i < end; i++ {
+ data[i] = true
+ }
+ })
+ for i := 0; i < n; i++ {
+ if data[i] != true {
+ return false
+ }
+ }
+ runtime.GOMAXPROCS(before)
+ return true
+}
+
+func TestParallel(t *testing.T) {
+ for _, e := range []bool{true, false} {
+ for _, n := range []int{1, 10, 100, 1000} {
+ for _, p := range []int{1, 2, 4, 8, 16, 100} {
+ if testParallelN(e, n, p) != true {
+ t.Errorf("test [parallel %v %d %d] failed", e, n, p)
+ }
+ }
+ }
+ }
+}
+
+func TestClamp(t *testing.T) {
+ td := []struct {
+ f float64
+ u uint8
+ }{
+ {0, 0},
+ {255, 255},
+ {128, 128},
+ {0.49, 0},
+ {0.50, 1},
+ {254.9, 255},
+ {254.0, 254},
+ {256, 255},
+ {2500, 255},
+ {-10, 0},
+ {127.6, 128},
+ }
+
+ for _, d := range td {
+ if clamp(d.f) != d.u {
+ t.Errorf("test [clamp %v %v] failed: %v", d.f, d.u, clamp(d.f))
+ }
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/internal/redistest/testdb.go b/Godeps/_workspace/src/github.com/garyburd/redigo/internal/redistest/testdb.go
index 5f955c424..3eb4bcd77 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/internal/redistest/testdb.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/internal/redistest/testdb.go
@@ -19,7 +19,7 @@ import (
"errors"
"time"
- "github.com/garyburd/redigo/redis"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/garyburd/redigo/redis"
)
type testConn struct {
@@ -49,15 +49,18 @@ func Dial() (redis.Conn, error) {
_, err = c.Do("SELECT", "9")
if err != nil {
+ c.Close()
return nil, err
}
n, err := redis.Int(c.Do("DBSIZE"))
if err != nil {
+ c.Close()
return nil, err
}
if n != 0 {
+ c.Close()
return nil, errors.New("database #9 is not empty, test can not continue")
}
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/conn.go b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/conn.go
index ac0e971c4..6a3819f1d 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/conn.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/conn.go
@@ -21,6 +21,8 @@ import (
"fmt"
"io"
"net"
+ "net/url"
+ "regexp"
"strconv"
"sync"
"time"
@@ -51,56 +53,164 @@ type conn struct {
numScratch [40]byte
}
-// Dial connects to the Redis server at the given network and address.
-func Dial(network, address string) (Conn, error) {
- dialer := xDialer{}
- return dialer.Dial(network, address)
-}
-
// DialTimeout acts like Dial but takes timeouts for establishing the
// connection to the server, writing a command and reading a reply.
+//
+// Deprecated: Use Dial with options instead.
func DialTimeout(network, address string, connectTimeout, readTimeout, writeTimeout time.Duration) (Conn, error) {
- netDialer := net.Dialer{Timeout: connectTimeout}
- dialer := xDialer{
- NetDial: netDialer.Dial,
- ReadTimeout: readTimeout,
- WriteTimeout: writeTimeout,
- }
- return dialer.Dial(network, address)
+ return Dial(network, address,
+ DialConnectTimeout(connectTimeout),
+ DialReadTimeout(readTimeout),
+ DialWriteTimeout(writeTimeout))
+}
+
+// DialOption specifies an option for dialing a Redis server.
+type DialOption struct {
+ f func(*dialOptions)
+}
+
+type dialOptions struct {
+ readTimeout time.Duration
+ writeTimeout time.Duration
+ dial func(network, addr string) (net.Conn, error)
+ db int
+ password string
+}
+
+// DialReadTimeout specifies the timeout for reading a single command reply.
+func DialReadTimeout(d time.Duration) DialOption {
+ return DialOption{func(do *dialOptions) {
+ do.readTimeout = d
+ }}
+}
+
+// DialWriteTimeout specifies the timeout for writing a single command.
+func DialWriteTimeout(d time.Duration) DialOption {
+ return DialOption{func(do *dialOptions) {
+ do.writeTimeout = d
+ }}
}
-// A Dialer specifies options for connecting to a Redis server.
-type xDialer struct {
- // NetDial specifies the dial function for creating TCP connections. If
- // NetDial is nil, then net.Dial is used.
- NetDial func(network, addr string) (net.Conn, error)
+// DialConnectTimeout specifies the timeout for connecting to the Redis server.
+func DialConnectTimeout(d time.Duration) DialOption {
+ return DialOption{func(do *dialOptions) {
+ dialer := net.Dialer{Timeout: d}
+ do.dial = dialer.Dial
+ }}
+}
+
+// DialNetDial specifies a custom dial function for creating TCP
+// connections. If this option is left out, then net.Dial is
+// used. DialNetDial overrides DialConnectTimeout.
+func DialNetDial(dial func(network, addr string) (net.Conn, error)) DialOption {
+ return DialOption{func(do *dialOptions) {
+ do.dial = dial
+ }}
+}
- // ReadTimeout specifies the timeout for reading a single command
- // reply. If ReadTimeout is zero, then no timeout is used.
- ReadTimeout time.Duration
+// DialDatabase specifies the database to select when dialing a connection.
+func DialDatabase(db int) DialOption {
+ return DialOption{func(do *dialOptions) {
+ do.db = db
+ }}
+}
- // WriteTimeout specifies the timeout for writing a single command. If
- // WriteTimeout is zero, then no timeout is used.
- WriteTimeout time.Duration
+// DialPassword specifies the password to use when connecting to
+// the Redis server.
+func DialPassword(password string) DialOption {
+ return DialOption{func(do *dialOptions) {
+ do.password = password
+ }}
}
-// Dial connects to the Redis server at address on the named network.
-func (d *xDialer) Dial(network, address string) (Conn, error) {
- dial := d.NetDial
- if dial == nil {
- dial = net.Dial
+// Dial connects to the Redis server at the given network and
+// address using the specified options.
+func Dial(network, address string, options ...DialOption) (Conn, error) {
+ do := dialOptions{
+ dial: net.Dial,
}
- netConn, err := dial(network, address)
+ for _, option := range options {
+ option.f(&do)
+ }
+
+ netConn, err := do.dial(network, address)
if err != nil {
return nil, err
}
- return &conn{
+ c := &conn{
conn: netConn,
bw: bufio.NewWriter(netConn),
br: bufio.NewReader(netConn),
- readTimeout: d.ReadTimeout,
- writeTimeout: d.WriteTimeout,
- }, nil
+ readTimeout: do.readTimeout,
+ writeTimeout: do.writeTimeout,
+ }
+
+ if do.password != "" {
+ if _, err := c.Do("AUTH", do.password); err != nil {
+ netConn.Close()
+ return nil, err
+ }
+ }
+
+ if do.db != 0 {
+ if _, err := c.Do("SELECT", do.db); err != nil {
+ netConn.Close()
+ return nil, err
+ }
+ }
+
+ return c, nil
+}
+
+var pathDBRegexp = regexp.MustCompile(`/(\d+)\z`)
+
+// DialURL connects to a Redis server at the given URL using the Redis
+// URI scheme. URLs should follow the draft IANA specification for the
+// scheme (https://www.iana.org/assignments/uri-schemes/prov/redis).
+func DialURL(rawurl string, options ...DialOption) (Conn, error) {
+ u, err := url.Parse(rawurl)
+ if err != nil {
+ return nil, err
+ }
+
+ if u.Scheme != "redis" {
+ return nil, fmt.Errorf("invalid redis URL scheme: %s", u.Scheme)
+ }
+
+ // As per the IANA draft spec, the host defaults to localhost and
+ // the port defaults to 6379.
+ host, port, err := net.SplitHostPort(u.Host)
+ if err != nil {
+ // assume port is missing
+ host = u.Host
+ port = "6379"
+ }
+ if host == "" {
+ host = "localhost"
+ }
+ address := net.JoinHostPort(host, port)
+
+ if u.User != nil {
+ password, isSet := u.User.Password()
+ if isSet {
+ options = append(options, DialPassword(password))
+ }
+ }
+
+ match := pathDBRegexp.FindStringSubmatch(u.Path)
+ if len(match) == 2 {
+ db, err := strconv.Atoi(match[1])
+ if err != nil {
+ return nil, fmt.Errorf("invalid database: %s", u.Path[1:])
+ }
+ if db != 0 {
+ options = append(options, DialDatabase(db))
+ }
+ } else if u.Path != "" {
+ return nil, fmt.Errorf("invalid database: %s", u.Path[1:])
+ }
+
+ return Dial("tcp", address, options...)
}
// NewConn returns a new Redigo connection for the given net connection.
@@ -417,7 +527,9 @@ func (c *conn) Do(cmd string, args ...interface{}) (interface{}, error) {
}
if cmd != "" {
- c.writeCommand(cmd, args)
+ if err := c.writeCommand(cmd, args); err != nil {
+ return nil, c.fatal(err)
+ }
}
if err := c.bw.Flush(); err != nil {
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/conn_test.go b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/conn_test.go
index 800370136..06a2c8fa7 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/conn_test.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/conn_test.go
@@ -15,19 +15,37 @@
package redis_test
import (
- "bufio"
"bytes"
+ "io"
"math"
"net"
+ "os"
"reflect"
"strings"
"testing"
"time"
- "github.com/garyburd/redigo/internal/redistest"
- "github.com/garyburd/redigo/redis"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/garyburd/redigo/redis"
)
+type testConn struct {
+ io.Reader
+ io.Writer
+}
+
+func (*testConn) Close() error { return nil }
+func (*testConn) LocalAddr() net.Addr { return nil }
+func (*testConn) RemoteAddr() net.Addr { return nil }
+func (*testConn) SetDeadline(t time.Time) error { return nil }
+func (*testConn) SetReadDeadline(t time.Time) error { return nil }
+func (*testConn) SetWriteDeadline(t time.Time) error { return nil }
+
+func dialTestConn(r io.Reader, w io.Writer) redis.DialOption {
+ return redis.DialNetDial(func(net, addr string) (net.Conn, error) {
+ return &testConn{Reader: r, Writer: w}, nil
+ })
+}
+
var writeTests = []struct {
args []interface{}
expected string
@@ -73,14 +91,13 @@ var writeTests = []struct {
func TestWrite(t *testing.T) {
for _, tt := range writeTests {
var buf bytes.Buffer
- rw := bufio.ReadWriter{Writer: bufio.NewWriter(&buf)}
- c := redis.NewConnBufio(rw)
+ c, _ := redis.Dial("", "", dialTestConn(nil, &buf))
err := c.Send(tt.args[0].(string), tt.args[1:]...)
if err != nil {
t.Errorf("Send(%v) returned error %v", tt.args, err)
continue
}
- rw.Flush()
+ c.Flush()
actual := buf.String()
if actual != tt.expected {
t.Errorf("Send(%v) = %q, want %q", tt.args, actual, tt.expected)
@@ -173,11 +190,7 @@ var readTests = []struct {
func TestRead(t *testing.T) {
for _, tt := range readTests {
- rw := bufio.ReadWriter{
- Reader: bufio.NewReader(strings.NewReader(tt.reply)),
- Writer: bufio.NewWriter(nil), // writer need to support Flush
- }
- c := redis.NewConnBufio(rw)
+ c, _ := redis.Dial("", "", dialTestConn(strings.NewReader(tt.reply), nil))
actual, err := c.Receive()
if tt.expected == errorSentinel {
if err == nil {
@@ -257,7 +270,7 @@ var testCommands = []struct {
}
func TestDoCommands(t *testing.T) {
- c, err := redistest.Dial()
+ c, err := redis.DialDefaultServer()
if err != nil {
t.Fatalf("error connection to database, %v", err)
}
@@ -276,7 +289,7 @@ func TestDoCommands(t *testing.T) {
}
func TestPipelineCommands(t *testing.T) {
- c, err := redistest.Dial()
+ c, err := redis.DialDefaultServer()
if err != nil {
t.Fatalf("error connection to database, %v", err)
}
@@ -302,7 +315,7 @@ func TestPipelineCommands(t *testing.T) {
}
func TestBlankCommmand(t *testing.T) {
- c, err := redistest.Dial()
+ c, err := redis.DialDefaultServer()
if err != nil {
t.Fatalf("error connection to database, %v", err)
}
@@ -329,7 +342,7 @@ func TestBlankCommmand(t *testing.T) {
}
func TestRecvBeforeSend(t *testing.T) {
- c, err := redistest.Dial()
+ c, err := redis.DialDefaultServer()
if err != nil {
t.Fatalf("error connection to database, %v", err)
}
@@ -350,7 +363,7 @@ func TestRecvBeforeSend(t *testing.T) {
}
func TestError(t *testing.T) {
- c, err := redistest.Dial()
+ c, err := redis.DialDefaultServer()
if err != nil {
t.Fatalf("error connection to database, %v", err)
}
@@ -370,7 +383,7 @@ func TestError(t *testing.T) {
}
}
-func TestReadDeadline(t *testing.T) {
+func TestReadTimeout(t *testing.T) {
l, err := net.Listen("tcp", "127.0.0.1:0")
if err != nil {
t.Fatalf("net.Listen returned %v", err)
@@ -391,7 +404,9 @@ func TestReadDeadline(t *testing.T) {
}
}()
- c1, err := redis.DialTimeout(l.Addr().Network(), l.Addr().String(), 0, time.Millisecond, 0)
+ // Do
+
+ c1, err := redis.Dial(l.Addr().Network(), l.Addr().String(), redis.DialReadTimeout(time.Millisecond))
if err != nil {
t.Fatalf("redis.Dial returned %v", err)
}
@@ -405,7 +420,9 @@ func TestReadDeadline(t *testing.T) {
t.Fatalf("c1.Err() = nil, expect error")
}
- c2, err := redis.DialTimeout(l.Addr().Network(), l.Addr().String(), 0, time.Millisecond, 0)
+ // Send/Flush/Receive
+
+ c2, err := redis.Dial(l.Addr().Network(), l.Addr().String(), redis.DialReadTimeout(time.Millisecond))
if err != nil {
t.Fatalf("redis.Dial returned %v", err)
}
@@ -422,6 +439,95 @@ func TestReadDeadline(t *testing.T) {
}
}
+var dialErrors = []struct {
+ rawurl string
+ expectedError string
+}{
+ {
+ "localhost",
+ "invalid redis URL scheme",
+ },
+ // The error message for invalid hosts is diffferent in different
+ // versions of Go, so just check that there is an error message.
+ {
+ "redis://weird url",
+ "",
+ },
+ {
+ "redis://foo:bar:baz",
+ "",
+ },
+ {
+ "http://www.google.com",
+ "invalid redis URL scheme: http",
+ },
+ {
+ "redis://localhost:6379/abc123",
+ "invalid database: abc123",
+ },
+}
+
+func TestDialURLErrors(t *testing.T) {
+ for _, d := range dialErrors {
+ _, err := redis.DialURL(d.rawurl)
+ if err == nil || !strings.Contains(err.Error(), d.expectedError) {
+ t.Errorf("DialURL did not return expected error (expected %v to contain %s)", err, d.expectedError)
+ }
+ }
+}
+
+func TestDialURLPort(t *testing.T) {
+ checkPort := func(network, address string) (net.Conn, error) {
+ if address != "localhost:6379" {
+ t.Errorf("DialURL did not set port to 6379 by default (got %v)", address)
+ }
+ return nil, nil
+ }
+ _, err := redis.DialURL("redis://localhost", redis.DialNetDial(checkPort))
+ if err != nil {
+ t.Error("dial error:", err)
+ }
+}
+
+func TestDialURLHost(t *testing.T) {
+ checkHost := func(network, address string) (net.Conn, error) {
+ if address != "localhost:6379" {
+ t.Errorf("DialURL did not set host to localhost by default (got %v)", address)
+ }
+ return nil, nil
+ }
+ _, err := redis.DialURL("redis://:6379", redis.DialNetDial(checkHost))
+ if err != nil {
+ t.Error("dial error:", err)
+ }
+}
+
+func TestDialURLPassword(t *testing.T) {
+ var buf bytes.Buffer
+ _, err := redis.DialURL("redis://x:abc123@localhost", dialTestConn(strings.NewReader("+OK\r\n"), &buf))
+ if err != nil {
+ t.Error("dial error:", err)
+ }
+ expected := "*2\r\n$4\r\nAUTH\r\n$6\r\nabc123\r\n"
+ actual := buf.String()
+ if actual != expected {
+ t.Errorf("commands = %q, want %q", actual, expected)
+ }
+}
+
+func TestDialURLDatabase(t *testing.T) {
+ var buf bytes.Buffer
+ _, err := redis.DialURL("redis://localhost/3", dialTestConn(strings.NewReader("+OK\r\n"), &buf))
+ if err != nil {
+ t.Error("dial error:", err)
+ }
+ expected := "*2\r\n$6\r\nSELECT\r\n$1\r\n3\r\n"
+ actual := buf.String()
+ if actual != expected {
+ t.Errorf("commands = %q, want %q", actual, expected)
+ }
+}
+
// Connect to local instance of Redis running on the default port.
func ExampleDial(x int) {
c, err := redis.Dial("tcp", ":6379")
@@ -431,11 +537,20 @@ func ExampleDial(x int) {
defer c.Close()
}
+// Connect to remote instance of Redis using a URL.
+func ExampleDialURL() {
+ c, err := redis.DialURL(os.Getenv("REDIS_URL"))
+ if err != nil {
+ // handle connection error
+ }
+ defer c.Close()
+}
+
// TextExecError tests handling of errors in a transaction. See
// http://redis.io/topics/transactions for information on how Redis handles
// errors in a transaction.
func TestExecError(t *testing.T) {
- c, err := redistest.Dial()
+ c, err := redis.DialDefaultServer()
if err != nil {
t.Fatalf("error connection to database, %v", err)
}
@@ -443,6 +558,7 @@ func TestExecError(t *testing.T) {
// Execute commands that fail before EXEC is called.
+ c.Do("DEL", "k0")
c.Do("ZADD", "k0", 0, 0)
c.Send("MULTI")
c.Send("NOTACOMMAND", "k0", 0, 0)
@@ -455,6 +571,7 @@ func TestExecError(t *testing.T) {
// Execute commands that fail after EXEC is called. The first command
// returns an error.
+ c.Do("DEL", "k1")
c.Do("ZADD", "k1", 0, 0)
c.Send("MULTI")
c.Send("HSET", "k1", 0, 0)
@@ -478,7 +595,7 @@ func TestExecError(t *testing.T) {
}
if _, ok := vs[1].([]byte); !ok {
- t.Fatalf("second result is type %T, expected []byte", vs[2])
+ t.Fatalf("second result is type %T, expected []byte", vs[1])
}
// Execute commands that fail after EXEC is called. The second command
@@ -513,7 +630,7 @@ func TestExecError(t *testing.T) {
func BenchmarkDoEmpty(b *testing.B) {
b.StopTimer()
- c, err := redistest.Dial()
+ c, err := redis.DialDefaultServer()
if err != nil {
b.Fatal(err)
}
@@ -528,7 +645,7 @@ func BenchmarkDoEmpty(b *testing.B) {
func BenchmarkDoPing(b *testing.B) {
b.StopTimer()
- c, err := redistest.Dial()
+ c, err := redis.DialDefaultServer()
if err != nil {
b.Fatal(err)
}
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/pool.go b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/pool.go
index 9daf2e33f..c29b35f81 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/pool.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/pool.go
@@ -25,7 +25,7 @@ import (
"sync"
"time"
- "github.com/garyburd/redigo/internal"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/garyburd/redigo/internal"
)
var nowFunc = time.Now // for testing
@@ -94,7 +94,10 @@ var (
type Pool struct {
// Dial is an application supplied function for creating and configuring a
- // connection
+ // connection.
+ //
+ // The connection returned from Dial must not be in a special state
+ // (subscribed to pubsub channel, transaction started, ...).
Dial func() (Conn, error)
// TestOnBorrow is an optional application supplied function for checking
@@ -116,7 +119,7 @@ type Pool struct {
// the timeout to a value less than the server's timeout.
IdleTimeout time.Duration
- // If Wait is true and the pool is at the MaxIdle limit, then Get() waits
+ // If Wait is true and the pool is at the MaxActive limit, then Get() waits
// for a connection to be returned to the pool before returning.
Wait bool
@@ -135,8 +138,9 @@ type idleConn struct {
t time.Time
}
-// NewPool creates a new pool. This function is deprecated. Applications should
-// initialize the Pool fields directly as shown in example.
+// NewPool creates a new pool.
+//
+// Deprecated: Initialize the Pool directory as shown in the example.
func NewPool(newFn func() (Conn, error), maxIdle int) *Pool {
return &Pool{Dial: newFn, MaxIdle: maxIdle}
}
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/pool_test.go b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/pool_test.go
index 1fe305f16..89e46e08d 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/pool_test.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/pool_test.go
@@ -22,8 +22,7 @@ import (
"testing"
"time"
- "github.com/garyburd/redigo/internal/redistest"
- "github.com/garyburd/redigo/redis"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/garyburd/redigo/redis"
)
type poolTestConn struct {
@@ -32,10 +31,16 @@ type poolTestConn struct {
redis.Conn
}
-func (c *poolTestConn) Close() error { c.d.open -= 1; return nil }
-func (c *poolTestConn) Err() error { return c.err }
+func (c *poolTestConn) Close() error {
+ c.d.mu.Lock()
+ c.d.open -= 1
+ c.d.mu.Unlock()
+ return c.Conn.Close()
+}
+
+func (c *poolTestConn) Err() error { return c.err }
-func (c *poolTestConn) Do(commandName string, args ...interface{}) (reply interface{}, err error) {
+func (c *poolTestConn) Do(commandName string, args ...interface{}) (interface{}, error) {
if commandName == "ERR" {
c.err = args[0].(error)
commandName = "PING"
@@ -52,6 +57,7 @@ func (c *poolTestConn) Send(commandName string, args ...interface{}) error {
}
type poolDialer struct {
+ mu sync.Mutex
t *testing.T
dialed int
open int
@@ -60,19 +66,25 @@ type poolDialer struct {
}
func (d *poolDialer) dial() (redis.Conn, error) {
+ d.mu.Lock()
d.dialed += 1
- if d.dialErr != nil {
+ dialErr := d.dialErr
+ d.mu.Unlock()
+ if dialErr != nil {
return nil, d.dialErr
}
- c, err := redistest.Dial()
+ c, err := redis.DialDefaultServer()
if err != nil {
return nil, err
}
+ d.mu.Lock()
d.open += 1
+ d.mu.Unlock()
return &poolTestConn{d: d, Conn: c}, nil
}
func (d *poolDialer) check(message string, p *redis.Pool, dialed, open int) {
+ d.mu.Lock()
if d.dialed != dialed {
d.t.Errorf("%s: dialed=%d, want %d", message, d.dialed, dialed)
}
@@ -82,6 +94,7 @@ func (d *poolDialer) check(message string, p *redis.Pool, dialed, open int) {
if active := p.ActiveCount(); active != open {
d.t.Errorf("%s: active=%d, want %d", message, active, open)
}
+ d.mu.Unlock()
}
func TestPoolReuse(t *testing.T) {
@@ -111,6 +124,8 @@ func TestPoolMaxIdle(t *testing.T) {
MaxIdle: 2,
Dial: d.dial,
}
+ defer p.Close()
+
for i := 0; i < 10; i++ {
c1 := p.Get()
c1.Do("PING")
@@ -133,6 +148,7 @@ func TestPoolError(t *testing.T) {
MaxIdle: 2,
Dial: d.dial,
}
+ defer p.Close()
c := p.Get()
c.Do("ERR", io.EOF)
@@ -154,6 +170,7 @@ func TestPoolClose(t *testing.T) {
MaxIdle: 2,
Dial: d.dial,
}
+ defer p.Close()
c1 := p.Get()
c1.Do("PING")
@@ -195,6 +212,7 @@ func TestPoolTimeout(t *testing.T) {
IdleTimeout: 300 * time.Second,
Dial: d.dial,
}
+ defer p.Close()
now := time.Now()
redis.SetNowFunc(func() time.Time { return now })
@@ -213,14 +231,14 @@ func TestPoolTimeout(t *testing.T) {
c.Close()
d.check("2", p, 2, 1)
-
- p.Close()
}
func TestPoolConcurrenSendReceive(t *testing.T) {
p := &redis.Pool{
- Dial: redistest.Dial,
+ Dial: redis.DialDefaultServer,
}
+ defer p.Close()
+
c := p.Get()
done := make(chan error, 1)
go func() {
@@ -238,7 +256,6 @@ func TestPoolConcurrenSendReceive(t *testing.T) {
t.Fatalf("Do() returned error %v", err)
}
c.Close()
- p.Close()
}
func TestPoolBorrowCheck(t *testing.T) {
@@ -248,6 +265,7 @@ func TestPoolBorrowCheck(t *testing.T) {
Dial: d.dial,
TestOnBorrow: func(redis.Conn, time.Time) error { return redis.Error("BLAH") },
}
+ defer p.Close()
for i := 0; i < 10; i++ {
c := p.Get()
@@ -255,7 +273,6 @@ func TestPoolBorrowCheck(t *testing.T) {
c.Close()
}
d.check("1", p, 10, 1)
- p.Close()
}
func TestPoolMaxActive(t *testing.T) {
@@ -265,6 +282,8 @@ func TestPoolMaxActive(t *testing.T) {
MaxActive: 2,
Dial: d.dial,
}
+ defer p.Close()
+
c1 := p.Get()
c1.Do("PING")
c2 := p.Get()
@@ -289,7 +308,6 @@ func TestPoolMaxActive(t *testing.T) {
c3.Close()
d.check("4", p, 2, 2)
- p.Close()
}
func TestPoolMonitorCleanup(t *testing.T) {
@@ -299,12 +317,13 @@ func TestPoolMonitorCleanup(t *testing.T) {
MaxActive: 2,
Dial: d.dial,
}
+ defer p.Close()
+
c := p.Get()
c.Send("MONITOR")
c.Close()
d.check("", p, 1, 0)
- p.Close()
}
func TestPoolPubSubCleanup(t *testing.T) {
@@ -314,6 +333,7 @@ func TestPoolPubSubCleanup(t *testing.T) {
MaxActive: 2,
Dial: d.dial,
}
+ defer p.Close()
c := p.Get()
c.Send("SUBSCRIBE", "x")
@@ -334,8 +354,6 @@ func TestPoolPubSubCleanup(t *testing.T) {
t.Errorf("got commands %v, want %v", d.commands, want)
}
d.commands = nil
-
- p.Close()
}
func TestPoolTransactionCleanup(t *testing.T) {
@@ -345,6 +363,7 @@ func TestPoolTransactionCleanup(t *testing.T) {
MaxActive: 2,
Dial: d.dial,
}
+ defer p.Close()
c := p.Get()
c.Do("WATCH", "key")
@@ -406,8 +425,6 @@ func TestPoolTransactionCleanup(t *testing.T) {
t.Errorf("got commands %v, want %v", d.commands, want)
}
d.commands = nil
-
- p.Close()
}
func startGoroutines(p *redis.Pool, cmd string, args ...interface{}) chan error {
@@ -436,6 +453,7 @@ func TestWaitPool(t *testing.T) {
Wait: true,
}
defer p.Close()
+
c := p.Get()
errs := startGoroutines(p, "PING")
d.check("before close", p, 1, 1)
@@ -462,6 +480,8 @@ func TestWaitPoolClose(t *testing.T) {
Dial: d.dial,
Wait: true,
}
+ defer p.Close()
+
c := p.Get()
if _, err := c.Do("PING"); err != nil {
t.Fatal(err)
@@ -497,6 +517,7 @@ func TestWaitPoolCommandError(t *testing.T) {
Wait: true,
}
defer p.Close()
+
c := p.Get()
errs := startGoroutines(p, "ERR", testErr)
d.check("before close", p, 1, 1)
@@ -525,6 +546,7 @@ func TestWaitPoolDialError(t *testing.T) {
Wait: true,
}
defer p.Close()
+
c := p.Get()
errs := startGoroutines(p, "ERR", testErr)
d.check("before close", p, 1, 1)
@@ -565,7 +587,7 @@ func TestWaitPoolDialError(t *testing.T) {
// test ensures that iteration will work correctly if multiple threads are
// iterating simultaneously.
func TestLocking_TestOnBorrowFails_PoolDoesntCrash(t *testing.T) {
- count := 100
+ const count = 100
// First we'll Create a pool where the pilfering of idle connections fails.
d := poolDialer{t: t}
@@ -580,29 +602,17 @@ func TestLocking_TestOnBorrowFails_PoolDoesntCrash(t *testing.T) {
defer p.Close()
// Fill the pool with idle connections.
- b1 := sync.WaitGroup{}
- b1.Add(count)
- b2 := sync.WaitGroup{}
- b2.Add(count)
- for i := 0; i < count; i++ {
- go func() {
- c := p.Get()
- if c.Err() != nil {
- t.Errorf("pool get failed: %v", c.Err())
- }
- b1.Done()
- b1.Wait()
- c.Close()
- b2.Done()
- }()
+ conns := make([]redis.Conn, count)
+ for i := range conns {
+ conns[i] = p.Get()
}
- b2.Wait()
- if d.dialed != count {
- t.Errorf("Expected %d dials, got %d", count, d.dialed)
+ for i := range conns {
+ conns[i].Close()
}
// Spawn a bunch of goroutines to thrash the pool.
- b2.Add(count)
+ var wg sync.WaitGroup
+ wg.Add(count)
for i := 0; i < count; i++ {
go func() {
c := p.Get()
@@ -610,10 +620,10 @@ func TestLocking_TestOnBorrowFails_PoolDoesntCrash(t *testing.T) {
t.Errorf("pool get failed: %v", c.Err())
}
c.Close()
- b2.Done()
+ wg.Done()
}()
}
- b2.Wait()
+ wg.Wait()
if d.dialed != count*2 {
t.Errorf("Expected %d dials, got %d", count*2, d.dialed)
}
@@ -621,7 +631,7 @@ func TestLocking_TestOnBorrowFails_PoolDoesntCrash(t *testing.T) {
func BenchmarkPoolGet(b *testing.B) {
b.StopTimer()
- p := redis.Pool{Dial: redistest.Dial, MaxIdle: 2}
+ p := redis.Pool{Dial: redis.DialDefaultServer, MaxIdle: 2}
c := p.Get()
if err := c.Err(); err != nil {
b.Fatal(err)
@@ -637,7 +647,7 @@ func BenchmarkPoolGet(b *testing.B) {
func BenchmarkPoolGetErr(b *testing.B) {
b.StopTimer()
- p := redis.Pool{Dial: redistest.Dial, MaxIdle: 2}
+ p := redis.Pool{Dial: redis.DialDefaultServer, MaxIdle: 2}
c := p.Get()
if err := c.Err(); err != nil {
b.Fatal(err)
@@ -656,7 +666,7 @@ func BenchmarkPoolGetErr(b *testing.B) {
func BenchmarkPoolGetPing(b *testing.B) {
b.StopTimer()
- p := redis.Pool{Dial: redistest.Dial, MaxIdle: 2}
+ p := redis.Pool{Dial: redis.DialDefaultServer, MaxIdle: 2}
c := p.Get()
if err := c.Err(); err != nil {
b.Fatal(err)
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/pubsub_test.go b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/pubsub_test.go
index 365a58821..05e60763c 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/pubsub_test.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/pubsub_test.go
@@ -16,20 +16,18 @@ package redis_test
import (
"fmt"
- "net"
"reflect"
"sync"
"testing"
- "time"
- "github.com/garyburd/redigo/internal/redistest"
- "github.com/garyburd/redigo/redis"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/garyburd/redigo/redis"
)
func publish(channel, value interface{}) {
c, err := dial()
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
defer c.Close()
c.Do("PUBLISH", channel, value)
@@ -39,7 +37,8 @@ func publish(channel, value interface{}) {
func ExamplePubSubConn() {
c, err := dial()
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
defer c.Close()
var wg sync.WaitGroup
@@ -111,20 +110,19 @@ func expectPushed(t *testing.T, c redis.PubSubConn, message string, expected int
}
func TestPushed(t *testing.T) {
- pc, err := redistest.Dial()
+ pc, err := redis.DialDefaultServer()
if err != nil {
t.Fatalf("error connection to database, %v", err)
}
defer pc.Close()
- nc, err := net.Dial("tcp", ":6379")
+ sc, err := redis.DialDefaultServer()
if err != nil {
- t.Fatal(err)
+ t.Fatalf("error connection to database, %v", err)
}
- defer nc.Close()
- nc.SetReadDeadline(time.Now().Add(4 * time.Second))
+ defer sc.Close()
- c := redis.PubSubConn{Conn: redis.NewConn(nc, 0, 0)}
+ c := redis.PubSubConn{Conn: sc}
c.Subscribe("c1")
expectPushed(t, c, "Subscribe(c1)", redis.Subscription{Kind: "subscribe", Channel: "c1", Count: 1})
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/reply.go b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/reply.go
index 5af29bf51..57896147f 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/reply.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/reply.go
@@ -215,7 +215,9 @@ func Bool(reply interface{}, err error) (bool, error) {
return false, fmt.Errorf("redigo: unexpected type for Bool, got type %T", reply)
}
-// MultiBulk is deprecated. Use Values.
+// MultiBulk is a helper that converts an array command reply to a []interface{}.
+//
+// Deprecated: Use Values instead.
func MultiBulk(reply interface{}, err error) ([]interface{}, error) { return Values(reply, err) }
// Values is a helper that converts an array command reply to a []interface{}.
@@ -271,13 +273,40 @@ func Strings(reply interface{}, err error) ([]string, error) {
return nil, fmt.Errorf("redigo: unexpected type for Strings, got type %T", reply)
}
+// ByteSlices is a helper that converts an array command reply to a [][]byte.
+// If err is not equal to nil, then ByteSlices returns nil, err. Nil array
+// items are stay nil. ByteSlices returns an error if an array item is not a
+// bulk string or nil.
+func ByteSlices(reply interface{}, err error) ([][]byte, error) {
+ if err != nil {
+ return nil, err
+ }
+ switch reply := reply.(type) {
+ case []interface{}:
+ result := make([][]byte, len(reply))
+ for i := range reply {
+ if reply[i] == nil {
+ continue
+ }
+ p, ok := reply[i].([]byte)
+ if !ok {
+ return nil, fmt.Errorf("redigo: unexpected element type for ByteSlices, got type %T", reply[i])
+ }
+ result[i] = p
+ }
+ return result, nil
+ case nil:
+ return nil, ErrNil
+ case Error:
+ return nil, reply
+ }
+ return nil, fmt.Errorf("redigo: unexpected type for ByteSlices, got type %T", reply)
+}
+
// Ints is a helper that converts an array command reply to a []int. If
// err is not equal to nil, then Ints returns nil, err.
func Ints(reply interface{}, err error) ([]int, error) {
var ints []int
- if reply == nil {
- return ints, ErrNil
- }
values, err := Values(reply, err)
if err != nil {
return ints, err
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/reply_test.go b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/reply_test.go
index 92744c590..83c0c7b98 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/reply_test.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/reply_test.go
@@ -19,8 +19,7 @@ import (
"reflect"
"testing"
- "github.com/garyburd/redigo/internal/redistest"
- "github.com/garyburd/redigo/redis"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/garyburd/redigo/redis"
)
type valueError struct {
@@ -58,6 +57,16 @@ var replyTests = []struct {
ve([]string(nil), redis.ErrNil),
},
{
+ "byteslices([v1, v2])",
+ ve(redis.ByteSlices([]interface{}{[]byte("v1"), []byte("v2")}, nil)),
+ ve([][]byte{[]byte("v1"), []byte("v2")}, nil),
+ },
+ {
+ "byteslices(nil)",
+ ve(redis.ByteSlices(nil, nil)),
+ ve([][]byte(nil), redis.ErrNil),
+ },
+ {
"values([v1, v2])",
ve(redis.Values([]interface{}{[]byte("v1"), []byte("v2")}, nil)),
ve([]interface{}{[]byte("v1"), []byte("v2")}, nil),
@@ -101,15 +110,16 @@ func TestReply(t *testing.T) {
}
}
-// dial wraps DialTestDB() with a more suitable function name for examples.
+// dial wraps DialDefaultServer() with a more suitable function name for examples.
func dial() (redis.Conn, error) {
- return redistest.Dial()
+ return redis.DialDefaultServer()
}
func ExampleBool() {
c, err := dial()
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
defer c.Close()
@@ -123,7 +133,8 @@ func ExampleBool() {
func ExampleInt() {
c, err := dial()
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
defer c.Close()
@@ -140,7 +151,8 @@ func ExampleInt() {
func ExampleInts() {
c, err := dial()
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
defer c.Close()
@@ -154,7 +166,8 @@ func ExampleInts() {
func ExampleString() {
c, err := dial()
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
defer c.Close()
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/scan.go b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/scan.go
index 8c9cfa18d..962e94bcc 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/scan.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/scan.go
@@ -32,11 +32,25 @@ func ensureLen(d reflect.Value, n int) {
}
func cannotConvert(d reflect.Value, s interface{}) error {
- return fmt.Errorf("redigo: Scan cannot convert from %s to %s",
- reflect.TypeOf(s), d.Type())
+ var sname string
+ switch s.(type) {
+ case string:
+ sname = "Redis simple string"
+ case Error:
+ sname = "Redis error"
+ case int64:
+ sname = "Redis integer"
+ case []byte:
+ sname = "Redis bulk string"
+ case []interface{}:
+ sname = "Redis array"
+ default:
+ sname = reflect.TypeOf(s).String()
+ }
+ return fmt.Errorf("cannot convert from %s to %s", sname, d.Type())
}
-func convertAssignBytes(d reflect.Value, s []byte) (err error) {
+func convertAssignBulkString(d reflect.Value, s []byte) (err error) {
switch d.Type().Kind() {
case reflect.Float32, reflect.Float64:
var x float64
@@ -98,7 +112,7 @@ func convertAssignInt(d reflect.Value, s int64) (err error) {
func convertAssignValue(d reflect.Value, s interface{}) (err error) {
switch s := s.(type) {
case []byte:
- err = convertAssignBytes(d, s)
+ err = convertAssignBulkString(d, s)
case int64:
err = convertAssignInt(d, s)
default:
@@ -107,7 +121,7 @@ func convertAssignValue(d reflect.Value, s interface{}) (err error) {
return err
}
-func convertAssignValues(d reflect.Value, s []interface{}) error {
+func convertAssignArray(d reflect.Value, s []interface{}) error {
if d.Type().Kind() != reflect.Slice {
return cannotConvert(d, s)
}
@@ -144,7 +158,7 @@ func convertAssign(d interface{}, s interface{}) (err error) {
if d := reflect.ValueOf(d); d.Type().Kind() != reflect.Ptr {
err = cannotConvert(d, s)
} else {
- err = convertAssignBytes(d.Elem(), s)
+ err = convertAssignBulkString(d.Elem(), s)
}
}
case int64:
@@ -169,6 +183,13 @@ func convertAssign(d interface{}, s interface{}) (err error) {
err = convertAssignInt(d.Elem(), s)
}
}
+ case string:
+ switch d := d.(type) {
+ case *string:
+ *d = string(s)
+ default:
+ err = cannotConvert(reflect.ValueOf(d), s)
+ }
case []interface{}:
switch d := d.(type) {
case *[]interface{}:
@@ -181,7 +202,7 @@ func convertAssign(d interface{}, s interface{}) (err error) {
if d := reflect.ValueOf(d); d.Type().Kind() != reflect.Ptr {
err = cannotConvert(d, s)
} else {
- err = convertAssignValues(d.Elem(), s)
+ err = convertAssignArray(d.Elem(), s)
}
}
case Error:
@@ -206,12 +227,13 @@ func convertAssign(d interface{}, s interface{}) (err error) {
// following the copied values.
func Scan(src []interface{}, dest ...interface{}) ([]interface{}, error) {
if len(src) < len(dest) {
- return nil, errors.New("redigo: Scan array short")
+ return nil, errors.New("redigo.Scan: array short")
}
var err error
for i, d := range dest {
err = convertAssign(d, src[i])
if err != nil {
+ err = fmt.Errorf("redigo.Scan: cannot assign to dest %d: %v", i, err)
break
}
}
@@ -219,9 +241,9 @@ func Scan(src []interface{}, dest ...interface{}) ([]interface{}, error) {
}
type fieldSpec struct {
- name string
- index []int
- //omitEmpty bool
+ name string
+ index []int
+ omitEmpty bool
}
type structSpec struct {
@@ -237,7 +259,7 @@ func compileStructSpec(t reflect.Type, depth map[string]int, index []int, ss *st
for i := 0; i < t.NumField(); i++ {
f := t.Field(i)
switch {
- case f.PkgPath != "":
+ case f.PkgPath != "" && !f.Anonymous:
// Ignore unexported fields.
case f.Anonymous:
// TODO: Handle pointers. Requires change to decoder and
@@ -258,10 +280,10 @@ func compileStructSpec(t reflect.Type, depth map[string]int, index []int, ss *st
}
for _, s := range p[1:] {
switch s {
- //case "omitempty":
- // fs.omitempty = true
+ case "omitempty":
+ fs.omitEmpty = true
default:
- panic(errors.New("redigo: unknown field flag " + s + " for type " + t.Name()))
+ panic(fmt.Errorf("redigo: unknown field tag %s for type %s", s, t.Name()))
}
}
}
@@ -321,7 +343,7 @@ func structSpecForType(t reflect.Type) *structSpec {
return ss
}
-var errScanStructValue = errors.New("redigo: ScanStruct value must be non-nil pointer to a struct")
+var errScanStructValue = errors.New("redigo.ScanStruct: value must be non-nil pointer to a struct")
// ScanStruct scans alternating names and values from src to a struct. The
// HGETALL and CONFIG GET commands return replies in this format.
@@ -350,7 +372,7 @@ func ScanStruct(src []interface{}, dest interface{}) error {
ss := structSpecForType(d.Type())
if len(src)%2 != 0 {
- return errors.New("redigo: ScanStruct expects even number of values in values")
+ return errors.New("redigo.ScanStruct: number of values not a multiple of 2")
}
for i := 0; i < len(src); i += 2 {
@@ -360,21 +382,21 @@ func ScanStruct(src []interface{}, dest interface{}) error {
}
name, ok := src[i].([]byte)
if !ok {
- return errors.New("redigo: ScanStruct key not a bulk string value")
+ return fmt.Errorf("redigo.ScanStruct: key %d not a bulk string value", i)
}
fs := ss.fieldSpec(name)
if fs == nil {
continue
}
if err := convertAssignValue(d.FieldByIndex(fs.index), s); err != nil {
- return err
+ return fmt.Errorf("redigo.ScanStruct: cannot assign field %s: %v", fs.name, err)
}
}
return nil
}
var (
- errScanSliceValue = errors.New("redigo: ScanSlice dest must be non-nil pointer to a struct")
+ errScanSliceValue = errors.New("redigo.ScanSlice: dest must be non-nil pointer to a struct")
)
// ScanSlice scans src to the slice pointed to by dest. The elements the dest
@@ -407,7 +429,7 @@ func ScanSlice(src []interface{}, dest interface{}, fieldNames ...string) error
continue
}
if err := convertAssignValue(d.Index(i), s); err != nil {
- return err
+ return fmt.Errorf("redigo.ScanSlice: cannot assign element %d: %v", i, err)
}
}
return nil
@@ -420,18 +442,18 @@ func ScanSlice(src []interface{}, dest interface{}, fieldNames ...string) error
for i, name := range fieldNames {
fss[i] = ss.m[name]
if fss[i] == nil {
- return errors.New("redigo: ScanSlice bad field name " + name)
+ return fmt.Errorf("redigo.ScanSlice: ScanSlice bad field name %s", name)
}
}
}
if len(fss) == 0 {
- return errors.New("redigo: ScanSlice no struct fields")
+ return errors.New("redigo.ScanSlice: no struct fields")
}
n := len(src) / len(fss)
if n*len(fss) != len(src) {
- return errors.New("redigo: ScanSlice length not a multiple of struct field count")
+ return errors.New("redigo.ScanSlice: length not a multiple of struct field count")
}
ensureLen(d, n)
@@ -449,7 +471,7 @@ func ScanSlice(src []interface{}, dest interface{}, fieldNames ...string) error
continue
}
if err := convertAssignValue(d.FieldByIndex(fs.index), s); err != nil {
- return err
+ return fmt.Errorf("redigo.ScanSlice: cannot assign element %d to field %s: %v", i*len(fss)+j, fs.name, err)
}
}
}
@@ -507,6 +529,26 @@ func flattenStruct(args Args, v reflect.Value) Args {
ss := structSpecForType(v.Type())
for _, fs := range ss.l {
fv := v.FieldByIndex(fs.index)
+ if fs.omitEmpty {
+ var empty = false
+ switch fv.Kind() {
+ case reflect.Array, reflect.Map, reflect.Slice, reflect.String:
+ empty = fv.Len() == 0
+ case reflect.Bool:
+ empty = !fv.Bool()
+ case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
+ empty = fv.Int() == 0
+ case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr:
+ empty = fv.Uint() == 0
+ case reflect.Float32, reflect.Float64:
+ empty = fv.Float() == 0
+ case reflect.Interface, reflect.Ptr:
+ empty = fv.IsNil()
+ }
+ if empty {
+ continue
+ }
+ }
args = append(args, fs.name, fv.Interface())
}
return args
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/scan_test.go b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/scan_test.go
index b57dd8969..af1f2c2da 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/scan_test.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/scan_test.go
@@ -16,10 +16,11 @@ package redis_test
import (
"fmt"
- "github.com/garyburd/redigo/redis"
"math"
"reflect"
"testing"
+
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/garyburd/redigo/redis"
)
var scanConversionTests = []struct {
@@ -46,6 +47,7 @@ var scanConversionTests = []struct {
{[]byte("1"), true},
{int64(1), true},
{[]byte("t"), true},
+ {"hello", "hello"},
{[]byte("hello"), "hello"},
{[]byte("world"), []byte("world")},
{[]interface{}{[]byte("foo")}, []interface{}{[]byte("foo")}},
@@ -100,7 +102,8 @@ func TestScanConversionError(t *testing.T) {
func ExampleScan() {
c, err := dial()
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
defer c.Close()
@@ -115,7 +118,8 @@ func ExampleScan() {
"GET", "album:*->title",
"GET", "album:*->rating"))
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
for len(values) > 0 {
@@ -123,7 +127,8 @@ func ExampleScan() {
rating := -1 // initialize to illegal value to detect nil.
values, err = redis.Scan(values, &title, &rating)
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
if rating == -1 {
fmt.Println(title, "not-rated")
@@ -295,7 +300,8 @@ func TestScanSlice(t *testing.T) {
func ExampleScanSlice() {
c, err := dial()
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
defer c.Close()
@@ -310,7 +316,8 @@ func ExampleScanSlice() {
"GET", "album:*->title",
"GET", "album:*->rating"))
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
var albums []struct {
@@ -318,7 +325,8 @@ func ExampleScanSlice() {
Rating int
}
if err := redis.ScanSlice(values, &albums); err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
fmt.Printf("%v\n", albums)
// Output:
@@ -332,16 +340,17 @@ var argsTests = []struct {
}{
{"struct ptr",
redis.Args{}.AddFlat(&struct {
- I int `redis:"i"`
- U uint `redis:"u"`
- S string `redis:"s"`
- P []byte `redis:"p"`
+ I int `redis:"i"`
+ U uint `redis:"u"`
+ S string `redis:"s"`
+ P []byte `redis:"p"`
+ M map[string]string `redis:"m"`
Bt bool
Bf bool
}{
- -1234, 5678, "hello", []byte("world"), true, false,
+ -1234, 5678, "hello", []byte("world"), map[string]string{"hello": "world"}, true, false,
}),
- redis.Args{"i", int(-1234), "u", uint(5678), "s", "hello", "p", []byte("world"), "Bt", true, "Bf", false},
+ redis.Args{"i", int(-1234), "u", uint(5678), "s", "hello", "p", []byte("world"), "m", map[string]string{"hello": "world"}, "Bt", true, "Bf", false},
},
{"struct",
redis.Args{}.AddFlat(struct{ I int }{123}),
@@ -351,6 +360,20 @@ var argsTests = []struct {
redis.Args{}.Add(1).AddFlat([]string{"a", "b", "c"}).Add(2),
redis.Args{1, "a", "b", "c", 2},
},
+ {"struct omitempty",
+ redis.Args{}.AddFlat(&struct {
+ I int `redis:"i,omitempty"`
+ U uint `redis:"u,omitempty"`
+ S string `redis:"s,omitempty"`
+ P []byte `redis:"p,omitempty"`
+ M map[string]string `redis:"m,omitempty"`
+ Bt bool `redis:"Bt,omitempty"`
+ Bf bool `redis:"Bf,omitempty"`
+ }{
+ 0, 0, "", []byte{}, map[string]string{}, true, false,
+ }),
+ redis.Args{"Bt", true},
+ },
}
func TestArgs(t *testing.T) {
@@ -364,7 +387,8 @@ func TestArgs(t *testing.T) {
func ExampleArgs() {
c, err := dial()
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
defer c.Close()
@@ -379,7 +403,8 @@ func ExampleArgs() {
p1.Body = "Hello"
if _, err := c.Do("HMSET", redis.Args{}.Add("id1").AddFlat(&p1)...); err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
m := map[string]string{
@@ -389,18 +414,21 @@ func ExampleArgs() {
}
if _, err := c.Do("HMSET", redis.Args{}.Add("id2").AddFlat(m)...); err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
for _, id := range []string{"id1", "id2"} {
v, err := redis.Values(c.Do("HGETALL", id))
if err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
if err := redis.ScanStruct(v, &p2); err != nil {
- panic(err)
+ fmt.Println(err)
+ return
}
fmt.Printf("%+v\n", p2)
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/script_test.go b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/script_test.go
index c9635bf08..5d414ea59 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/script_test.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/script_test.go
@@ -20,8 +20,7 @@ import (
"testing"
"time"
- "github.com/garyburd/redigo/internal/redistest"
- "github.com/garyburd/redigo/redis"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/garyburd/redigo/redis"
)
func ExampleScript(c redis.Conn, reply interface{}, err error) {
@@ -35,7 +34,7 @@ func ExampleScript(c redis.Conn, reply interface{}, err error) {
}
func TestScript(t *testing.T) {
- c, err := redistest.Dial()
+ c, err := redis.DialDefaultServer()
if err != nil {
t.Fatalf("error connection to database, %v", err)
}
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/test_test.go b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/test_test.go
index b959a11f4..7240fa1f3 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/test_test.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/test_test.go
@@ -16,7 +16,17 @@ package redis
import (
"bufio"
- "net"
+ "errors"
+ "flag"
+ "fmt"
+ "io"
+ "io/ioutil"
+ "os"
+ "os/exec"
+ "strconv"
+ "strings"
+ "sync"
+ "testing"
"time"
)
@@ -24,15 +34,144 @@ func SetNowFunc(f func() time.Time) {
nowFunc = f
}
-type nopCloser struct{ net.Conn }
+var (
+ ErrNegativeInt = errNegativeInt
-func (nopCloser) Close() error { return nil }
+ serverPath = flag.String("redis-server", "redis-server", "Path to redis server binary")
+ serverBasePort = flag.Int("redis-port", 16379, "Beginning of port range for test servers")
+ serverLogName = flag.String("redis-log", "", "Write Redis server logs to `filename`")
+ serverLog = ioutil.Discard
+
+ defaultServerMu sync.Mutex
+ defaultServer *Server
+ defaultServerErr error
+)
-// NewConnBufio is a hook for tests.
-func NewConnBufio(rw bufio.ReadWriter) Conn {
- return &conn{br: rw.Reader, bw: rw.Writer, conn: nopCloser{}}
+type Server struct {
+ name string
+ cmd *exec.Cmd
+ done chan struct{}
}
-var (
- ErrNegativeInt = errNegativeInt
-)
+func NewServer(name string, args ...string) (*Server, error) {
+ s := &Server{
+ name: name,
+ cmd: exec.Command(*serverPath, args...),
+ done: make(chan struct{}),
+ }
+
+ r, err := s.cmd.StdoutPipe()
+ if err != nil {
+ return nil, err
+ }
+
+ err = s.cmd.Start()
+ if err != nil {
+ return nil, err
+ }
+
+ ready := make(chan error, 1)
+ go s.watch(r, ready)
+
+ select {
+ case err = <-ready:
+ case <-time.After(time.Second * 10):
+ err = errors.New("timeout waiting for server to start")
+ }
+
+ if err != nil {
+ s.Stop()
+ return nil, err
+ }
+
+ return s, nil
+}
+
+func (s *Server) watch(r io.Reader, ready chan error) {
+ fmt.Fprintf(serverLog, "%d START %s \n", s.cmd.Process.Pid, s.name)
+ var listening bool
+ var text string
+ scn := bufio.NewScanner(r)
+ for scn.Scan() {
+ text = scn.Text()
+ fmt.Fprintf(serverLog, "%s\n", text)
+ if !listening {
+ if strings.Contains(text, "The server is now ready to accept connections on port") {
+ listening = true
+ ready <- nil
+ }
+ }
+ }
+ if !listening {
+ ready <- fmt.Errorf("server exited: %s", text)
+ }
+ s.cmd.Wait()
+ fmt.Fprintf(serverLog, "%d STOP %s \n", s.cmd.Process.Pid, s.name)
+ close(s.done)
+}
+
+func (s *Server) Stop() {
+ s.cmd.Process.Signal(os.Interrupt)
+ <-s.done
+}
+
+// stopDefaultServer stops the server created by DialDefaultServer.
+func stopDefaultServer() {
+ defaultServerMu.Lock()
+ defer defaultServerMu.Unlock()
+ if defaultServer != nil {
+ defaultServer.Stop()
+ defaultServer = nil
+ }
+}
+
+// startDefaultServer starts the default server if not already running.
+func startDefaultServer() error {
+ defaultServerMu.Lock()
+ defer defaultServerMu.Unlock()
+ if defaultServer != nil || defaultServerErr != nil {
+ return defaultServerErr
+ }
+ defaultServer, defaultServerErr = NewServer(
+ "default",
+ "--port", strconv.Itoa(*serverBasePort),
+ "--save", "",
+ "--appendonly", "no")
+ return defaultServerErr
+}
+
+// DialDefaultServer starts the test server if not already started and dials a
+// connection to the server.
+func DialDefaultServer() (Conn, error) {
+ if err := startDefaultServer(); err != nil {
+ return nil, err
+ }
+ c, err := Dial("tcp", fmt.Sprintf(":%d", *serverBasePort), DialReadTimeout(1*time.Second), DialWriteTimeout(1*time.Second))
+ if err != nil {
+ return nil, err
+ }
+ c.Do("FLUSHDB")
+ return c, nil
+}
+
+func TestMain(m *testing.M) {
+ os.Exit(func() int {
+ flag.Parse()
+
+ var f *os.File
+ if *serverLogName != "" {
+ var err error
+ f, err = os.OpenFile(*serverLogName, os.O_WRONLY|os.O_CREATE|os.O_APPEND, 0600)
+ if err != nil {
+ fmt.Fprintf(os.Stderr, "Error opening redis-log: %v\n", err)
+ return 1
+ }
+ defer f.Close()
+ serverLog = f
+ }
+
+ defer stopDefaultServer()
+
+ return m.Run()
+ }())
+}
diff --git a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/zpop_example_test.go b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/zpop_example_test.go
index 1d86ee6ce..3e4bca418 100644
--- a/Godeps/_workspace/src/github.com/garyburd/redigo/redis/zpop_example_test.go
+++ b/Godeps/_workspace/src/github.com/garyburd/redigo/redis/zpop_example_test.go
@@ -16,7 +16,7 @@ package redis_test
import (
"fmt"
- "github.com/garyburd/redigo/redis"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/garyburd/redigo/redis"
)
// zpop pops a value from the ZSET key using WATCH/MULTI/EXEC commands.
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/.travis.yml b/Godeps/_workspace/src/github.com/go-gorp/gorp/.travis.yml
index 6df5edf1c..ce4602884 100644
--- a/Godeps/_workspace/src/github.com/go-gorp/gorp/.travis.yml
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/.travis.yml
@@ -1,23 +1,28 @@
language: go
go:
- - 1.2
- - 1.3
- - 1.4
- - tip
+- 1.3
+- 1.4
+- tip
services:
- - mysql
- - postgres
- - sqlite3
+- mysql
+- postgres
+- sqlite3
+
+env:
+ global:
+ - secure: RriLxF6+2yMl67hdVv8ImXlu0h62mhcpqjaOgYNU+IEbUQ7hx96CKY6gkpYubW3BgApvF5RH6j3+HKvh2kGp0XhDOYOQCODfBSaSipZ5Aa5RKjsEYLtuVIobvJ80awR9hUeql69+WXs0/s72WThG0qTbOUY4pqHWfteeY235hWM=
before_script:
- - mysql -e "CREATE DATABASE gorptest;"
- - mysql -u root -e "GRANT ALL ON gorptest.* TO gorptest@localhost IDENTIFIED BY 'gorptest'"
- - psql -c "CREATE DATABASE gorptest;" -U postgres
- - psql -c "CREATE USER "gorptest" WITH SUPERUSER PASSWORD 'gorptest';" -U postgres
- - go get github.com/lib/pq
- - go get github.com/mattn/go-sqlite3
- - go get github.com/ziutek/mymysql/godrv
- - go get github.com/go-sql-driver/mysql
+- mysql -e "CREATE DATABASE gorptest;"
+- mysql -u root -e "GRANT ALL ON gorptest.* TO gorptest@localhost IDENTIFIED BY 'gorptest'"
+- psql -c "CREATE DATABASE gorptest;" -U postgres
+- psql -c "CREATE USER "gorptest" WITH SUPERUSER PASSWORD 'gorptest';" -U postgres
+- go get github.com/lib/pq
+- go get github.com/mattn/go-sqlite3
+- go get github.com/ziutek/mymysql/godrv
+- go get github.com/go-sql-driver/mysql
+- go get golang.org/x/tools/cmd/cover
+- go get github.com/mattn/goveralls
script: ./test_all.sh
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/Makefile b/Godeps/_workspace/src/github.com/go-gorp/gorp/Makefile
deleted file mode 100644
index 3a27ae194..000000000
--- a/Godeps/_workspace/src/github.com/go-gorp/gorp/Makefile
+++ /dev/null
@@ -1,6 +0,0 @@
-include $(GOROOT)/src/Make.inc
-
-TARG = github.com/go-gorp/gorp
-GOFILES = gorp.go dialect.go
-
-include $(GOROOT)/src/Make.pkg \ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/README.md b/Godeps/_workspace/src/github.com/go-gorp/gorp/README.md
index d2de8c2b6..3f0652bc7 100644
--- a/Godeps/_workspace/src/github.com/go-gorp/gorp/README.md
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/README.md
@@ -1,19 +1,26 @@
# Go Relational Persistence
-[![build status](https://secure.travis-ci.org/go-gorp/gorp.png)](http://travis-ci.org/go-gorp/gorp)
+[![build status](https://img.shields.io/travis/go-gorp/gorp.svg)](http://travis-ci.org/go-gorp/gorp)
+[![code coverage](https://img.shields.io/coveralls/go-gorp/gorp.svg)](https://coveralls.io/r/go-gorp/gorp)
+[![issues](https://img.shields.io/github/issues/go-gorp/gorp.svg)](https://github.com/go-gorp/gorp/issues)
+[![godoc v1](https://img.shields.io/badge/godoc-v1-375EAB.svg)](https://godoc.org/gopkg.in/gorp.v1)
+[![godoc bleeding edge](https://img.shields.io/badge/godoc-bleeding--edge-375EAB.svg)](https://godoc.org/github.com/go-gorp/gorp)
-I hesitate to call gorp an ORM. Go doesn't really have objects, at least
-not in the classic Smalltalk/Java sense. There goes the "O". gorp doesn't
-know anything about the relationships between your structs (at least not
-yet). So the "R" is questionable too (but I use it in the name because,
-well, it seemed more clever).
+### Update 2015-07-01 Cleanup & feature freeze ([#270](https://github.com/go-gorp/gorp/issues/270))
-The "M" is alive and well. Given some Go structs and a database, gorp
-should remove a fair amount of boilerplate busy-work from your code.
+We are currently cleaning up the backlog of issues and PR's. When this is done the codebase will be split into separate files and there will be breaking changes to the API's. We're also adding better tests and documentation. As a result of these changes the `master` branch will be unstable. Please use `gopkg.in/gorp.v1`. When the cleanup and changes are done, we will release `v2.0`.
-I hope that gorp saves you time, minimizes the drudgery of getting data
-in and out of your database, and helps your code focus on algorithms,
-not infrastructure.
+At this time we won't accept new feature-related pull-requests because of changes to the codebase. Please create an issue for your feature and wait until `v2.0` has been released.
+
+For more information, please read [#270](https://github.com/go-gorp/gorp/issues/270).
+
+## Introduction
+
+I hesitate to call gorp an ORM. Go doesn't really have objects, at least not in the classic Smalltalk/Java sense. There goes the "O". gorp doesn't know anything about the relationships between your structs (at least not yet). So the "R" is questionable too (but I use it in the name because, well, it seemed more clever).
+
+The "M" is alive and well. Given some Go structs and a database, gorp should remove a fair amount of boilerplate busy-work from your code.
+
+I hope that gorp saves you time, minimizes the drudgery of getting data in and out of your database, and helps your code focus on algorithms, not infrastructure.
* Bind struct fields to table columns via API or tag
* Support for embedded structs
@@ -34,7 +41,7 @@ not infrastructure.
# install the library:
go get gopkg.in/gorp.v1
-
+
// use in your .go code:
import (
"gopkg.in/gorp.v1"
@@ -143,10 +150,10 @@ func main() {
type Post struct {
// db tag lets you specify the column name if it differs from the struct field
- Id int64 `db:"post_id"`
+ Id int64 `db:"post_id"`
Created int64
- Title string
- Body string
+ Title string `db:",size:50"` // Column size set to 50
+ Body string `db:"article_body,size:1024"` // Set both column name and size
}
func newPost(title, body string) Post {
@@ -201,7 +208,7 @@ type Invoice struct {
}
type Person struct {
- Id int64
+ Id int64
Created int64
Updated int64
FName string
@@ -221,8 +228,10 @@ type Person struct {
// table.ColMap("Price").Rename("unit_price")
// table.ColMap("IgnoreMe").SetTransient(true)
//
+// You can optionally declare the field to be a primary key and/or autoincrement
+//
type Product struct {
- Id int64 `db:"product_id"`
+ Id int64 `db:"product_id, primarykey, autoincrement"`
Price int64 `db:"unit_price"`
IgnoreMe string `db:"-"`
}
@@ -239,7 +248,7 @@ db, err := sql.Open("mymysql", "tcp:localhost:3306*mydb/myuser/mypassword")
dbmap := &gorp.DbMap{Db: db, Dialect: gorp.MySQLDialect{"InnoDB", "UTF8"}}
// register the structs you wish to use with gorp
-// you can also use the shorter dbmap.AddTable() if you
+// you can also use the shorter dbmap.AddTable() if you
// don't want to override the table name
//
// SetKeys(true) means we have a auto increment primary key, which
@@ -296,13 +305,13 @@ I recommend enabling this initially while you're getting the feel for what
gorp is doing on your behalf.
Gorp defines a `GorpLogger` interface that Go's built in `log.Logger` satisfies.
-However, you can write your own `GorpLogger` implementation, or use a package such
+However, you can write your own `GorpLogger` implementation, or use a package such
as `glog` if you want more control over how statements are logged.
```go
// Will log all SQL statements + args as they are run
// The first arg is a string prefix to prepend to all log messages
-dbmap.TraceOn("[gorp]", log.New(os.Stdout, "myapp:", log.Lmicroseconds))
+dbmap.TraceOn("[gorp]", log.New(os.Stdout, "myapp:", log.Lmicroseconds))
// Turn off tracing
dbmap.TraceOff()
@@ -435,7 +444,7 @@ only supported in SELECT queries.
```go
_, err := dbm.Select(&dest, "select * from Foo where name = :name and age = :age", map[string]interface{}{
- "name": "Rob",
+ "name": "Rob",
"age": 31,
})
```
@@ -509,11 +518,11 @@ Full list of hooks that you can implement:
PostUpdate
PreDelete
PostDelete
-
+
All have the same signature. for example:
-
+
func (p *MyStruct) PostUpdate(s gorp.SqlExecutor) error
-
+
### Optimistic Locking
#### Note that this behaviour has changed in v2. See [Migration Guide](#migration-guide).
@@ -536,7 +545,7 @@ type Person struct {
Updated int64
FName string
LName string
-
+
// automatically used as the Version col
// use table.SetVersionCol("columnName") to map a different
// struct field as the version field
@@ -558,7 +567,7 @@ count, err := dbmap.Update(p1)
_, ok := err.(gorp.OptimisticLockError)
if ok {
// should reach this statement
-
+
// in a real app you might reload the row and retry, or
// you might propegate this to the user, depending on the desired
// semantics
@@ -568,6 +577,49 @@ if ok {
fmt.Printf("Unknown db err: %v\n", err)
}
```
+### Adding INDEX(es) on column(s) beyond the primary key ###
+
+Indexes are frequently critical for performance. Here is how to add them to your tables.
+
+NB: SqlServer and Oracle need testing and possible adjustment to the
+CreateIndexSuffix() and DropIndexSuffix() methods to make AddIndex()
+work for them.
+
+In the example below we put an index both on the Id field, and on the AcctId field.
+
+```
+type Account struct {
+ Id int64
+ AcctId string // e.g. this might be a long uuid for portability
+}
+
+// indexType (the 2nd param to AddIndex call) is "Btree" or "Hash" for MySQL.
+// demonstrate adding a second index on AcctId, and constrain that field to have unique values.
+dbm.AddTable(iptab.Account{}).SetKeys(true, "Id").AddIndex("AcctIdIndex", "Btree", []string{"AcctId"}).SetUnique(true)
+
+err = dbm.CreateTablesIfNotExists()
+checkErr(err, "CreateTablesIfNotExists failed")
+
+err = dbm.CreateIndex()
+checkErr(err, "CreateIndex failed")
+
+```
+Check the effect of the CreateIndex() call in mysql:
+```
+$ mysql
+
+MariaDB [test]> show create table Account;
++---------+--------------------------+
+| Account | CREATE TABLE `Account` (
+ `Id` bigint(20) NOT NULL AUTO_INCREMENT,
+ `AcctId` varchar(255) DEFAULT NULL,
+ PRIMARY KEY (`Id`),
+ UNIQUE KEY `AcctIdIndex` (`AcctId`) USING BTREE <<<--- yes! index added.
+) ENGINE=InnoDB DEFAULT CHARSET=utf8
++---------+--------------------------+
+
+```
+
## Database Drivers
@@ -582,13 +634,13 @@ implemented per database vendor. Dialects are provided for:
* PostgreSQL
* sqlite3
-Each of these three databases pass the test suite. See `gorp_test.go` for example
+Each of these three databases pass the test suite. See `gorp_test.go` for example
DSNs for these three databases.
Support is also provided for:
* Oracle (contributed by @klaidliadon)
-* SQL Server (contributed by @qrawl) - use driver: github.com/denisenkom/go-mssqldb
+* SQL Server (contributed by @qrawl) - use driver: github.com/denisenkom/go-mssqldb
Note that these databases are not covered by CI and I (@coopernurse) have no good way to
test them locally. So please try them and send patches as needed, but expect a bit more
@@ -598,7 +650,7 @@ unpredicability.
### SQL placeholder portability
-Different databases use different strings to indicate variable placeholders in
+Different databases use different strings to indicate variable placeholders in
prepared SQL statements. Unlike some database abstraction layers (such as JDBC),
Go's `database/sql` does not standardize this.
@@ -617,13 +669,18 @@ In `Select` and `SelectOne` you can use named parameters to work around this.
The following is portable:
```go
-err := dbmap.SelectOne(&val, "select * from foo where id = :id",
+err := dbmap.SelectOne(&val, "select * from foo where id = :id",
map[string]interface{} { "id": 30})
```
+Additionally, when using Postgres as your database, you should utilize `$1` instead
+of `?` placeholders as utilizing `?` placeholders when querying Postgres will result
+in `pq: operator does not exist` errors. Alternatively, use
+`dbMap.Dialect.BindVar(varIdx)` to get the proper variable binding for your dialect.
+
### time.Time and time zones
-gorp will pass `time.Time` fields through to the `database/sql` driver, but note that
+gorp will pass `time.Time` fields through to the `database/sql` driver, but note that
the behavior of this type varies across database drivers.
MySQL users should be especially cautious. See: https://github.com/ziutek/mymysql/pull/77
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/column.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/column.go
new file mode 100644
index 000000000..99d4fd555
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/column.go
@@ -0,0 +1,83 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import "reflect"
+
+// ColumnMap represents a mapping between a Go struct field and a single
+// column in a table.
+// Unique and MaxSize only inform the
+// CreateTables() function and are not used by Insert/Update/Delete/Get.
+type ColumnMap struct {
+ // Column name in db table
+ ColumnName string
+
+ // If true, this column is skipped in generated SQL statements
+ Transient bool
+
+ // If true, " unique" is added to create table statements.
+ // Not used elsewhere
+ Unique bool
+
+ // Query used for getting generated id after insert
+ GeneratedIdQuery string
+
+ // Passed to Dialect.ToSqlType() to assist in informing the
+ // correct column type to map to in CreateTables()
+ MaxSize int
+
+ DefaultValue string
+
+ fieldName string
+ gotype reflect.Type
+ isPK bool
+ isAutoIncr bool
+ isNotNull bool
+}
+
+// Rename allows you to specify the column name in the table
+//
+// Example: table.ColMap("Updated").Rename("date_updated")
+//
+func (c *ColumnMap) Rename(colname string) *ColumnMap {
+ c.ColumnName = colname
+ return c
+}
+
+// SetTransient allows you to mark the column as transient. If true
+// this column will be skipped when SQL statements are generated
+func (c *ColumnMap) SetTransient(b bool) *ColumnMap {
+ c.Transient = b
+ return c
+}
+
+// SetUnique adds "unique" to the create table statements for this
+// column, if b is true.
+func (c *ColumnMap) SetUnique(b bool) *ColumnMap {
+ c.Unique = b
+ return c
+}
+
+// SetNotNull adds "not null" to the create table statements for this
+// column, if nn is true.
+func (c *ColumnMap) SetNotNull(nn bool) *ColumnMap {
+ c.isNotNull = nn
+ return c
+}
+
+// SetMaxSize specifies the max length of values of this column. This is
+// passed to the dialect.ToSqlType() function, which can use the value
+// to alter the generated type for "create table" statements
+func (c *ColumnMap) SetMaxSize(size int) *ColumnMap {
+ c.MaxSize = size
+ return c
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/db.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/db.go
new file mode 100644
index 000000000..8bba07cf6
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/db.go
@@ -0,0 +1,619 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "bytes"
+ "database/sql"
+ "database/sql/driver"
+ "errors"
+ "fmt"
+ "reflect"
+ "strconv"
+ "strings"
+ "time"
+)
+
+// DbMap is the root gorp mapping object. Create one of these for each
+// database schema you wish to map. Each DbMap contains a list of
+// mapped tables.
+//
+// Example:
+//
+// dialect := gorp.MySQLDialect{"InnoDB", "UTF8"}
+// dbmap := &gorp.DbMap{Db: db, Dialect: dialect}
+//
+type DbMap struct {
+ // Db handle to use with this map
+ Db *sql.DB
+
+ // Dialect implementation to use with this map
+ Dialect Dialect
+
+ TypeConverter TypeConverter
+
+ tables []*TableMap
+ logger GorpLogger
+ logPrefix string
+}
+
+func (m *DbMap) CreateIndex() error {
+
+ var err error
+ dialect := reflect.TypeOf(m.Dialect)
+ for _, table := range m.tables {
+ for _, index := range table.indexes {
+
+ s := bytes.Buffer{}
+ s.WriteString("create")
+ if index.Unique {
+ s.WriteString(" unique")
+ }
+ s.WriteString(" index")
+ s.WriteString(fmt.Sprintf(" %s on %s", index.IndexName, table.TableName))
+ if dname := dialect.Name(); dname == "PostgresDialect" && index.IndexType != "" {
+ s.WriteString(fmt.Sprintf(" %s %s", m.Dialect.CreateIndexSuffix(), index.IndexType))
+ }
+ s.WriteString(" (")
+ for x, col := range index.columns {
+ if x > 0 {
+ s.WriteString(", ")
+ }
+ s.WriteString(m.Dialect.QuoteField(col))
+ }
+ s.WriteString(")")
+
+ if dname := dialect.Name(); dname == "MySQLDialect" && index.IndexType != "" {
+ s.WriteString(fmt.Sprintf(" %s %s", m.Dialect.CreateIndexSuffix(), index.IndexType))
+ }
+ s.WriteString(";")
+ _, err = m.Exec(s.String())
+ if err != nil {
+ break
+ }
+ }
+ }
+ return err
+}
+
+func (t *TableMap) DropIndex(name string) error {
+
+ var err error
+ dialect := reflect.TypeOf(t.dbmap.Dialect)
+ for _, idx := range t.indexes {
+ if idx.IndexName == name {
+ s := bytes.Buffer{}
+ s.WriteString(fmt.Sprintf("DROP INDEX %s", idx.IndexName))
+
+ if dname := dialect.Name(); dname == "MySQLDialect" {
+ s.WriteString(fmt.Sprintf(" %s %s", t.dbmap.Dialect.DropIndexSuffix(), t.TableName))
+ }
+ s.WriteString(";")
+ _, e := t.dbmap.Exec(s.String())
+ if e != nil {
+ err = e
+ }
+ break
+ }
+ }
+ t.ResetSql()
+ return err
+}
+
+// AddTable registers the given interface type with gorp. The table name
+// will be given the name of the TypeOf(i). You must call this function,
+// or AddTableWithName, for any struct type you wish to persist with
+// the given DbMap.
+//
+// This operation is idempotent. If i's type is already mapped, the
+// existing *TableMap is returned
+func (m *DbMap) AddTable(i interface{}) *TableMap {
+ return m.AddTableWithName(i, "")
+}
+
+// AddTableWithName has the same behavior as AddTable, but sets
+// table.TableName to name.
+func (m *DbMap) AddTableWithName(i interface{}, name string) *TableMap {
+ return m.AddTableWithNameAndSchema(i, "", name)
+}
+
+// AddTableWithNameAndSchema has the same behavior as AddTable, but sets
+// table.TableName to name.
+func (m *DbMap) AddTableWithNameAndSchema(i interface{}, schema string, name string) *TableMap {
+ t := reflect.TypeOf(i)
+ if name == "" {
+ name = t.Name()
+ }
+
+ // check if we have a table for this type already
+ // if so, update the name and return the existing pointer
+ for i := range m.tables {
+ table := m.tables[i]
+ if table.gotype == t {
+ table.TableName = name
+ return table
+ }
+ }
+
+ tmap := &TableMap{gotype: t, TableName: name, SchemaName: schema, dbmap: m}
+ var primaryKey []*ColumnMap
+ tmap.Columns, primaryKey = m.readStructColumns(t)
+ m.tables = append(m.tables, tmap)
+ if len(primaryKey) > 0 {
+ tmap.keys = append(tmap.keys, primaryKey...)
+ }
+
+ return tmap
+}
+
+func (m *DbMap) readStructColumns(t reflect.Type) (cols []*ColumnMap, primaryKey []*ColumnMap) {
+ primaryKey = make([]*ColumnMap, 0)
+ n := t.NumField()
+ for i := 0; i < n; i++ {
+ f := t.Field(i)
+ if f.Anonymous && f.Type.Kind() == reflect.Struct {
+ // Recursively add nested fields in embedded structs.
+ subcols, subpk := m.readStructColumns(f.Type)
+ // Don't append nested fields that have the same field
+ // name as an already-mapped field.
+ for _, subcol := range subcols {
+ shouldAppend := true
+ for _, col := range cols {
+ if !subcol.Transient && subcol.fieldName == col.fieldName {
+ shouldAppend = false
+ break
+ }
+ }
+ if shouldAppend {
+ cols = append(cols, subcol)
+ }
+ }
+ if subpk != nil {
+ primaryKey = append(primaryKey, subpk...)
+ }
+ } else {
+ // Tag = Name { ',' Option }
+ // Option = OptionKey [ ':' OptionValue ]
+ cArguments := strings.Split(f.Tag.Get("db"), ",")
+ columnName := cArguments[0]
+ var maxSize int
+ var defaultValue string
+ var isAuto bool
+ var isPK bool
+ for _, argString := range cArguments[1:] {
+ argString = strings.TrimSpace(argString)
+ arg := strings.SplitN(argString, ":", 2)
+
+ // check mandatory/unexpected option values
+ switch arg[0] {
+ case "size", "default":
+ // options requiring value
+ if len(arg) == 1 {
+ panic(fmt.Sprintf("missing option value for option %v on field %v", arg[0], f.Name))
+ }
+ default:
+ // options where value is invalid (currently all other options)
+ if len(arg) == 2 {
+ panic(fmt.Sprintf("unexpected option value for option %v on field %v", arg[0], f.Name))
+ }
+ }
+
+ switch arg[0] {
+ case "size":
+ maxSize, _ = strconv.Atoi(arg[1])
+ case "default":
+ defaultValue = arg[1]
+ case "primarykey":
+ isPK = true
+ case "autoincrement":
+ isAuto = true
+ default:
+ panic(fmt.Sprintf("Unrecognized tag option for field %v: %v", f.Name, arg))
+ }
+ }
+ if columnName == "" {
+ columnName = f.Name
+ }
+
+ gotype := f.Type
+ value := reflect.New(gotype).Interface()
+ if m.TypeConverter != nil {
+ // Make a new pointer to a value of type gotype and
+ // pass it to the TypeConverter's FromDb method to see
+ // if a different type should be used for the column
+ // type during table creation.
+ scanner, useHolder := m.TypeConverter.FromDb(value)
+ if useHolder {
+ value = scanner.Holder
+ gotype = reflect.TypeOf(value)
+ }
+ }
+ if typer, ok := value.(SqlTyper); ok {
+ gotype = reflect.TypeOf(typer.SqlType())
+ } else if valuer, ok := value.(driver.Valuer); ok {
+ // Only check for driver.Valuer if SqlTyper wasn't
+ // found.
+ v, err := valuer.Value()
+ if err == nil && v != nil {
+ gotype = reflect.TypeOf(v)
+ }
+ }
+ cm := &ColumnMap{
+ ColumnName: columnName,
+ DefaultValue: defaultValue,
+ Transient: columnName == "-",
+ fieldName: f.Name,
+ gotype: gotype,
+ isPK: isPK,
+ isAutoIncr: isAuto,
+ MaxSize: maxSize,
+ }
+ if isPK {
+ primaryKey = append(primaryKey, cm)
+ }
+ // Check for nested fields of the same field name and
+ // override them.
+ shouldAppend := true
+ for index, col := range cols {
+ if !col.Transient && col.fieldName == cm.fieldName {
+ cols[index] = cm
+ shouldAppend = false
+ break
+ }
+ }
+ if shouldAppend {
+ cols = append(cols, cm)
+ }
+ }
+
+ }
+ return
+}
+
+// CreateTables iterates through TableMaps registered to this DbMap and
+// executes "create table" statements against the database for each.
+//
+// This is particularly useful in unit tests where you want to create
+// and destroy the schema automatically.
+func (m *DbMap) CreateTables() error {
+ return m.createTables(false)
+}
+
+// CreateTablesIfNotExists is similar to CreateTables, but starts
+// each statement with "create table if not exists" so that existing
+// tables do not raise errors
+func (m *DbMap) CreateTablesIfNotExists() error {
+ return m.createTables(true)
+}
+
+func (m *DbMap) createTables(ifNotExists bool) error {
+ var err error
+ for i := range m.tables {
+ table := m.tables[i]
+ sql := table.SqlForCreate(ifNotExists)
+ _, err = m.Exec(sql)
+ if err != nil {
+ break
+ }
+ }
+ return err
+}
+
+// DropTable drops an individual table.
+// Returns an error when the table does not exist.
+func (m *DbMap) DropTable(table interface{}) error {
+ t := reflect.TypeOf(table)
+ return m.dropTable(t, false)
+}
+
+// DropTableIfExists drops an individual table when the table exists.
+func (m *DbMap) DropTableIfExists(table interface{}) error {
+ t := reflect.TypeOf(table)
+ return m.dropTable(t, true)
+}
+
+// DropTables iterates through TableMaps registered to this DbMap and
+// executes "drop table" statements against the database for each.
+func (m *DbMap) DropTables() error {
+ return m.dropTables(false)
+}
+
+// DropTablesIfExists is the same as DropTables, but uses the "if exists" clause to
+// avoid errors for tables that do not exist.
+func (m *DbMap) DropTablesIfExists() error {
+ return m.dropTables(true)
+}
+
+// Goes through all the registered tables, dropping them one by one.
+// If an error is encountered, then it is returned and the rest of
+// the tables are not dropped.
+func (m *DbMap) dropTables(addIfExists bool) (err error) {
+ for _, table := range m.tables {
+ err = m.dropTableImpl(table, addIfExists)
+ if err != nil {
+ return err
+ }
+ }
+ return err
+}
+
+// Implementation of dropping a single table.
+func (m *DbMap) dropTable(t reflect.Type, addIfExists bool) error {
+ table := tableOrNil(m, t)
+ if table == nil {
+ return fmt.Errorf("table %s was not registered", table.TableName)
+ }
+
+ return m.dropTableImpl(table, addIfExists)
+}
+
+func (m *DbMap) dropTableImpl(table *TableMap, ifExists bool) (err error) {
+ tableDrop := "drop table"
+ if ifExists {
+ tableDrop = m.Dialect.IfTableExists(tableDrop, table.SchemaName, table.TableName)
+ }
+ _, err = m.Exec(fmt.Sprintf("%s %s;", tableDrop, m.Dialect.QuotedTableForQuery(table.SchemaName, table.TableName)))
+ return err
+}
+
+// TruncateTables iterates through TableMaps registered to this DbMap and
+// executes "truncate table" statements against the database for each, or in the case of
+// sqlite, a "delete from" with no "where" clause, which uses the truncate optimization
+// (http://www.sqlite.org/lang_delete.html)
+func (m *DbMap) TruncateTables() error {
+ var err error
+ for i := range m.tables {
+ table := m.tables[i]
+ _, e := m.Exec(fmt.Sprintf("%s %s;", m.Dialect.TruncateClause(), m.Dialect.QuotedTableForQuery(table.SchemaName, table.TableName)))
+ if e != nil {
+ err = e
+ }
+ }
+ return err
+}
+
+// Insert runs a SQL INSERT statement for each element in list. List
+// items must be pointers.
+//
+// Any interface whose TableMap has an auto-increment primary key will
+// have its last insert id bound to the PK field on the struct.
+//
+// The hook functions PreInsert() and/or PostInsert() will be executed
+// before/after the INSERT statement if the interface defines them.
+//
+// Panics if any interface in the list has not been registered with AddTable
+func (m *DbMap) Insert(list ...interface{}) error {
+ return insert(m, m, list...)
+}
+
+// Update runs a SQL UPDATE statement for each element in list. List
+// items must be pointers.
+//
+// The hook functions PreUpdate() and/or PostUpdate() will be executed
+// before/after the UPDATE statement if the interface defines them.
+//
+// Returns the number of rows updated.
+//
+// Returns an error if SetKeys has not been called on the TableMap
+// Panics if any interface in the list has not been registered with AddTable
+func (m *DbMap) Update(list ...interface{}) (int64, error) {
+ return update(m, m, nil, list...)
+}
+
+// UpdateColumns runs a SQL UPDATE statement for each element in list. List
+// items must be pointers.
+//
+// Only the columns accepted by filter are included in the UPDATE.
+//
+// The hook functions PreUpdate() and/or PostUpdate() will be executed
+// before/after the UPDATE statement if the interface defines them.
+//
+// Returns the number of rows updated.
+//
+// Returns an error if SetKeys has not been called on the TableMap
+// Panics if any interface in the list has not been registered with AddTable
+func (m *DbMap) UpdateColumns(filter ColumnFilter, list ...interface{}) (int64, error) {
+ return update(m, m, filter, list...)
+}
+
+// Delete runs a SQL DELETE statement for each element in list. List
+// items must be pointers.
+//
+// The hook functions PreDelete() and/or PostDelete() will be executed
+// before/after the DELETE statement if the interface defines them.
+//
+// Returns the number of rows deleted.
+//
+// Returns an error if SetKeys has not been called on the TableMap
+// Panics if any interface in the list has not been registered with AddTable
+func (m *DbMap) Delete(list ...interface{}) (int64, error) {
+ return delete(m, m, list...)
+}
+
+// Get runs a SQL SELECT to fetch a single row from the table based on the
+// primary key(s)
+//
+// i should be an empty value for the struct to load. keys should be
+// the primary key value(s) for the row to load. If multiple keys
+// exist on the table, the order should match the column order
+// specified in SetKeys() when the table mapping was defined.
+//
+// The hook function PostGet() will be executed after the SELECT
+// statement if the interface defines them.
+//
+// Returns a pointer to a struct that matches or nil if no row is found.
+//
+// Returns an error if SetKeys has not been called on the TableMap
+// Panics if any interface in the list has not been registered with AddTable
+func (m *DbMap) Get(i interface{}, keys ...interface{}) (interface{}, error) {
+ return get(m, m, i, keys...)
+}
+
+// Select runs an arbitrary SQL query, binding the columns in the result
+// to fields on the struct specified by i. args represent the bind
+// parameters for the SQL statement.
+//
+// Column names on the SELECT statement should be aliased to the field names
+// on the struct i. Returns an error if one or more columns in the result
+// do not match. It is OK if fields on i are not part of the SQL
+// statement.
+//
+// The hook function PostGet() will be executed after the SELECT
+// statement if the interface defines them.
+//
+// Values are returned in one of two ways:
+// 1. If i is a struct or a pointer to a struct, returns a slice of pointers to
+// matching rows of type i.
+// 2. If i is a pointer to a slice, the results will be appended to that slice
+// and nil returned.
+//
+// i does NOT need to be registered with AddTable()
+func (m *DbMap) Select(i interface{}, query string, args ...interface{}) ([]interface{}, error) {
+ return hookedselect(m, m, i, query, args...)
+}
+
+// Exec runs an arbitrary SQL statement. args represent the bind parameters.
+// This is equivalent to running: Exec() using database/sql
+func (m *DbMap) Exec(query string, args ...interface{}) (sql.Result, error) {
+ if m.logger != nil {
+ now := time.Now()
+ defer m.trace(now, query, args...)
+ }
+ return exec(m, query, args...)
+}
+
+// SelectInt is a convenience wrapper around the gorp.SelectInt function
+func (m *DbMap) SelectInt(query string, args ...interface{}) (int64, error) {
+ return SelectInt(m, query, args...)
+}
+
+// SelectNullInt is a convenience wrapper around the gorp.SelectNullInt function
+func (m *DbMap) SelectNullInt(query string, args ...interface{}) (sql.NullInt64, error) {
+ return SelectNullInt(m, query, args...)
+}
+
+// SelectFloat is a convenience wrapper around the gorp.SelectFloat function
+func (m *DbMap) SelectFloat(query string, args ...interface{}) (float64, error) {
+ return SelectFloat(m, query, args...)
+}
+
+// SelectNullFloat is a convenience wrapper around the gorp.SelectNullFloat function
+func (m *DbMap) SelectNullFloat(query string, args ...interface{}) (sql.NullFloat64, error) {
+ return SelectNullFloat(m, query, args...)
+}
+
+// SelectStr is a convenience wrapper around the gorp.SelectStr function
+func (m *DbMap) SelectStr(query string, args ...interface{}) (string, error) {
+ return SelectStr(m, query, args...)
+}
+
+// SelectNullStr is a convenience wrapper around the gorp.SelectNullStr function
+func (m *DbMap) SelectNullStr(query string, args ...interface{}) (sql.NullString, error) {
+ return SelectNullStr(m, query, args...)
+}
+
+// SelectOne is a convenience wrapper around the gorp.SelectOne function
+func (m *DbMap) SelectOne(holder interface{}, query string, args ...interface{}) error {
+ return SelectOne(m, m, holder, query, args...)
+}
+
+// Begin starts a gorp Transaction
+func (m *DbMap) Begin() (*Transaction, error) {
+ if m.logger != nil {
+ now := time.Now()
+ defer m.trace(now, "begin;")
+ }
+ tx, err := m.Db.Begin()
+ if err != nil {
+ return nil, err
+ }
+ return &Transaction{m, tx, false}, nil
+}
+
+// TableFor returns the *TableMap corresponding to the given Go Type
+// If no table is mapped to that type an error is returned.
+// If checkPK is true and the mapped table has no registered PKs, an error is returned.
+func (m *DbMap) TableFor(t reflect.Type, checkPK bool) (*TableMap, error) {
+ table := tableOrNil(m, t)
+ if table == nil {
+ return nil, fmt.Errorf("no table found for type: %v", t.Name())
+ }
+
+ if checkPK && len(table.keys) < 1 {
+ e := fmt.Sprintf("gorp: no keys defined for table: %s",
+ table.TableName)
+ return nil, errors.New(e)
+ }
+
+ return table, nil
+}
+
+// Prepare creates a prepared statement for later queries or executions.
+// Multiple queries or executions may be run concurrently from the returned statement.
+// This is equivalent to running: Prepare() using database/sql
+func (m *DbMap) Prepare(query string) (*sql.Stmt, error) {
+ if m.logger != nil {
+ now := time.Now()
+ defer m.trace(now, query, nil)
+ }
+ return m.Db.Prepare(query)
+}
+
+func tableOrNil(m *DbMap, t reflect.Type) *TableMap {
+ for i := range m.tables {
+ table := m.tables[i]
+ if table.gotype == t {
+ return table
+ }
+ }
+ return nil
+}
+
+func (m *DbMap) tableForPointer(ptr interface{}, checkPK bool) (*TableMap, reflect.Value, error) {
+ ptrv := reflect.ValueOf(ptr)
+ if ptrv.Kind() != reflect.Ptr {
+ e := fmt.Sprintf("gorp: passed non-pointer: %v (kind=%v)", ptr,
+ ptrv.Kind())
+ return nil, reflect.Value{}, errors.New(e)
+ }
+ elem := ptrv.Elem()
+ etype := reflect.TypeOf(elem.Interface())
+ t, err := m.TableFor(etype, checkPK)
+ if err != nil {
+ return nil, reflect.Value{}, err
+ }
+
+ return t, elem, nil
+}
+
+func (m *DbMap) queryRow(query string, args ...interface{}) *sql.Row {
+ if m.logger != nil {
+ now := time.Now()
+ defer m.trace(now, query, args...)
+ }
+ return m.Db.QueryRow(query, args...)
+}
+
+func (m *DbMap) query(query string, args ...interface{}) (*sql.Rows, error) {
+ if m.logger != nil {
+ now := time.Now()
+ defer m.trace(now, query, args...)
+ }
+ return m.Db.Query(query, args...)
+}
+
+func (m *DbMap) trace(started time.Time, query string, args ...interface{}) {
+ if m.logger != nil {
+ var margs = argsString(args...)
+ m.logger.Printf("%s%s [%s] (%v)", m.logPrefix, query, margs, (time.Now().Sub(started)))
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect.go
index 8277a965e..203bc62b5 100644
--- a/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect.go
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect.go
@@ -1,11 +1,17 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
package gorp
-import (
- "errors"
- "fmt"
- "reflect"
- "strings"
-)
+import "reflect"
// The Dialect interface encapsulates behaviors that differ across
// SQL databases. At present the Dialect is only used by CreateTables()
@@ -34,6 +40,12 @@ type Dialect interface {
// table attributes
CreateTableSuffix() string
+ // string to append to "create index" statement
+ CreateIndexSuffix() string
+
+ // string to append to "drop index" statement
+ DropIndexSuffix() string
+
// string to truncate tables
TruncateClause() string
@@ -80,6 +92,16 @@ type TargetedAutoIncrInserter interface {
InsertAutoIncrToTarget(exec SqlExecutor, insertSql string, target interface{}, params ...interface{}) error
}
+// TargetQueryInserter is implemented by dialects that can perform
+// assignment of integer primary key type by executing a query
+// like "select sequence.currval from dual".
+type TargetQueryInserter interface {
+ // TargetQueryInserter runs an insert operation and assigns the
+ // automatically generated primary key retrived by the query
+ // extracted from the GeneratedIdQuery field of the id column.
+ InsertQueryToTarget(exec SqlExecutor, insertSql, idSql string, target interface{}, params ...interface{}) error
+}
+
func standardInsertAutoIncr(exec SqlExecutor, insertSql string, params ...interface{}) (int64, error) {
res, err := exec.Exec(insertSql, params...)
if err != nil {
@@ -87,610 +109,3 @@ func standardInsertAutoIncr(exec SqlExecutor, insertSql string, params ...interf
}
return res.LastInsertId()
}
-
-///////////////////////////////////////////////////////
-// sqlite3 //
-/////////////
-
-type SqliteDialect struct {
- suffix string
-}
-
-func (d SqliteDialect) QuerySuffix() string { return ";" }
-
-func (d SqliteDialect) ToSqlType(val reflect.Type, maxsize int, isAutoIncr bool) string {
- switch val.Kind() {
- case reflect.Ptr:
- return d.ToSqlType(val.Elem(), maxsize, isAutoIncr)
- case reflect.Bool:
- return "integer"
- case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64:
- return "integer"
- case reflect.Float64, reflect.Float32:
- return "real"
- case reflect.Slice:
- if val.Elem().Kind() == reflect.Uint8 {
- return "blob"
- }
- }
-
- switch val.Name() {
- case "NullInt64":
- return "integer"
- case "NullFloat64":
- return "real"
- case "NullBool":
- return "integer"
- case "Time":
- return "datetime"
- }
-
- if maxsize < 1 {
- maxsize = 255
- }
- return fmt.Sprintf("varchar(%d)", maxsize)
-}
-
-// Returns autoincrement
-func (d SqliteDialect) AutoIncrStr() string {
- return "autoincrement"
-}
-
-func (d SqliteDialect) AutoIncrBindValue() string {
- return "null"
-}
-
-func (d SqliteDialect) AutoIncrInsertSuffix(col *ColumnMap) string {
- return ""
-}
-
-// Returns suffix
-func (d SqliteDialect) CreateTableSuffix() string {
- return d.suffix
-}
-
-// With sqlite, there technically isn't a TRUNCATE statement,
-// but a DELETE FROM uses a truncate optimization:
-// http://www.sqlite.org/lang_delete.html
-func (d SqliteDialect) TruncateClause() string {
- return "delete from"
-}
-
-// Returns "?"
-func (d SqliteDialect) BindVar(i int) string {
- return "?"
-}
-
-func (d SqliteDialect) InsertAutoIncr(exec SqlExecutor, insertSql string, params ...interface{}) (int64, error) {
- return standardInsertAutoIncr(exec, insertSql, params...)
-}
-
-func (d SqliteDialect) QuoteField(f string) string {
- return `"` + f + `"`
-}
-
-// sqlite does not have schemas like PostgreSQL does, so just escape it like normal
-func (d SqliteDialect) QuotedTableForQuery(schema string, table string) string {
- return d.QuoteField(table)
-}
-
-func (d SqliteDialect) IfSchemaNotExists(command, schema string) string {
- return fmt.Sprintf("%s if not exists", command)
-}
-
-func (d SqliteDialect) IfTableExists(command, schema, table string) string {
- return fmt.Sprintf("%s if exists", command)
-}
-
-func (d SqliteDialect) IfTableNotExists(command, schema, table string) string {
- return fmt.Sprintf("%s if not exists", command)
-}
-
-///////////////////////////////////////////////////////
-// PostgreSQL //
-////////////////
-
-type PostgresDialect struct {
- suffix string
-}
-
-func (d PostgresDialect) QuerySuffix() string { return ";" }
-
-func (d PostgresDialect) ToSqlType(val reflect.Type, maxsize int, isAutoIncr bool) string {
- switch val.Kind() {
- case reflect.Ptr:
- return d.ToSqlType(val.Elem(), maxsize, isAutoIncr)
- case reflect.Bool:
- return "boolean"
- case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Uint8, reflect.Uint16, reflect.Uint32:
- if isAutoIncr {
- return "serial"
- }
- return "integer"
- case reflect.Int64, reflect.Uint64:
- if isAutoIncr {
- return "bigserial"
- }
- return "bigint"
- case reflect.Float64:
- return "double precision"
- case reflect.Float32:
- return "real"
- case reflect.Slice:
- if val.Elem().Kind() == reflect.Uint8 {
- return "bytea"
- }
- }
-
- switch val.Name() {
- case "NullInt64":
- return "bigint"
- case "NullFloat64":
- return "double precision"
- case "NullBool":
- return "boolean"
- case "Time", "NullTime":
- return "timestamp with time zone"
- }
-
- if maxsize > 0 {
- return fmt.Sprintf("varchar(%d)", maxsize)
- } else {
- return "text"
- }
-
-}
-
-// Returns empty string
-func (d PostgresDialect) AutoIncrStr() string {
- return ""
-}
-
-func (d PostgresDialect) AutoIncrBindValue() string {
- return "default"
-}
-
-func (d PostgresDialect) AutoIncrInsertSuffix(col *ColumnMap) string {
- return " returning " + col.ColumnName
-}
-
-// Returns suffix
-func (d PostgresDialect) CreateTableSuffix() string {
- return d.suffix
-}
-
-func (d PostgresDialect) TruncateClause() string {
- return "truncate"
-}
-
-// Returns "$(i+1)"
-func (d PostgresDialect) BindVar(i int) string {
- return fmt.Sprintf("$%d", i+1)
-}
-
-func (d PostgresDialect) InsertAutoIncrToTarget(exec SqlExecutor, insertSql string, target interface{}, params ...interface{}) error {
- rows, err := exec.query(insertSql, params...)
- if err != nil {
- return err
- }
- defer rows.Close()
-
- if !rows.Next() {
- return fmt.Errorf("No serial value returned for insert: %s Encountered error: %s", insertSql, rows.Err())
- }
- if err := rows.Scan(target); err != nil {
- return err
- }
- if rows.Next() {
- return fmt.Errorf("more than two serial value returned for insert: %s", insertSql)
- }
- return rows.Err()
-}
-
-func (d PostgresDialect) QuoteField(f string) string {
- return `"` + strings.ToLower(f) + `"`
-}
-
-func (d PostgresDialect) QuotedTableForQuery(schema string, table string) string {
- if strings.TrimSpace(schema) == "" {
- return d.QuoteField(table)
- }
-
- return schema + "." + d.QuoteField(table)
-}
-
-func (d PostgresDialect) IfSchemaNotExists(command, schema string) string {
- return fmt.Sprintf("%s if not exists", command)
-}
-
-func (d PostgresDialect) IfTableExists(command, schema, table string) string {
- return fmt.Sprintf("%s if exists", command)
-}
-
-func (d PostgresDialect) IfTableNotExists(command, schema, table string) string {
- return fmt.Sprintf("%s if not exists", command)
-}
-
-///////////////////////////////////////////////////////
-// MySQL //
-///////////
-
-// Implementation of Dialect for MySQL databases.
-type MySQLDialect struct {
-
- // Engine is the storage engine to use "InnoDB" vs "MyISAM" for example
- Engine string
-
- // Encoding is the character encoding to use for created tables
- Encoding string
-}
-
-func (d MySQLDialect) QuerySuffix() string { return ";" }
-
-func (d MySQLDialect) ToSqlType(val reflect.Type, maxsize int, isAutoIncr bool) string {
- switch val.Kind() {
- case reflect.Ptr:
- return d.ToSqlType(val.Elem(), maxsize, isAutoIncr)
- case reflect.Bool:
- return "boolean"
- case reflect.Int8:
- return "tinyint"
- case reflect.Uint8:
- return "tinyint unsigned"
- case reflect.Int16:
- return "smallint"
- case reflect.Uint16:
- return "smallint unsigned"
- case reflect.Int, reflect.Int32:
- return "int"
- case reflect.Uint, reflect.Uint32:
- return "int unsigned"
- case reflect.Int64:
- return "bigint"
- case reflect.Uint64:
- return "bigint unsigned"
- case reflect.Float64, reflect.Float32:
- return "double"
- case reflect.Slice:
- if val.Elem().Kind() == reflect.Uint8 {
- return "mediumblob"
- }
- }
-
- switch val.Name() {
- case "NullInt64":
- return "bigint"
- case "NullFloat64":
- return "double"
- case "NullBool":
- return "tinyint"
- case "Time":
- return "datetime"
- }
-
- if maxsize < 1 {
- maxsize = 255
- }
- return fmt.Sprintf("varchar(%d)", maxsize)
-}
-
-// Returns auto_increment
-func (d MySQLDialect) AutoIncrStr() string {
- return "auto_increment"
-}
-
-func (d MySQLDialect) AutoIncrBindValue() string {
- return "null"
-}
-
-func (d MySQLDialect) AutoIncrInsertSuffix(col *ColumnMap) string {
- return ""
-}
-
-// Returns engine=%s charset=%s based on values stored on struct
-func (d MySQLDialect) CreateTableSuffix() string {
- if d.Engine == "" || d.Encoding == "" {
- msg := "gorp - undefined"
-
- if d.Engine == "" {
- msg += " MySQLDialect.Engine"
- }
- if d.Engine == "" && d.Encoding == "" {
- msg += ","
- }
- if d.Encoding == "" {
- msg += " MySQLDialect.Encoding"
- }
- msg += ". Check that your MySQLDialect was correctly initialized when declared."
- panic(msg)
- }
-
- return fmt.Sprintf(" engine=%s charset=%s", d.Engine, d.Encoding)
-}
-
-func (d MySQLDialect) TruncateClause() string {
- return "truncate"
-}
-
-// Returns "?"
-func (d MySQLDialect) BindVar(i int) string {
- return "?"
-}
-
-func (d MySQLDialect) InsertAutoIncr(exec SqlExecutor, insertSql string, params ...interface{}) (int64, error) {
- return standardInsertAutoIncr(exec, insertSql, params...)
-}
-
-func (d MySQLDialect) QuoteField(f string) string {
- return "`" + f + "`"
-}
-
-func (d MySQLDialect) QuotedTableForQuery(schema string, table string) string {
- if strings.TrimSpace(schema) == "" {
- return d.QuoteField(table)
- }
-
- return schema + "." + d.QuoteField(table)
-}
-
-func (d MySQLDialect) IfSchemaNotExists(command, schema string) string {
- return fmt.Sprintf("%s if not exists", command)
-}
-
-func (d MySQLDialect) IfTableExists(command, schema, table string) string {
- return fmt.Sprintf("%s if exists", command)
-}
-
-func (d MySQLDialect) IfTableNotExists(command, schema, table string) string {
- return fmt.Sprintf("%s if not exists", command)
-}
-
-///////////////////////////////////////////////////////
-// Sql Server //
-////////////////
-
-// Implementation of Dialect for Microsoft SQL Server databases.
-// Tested on SQL Server 2008 with driver: github.com/denisenkom/go-mssqldb
-
-type SqlServerDialect struct {
- suffix string
-}
-
-func (d SqlServerDialect) ToSqlType(val reflect.Type, maxsize int, isAutoIncr bool) string {
- switch val.Kind() {
- case reflect.Ptr:
- return d.ToSqlType(val.Elem(), maxsize, isAutoIncr)
- case reflect.Bool:
- return "bit"
- case reflect.Int8:
- return "tinyint"
- case reflect.Uint8:
- return "smallint"
- case reflect.Int16:
- return "smallint"
- case reflect.Uint16:
- return "int"
- case reflect.Int, reflect.Int32:
- return "int"
- case reflect.Uint, reflect.Uint32:
- return "bigint"
- case reflect.Int64:
- return "bigint"
- case reflect.Uint64:
- return "bigint"
- case reflect.Float32:
- return "real"
- case reflect.Float64:
- return "float(53)"
- case reflect.Slice:
- if val.Elem().Kind() == reflect.Uint8 {
- return "varbinary"
- }
- }
-
- switch val.Name() {
- case "NullInt64":
- return "bigint"
- case "NullFloat64":
- return "float(53)"
- case "NullBool":
- return "tinyint"
- case "Time":
- return "datetime"
- }
-
- if maxsize < 1 {
- maxsize = 255
- }
- return fmt.Sprintf("varchar(%d)", maxsize)
-}
-
-// Returns auto_increment
-func (d SqlServerDialect) AutoIncrStr() string {
- return "identity(0,1)"
-}
-
-// Empty string removes autoincrement columns from the INSERT statements.
-func (d SqlServerDialect) AutoIncrBindValue() string {
- return ""
-}
-
-func (d SqlServerDialect) AutoIncrInsertSuffix(col *ColumnMap) string {
- return ""
-}
-
-// Returns suffix
-func (d SqlServerDialect) CreateTableSuffix() string {
-
- return d.suffix
-}
-
-func (d SqlServerDialect) TruncateClause() string {
- return "delete from"
-}
-
-// Returns "?"
-func (d SqlServerDialect) BindVar(i int) string {
- return "?"
-}
-
-func (d SqlServerDialect) InsertAutoIncr(exec SqlExecutor, insertSql string, params ...interface{}) (int64, error) {
- return standardInsertAutoIncr(exec, insertSql, params...)
-}
-
-func (d SqlServerDialect) QuoteField(f string) string {
- return `"` + f + `"`
-}
-
-func (d SqlServerDialect) QuotedTableForQuery(schema string, table string) string {
- if strings.TrimSpace(schema) == "" {
- return table
- }
- return schema + "." + table
-}
-
-func (d SqlServerDialect) QuerySuffix() string { return ";" }
-
-func (d SqlServerDialect) IfSchemaNotExists(command, schema string) string {
- s := fmt.Sprintf("if not exists (select name from sys.schemas where name = '%s') %s", schema, command)
- return s
-}
-
-func (d SqlServerDialect) IfTableExists(command, schema, table string) string {
- var schema_clause string
- if strings.TrimSpace(schema) != "" {
- schema_clause = fmt.Sprintf("table_schema = '%s' and ", schema)
- }
- s := fmt.Sprintf("if exists (select * from information_schema.tables where %stable_name = '%s') %s", schema_clause, table, command)
- return s
-}
-
-func (d SqlServerDialect) IfTableNotExists(command, schema, table string) string {
- var schema_clause string
- if strings.TrimSpace(schema) != "" {
- schema_clause = fmt.Sprintf("table_schema = '%s' and ", schema)
- }
- s := fmt.Sprintf("if not exists (select * from information_schema.tables where %stable_name = '%s') %s", schema_clause, table, command)
- return s
-}
-
-///////////////////////////////////////////////////////
-// Oracle //
-///////////
-
-// Implementation of Dialect for Oracle databases.
-type OracleDialect struct{}
-
-func (d OracleDialect) QuerySuffix() string { return "" }
-
-func (d OracleDialect) ToSqlType(val reflect.Type, maxsize int, isAutoIncr bool) string {
- switch val.Kind() {
- case reflect.Ptr:
- return d.ToSqlType(val.Elem(), maxsize, isAutoIncr)
- case reflect.Bool:
- return "boolean"
- case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Uint8, reflect.Uint16, reflect.Uint32:
- if isAutoIncr {
- return "serial"
- }
- return "integer"
- case reflect.Int64, reflect.Uint64:
- if isAutoIncr {
- return "bigserial"
- }
- return "bigint"
- case reflect.Float64:
- return "double precision"
- case reflect.Float32:
- return "real"
- case reflect.Slice:
- if val.Elem().Kind() == reflect.Uint8 {
- return "bytea"
- }
- }
-
- switch val.Name() {
- case "NullInt64":
- return "bigint"
- case "NullFloat64":
- return "double precision"
- case "NullBool":
- return "boolean"
- case "NullTime", "Time":
- return "timestamp with time zone"
- }
-
- if maxsize > 0 {
- return fmt.Sprintf("varchar(%d)", maxsize)
- } else {
- return "text"
- }
-
-}
-
-// Returns empty string
-func (d OracleDialect) AutoIncrStr() string {
- return ""
-}
-
-func (d OracleDialect) AutoIncrBindValue() string {
- return "default"
-}
-
-func (d OracleDialect) AutoIncrInsertSuffix(col *ColumnMap) string {
- return " returning " + col.ColumnName
-}
-
-// Returns suffix
-func (d OracleDialect) CreateTableSuffix() string {
- return ""
-}
-
-func (d OracleDialect) TruncateClause() string {
- return "truncate"
-}
-
-// Returns "$(i+1)"
-func (d OracleDialect) BindVar(i int) string {
- return fmt.Sprintf(":%d", i+1)
-}
-
-func (d OracleDialect) InsertAutoIncr(exec SqlExecutor, insertSql string, params ...interface{}) (int64, error) {
- rows, err := exec.query(insertSql, params...)
- if err != nil {
- return 0, err
- }
- defer rows.Close()
-
- if rows.Next() {
- var id int64
- err := rows.Scan(&id)
- return id, err
- }
-
- return 0, errors.New("No serial value returned for insert: " + insertSql + " Encountered error: " + rows.Err().Error())
-}
-
-func (d OracleDialect) QuoteField(f string) string {
- return `"` + strings.ToUpper(f) + `"`
-}
-
-func (d OracleDialect) QuotedTableForQuery(schema string, table string) string {
- if strings.TrimSpace(schema) == "" {
- return d.QuoteField(table)
- }
-
- return schema + "." + d.QuoteField(table)
-}
-
-func (d OracleDialect) IfSchemaNotExists(command, schema string) string {
- return fmt.Sprintf("%s if not exists", command)
-}
-
-func (d OracleDialect) IfTableExists(command, schema, table string) string {
- return fmt.Sprintf("%s if exists", command)
-}
-
-func (d OracleDialect) IfTableNotExists(command, schema, table string) string {
- return fmt.Sprintf("%s if not exists", command)
-}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_mysql.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_mysql.go
new file mode 100644
index 000000000..3d7d34027
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_mysql.go
@@ -0,0 +1,171 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "fmt"
+ "reflect"
+ "strings"
+)
+
+// Implementation of Dialect for MySQL databases.
+type MySQLDialect struct {
+
+ // Engine is the storage engine to use "InnoDB" vs "MyISAM" for example
+ Engine string
+
+ // Encoding is the character encoding to use for created tables
+ Encoding string
+}
+
+func (d MySQLDialect) QuerySuffix() string { return ";" }
+
+func (d MySQLDialect) ToSqlType(val reflect.Type, maxsize int, isAutoIncr bool) string {
+ switch val.Kind() {
+ case reflect.Ptr:
+ return d.ToSqlType(val.Elem(), maxsize, isAutoIncr)
+ case reflect.Bool:
+ return "boolean"
+ case reflect.Int8:
+ return "tinyint"
+ case reflect.Uint8:
+ return "tinyint unsigned"
+ case reflect.Int16:
+ return "smallint"
+ case reflect.Uint16:
+ return "smallint unsigned"
+ case reflect.Int, reflect.Int32:
+ return "int"
+ case reflect.Uint, reflect.Uint32:
+ return "int unsigned"
+ case reflect.Int64:
+ return "bigint"
+ case reflect.Uint64:
+ return "bigint unsigned"
+ case reflect.Float64, reflect.Float32:
+ return "double"
+ case reflect.Slice:
+ if val.Elem().Kind() == reflect.Uint8 {
+ return "mediumblob"
+ }
+ }
+
+ switch val.Name() {
+ case "NullInt64":
+ return "bigint"
+ case "NullFloat64":
+ return "double"
+ case "NullBool":
+ return "tinyint"
+ case "Time":
+ return "datetime"
+ }
+
+ if maxsize < 1 {
+ maxsize = 255
+ }
+
+ /* == About varchar(N) ==
+ * N is number of characters.
+ * A varchar column can store up to 65535 bytes.
+ * Remember that 1 character is 3 bytes in utf-8 charset.
+ * Also remember that each row can store up to 65535 bytes,
+ * and you have some overheads, so it's not possible for a
+ * varchar column to have 65535/3 characters really.
+ * So it would be better to use 'text' type in stead of
+ * large varchar type.
+ */
+ if maxsize < 256 {
+ return fmt.Sprintf("varchar(%d)", maxsize)
+ } else {
+ return "text"
+ }
+}
+
+// Returns auto_increment
+func (d MySQLDialect) AutoIncrStr() string {
+ return "auto_increment"
+}
+
+func (d MySQLDialect) AutoIncrBindValue() string {
+ return "null"
+}
+
+func (d MySQLDialect) AutoIncrInsertSuffix(col *ColumnMap) string {
+ return ""
+}
+
+// Returns engine=%s charset=%s based on values stored on struct
+func (d MySQLDialect) CreateTableSuffix() string {
+ if d.Engine == "" || d.Encoding == "" {
+ msg := "gorp - undefined"
+
+ if d.Engine == "" {
+ msg += " MySQLDialect.Engine"
+ }
+ if d.Engine == "" && d.Encoding == "" {
+ msg += ","
+ }
+ if d.Encoding == "" {
+ msg += " MySQLDialect.Encoding"
+ }
+ msg += ". Check that your MySQLDialect was correctly initialized when declared."
+ panic(msg)
+ }
+
+ return fmt.Sprintf(" engine=%s charset=%s", d.Engine, d.Encoding)
+}
+
+func (m MySQLDialect) CreateIndexSuffix() string {
+ return "using"
+}
+
+func (m MySQLDialect) DropIndexSuffix() string {
+ return "on"
+}
+
+func (m MySQLDialect) TruncateClause() string {
+ return "truncate"
+}
+
+// Returns "?"
+func (d MySQLDialect) BindVar(i int) string {
+ return "?"
+}
+
+func (d MySQLDialect) InsertAutoIncr(exec SqlExecutor, insertSql string, params ...interface{}) (int64, error) {
+ return standardInsertAutoIncr(exec, insertSql, params...)
+}
+
+func (d MySQLDialect) QuoteField(f string) string {
+ return "`" + f + "`"
+}
+
+func (d MySQLDialect) QuotedTableForQuery(schema string, table string) string {
+ if strings.TrimSpace(schema) == "" {
+ return d.QuoteField(table)
+ }
+
+ return schema + "." + d.QuoteField(table)
+}
+
+func (d MySQLDialect) IfSchemaNotExists(command, schema string) string {
+ return fmt.Sprintf("%s if not exists", command)
+}
+
+func (d MySQLDialect) IfTableExists(command, schema, table string) string {
+ return fmt.Sprintf("%s if exists", command)
+}
+
+func (d MySQLDialect) IfTableNotExists(command, schema, table string) string {
+ return fmt.Sprintf("%s if not exists", command)
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_oracle.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_oracle.go
new file mode 100644
index 000000000..c381380f9
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_oracle.go
@@ -0,0 +1,146 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "fmt"
+ "reflect"
+ "strings"
+)
+
+// Implementation of Dialect for Oracle databases.
+type OracleDialect struct{}
+
+func (d OracleDialect) QuerySuffix() string { return "" }
+
+func (d OracleDialect) CreateIndexSuffix() string { return "" }
+
+func (d OracleDialect) DropIndexSuffix() string { return "" }
+
+func (d OracleDialect) ToSqlType(val reflect.Type, maxsize int, isAutoIncr bool) string {
+ switch val.Kind() {
+ case reflect.Ptr:
+ return d.ToSqlType(val.Elem(), maxsize, isAutoIncr)
+ case reflect.Bool:
+ return "boolean"
+ case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32:
+ if isAutoIncr {
+ return "serial"
+ }
+ return "integer"
+ case reflect.Int64, reflect.Uint64:
+ if isAutoIncr {
+ return "bigserial"
+ }
+ return "bigint"
+ case reflect.Float64:
+ return "double precision"
+ case reflect.Float32:
+ return "real"
+ case reflect.Slice:
+ if val.Elem().Kind() == reflect.Uint8 {
+ return "bytea"
+ }
+ }
+
+ switch val.Name() {
+ case "NullInt64":
+ return "bigint"
+ case "NullFloat64":
+ return "double precision"
+ case "NullBool":
+ return "boolean"
+ case "NullTime", "Time":
+ return "timestamp with time zone"
+ }
+
+ if maxsize > 0 {
+ return fmt.Sprintf("varchar(%d)", maxsize)
+ } else {
+ return "text"
+ }
+
+}
+
+// Returns empty string
+func (d OracleDialect) AutoIncrStr() string {
+ return ""
+}
+
+func (d OracleDialect) AutoIncrBindValue() string {
+ return "NULL"
+}
+
+func (d OracleDialect) AutoIncrInsertSuffix(col *ColumnMap) string {
+ return ""
+}
+
+// Returns suffix
+func (d OracleDialect) CreateTableSuffix() string {
+ return ""
+}
+
+func (d OracleDialect) TruncateClause() string {
+ return "truncate"
+}
+
+// Returns "$(i+1)"
+func (d OracleDialect) BindVar(i int) string {
+ return fmt.Sprintf(":%d", i+1)
+}
+
+// After executing the insert uses the ColMap IdQuery to get the generated id
+func (d OracleDialect) InsertQueryToTarget(exec SqlExecutor, insertSql, idSql string, target interface{}, params ...interface{}) error {
+ _, err := exec.Exec(insertSql, params...)
+ if err != nil {
+ return err
+ }
+ id, err := exec.SelectInt(idSql)
+ if err != nil {
+ return err
+ }
+ switch target.(type) {
+ case *int64:
+ *(target.(*int64)) = id
+ case *int32:
+ *(target.(*int32)) = int32(id)
+ case int:
+ *(target.(*int)) = int(id)
+ default:
+ return fmt.Errorf("Id field can be int, int32 or int64")
+ }
+ return nil
+}
+
+func (d OracleDialect) QuoteField(f string) string {
+ return `"` + strings.ToUpper(f) + `"`
+}
+
+func (d OracleDialect) QuotedTableForQuery(schema string, table string) string {
+ if strings.TrimSpace(schema) == "" {
+ return d.QuoteField(table)
+ }
+
+ return schema + "." + d.QuoteField(table)
+}
+
+func (d OracleDialect) IfSchemaNotExists(command, schema string) string {
+ return fmt.Sprintf("%s if not exists", command)
+}
+
+func (d OracleDialect) IfTableExists(command, schema, table string) string {
+ return fmt.Sprintf("%s if exists", command)
+}
+
+func (d OracleDialect) IfTableNotExists(command, schema, table string) string {
+ return fmt.Sprintf("%s if not exists", command)
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_postgres.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_postgres.go
new file mode 100644
index 000000000..a086381a8
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_postgres.go
@@ -0,0 +1,147 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "fmt"
+ "reflect"
+ "strings"
+)
+
+type PostgresDialect struct {
+ suffix string
+}
+
+func (d PostgresDialect) QuerySuffix() string { return ";" }
+
+func (d PostgresDialect) ToSqlType(val reflect.Type, maxsize int, isAutoIncr bool) string {
+ switch val.Kind() {
+ case reflect.Ptr:
+ return d.ToSqlType(val.Elem(), maxsize, isAutoIncr)
+ case reflect.Bool:
+ return "boolean"
+ case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32:
+ if isAutoIncr {
+ return "serial"
+ }
+ return "integer"
+ case reflect.Int64, reflect.Uint64:
+ if isAutoIncr {
+ return "bigserial"
+ }
+ return "bigint"
+ case reflect.Float64:
+ return "double precision"
+ case reflect.Float32:
+ return "real"
+ case reflect.Slice:
+ if val.Elem().Kind() == reflect.Uint8 {
+ return "bytea"
+ }
+ }
+
+ switch val.Name() {
+ case "NullInt64":
+ return "bigint"
+ case "NullFloat64":
+ return "double precision"
+ case "NullBool":
+ return "boolean"
+ case "Time", "NullTime":
+ return "timestamp with time zone"
+ }
+
+ if maxsize > 0 {
+ return fmt.Sprintf("varchar(%d)", maxsize)
+ } else {
+ return "text"
+ }
+
+}
+
+// Returns empty string
+func (d PostgresDialect) AutoIncrStr() string {
+ return ""
+}
+
+func (d PostgresDialect) AutoIncrBindValue() string {
+ return "default"
+}
+
+func (d PostgresDialect) AutoIncrInsertSuffix(col *ColumnMap) string {
+ return " returning " + col.ColumnName
+}
+
+// Returns suffix
+func (d PostgresDialect) CreateTableSuffix() string {
+ return d.suffix
+}
+
+func (d PostgresDialect) CreateIndexSuffix() string {
+ return "using"
+}
+
+func (d PostgresDialect) DropIndexSuffix() string {
+ return ""
+}
+
+func (d PostgresDialect) TruncateClause() string {
+ return "truncate"
+}
+
+// Returns "$(i+1)"
+func (d PostgresDialect) BindVar(i int) string {
+ return fmt.Sprintf("$%d", i+1)
+}
+
+func (d PostgresDialect) InsertAutoIncrToTarget(exec SqlExecutor, insertSql string, target interface{}, params ...interface{}) error {
+ rows, err := exec.query(insertSql, params...)
+ if err != nil {
+ return err
+ }
+ defer rows.Close()
+
+ if !rows.Next() {
+ return fmt.Errorf("No serial value returned for insert: %s Encountered error: %s", insertSql, rows.Err())
+ }
+ if err := rows.Scan(target); err != nil {
+ return err
+ }
+ if rows.Next() {
+ return fmt.Errorf("more than two serial value returned for insert: %s", insertSql)
+ }
+ return rows.Err()
+}
+
+func (d PostgresDialect) QuoteField(f string) string {
+ return `"` + strings.ToLower(f) + `"`
+}
+
+func (d PostgresDialect) QuotedTableForQuery(schema string, table string) string {
+ if strings.TrimSpace(schema) == "" {
+ return d.QuoteField(table)
+ }
+
+ return schema + "." + d.QuoteField(table)
+}
+
+func (d PostgresDialect) IfSchemaNotExists(command, schema string) string {
+ return fmt.Sprintf("%s if not exists", command)
+}
+
+func (d PostgresDialect) IfTableExists(command, schema, table string) string {
+ return fmt.Sprintf("%s if exists", command)
+}
+
+func (d PostgresDialect) IfTableNotExists(command, schema, table string) string {
+ return fmt.Sprintf("%s if not exists", command)
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_sqlite.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_sqlite.go
new file mode 100644
index 000000000..7d9b29757
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_sqlite.go
@@ -0,0 +1,119 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "fmt"
+ "reflect"
+)
+
+type SqliteDialect struct {
+ suffix string
+}
+
+func (d SqliteDialect) QuerySuffix() string { return ";" }
+
+func (d SqliteDialect) ToSqlType(val reflect.Type, maxsize int, isAutoIncr bool) string {
+ switch val.Kind() {
+ case reflect.Ptr:
+ return d.ToSqlType(val.Elem(), maxsize, isAutoIncr)
+ case reflect.Bool:
+ return "integer"
+ case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64:
+ return "integer"
+ case reflect.Float64, reflect.Float32:
+ return "real"
+ case reflect.Slice:
+ if val.Elem().Kind() == reflect.Uint8 {
+ return "blob"
+ }
+ }
+
+ switch val.Name() {
+ case "NullInt64":
+ return "integer"
+ case "NullFloat64":
+ return "real"
+ case "NullBool":
+ return "integer"
+ case "Time":
+ return "datetime"
+ }
+
+ if maxsize < 1 {
+ maxsize = 255
+ }
+ return fmt.Sprintf("varchar(%d)", maxsize)
+}
+
+// Returns autoincrement
+func (d SqliteDialect) AutoIncrStr() string {
+ return "autoincrement"
+}
+
+func (d SqliteDialect) AutoIncrBindValue() string {
+ return "null"
+}
+
+func (d SqliteDialect) AutoIncrInsertSuffix(col *ColumnMap) string {
+ return ""
+}
+
+// Returns suffix
+func (d SqliteDialect) CreateTableSuffix() string {
+ return d.suffix
+}
+
+func (d SqliteDialect) CreateIndexSuffix() string {
+ return ""
+}
+
+func (d SqliteDialect) DropIndexSuffix() string {
+ return ""
+}
+
+// With sqlite, there technically isn't a TRUNCATE statement,
+// but a DELETE FROM uses a truncate optimization:
+// http://www.sqlite.org/lang_delete.html
+func (d SqliteDialect) TruncateClause() string {
+ return "delete from"
+}
+
+// Returns "?"
+func (d SqliteDialect) BindVar(i int) string {
+ return "?"
+}
+
+func (d SqliteDialect) InsertAutoIncr(exec SqlExecutor, insertSql string, params ...interface{}) (int64, error) {
+ return standardInsertAutoIncr(exec, insertSql, params...)
+}
+
+func (d SqliteDialect) QuoteField(f string) string {
+ return `"` + f + `"`
+}
+
+// sqlite does not have schemas like PostgreSQL does, so just escape it like normal
+func (d SqliteDialect) QuotedTableForQuery(schema string, table string) string {
+ return d.QuoteField(table)
+}
+
+func (d SqliteDialect) IfSchemaNotExists(command, schema string) string {
+ return fmt.Sprintf("%s if not exists", command)
+}
+
+func (d SqliteDialect) IfTableExists(command, schema, table string) string {
+ return fmt.Sprintf("%s if exists", command)
+}
+
+func (d SqliteDialect) IfTableNotExists(command, schema, table string) string {
+ return fmt.Sprintf("%s if not exists", command)
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_sqlserver.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_sqlserver.go
new file mode 100644
index 000000000..8808af598
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/dialect_sqlserver.go
@@ -0,0 +1,152 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "fmt"
+ "reflect"
+ "strings"
+)
+
+// Implementation of Dialect for Microsoft SQL Server databases.
+// Use gorp.SqlServerDialect{"2005"} for legacy datatypes.
+// Tested with driver: github.com/denisenkom/go-mssqldb
+
+type SqlServerDialect struct {
+
+ // If set to "2005" legacy datatypes will be used
+ Version string
+}
+
+func (d SqlServerDialect) ToSqlType(val reflect.Type, maxsize int, isAutoIncr bool) string {
+ switch val.Kind() {
+ case reflect.Ptr:
+ return d.ToSqlType(val.Elem(), maxsize, isAutoIncr)
+ case reflect.Bool:
+ return "bit"
+ case reflect.Int8:
+ return "tinyint"
+ case reflect.Uint8:
+ return "smallint"
+ case reflect.Int16:
+ return "smallint"
+ case reflect.Uint16:
+ return "int"
+ case reflect.Int, reflect.Int32:
+ return "int"
+ case reflect.Uint, reflect.Uint32:
+ return "bigint"
+ case reflect.Int64:
+ return "bigint"
+ case reflect.Uint64:
+ return "numeric(20,0)"
+ case reflect.Float32:
+ return "float(24)"
+ case reflect.Float64:
+ return "float(53)"
+ case reflect.Slice:
+ if val.Elem().Kind() == reflect.Uint8 {
+ return "varbinary"
+ }
+ }
+
+ switch val.Name() {
+ case "NullInt64":
+ return "bigint"
+ case "NullFloat64":
+ return "float(53)"
+ case "NullBool":
+ return "bit"
+ case "NullTime", "Time":
+ if d.Version == "2005" {
+ return "datetime"
+ }
+ return "datetime2"
+ }
+
+ if maxsize < 1 {
+ if d.Version == "2005" {
+ maxsize = 255
+ } else {
+ return fmt.Sprintf("nvarchar(max)")
+ }
+ }
+ return fmt.Sprintf("nvarchar(%d)", maxsize)
+}
+
+// Returns auto_increment
+func (d SqlServerDialect) AutoIncrStr() string {
+ return "identity(0,1)"
+}
+
+// Empty string removes autoincrement columns from the INSERT statements.
+func (d SqlServerDialect) AutoIncrBindValue() string {
+ return ""
+}
+
+func (d SqlServerDialect) AutoIncrInsertSuffix(col *ColumnMap) string {
+ return ""
+}
+
+func (d SqlServerDialect) CreateTableSuffix() string { return ";" }
+
+func (d SqlServerDialect) TruncateClause() string {
+ return "truncate table"
+}
+
+// Returns "?"
+func (d SqlServerDialect) BindVar(i int) string {
+ return "?"
+}
+
+func (d SqlServerDialect) InsertAutoIncr(exec SqlExecutor, insertSql string, params ...interface{}) (int64, error) {
+ return standardInsertAutoIncr(exec, insertSql, params...)
+}
+
+func (d SqlServerDialect) QuoteField(f string) string {
+ return "[" + strings.Replace(f, "]", "]]", -1) + "]"
+}
+
+func (d SqlServerDialect) QuotedTableForQuery(schema string, table string) string {
+ if strings.TrimSpace(schema) == "" {
+ return d.QuoteField(table)
+ }
+ return d.QuoteField(schema) + "." + d.QuoteField(table)
+}
+
+func (d SqlServerDialect) QuerySuffix() string { return ";" }
+
+func (d SqlServerDialect) IfSchemaNotExists(command, schema string) string {
+ s := fmt.Sprintf("if schema_id(N'%s') is null %s", schema, command)
+ return s
+}
+
+func (d SqlServerDialect) IfTableExists(command, schema, table string) string {
+ var schema_clause string
+ if strings.TrimSpace(schema) != "" {
+ schema_clause = fmt.Sprintf("%s.", d.QuoteField(schema))
+ }
+ s := fmt.Sprintf("if object_id('%s%s') is not null %s", schema_clause, d.QuoteField(table), command)
+ return s
+}
+
+func (d SqlServerDialect) IfTableNotExists(command, schema, table string) string {
+ var schema_clause string
+ if strings.TrimSpace(schema) != "" {
+ schema_clause = fmt.Sprintf("%s.", schema)
+ }
+ s := fmt.Sprintf("if object_id('%s%s') is null %s", schema_clause, table, command)
+ return s
+}
+
+func (d SqlServerDialect) CreateIndexSuffix() string { return "" }
+func (d SqlServerDialect) DropIndexSuffix() string { return "" }
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/errors.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/errors.go
index 356d68475..d13f03fc3 100644
--- a/Godeps/_workspace/src/github.com/go-gorp/gorp/errors.go
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/errors.go
@@ -1,3 +1,14 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
package gorp
import (
@@ -6,13 +17,14 @@ import (
// A non-fatal error, when a select query returns columns that do not exist
// as fields in the struct it is being mapped to
+// TODO: discuss wether this needs an error. encoding/json silently ignores missing fields
type NoFieldInTypeError struct {
TypeName string
MissingColNames []string
}
func (err *NoFieldInTypeError) Error() string {
- return fmt.Sprintf("gorp: No fields %+v in type %s", err.MissingColNames, err.TypeName)
+ return fmt.Sprintf("gorp: no fields %+v in type %s", err.MissingColNames, err.TypeName)
}
// returns true if the error is non-fatal (ie, we shouldn't immediately return)
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/gorp.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/gorp.go
index 4c91b6f78..1f32283f5 100644
--- a/Godeps/_workspace/src/github.com/go-gorp/gorp/gorp.go
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/gorp.go
@@ -12,10 +12,8 @@
package gorp
import (
- "bytes"
"database/sql"
"database/sql/driver"
- "errors"
"fmt"
"reflect"
"regexp"
@@ -23,7 +21,8 @@ import (
"time"
)
-// Oracle String (empty string is null)
+// OracleString (empty string is null)
+// TODO: move to dialect/oracle?, rename to String?
type OracleString struct {
sql.NullString
}
@@ -46,80 +45,25 @@ func (os OracleString) Value() (driver.Value, error) {
return os.String, nil
}
-// A nullable Time value
-type NullTime struct {
- Time time.Time
- Valid bool // Valid is true if Time is not NULL
+// SqlTyper is a type that returns its database type. Most of the
+// time, the type can just use "database/sql/driver".Valuer; but when
+// it returns nil for its empty value, it needs to implement SqlTyper
+// to have its column type detected properly during table creation.
+type SqlTyper interface {
+ SqlType() driver.Valuer
}
+// for fields that exists in DB table, but not exists in struct
+type dummyField struct{}
+
// Scan implements the Scanner interface.
-func (nt *NullTime) Scan(value interface{}) error {
- switch t := value.(type) {
- case time.Time:
- nt.Time, nt.Valid = t, true
- case []byte:
- nt.Valid = false
- for _, dtfmt := range []string{
- "2006-01-02 15:04:05.999999999",
- "2006-01-02T15:04:05.999999999",
- "2006-01-02 15:04:05",
- "2006-01-02T15:04:05",
- "2006-01-02 15:04",
- "2006-01-02T15:04",
- "2006-01-02",
- "2006-01-02 15:04:05-07:00",
- } {
- var err error
- if nt.Time, err = time.Parse(dtfmt, string(t)); err == nil {
- nt.Valid = true
- break
- }
- }
- }
+func (nt *dummyField) Scan(value interface{}) error {
return nil
}
-// Value implements the driver Valuer interface.
-func (nt NullTime) Value() (driver.Value, error) {
- if !nt.Valid {
- return nil, nil
- }
- return nt.Time, nil
-}
-
var zeroVal reflect.Value
var versFieldConst = "[gorp_ver_field]"
-// OptimisticLockError is returned by Update() or Delete() if the
-// struct being modified has a Version field and the value is not equal to
-// the current value in the database
-type OptimisticLockError struct {
- // Table name where the lock error occurred
- TableName string
-
- // Primary key values of the row being updated/deleted
- Keys []interface{}
-
- // true if a row was found with those keys, indicating the
- // LocalVersion is stale. false if no value was found with those
- // keys, suggesting the row has been deleted since loaded, or
- // was never inserted to begin with
- RowExists bool
-
- // Version value on the struct passed to Update/Delete. This value is
- // out of sync with the database.
- LocalVersion int64
-}
-
-// Error returns a description of the cause of the lock error
-func (e OptimisticLockError) Error() string {
- if e.RowExists {
- return fmt.Sprintf("gorp: OptimisticLockError table=%s keys=%v out of date version=%d", e.TableName, e.Keys, e.LocalVersion)
- }
-
- return fmt.Sprintf("gorp: OptimisticLockError no row found for table=%s keys=%v", e.TableName, e.Keys)
-}
-
// The TypeConverter interface provides a way to map a value of one
// type to another type when persisting to, or loading from, a database.
//
@@ -139,502 +83,6 @@ type TypeConverter interface {
FromDb(target interface{}) (CustomScanner, bool)
}
-// CustomScanner binds a database column value to a Go type
-type CustomScanner struct {
- // After a row is scanned, Holder will contain the value from the database column.
- // Initialize the CustomScanner with the concrete Go type you wish the database
- // driver to scan the raw column into.
- Holder interface{}
- // Target typically holds a pointer to the target struct field to bind the Holder
- // value to.
- Target interface{}
- // Binder is a custom function that converts the holder value to the target type
- // and sets target accordingly. This function should return error if a problem
- // occurs converting the holder to the target.
- Binder func(holder interface{}, target interface{}) error
-}
-
-// Bind is called automatically by gorp after Scan()
-func (me CustomScanner) Bind() error {
- return me.Binder(me.Holder, me.Target)
-}
-
-// DbMap is the root gorp mapping object. Create one of these for each
-// database schema you wish to map. Each DbMap contains a list of
-// mapped tables.
-//
-// Example:
-//
-// dialect := gorp.MySQLDialect{"InnoDB", "UTF8"}
-// dbmap := &gorp.DbMap{Db: db, Dialect: dialect}
-//
-type DbMap struct {
- // Db handle to use with this map
- Db *sql.DB
-
- // Dialect implementation to use with this map
- Dialect Dialect
-
- TypeConverter TypeConverter
-
- tables []*TableMap
- logger GorpLogger
- logPrefix string
-}
-
-// TableMap represents a mapping between a Go struct and a database table
-// Use dbmap.AddTable() or dbmap.AddTableWithName() to create these
-type TableMap struct {
- // Name of database table.
- TableName string
- SchemaName string
- gotype reflect.Type
- Columns []*ColumnMap
- keys []*ColumnMap
- uniqueTogether [][]string
- version *ColumnMap
- insertPlan bindPlan
- updatePlan bindPlan
- deletePlan bindPlan
- getPlan bindPlan
- dbmap *DbMap
-}
-
-// ResetSql removes cached insert/update/select/delete SQL strings
-// associated with this TableMap. Call this if you've modified
-// any column names or the table name itself.
-func (t *TableMap) ResetSql() {
- t.insertPlan = bindPlan{}
- t.updatePlan = bindPlan{}
- t.deletePlan = bindPlan{}
- t.getPlan = bindPlan{}
-}
-
-// SetKeys lets you specify the fields on a struct that map to primary
-// key columns on the table. If isAutoIncr is set, result.LastInsertId()
-// will be used after INSERT to bind the generated id to the Go struct.
-//
-// Automatically calls ResetSql() to ensure SQL statements are regenerated.
-//
-// Panics if isAutoIncr is true, and fieldNames length != 1
-//
-func (t *TableMap) SetKeys(isAutoIncr bool, fieldNames ...string) *TableMap {
- if isAutoIncr && len(fieldNames) != 1 {
- panic(fmt.Sprintf(
- "gorp: SetKeys: fieldNames length must be 1 if key is auto-increment. (Saw %v fieldNames)",
- len(fieldNames)))
- }
- t.keys = make([]*ColumnMap, 0)
- for _, name := range fieldNames {
- colmap := t.ColMap(name)
- colmap.isPK = true
- colmap.isAutoIncr = isAutoIncr
- t.keys = append(t.keys, colmap)
- }
- t.ResetSql()
-
- return t
-}
-
-// SetUniqueTogether lets you specify uniqueness constraints across multiple
-// columns on the table. Each call adds an additional constraint for the
-// specified columns.
-//
-// Automatically calls ResetSql() to ensure SQL statements are regenerated.
-//
-// Panics if fieldNames length < 2.
-//
-func (t *TableMap) SetUniqueTogether(fieldNames ...string) *TableMap {
- if len(fieldNames) < 2 {
- panic(fmt.Sprintf(
- "gorp: SetUniqueTogether: must provide at least two fieldNames to set uniqueness constraint."))
- }
-
- columns := make([]string, 0)
- for _, name := range fieldNames {
- columns = append(columns, name)
- }
- t.uniqueTogether = append(t.uniqueTogether, columns)
- t.ResetSql()
-
- return t
-}
-
-// ColMap returns the ColumnMap pointer matching the given struct field
-// name. It panics if the struct does not contain a field matching this
-// name.
-func (t *TableMap) ColMap(field string) *ColumnMap {
- col := colMapOrNil(t, field)
- if col == nil {
- e := fmt.Sprintf("No ColumnMap in table %s type %s with field %s",
- t.TableName, t.gotype.Name(), field)
-
- panic(e)
- }
- return col
-}
-
-func colMapOrNil(t *TableMap, field string) *ColumnMap {
- for _, col := range t.Columns {
- if col.fieldName == field || col.ColumnName == field {
- return col
- }
- }
- return nil
-}
-
-// SetVersionCol sets the column to use as the Version field. By default
-// the "Version" field is used. Returns the column found, or panics
-// if the struct does not contain a field matching this name.
-//
-// Automatically calls ResetSql() to ensure SQL statements are regenerated.
-func (t *TableMap) SetVersionCol(field string) *ColumnMap {
- c := t.ColMap(field)
- t.version = c
- t.ResetSql()
- return c
-}
-
-type bindPlan struct {
- query string
- argFields []string
- keyFields []string
- versField string
- autoIncrIdx int
- autoIncrFieldName string
-}
-
-func (plan bindPlan) createBindInstance(elem reflect.Value, conv TypeConverter) (bindInstance, error) {
- bi := bindInstance{query: plan.query, autoIncrIdx: plan.autoIncrIdx, autoIncrFieldName: plan.autoIncrFieldName, versField: plan.versField}
- if plan.versField != "" {
- bi.existingVersion = elem.FieldByName(plan.versField).Int()
- }
-
- var err error
-
- for i := 0; i < len(plan.argFields); i++ {
- k := plan.argFields[i]
- if k == versFieldConst {
- newVer := bi.existingVersion + 1
- bi.args = append(bi.args, newVer)
- if bi.existingVersion == 0 {
- elem.FieldByName(plan.versField).SetInt(int64(newVer))
- }
- } else {
- val := elem.FieldByName(k).Interface()
- if conv != nil {
- val, err = conv.ToDb(val)
- if err != nil {
- return bindInstance{}, err
- }
- }
- bi.args = append(bi.args, val)
- }
- }
-
- for i := 0; i < len(plan.keyFields); i++ {
- k := plan.keyFields[i]
- val := elem.FieldByName(k).Interface()
- if conv != nil {
- val, err = conv.ToDb(val)
- if err != nil {
- return bindInstance{}, err
- }
- }
- bi.keys = append(bi.keys, val)
- }
-
- return bi, nil
-}
-
-type bindInstance struct {
- query string
- args []interface{}
- keys []interface{}
- existingVersion int64
- versField string
- autoIncrIdx int
- autoIncrFieldName string
-}
-
-func (t *TableMap) bindInsert(elem reflect.Value) (bindInstance, error) {
- plan := t.insertPlan
- if plan.query == "" {
- plan.autoIncrIdx = -1
-
- s := bytes.Buffer{}
- s2 := bytes.Buffer{}
- s.WriteString(fmt.Sprintf("insert into %s (", t.dbmap.Dialect.QuotedTableForQuery(t.SchemaName, t.TableName)))
-
- x := 0
- first := true
- for y := range t.Columns {
- col := t.Columns[y]
- if !(col.isAutoIncr && t.dbmap.Dialect.AutoIncrBindValue() == "") {
- if !col.Transient {
- if !first {
- s.WriteString(",")
- s2.WriteString(",")
- }
- s.WriteString(t.dbmap.Dialect.QuoteField(col.ColumnName))
-
- if col.isAutoIncr {
- s2.WriteString(t.dbmap.Dialect.AutoIncrBindValue())
- plan.autoIncrIdx = y
- plan.autoIncrFieldName = col.fieldName
- } else {
- s2.WriteString(t.dbmap.Dialect.BindVar(x))
- if col == t.version {
- plan.versField = col.fieldName
- plan.argFields = append(plan.argFields, versFieldConst)
- } else {
- plan.argFields = append(plan.argFields, col.fieldName)
- }
-
- x++
- }
- first = false
- }
- } else {
- plan.autoIncrIdx = y
- plan.autoIncrFieldName = col.fieldName
- }
- }
- s.WriteString(") values (")
- s.WriteString(s2.String())
- s.WriteString(")")
- if plan.autoIncrIdx > -1 {
- s.WriteString(t.dbmap.Dialect.AutoIncrInsertSuffix(t.Columns[plan.autoIncrIdx]))
- }
- s.WriteString(t.dbmap.Dialect.QuerySuffix())
-
- plan.query = s.String()
- t.insertPlan = plan
- }
-
- return plan.createBindInstance(elem, t.dbmap.TypeConverter)
-}
-
-func (t *TableMap) bindUpdate(elem reflect.Value) (bindInstance, error) {
- plan := t.updatePlan
- if plan.query == "" {
-
- s := bytes.Buffer{}
- s.WriteString(fmt.Sprintf("update %s set ", t.dbmap.Dialect.QuotedTableForQuery(t.SchemaName, t.TableName)))
- x := 0
-
- for y := range t.Columns {
- col := t.Columns[y]
- if !col.isAutoIncr && !col.Transient {
- if x > 0 {
- s.WriteString(", ")
- }
- s.WriteString(t.dbmap.Dialect.QuoteField(col.ColumnName))
- s.WriteString("=")
- s.WriteString(t.dbmap.Dialect.BindVar(x))
-
- if col == t.version {
- plan.versField = col.fieldName
- plan.argFields = append(plan.argFields, versFieldConst)
- } else {
- plan.argFields = append(plan.argFields, col.fieldName)
- }
- x++
- }
- }
-
- s.WriteString(" where ")
- for y := range t.keys {
- col := t.keys[y]
- if y > 0 {
- s.WriteString(" and ")
- }
- s.WriteString(t.dbmap.Dialect.QuoteField(col.ColumnName))
- s.WriteString("=")
- s.WriteString(t.dbmap.Dialect.BindVar(x))
-
- plan.argFields = append(plan.argFields, col.fieldName)
- plan.keyFields = append(plan.keyFields, col.fieldName)
- x++
- }
- if plan.versField != "" {
- s.WriteString(" and ")
- s.WriteString(t.dbmap.Dialect.QuoteField(t.version.ColumnName))
- s.WriteString("=")
- s.WriteString(t.dbmap.Dialect.BindVar(x))
- plan.argFields = append(plan.argFields, plan.versField)
- }
- s.WriteString(t.dbmap.Dialect.QuerySuffix())
-
- plan.query = s.String()
- t.updatePlan = plan
- }
-
- return plan.createBindInstance(elem, t.dbmap.TypeConverter)
-}
-
-func (t *TableMap) bindDelete(elem reflect.Value) (bindInstance, error) {
- plan := t.deletePlan
- if plan.query == "" {
-
- s := bytes.Buffer{}
- s.WriteString(fmt.Sprintf("delete from %s", t.dbmap.Dialect.QuotedTableForQuery(t.SchemaName, t.TableName)))
-
- for y := range t.Columns {
- col := t.Columns[y]
- if !col.Transient {
- if col == t.version {
- plan.versField = col.fieldName
- }
- }
- }
-
- s.WriteString(" where ")
- for x := range t.keys {
- k := t.keys[x]
- if x > 0 {
- s.WriteString(" and ")
- }
- s.WriteString(t.dbmap.Dialect.QuoteField(k.ColumnName))
- s.WriteString("=")
- s.WriteString(t.dbmap.Dialect.BindVar(x))
-
- plan.keyFields = append(plan.keyFields, k.fieldName)
- plan.argFields = append(plan.argFields, k.fieldName)
- }
- if plan.versField != "" {
- s.WriteString(" and ")
- s.WriteString(t.dbmap.Dialect.QuoteField(t.version.ColumnName))
- s.WriteString("=")
- s.WriteString(t.dbmap.Dialect.BindVar(len(plan.argFields)))
-
- plan.argFields = append(plan.argFields, plan.versField)
- }
- s.WriteString(t.dbmap.Dialect.QuerySuffix())
-
- plan.query = s.String()
- t.deletePlan = plan
- }
-
- return plan.createBindInstance(elem, t.dbmap.TypeConverter)
-}
-
-func (t *TableMap) bindGet() bindPlan {
- plan := t.getPlan
- if plan.query == "" {
-
- s := bytes.Buffer{}
- s.WriteString("select ")
-
- x := 0
- for _, col := range t.Columns {
- if !col.Transient {
- if x > 0 {
- s.WriteString(",")
- }
- s.WriteString(t.dbmap.Dialect.QuoteField(col.ColumnName))
- plan.argFields = append(plan.argFields, col.fieldName)
- x++
- }
- }
- s.WriteString(" from ")
- s.WriteString(t.dbmap.Dialect.QuotedTableForQuery(t.SchemaName, t.TableName))
- s.WriteString(" where ")
- for x := range t.keys {
- col := t.keys[x]
- if x > 0 {
- s.WriteString(" and ")
- }
- s.WriteString(t.dbmap.Dialect.QuoteField(col.ColumnName))
- s.WriteString("=")
- s.WriteString(t.dbmap.Dialect.BindVar(x))
-
- plan.keyFields = append(plan.keyFields, col.fieldName)
- }
- s.WriteString(t.dbmap.Dialect.QuerySuffix())
-
- plan.query = s.String()
- t.getPlan = plan
- }
-
- return plan
-}
-
-// ColumnMap represents a mapping between a Go struct field and a single
-// column in a table.
-// Unique and MaxSize only inform the
-// CreateTables() function and are not used by Insert/Update/Delete/Get.
-type ColumnMap struct {
- // Column name in db table
- ColumnName string
-
- // If true, this column is skipped in generated SQL statements
- Transient bool
-
- // If true, " unique" is added to create table statements.
- // Not used elsewhere
- Unique bool
-
- // Passed to Dialect.ToSqlType() to assist in informing the
- // correct column type to map to in CreateTables()
- // Not used elsewhere
- MaxSize int
-
- fieldName string
- gotype reflect.Type
- isPK bool
- isAutoIncr bool
- isNotNull bool
-}
-
-// Rename allows you to specify the column name in the table
-//
-// Example: table.ColMap("Updated").Rename("date_updated")
-//
-func (c *ColumnMap) Rename(colname string) *ColumnMap {
- c.ColumnName = colname
- return c
-}
-
-// SetTransient allows you to mark the column as transient. If true
-// this column will be skipped when SQL statements are generated
-func (c *ColumnMap) SetTransient(b bool) *ColumnMap {
- c.Transient = b
- return c
-}
-
-// SetUnique adds "unique" to the create table statements for this
-// column, if b is true.
-func (c *ColumnMap) SetUnique(b bool) *ColumnMap {
- c.Unique = b
- return c
-}
-
-// SetNotNull adds "not null" to the create table statements for this
-// column, if nn is true.
-func (c *ColumnMap) SetNotNull(nn bool) *ColumnMap {
- c.isNotNull = nn
- return c
-}
-
-// SetMaxSize specifies the max length of values of this column. This is
-// passed to the dialect.ToSqlType() function, which can use the value
-// to alter the generated type for "create table" statements
-func (c *ColumnMap) SetMaxSize(size int) *ColumnMap {
- c.MaxSize = size
- return c
-}
-
-// Transaction represents a database transaction.
-// Insert/Update/Delete/Get/Exec operations will be run in the context
-// of that transaction. Transactions should be terminated with
-// a call to Commit() or Rollback()
-type Transaction struct {
- dbmap *DbMap
- tx *sql.Tx
- closed bool
-}
-
// Executor exposes the sql.DB and sql.Tx Exec function so that it can be used
// on internal functions that convert named parameters for the Exec function.
type executor interface {
@@ -670,534 +118,6 @@ type SqlExecutor interface {
// interface.
var _, _ SqlExecutor = &DbMap{}, &Transaction{}
-type GorpLogger interface {
- Printf(format string, v ...interface{})
-}
-
-// TraceOn turns on SQL statement logging for this DbMap. After this is
-// called, all SQL statements will be sent to the logger. If prefix is
-// a non-empty string, it will be written to the front of all logged
-// strings, which can aid in filtering log lines.
-//
-// Use TraceOn if you want to spy on the SQL statements that gorp
-// generates.
-//
-// Note that the base log.Logger type satisfies GorpLogger, but adapters can
-// easily be written for other logging packages (e.g., the golang-sanctioned
-// glog framework).
-func (m *DbMap) TraceOn(prefix string, logger GorpLogger) {
- m.logger = logger
- if prefix == "" {
- m.logPrefix = prefix
- } else {
- m.logPrefix = fmt.Sprintf("%s ", prefix)
- }
-}
-
-// TraceOff turns off tracing. It is idempotent.
-func (m *DbMap) TraceOff() {
- m.logger = nil
- m.logPrefix = ""
-}
-
-// AddTable registers the given interface type with gorp. The table name
-// will be given the name of the TypeOf(i). You must call this function,
-// or AddTableWithName, for any struct type you wish to persist with
-// the given DbMap.
-//
-// This operation is idempotent. If i's type is already mapped, the
-// existing *TableMap is returned
-func (m *DbMap) AddTable(i interface{}) *TableMap {
- return m.AddTableWithName(i, "")
-}
-
-// AddTableWithName has the same behavior as AddTable, but sets
-// table.TableName to name.
-func (m *DbMap) AddTableWithName(i interface{}, name string) *TableMap {
- return m.AddTableWithNameAndSchema(i, "", name)
-}
-
-// AddTableWithNameAndSchema has the same behavior as AddTable, but sets
-// table.TableName to name.
-func (m *DbMap) AddTableWithNameAndSchema(i interface{}, schema string, name string) *TableMap {
- t := reflect.TypeOf(i)
- if name == "" {
- name = t.Name()
- }
-
- // check if we have a table for this type already
- // if so, update the name and return the existing pointer
- for i := range m.tables {
- table := m.tables[i]
- if table.gotype == t {
- table.TableName = name
- return table
- }
- }
-
- tmap := &TableMap{gotype: t, TableName: name, SchemaName: schema, dbmap: m}
- tmap.Columns = m.readStructColumns(t)
- m.tables = append(m.tables, tmap)
-
- return tmap
-}
-
-func (m *DbMap) readStructColumns(t reflect.Type) (cols []*ColumnMap) {
- n := t.NumField()
- for i := 0; i < n; i++ {
- f := t.Field(i)
- if f.Anonymous && f.Type.Kind() == reflect.Struct {
- // Recursively add nested fields in embedded structs.
- subcols := m.readStructColumns(f.Type)
- // Don't append nested fields that have the same field
- // name as an already-mapped field.
- for _, subcol := range subcols {
- shouldAppend := true
- for _, col := range cols {
- if !subcol.Transient && subcol.fieldName == col.fieldName {
- shouldAppend = false
- break
- }
- }
- if shouldAppend {
- cols = append(cols, subcol)
- }
- }
- } else {
- columnName := f.Tag.Get("db")
- if columnName == "" {
- columnName = f.Name
- }
- gotype := f.Type
- if m.TypeConverter != nil {
- // Make a new pointer to a value of type gotype and
- // pass it to the TypeConverter's FromDb method to see
- // if a different type should be used for the column
- // type during table creation.
- value := reflect.New(gotype).Interface()
- scanner, useHolder := m.TypeConverter.FromDb(value)
- if useHolder {
- gotype = reflect.TypeOf(scanner.Holder)
- }
- }
- cm := &ColumnMap{
- ColumnName: columnName,
- Transient: columnName == "-",
- fieldName: f.Name,
- gotype: gotype,
- }
- // Check for nested fields of the same field name and
- // override them.
- shouldAppend := true
- for index, col := range cols {
- if !col.Transient && col.fieldName == cm.fieldName {
- cols[index] = cm
- shouldAppend = false
- break
- }
- }
- if shouldAppend {
- cols = append(cols, cm)
- }
- }
- }
- return
-}
-
-// CreateTables iterates through TableMaps registered to this DbMap and
-// executes "create table" statements against the database for each.
-//
-// This is particularly useful in unit tests where you want to create
-// and destroy the schema automatically.
-func (m *DbMap) CreateTables() error {
- return m.createTables(false)
-}
-
-// CreateTablesIfNotExists is similar to CreateTables, but starts
-// each statement with "create table if not exists" so that existing
-// tables do not raise errors
-func (m *DbMap) CreateTablesIfNotExists() error {
- return m.createTables(true)
-}
-
-func (m *DbMap) createTables(ifNotExists bool) error {
- var err error
- for i := range m.tables {
- table := m.tables[i]
-
- s := bytes.Buffer{}
-
- if strings.TrimSpace(table.SchemaName) != "" {
- schemaCreate := "create schema"
- if ifNotExists {
- s.WriteString(m.Dialect.IfSchemaNotExists(schemaCreate, table.SchemaName))
- } else {
- s.WriteString(schemaCreate)
- }
- s.WriteString(fmt.Sprintf(" %s;", table.SchemaName))
- }
-
- tableCreate := "create table"
- if ifNotExists {
- s.WriteString(m.Dialect.IfTableNotExists(tableCreate, table.SchemaName, table.TableName))
- } else {
- s.WriteString(tableCreate)
- }
- s.WriteString(fmt.Sprintf(" %s (", m.Dialect.QuotedTableForQuery(table.SchemaName, table.TableName)))
-
- x := 0
- for _, col := range table.Columns {
- if !col.Transient {
- if x > 0 {
- s.WriteString(", ")
- }
- stype := m.Dialect.ToSqlType(col.gotype, col.MaxSize, col.isAutoIncr)
- s.WriteString(fmt.Sprintf("%s %s", m.Dialect.QuoteField(col.ColumnName), stype))
-
- if col.isPK || col.isNotNull {
- s.WriteString(" not null")
- }
- if col.isPK && len(table.keys) == 1 {
- s.WriteString(" primary key")
- }
- if col.Unique {
- s.WriteString(" unique")
- }
- if col.isAutoIncr {
- s.WriteString(fmt.Sprintf(" %s", m.Dialect.AutoIncrStr()))
- }
-
- x++
- }
- }
- if len(table.keys) > 1 {
- s.WriteString(", primary key (")
- for x := range table.keys {
- if x > 0 {
- s.WriteString(", ")
- }
- s.WriteString(m.Dialect.QuoteField(table.keys[x].ColumnName))
- }
- s.WriteString(")")
- }
- if len(table.uniqueTogether) > 0 {
- for _, columns := range table.uniqueTogether {
- s.WriteString(", unique (")
- for i, column := range columns {
- if i > 0 {
- s.WriteString(", ")
- }
- s.WriteString(m.Dialect.QuoteField(column))
- }
- s.WriteString(")")
- }
- }
- s.WriteString(") ")
- s.WriteString(m.Dialect.CreateTableSuffix())
- s.WriteString(m.Dialect.QuerySuffix())
- _, err = m.Exec(s.String())
- if err != nil {
- break
- }
- }
- return err
-}
-
-// DropTable drops an individual table. Will throw an error
-// if the table does not exist.
-func (m *DbMap) DropTable(table interface{}) error {
- t := reflect.TypeOf(table)
- return m.dropTable(t, false)
-}
-
-// DropTable drops an individual table. Will NOT throw an error
-// if the table does not exist.
-func (m *DbMap) DropTableIfExists(table interface{}) error {
- t := reflect.TypeOf(table)
- return m.dropTable(t, true)
-}
-
-// DropTables iterates through TableMaps registered to this DbMap and
-// executes "drop table" statements against the database for each.
-func (m *DbMap) DropTables() error {
- return m.dropTables(false)
-}
-
-// DropTablesIfExists is the same as DropTables, but uses the "if exists" clause to
-// avoid errors for tables that do not exist.
-func (m *DbMap) DropTablesIfExists() error {
- return m.dropTables(true)
-}
-
-// Goes through all the registered tables, dropping them one by one.
-// If an error is encountered, then it is returned and the rest of
-// the tables are not dropped.
-func (m *DbMap) dropTables(addIfExists bool) (err error) {
- for _, table := range m.tables {
- err = m.dropTableImpl(table, addIfExists)
- if err != nil {
- return
- }
- }
- return err
-}
-
-// Implementation of dropping a single table.
-func (m *DbMap) dropTable(t reflect.Type, addIfExists bool) error {
- table := tableOrNil(m, t)
- if table == nil {
- return errors.New(fmt.Sprintf("table %s was not registered!", table.TableName))
- }
-
- return m.dropTableImpl(table, addIfExists)
-}
-
-func (m *DbMap) dropTableImpl(table *TableMap, ifExists bool) (err error) {
- tableDrop := "drop table"
- if ifExists {
- tableDrop = m.Dialect.IfTableExists(tableDrop, table.SchemaName, table.TableName)
- }
- _, err = m.Exec(fmt.Sprintf("%s %s;", tableDrop, m.Dialect.QuotedTableForQuery(table.SchemaName, table.TableName)))
- return err
-}
-
-// TruncateTables iterates through TableMaps registered to this DbMap and
-// executes "truncate table" statements against the database for each, or in the case of
-// sqlite, a "delete from" with no "where" clause, which uses the truncate optimization
-// (http://www.sqlite.org/lang_delete.html)
-func (m *DbMap) TruncateTables() error {
- var err error
- for i := range m.tables {
- table := m.tables[i]
- _, e := m.Exec(fmt.Sprintf("%s %s;", m.Dialect.TruncateClause(), m.Dialect.QuotedTableForQuery(table.SchemaName, table.TableName)))
- if e != nil {
- err = e
- }
- }
- return err
-}
-
-// Insert runs a SQL INSERT statement for each element in list. List
-// items must be pointers.
-//
-// Any interface whose TableMap has an auto-increment primary key will
-// have its last insert id bound to the PK field on the struct.
-//
-// The hook functions PreInsert() and/or PostInsert() will be executed
-// before/after the INSERT statement if the interface defines them.
-//
-// Panics if any interface in the list has not been registered with AddTable
-func (m *DbMap) Insert(list ...interface{}) error {
- return insert(m, m, list...)
-}
-
-// Update runs a SQL UPDATE statement for each element in list. List
-// items must be pointers.
-//
-// The hook functions PreUpdate() and/or PostUpdate() will be executed
-// before/after the UPDATE statement if the interface defines them.
-//
-// Returns the number of rows updated.
-//
-// Returns an error if SetKeys has not been called on the TableMap
-// Panics if any interface in the list has not been registered with AddTable
-func (m *DbMap) Update(list ...interface{}) (int64, error) {
- return update(m, m, list...)
-}
-
-// Delete runs a SQL DELETE statement for each element in list. List
-// items must be pointers.
-//
-// The hook functions PreDelete() and/or PostDelete() will be executed
-// before/after the DELETE statement if the interface defines them.
-//
-// Returns the number of rows deleted.
-//
-// Returns an error if SetKeys has not been called on the TableMap
-// Panics if any interface in the list has not been registered with AddTable
-func (m *DbMap) Delete(list ...interface{}) (int64, error) {
- return delete(m, m, list...)
-}
-
-// Get runs a SQL SELECT to fetch a single row from the table based on the
-// primary key(s)
-//
-// i should be an empty value for the struct to load. keys should be
-// the primary key value(s) for the row to load. If multiple keys
-// exist on the table, the order should match the column order
-// specified in SetKeys() when the table mapping was defined.
-//
-// The hook function PostGet() will be executed after the SELECT
-// statement if the interface defines them.
-//
-// Returns a pointer to a struct that matches or nil if no row is found.
-//
-// Returns an error if SetKeys has not been called on the TableMap
-// Panics if any interface in the list has not been registered with AddTable
-func (m *DbMap) Get(i interface{}, keys ...interface{}) (interface{}, error) {
- return get(m, m, i, keys...)
-}
-
-// Select runs an arbitrary SQL query, binding the columns in the result
-// to fields on the struct specified by i. args represent the bind
-// parameters for the SQL statement.
-//
-// Column names on the SELECT statement should be aliased to the field names
-// on the struct i. Returns an error if one or more columns in the result
-// do not match. It is OK if fields on i are not part of the SQL
-// statement.
-//
-// The hook function PostGet() will be executed after the SELECT
-// statement if the interface defines them.
-//
-// Values are returned in one of two ways:
-// 1. If i is a struct or a pointer to a struct, returns a slice of pointers to
-// matching rows of type i.
-// 2. If i is a pointer to a slice, the results will be appended to that slice
-// and nil returned.
-//
-// i does NOT need to be registered with AddTable()
-func (m *DbMap) Select(i interface{}, query string, args ...interface{}) ([]interface{}, error) {
- return hookedselect(m, m, i, query, args...)
-}
-
-// Exec runs an arbitrary SQL statement. args represent the bind parameters.
-// This is equivalent to running: Exec() using database/sql
-func (m *DbMap) Exec(query string, args ...interface{}) (sql.Result, error) {
- if m.logger != nil {
- now := time.Now()
- defer m.trace(now, query, args...)
- }
- return exec(m, query, args...)
-}
-
-// SelectInt is a convenience wrapper around the gorp.SelectInt function
-func (m *DbMap) SelectInt(query string, args ...interface{}) (int64, error) {
- return SelectInt(m, query, args...)
-}
-
-// SelectNullInt is a convenience wrapper around the gorp.SelectNullInt function
-func (m *DbMap) SelectNullInt(query string, args ...interface{}) (sql.NullInt64, error) {
- return SelectNullInt(m, query, args...)
-}
-
-// SelectFloat is a convenience wrapper around the gorp.SelectFlot function
-func (m *DbMap) SelectFloat(query string, args ...interface{}) (float64, error) {
- return SelectFloat(m, query, args...)
-}
-
-// SelectNullFloat is a convenience wrapper around the gorp.SelectNullFloat function
-func (m *DbMap) SelectNullFloat(query string, args ...interface{}) (sql.NullFloat64, error) {
- return SelectNullFloat(m, query, args...)
-}
-
-// SelectStr is a convenience wrapper around the gorp.SelectStr function
-func (m *DbMap) SelectStr(query string, args ...interface{}) (string, error) {
- return SelectStr(m, query, args...)
-}
-
-// SelectNullStr is a convenience wrapper around the gorp.SelectNullStr function
-func (m *DbMap) SelectNullStr(query string, args ...interface{}) (sql.NullString, error) {
- return SelectNullStr(m, query, args...)
-}
-
-// SelectOne is a convenience wrapper around the gorp.SelectOne function
-func (m *DbMap) SelectOne(holder interface{}, query string, args ...interface{}) error {
- return SelectOne(m, m, holder, query, args...)
-}
-
-// Begin starts a gorp Transaction
-func (m *DbMap) Begin() (*Transaction, error) {
- if m.logger != nil {
- now := time.Now()
- defer m.trace(now, "begin;")
- }
- tx, err := m.Db.Begin()
- if err != nil {
- return nil, err
- }
- return &Transaction{m, tx, false}, nil
-}
-
-// TableFor returns the *TableMap corresponding to the given Go Type
-// If no table is mapped to that type an error is returned.
-// If checkPK is true and the mapped table has no registered PKs, an error is returned.
-func (m *DbMap) TableFor(t reflect.Type, checkPK bool) (*TableMap, error) {
- table := tableOrNil(m, t)
- if table == nil {
- return nil, errors.New(fmt.Sprintf("No table found for type: %v", t.Name()))
- }
-
- if checkPK && len(table.keys) < 1 {
- e := fmt.Sprintf("gorp: No keys defined for table: %s",
- table.TableName)
- return nil, errors.New(e)
- }
-
- return table, nil
-}
-
-// Prepare creates a prepared statement for later queries or executions.
-// Multiple queries or executions may be run concurrently from the returned statement.
-// This is equivalent to running: Prepare() using database/sql
-func (m *DbMap) Prepare(query string) (*sql.Stmt, error) {
- if m.logger != nil {
- now := time.Now()
- defer m.trace(now, query, nil)
- }
- return m.Db.Prepare(query)
-}
-
-func tableOrNil(m *DbMap, t reflect.Type) *TableMap {
- for i := range m.tables {
- table := m.tables[i]
- if table.gotype == t {
- return table
- }
- }
- return nil
-}
-
-func (m *DbMap) tableForPointer(ptr interface{}, checkPK bool) (*TableMap, reflect.Value, error) {
- ptrv := reflect.ValueOf(ptr)
- if ptrv.Kind() != reflect.Ptr {
- e := fmt.Sprintf("gorp: passed non-pointer: %v (kind=%v)", ptr,
- ptrv.Kind())
- return nil, reflect.Value{}, errors.New(e)
- }
- elem := ptrv.Elem()
- etype := reflect.TypeOf(elem.Interface())
- t, err := m.TableFor(etype, checkPK)
- if err != nil {
- return nil, reflect.Value{}, err
- }
-
- return t, elem, nil
-}
-
-func (m *DbMap) queryRow(query string, args ...interface{}) *sql.Row {
- if m.logger != nil {
- now := time.Now()
- defer m.trace(now, query, args...)
- }
- return m.Db.QueryRow(query, args...)
-}
-
-func (m *DbMap) query(query string, args ...interface{}) (*sql.Rows, error) {
- if m.logger != nil {
- now := time.Now()
- defer m.trace(now, query, args...)
- }
- return m.Db.Query(query, args...)
-}
-
-func (m *DbMap) trace(started time.Time, query string, args ...interface{}) {
- if m.logger != nil {
- var margs = argsString(args...)
- m.logger.Printf("%s%s [%s] (%v)", m.logPrefix, query, margs, (time.Now().Sub(started)))
- }
-}
-
func argsString(args ...interface{}) string {
var margs string
for i, a := range args {
@@ -1222,505 +142,6 @@ func argsString(args ...interface{}) string {
return margs
}
-///////////////
-
-// Insert has the same behavior as DbMap.Insert(), but runs in a transaction.
-func (t *Transaction) Insert(list ...interface{}) error {
- return insert(t.dbmap, t, list...)
-}
-
-// Update had the same behavior as DbMap.Update(), but runs in a transaction.
-func (t *Transaction) Update(list ...interface{}) (int64, error) {
- return update(t.dbmap, t, list...)
-}
-
-// Delete has the same behavior as DbMap.Delete(), but runs in a transaction.
-func (t *Transaction) Delete(list ...interface{}) (int64, error) {
- return delete(t.dbmap, t, list...)
-}
-
-// Get has the same behavior as DbMap.Get(), but runs in a transaction.
-func (t *Transaction) Get(i interface{}, keys ...interface{}) (interface{}, error) {
- return get(t.dbmap, t, i, keys...)
-}
-
-// Select has the same behavior as DbMap.Select(), but runs in a transaction.
-func (t *Transaction) Select(i interface{}, query string, args ...interface{}) ([]interface{}, error) {
- return hookedselect(t.dbmap, t, i, query, args...)
-}
-
-// Exec has the same behavior as DbMap.Exec(), but runs in a transaction.
-func (t *Transaction) Exec(query string, args ...interface{}) (sql.Result, error) {
- if t.dbmap.logger != nil {
- now := time.Now()
- defer t.dbmap.trace(now, query, args...)
- }
- return exec(t, query, args...)
-}
-
-// SelectInt is a convenience wrapper around the gorp.SelectInt function.
-func (t *Transaction) SelectInt(query string, args ...interface{}) (int64, error) {
- return SelectInt(t, query, args...)
-}
-
-// SelectNullInt is a convenience wrapper around the gorp.SelectNullInt function.
-func (t *Transaction) SelectNullInt(query string, args ...interface{}) (sql.NullInt64, error) {
- return SelectNullInt(t, query, args...)
-}
-
-// SelectFloat is a convenience wrapper around the gorp.SelectFloat function.
-func (t *Transaction) SelectFloat(query string, args ...interface{}) (float64, error) {
- return SelectFloat(t, query, args...)
-}
-
-// SelectNullFloat is a convenience wrapper around the gorp.SelectNullFloat function.
-func (t *Transaction) SelectNullFloat(query string, args ...interface{}) (sql.NullFloat64, error) {
- return SelectNullFloat(t, query, args...)
-}
-
-// SelectStr is a convenience wrapper around the gorp.SelectStr function.
-func (t *Transaction) SelectStr(query string, args ...interface{}) (string, error) {
- return SelectStr(t, query, args...)
-}
-
-// SelectNullStr is a convenience wrapper around the gorp.SelectNullStr function.
-func (t *Transaction) SelectNullStr(query string, args ...interface{}) (sql.NullString, error) {
- return SelectNullStr(t, query, args...)
-}
-
-// SelectOne is a convenience wrapper around the gorp.SelectOne function.
-func (t *Transaction) SelectOne(holder interface{}, query string, args ...interface{}) error {
- return SelectOne(t.dbmap, t, holder, query, args...)
-}
-
-// Commit commits the underlying database transaction.
-func (t *Transaction) Commit() error {
- if !t.closed {
- t.closed = true
- if t.dbmap.logger != nil {
- now := time.Now()
- defer t.dbmap.trace(now, "commit;")
- }
- return t.tx.Commit()
- }
-
- return sql.ErrTxDone
-}
-
-// Rollback rolls back the underlying database transaction.
-func (t *Transaction) Rollback() error {
- if !t.closed {
- t.closed = true
- if t.dbmap.logger != nil {
- now := time.Now()
- defer t.dbmap.trace(now, "rollback;")
- }
- return t.tx.Rollback()
- }
-
- return sql.ErrTxDone
-}
-
-// Savepoint creates a savepoint with the given name. The name is interpolated
-// directly into the SQL SAVEPOINT statement, so you must sanitize it if it is
-// derived from user input.
-func (t *Transaction) Savepoint(name string) error {
- query := "savepoint " + t.dbmap.Dialect.QuoteField(name)
- if t.dbmap.logger != nil {
- now := time.Now()
- defer t.dbmap.trace(now, query, nil)
- }
- _, err := t.tx.Exec(query)
- return err
-}
-
-// RollbackToSavepoint rolls back to the savepoint with the given name. The
-// name is interpolated directly into the SQL SAVEPOINT statement, so you must
-// sanitize it if it is derived from user input.
-func (t *Transaction) RollbackToSavepoint(savepoint string) error {
- query := "rollback to savepoint " + t.dbmap.Dialect.QuoteField(savepoint)
- if t.dbmap.logger != nil {
- now := time.Now()
- defer t.dbmap.trace(now, query, nil)
- }
- _, err := t.tx.Exec(query)
- return err
-}
-
-// ReleaseSavepint releases the savepoint with the given name. The name is
-// interpolated directly into the SQL SAVEPOINT statement, so you must sanitize
-// it if it is derived from user input.
-func (t *Transaction) ReleaseSavepoint(savepoint string) error {
- query := "release savepoint " + t.dbmap.Dialect.QuoteField(savepoint)
- if t.dbmap.logger != nil {
- now := time.Now()
- defer t.dbmap.trace(now, query, nil)
- }
- _, err := t.tx.Exec(query)
- return err
-}
-
-// Prepare has the same behavior as DbMap.Prepare(), but runs in a transaction.
-func (t *Transaction) Prepare(query string) (*sql.Stmt, error) {
- if t.dbmap.logger != nil {
- now := time.Now()
- defer t.dbmap.trace(now, query, nil)
- }
- return t.tx.Prepare(query)
-}
-
-func (t *Transaction) queryRow(query string, args ...interface{}) *sql.Row {
- if t.dbmap.logger != nil {
- now := time.Now()
- defer t.dbmap.trace(now, query, args...)
- }
- return t.tx.QueryRow(query, args...)
-}
-
-func (t *Transaction) query(query string, args ...interface{}) (*sql.Rows, error) {
- if t.dbmap.logger != nil {
- now := time.Now()
- defer t.dbmap.trace(now, query, args...)
- }
- return t.tx.Query(query, args...)
-}
-
-///////////////
-
-// SelectInt executes the given query, which should be a SELECT statement for a single
-// integer column, and returns the value of the first row returned. If no rows are
-// found, zero is returned.
-func SelectInt(e SqlExecutor, query string, args ...interface{}) (int64, error) {
- var h int64
- err := selectVal(e, &h, query, args...)
- if err != nil && err != sql.ErrNoRows {
- return 0, err
- }
- return h, nil
-}
-
-// SelectNullInt executes the given query, which should be a SELECT statement for a single
-// integer column, and returns the value of the first row returned. If no rows are
-// found, the empty sql.NullInt64 value is returned.
-func SelectNullInt(e SqlExecutor, query string, args ...interface{}) (sql.NullInt64, error) {
- var h sql.NullInt64
- err := selectVal(e, &h, query, args...)
- if err != nil && err != sql.ErrNoRows {
- return h, err
- }
- return h, nil
-}
-
-// SelectFloat executes the given query, which should be a SELECT statement for a single
-// float column, and returns the value of the first row returned. If no rows are
-// found, zero is returned.
-func SelectFloat(e SqlExecutor, query string, args ...interface{}) (float64, error) {
- var h float64
- err := selectVal(e, &h, query, args...)
- if err != nil && err != sql.ErrNoRows {
- return 0, err
- }
- return h, nil
-}
-
-// SelectNullFloat executes the given query, which should be a SELECT statement for a single
-// float column, and returns the value of the first row returned. If no rows are
-// found, the empty sql.NullInt64 value is returned.
-func SelectNullFloat(e SqlExecutor, query string, args ...interface{}) (sql.NullFloat64, error) {
- var h sql.NullFloat64
- err := selectVal(e, &h, query, args...)
- if err != nil && err != sql.ErrNoRows {
- return h, err
- }
- return h, nil
-}
-
-// SelectStr executes the given query, which should be a SELECT statement for a single
-// char/varchar column, and returns the value of the first row returned. If no rows are
-// found, an empty string is returned.
-func SelectStr(e SqlExecutor, query string, args ...interface{}) (string, error) {
- var h string
- err := selectVal(e, &h, query, args...)
- if err != nil && err != sql.ErrNoRows {
- return "", err
- }
- return h, nil
-}
-
-// SelectNullStr executes the given query, which should be a SELECT
-// statement for a single char/varchar column, and returns the value
-// of the first row returned. If no rows are found, the empty
-// sql.NullString is returned.
-func SelectNullStr(e SqlExecutor, query string, args ...interface{}) (sql.NullString, error) {
- var h sql.NullString
- err := selectVal(e, &h, query, args...)
- if err != nil && err != sql.ErrNoRows {
- return h, err
- }
- return h, nil
-}
-
-// SelectOne executes the given query (which should be a SELECT statement)
-// and binds the result to holder, which must be a pointer.
-//
-// If no row is found, an error (sql.ErrNoRows specifically) will be returned
-//
-// If more than one row is found, an error will be returned.
-//
-func SelectOne(m *DbMap, e SqlExecutor, holder interface{}, query string, args ...interface{}) error {
- t := reflect.TypeOf(holder)
- if t.Kind() == reflect.Ptr {
- t = t.Elem()
- } else {
- return fmt.Errorf("gorp: SelectOne holder must be a pointer, but got: %t", holder)
- }
-
- // Handle pointer to pointer
- isptr := false
- if t.Kind() == reflect.Ptr {
- isptr = true
- t = t.Elem()
- }
-
- if t.Kind() == reflect.Struct {
- var nonFatalErr error
-
- list, err := hookedselect(m, e, holder, query, args...)
- if err != nil {
- if !NonFatalError(err) {
- return err
- }
- nonFatalErr = err
- }
-
- dest := reflect.ValueOf(holder)
- if isptr {
- dest = dest.Elem()
- }
-
- if list != nil && len(list) > 0 {
- // check for multiple rows
- if len(list) > 1 {
- return fmt.Errorf("gorp: multiple rows returned for: %s - %v", query, args)
- }
-
- // Initialize if nil
- if dest.IsNil() {
- dest.Set(reflect.New(t))
- }
-
- // only one row found
- src := reflect.ValueOf(list[0])
- dest.Elem().Set(src.Elem())
- } else {
- // No rows found, return a proper error.
- return sql.ErrNoRows
- }
-
- return nonFatalErr
- }
-
- return selectVal(e, holder, query, args...)
-}
-
-func selectVal(e SqlExecutor, holder interface{}, query string, args ...interface{}) error {
- if len(args) == 1 {
- switch m := e.(type) {
- case *DbMap:
- query, args = maybeExpandNamedQuery(m, query, args)
- case *Transaction:
- query, args = maybeExpandNamedQuery(m.dbmap, query, args)
- }
- }
- rows, err := e.query(query, args...)
- if err != nil {
- return err
- }
- defer rows.Close()
-
- if !rows.Next() {
- return sql.ErrNoRows
- }
-
- return rows.Scan(holder)
-}
-
-///////////////
-
-func hookedselect(m *DbMap, exec SqlExecutor, i interface{}, query string,
- args ...interface{}) ([]interface{}, error) {
-
- var nonFatalErr error
-
- list, err := rawselect(m, exec, i, query, args...)
- if err != nil {
- if !NonFatalError(err) {
- return nil, err
- }
- nonFatalErr = err
- }
-
- // Determine where the results are: written to i, or returned in list
- if t, _ := toSliceType(i); t == nil {
- for _, v := range list {
- if v, ok := v.(HasPostGet); ok {
- err := v.PostGet(exec)
- if err != nil {
- return nil, err
- }
- }
- }
- } else {
- resultsValue := reflect.Indirect(reflect.ValueOf(i))
- for i := 0; i < resultsValue.Len(); i++ {
- if v, ok := resultsValue.Index(i).Interface().(HasPostGet); ok {
- err := v.PostGet(exec)
- if err != nil {
- return nil, err
- }
- }
- }
- }
- return list, nonFatalErr
-}
-
-func rawselect(m *DbMap, exec SqlExecutor, i interface{}, query string,
- args ...interface{}) ([]interface{}, error) {
- var (
- appendToSlice = false // Write results to i directly?
- intoStruct = true // Selecting into a struct?
- pointerElements = true // Are the slice elements pointers (vs values)?
- )
-
- var nonFatalErr error
-
- // get type for i, verifying it's a supported destination
- t, err := toType(i)
- if err != nil {
- var err2 error
- if t, err2 = toSliceType(i); t == nil {
- if err2 != nil {
- return nil, err2
- }
- return nil, err
- }
- pointerElements = t.Kind() == reflect.Ptr
- if pointerElements {
- t = t.Elem()
- }
- appendToSlice = true
- intoStruct = t.Kind() == reflect.Struct
- }
-
- // If the caller supplied a single struct/map argument, assume a "named
- // parameter" query. Extract the named arguments from the struct/map, create
- // the flat arg slice, and rewrite the query to use the dialect's placeholder.
- if len(args) == 1 {
- query, args = maybeExpandNamedQuery(m, query, args)
- }
-
- // Run the query
- rows, err := exec.query(query, args...)
- if err != nil {
- return nil, err
- }
- defer rows.Close()
-
- // Fetch the column names as returned from db
- cols, err := rows.Columns()
- if err != nil {
- return nil, err
- }
-
- if !intoStruct && len(cols) > 1 {
- return nil, fmt.Errorf("gorp: select into non-struct slice requires 1 column, got %d", len(cols))
- }
-
- var colToFieldIndex [][]int
- if intoStruct {
- if colToFieldIndex, err = columnToFieldIndex(m, t, cols); err != nil {
- if !NonFatalError(err) {
- return nil, err
- }
- nonFatalErr = err
- }
- }
-
- conv := m.TypeConverter
-
- // Add results to one of these two slices.
- var (
- list = make([]interface{}, 0)
- sliceValue = reflect.Indirect(reflect.ValueOf(i))
- )
-
- for {
- if !rows.Next() {
- // if error occured return rawselect
- if rows.Err() != nil {
- return nil, rows.Err()
- }
- // time to exit from outer "for" loop
- break
- }
- v := reflect.New(t)
- dest := make([]interface{}, len(cols))
-
- custScan := make([]CustomScanner, 0)
-
- for x := range cols {
- f := v.Elem()
- if intoStruct {
- index := colToFieldIndex[x]
- if index == nil {
- // this field is not present in the struct, so create a dummy
- // value for rows.Scan to scan into
- var dummy sql.RawBytes
- dest[x] = &dummy
- continue
- }
- f = f.FieldByIndex(index)
- }
- target := f.Addr().Interface()
- if conv != nil {
- scanner, ok := conv.FromDb(target)
- if ok {
- target = scanner.Holder
- custScan = append(custScan, scanner)
- }
- }
- dest[x] = target
- }
-
- err = rows.Scan(dest...)
- if err != nil {
- return nil, err
- }
-
- for _, c := range custScan {
- err = c.Bind()
- if err != nil {
- return nil, err
- }
- }
-
- if appendToSlice {
- if !pointerElements {
- v = v.Elem()
- }
- sliceValue.Set(reflect.Append(sliceValue, v))
- } else {
- list = append(list, v.Interface())
- }
- }
-
- if appendToSlice && sliceValue.IsNil() {
- sliceValue.Set(reflect.MakeSlice(sliceValue.Type(), 0, 0))
- }
-
- return list, nonFatalErr
-}
-
// Calls the Exec function on the executor, but attempts to expand any eligible named
// query arguments first.
func exec(e SqlExecutor, query string, args ...interface{}) (sql.Result, error) {
@@ -1818,7 +239,8 @@ func columnToFieldIndex(m *DbMap, t reflect.Type, cols []string) ([][]int, error
colName := strings.ToLower(cols[x])
field, found := t.FieldByNameFunc(func(fieldName string) bool {
field, _ := t.FieldByName(fieldName)
- fieldName = field.Tag.Get("db")
+ cArguments := strings.Split(field.Tag.Get("db"), ",")
+ fieldName = cArguments[0]
if fieldName == "-" {
return false
@@ -1881,7 +303,7 @@ func toSliceType(i interface{}) (reflect.Type, error) {
if t.Kind() != reflect.Ptr {
// If it's a slice, return a more helpful error message
if t.Kind() == reflect.Slice {
- return nil, fmt.Errorf("gorp: Cannot SELECT into a non-pointer slice: %v", t)
+ return nil, fmt.Errorf("gorp: cannot SELECT into a non-pointer slice: %v", t)
}
return nil, nil
}
@@ -1900,7 +322,7 @@ func toType(i interface{}) (reflect.Type, error) {
}
if t.Kind() != reflect.Struct {
- return nil, fmt.Errorf("gorp: Cannot SELECT into this type: %v", reflect.TypeOf(i))
+ return nil, fmt.Errorf("gorp: cannot SELECT into this type: %v", reflect.TypeOf(i))
}
return t, nil
}
@@ -2013,7 +435,7 @@ func delete(m *DbMap, exec SqlExecutor, list ...interface{}) (int64, error) {
return count, nil
}
-func update(m *DbMap, exec SqlExecutor, list ...interface{}) (int64, error) {
+func update(m *DbMap, exec SqlExecutor, colFilter ColumnFilter, list ...interface{}) (int64, error) {
count := int64(0)
for _, ptr := range list {
table, elem, err := m.tableForPointer(ptr, true)
@@ -2029,7 +451,7 @@ func update(m *DbMap, exec SqlExecutor, list ...interface{}) (int64, error) {
}
}
- bi, err := table.bindUpdate(elem)
+ bi, err := table.bindUpdate(elem, colFilter)
if err != nil {
return -1, err
}
@@ -2099,15 +521,24 @@ func insert(m *DbMap, exec SqlExecutor, list ...interface{}) error {
} else if (k == reflect.Uint) || (k == reflect.Uint16) || (k == reflect.Uint32) || (k == reflect.Uint64) {
f.SetUint(uint64(id))
} else {
- return fmt.Errorf("gorp: Cannot set autoincrement value on non-Int field. SQL=%s autoIncrIdx=%d autoIncrFieldName=%s", bi.query, bi.autoIncrIdx, bi.autoIncrFieldName)
+ return fmt.Errorf("gorp: cannot set autoincrement value on non-Int field. SQL=%s autoIncrIdx=%d autoIncrFieldName=%s", bi.query, bi.autoIncrIdx, bi.autoIncrFieldName)
}
case TargetedAutoIncrInserter:
err := inserter.InsertAutoIncrToTarget(exec, bi.query, f.Addr().Interface(), bi.args...)
if err != nil {
return err
}
+ case TargetQueryInserter:
+ var idQuery = table.ColMap(bi.autoIncrFieldName).GeneratedIdQuery
+ if idQuery == "" {
+ return fmt.Errorf("gorp: cannot set %s value if its ColumnMap.GeneratedIdQuery is empty", bi.autoIncrFieldName)
+ }
+ err := inserter.InsertQueryToTarget(exec, bi.query, idQuery, f.Addr().Interface(), bi.args...)
+ if err != nil {
+ return err
+ }
default:
- return fmt.Errorf("gorp: Cannot use autoincrement fields on dialects that do not implement an autoincrementing interface")
+ return fmt.Errorf("gorp: cannot use autoincrement fields on dialects that do not implement an autoincrementing interface")
}
} else {
_, err := exec.Exec(bi.query, bi.args...)
@@ -2125,54 +556,3 @@ func insert(m *DbMap, exec SqlExecutor, list ...interface{}) error {
}
return nil
}
-
-func lockError(m *DbMap, exec SqlExecutor, tableName string,
- existingVer int64, elem reflect.Value,
- keys ...interface{}) (int64, error) {
-
- existing, err := get(m, exec, elem.Interface(), keys...)
- if err != nil {
- return -1, err
- }
-
- ole := OptimisticLockError{tableName, keys, true, existingVer}
- if existing == nil {
- ole.RowExists = false
- }
- return -1, ole
-}
-
-// PostUpdate() will be executed after the GET statement.
-type HasPostGet interface {
- PostGet(SqlExecutor) error
-}
-
-// PostUpdate() will be executed after the DELETE statement
-type HasPostDelete interface {
- PostDelete(SqlExecutor) error
-}
-
-// PostUpdate() will be executed after the UPDATE statement
-type HasPostUpdate interface {
- PostUpdate(SqlExecutor) error
-}
-
-// PostInsert() will be executed after the INSERT statement
-type HasPostInsert interface {
- PostInsert(SqlExecutor) error
-}
-
-// PreDelete() will be executed before the DELETE statement.
-type HasPreDelete interface {
- PreDelete(SqlExecutor) error
-}
-
-// PreUpdate() will be executed before UPDATE statement.
-type HasPreUpdate interface {
- PreUpdate(SqlExecutor) error
-}
-
-// PreInsert() will be executed before INSERT statement.
-type HasPreInsert interface {
- PreInsert(SqlExecutor) error
-}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/gorp_test.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/gorp_test.go
index 6e5618c1f..f6739e82d 100644
--- a/Godeps/_workspace/src/github.com/go-gorp/gorp/gorp_test.go
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/gorp_test.go
@@ -1,31 +1,56 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
package gorp
import (
"bytes"
"database/sql"
+ "database/sql/driver"
"encoding/json"
"errors"
+ "flag"
"fmt"
"log"
"math/rand"
"os"
"reflect"
+ "strconv"
"strings"
"testing"
"time"
- _ "github.com/go-sql-driver/mysql"
- _ "github.com/lib/pq"
+ _ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/go-sql-driver/mysql"
+ _ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/lib/pq"
_ "github.com/mattn/go-sqlite3"
_ "github.com/ziutek/mymysql/godrv"
)
-// verify interface compliance
-var _ Dialect = SqliteDialect{}
-var _ Dialect = PostgresDialect{}
-var _ Dialect = MySQLDialect{}
-var _ Dialect = SqlServerDialect{}
-var _ Dialect = OracleDialect{}
+var (
+ // verify interface compliance
+ _ = []Dialect{
+ SqliteDialect{},
+ PostgresDialect{},
+ MySQLDialect{},
+ SqlServerDialect{},
+ OracleDialect{},
+ }
+
+ debug bool
+)
+
+func init() {
+ flag.BoolVar(&debug, "trace", true, "Turn on or off database tracing (DbMap.TraceOn)")
+ flag.Parse()
+}
type testable interface {
GetId() int64
@@ -41,6 +66,15 @@ type Invoice struct {
IsPaid bool
}
+type InvoiceWithValuer struct {
+ Id int64
+ Created int64
+ Updated int64
+ Memo string
+ Person PersonValuerScanner `db:"personid"`
+ IsPaid bool
+}
+
func (me *Invoice) GetId() int64 { return me.Id }
func (me *Invoice) Rand() {
me.Memo = fmt.Sprintf("random %d", rand.Int63())
@@ -49,7 +83,7 @@ func (me *Invoice) Rand() {
}
type InvoiceTag struct {
- Id int64 `db:"myid"`
+ Id int64 `db:"myid, primarykey, autoincrement"`
Created int64 `db:"myCreated"`
Updated int64 `db:"date_updated"`
Memo string
@@ -90,6 +124,34 @@ type Person struct {
Version int64
}
+type PersonValuerScanner struct {
+ Person
+}
+
+func (p PersonValuerScanner) Value() (driver.Value, error) {
+ return p.Id, nil
+}
+
+// FIXME: this Scan is never actually used in the tests?
+// Also: if the comments below on the mysql driver are true, then that should be fixed by the dialect when scanning values into structs.
+func (p *PersonValuerScanner) Scan(value interface{}) (err error) {
+ switch src := value.(type) {
+ case []byte:
+ // The mysql driver seems to return a []byte, even though the
+ // type in the database is bigint. Note that this case is
+ // *only* used by the mysql driver.
+ p.Id, err = strconv.ParseInt(string(src), 10, 64)
+ case int64:
+ // postgres, gomysql, and sqlite drivers all return an int64,
+ // as you'd expect.
+ p.Id = src
+ default:
+ typ := reflect.TypeOf(value)
+ return fmt.Errorf("Expected person value to be convertible to int64, got %v (type %s)", value, typ)
+ }
+ return
+}
+
type FNameOnly struct {
FName string
}
@@ -160,6 +222,17 @@ type WithEmbeddedStruct struct {
Names
}
+type WithEmbeddedStructConflictingEmbeddedMemberNames struct {
+ Id int64
+ Names
+ NamesConflict
+}
+
+type WithEmbeddedStructSameMemberName struct {
+ Id int64
+ SameName
+}
+
type WithEmbeddedStructBeforeAutoincrField struct {
Names
Id int64
@@ -175,6 +248,15 @@ type Names struct {
LastName string
}
+type NamesConflict struct {
+ FirstName string
+ Surname string
+}
+
+type SameName struct {
+ SameName string
+}
+
type UniqueColumns struct {
FirstName string
LastName string
@@ -353,7 +435,6 @@ func TestTruncateTables(t *testing.T) {
func TestCustomDateType(t *testing.T) {
dbmap := newDbMap()
dbmap.TypeConverter = testTypeConverter{}
- dbmap.TraceOn("", log.New(os.Stdout, "gorptest: ", log.Lmicroseconds))
dbmap.AddTable(WithCustomDate{}).SetKeys(true, "Id")
err := dbmap.CreateTables()
if err != nil {
@@ -389,7 +470,6 @@ func TestCustomDateType(t *testing.T) {
func TestUIntPrimaryKey(t *testing.T) {
dbmap := newDbMap()
- dbmap.TraceOn("", log.New(os.Stdout, "gorptest: ", log.Lmicroseconds))
dbmap.AddTable(PersonUInt64{}).SetKeys(true, "Id")
dbmap.AddTable(PersonUInt32{}).SetKeys(true, "Id")
dbmap.AddTable(PersonUInt16{}).SetKeys(true, "Id")
@@ -419,7 +499,6 @@ func TestUIntPrimaryKey(t *testing.T) {
func TestSetUniqueTogether(t *testing.T) {
dbmap := newDbMap()
- dbmap.TraceOn("", log.New(os.Stdout, "gorptest: ", log.Lmicroseconds))
dbmap.AddTable(UniqueColumns{}).SetUniqueTogether("FirstName", "LastName").SetUniqueTogether("City", "ZipCode")
err := dbmap.CreateTablesIfNotExists()
if err != nil {
@@ -468,7 +547,6 @@ func TestSetUniqueTogether(t *testing.T) {
func TestPersistentUser(t *testing.T) {
dbmap := newDbMap()
dbmap.Exec("drop table if exists PersistentUser")
- dbmap.TraceOn("", log.New(os.Stdout, "gorptest: ", log.Lmicroseconds))
table := dbmap.AddTable(PersistentUser{}).SetKeys(false, "Key")
table.ColMap("Key").Rename("mykey")
err := dbmap.CreateTablesIfNotExists()
@@ -581,7 +659,6 @@ func TestPersistentUser(t *testing.T) {
func TestNamedQueryMap(t *testing.T) {
dbmap := newDbMap()
dbmap.Exec("drop table if exists PersistentUser")
- dbmap.TraceOn("", log.New(os.Stdout, "gorptest: ", log.Lmicroseconds))
table := dbmap.AddTable(PersistentUser{}).SetKeys(false, "Key")
table.ColMap("Key").Rename("mykey")
err := dbmap.CreateTablesIfNotExists()
@@ -679,7 +756,6 @@ select * from PersistentUser
func TestNamedQueryStruct(t *testing.T) {
dbmap := newDbMap()
dbmap.Exec("drop table if exists PersistentUser")
- dbmap.TraceOn("", log.New(os.Stdout, "gorptest: ", log.Lmicroseconds))
table := dbmap.AddTable(PersistentUser{}).SetKeys(false, "Key")
table.ColMap("Key").Rename("mykey")
err := dbmap.CreateTablesIfNotExists()
@@ -859,9 +935,48 @@ func TestNullValues(t *testing.T) {
}
}
+func TestScannerValuer(t *testing.T) {
+ dbmap := newDbMap()
+ dbmap.AddTableWithName(PersonValuerScanner{}, "person_test").SetKeys(true, "Id")
+ dbmap.AddTableWithName(InvoiceWithValuer{}, "invoice_test").SetKeys(true, "Id")
+ err := dbmap.CreateTables()
+ if err != nil {
+ panic(err)
+ }
+ defer dropAndClose(dbmap)
+
+ pv := PersonValuerScanner{}
+ pv.FName = "foo"
+ pv.LName = "bar"
+ err = dbmap.Insert(&pv)
+ if err != nil {
+ t.Errorf("Could not insert PersonValuerScanner using Person table: %v", err)
+ t.FailNow()
+ }
+
+ inv := InvoiceWithValuer{}
+ inv.Memo = "foo"
+ inv.Person = pv
+ err = dbmap.Insert(&inv)
+ if err != nil {
+ t.Errorf("Could not insert InvoiceWithValuer using Invoice table: %v", err)
+ t.FailNow()
+ }
+
+ res, err := dbmap.Get(InvoiceWithValuer{}, inv.Id)
+ if err != nil {
+ t.Errorf("Could not get InvoiceWithValuer: %v", err)
+ t.FailNow()
+ }
+ dbInv := res.(*InvoiceWithValuer)
+
+ if dbInv.Person.Id != pv.Id {
+ t.Errorf("InvoiceWithValuer got wrong person ID: %d (expected) != %d (actual)", pv.Id, dbInv.Person.Id)
+ }
+}
+
func TestColumnProps(t *testing.T) {
dbmap := newDbMap()
- dbmap.TraceOn("", log.New(os.Stdout, "gorptest: ", log.Lmicroseconds))
t1 := dbmap.AddTable(Invoice{}).SetKeys(true, "Id")
t1.ColMap("Created").Rename("date_created")
t1.ColMap("Updated").SetTransient(true)
@@ -1161,6 +1276,29 @@ func TestWithIgnoredColumn(t *testing.T) {
}
}
+func TestColumnFilter(t *testing.T) {
+ dbmap := initDbMap()
+ defer dropAndClose(dbmap)
+
+ inv1 := &Invoice{0, 100, 200, "a", 0, false}
+ _insert(dbmap, inv1)
+
+ inv1.Memo = "c"
+ inv1.IsPaid = true
+ _updateColumns(dbmap, func(col *ColumnMap) bool {
+ return col.ColumnName == "Memo"
+ }, inv1)
+
+ inv2 := &Invoice{}
+ inv2 = _get(dbmap, inv2, inv1.Id).(*Invoice)
+ if inv2.Memo != "c" {
+ t.Errorf("Expected column to be updated (%#v)", inv2)
+ }
+ if inv2.IsPaid {
+ t.Error("IsPaid shouldn't have been updated")
+ }
+}
+
func TestTypeConversionExample(t *testing.T) {
dbmap := initDbMap()
defer dropAndClose(dbmap)
@@ -1217,6 +1355,60 @@ func TestWithEmbeddedStruct(t *testing.T) {
}
}
+/*
+func TestWithEmbeddedStructConflictingEmbeddedMemberNames(t *testing.T) {
+ dbmap := initDbMap()
+ defer dropAndClose(dbmap)
+
+ es := &WithEmbeddedStructConflictingEmbeddedMemberNames{-1, Names{FirstName: "Alice", LastName: "Smith"}, NamesConflict{FirstName: "Andrew", Surname: "Wiggin"}}
+ _insert(dbmap, es)
+ expected := &WithEmbeddedStructConflictingEmbeddedMemberNames{-1, Names{FirstName: "Alice", LastName: "Smith"}, NamesConflict{FirstName: "Andrew", Surname: "Wiggin"}}
+ es2 := _get(dbmap, WithEmbeddedStructConflictingEmbeddedMemberNames{}, es.Id).(*WithEmbeddedStructConflictingEmbeddedMemberNames)
+ if !reflect.DeepEqual(expected, es2) {
+ t.Errorf("%v != %v", expected, es2)
+ }
+
+ es2.Names.FirstName = "Bob"
+ expected.Names.FirstName = "Bob"
+ _update(dbmap, es2)
+ es2 = _get(dbmap, WithEmbeddedStructConflictingEmbeddedMemberNames{}, es.Id).(*WithEmbeddedStructConflictingEmbeddedMemberNames)
+ if !reflect.DeepEqual(expected, es2) {
+ t.Errorf("%v != %v", expected, es2)
+ }
+
+ ess := _rawselect(dbmap, WithEmbeddedStructConflictingEmbeddedMemberNames{}, "select * from embedded_struct_conflict_name_test")
+ if !reflect.DeepEqual(es2, ess[0]) {
+ t.Errorf("%v != %v", es2, ess[0])
+ }
+}
+
+func TestWithEmbeddedStructSameMemberName(t *testing.T) {
+ dbmap := initDbMap()
+ defer dropAndClose(dbmap)
+
+ es := &WithEmbeddedStructSameMemberName{-1, SameName{SameName: "Alice"}}
+ _insert(dbmap, es)
+ expected := &WithEmbeddedStructSameMemberName{-1, SameName{SameName: "Alice"}}
+ es2 := _get(dbmap, WithEmbeddedStructSameMemberName{}, es.Id).(*WithEmbeddedStructSameMemberName)
+ if !reflect.DeepEqual(expected, es2) {
+ t.Errorf("%v != %v", expected, es2)
+ }
+
+ es2.SameName = SameName{"Bob"}
+ expected.SameName = SameName{"Bob"}
+ _update(dbmap, es2)
+ es2 = _get(dbmap, WithEmbeddedStructSameMemberName{}, es.Id).(*WithEmbeddedStructSameMemberName)
+ if !reflect.DeepEqual(expected, es2) {
+ t.Errorf("%v != %v", expected, es2)
+ }
+
+ ess := _rawselect(dbmap, WithEmbeddedStructSameMemberName{}, "select * from embedded_struct_same_member_name_test")
+ if !reflect.DeepEqual(es2, ess[0]) {
+ t.Errorf("%v != %v", es2, ess[0])
+ }
+}
+//*/
+
func TestWithEmbeddedStructBeforeAutoincr(t *testing.T) {
dbmap := initDbMap()
defer dropAndClose(dbmap)
@@ -1359,7 +1551,6 @@ func TestVersionMultipleRows(t *testing.T) {
func TestWithStringPk(t *testing.T) {
dbmap := newDbMap()
- dbmap.TraceOn("", log.New(os.Stdout, "gorptest: ", log.Lmicroseconds))
dbmap.AddTableWithName(WithStringPk{}, "string_pk_test").SetKeys(true, "Id")
_, err := dbmap.Exec("create table string_pk_test (Id varchar(255), Name varchar(255));")
if err != nil {
@@ -1491,7 +1682,6 @@ func testWithTime(t *testing.T) {
// See: https://github.com/go-gorp/gorp/issues/86
func testEmbeddedTime(t *testing.T) {
dbmap := newDbMap()
- dbmap.TraceOn("", log.New(os.Stdout, "gorptest: ", log.Lmicroseconds))
dbmap.AddTable(EmbeddedTime{}).SetKeys(false, "Id")
defer dropAndClose(dbmap)
err := dbmap.CreateTables()
@@ -1987,7 +2177,7 @@ func initDbMapBench() *DbMap {
func initDbMap() *DbMap {
dbmap := newDbMap()
dbmap.AddTableWithName(Invoice{}, "invoice_test").SetKeys(true, "Id")
- dbmap.AddTableWithName(InvoiceTag{}, "invoice_tag_test").SetKeys(true, "myid")
+ dbmap.AddTableWithName(InvoiceTag{}, "invoice_tag_test") //key is set via primarykey attribute
dbmap.AddTableWithName(AliasTransientField{}, "alias_trans_field_test").SetKeys(true, "id")
dbmap.AddTableWithName(OverriddenInvoice{}, "invoice_override_test").SetKeys(false, "Id")
dbmap.AddTableWithName(Person{}, "person_test").SetKeys(true, "Id").SetVersionCol("Version")
@@ -1995,6 +2185,8 @@ func initDbMap() *DbMap {
dbmap.AddTableWithName(IdCreated{}, "id_created_test").SetKeys(true, "Id")
dbmap.AddTableWithName(TypeConversionExample{}, "type_conv_test").SetKeys(true, "Id")
dbmap.AddTableWithName(WithEmbeddedStruct{}, "embedded_struct_test").SetKeys(true, "Id")
+ //dbmap.AddTableWithName(WithEmbeddedStructConflictingEmbeddedMemberNames{}, "embedded_struct_conflict_name_test").SetKeys(true, "Id")
+ //dbmap.AddTableWithName(WithEmbeddedStructSameMemberName{}, "embedded_struct_same_member_name_test").SetKeys(true, "Id")
dbmap.AddTableWithName(WithEmbeddedStructBeforeAutoincrField{}, "embedded_struct_before_autoincr_test").SetKeys(true, "Id")
dbmap.AddTableWithName(WithEmbeddedAutoincr{}, "embedded_autoincr_test").SetKeys(true, "Id")
dbmap.AddTableWithName(WithTime{}, "time_test").SetKeys(true, "Id")
@@ -2018,7 +2210,6 @@ func initDbMap() *DbMap {
func initDbMapNulls() *DbMap {
dbmap := newDbMap()
- dbmap.TraceOn("", log.New(os.Stdout, "gorptest: ", log.Lmicroseconds))
dbmap.AddTable(TableWithNull{}).SetKeys(false, "Id")
err := dbmap.CreateTables()
if err != nil {
@@ -2030,7 +2221,9 @@ func initDbMapNulls() *DbMap {
func newDbMap() *DbMap {
dialect, driver := dialectAndDriver()
dbmap := &DbMap{Db: connect(driver), Dialect: dialect}
- dbmap.TraceOn("", log.New(os.Stdout, "gorptest: ", log.Lmicroseconds))
+ if debug {
+ dbmap.TraceOn("", log.New(os.Stdout, "gorptest: ", log.Lmicroseconds))
+ }
return dbmap
}
@@ -2081,6 +2274,14 @@ func _update(dbmap *DbMap, list ...interface{}) int64 {
return count
}
+func _updateColumns(dbmap *DbMap, filter ColumnFilter, list ...interface{}) int64 {
+ count, err := dbmap.UpdateColumns(filter, list...)
+ if err != nil {
+ panic(err)
+ }
+ return count
+}
+
func _del(dbmap *DbMap, list ...interface{}) int64 {
count, err := dbmap.Delete(list...)
if err != nil {
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/hooks.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/hooks.go
new file mode 100644
index 000000000..192b51f00
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/hooks.go
@@ -0,0 +1,49 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+//++ TODO v2-phase3: HasPostGet => PostGetter, HasPostDelete => PostDeleter, etc.
+
+// PostUpdate() will be executed after the GET statement.
+type HasPostGet interface {
+ PostGet(SqlExecutor) error
+}
+
+// PostUpdate() will be executed after the DELETE statement
+type HasPostDelete interface {
+ PostDelete(SqlExecutor) error
+}
+
+// PostUpdate() will be executed after the UPDATE statement
+type HasPostUpdate interface {
+ PostUpdate(SqlExecutor) error
+}
+
+// PostInsert() will be executed after the INSERT statement
+type HasPostInsert interface {
+ PostInsert(SqlExecutor) error
+}
+
+// PreDelete() will be executed before the DELETE statement.
+type HasPreDelete interface {
+ PreDelete(SqlExecutor) error
+}
+
+// PreUpdate() will be executed before UPDATE statement.
+type HasPreUpdate interface {
+ PreUpdate(SqlExecutor) error
+}
+
+// PreInsert() will be executed before INSERT statement.
+type HasPreInsert interface {
+ PreInsert(SqlExecutor) error
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/index.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/index.go
new file mode 100644
index 000000000..01ecd9eca
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/index.go
@@ -0,0 +1,56 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+// IndexMap represents a mapping between a Go struct field and a single
+// index in a table.
+// Unique and MaxSize only inform the
+// CreateTables() function and are not used by Insert/Update/Delete/Get.
+type IndexMap struct {
+ // Index name in db table
+ IndexName string
+
+ // If true, " unique" is added to create index statements.
+ // Not used elsewhere
+ Unique bool
+
+ // Index type supported by Dialect
+ // Postgres: B-tree, Hash, GiST and GIN.
+ // Mysql: Btree, Hash.
+ // Sqlite: nil.
+ IndexType string
+
+ // Columns name for single and multiple indexes
+ columns []string
+}
+
+// Rename allows you to specify the index name in the table
+//
+// Example: table.IndMap("customer_test_idx").Rename("customer_idx")
+//
+func (idx *IndexMap) Rename(indname string) *IndexMap {
+ idx.IndexName = indname
+ return idx
+}
+
+// SetUnique adds "unique" to the create index statements for this
+// index, if b is true.
+func (idx *IndexMap) SetUnique(b bool) *IndexMap {
+ idx.Unique = b
+ return idx
+}
+
+// SetIndexType specifies the index type supported by chousen SQL Dialect
+func (idx *IndexMap) SetIndexType(indtype string) *IndexMap {
+ idx.IndexType = indtype
+ return idx
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/lockerror.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/lockerror.go
new file mode 100644
index 000000000..07b3047ae
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/lockerror.go
@@ -0,0 +1,63 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "fmt"
+ "reflect"
+)
+
+// OptimisticLockError is returned by Update() or Delete() if the
+// struct being modified has a Version field and the value is not equal to
+// the current value in the database
+type OptimisticLockError struct {
+ // Table name where the lock error occurred
+ TableName string
+
+ // Primary key values of the row being updated/deleted
+ Keys []interface{}
+
+ // true if a row was found with those keys, indicating the
+ // LocalVersion is stale. false if no value was found with those
+ // keys, suggesting the row has been deleted since loaded, or
+ // was never inserted to begin with
+ RowExists bool
+
+ // Version value on the struct passed to Update/Delete. This value is
+ // out of sync with the database.
+ LocalVersion int64
+}
+
+// Error returns a description of the cause of the lock error
+func (e OptimisticLockError) Error() string {
+ if e.RowExists {
+ return fmt.Sprintf("gorp: OptimisticLockError table=%s keys=%v out of date version=%d", e.TableName, e.Keys, e.LocalVersion)
+ }
+
+ return fmt.Sprintf("gorp: OptimisticLockError no row found for table=%s keys=%v", e.TableName, e.Keys)
+}
+
+func lockError(m *DbMap, exec SqlExecutor, tableName string,
+ existingVer int64, elem reflect.Value,
+ keys ...interface{}) (int64, error) {
+
+ existing, err := get(m, exec, elem.Interface(), keys...)
+ if err != nil {
+ return -1, err
+ }
+
+ ole := OptimisticLockError{tableName, keys, true, existingVer}
+ if existing == nil {
+ ole.RowExists = false
+ }
+ return -1, ole
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/logging.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/logging.go
new file mode 100644
index 000000000..89d6c0e79
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/logging.go
@@ -0,0 +1,44 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import "fmt"
+
+type GorpLogger interface {
+ Printf(format string, v ...interface{})
+}
+
+// TraceOn turns on SQL statement logging for this DbMap. After this is
+// called, all SQL statements will be sent to the logger. If prefix is
+// a non-empty string, it will be written to the front of all logged
+// strings, which can aid in filtering log lines.
+//
+// Use TraceOn if you want to spy on the SQL statements that gorp
+// generates.
+//
+// Note that the base log.Logger type satisfies GorpLogger, but adapters can
+// easily be written for other logging packages (e.g., the golang-sanctioned
+// glog framework).
+func (m *DbMap) TraceOn(prefix string, logger GorpLogger) {
+ m.logger = logger
+ if prefix == "" {
+ m.logPrefix = prefix
+ } else {
+ m.logPrefix = fmt.Sprintf("%s ", prefix)
+ }
+}
+
+// TraceOff turns off tracing. It is idempotent.
+func (m *DbMap) TraceOff() {
+ m.logger = nil
+ m.logPrefix = ""
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/nulltypes.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/nulltypes.go
new file mode 100644
index 000000000..870770372
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/nulltypes.go
@@ -0,0 +1,58 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "database/sql/driver"
+ "time"
+)
+
+// A nullable Time value
+type NullTime struct {
+ Time time.Time
+ Valid bool // Valid is true if Time is not NULL
+}
+
+// Scan implements the Scanner interface.
+func (nt *NullTime) Scan(value interface{}) error {
+ switch t := value.(type) {
+ case time.Time:
+ nt.Time, nt.Valid = t, true
+ case []byte:
+ nt.Valid = false
+ for _, dtfmt := range []string{
+ "2006-01-02 15:04:05.999999999",
+ "2006-01-02T15:04:05.999999999",
+ "2006-01-02 15:04:05",
+ "2006-01-02T15:04:05",
+ "2006-01-02 15:04",
+ "2006-01-02T15:04",
+ "2006-01-02",
+ "2006-01-02 15:04:05-07:00",
+ } {
+ var err error
+ if nt.Time, err = time.Parse(dtfmt, string(t)); err == nil {
+ nt.Valid = true
+ break
+ }
+ }
+ }
+ return nil
+}
+
+// Value implements the driver Valuer interface.
+func (nt NullTime) Value() (driver.Value, error) {
+ if !nt.Valid {
+ return nil, nil
+ }
+ return nt.Time, nil
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/select.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/select.go
new file mode 100644
index 000000000..d6ff92ee3
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/select.go
@@ -0,0 +1,351 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "database/sql"
+ "fmt"
+ "reflect"
+)
+
+// SelectInt executes the given query, which should be a SELECT statement for a single
+// integer column, and returns the value of the first row returned. If no rows are
+// found, zero is returned.
+func SelectInt(e SqlExecutor, query string, args ...interface{}) (int64, error) {
+ var h int64
+ err := selectVal(e, &h, query, args...)
+ if err != nil && err != sql.ErrNoRows {
+ return 0, err
+ }
+ return h, nil
+}
+
+// SelectNullInt executes the given query, which should be a SELECT statement for a single
+// integer column, and returns the value of the first row returned. If no rows are
+// found, the empty sql.NullInt64 value is returned.
+func SelectNullInt(e SqlExecutor, query string, args ...interface{}) (sql.NullInt64, error) {
+ var h sql.NullInt64
+ err := selectVal(e, &h, query, args...)
+ if err != nil && err != sql.ErrNoRows {
+ return h, err
+ }
+ return h, nil
+}
+
+// SelectFloat executes the given query, which should be a SELECT statement for a single
+// float column, and returns the value of the first row returned. If no rows are
+// found, zero is returned.
+func SelectFloat(e SqlExecutor, query string, args ...interface{}) (float64, error) {
+ var h float64
+ err := selectVal(e, &h, query, args...)
+ if err != nil && err != sql.ErrNoRows {
+ return 0, err
+ }
+ return h, nil
+}
+
+// SelectNullFloat executes the given query, which should be a SELECT statement for a single
+// float column, and returns the value of the first row returned. If no rows are
+// found, the empty sql.NullInt64 value is returned.
+func SelectNullFloat(e SqlExecutor, query string, args ...interface{}) (sql.NullFloat64, error) {
+ var h sql.NullFloat64
+ err := selectVal(e, &h, query, args...)
+ if err != nil && err != sql.ErrNoRows {
+ return h, err
+ }
+ return h, nil
+}
+
+// SelectStr executes the given query, which should be a SELECT statement for a single
+// char/varchar column, and returns the value of the first row returned. If no rows are
+// found, an empty string is returned.
+func SelectStr(e SqlExecutor, query string, args ...interface{}) (string, error) {
+ var h string
+ err := selectVal(e, &h, query, args...)
+ if err != nil && err != sql.ErrNoRows {
+ return "", err
+ }
+ return h, nil
+}
+
+// SelectNullStr executes the given query, which should be a SELECT
+// statement for a single char/varchar column, and returns the value
+// of the first row returned. If no rows are found, the empty
+// sql.NullString is returned.
+func SelectNullStr(e SqlExecutor, query string, args ...interface{}) (sql.NullString, error) {
+ var h sql.NullString
+ err := selectVal(e, &h, query, args...)
+ if err != nil && err != sql.ErrNoRows {
+ return h, err
+ }
+ return h, nil
+}
+
+// SelectOne executes the given query (which should be a SELECT statement)
+// and binds the result to holder, which must be a pointer.
+//
+// If no row is found, an error (sql.ErrNoRows specifically) will be returned
+//
+// If more than one row is found, an error will be returned.
+//
+func SelectOne(m *DbMap, e SqlExecutor, holder interface{}, query string, args ...interface{}) error {
+ t := reflect.TypeOf(holder)
+ if t.Kind() == reflect.Ptr {
+ t = t.Elem()
+ } else {
+ return fmt.Errorf("gorp: SelectOne holder must be a pointer, but got: %t", holder)
+ }
+
+ // Handle pointer to pointer
+ isptr := false
+ if t.Kind() == reflect.Ptr {
+ isptr = true
+ t = t.Elem()
+ }
+
+ if t.Kind() == reflect.Struct {
+ var nonFatalErr error
+
+ list, err := hookedselect(m, e, holder, query, args...)
+ if err != nil {
+ if !NonFatalError(err) { // FIXME: double negative, rename NonFatalError to FatalError
+ return err
+ }
+ nonFatalErr = err
+ }
+
+ dest := reflect.ValueOf(holder)
+ if isptr {
+ dest = dest.Elem()
+ }
+
+ if list != nil && len(list) > 0 { // FIXME: invert if/else
+ // check for multiple rows
+ if len(list) > 1 {
+ return fmt.Errorf("gorp: multiple rows returned for: %s - %v", query, args)
+ }
+
+ // Initialize if nil
+ if dest.IsNil() {
+ dest.Set(reflect.New(t))
+ }
+
+ // only one row found
+ src := reflect.ValueOf(list[0])
+ dest.Elem().Set(src.Elem())
+ } else {
+ // No rows found, return a proper error.
+ return sql.ErrNoRows
+ }
+
+ return nonFatalErr
+ }
+
+ return selectVal(e, holder, query, args...)
+}
+
+func selectVal(e SqlExecutor, holder interface{}, query string, args ...interface{}) error {
+ if len(args) == 1 {
+ switch m := e.(type) {
+ case *DbMap:
+ query, args = maybeExpandNamedQuery(m, query, args)
+ case *Transaction:
+ query, args = maybeExpandNamedQuery(m.dbmap, query, args)
+ }
+ }
+ rows, err := e.query(query, args...)
+ if err != nil {
+ return err
+ }
+ defer rows.Close()
+
+ if !rows.Next() {
+ return sql.ErrNoRows
+ }
+
+ return rows.Scan(holder)
+}
+
+func hookedselect(m *DbMap, exec SqlExecutor, i interface{}, query string,
+ args ...interface{}) ([]interface{}, error) {
+
+ var nonFatalErr error
+
+ list, err := rawselect(m, exec, i, query, args...)
+ if err != nil {
+ if !NonFatalError(err) {
+ return nil, err
+ }
+ nonFatalErr = err
+ }
+
+ // Determine where the results are: written to i, or returned in list
+ if t, _ := toSliceType(i); t == nil {
+ for _, v := range list {
+ if v, ok := v.(HasPostGet); ok {
+ err := v.PostGet(exec)
+ if err != nil {
+ return nil, err
+ }
+ }
+ }
+ } else {
+ resultsValue := reflect.Indirect(reflect.ValueOf(i))
+ for i := 0; i < resultsValue.Len(); i++ {
+ if v, ok := resultsValue.Index(i).Interface().(HasPostGet); ok {
+ err := v.PostGet(exec)
+ if err != nil {
+ return nil, err
+ }
+ }
+ }
+ }
+ return list, nonFatalErr
+}
+
+func rawselect(m *DbMap, exec SqlExecutor, i interface{}, query string,
+ args ...interface{}) ([]interface{}, error) {
+ var (
+ appendToSlice = false // Write results to i directly?
+ intoStruct = true // Selecting into a struct?
+ pointerElements = true // Are the slice elements pointers (vs values)?
+ )
+
+ var nonFatalErr error
+
+ // get type for i, verifying it's a supported destination
+ t, err := toType(i)
+ if err != nil {
+ var err2 error
+ if t, err2 = toSliceType(i); t == nil {
+ if err2 != nil {
+ return nil, err2
+ }
+ return nil, err
+ }
+ pointerElements = t.Kind() == reflect.Ptr
+ if pointerElements {
+ t = t.Elem()
+ }
+ appendToSlice = true
+ intoStruct = t.Kind() == reflect.Struct
+ }
+
+ // If the caller supplied a single struct/map argument, assume a "named
+ // parameter" query. Extract the named arguments from the struct/map, create
+ // the flat arg slice, and rewrite the query to use the dialect's placeholder.
+ if len(args) == 1 {
+ query, args = maybeExpandNamedQuery(m, query, args)
+ }
+
+ // Run the query
+ rows, err := exec.query(query, args...)
+ if err != nil {
+ return nil, err
+ }
+ defer rows.Close()
+
+ // Fetch the column names as returned from db
+ cols, err := rows.Columns()
+ if err != nil {
+ return nil, err
+ }
+
+ if !intoStruct && len(cols) > 1 {
+ return nil, fmt.Errorf("gorp: select into non-struct slice requires 1 column, got %d", len(cols))
+ }
+
+ var colToFieldIndex [][]int
+ if intoStruct {
+ colToFieldIndex, err = columnToFieldIndex(m, t, cols)
+ if err != nil {
+ if !NonFatalError(err) {
+ return nil, err
+ }
+ nonFatalErr = err
+ }
+ }
+
+ conv := m.TypeConverter
+
+ // Add results to one of these two slices.
+ var (
+ list = make([]interface{}, 0)
+ sliceValue = reflect.Indirect(reflect.ValueOf(i))
+ )
+
+ for {
+ if !rows.Next() {
+ // if error occured return rawselect
+ if rows.Err() != nil {
+ return nil, rows.Err()
+ }
+ // time to exit from outer "for" loop
+ break
+ }
+ v := reflect.New(t)
+ dest := make([]interface{}, len(cols))
+
+ custScan := make([]CustomScanner, 0)
+
+ for x := range cols {
+ f := v.Elem()
+ if intoStruct {
+ index := colToFieldIndex[x]
+ if index == nil {
+ // this field is not present in the struct, so create a dummy
+ // value for rows.Scan to scan into
+ var dummy dummyField
+ dest[x] = &dummy
+ continue
+ }
+ f = f.FieldByIndex(index)
+ }
+ target := f.Addr().Interface()
+ if conv != nil {
+ scanner, ok := conv.FromDb(target)
+ if ok {
+ target = scanner.Holder
+ custScan = append(custScan, scanner)
+ }
+ }
+ dest[x] = target
+ }
+
+ err = rows.Scan(dest...)
+ if err != nil {
+ return nil, err
+ }
+
+ for _, c := range custScan {
+ err = c.Bind()
+ if err != nil {
+ return nil, err
+ }
+ }
+
+ if appendToSlice {
+ if !pointerElements {
+ v = v.Elem()
+ }
+ sliceValue.Set(reflect.Append(sliceValue, v))
+ } else {
+ list = append(list, v.Interface())
+ }
+ }
+
+ if appendToSlice && sliceValue.IsNil() {
+ sliceValue.Set(reflect.MakeSlice(sliceValue.Type(), 0, 0))
+ }
+
+ return list, nonFatalErr
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/table.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/table.go
new file mode 100644
index 000000000..5c513909a
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/table.go
@@ -0,0 +1,247 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "bytes"
+ "fmt"
+ "reflect"
+ "strings"
+)
+
+// TableMap represents a mapping between a Go struct and a database table
+// Use dbmap.AddTable() or dbmap.AddTableWithName() to create these
+type TableMap struct {
+ // Name of database table.
+ TableName string
+ SchemaName string
+ gotype reflect.Type
+ Columns []*ColumnMap
+ keys []*ColumnMap
+ indexes []*IndexMap
+ uniqueTogether [][]string
+ version *ColumnMap
+ insertPlan bindPlan
+ updatePlan bindPlan
+ deletePlan bindPlan
+ getPlan bindPlan
+ dbmap *DbMap
+}
+
+// ResetSql removes cached insert/update/select/delete SQL strings
+// associated with this TableMap. Call this if you've modified
+// any column names or the table name itself.
+func (t *TableMap) ResetSql() {
+ t.insertPlan = bindPlan{}
+ t.updatePlan = bindPlan{}
+ t.deletePlan = bindPlan{}
+ t.getPlan = bindPlan{}
+}
+
+// SetKeys lets you specify the fields on a struct that map to primary
+// key columns on the table. If isAutoIncr is set, result.LastInsertId()
+// will be used after INSERT to bind the generated id to the Go struct.
+//
+// Automatically calls ResetSql() to ensure SQL statements are regenerated.
+//
+// Panics if isAutoIncr is true, and fieldNames length != 1
+//
+func (t *TableMap) SetKeys(isAutoIncr bool, fieldNames ...string) *TableMap {
+ if isAutoIncr && len(fieldNames) != 1 {
+ panic(fmt.Sprintf(
+ "gorp: SetKeys: fieldNames length must be 1 if key is auto-increment. (Saw %v fieldNames)",
+ len(fieldNames)))
+ }
+ t.keys = make([]*ColumnMap, 0)
+ for _, name := range fieldNames {
+ colmap := t.ColMap(name)
+ colmap.isPK = true
+ colmap.isAutoIncr = isAutoIncr
+ t.keys = append(t.keys, colmap)
+ }
+ t.ResetSql()
+
+ return t
+}
+
+// SetUniqueTogether lets you specify uniqueness constraints across multiple
+// columns on the table. Each call adds an additional constraint for the
+// specified columns.
+//
+// Automatically calls ResetSql() to ensure SQL statements are regenerated.
+//
+// Panics if fieldNames length < 2.
+//
+func (t *TableMap) SetUniqueTogether(fieldNames ...string) *TableMap {
+ if len(fieldNames) < 2 {
+ panic(fmt.Sprintf(
+ "gorp: SetUniqueTogether: must provide at least two fieldNames to set uniqueness constraint."))
+ }
+
+ columns := make([]string, 0)
+ for _, name := range fieldNames {
+ columns = append(columns, name)
+ }
+ t.uniqueTogether = append(t.uniqueTogether, columns)
+ t.ResetSql()
+
+ return t
+}
+
+// ColMap returns the ColumnMap pointer matching the given struct field
+// name. It panics if the struct does not contain a field matching this
+// name.
+func (t *TableMap) ColMap(field string) *ColumnMap {
+ col := colMapOrNil(t, field)
+ if col == nil {
+ e := fmt.Sprintf("No ColumnMap in table %s type %s with field %s",
+ t.TableName, t.gotype.Name(), field)
+
+ panic(e)
+ }
+ return col
+}
+
+func colMapOrNil(t *TableMap, field string) *ColumnMap {
+ for _, col := range t.Columns {
+ if col.fieldName == field || col.ColumnName == field {
+ return col
+ }
+ }
+ return nil
+}
+
+// IdxMap returns the IndexMap pointer matching the given index name.
+func (t *TableMap) IdxMap(field string) *IndexMap {
+ for _, idx := range t.indexes {
+ if idx.IndexName == field {
+ return idx
+ }
+ }
+ return nil
+}
+
+// AddIndex registers the index with gorp for specified table with given parameters.
+// This operation is idempotent. If index is already mapped, the
+// existing *IndexMap is returned
+// Function will panic if one of the given for index columns does not exists
+//
+// Automatically calls ResetSql() to ensure SQL statements are regenerated.
+//
+func (t *TableMap) AddIndex(name string, idxtype string, columns []string) *IndexMap {
+ // check if we have a index with this name already
+ for _, idx := range t.indexes {
+ if idx.IndexName == name {
+ return idx
+ }
+ }
+ for _, icol := range columns {
+ if res := t.ColMap(icol); res == nil {
+ e := fmt.Sprintf("No ColumnName in table %s to create index on", t.TableName)
+ panic(e)
+ }
+ }
+
+ idx := &IndexMap{IndexName: name, Unique: false, IndexType: idxtype, columns: columns}
+ t.indexes = append(t.indexes, idx)
+ t.ResetSql()
+ return idx
+}
+
+// SetVersionCol sets the column to use as the Version field. By default
+// the "Version" field is used. Returns the column found, or panics
+// if the struct does not contain a field matching this name.
+//
+// Automatically calls ResetSql() to ensure SQL statements are regenerated.
+func (t *TableMap) SetVersionCol(field string) *ColumnMap {
+ c := t.ColMap(field)
+ t.version = c
+ t.ResetSql()
+ return c
+}
+
+// SqlForCreateTable gets a sequence of SQL commands that will create
+// the specified table and any associated schema
+func (t *TableMap) SqlForCreate(ifNotExists bool) string {
+ s := bytes.Buffer{}
+ dialect := t.dbmap.Dialect
+
+ if strings.TrimSpace(t.SchemaName) != "" {
+ schemaCreate := "create schema"
+ if ifNotExists {
+ s.WriteString(dialect.IfSchemaNotExists(schemaCreate, t.SchemaName))
+ } else {
+ s.WriteString(schemaCreate)
+ }
+ s.WriteString(fmt.Sprintf(" %s;", t.SchemaName))
+ }
+
+ tableCreate := "create table"
+ if ifNotExists {
+ s.WriteString(dialect.IfTableNotExists(tableCreate, t.SchemaName, t.TableName))
+ } else {
+ s.WriteString(tableCreate)
+ }
+ s.WriteString(fmt.Sprintf(" %s (", dialect.QuotedTableForQuery(t.SchemaName, t.TableName)))
+
+ x := 0
+ for _, col := range t.Columns {
+ if !col.Transient {
+ if x > 0 {
+ s.WriteString(", ")
+ }
+ stype := dialect.ToSqlType(col.gotype, col.MaxSize, col.isAutoIncr)
+ s.WriteString(fmt.Sprintf("%s %s", dialect.QuoteField(col.ColumnName), stype))
+
+ if col.isPK || col.isNotNull {
+ s.WriteString(" not null")
+ }
+ if col.isPK && len(t.keys) == 1 {
+ s.WriteString(" primary key")
+ }
+ if col.Unique {
+ s.WriteString(" unique")
+ }
+ if col.isAutoIncr {
+ s.WriteString(fmt.Sprintf(" %s", dialect.AutoIncrStr()))
+ }
+
+ x++
+ }
+ }
+ if len(t.keys) > 1 {
+ s.WriteString(", primary key (")
+ for x := range t.keys {
+ if x > 0 {
+ s.WriteString(", ")
+ }
+ s.WriteString(dialect.QuoteField(t.keys[x].ColumnName))
+ }
+ s.WriteString(")")
+ }
+ if len(t.uniqueTogether) > 0 {
+ for _, columns := range t.uniqueTogether {
+ s.WriteString(", unique (")
+ for i, column := range columns {
+ if i > 0 {
+ s.WriteString(", ")
+ }
+ s.WriteString(dialect.QuoteField(column))
+ }
+ s.WriteString(")")
+ }
+ }
+ s.WriteString(") ")
+ s.WriteString(dialect.CreateTableSuffix())
+ s.WriteString(dialect.QuerySuffix())
+ return s.String()
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/table_bindings.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/table_bindings.go
new file mode 100644
index 000000000..1727d0d09
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/table_bindings.go
@@ -0,0 +1,317 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "bytes"
+ "fmt"
+ "reflect"
+)
+
+// CustomScanner binds a database column value to a Go type
+type CustomScanner struct {
+ // After a row is scanned, Holder will contain the value from the database column.
+ // Initialize the CustomScanner with the concrete Go type you wish the database
+ // driver to scan the raw column into.
+ Holder interface{}
+ // Target typically holds a pointer to the target struct field to bind the Holder
+ // value to.
+ Target interface{}
+ // Binder is a custom function that converts the holder value to the target type
+ // and sets target accordingly. This function should return error if a problem
+ // occurs converting the holder to the target.
+ Binder func(holder interface{}, target interface{}) error
+}
+
+// Used to filter columns when selectively updating
+type ColumnFilter func(*ColumnMap) bool
+
+func acceptAllFilter(col *ColumnMap) bool {
+ return true
+}
+
+// Bind is called automatically by gorp after Scan()
+func (me CustomScanner) Bind() error {
+ return me.Binder(me.Holder, me.Target)
+}
+
+type bindPlan struct {
+ query string
+ argFields []string
+ keyFields []string
+ versField string
+ autoIncrIdx int
+ autoIncrFieldName string
+}
+
+func (plan bindPlan) createBindInstance(elem reflect.Value, conv TypeConverter) (bindInstance, error) {
+ bi := bindInstance{query: plan.query, autoIncrIdx: plan.autoIncrIdx, autoIncrFieldName: plan.autoIncrFieldName, versField: plan.versField}
+ if plan.versField != "" {
+ bi.existingVersion = elem.FieldByName(plan.versField).Int()
+ }
+
+ var err error
+
+ for i := 0; i < len(plan.argFields); i++ {
+ k := plan.argFields[i]
+ if k == versFieldConst {
+ newVer := bi.existingVersion + 1
+ bi.args = append(bi.args, newVer)
+ if bi.existingVersion == 0 {
+ elem.FieldByName(plan.versField).SetInt(int64(newVer))
+ }
+ } else {
+ val := elem.FieldByName(k).Interface()
+ if conv != nil {
+ val, err = conv.ToDb(val)
+ if err != nil {
+ return bindInstance{}, err
+ }
+ }
+ bi.args = append(bi.args, val)
+ }
+ }
+
+ for i := 0; i < len(plan.keyFields); i++ {
+ k := plan.keyFields[i]
+ val := elem.FieldByName(k).Interface()
+ if conv != nil {
+ val, err = conv.ToDb(val)
+ if err != nil {
+ return bindInstance{}, err
+ }
+ }
+ bi.keys = append(bi.keys, val)
+ }
+
+ return bi, nil
+}
+
+type bindInstance struct {
+ query string
+ args []interface{}
+ keys []interface{}
+ existingVersion int64
+ versField string
+ autoIncrIdx int
+ autoIncrFieldName string
+}
+
+func (t *TableMap) bindInsert(elem reflect.Value) (bindInstance, error) {
+ plan := t.insertPlan
+ if plan.query == "" {
+ plan.autoIncrIdx = -1
+
+ s := bytes.Buffer{}
+ s2 := bytes.Buffer{}
+ s.WriteString(fmt.Sprintf("insert into %s (", t.dbmap.Dialect.QuotedTableForQuery(t.SchemaName, t.TableName)))
+
+ x := 0
+ first := true
+ for y := range t.Columns {
+ col := t.Columns[y]
+ if !(col.isAutoIncr && t.dbmap.Dialect.AutoIncrBindValue() == "") {
+ if !col.Transient {
+ if !first {
+ s.WriteString(",")
+ s2.WriteString(",")
+ }
+ s.WriteString(t.dbmap.Dialect.QuoteField(col.ColumnName))
+
+ if col.isAutoIncr {
+ s2.WriteString(t.dbmap.Dialect.AutoIncrBindValue())
+ plan.autoIncrIdx = y
+ plan.autoIncrFieldName = col.fieldName
+ } else {
+ if col.DefaultValue == "" {
+ s2.WriteString(t.dbmap.Dialect.BindVar(x))
+ if col == t.version {
+ plan.versField = col.fieldName
+ plan.argFields = append(plan.argFields, versFieldConst)
+ } else {
+ plan.argFields = append(plan.argFields, col.fieldName)
+ }
+ x++
+ } else {
+ s2.WriteString(col.DefaultValue)
+ }
+ }
+ first = false
+ }
+ } else {
+ plan.autoIncrIdx = y
+ plan.autoIncrFieldName = col.fieldName
+ }
+ }
+ s.WriteString(") values (")
+ s.WriteString(s2.String())
+ s.WriteString(")")
+ if plan.autoIncrIdx > -1 {
+ s.WriteString(t.dbmap.Dialect.AutoIncrInsertSuffix(t.Columns[plan.autoIncrIdx]))
+ }
+ s.WriteString(t.dbmap.Dialect.QuerySuffix())
+
+ plan.query = s.String()
+ t.insertPlan = plan
+ }
+
+ return plan.createBindInstance(elem, t.dbmap.TypeConverter)
+}
+
+func (t *TableMap) bindUpdate(elem reflect.Value, colFilter ColumnFilter) (bindInstance, error) {
+ if colFilter == nil {
+ colFilter = acceptAllFilter
+ }
+
+ plan := t.updatePlan
+ if plan.query == "" {
+
+ s := bytes.Buffer{}
+ s.WriteString(fmt.Sprintf("update %s set ", t.dbmap.Dialect.QuotedTableForQuery(t.SchemaName, t.TableName)))
+ x := 0
+
+ for y := range t.Columns {
+ col := t.Columns[y]
+ if !col.isAutoIncr && !col.Transient && colFilter(col) {
+ if x > 0 {
+ s.WriteString(", ")
+ }
+ s.WriteString(t.dbmap.Dialect.QuoteField(col.ColumnName))
+ s.WriteString("=")
+ s.WriteString(t.dbmap.Dialect.BindVar(x))
+
+ if col == t.version {
+ plan.versField = col.fieldName
+ plan.argFields = append(plan.argFields, versFieldConst)
+ } else {
+ plan.argFields = append(plan.argFields, col.fieldName)
+ }
+ x++
+ }
+ }
+
+ s.WriteString(" where ")
+ for y := range t.keys {
+ col := t.keys[y]
+ if y > 0 {
+ s.WriteString(" and ")
+ }
+ s.WriteString(t.dbmap.Dialect.QuoteField(col.ColumnName))
+ s.WriteString("=")
+ s.WriteString(t.dbmap.Dialect.BindVar(x))
+
+ plan.argFields = append(plan.argFields, col.fieldName)
+ plan.keyFields = append(plan.keyFields, col.fieldName)
+ x++
+ }
+ if plan.versField != "" {
+ s.WriteString(" and ")
+ s.WriteString(t.dbmap.Dialect.QuoteField(t.version.ColumnName))
+ s.WriteString("=")
+ s.WriteString(t.dbmap.Dialect.BindVar(x))
+ plan.argFields = append(plan.argFields, plan.versField)
+ }
+ s.WriteString(t.dbmap.Dialect.QuerySuffix())
+
+ plan.query = s.String()
+ t.updatePlan = plan
+ }
+
+ return plan.createBindInstance(elem, t.dbmap.TypeConverter)
+}
+
+func (t *TableMap) bindDelete(elem reflect.Value) (bindInstance, error) {
+ plan := t.deletePlan
+ if plan.query == "" {
+
+ s := bytes.Buffer{}
+ s.WriteString(fmt.Sprintf("delete from %s", t.dbmap.Dialect.QuotedTableForQuery(t.SchemaName, t.TableName)))
+
+ for y := range t.Columns {
+ col := t.Columns[y]
+ if !col.Transient {
+ if col == t.version {
+ plan.versField = col.fieldName
+ }
+ }
+ }
+
+ s.WriteString(" where ")
+ for x := range t.keys {
+ k := t.keys[x]
+ if x > 0 {
+ s.WriteString(" and ")
+ }
+ s.WriteString(t.dbmap.Dialect.QuoteField(k.ColumnName))
+ s.WriteString("=")
+ s.WriteString(t.dbmap.Dialect.BindVar(x))
+
+ plan.keyFields = append(plan.keyFields, k.fieldName)
+ plan.argFields = append(plan.argFields, k.fieldName)
+ }
+ if plan.versField != "" {
+ s.WriteString(" and ")
+ s.WriteString(t.dbmap.Dialect.QuoteField(t.version.ColumnName))
+ s.WriteString("=")
+ s.WriteString(t.dbmap.Dialect.BindVar(len(plan.argFields)))
+
+ plan.argFields = append(plan.argFields, plan.versField)
+ }
+ s.WriteString(t.dbmap.Dialect.QuerySuffix())
+
+ plan.query = s.String()
+ t.deletePlan = plan
+ }
+
+ return plan.createBindInstance(elem, t.dbmap.TypeConverter)
+}
+
+func (t *TableMap) bindGet() bindPlan {
+ plan := t.getPlan
+ if plan.query == "" {
+
+ s := bytes.Buffer{}
+ s.WriteString("select ")
+
+ x := 0
+ for _, col := range t.Columns {
+ if !col.Transient {
+ if x > 0 {
+ s.WriteString(",")
+ }
+ s.WriteString(t.dbmap.Dialect.QuoteField(col.ColumnName))
+ plan.argFields = append(plan.argFields, col.fieldName)
+ x++
+ }
+ }
+ s.WriteString(" from ")
+ s.WriteString(t.dbmap.Dialect.QuotedTableForQuery(t.SchemaName, t.TableName))
+ s.WriteString(" where ")
+ for x := range t.keys {
+ col := t.keys[x]
+ if x > 0 {
+ s.WriteString(" and ")
+ }
+ s.WriteString(t.dbmap.Dialect.QuoteField(col.ColumnName))
+ s.WriteString("=")
+ s.WriteString(t.dbmap.Dialect.BindVar(x))
+
+ plan.keyFields = append(plan.keyFields, col.fieldName)
+ }
+ s.WriteString(t.dbmap.Dialect.QuerySuffix())
+
+ plan.query = s.String()
+ t.getPlan = plan
+ }
+
+ return plan
+}
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/test_all.sh b/Godeps/_workspace/src/github.com/go-gorp/gorp/test_all.sh
index f870b39a3..f2d16961a 100644
--- a/Godeps/_workspace/src/github.com/go-gorp/gorp/test_all.sh
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/test_all.sh
@@ -1,22 +1,38 @@
-#!/bin/sh
+#!/bin/bash -e
# on macs, you may need to:
# export GOBUILDFLAG=-ldflags -linkmode=external
-set -e
+coveralls_testflags="-v -covermode=count -coverprofile=coverage.out"
+echo "Testing against mysql"
export GORP_TEST_DSN=gorptest/gorptest/gorptest
export GORP_TEST_DIALECT=mysql
-go test $GOBUILDFLAG .
+go test $coveralls_testflags $GOBUILDFLAG $@ .
+echo "Testing against gomysql"
export GORP_TEST_DSN=gorptest:gorptest@/gorptest
export GORP_TEST_DIALECT=gomysql
-go test $GOBUILDFLAG .
+go test $coveralls_testflags $GOBUILDFLAG $@ .
+echo "Testing against postgres"
export GORP_TEST_DSN="user=gorptest password=gorptest dbname=gorptest sslmode=disable"
export GORP_TEST_DIALECT=postgres
-go test $GOBUILDFLAG .
+go test $coveralls_testflags $GOBUILDFLAG $@ .
+echo "Testing against sqlite"
export GORP_TEST_DSN=/tmp/gorptest.bin
export GORP_TEST_DIALECT=sqlite
-go test $GOBUILDFLAG .
+go test $coveralls_testflags $GOBUILDFLAG $@ .
+rm -f /tmp/gorptest.bin
+
+case $(go version) in
+ *go1.4*)
+ if [ "$(type -p goveralls)" != "" ]; then
+ goveralls -covermode=count -coverprofile=coverage.out -service=travis-ci
+ elif [ -x $HOME/gopath/bin/goveralls ]; then
+ $HOME/gopath/bin/goveralls -covermode=count -coverprofile=coverage.out -service=travis-ci
+ fi
+ ;;
+ *) ;;
+esac
diff --git a/Godeps/_workspace/src/github.com/go-gorp/gorp/transaction.go b/Godeps/_workspace/src/github.com/go-gorp/gorp/transaction.go
new file mode 100644
index 000000000..6430f24f1
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/go-gorp/gorp/transaction.go
@@ -0,0 +1,193 @@
+// Copyright 2012 James Cooper. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package gorp provides a simple way to marshal Go structs to and from
+// SQL databases. It uses the database/sql package, and should work with any
+// compliant database/sql driver.
+//
+// Source code and project home:
+// https://github.com/go-gorp/gorp
+
+package gorp
+
+import (
+ "database/sql"
+ "time"
+)
+
+// Transaction represents a database transaction.
+// Insert/Update/Delete/Get/Exec operations will be run in the context
+// of that transaction. Transactions should be terminated with
+// a call to Commit() or Rollback()
+type Transaction struct {
+ dbmap *DbMap
+ tx *sql.Tx
+ closed bool
+}
+
+// Insert has the same behavior as DbMap.Insert(), but runs in a transaction.
+func (t *Transaction) Insert(list ...interface{}) error {
+ return insert(t.dbmap, t, list...)
+}
+
+// Update had the same behavior as DbMap.Update(), but runs in a transaction.
+func (t *Transaction) Update(list ...interface{}) (int64, error) {
+ return update(t.dbmap, t, nil, list...)
+}
+
+// UpdateColumns had the same behavior as DbMap.UpdateColumns(), but runs in a transaction.
+func (t *Transaction) UpdateColumns(filter ColumnFilter, list ...interface{}) (int64, error) {
+ return update(t.dbmap, t, filter, list...)
+}
+
+// Delete has the same behavior as DbMap.Delete(), but runs in a transaction.
+func (t *Transaction) Delete(list ...interface{}) (int64, error) {
+ return delete(t.dbmap, t, list...)
+}
+
+// Get has the same behavior as DbMap.Get(), but runs in a transaction.
+func (t *Transaction) Get(i interface{}, keys ...interface{}) (interface{}, error) {
+ return get(t.dbmap, t, i, keys...)
+}
+
+// Select has the same behavior as DbMap.Select(), but runs in a transaction.
+func (t *Transaction) Select(i interface{}, query string, args ...interface{}) ([]interface{}, error) {
+ return hookedselect(t.dbmap, t, i, query, args...)
+}
+
+// Exec has the same behavior as DbMap.Exec(), but runs in a transaction.
+func (t *Transaction) Exec(query string, args ...interface{}) (sql.Result, error) {
+ if t.dbmap.logger != nil {
+ now := time.Now()
+ defer t.dbmap.trace(now, query, args...)
+ }
+ return exec(t, query, args...)
+}
+
+// SelectInt is a convenience wrapper around the gorp.SelectInt function.
+func (t *Transaction) SelectInt(query string, args ...interface{}) (int64, error) {
+ return SelectInt(t, query, args...)
+}
+
+// SelectNullInt is a convenience wrapper around the gorp.SelectNullInt function.
+func (t *Transaction) SelectNullInt(query string, args ...interface{}) (sql.NullInt64, error) {
+ return SelectNullInt(t, query, args...)
+}
+
+// SelectFloat is a convenience wrapper around the gorp.SelectFloat function.
+func (t *Transaction) SelectFloat(query string, args ...interface{}) (float64, error) {
+ return SelectFloat(t, query, args...)
+}
+
+// SelectNullFloat is a convenience wrapper around the gorp.SelectNullFloat function.
+func (t *Transaction) SelectNullFloat(query string, args ...interface{}) (sql.NullFloat64, error) {
+ return SelectNullFloat(t, query, args...)
+}
+
+// SelectStr is a convenience wrapper around the gorp.SelectStr function.
+func (t *Transaction) SelectStr(query string, args ...interface{}) (string, error) {
+ return SelectStr(t, query, args...)
+}
+
+// SelectNullStr is a convenience wrapper around the gorp.SelectNullStr function.
+func (t *Transaction) SelectNullStr(query string, args ...interface{}) (sql.NullString, error) {
+ return SelectNullStr(t, query, args...)
+}
+
+// SelectOne is a convenience wrapper around the gorp.SelectOne function.
+func (t *Transaction) SelectOne(holder interface{}, query string, args ...interface{}) error {
+ return SelectOne(t.dbmap, t, holder, query, args...)
+}
+
+// Commit commits the underlying database transaction.
+func (t *Transaction) Commit() error {
+ if !t.closed {
+ t.closed = true
+ if t.dbmap.logger != nil {
+ now := time.Now()
+ defer t.dbmap.trace(now, "commit;")
+ }
+ return t.tx.Commit()
+ }
+
+ return sql.ErrTxDone
+}
+
+// Rollback rolls back the underlying database transaction.
+func (t *Transaction) Rollback() error {
+ if !t.closed {
+ t.closed = true
+ if t.dbmap.logger != nil {
+ now := time.Now()
+ defer t.dbmap.trace(now, "rollback;")
+ }
+ return t.tx.Rollback()
+ }
+
+ return sql.ErrTxDone
+}
+
+// Savepoint creates a savepoint with the given name. The name is interpolated
+// directly into the SQL SAVEPOINT statement, so you must sanitize it if it is
+// derived from user input.
+func (t *Transaction) Savepoint(name string) error {
+ query := "savepoint " + t.dbmap.Dialect.QuoteField(name)
+ if t.dbmap.logger != nil {
+ now := time.Now()
+ defer t.dbmap.trace(now, query, nil)
+ }
+ _, err := t.tx.Exec(query)
+ return err
+}
+
+// RollbackToSavepoint rolls back to the savepoint with the given name. The
+// name is interpolated directly into the SQL SAVEPOINT statement, so you must
+// sanitize it if it is derived from user input.
+func (t *Transaction) RollbackToSavepoint(savepoint string) error {
+ query := "rollback to savepoint " + t.dbmap.Dialect.QuoteField(savepoint)
+ if t.dbmap.logger != nil {
+ now := time.Now()
+ defer t.dbmap.trace(now, query, nil)
+ }
+ _, err := t.tx.Exec(query)
+ return err
+}
+
+// ReleaseSavepint releases the savepoint with the given name. The name is
+// interpolated directly into the SQL SAVEPOINT statement, so you must sanitize
+// it if it is derived from user input.
+func (t *Transaction) ReleaseSavepoint(savepoint string) error {
+ query := "release savepoint " + t.dbmap.Dialect.QuoteField(savepoint)
+ if t.dbmap.logger != nil {
+ now := time.Now()
+ defer t.dbmap.trace(now, query, nil)
+ }
+ _, err := t.tx.Exec(query)
+ return err
+}
+
+// Prepare has the same behavior as DbMap.Prepare(), but runs in a transaction.
+func (t *Transaction) Prepare(query string) (*sql.Stmt, error) {
+ if t.dbmap.logger != nil {
+ now := time.Now()
+ defer t.dbmap.trace(now, query, nil)
+ }
+ return t.tx.Prepare(query)
+}
+
+func (t *Transaction) queryRow(query string, args ...interface{}) *sql.Row {
+ if t.dbmap.logger != nil {
+ now := time.Now()
+ defer t.dbmap.trace(now, query, args...)
+ }
+ return t.tx.QueryRow(query, args...)
+}
+
+func (t *Transaction) query(query string, args ...interface{}) (*sql.Rows, error) {
+ if t.dbmap.logger != nil {
+ now := time.Now()
+ defer t.dbmap.trace(now, query, args...)
+ }
+ return t.tx.Query(query, args...)
+}
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/AUTHORS b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/AUTHORS
index 4b65bf363..6dd0167f3 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/AUTHORS
+++ b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/AUTHORS
@@ -20,9 +20,11 @@ Frederick Mayle <frederickmayle at gmail.com>
Gustavo Kristic <gkristic at gmail.com>
Hanno Braun <mail at hannobraun.com>
Henri Yandell <flamefew at gmail.com>
+Hirotaka Yamamoto <ymmt2005 at gmail.com>
INADA Naoki <songofacandy at gmail.com>
James Harr <james.harr at gmail.com>
Jian Zhen <zhenjl at gmail.com>
+Joshua Prunier <joshua.prunier at gmail.com>
Julien Schmidt <go-sql-driver at julienschmidt.com>
Kamil Dziedzic <kamil at klecza.pl>
Leonardo YongUk Kim <dalinaum at gmail.com>
@@ -32,8 +34,10 @@ Michael Woolnough <michael.woolnough at gmail.com>
Nicola Peduzzi <thenikso at gmail.com>
Runrioter Wung <runrioter at gmail.com>
Soroush Pour <me at soroushjp.com>
+Stan Putrya <root.vagner at gmail.com>
Xiaobing Jiang <s7v7nislands at gmail.com>
Xiuming Chen <cc at cxm.cc>
+Julien Lefevre <julien.lefevr at gmail.com>
# Organizations
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/README.md b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/README.md
index 9edb7628b..706b7ef2e 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/README.md
+++ b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/README.md
@@ -30,7 +30,7 @@ A MySQL-Driver for Go's [database/sql](http://golang.org/pkg/database/sql) packa
## Features
* Lightweight and [fast](https://github.com/go-sql-driver/sql-benchmark "golang MySQL-Driver performance")
* Native Go implementation. No C-bindings, just pure Go
- * Connections over TCP/IPv4, TCP/IPv6 or Unix domain sockets
+ * Connections over TCP/IPv4, TCP/IPv6, Unix domain sockets or [custom protocols](http://godoc.org/github.com/go-sql-driver/mysql#DialFunc)
* Automatic handling of broken connections
* Automatic Connection Pooling *(by database/sql package)*
* Supports queries larger than 16MB
@@ -123,6 +123,16 @@ Default: false
`allowAllFiles=true` disables the file Whitelist for `LOAD DATA LOCAL INFILE` and allows *all* files.
[*Might be insecure!*](http://dev.mysql.com/doc/refman/5.7/en/load-data-local.html)
+##### `allowCleartextPasswords`
+
+```
+Type: bool
+Valid Values: true, false
+Default: false
+```
+
+`allowCleartextPasswords=true` allows using the [cleartext client side plugin](http://dev.mysql.com/doc/en/cleartext-authentication-plugin.html) if required by an account, such as one defined with the [PAM authentication plugin](http://dev.mysql.com/doc/en/pam-authentication-plugin.html). Sending passwords in clear text may be a security problem in some configurations. To avoid problems if there is any possibility that the password would be intercepted, clients should connect to MySQL Server using a method that protects the password. Possibilities include [TLS / SSL](#tls), IPsec, or a private network.
+
##### `allowOldPasswords`
```
@@ -321,7 +331,7 @@ import "github.com/go-sql-driver/mysql"
Files must be whitelisted by registering them with `mysql.RegisterLocalFile(filepath)` (recommended) or the Whitelist check must be deactivated by using the DSN parameter `allowAllFiles=true` ([*Might be insecure!*](http://dev.mysql.com/doc/refman/5.7/en/load-data-local.html)).
-To use a `io.Reader` a handler function must be registered with `mysql.RegisterReaderHandler(name, handler)` which returns a `io.Reader` or `io.ReadCloser`. The Reader is available with the filepath `Reader::<name>` then.
+To use a `io.Reader` a handler function must be registered with `mysql.RegisterReaderHandler(name, handler)` which returns a `io.Reader` or `io.ReadCloser`. The Reader is available with the filepath `Reader::<name>` then. Choose different names for different handlers and `DeregisterReaderHandler` when you don't need it anymore.
See the [godoc of Go-MySQL-Driver](http://godoc.org/github.com/go-sql-driver/mysql "golang mysql driver documentation") for details.
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/connection.go b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/connection.go
index a6d39bec9..72ed09d69 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/connection.go
+++ b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/connection.go
@@ -34,21 +34,22 @@ type mysqlConn struct {
}
type config struct {
- user string
- passwd string
- net string
- addr string
- dbname string
- params map[string]string
- loc *time.Location
- tls *tls.Config
- timeout time.Duration
- collation uint8
- allowAllFiles bool
- allowOldPasswords bool
- clientFoundRows bool
- columnsWithAlias bool
- interpolateParams bool
+ user string
+ passwd string
+ net string
+ addr string
+ dbname string
+ params map[string]string
+ loc *time.Location
+ tls *tls.Config
+ timeout time.Duration
+ collation uint8
+ allowAllFiles bool
+ allowOldPasswords bool
+ allowCleartextPasswords bool
+ clientFoundRows bool
+ columnsWithAlias bool
+ interpolateParams bool
}
// Handles parameters set in DSN after the connection is established
@@ -252,7 +253,7 @@ func (mc *mysqlConn) interpolateParams(query string, args []driver.Value) (strin
if v == nil {
buf = append(buf, "NULL"...)
} else {
- buf = append(buf, '\'')
+ buf = append(buf, "_binary'"...)
if mc.status&statusNoBackslashEscapes == 0 {
buf = escapeBytesBackslash(buf, v)
} else {
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/driver.go b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/driver.go
index 3cbbe6031..d310624ad 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/driver.go
+++ b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/driver.go
@@ -107,6 +107,15 @@ func (d MySQLDriver) Open(dsn string) (driver.Conn, error) {
mc.Close()
return nil, err
}
+ } else if mc.cfg != nil && mc.cfg.allowCleartextPasswords && err == ErrCleartextPassword {
+ if err = mc.writeClearAuthPacket(); err != nil {
+ mc.Close()
+ return nil, err
+ }
+ if err = mc.readResultOK(); err != nil {
+ mc.Close()
+ return nil, err
+ }
} else {
mc.Close()
return nil, err
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/driver_test.go b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/driver_test.go
index cb0d5f5ec..f9da416ec 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/driver_test.go
+++ b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/driver_test.go
@@ -1246,6 +1246,30 @@ func TestCollation(t *testing.T) {
}
}
+func TestColumnsWithAlias(t *testing.T) {
+ runTests(t, dsn+"&columnsWithAlias=true", func(dbt *DBTest) {
+ rows := dbt.mustQuery("SELECT 1 AS A")
+ defer rows.Close()
+ cols, _ := rows.Columns()
+ if len(cols) != 1 {
+ t.Fatalf("expected 1 column, got %d", len(cols))
+ }
+ if cols[0] != "A" {
+ t.Fatalf("expected column name \"A\", got \"%s\"", cols[0])
+ }
+ rows.Close()
+
+ rows = dbt.mustQuery("SELECT * FROM (SELECT 1 AS one) AS A")
+ cols, _ = rows.Columns()
+ if len(cols) != 1 {
+ t.Fatalf("expected 1 column, got %d", len(cols))
+ }
+ if cols[0] != "A.one" {
+ t.Fatalf("expected column name \"A.one\", got \"%s\"", cols[0])
+ }
+ })
+}
+
func TestRawBytesResultExceedsBuffer(t *testing.T) {
runTests(t, dsn, func(dbt *DBTest) {
// defaultBufSize from buffer.go
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/errors.go b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/errors.go
index 97d7b3996..44cf30db6 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/errors.go
+++ b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/errors.go
@@ -19,15 +19,17 @@ import (
// Various errors the driver might return. Can change between driver versions.
var (
- ErrInvalidConn = errors.New("Invalid Connection")
- ErrMalformPkt = errors.New("Malformed Packet")
- ErrNoTLS = errors.New("TLS encryption requested but server does not support TLS")
- ErrOldPassword = errors.New("This server only supports the insecure old password authentication. If you still want to use it, please add 'allowOldPasswords=1' to your DSN. See also https://github.com/go-sql-driver/mysql/wiki/old_passwords")
- ErrOldProtocol = errors.New("MySQL-Server does not support required Protocol 41+")
- ErrPktSync = errors.New("Commands out of sync. You can't run this command now")
- ErrPktSyncMul = errors.New("Commands out of sync. Did you run multiple statements at once?")
- ErrPktTooLarge = errors.New("Packet for query is too large. You can change this value on the server by adjusting the 'max_allowed_packet' variable.")
- ErrBusyBuffer = errors.New("Busy buffer")
+ ErrInvalidConn = errors.New("Invalid Connection")
+ ErrMalformPkt = errors.New("Malformed Packet")
+ ErrNoTLS = errors.New("TLS encryption requested but server does not support TLS")
+ ErrOldPassword = errors.New("This user requires old password authentication. If you still want to use it, please add 'allowOldPasswords=1' to your DSN. See also https://github.com/go-sql-driver/mysql/wiki/old_passwords")
+ ErrCleartextPassword = errors.New("This user requires clear text authentication. If you still want to use it, please add 'allowCleartextPasswords=1' to your DSN.")
+ ErrUnknownPlugin = errors.New("The authentication plugin is not supported.")
+ ErrOldProtocol = errors.New("MySQL-Server does not support required Protocol 41+")
+ ErrPktSync = errors.New("Commands out of sync. You can't run this command now")
+ ErrPktSyncMul = errors.New("Commands out of sync. Did you run multiple statements at once?")
+ ErrPktTooLarge = errors.New("Packet for query is too large. You can change this value on the server by adjusting the 'max_allowed_packet' variable.")
+ ErrBusyBuffer = errors.New("Busy buffer")
)
var errLog Logger = log.New(os.Stderr, "[MySQL] ", log.Ldate|log.Ltime|log.Lshortfile)
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/infile.go b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/infile.go
index 121a04c71..84c53a99c 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/infile.go
+++ b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/infile.go
@@ -13,11 +13,14 @@ import (
"io"
"os"
"strings"
+ "sync"
)
var (
- fileRegister map[string]bool
- readerRegister map[string]func() io.Reader
+ fileRegister map[string]bool
+ fileRegisterLock sync.RWMutex
+ readerRegister map[string]func() io.Reader
+ readerRegisterLock sync.RWMutex
)
// RegisterLocalFile adds the given file to the file whitelist,
@@ -32,17 +35,21 @@ var (
// ...
//
func RegisterLocalFile(filePath string) {
+ fileRegisterLock.Lock()
// lazy map init
if fileRegister == nil {
fileRegister = make(map[string]bool)
}
fileRegister[strings.Trim(filePath, `"`)] = true
+ fileRegisterLock.Unlock()
}
// DeregisterLocalFile removes the given filepath from the whitelist.
func DeregisterLocalFile(filePath string) {
+ fileRegisterLock.Lock()
delete(fileRegister, strings.Trim(filePath, `"`))
+ fileRegisterLock.Unlock()
}
// RegisterReaderHandler registers a handler function which is used
@@ -61,18 +68,22 @@ func DeregisterLocalFile(filePath string) {
// ...
//
func RegisterReaderHandler(name string, handler func() io.Reader) {
+ readerRegisterLock.Lock()
// lazy map init
if readerRegister == nil {
readerRegister = make(map[string]func() io.Reader)
}
readerRegister[name] = handler
+ readerRegisterLock.Unlock()
}
// DeregisterReaderHandler removes the ReaderHandler function with
// the given name from the registry.
func DeregisterReaderHandler(name string) {
+ readerRegisterLock.Lock()
delete(readerRegister, name)
+ readerRegisterLock.Unlock()
}
func deferredClose(err *error, closer io.Closer) {
@@ -86,9 +97,15 @@ func (mc *mysqlConn) handleInFileRequest(name string) (err error) {
var rdr io.Reader
var data []byte
- if strings.HasPrefix(name, "Reader::") { // io.Reader
- name = name[8:]
- if handler, inMap := readerRegister[name]; inMap {
+ if idx := strings.Index(name, "Reader::"); idx == 0 || (idx > 0 && name[idx-1] == '/') { // io.Reader
+ // The server might return an an absolute path. See issue #355.
+ name = name[idx+8:]
+
+ readerRegisterLock.RLock()
+ handler, inMap := readerRegister[name]
+ readerRegisterLock.RUnlock()
+
+ if inMap {
rdr = handler()
if rdr != nil {
data = make([]byte, 4+mc.maxWriteSize)
@@ -104,7 +121,10 @@ func (mc *mysqlConn) handleInFileRequest(name string) (err error) {
}
} else { // File
name = strings.Trim(name, `"`)
- if mc.cfg.allowAllFiles || fileRegister[name] {
+ fileRegisterLock.RLock()
+ fr := fileRegister[name]
+ fileRegisterLock.RUnlock()
+ if mc.cfg.allowAllFiles || fr {
var file *os.File
var fi os.FileInfo
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/packets.go b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/packets.go
index 290a3887a..76cb7c84e 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/packets.go
+++ b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/packets.go
@@ -196,7 +196,11 @@ func (mc *mysqlConn) readInitPacket() ([]byte, error) {
// return
//}
//return ErrMalformPkt
- return cipher, nil
+
+ // make a memory safe copy of the cipher slice
+ var b [20]byte
+ copy(b[:], cipher)
+ return b[:], nil
}
// make a memory safe copy of the cipher slice
@@ -214,6 +218,7 @@ func (mc *mysqlConn) writeAuthPacket(cipher []byte) error {
clientLongPassword |
clientTransactions |
clientLocalFiles |
+ clientPluginAuth |
mc.flags&clientLongFlag
if mc.cfg.clientFoundRows {
@@ -228,7 +233,7 @@ func (mc *mysqlConn) writeAuthPacket(cipher []byte) error {
// User Password
scrambleBuff := scramblePassword(cipher, []byte(mc.cfg.passwd))
- pktLen := 4 + 4 + 1 + 23 + len(mc.cfg.user) + 1 + 1 + len(scrambleBuff)
+ pktLen := 4 + 4 + 1 + 23 + len(mc.cfg.user) + 1 + 1 + len(scrambleBuff) + 21 + 1
// To specify a db name
if n := len(mc.cfg.dbname); n > 0 {
@@ -277,7 +282,10 @@ func (mc *mysqlConn) writeAuthPacket(cipher []byte) error {
}
// Filler [23 bytes] (all 0x00)
- pos := 13 + 23
+ pos := 13
+ for ; pos < 13+23; pos++ {
+ data[pos] = 0
+ }
// User [null terminated string]
if len(mc.cfg.user) > 0 {
@@ -294,8 +302,13 @@ func (mc *mysqlConn) writeAuthPacket(cipher []byte) error {
if len(mc.cfg.dbname) > 0 {
pos += copy(data[pos:], mc.cfg.dbname)
data[pos] = 0x00
+ pos++
}
+ // Assume native client during response
+ pos += copy(data[pos:], "mysql_native_password")
+ data[pos] = 0x00
+
// Send Auth packet
return mc.writePacket(data)
}
@@ -306,7 +319,7 @@ func (mc *mysqlConn) writeOldAuthPacket(cipher []byte) error {
// User password
scrambleBuff := scrambleOldPassword(cipher, []byte(mc.cfg.passwd))
- // Calculate the packet lenght and add a tailing 0
+ // Calculate the packet length and add a tailing 0
pktLen := len(scrambleBuff) + 1
data := mc.buf.takeSmallBuffer(4 + pktLen)
if data == nil {
@@ -322,6 +335,25 @@ func (mc *mysqlConn) writeOldAuthPacket(cipher []byte) error {
return mc.writePacket(data)
}
+// Client clear text authentication packet
+// http://dev.mysql.com/doc/internals/en/connection-phase-packets.html#packet-Protocol::AuthSwitchResponse
+func (mc *mysqlConn) writeClearAuthPacket() error {
+ // Calculate the packet length and add a tailing 0
+ pktLen := len(mc.cfg.passwd) + 1
+ data := mc.buf.takeSmallBuffer(4 + pktLen)
+ if data == nil {
+ // can not take the buffer. Something must be wrong with the connection
+ errLog.Print(ErrBusyBuffer)
+ return driver.ErrBadConn
+ }
+
+ // Add the clear password [null terminated string]
+ copy(data[4:], mc.cfg.passwd)
+ data[4+pktLen-1] = 0x00
+
+ return mc.writePacket(data)
+}
+
/******************************************************************************
* Command Packets *
******************************************************************************/
@@ -405,8 +437,20 @@ func (mc *mysqlConn) readResultOK() error {
return mc.handleOkPacket(data)
case iEOF:
- // someone is using old_passwords
- return ErrOldPassword
+ if len(data) > 1 {
+ plugin := string(data[1:bytes.IndexByte(data, 0x00)])
+ if plugin == "mysql_old_password" {
+ // using old_passwords
+ return ErrOldPassword
+ } else if plugin == "mysql_clear_password" {
+ // using clear text password
+ return ErrCleartextPassword
+ } else {
+ return ErrUnknownPlugin
+ }
+ } else {
+ return ErrOldPassword
+ }
default: // Error otherwise
return mc.handleErrorPacket(data)
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/rows.go b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/rows.go
index 9d97d6d4f..ba606e146 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/rows.go
+++ b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/rows.go
@@ -40,7 +40,11 @@ func (rows *mysqlRows) Columns() []string {
columns := make([]string, len(rows.columns))
if rows.mc.cfg.columnsWithAlias {
for i := range columns {
- columns[i] = rows.columns[i].tableName + "." + rows.columns[i].name
+ if tableName := rows.columns[i].tableName; len(tableName) > 0 {
+ columns[i] = tableName + "." + rows.columns[i].name
+ } else {
+ columns[i] = rows.columns[i].name
+ }
}
} else {
for i := range columns {
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/statement.go b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/statement.go
index f9dae03fa..6e869b340 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/statement.go
+++ b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/statement.go
@@ -12,6 +12,7 @@ import (
"database/sql/driver"
"fmt"
"reflect"
+ "strconv"
)
type mysqlStmt struct {
@@ -119,7 +120,7 @@ func (stmt *mysqlStmt) Query(args []driver.Value) (driver.Rows, error) {
type converter struct{}
-func (converter) ConvertValue(v interface{}) (driver.Value, error) {
+func (c converter) ConvertValue(v interface{}) (driver.Value, error) {
if driver.IsValue(v) {
return v, nil
}
@@ -131,7 +132,7 @@ func (converter) ConvertValue(v interface{}) (driver.Value, error) {
if rv.IsNil() {
return nil, nil
}
- return driver.DefaultParameterConverter.ConvertValue(rv.Elem().Interface())
+ return c.ConvertValue(rv.Elem().Interface())
case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
return rv.Int(), nil
case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32:
@@ -139,7 +140,7 @@ func (converter) ConvertValue(v interface{}) (driver.Value, error) {
case reflect.Uint64:
u64 := rv.Uint()
if u64 >= 1<<63 {
- return fmt.Sprintf("%d", u64), nil
+ return strconv.FormatUint(u64, 10), nil
}
return int64(u64), nil
case reflect.Float32, reflect.Float64:
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/utils.go b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/utils.go
index 6693d2970..6a26ad129 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/utils.go
+++ b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/utils.go
@@ -80,8 +80,6 @@ func parseDSN(dsn string) (cfg *config, err error) {
collation: defaultCollation,
}
- // TODO: use strings.IndexByte when we can depend on Go 1.2
-
// [user[:password]@][net[(addr)]]/dbname[?param1=value1&paramN=valueN]
// Find the last '/' (since the password or the net addr might contain a '/')
foundSlash := false
@@ -201,6 +199,14 @@ func parseDSNParams(cfg *config, params string) (err error) {
return fmt.Errorf("Invalid Bool value: %s", value)
}
+ // Use cleartext authentication mode (MySQL 5.5.10+)
+ case "allowCleartextPasswords":
+ var isBool bool
+ cfg.allowCleartextPasswords, isBool = readBool(value)
+ if !isBool {
+ return fmt.Errorf("Invalid Bool value: %s", value)
+ }
+
// Use old authentication mode (pre MySQL 4.1)
case "allowOldPasswords":
var isBool bool
@@ -771,6 +777,10 @@ func skipLengthEncodedString(b []byte) (int, error) {
// returns the number read, whether the value is NULL and the number of bytes read
func readLengthEncodedInteger(b []byte) (uint64, bool, int) {
+ // See issue #349
+ if len(b) == 0 {
+ return 0, true, 1
+ }
switch b[0] {
// 251: NULL
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/utils_test.go b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/utils_test.go
index adb8dcbd1..79fbdd1eb 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/utils_test.go
+++ b/Godeps/_workspace/src/github.com/go-sql-driver/mysql/utils_test.go
@@ -22,19 +22,19 @@ var testDSNs = []struct {
out string
loc *time.Location
}{
- {"username:password@protocol(address)/dbname?param=value", "&{user:username passwd:password net:protocol addr:address dbname:dbname params:map[param:value] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
- {"username:password@protocol(address)/dbname?param=value&columnsWithAlias=true", "&{user:username passwd:password net:protocol addr:address dbname:dbname params:map[param:value] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false clientFoundRows:false columnsWithAlias:true interpolateParams:false}", time.UTC},
- {"user@unix(/path/to/socket)/dbname?charset=utf8", "&{user:user passwd: net:unix addr:/path/to/socket dbname:dbname params:map[charset:utf8] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
- {"user:password@tcp(localhost:5555)/dbname?charset=utf8&tls=true", "&{user:user passwd:password net:tcp addr:localhost:5555 dbname:dbname params:map[charset:utf8] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
- {"user:password@tcp(localhost:5555)/dbname?charset=utf8mb4,utf8&tls=skip-verify", "&{user:user passwd:password net:tcp addr:localhost:5555 dbname:dbname params:map[charset:utf8mb4,utf8] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
- {"user:password@/dbname?loc=UTC&timeout=30s&allowAllFiles=1&clientFoundRows=true&allowOldPasswords=TRUE&collation=utf8mb4_unicode_ci", "&{user:user passwd:password net:tcp addr:127.0.0.1:3306 dbname:dbname params:map[] loc:%p tls:<nil> timeout:30000000000 collation:224 allowAllFiles:true allowOldPasswords:true clientFoundRows:true columnsWithAlias:false interpolateParams:false}", time.UTC},
- {"user:p@ss(word)@tcp([de:ad:be:ef::ca:fe]:80)/dbname?loc=Local", "&{user:user passwd:p@ss(word) net:tcp addr:[de:ad:be:ef::ca:fe]:80 dbname:dbname params:map[] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.Local},
- {"/dbname", "&{user: passwd: net:tcp addr:127.0.0.1:3306 dbname:dbname params:map[] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
- {"@/", "&{user: passwd: net:tcp addr:127.0.0.1:3306 dbname: params:map[] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
- {"/", "&{user: passwd: net:tcp addr:127.0.0.1:3306 dbname: params:map[] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
- {"", "&{user: passwd: net:tcp addr:127.0.0.1:3306 dbname: params:map[] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
- {"user:p@/ssword@/", "&{user:user passwd:p@/ssword net:tcp addr:127.0.0.1:3306 dbname: params:map[] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
- {"unix/?arg=%2Fsome%2Fpath.ext", "&{user: passwd: net:unix addr:/tmp/mysql.sock dbname: params:map[arg:/some/path.ext] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
+ {"username:password@protocol(address)/dbname?param=value", "&{user:username passwd:password net:protocol addr:address dbname:dbname params:map[param:value] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false allowCleartextPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
+ {"username:password@protocol(address)/dbname?param=value&columnsWithAlias=true", "&{user:username passwd:password net:protocol addr:address dbname:dbname params:map[param:value] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false allowCleartextPasswords:false clientFoundRows:false columnsWithAlias:true interpolateParams:false}", time.UTC},
+ {"user@unix(/path/to/socket)/dbname?charset=utf8", "&{user:user passwd: net:unix addr:/path/to/socket dbname:dbname params:map[charset:utf8] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false allowCleartextPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
+ {"user:password@tcp(localhost:5555)/dbname?charset=utf8&tls=true", "&{user:user passwd:password net:tcp addr:localhost:5555 dbname:dbname params:map[charset:utf8] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false allowCleartextPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
+ {"user:password@tcp(localhost:5555)/dbname?charset=utf8mb4,utf8&tls=skip-verify", "&{user:user passwd:password net:tcp addr:localhost:5555 dbname:dbname params:map[charset:utf8mb4,utf8] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false allowCleartextPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
+ {"user:password@/dbname?loc=UTC&timeout=30s&allowAllFiles=1&clientFoundRows=true&allowOldPasswords=TRUE&collation=utf8mb4_unicode_ci", "&{user:user passwd:password net:tcp addr:127.0.0.1:3306 dbname:dbname params:map[] loc:%p tls:<nil> timeout:30000000000 collation:224 allowAllFiles:true allowOldPasswords:true allowCleartextPasswords:false clientFoundRows:true columnsWithAlias:false interpolateParams:false}", time.UTC},
+ {"user:p@ss(word)@tcp([de:ad:be:ef::ca:fe]:80)/dbname?loc=Local", "&{user:user passwd:p@ss(word) net:tcp addr:[de:ad:be:ef::ca:fe]:80 dbname:dbname params:map[] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false allowCleartextPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.Local},
+ {"/dbname", "&{user: passwd: net:tcp addr:127.0.0.1:3306 dbname:dbname params:map[] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false allowCleartextPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
+ {"@/", "&{user: passwd: net:tcp addr:127.0.0.1:3306 dbname: params:map[] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false allowCleartextPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
+ {"/", "&{user: passwd: net:tcp addr:127.0.0.1:3306 dbname: params:map[] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false allowCleartextPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
+ {"", "&{user: passwd: net:tcp addr:127.0.0.1:3306 dbname: params:map[] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false allowCleartextPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
+ {"user:p@/ssword@/", "&{user:user passwd:p@/ssword net:tcp addr:127.0.0.1:3306 dbname: params:map[] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false allowCleartextPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
+ {"unix/?arg=%2Fsome%2Fpath.ext", "&{user: passwd: net:unix addr:/tmp/mysql.sock dbname: params:map[arg:/some/path.ext] loc:%p tls:<nil> timeout:0 collation:33 allowAllFiles:false allowOldPasswords:false allowCleartextPasswords:false clientFoundRows:false columnsWithAlias:false interpolateParams:false}", time.UTC},
}
func TestDSNParser(t *testing.T) {
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/aws/attempt_test.go b/Godeps/_workspace/src/github.com/goamz/goamz/aws/attempt_test.go
index 8ba497715..2f60dca6d 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/aws/attempt_test.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/aws/attempt_test.go
@@ -3,7 +3,7 @@ package aws_test
import (
"time"
- "github.com/goamz/goamz/aws"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/aws"
. "gopkg.in/check.v1"
)
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/aws/aws.go b/Godeps/_workspace/src/github.com/goamz/goamz/aws/aws.go
index cec40be7d..9680072ba 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/aws/aws.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/aws/aws.go
@@ -20,7 +20,7 @@ import (
"os"
"time"
- "github.com/vaughan0/go-ini"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/vaughan0/go-ini"
)
// Defines the valid signers
@@ -41,25 +41,26 @@ type ServiceInfo struct {
//
// See http://goo.gl/d8BP1 for more details.
type Region struct {
- Name string // the canonical name of this region.
- EC2Endpoint string
- S3Endpoint string
- S3BucketEndpoint string // Not needed by AWS S3. Use ${bucket} for bucket name.
- S3LocationConstraint bool // true if this region requires a LocationConstraint declaration.
- S3LowercaseBucket bool // true if the region requires bucket names to be lower case.
- SDBEndpoint string
- SESEndpoint string
- SNSEndpoint string
- SQSEndpoint string
- IAMEndpoint string
- ELBEndpoint string
- DynamoDBEndpoint string
- CloudWatchServicepoint ServiceInfo
- AutoScalingEndpoint string
- RDSEndpoint ServiceInfo
- STSEndpoint string
- CloudFormationEndpoint string
- ECSEndpoint string
+ Name string // the canonical name of this region.
+ EC2Endpoint string
+ S3Endpoint string
+ S3BucketEndpoint string // Not needed by AWS S3. Use ${bucket} for bucket name.
+ S3LocationConstraint bool // true if this region requires a LocationConstraint declaration.
+ S3LowercaseBucket bool // true if the region requires bucket names to be lower case.
+ SDBEndpoint string
+ SESEndpoint string
+ SNSEndpoint string
+ SQSEndpoint string
+ IAMEndpoint string
+ ELBEndpoint string
+ DynamoDBEndpoint string
+ CloudWatchServicepoint ServiceInfo
+ AutoScalingEndpoint string
+ RDSEndpoint ServiceInfo
+ STSEndpoint string
+ CloudFormationEndpoint string
+ ECSEndpoint string
+ DynamoDBStreamsEndpoint string
}
var Regions = map[string]Region{
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/aws/aws_test.go b/Godeps/_workspace/src/github.com/goamz/goamz/aws/aws_test.go
index 0c74a7905..80e93dee5 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/aws/aws_test.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/aws/aws_test.go
@@ -7,7 +7,7 @@ import (
"testing"
"time"
- "github.com/goamz/goamz/aws"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/aws"
. "gopkg.in/check.v1"
)
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/aws/client_test.go b/Godeps/_workspace/src/github.com/goamz/goamz/aws/client_test.go
index c66a86333..2298f43dd 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/aws/client_test.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/aws/client_test.go
@@ -2,7 +2,7 @@ package aws_test
import (
"fmt"
- "github.com/goamz/goamz/aws"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/aws"
"io/ioutil"
"net/http"
"net/http/httptest"
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/aws/regions.go b/Godeps/_workspace/src/github.com/goamz/goamz/aws/regions.go
index 508231e7d..5e18f023d 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/aws/regions.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/aws/regions.go
@@ -20,6 +20,7 @@ var USGovWest = Region{
"https://sts.amazonaws.com",
"https://cloudformation.us-gov-west-1.amazonaws.com",
"https://ecs.us-gov-west-1.amazonaws.com",
+ "https://streams.dynamodb.us-gov-west-1.amazonaws.com",
}
var USEast = Region{
@@ -42,6 +43,7 @@ var USEast = Region{
"https://sts.amazonaws.com",
"https://cloudformation.us-east-1.amazonaws.com",
"https://ecs.us-east-1.amazonaws.com",
+ "https://streams.dynamodb.us-east-1.amazonaws.com",
}
var USWest = Region{
@@ -64,6 +66,7 @@ var USWest = Region{
"https://sts.amazonaws.com",
"https://cloudformation.us-west-1.amazonaws.com",
"https://ecs.us-west-1.amazonaws.com",
+ "https://streams.dynamodb.us-west-1.amazonaws.com",
}
var USWest2 = Region{
@@ -86,6 +89,7 @@ var USWest2 = Region{
"https://sts.amazonaws.com",
"https://cloudformation.us-west-2.amazonaws.com",
"https://ecs.us-west-2.amazonaws.com",
+ "https://streams.dynamodb.us-west-2.amazonaws.com",
}
var EUWest = Region{
@@ -108,6 +112,7 @@ var EUWest = Region{
"https://sts.amazonaws.com",
"https://cloudformation.eu-west-1.amazonaws.com",
"https://ecs.eu-west-1.amazonaws.com",
+ "https://streams.dynamodb.eu-west-1.amazonaws.com",
}
var EUCentral = Region{
@@ -130,6 +135,7 @@ var EUCentral = Region{
"https://sts.amazonaws.com",
"https://cloudformation.eu-central-1.amazonaws.com",
"https://ecs.eu-central-1.amazonaws.com",
+ "https://streams.dynamodb.eu-central-1.amazonaws.com",
}
var APSoutheast = Region{
@@ -152,6 +158,7 @@ var APSoutheast = Region{
"https://sts.amazonaws.com",
"https://cloudformation.ap-southeast-1.amazonaws.com",
"https://ecs.ap-southeast-1.amazonaws.com",
+ "https://streams.dynamodb.ap-southeast-1.amazonaws.com",
}
var APSoutheast2 = Region{
@@ -174,6 +181,7 @@ var APSoutheast2 = Region{
"https://sts.amazonaws.com",
"https://cloudformation.ap-southeast-2.amazonaws.com",
"https://ecs.ap-southeast-2.amazonaws.com",
+ "https://streams.dynamodb.ap-southeast-2.amazonaws.com",
}
var APNortheast = Region{
@@ -196,6 +204,7 @@ var APNortheast = Region{
"https://sts.amazonaws.com",
"https://cloudformation.ap-northeast-1.amazonaws.com",
"https://ecs.ap-northeast-1.amazonaws.com",
+ "https://streams.dynamodb.ap-northeast-1.amazonaws.com",
}
var SAEast = Region{
@@ -218,6 +227,7 @@ var SAEast = Region{
"https://sts.amazonaws.com",
"https://cloudformation.sa-east-1.amazonaws.com",
"https://ecs.sa-east-1.amazonaws.com",
+ "https://streams.dynamodb.sa-east-1.amazonaws.com",
}
var CNNorth = Region{
@@ -240,4 +250,5 @@ var CNNorth = Region{
"https://sts.cn-north-1.amazonaws.com.cn",
"https://cloudformation.cn-north-1.amazonaws.com.cn",
"https://ecs.cn-north-1.amazonaws.com.cn",
+ "https://streams.dynamodb.cn-north-1.amazonaws.com.cn",
}
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/aws/sign_test.go b/Godeps/_workspace/src/github.com/goamz/goamz/aws/sign_test.go
index c6b685e20..aa1bbede1 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/aws/sign_test.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/aws/sign_test.go
@@ -6,7 +6,7 @@ import (
"strings"
"time"
- "github.com/goamz/goamz/aws"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/aws"
. "gopkg.in/check.v1"
)
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/s3/export_test.go b/Godeps/_workspace/src/github.com/goamz/goamz/s3/export_test.go
index 4ff913cde..dc468e510 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/s3/export_test.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/s3/export_test.go
@@ -1,7 +1,7 @@
package s3
import (
- "github.com/goamz/goamz/aws"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/aws"
)
func Sign(auth aws.Auth, method, path string, params, headers map[string][]string) {
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/s3/multi.go b/Godeps/_workspace/src/github.com/goamz/goamz/s3/multi.go
index 1533bda9d..348ead300 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/s3/multi.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/s3/multi.go
@@ -339,9 +339,23 @@ func (p completeParts) Len() int { return len(p) }
func (p completeParts) Less(i, j int) bool { return p[i].PartNumber < p[j].PartNumber }
func (p completeParts) Swap(i, j int) { p[i], p[j] = p[j], p[i] }
+type completeResponse struct {
+ // The element name: should be either CompleteMultipartUploadResult or Error.
+ XMLName xml.Name
+ // If the element was error, then it should have the following:
+ Code string
+ Message string
+ RequestId string
+ HostId string
+}
+
// Complete assembles the given previously uploaded parts into the
// final object. This operation may take several minutes.
//
+// The complete call to AMZ may still fail after returning HTTP 200,
+// so even though it's unusued, the body of the reply must be demarshalled
+// and checked to see whether or not the complete succeeded.
+//
// See http://goo.gl/2Z7Tw for details.
func (m *Multi) Complete(parts []Part) error {
params := map[string][]string{
@@ -356,6 +370,8 @@ func (m *Multi) Complete(parts []Part) error {
if err != nil {
return err
}
+
+ // Setting Content-Length prevents breakage on DreamObjects
for attempt := m.Bucket.S3.AttemptStrategy.Start(); attempt.Next(); {
req := &request{
method: "POST",
@@ -363,11 +379,25 @@ func (m *Multi) Complete(parts []Part) error {
path: m.Key,
params: params,
payload: bytes.NewReader(data),
+ headers: map[string][]string{
+ "Content-Length": []string{strconv.Itoa(len(data))},
+ },
}
- err := m.Bucket.S3.query(req, nil)
+
+ resp := &completeResponse{}
+ err := m.Bucket.S3.query(req, resp)
if shouldRetry(err) && attempt.HasNext() {
continue
}
+ if err == nil && resp.XMLName.Local == "Error" {
+ err = &Error{
+ StatusCode: 200,
+ Code: resp.Code,
+ Message: resp.Message,
+ RequestId: resp.RequestId,
+ HostId: resp.HostId,
+ }
+ }
return err
}
panic("unreachable")
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/s3/multi_test.go b/Godeps/_workspace/src/github.com/goamz/goamz/s3/multi_test.go
index efab302d6..8813276d7 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/s3/multi_test.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/s3/multi_test.go
@@ -6,7 +6,7 @@ import (
"io/ioutil"
"strings"
- "github.com/goamz/goamz/s3"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/s3"
. "gopkg.in/check.v1"
)
@@ -300,7 +300,9 @@ func (s *S) TestMultiComplete(c *C) {
c.Assert(err, IsNil)
err = multi.Complete([]s3.Part{{2, `"ETag2"`, 32}, {1, `"ETag1"`, 64}})
- c.Assert(err, IsNil)
+ // returns InternalErrorDump in the payload, which should manifest as
+ // an error.
+ c.Assert(err, NotNil)
testServer.WaitRequest()
req := testServer.WaitRequest()
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3.go b/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3.go
index 88ef975d1..9b135f3ce 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3.go
@@ -18,7 +18,7 @@ import (
"encoding/base64"
"encoding/xml"
"fmt"
- "github.com/goamz/goamz/aws"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/aws"
"io"
"io/ioutil"
"log"
@@ -1101,10 +1101,14 @@ func shouldRetry(err error) bool {
}
case *Error:
switch e.Code {
- case "InternalError", "NoSuchUpload", "NoSuchBucket":
+ case "InternalError", "NoSuchUpload", "NoSuchBucket", "RequestTimeout":
return true
}
+ // let's handle tls handshake timeout issues and similar temporary errors
+ case net.Error:
+ return e.Temporary()
}
+
return false
}
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3_test.go b/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3_test.go
index 24d4dfcc0..807344258 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3_test.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3_test.go
@@ -7,9 +7,9 @@ import (
"testing"
"time"
- "github.com/goamz/goamz/aws"
- "github.com/goamz/goamz/s3"
"github.com/goamz/goamz/testutil"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/aws"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/s3"
. "gopkg.in/check.v1"
)
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3i_test.go b/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3i_test.go
index 1b898efc4..01344256a 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3i_test.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3i_test.go
@@ -11,9 +11,9 @@ import (
"strings"
"time"
- "github.com/goamz/goamz/aws"
- "github.com/goamz/goamz/s3"
"github.com/goamz/goamz/testutil"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/aws"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/s3"
. "gopkg.in/check.v1"
)
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3t_test.go b/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3t_test.go
index e98c50b29..e9e216f00 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3t_test.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3t_test.go
@@ -1,9 +1,9 @@
package s3_test
import (
- "github.com/goamz/goamz/aws"
- "github.com/goamz/goamz/s3"
- "github.com/goamz/goamz/s3/s3test"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/aws"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/s3"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3test"
. "gopkg.in/check.v1"
)
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3test/server.go b/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3test/server.go
index 10d36924f..6a1866167 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3test/server.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/s3/s3test/server.go
@@ -7,7 +7,7 @@ import (
"encoding/hex"
"encoding/xml"
"fmt"
- "github.com/goamz/goamz/s3"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/s3"
"io"
"io/ioutil"
"log"
@@ -594,6 +594,10 @@ func (objr objectResource) put(a *action) interface{} {
obj.checksum = gotHash
obj.mtime = time.Now()
objr.bucket.objects[objr.name] = obj
+
+ h := a.w.Header()
+ h.Set("ETag", fmt.Sprintf(`"%s"`, hex.EncodeToString(obj.checksum)))
+
return nil
}
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/s3/sign.go b/Godeps/_workspace/src/github.com/goamz/goamz/s3/sign.go
index c8e57a2f7..715f2d8d3 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/s3/sign.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/s3/sign.go
@@ -4,7 +4,7 @@ import (
"crypto/hmac"
"crypto/sha1"
"encoding/base64"
- "github.com/goamz/goamz/aws"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/aws"
"log"
"sort"
"strings"
@@ -39,10 +39,37 @@ var s3ParamsToSign = map[string]bool{
"delete": true,
}
+type keySortableTupleList []keySortableTuple
+
+type keySortableTuple struct {
+ Key string
+ TupleString string
+}
+
+func (l keySortableTupleList) StringSlice() []string {
+ slice := make([]string, len(l))
+ for i, v := range l {
+ slice[i] = v.TupleString
+ }
+ return slice
+}
+
+func (l keySortableTupleList) Len() int {
+ return len(l)
+}
+
+func (l keySortableTupleList) Less(i, j int) bool {
+ return l[i].Key < l[j].Key
+}
+
+func (l keySortableTupleList) Swap(i, j int) {
+ l[i], l[j] = l[j], l[i]
+}
+
func sign(auth aws.Auth, method, canonicalPath string, params, headers map[string][]string) {
var md5, ctype, date, xamz string
var xamzDate bool
- var sarray []string
+ var sarray keySortableTupleList
for k, v := range headers {
k = strings.ToLower(k)
switch k {
@@ -57,7 +84,7 @@ func sign(auth aws.Auth, method, canonicalPath string, params, headers map[strin
default:
if strings.HasPrefix(k, "x-amz-") {
vall := strings.Join(v, ",")
- sarray = append(sarray, k+":"+vall)
+ sarray = append(sarray, keySortableTuple{k, k + ":" + vall})
if k == "x-amz-date" {
xamzDate = true
date = ""
@@ -66,8 +93,8 @@ func sign(auth aws.Auth, method, canonicalPath string, params, headers map[strin
}
}
if len(sarray) > 0 {
- sort.StringSlice(sarray).Sort()
- xamz = strings.Join(sarray, "\n") + "\n"
+ sort.Sort(sarray)
+ xamz = strings.Join(sarray.StringSlice(), "\n") + "\n"
}
expires := false
@@ -83,17 +110,17 @@ func sign(auth aws.Auth, method, canonicalPath string, params, headers map[strin
if s3ParamsToSign[k] {
for _, vi := range v {
if vi == "" {
- sarray = append(sarray, k)
+ sarray = append(sarray, keySortableTuple{k, k})
} else {
// "When signing you do not encode these values."
- sarray = append(sarray, k+"="+vi)
+ sarray = append(sarray, keySortableTuple{k, k + "=" + vi})
}
}
}
}
if len(sarray) > 0 {
- sort.StringSlice(sarray).Sort()
- canonicalPath = canonicalPath + "?" + strings.Join(sarray, "&")
+ sort.Sort(sarray)
+ canonicalPath = canonicalPath + "?" + strings.Join(sarray.StringSlice(), "&")
}
payload := method + "\n" + md5 + "\n" + ctype + "\n" + date + "\n" + xamz + canonicalPath
diff --git a/Godeps/_workspace/src/github.com/goamz/goamz/s3/sign_test.go b/Godeps/_workspace/src/github.com/goamz/goamz/s3/sign_test.go
index 112e1ca3e..32c478ed7 100644
--- a/Godeps/_workspace/src/github.com/goamz/goamz/s3/sign_test.go
+++ b/Godeps/_workspace/src/github.com/goamz/goamz/s3/sign_test.go
@@ -1,8 +1,8 @@
package s3_test
import (
- "github.com/goamz/goamz/aws"
- "github.com/goamz/goamz/s3"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/aws"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/goamz/goamz/s3"
. "gopkg.in/check.v1"
)
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/AUTHORS b/Godeps/_workspace/src/github.com/golang/freetype/AUTHORS
index 5d8b8a6b7..7b70f7768 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/AUTHORS
+++ b/Godeps/_workspace/src/github.com/golang/freetype/AUTHORS
@@ -15,3 +15,4 @@ Google Inc.
Jeff R. Allen <jra@nella.org>
Rémy Oudompheng <oudomphe@phare.normalesup.org>
Roger Peppe <rogpeppe@gmail.com>
+Steven Edwards <steven@stephenwithav.com>
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/CONTRIBUTORS b/Godeps/_workspace/src/github.com/golang/freetype/CONTRIBUTORS
index 32cb6753b..7494b12c3 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/CONTRIBUTORS
+++ b/Godeps/_workspace/src/github.com/golang/freetype/CONTRIBUTORS
@@ -33,3 +33,4 @@ Rémy Oudompheng <oudomphe@phare.normalesup.org> <remyoudompheng@gmail.com>
Rob Pike <r@golang.org>
Roger Peppe <rogpeppe@gmail.com>
Russ Cox <rsc@golang.org>
+Steven Edwards <steven@stephenwithav.com>
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/example/drawer/main.go b/Godeps/_workspace/src/github.com/golang/freetype/example/drawer/main.go
index 4af981f9f..0f57d1767 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/example/drawer/main.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/example/drawer/main.go
@@ -23,9 +23,9 @@ import (
"math"
"os"
- "github.com/golang/freetype/truetype"
- "golang.org/x/image/font"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/golang/freetype/truetype"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
var (
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/example/freetype/main.go b/Godeps/_workspace/src/github.com/golang/freetype/example/freetype/main.go
index 21657a381..50cf246ec 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/example/freetype/main.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/example/freetype/main.go
@@ -22,8 +22,8 @@ import (
"log"
"os"
- "github.com/golang/freetype"
- "golang.org/x/image/font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/golang/freetype"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font"
)
var (
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/example/gamma/main.go b/Godeps/_workspace/src/github.com/golang/freetype/example/gamma/main.go
index 778697f4f..81f476e89 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/example/gamma/main.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/example/gamma/main.go
@@ -19,8 +19,8 @@ import (
"log"
"os"
- "github.com/golang/freetype/raster"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/golang/freetype/raster"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
func p(x, y int) fixed.Point26_6 {
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/example/raster/main.go b/Godeps/_workspace/src/github.com/golang/freetype/example/raster/main.go
index ae9c57f97..ca3cddfdc 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/example/raster/main.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/example/raster/main.go
@@ -20,8 +20,8 @@ import (
"log"
"os"
- "github.com/golang/freetype/raster"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/golang/freetype/raster"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
type node struct {
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/example/round/main.go b/Godeps/_workspace/src/github.com/golang/freetype/example/round/main.go
index 6c3012e62..b849f614f 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/example/round/main.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/example/round/main.go
@@ -26,8 +26,8 @@ import (
"math"
"os"
- "github.com/golang/freetype/raster"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/golang/freetype/raster"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
// pDot returns the dot product p·q.
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/example/truetype/main.go b/Godeps/_workspace/src/github.com/golang/freetype/example/truetype/main.go
index 5fc72f771..e6b4d28eb 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/example/truetype/main.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/example/truetype/main.go
@@ -16,9 +16,9 @@ import (
"io/ioutil"
"log"
- "github.com/golang/freetype/truetype"
- "golang.org/x/image/font"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/golang/freetype/truetype"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
var fontfile = flag.String("fontfile", "../../testdata/luxisr.ttf", "filename of the ttf font")
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/freetype.go b/Godeps/_workspace/src/github.com/golang/freetype/freetype.go
index bec01f6b7..27d1c5162 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/freetype.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/freetype.go
@@ -13,10 +13,10 @@ import (
"image"
"image/draw"
- "github.com/golang/freetype/raster"
- "github.com/golang/freetype/truetype"
- "golang.org/x/image/font"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/golang/freetype/raster"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/golang/freetype/truetype"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
// These constants determine the size of the glyph cache. The cache is keyed
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/raster/geom.go b/Godeps/_workspace/src/github.com/golang/freetype/raster/geom.go
index f3696ea98..1a2b8a77b 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/raster/geom.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/raster/geom.go
@@ -9,7 +9,7 @@ import (
"fmt"
"math"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
// maxAbs returns the maximum of abs(a) and abs(b).
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/raster/raster.go b/Godeps/_workspace/src/github.com/golang/freetype/raster/raster.go
index 995925e2a..859bee657 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/raster/raster.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/raster/raster.go
@@ -18,7 +18,7 @@ package raster
import (
"strconv"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
// A cell is part of a linked list (for a given yi co-ordinate) of accumulated
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/raster/stroke.go b/Godeps/_workspace/src/github.com/golang/freetype/raster/stroke.go
index 8d4379757..fa9ba640b 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/raster/stroke.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/raster/stroke.go
@@ -6,7 +6,7 @@
package raster
import (
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
// Two points are considered practically equal if the square of the distance
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/truetype/face.go b/Godeps/_workspace/src/github.com/golang/freetype/truetype/face.go
index d64a014c3..e800cd1bd 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/truetype/face.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/truetype/face.go
@@ -8,9 +8,9 @@ package truetype
import (
"image"
- "github.com/golang/freetype/raster"
- "golang.org/x/image/font"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/golang/freetype/raster"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
func powerOf2(i int) bool {
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/truetype/face_test.go b/Godeps/_workspace/src/github.com/golang/freetype/truetype/face_test.go
index 856581dff..6833e18bf 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/truetype/face_test.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/truetype/face_test.go
@@ -12,8 +12,8 @@ import (
"strings"
"testing"
- "golang.org/x/image/font"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
func BenchmarkDrawString(b *testing.B) {
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/truetype/glyph.go b/Godeps/_workspace/src/github.com/golang/freetype/truetype/glyph.go
index c2935a58e..eca2623d1 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/truetype/glyph.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/truetype/glyph.go
@@ -6,8 +6,8 @@
package truetype
import (
- "golang.org/x/image/font"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
// TODO: implement VerticalHinting.
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/truetype/hint.go b/Godeps/_workspace/src/github.com/golang/freetype/truetype/hint.go
index 0315de511..e4eaf9294 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/truetype/hint.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/truetype/hint.go
@@ -12,7 +12,7 @@ import (
"errors"
"math"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
const (
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/truetype/hint_test.go b/Godeps/_workspace/src/github.com/golang/freetype/truetype/hint_test.go
index 7eb43dde0..d218bb0f6 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/truetype/hint_test.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/truetype/hint_test.go
@@ -10,7 +10,7 @@ import (
"strings"
"testing"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
func TestBytecode(t *testing.T) {
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/truetype/truetype.go b/Godeps/_workspace/src/github.com/golang/freetype/truetype/truetype.go
index 7d166ca77..c69194d33 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/truetype/truetype.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/truetype/truetype.go
@@ -20,12 +20,49 @@ package truetype
import (
"fmt"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
// An Index is a Font's index of a rune.
type Index uint16
+// A NameID identifies a name table entry.
+//
+// See https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6name.html
+type NameID uint16
+
+const (
+ NameIDCopyright NameID = 0
+ NameIDFontFamily = 1
+ NameIDFontSubfamily = 2
+ NameIDUniqueSubfamilyID = 3
+ NameIDFontFullName = 4
+ NameIDNameTableVersion = 5
+ NameIDPostscriptName = 6
+ NameIDTrademarkNotice = 7
+ NameIDManufacturerName = 8
+ NameIDDesignerName = 9
+ NameIDFontDescription = 10
+ NameIDFontVendorURL = 11
+ NameIDFontDesignerURL = 12
+ NameIDFontLicense = 13
+ NameIDFontLicenseURL = 14
+ NameIDPreferredFamily = 16
+ NameIDPreferredSubfamily = 17
+ NameIDCompatibleName = 18
+ NameIDSampleText = 19
+)
+
+const (
+ // A 32-bit encoding consists of a most-significant 16-bit Platform ID and a
+ // least-significant 16-bit Platform Specific ID. The magic numbers are
+ // specified at https://www.microsoft.com/typography/otspec/name.htm
+ unicodeEncoding = 0x00000003 // PID = 0 (Unicode), PSID = 3 (Unicode 2.0)
+ microsoftSymbolEncoding = 0x00030000 // PID = 3 (Microsoft), PSID = 0 (Symbol)
+ microsoftUCS2Encoding = 0x00030001 // PID = 3 (Microsoft), PSID = 1 (UCS-2)
+ microsoftUCS4Encoding = 0x0003000a // PID = 3 (Microsoft), PSID = 10 (UCS-4)
+)
+
// An HMetric holds the horizontal metrics of a single glyph.
type HMetric struct {
AdvanceWidth, LeftSideBearing fixed.Int26_6
@@ -78,6 +115,51 @@ func readTable(ttf []byte, offsetLength []byte) ([]byte, error) {
return ttf[offset:end], nil
}
+// parseSubtables returns the offset and platformID of the best subtable in
+// table, where best favors a Unicode cmap encoding, and failing that, a
+// Microsoft cmap encoding. offset is the offset of the first subtable in
+// table, and size is the size of each subtable.
+//
+// If pred is non-nil, then only subtables that satisfy that predicate will be
+// considered.
+func parseSubtables(table []byte, name string, offset, size int, pred func([]byte) bool) (
+ bestOffset int, bestPID uint32, retErr error) {
+
+ if len(table) < 4 {
+ return 0, 0, FormatError(name + " too short")
+ }
+ nSubtables := int(u16(table, 2))
+ if len(table) < size*nSubtables+offset {
+ return 0, 0, FormatError(name + " too short")
+ }
+ ok := false
+ for i := 0; i < nSubtables; i, offset = i+1, offset+size {
+ if pred != nil && !pred(table[offset:]) {
+ continue
+ }
+ // We read the 16-bit Platform ID and 16-bit Platform Specific ID as a single uint32.
+ // All values are big-endian.
+ pidPsid := u32(table, offset)
+ // We prefer the Unicode cmap encoding. Failing to find that, we fall
+ // back onto the Microsoft cmap encoding.
+ if pidPsid == unicodeEncoding {
+ bestOffset, bestPID, ok = offset, pidPsid>>16, true
+ break
+
+ } else if pidPsid == microsoftSymbolEncoding ||
+ pidPsid == microsoftUCS2Encoding ||
+ pidPsid == microsoftUCS4Encoding {
+
+ bestOffset, bestPID, ok = offset, pidPsid>>16, true
+ // We don't break out of the for loop, so that Unicode can override Microsoft.
+ }
+ }
+ if !ok {
+ return 0, 0, UnsupportedError(name + " encoding")
+ }
+ return bestOffset, bestPID, nil
+}
+
const (
locaOffsetFormatUnknown int = iota
locaOffsetFormatShort
@@ -93,7 +175,7 @@ type cm struct {
type Font struct {
// Tables sliced from the TTF data. The different tables are documented
// at http://developer.apple.com/fonts/TTRefMan/RM06/Chap6.html
- cmap, cvt, fpgm, glyf, hdmx, head, hhea, hmtx, kern, loca, maxp, os2, prep, vmtx []byte
+ cmap, cvt, fpgm, glyf, hdmx, head, hhea, hmtx, kern, loca, maxp, name, os2, prep, vmtx []byte
cmapIndexes []byte
@@ -112,46 +194,13 @@ func (f *Font) parseCmap() error {
cmapFormat4 = 4
cmapFormat12 = 12
languageIndependent = 0
-
- // A 32-bit encoding consists of a most-significant 16-bit Platform ID and a
- // least-significant 16-bit Platform Specific ID. The magic numbers are
- // specified at https://www.microsoft.com/typography/otspec/name.htm
- unicodeEncoding = 0x00000003 // PID = 0 (Unicode), PSID = 3 (Unicode 2.0)
- microsoftSymbolEncoding = 0x00030000 // PID = 3 (Microsoft), PSID = 0 (Symbol)
- microsoftUCS2Encoding = 0x00030001 // PID = 3 (Microsoft), PSID = 1 (UCS-2)
- microsoftUCS4Encoding = 0x0003000a // PID = 3 (Microsoft), PSID = 10 (UCS-4)
)
- if len(f.cmap) < 4 {
- return FormatError("cmap too short")
- }
- nsubtab := int(u16(f.cmap, 2))
- if len(f.cmap) < 8*nsubtab+4 {
- return FormatError("cmap too short")
- }
- offset, found, x := 0, false, 4
- for i := 0; i < nsubtab; i++ {
- // We read the 16-bit Platform ID and 16-bit Platform Specific ID as a single uint32.
- // All values are big-endian.
- pidPsid, o := u32(f.cmap, x), u32(f.cmap, x+4)
- x += 8
- // We prefer the Unicode cmap encoding. Failing to find that, we fall
- // back onto the Microsoft cmap encoding.
- if pidPsid == unicodeEncoding {
- offset, found = int(o), true
- break
-
- } else if pidPsid == microsoftSymbolEncoding ||
- pidPsid == microsoftUCS2Encoding ||
- pidPsid == microsoftUCS4Encoding {
-
- offset, found = int(o), true
- // We don't break out of the for loop, so that Unicode can override Microsoft.
- }
- }
- if !found {
- return UnsupportedError("cmap encoding")
+ offset, _, err := parseSubtables(f.cmap, "cmap", 4, 8, nil)
+ if err != nil {
+ return err
}
+ offset = int(u32(f.cmap, offset+4))
if offset <= 0 || offset > len(f.cmap) {
return FormatError("bad cmap offset")
}
@@ -345,6 +394,44 @@ func (f *Font) Index(x rune) Index {
return 0
}
+// Name returns the Font's name value for the given NameID. It returns "" if
+// there was an error, or if that name was not found.
+func (f *Font) Name(id NameID) string {
+ x, platformID, err := parseSubtables(f.name, "name", 6, 12, func(b []byte) bool {
+ return NameID(u16(b, 6)) == id
+ })
+ if err != nil {
+ return ""
+ }
+ offset, length := u16(f.name, 4)+u16(f.name, x+10), u16(f.name, x+8)
+ // Return the ASCII value of the encoded string.
+ // The string is encoded as UTF-16 on non-Apple platformIDs; Apple is platformID 1.
+ src := f.name[offset : offset+length]
+ var dst []byte
+ if platformID != 1 { // UTF-16.
+ if len(src)&1 != 0 {
+ return ""
+ }
+ dst = make([]byte, len(src)/2)
+ for i := range dst {
+ dst[i] = printable(u16(src, 2*i))
+ }
+ } else { // ASCII.
+ dst = make([]byte, len(src))
+ for i, c := range src {
+ dst[i] = printable(uint16(c))
+ }
+ }
+ return string(dst)
+}
+
+func printable(r uint16) byte {
+ if 0x20 <= r && r < 0x7f {
+ return byte(r)
+ }
+ return '?'
+}
+
// unscaledHMetric returns the unscaled horizontal metrics for the glyph with
// the given index.
func (f *Font) unscaledHMetric(i Index) (h HMetric) {
@@ -518,6 +605,8 @@ func parse(ttf []byte, offset int) (font *Font, err error) {
f.loca, err = readTable(ttf, ttf[x+8:x+16])
case "maxp":
f.maxp, err = readTable(ttf, ttf[x+8:x+16])
+ case "name":
+ f.name, err = readTable(ttf, ttf[x+8:x+16])
case "OS/2":
f.os2, err = readTable(ttf, ttf[x+8:x+16])
case "prep":
diff --git a/Godeps/_workspace/src/github.com/golang/freetype/truetype/truetype_test.go b/Godeps/_workspace/src/github.com/golang/freetype/truetype/truetype_test.go
index ce7f1277a..2382ab112 100644
--- a/Godeps/_workspace/src/github.com/golang/freetype/truetype/truetype_test.go
+++ b/Godeps/_workspace/src/github.com/golang/freetype/truetype/truetype_test.go
@@ -15,8 +15,8 @@ import (
"strings"
"testing"
- "golang.org/x/image/font"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
func parseTestdataFont(name string) (f *Font, testdataIsOptional bool, err error) {
@@ -211,6 +211,29 @@ func TestIndex(t *testing.T) {
}
}
+func TestName(t *testing.T) {
+ testCases := map[string]string{
+ "luximr": "Luxi Mono",
+ "luxirr": "Luxi Serif",
+ "luxisr": "Luxi Sans",
+ }
+
+ for name, want := range testCases {
+ f, testdataIsOptional, err := parseTestdataFont(name)
+ if err != nil {
+ if testdataIsOptional {
+ t.Log(err)
+ } else {
+ t.Fatal(err)
+ }
+ continue
+ }
+ if got := f.Name(NameIDFontFamily); got != want {
+ t.Errorf("%s: got %q, want %q", name, got, want)
+ }
+ }
+}
+
type scalingTestData struct {
advanceWidth fixed.Int26_6
bounds fixed.Rectangle26_6
diff --git a/Godeps/_workspace/src/github.com/gorilla/context/.travis.yml b/Godeps/_workspace/src/github.com/gorilla/context/.travis.yml
index 6796581fb..f983b60c6 100644
--- a/Godeps/_workspace/src/github.com/gorilla/context/.travis.yml
+++ b/Godeps/_workspace/src/github.com/gorilla/context/.travis.yml
@@ -1,9 +1,8 @@
language: go
+sudo: false
go:
- - 1.0
- - 1.1
- - 1.2
- 1.3
- 1.4
+ - 1.5
- tip
diff --git a/Godeps/_workspace/src/github.com/gorilla/mux/.travis.yml b/Godeps/_workspace/src/github.com/gorilla/mux/.travis.yml
index d87d46576..83ab8f59d 100644
--- a/Godeps/_workspace/src/github.com/gorilla/mux/.travis.yml
+++ b/Godeps/_workspace/src/github.com/gorilla/mux/.travis.yml
@@ -1,7 +1,14 @@
language: go
-
+sudo: false
go:
- - 1.0
- - 1.1
- - 1.2
+ - 1.3
+ - 1.4
+ - 1.5
- tip
+install:
+ - go get golang.org/x/tools/cmd/vet
+script:
+ - go get -t -v ./...
+ - diff -u <(echo -n) <(gofmt -d -s .)
+ - go tool vet .
+ - go test -v -race ./...
diff --git a/Godeps/_workspace/src/github.com/gorilla/mux/README.md b/Godeps/_workspace/src/github.com/gorilla/mux/README.md
index e60301b03..55dd4e59a 100644
--- a/Godeps/_workspace/src/github.com/gorilla/mux/README.md
+++ b/Godeps/_workspace/src/github.com/gorilla/mux/README.md
@@ -1,7 +1,235 @@
mux
===
+[![GoDoc](https://godoc.org/github.com/gorilla/mux?status.svg)](https://godoc.org/github.com/gorilla/mux)
[![Build Status](https://travis-ci.org/gorilla/mux.png?branch=master)](https://travis-ci.org/gorilla/mux)
-gorilla/mux is a powerful URL router and dispatcher.
+Package gorilla/mux implements a request router and dispatcher.
-Read the full documentation here: http://www.gorillatoolkit.org/pkg/mux
+The name mux stands for "HTTP request multiplexer". Like the standard
+http.ServeMux, mux.Router matches incoming requests against a list of
+registered routes and calls a handler for the route that matches the URL
+or other conditions. The main features are:
+
+ * Requests can be matched based on URL host, path, path prefix, schemes,
+ header and query values, HTTP methods or using custom matchers.
+ * URL hosts and paths can have variables with an optional regular
+ expression.
+ * Registered URLs can be built, or "reversed", which helps maintaining
+ references to resources.
+ * Routes can be used as subrouters: nested routes are only tested if the
+ parent route matches. This is useful to define groups of routes that
+ share common conditions like a host, a path prefix or other repeated
+ attributes. As a bonus, this optimizes request matching.
+ * It implements the http.Handler interface so it is compatible with the
+ standard http.ServeMux.
+
+Let's start registering a couple of URL paths and handlers:
+
+ func main() {
+ r := mux.NewRouter()
+ r.HandleFunc("/", HomeHandler)
+ r.HandleFunc("/products", ProductsHandler)
+ r.HandleFunc("/articles", ArticlesHandler)
+ http.Handle("/", r)
+ }
+
+Here we register three routes mapping URL paths to handlers. This is
+equivalent to how http.HandleFunc() works: if an incoming request URL matches
+one of the paths, the corresponding handler is called passing
+(http.ResponseWriter, *http.Request) as parameters.
+
+Paths can have variables. They are defined using the format {name} or
+{name:pattern}. If a regular expression pattern is not defined, the matched
+variable will be anything until the next slash. For example:
+
+ r := mux.NewRouter()
+ r.HandleFunc("/products/{key}", ProductHandler)
+ r.HandleFunc("/articles/{category}/", ArticlesCategoryHandler)
+ r.HandleFunc("/articles/{category}/{id:[0-9]+}", ArticleHandler)
+
+The names are used to create a map of route variables which can be retrieved
+calling mux.Vars():
+
+ vars := mux.Vars(request)
+ category := vars["category"]
+
+And this is all you need to know about the basic usage. More advanced options
+are explained below.
+
+Routes can also be restricted to a domain or subdomain. Just define a host
+pattern to be matched. They can also have variables:
+
+ r := mux.NewRouter()
+ // Only matches if domain is "www.example.com".
+ r.Host("www.example.com")
+ // Matches a dynamic subdomain.
+ r.Host("{subdomain:[a-z]+}.domain.com")
+
+There are several other matchers that can be added. To match path prefixes:
+
+ r.PathPrefix("/products/")
+
+...or HTTP methods:
+
+ r.Methods("GET", "POST")
+
+...or URL schemes:
+
+ r.Schemes("https")
+
+...or header values:
+
+ r.Headers("X-Requested-With", "XMLHttpRequest")
+
+...or query values:
+
+ r.Queries("key", "value")
+
+...or to use a custom matcher function:
+
+ r.MatcherFunc(func(r *http.Request, rm *RouteMatch) bool {
+ return r.ProtoMajor == 0
+ })
+
+...and finally, it is possible to combine several matchers in a single route:
+
+ r.HandleFunc("/products", ProductsHandler).
+ Host("www.example.com").
+ Methods("GET").
+ Schemes("http")
+
+Setting the same matching conditions again and again can be boring, so we have
+a way to group several routes that share the same requirements.
+We call it "subrouting".
+
+For example, let's say we have several URLs that should only match when the
+host is `www.example.com`. Create a route for that host and get a "subrouter"
+from it:
+
+ r := mux.NewRouter()
+ s := r.Host("www.example.com").Subrouter()
+
+Then register routes in the subrouter:
+
+ s.HandleFunc("/products/", ProductsHandler)
+ s.HandleFunc("/products/{key}", ProductHandler)
+ s.HandleFunc("/articles/{category}/{id:[0-9]+}"), ArticleHandler)
+
+The three URL paths we registered above will only be tested if the domain is
+`www.example.com`, because the subrouter is tested first. This is not
+only convenient, but also optimizes request matching. You can create
+subrouters combining any attribute matchers accepted by a route.
+
+Subrouters can be used to create domain or path "namespaces": you define
+subrouters in a central place and then parts of the app can register its
+paths relatively to a given subrouter.
+
+There's one more thing about subroutes. When a subrouter has a path prefix,
+the inner routes use it as base for their paths:
+
+ r := mux.NewRouter()
+ s := r.PathPrefix("/products").Subrouter()
+ // "/products/"
+ s.HandleFunc("/", ProductsHandler)
+ // "/products/{key}/"
+ s.HandleFunc("/{key}/", ProductHandler)
+ // "/products/{key}/details"
+ s.HandleFunc("/{key}/details", ProductDetailsHandler)
+
+Now let's see how to build registered URLs.
+
+Routes can be named. All routes that define a name can have their URLs built,
+or "reversed". We define a name calling Name() on a route. For example:
+
+ r := mux.NewRouter()
+ r.HandleFunc("/articles/{category}/{id:[0-9]+}", ArticleHandler).
+ Name("article")
+
+To build a URL, get the route and call the URL() method, passing a sequence of
+key/value pairs for the route variables. For the previous route, we would do:
+
+ url, err := r.Get("article").URL("category", "technology", "id", "42")
+
+...and the result will be a url.URL with the following path:
+
+ "/articles/technology/42"
+
+This also works for host variables:
+
+ r := mux.NewRouter()
+ r.Host("{subdomain}.domain.com").
+ Path("/articles/{category}/{id:[0-9]+}").
+ HandlerFunc(ArticleHandler).
+ Name("article")
+
+ // url.String() will be "http://news.domain.com/articles/technology/42"
+ url, err := r.Get("article").URL("subdomain", "news",
+ "category", "technology",
+ "id", "42")
+
+All variables defined in the route are required, and their values must
+conform to the corresponding patterns. These requirements guarantee that a
+generated URL will always match a registered route -- the only exception is
+for explicitly defined "build-only" routes which never match.
+
+Regex support also exists for matching Headers within a route. For example, we could do:
+
+ r.HeadersRegexp("Content-Type", "application/(text|json)")
+
+...and the route will match both requests with a Content-Type of `application/json` as well as
+`application/text`
+
+There's also a way to build only the URL host or path for a route:
+use the methods URLHost() or URLPath() instead. For the previous route,
+we would do:
+
+ // "http://news.domain.com/"
+ host, err := r.Get("article").URLHost("subdomain", "news")
+
+ // "/articles/technology/42"
+ path, err := r.Get("article").URLPath("category", "technology", "id", "42")
+
+And if you use subrouters, host and path defined separately can be built
+as well:
+
+ r := mux.NewRouter()
+ s := r.Host("{subdomain}.domain.com").Subrouter()
+ s.Path("/articles/{category}/{id:[0-9]+}").
+ HandlerFunc(ArticleHandler).
+ Name("article")
+
+ // "http://news.domain.com/articles/technology/42"
+ url, err := r.Get("article").URL("subdomain", "news",
+ "category", "technology",
+ "id", "42")
+
+## Full Example
+
+Here's a complete, runnable example of a small mux based server:
+
+```go
+package main
+
+import (
+ "net/http"
+
+ "github.com/gorilla/mux"
+)
+
+func YourHandler(w http.ResponseWriter, r *http.Request) {
+ w.Write([]byte("Gorilla!\n"))
+}
+
+func main() {
+ r := mux.NewRouter()
+ // Routes consist of a path and a handler function.
+ r.HandleFunc("/", YourHandler)
+
+ // Bind to a port and pass our router in
+ http.ListenAndServe(":8000", r)
+}
+```
+
+## License
+
+BSD licensed. See the LICENSE file for details.
diff --git a/Godeps/_workspace/src/github.com/gorilla/mux/doc.go b/Godeps/_workspace/src/github.com/gorilla/mux/doc.go
index 9a5e381a2..49798cb5c 100644
--- a/Godeps/_workspace/src/github.com/gorilla/mux/doc.go
+++ b/Godeps/_workspace/src/github.com/gorilla/mux/doc.go
@@ -60,8 +60,8 @@ Routes can also be restricted to a domain or subdomain. Just define a host
pattern to be matched. They can also have variables:
r := mux.NewRouter()
- // Only matches if domain is "www.domain.com".
- r.Host("www.domain.com")
+ // Only matches if domain is "www.example.com".
+ r.Host("www.example.com")
// Matches a dynamic subdomain.
r.Host("{subdomain:[a-z]+}.domain.com")
@@ -94,7 +94,7 @@ There are several other matchers that can be added. To match path prefixes:
...and finally, it is possible to combine several matchers in a single route:
r.HandleFunc("/products", ProductsHandler).
- Host("www.domain.com").
+ Host("www.example.com").
Methods("GET").
Schemes("http")
@@ -103,11 +103,11 @@ a way to group several routes that share the same requirements.
We call it "subrouting".
For example, let's say we have several URLs that should only match when the
-host is "www.domain.com". Create a route for that host and get a "subrouter"
+host is "www.example.com". Create a route for that host and get a "subrouter"
from it:
r := mux.NewRouter()
- s := r.Host("www.domain.com").Subrouter()
+ s := r.Host("www.example.com").Subrouter()
Then register routes in the subrouter:
@@ -116,7 +116,7 @@ Then register routes in the subrouter:
s.HandleFunc("/articles/{category}/{id:[0-9]+}"), ArticleHandler)
The three URL paths we registered above will only be tested if the domain is
-"www.domain.com", because the subrouter is tested first. This is not
+"www.example.com", because the subrouter is tested first. This is not
only convenient, but also optimizes request matching. You can create
subrouters combining any attribute matchers accepted by a route.
@@ -172,6 +172,13 @@ conform to the corresponding patterns. These requirements guarantee that a
generated URL will always match a registered route -- the only exception is
for explicitly defined "build-only" routes which never match.
+Regex support also exists for matching Headers within a route. For example, we could do:
+
+ r.HeadersRegexp("Content-Type", "application/(text|json)")
+
+...and the route will match both requests with a Content-Type of `application/json` as well as
+`application/text`
+
There's also a way to build only the URL host or path for a route:
use the methods URLHost() or URLPath() instead. For the previous route,
we would do:
diff --git a/Godeps/_workspace/src/github.com/gorilla/mux/mux.go b/Godeps/_workspace/src/github.com/gorilla/mux/mux.go
index af31d2395..3c51cca5e 100644
--- a/Godeps/_workspace/src/github.com/gorilla/mux/mux.go
+++ b/Godeps/_workspace/src/github.com/gorilla/mux/mux.go
@@ -5,11 +5,13 @@
package mux
import (
+ "errors"
"fmt"
"net/http"
"path"
+ "regexp"
- "github.com/gorilla/context"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/gorilla/context"
)
// NewRouter returns a new router instance.
@@ -68,7 +70,7 @@ func (r *Router) ServeHTTP(w http.ResponseWriter, req *http.Request) {
// Clean path to canonical form and redirect.
if p := cleanPath(req.URL.Path); p != req.URL.Path {
- // Added 3 lines (Philip Schlump) - It was droping the query string and #whatever from query.
+ // Added 3 lines (Philip Schlump) - It was dropping the query string and #whatever from query.
// This matches with fix in go 1.2 r.c. 4 for same problem. Go Issue:
// http://code.google.com/p/go/issues/detail?id=5252
url := *req.URL
@@ -237,6 +239,52 @@ func (r *Router) BuildVarsFunc(f BuildVarsFunc) *Route {
return r.NewRoute().BuildVarsFunc(f)
}
+// Walk walks the router and all its sub-routers, calling walkFn for each route
+// in the tree. The routes are walked in the order they were added. Sub-routers
+// are explored depth-first.
+func (r *Router) Walk(walkFn WalkFunc) error {
+ return r.walk(walkFn, []*Route{})
+}
+
+// SkipRouter is used as a return value from WalkFuncs to indicate that the
+// router that walk is about to descend down to should be skipped.
+var SkipRouter = errors.New("skip this router")
+
+// WalkFunc is the type of the function called for each route visited by Walk.
+// At every invocation, it is given the current route, and the current router,
+// and a list of ancestor routes that lead to the current route.
+type WalkFunc func(route *Route, router *Router, ancestors []*Route) error
+
+func (r *Router) walk(walkFn WalkFunc, ancestors []*Route) error {
+ for _, t := range r.routes {
+ if t.regexp == nil || t.regexp.path == nil || t.regexp.path.template == "" {
+ continue
+ }
+
+ err := walkFn(t, r, ancestors)
+ if err == SkipRouter {
+ continue
+ }
+ for _, sr := range t.matchers {
+ if h, ok := sr.(*Router); ok {
+ err := h.walk(walkFn, ancestors)
+ if err != nil {
+ return err
+ }
+ }
+ }
+ if h, ok := t.handler.(*Router); ok {
+ ancestors = append(ancestors, t)
+ err := h.walk(walkFn, ancestors)
+ if err != nil {
+ return err
+ }
+ ancestors = ancestors[:len(ancestors)-1]
+ }
+ }
+ return nil
+}
+
// ----------------------------------------------------------------------------
// Context
// ----------------------------------------------------------------------------
@@ -264,6 +312,10 @@ func Vars(r *http.Request) map[string]string {
}
// CurrentRoute returns the matched route for the current request, if any.
+// This only works when called inside the handler of the matched route
+// because the matched route is stored in the request context which is cleared
+// after the handler returns, unless the KeepContext option is set on the
+// Router.
func CurrentRoute(r *http.Request) *Route {
if rv := context.Get(r, routeKey); rv != nil {
return rv.(*Route)
@@ -313,13 +365,24 @@ func uniqueVars(s1, s2 []string) error {
return nil
}
-// mapFromPairs converts variadic string parameters to a string map.
-func mapFromPairs(pairs ...string) (map[string]string, error) {
+// checkPairs returns the count of strings passed in, and an error if
+// the count is not an even number.
+func checkPairs(pairs ...string) (int, error) {
length := len(pairs)
if length%2 != 0 {
- return nil, fmt.Errorf(
+ return length, fmt.Errorf(
"mux: number of parameters must be multiple of 2, got %v", pairs)
}
+ return length, nil
+}
+
+// mapFromPairsToString converts variadic string parameters to a
+// string to string map.
+func mapFromPairsToString(pairs ...string) (map[string]string, error) {
+ length, err := checkPairs(pairs...)
+ if err != nil {
+ return nil, err
+ }
m := make(map[string]string, length/2)
for i := 0; i < length; i += 2 {
m[pairs[i]] = pairs[i+1]
@@ -327,6 +390,24 @@ func mapFromPairs(pairs ...string) (map[string]string, error) {
return m, nil
}
+// mapFromPairsToRegex converts variadic string paramers to a
+// string to regex map.
+func mapFromPairsToRegex(pairs ...string) (map[string]*regexp.Regexp, error) {
+ length, err := checkPairs(pairs...)
+ if err != nil {
+ return nil, err
+ }
+ m := make(map[string]*regexp.Regexp, length/2)
+ for i := 0; i < length; i += 2 {
+ regex, err := regexp.Compile(pairs[i+1])
+ if err != nil {
+ return nil, err
+ }
+ m[pairs[i]] = regex
+ }
+ return m, nil
+}
+
// matchInArray returns true if the given string value is in the array.
func matchInArray(arr []string, value string) bool {
for _, v := range arr {
@@ -337,9 +418,8 @@ func matchInArray(arr []string, value string) bool {
return false
}
-// matchMap returns true if the given key/value pairs exist in a given map.
-func matchMap(toCheck map[string]string, toMatch map[string][]string,
- canonicalKey bool) bool {
+// matchMapWithString returns true if the given key/value pairs exist in a given map.
+func matchMapWithString(toCheck map[string]string, toMatch map[string][]string, canonicalKey bool) bool {
for k, v := range toCheck {
// Check if key exists.
if canonicalKey {
@@ -364,3 +444,31 @@ func matchMap(toCheck map[string]string, toMatch map[string][]string,
}
return true
}
+
+// matchMapWithRegex returns true if the given key/value pairs exist in a given map compiled against
+// the given regex
+func matchMapWithRegex(toCheck map[string]*regexp.Regexp, toMatch map[string][]string, canonicalKey bool) bool {
+ for k, v := range toCheck {
+ // Check if key exists.
+ if canonicalKey {
+ k = http.CanonicalHeaderKey(k)
+ }
+ if values := toMatch[k]; values == nil {
+ return false
+ } else if v != nil {
+ // If value was defined as an empty string we only check that the
+ // key exists. Otherwise we also check for equality.
+ valueExists := false
+ for _, value := range values {
+ if v.MatchString(value) {
+ valueExists = true
+ break
+ }
+ }
+ if !valueExists {
+ return false
+ }
+ }
+ }
+ return true
+}
diff --git a/Godeps/_workspace/src/github.com/gorilla/mux/mux_test.go b/Godeps/_workspace/src/github.com/gorilla/mux/mux_test.go
index 6b2c1d22f..0f9bde0c1 100644
--- a/Godeps/_workspace/src/github.com/gorilla/mux/mux_test.go
+++ b/Godeps/_workspace/src/github.com/gorilla/mux/mux_test.go
@@ -7,11 +7,24 @@ package mux
import (
"fmt"
"net/http"
+ "strings"
"testing"
- "github.com/gorilla/context"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/gorilla/context"
)
+func (r *Route) GoString() string {
+ matchers := make([]string, len(r.matchers))
+ for i, m := range r.matchers {
+ matchers[i] = fmt.Sprintf("%#v", m)
+ }
+ return fmt.Sprintf("&Route{matchers:[]matcher{%s}}", strings.Join(matchers, ", "))
+}
+
+func (r *routeRegexp) GoString() string {
+ return fmt.Sprintf("&routeRegexp{template: %q, matchHost: %t, matchQuery: %t, strictSlash: %t, regexp: regexp.MustCompile(%q), reverse: %q, varsN: %v, varsR: %v", r.template, r.matchHost, r.matchQuery, r.strictSlash, r.regexp.String(), r.reverse, r.varsN, r.varsR)
+}
+
type routeTest struct {
title string // title of the test
route *Route // the route being tested
@@ -109,6 +122,15 @@ func TestHost(t *testing.T) {
shouldMatch: true,
},
{
+ title: "Host route with pattern, additional capturing group, match",
+ route: new(Route).Host("aaa.{v1:[a-z]{2}(b|c)}.ccc"),
+ request: newRequest("GET", "http://aaa.bbb.ccc/111/222/333"),
+ vars: map[string]string{"v1": "bbb"},
+ host: "aaa.bbb.ccc",
+ path: "",
+ shouldMatch: true,
+ },
+ {
title: "Host route with pattern, wrong host in request URL",
route: new(Route).Host("aaa.{v1:[a-z]{3}}.ccc"),
request: newRequest("GET", "http://aaa.222.ccc/111/222/333"),
@@ -136,6 +158,33 @@ func TestHost(t *testing.T) {
shouldMatch: false,
},
{
+ title: "Host route with hyphenated name and pattern, match",
+ route: new(Route).Host("aaa.{v-1:[a-z]{3}}.ccc"),
+ request: newRequest("GET", "http://aaa.bbb.ccc/111/222/333"),
+ vars: map[string]string{"v-1": "bbb"},
+ host: "aaa.bbb.ccc",
+ path: "",
+ shouldMatch: true,
+ },
+ {
+ title: "Host route with hyphenated name and pattern, additional capturing group, match",
+ route: new(Route).Host("aaa.{v-1:[a-z]{2}(b|c)}.ccc"),
+ request: newRequest("GET", "http://aaa.bbb.ccc/111/222/333"),
+ vars: map[string]string{"v-1": "bbb"},
+ host: "aaa.bbb.ccc",
+ path: "",
+ shouldMatch: true,
+ },
+ {
+ title: "Host route with multiple hyphenated names and patterns, match",
+ route: new(Route).Host("{v-1:[a-z]{3}}.{v-2:[a-z]{3}}.{v-3:[a-z]{3}}"),
+ request: newRequest("GET", "http://aaa.bbb.ccc/111/222/333"),
+ vars: map[string]string{"v-1": "aaa", "v-2": "bbb", "v-3": "ccc"},
+ host: "aaa.bbb.ccc",
+ path: "",
+ shouldMatch: true,
+ },
+ {
title: "Path route with single pattern with pipe, match",
route: new(Route).Path("/{category:a|b/c}"),
request: newRequest("GET", "http://localhost/a"),
@@ -260,6 +309,42 @@ func TestPath(t *testing.T) {
path: "/111/222/333",
shouldMatch: false,
},
+ {
+ title: "Path route with multiple patterns with pipe, match",
+ route: new(Route).Path("/{category:a|(b/c)}/{product}/{id:[0-9]+}"),
+ request: newRequest("GET", "http://localhost/a/product_name/1"),
+ vars: map[string]string{"category": "a", "product": "product_name", "id": "1"},
+ host: "",
+ path: "/a/product_name/1",
+ shouldMatch: true,
+ },
+ {
+ title: "Path route with hyphenated name and pattern, match",
+ route: new(Route).Path("/111/{v-1:[0-9]{3}}/333"),
+ request: newRequest("GET", "http://localhost/111/222/333"),
+ vars: map[string]string{"v-1": "222"},
+ host: "",
+ path: "/111/222/333",
+ shouldMatch: true,
+ },
+ {
+ title: "Path route with multiple hyphenated names and patterns, match",
+ route: new(Route).Path("/{v-1:[0-9]{3}}/{v-2:[0-9]{3}}/{v-3:[0-9]{3}}"),
+ request: newRequest("GET", "http://localhost/111/222/333"),
+ vars: map[string]string{"v-1": "111", "v-2": "222", "v-3": "333"},
+ host: "",
+ path: "/111/222/333",
+ shouldMatch: true,
+ },
+ {
+ title: "Path route with multiple hyphenated names and patterns with pipe, match",
+ route: new(Route).Path("/{product-category:a|(b/c)}/{product-name}/{product-id:[0-9]+}"),
+ request: newRequest("GET", "http://localhost/a/product_name/1"),
+ vars: map[string]string{"product-category": "a", "product-name": "product_name", "product-id": "1"},
+ host: "",
+ path: "/a/product_name/1",
+ shouldMatch: true,
+ },
}
for _, test := range tests {
@@ -434,6 +519,24 @@ func TestHeaders(t *testing.T) {
path: "",
shouldMatch: false,
},
+ {
+ title: "Headers route, regex header values to match",
+ route: new(Route).Headers("foo", "ba[zr]"),
+ request: newRequestHeaders("GET", "http://localhost", map[string]string{"foo": "bar"}),
+ vars: map[string]string{},
+ host: "",
+ path: "",
+ shouldMatch: false,
+ },
+ {
+ title: "Headers route, regex header values to match",
+ route: new(Route).HeadersRegexp("foo", "ba[zr]"),
+ request: newRequestHeaders("GET", "http://localhost", map[string]string{"foo": "baz"}),
+ vars: map[string]string{},
+ host: "",
+ path: "",
+ shouldMatch: true,
+ },
}
for _, test := range tests {
@@ -552,6 +655,150 @@ func TestQueries(t *testing.T) {
path: "",
shouldMatch: false,
},
+ {
+ title: "Queries route with regexp pattern with quantifier, match",
+ route: new(Route).Queries("foo", "{v1:[0-9]{1}}"),
+ request: newRequest("GET", "http://localhost?foo=1"),
+ vars: map[string]string{"v1": "1"},
+ host: "",
+ path: "",
+ shouldMatch: true,
+ },
+ {
+ title: "Queries route with regexp pattern with quantifier, additional variable in query string, match",
+ route: new(Route).Queries("foo", "{v1:[0-9]{1}}"),
+ request: newRequest("GET", "http://localhost?bar=2&foo=1"),
+ vars: map[string]string{"v1": "1"},
+ host: "",
+ path: "",
+ shouldMatch: true,
+ },
+ {
+ title: "Queries route with regexp pattern with quantifier, regexp does not match",
+ route: new(Route).Queries("foo", "{v1:[0-9]{1}}"),
+ request: newRequest("GET", "http://localhost?foo=12"),
+ vars: map[string]string{},
+ host: "",
+ path: "",
+ shouldMatch: false,
+ },
+ {
+ title: "Queries route with regexp pattern with quantifier, additional capturing group",
+ route: new(Route).Queries("foo", "{v1:[0-9]{1}(a|b)}"),
+ request: newRequest("GET", "http://localhost?foo=1a"),
+ vars: map[string]string{"v1": "1a"},
+ host: "",
+ path: "",
+ shouldMatch: true,
+ },
+ {
+ title: "Queries route with regexp pattern with quantifier, additional variable in query string, regexp does not match",
+ route: new(Route).Queries("foo", "{v1:[0-9]{1}}"),
+ request: newRequest("GET", "http://localhost?foo=12"),
+ vars: map[string]string{},
+ host: "",
+ path: "",
+ shouldMatch: false,
+ },
+ {
+ title: "Queries route with hyphenated name, match",
+ route: new(Route).Queries("foo", "{v-1}"),
+ request: newRequest("GET", "http://localhost?foo=bar"),
+ vars: map[string]string{"v-1": "bar"},
+ host: "",
+ path: "",
+ shouldMatch: true,
+ },
+ {
+ title: "Queries route with multiple hyphenated names, match",
+ route: new(Route).Queries("foo", "{v-1}", "baz", "{v-2}"),
+ request: newRequest("GET", "http://localhost?foo=bar&baz=ding"),
+ vars: map[string]string{"v-1": "bar", "v-2": "ding"},
+ host: "",
+ path: "",
+ shouldMatch: true,
+ },
+ {
+ title: "Queries route with hyphenate name and pattern, match",
+ route: new(Route).Queries("foo", "{v-1:[0-9]+}"),
+ request: newRequest("GET", "http://localhost?foo=10"),
+ vars: map[string]string{"v-1": "10"},
+ host: "",
+ path: "",
+ shouldMatch: true,
+ },
+ {
+ title: "Queries route with hyphenated name and pattern with quantifier, additional capturing group",
+ route: new(Route).Queries("foo", "{v-1:[0-9]{1}(a|b)}"),
+ request: newRequest("GET", "http://localhost?foo=1a"),
+ vars: map[string]string{"v-1": "1a"},
+ host: "",
+ path: "",
+ shouldMatch: true,
+ },
+ {
+ title: "Queries route with empty value, should match",
+ route: new(Route).Queries("foo", ""),
+ request: newRequest("GET", "http://localhost?foo=bar"),
+ vars: map[string]string{},
+ host: "",
+ path: "",
+ shouldMatch: true,
+ },
+ {
+ title: "Queries route with empty value and no parameter in request, should not match",
+ route: new(Route).Queries("foo", ""),
+ request: newRequest("GET", "http://localhost"),
+ vars: map[string]string{},
+ host: "",
+ path: "",
+ shouldMatch: false,
+ },
+ {
+ title: "Queries route with empty value and empty parameter in request, should match",
+ route: new(Route).Queries("foo", ""),
+ request: newRequest("GET", "http://localhost?foo="),
+ vars: map[string]string{},
+ host: "",
+ path: "",
+ shouldMatch: true,
+ },
+ {
+ title: "Queries route with overlapping value, should not match",
+ route: new(Route).Queries("foo", "bar"),
+ request: newRequest("GET", "http://localhost?foo=barfoo"),
+ vars: map[string]string{},
+ host: "",
+ path: "",
+ shouldMatch: false,
+ },
+ {
+ title: "Queries route with no parameter in request, should not match",
+ route: new(Route).Queries("foo", "{bar}"),
+ request: newRequest("GET", "http://localhost"),
+ vars: map[string]string{},
+ host: "",
+ path: "",
+ shouldMatch: false,
+ },
+ {
+ title: "Queries route with empty parameter in request, should match",
+ route: new(Route).Queries("foo", "{bar}"),
+ request: newRequest("GET", "http://localhost?foo="),
+ vars: map[string]string{"foo": ""},
+ host: "",
+ path: "",
+ shouldMatch: true,
+ },
+ {
+ title: "Queries route, bad submatch",
+ route: new(Route).Queries("foo", "bar", "baz", "ding"),
+ request: newRequest("GET", "http://localhost?fffoo=bar&baz=dingggg"),
+ vars: map[string]string{},
+ host: "",
+ path: "",
+ shouldMatch: false,
+ },
}
for _, test := range tests {
@@ -801,6 +1048,81 @@ func TestStrictSlash(t *testing.T) {
}
}
+func TestWalkSingleDepth(t *testing.T) {
+ r0 := NewRouter()
+ r1 := NewRouter()
+ r2 := NewRouter()
+
+ r0.Path("/g")
+ r0.Path("/o")
+ r0.Path("/d").Handler(r1)
+ r0.Path("/r").Handler(r2)
+ r0.Path("/a")
+
+ r1.Path("/z")
+ r1.Path("/i")
+ r1.Path("/l")
+ r1.Path("/l")
+
+ r2.Path("/i")
+ r2.Path("/l")
+ r2.Path("/l")
+
+ paths := []string{"g", "o", "r", "i", "l", "l", "a"}
+ depths := []int{0, 0, 0, 1, 1, 1, 0}
+ i := 0
+ err := r0.Walk(func(route *Route, router *Router, ancestors []*Route) error {
+ matcher := route.matchers[0].(*routeRegexp)
+ if matcher.template == "/d" {
+ return SkipRouter
+ }
+ if len(ancestors) != depths[i] {
+ t.Errorf(`Expected depth of %d at i = %d; got "%d"`, depths[i], i, len(ancestors))
+ }
+ if matcher.template != "/"+paths[i] {
+ t.Errorf(`Expected "/%s" at i = %d; got "%s"`, paths[i], i, matcher.template)
+ }
+ i++
+ return nil
+ })
+ if err != nil {
+ panic(err)
+ }
+ if i != len(paths) {
+ t.Errorf("Expected %d routes, found %d", len(paths), i)
+ }
+}
+
+func TestWalkNested(t *testing.T) {
+ router := NewRouter()
+
+ g := router.Path("/g").Subrouter()
+ o := g.PathPrefix("/o").Subrouter()
+ r := o.PathPrefix("/r").Subrouter()
+ i := r.PathPrefix("/i").Subrouter()
+ l1 := i.PathPrefix("/l").Subrouter()
+ l2 := l1.PathPrefix("/l").Subrouter()
+ l2.Path("/a")
+
+ paths := []string{"/g", "/g/o", "/g/o/r", "/g/o/r/i", "/g/o/r/i/l", "/g/o/r/i/l/l", "/g/o/r/i/l/l/a"}
+ idx := 0
+ err := router.Walk(func(route *Route, router *Router, ancestors []*Route) error {
+ path := paths[idx]
+ tpl := route.regexp.path.template
+ if tpl != path {
+ t.Errorf(`Expected %s got %s`, path, tpl)
+ }
+ idx++
+ return nil
+ })
+ if err != nil {
+ panic(err)
+ }
+ if idx != len(paths) {
+ t.Errorf("Expected %d routes, found %d", len(paths), idx)
+ }
+}
+
// ----------------------------------------------------------------------------
// Helpers
// ----------------------------------------------------------------------------
diff --git a/Godeps/_workspace/src/github.com/gorilla/mux/old_test.go b/Godeps/_workspace/src/github.com/gorilla/mux/old_test.go
index 1f7c190c0..755db483e 100644
--- a/Godeps/_workspace/src/github.com/gorilla/mux/old_test.go
+++ b/Godeps/_workspace/src/github.com/gorilla/mux/old_test.go
@@ -545,7 +545,7 @@ func TestMatchedRouteName(t *testing.T) {
router := NewRouter()
route := router.NewRoute().Path("/products/").Name(routeName)
- url := "http://www.domain.com/products/"
+ url := "http://www.example.com/products/"
request, _ := http.NewRequest("GET", url, nil)
var rv RouteMatch
ok := router.Match(request, &rv)
@@ -563,10 +563,10 @@ func TestMatchedRouteName(t *testing.T) {
func TestSubRouting(t *testing.T) {
// Example from docs.
router := NewRouter()
- subrouter := router.NewRoute().Host("www.domain.com").Subrouter()
+ subrouter := router.NewRoute().Host("www.example.com").Subrouter()
route := subrouter.NewRoute().Path("/products/").Name("products")
- url := "http://www.domain.com/products/"
+ url := "http://www.example.com/products/"
request, _ := http.NewRequest("GET", url, nil)
var rv RouteMatch
ok := router.Match(request, &rv)
diff --git a/Godeps/_workspace/src/github.com/gorilla/mux/regexp.go b/Godeps/_workspace/src/github.com/gorilla/mux/regexp.go
index aa3067986..06728dd54 100644
--- a/Godeps/_workspace/src/github.com/gorilla/mux/regexp.go
+++ b/Godeps/_workspace/src/github.com/gorilla/mux/regexp.go
@@ -10,6 +10,7 @@ import (
"net/http"
"net/url"
"regexp"
+ "strconv"
"strings"
)
@@ -34,8 +35,7 @@ func newRouteRegexp(tpl string, matchHost, matchPrefix, matchQuery, strictSlash
// Now let's parse it.
defaultPattern := "[^/]+"
if matchQuery {
- defaultPattern = "[^?&]+"
- matchPrefix = true
+ defaultPattern = "[^?&]*"
} else if matchHost {
defaultPattern = "[^.]+"
matchPrefix = false
@@ -53,9 +53,7 @@ func newRouteRegexp(tpl string, matchHost, matchPrefix, matchQuery, strictSlash
varsN := make([]string, len(idxs)/2)
varsR := make([]*regexp.Regexp, len(idxs)/2)
pattern := bytes.NewBufferString("")
- if !matchQuery {
- pattern.WriteByte('^')
- }
+ pattern.WriteByte('^')
reverse := bytes.NewBufferString("")
var end int
var err error
@@ -75,12 +73,14 @@ func newRouteRegexp(tpl string, matchHost, matchPrefix, matchQuery, strictSlash
tpl[idxs[i]:end])
}
// Build the regexp pattern.
- fmt.Fprintf(pattern, "%s(%s)", regexp.QuoteMeta(raw), patt)
+ varIdx := i / 2
+ fmt.Fprintf(pattern, "%s(?P<%s>%s)", regexp.QuoteMeta(raw), varGroupName(varIdx), patt)
// Build the reverse template.
fmt.Fprintf(reverse, "%s%%s", raw)
+
// Append variable name and compiled pattern.
- varsN[i/2] = name
- varsR[i/2], err = regexp.Compile(fmt.Sprintf("^%s$", patt))
+ varsN[varIdx] = name
+ varsR[varIdx], err = regexp.Compile(fmt.Sprintf("^%s$", patt))
if err != nil {
return nil, err
}
@@ -91,6 +91,12 @@ func newRouteRegexp(tpl string, matchHost, matchPrefix, matchQuery, strictSlash
if strictSlash {
pattern.WriteString("[/]?")
}
+ if matchQuery {
+ // Add the default pattern if the query value is empty
+ if queryVal := strings.SplitN(template, "=", 2)[1]; queryVal == "" {
+ pattern.WriteString(defaultPattern)
+ }
+ }
if !matchPrefix {
pattern.WriteByte('$')
}
@@ -141,7 +147,7 @@ type routeRegexp struct {
func (r *routeRegexp) Match(req *http.Request, match *RouteMatch) bool {
if !r.matchHost {
if r.matchQuery {
- return r.regexp.MatchString(req.URL.RawQuery)
+ return r.matchQueryString(req)
} else {
return r.regexp.MatchString(req.URL.Path)
}
@@ -175,6 +181,26 @@ func (r *routeRegexp) url(values map[string]string) (string, error) {
return rv, nil
}
+// getUrlQuery returns a single query parameter from a request URL.
+// For a URL with foo=bar&baz=ding, we return only the relevant key
+// value pair for the routeRegexp.
+func (r *routeRegexp) getUrlQuery(req *http.Request) string {
+ if !r.matchQuery {
+ return ""
+ }
+ templateKey := strings.SplitN(r.template, "=", 2)[0]
+ for key, vals := range req.URL.Query() {
+ if key == templateKey && len(vals) > 0 {
+ return key + "=" + vals[0]
+ }
+ }
+ return ""
+}
+
+func (r *routeRegexp) matchQueryString(req *http.Request) bool {
+ return r.regexp.MatchString(r.getUrlQuery(req))
+}
+
// braceIndices returns the first level curly brace indices from a string.
// It returns an error in case of unbalanced braces.
func braceIndices(s string) ([]int, error) {
@@ -200,6 +226,11 @@ func braceIndices(s string) ([]int, error) {
return idxs, nil
}
+// varGroupName builds a capturing group name for the indexed variable.
+func varGroupName(idx int) string {
+ return "v" + strconv.Itoa(idx)
+}
+
// ----------------------------------------------------------------------------
// routeRegexpGroup
// ----------------------------------------------------------------------------
@@ -217,8 +248,13 @@ func (v *routeRegexpGroup) setMatch(req *http.Request, m *RouteMatch, r *Route)
if v.host != nil {
hostVars := v.host.regexp.FindStringSubmatch(getHost(req))
if hostVars != nil {
- for k, v := range v.host.varsN {
- m.Vars[v] = hostVars[k+1]
+ subexpNames := v.host.regexp.SubexpNames()
+ varName := 0
+ for i, name := range subexpNames[1:] {
+ if name != "" && name == varGroupName(varName) {
+ m.Vars[v.host.varsN[varName]] = hostVars[i+1]
+ varName++
+ }
}
}
}
@@ -226,8 +262,13 @@ func (v *routeRegexpGroup) setMatch(req *http.Request, m *RouteMatch, r *Route)
if v.path != nil {
pathVars := v.path.regexp.FindStringSubmatch(req.URL.Path)
if pathVars != nil {
- for k, v := range v.path.varsN {
- m.Vars[v] = pathVars[k+1]
+ subexpNames := v.path.regexp.SubexpNames()
+ varName := 0
+ for i, name := range subexpNames[1:] {
+ if name != "" && name == varGroupName(varName) {
+ m.Vars[v.path.varsN[varName]] = pathVars[i+1]
+ varName++
+ }
}
// Check if we should redirect.
if v.path.strictSlash {
@@ -246,12 +287,16 @@ func (v *routeRegexpGroup) setMatch(req *http.Request, m *RouteMatch, r *Route)
}
}
// Store query string variables.
- rawQuery := req.URL.RawQuery
for _, q := range v.queries {
- queryVars := q.regexp.FindStringSubmatch(rawQuery)
+ queryVars := q.regexp.FindStringSubmatch(q.getUrlQuery(req))
if queryVars != nil {
- for k, v := range q.varsN {
- m.Vars[v] = queryVars[k+1]
+ subexpNames := q.regexp.SubexpNames()
+ varName := 0
+ for i, name := range subexpNames[1:] {
+ if name != "" && name == varGroupName(varName) {
+ m.Vars[q.varsN[varName]] = queryVars[i+1]
+ varName++
+ }
}
}
}
diff --git a/Godeps/_workspace/src/github.com/gorilla/mux/route.go b/Godeps/_workspace/src/github.com/gorilla/mux/route.go
index d4f014688..913432c1c 100644
--- a/Godeps/_workspace/src/github.com/gorilla/mux/route.go
+++ b/Godeps/_workspace/src/github.com/gorilla/mux/route.go
@@ -9,6 +9,7 @@ import (
"fmt"
"net/http"
"net/url"
+ "regexp"
"strings"
)
@@ -188,7 +189,7 @@ func (r *Route) addRegexpMatcher(tpl string, matchHost, matchPrefix, matchQuery
type headerMatcher map[string]string
func (m headerMatcher) Match(r *http.Request, match *RouteMatch) bool {
- return matchMap(m, r.Header, true)
+ return matchMapWithString(m, r.Header, true)
}
// Headers adds a matcher for request header values.
@@ -199,22 +200,45 @@ func (m headerMatcher) Match(r *http.Request, match *RouteMatch) bool {
// "X-Requested-With", "XMLHttpRequest")
//
// The above route will only match if both request header values match.
-//
-// It the value is an empty string, it will match any value if the key is set.
+// If the value is an empty string, it will match any value if the key is set.
func (r *Route) Headers(pairs ...string) *Route {
if r.err == nil {
var headers map[string]string
- headers, r.err = mapFromPairs(pairs...)
+ headers, r.err = mapFromPairsToString(pairs...)
return r.addMatcher(headerMatcher(headers))
}
return r
}
+// headerRegexMatcher matches the request against the route given a regex for the header
+type headerRegexMatcher map[string]*regexp.Regexp
+
+func (m headerRegexMatcher) Match(r *http.Request, match *RouteMatch) bool {
+ return matchMapWithRegex(m, r.Header, true)
+}
+
+// Regular expressions can be used with headers as well.
+// It accepts a sequence of key/value pairs, where the value has regex support. For example
+// r := mux.NewRouter()
+// r.HeadersRegexp("Content-Type", "application/(text|json)",
+// "X-Requested-With", "XMLHttpRequest")
+//
+// The above route will only match if both the request header matches both regular expressions.
+// It the value is an empty string, it will match any value if the key is set.
+func (r *Route) HeadersRegexp(pairs ...string) *Route {
+ if r.err == nil {
+ var headers map[string]*regexp.Regexp
+ headers, r.err = mapFromPairsToRegex(pairs...)
+ return r.addMatcher(headerRegexMatcher(headers))
+ }
+ return r
+}
+
// Host -----------------------------------------------------------------------
// Host adds a matcher for the URL host.
// It accepts a template with zero or more URL variables enclosed by {}.
-// Variables can define an optional regexp pattern to me matched:
+// Variables can define an optional regexp pattern to be matched:
//
// - {name} matches anything until the next dot.
//
@@ -223,7 +247,7 @@ func (r *Route) Headers(pairs ...string) *Route {
// For example:
//
// r := mux.NewRouter()
-// r.Host("www.domain.com")
+// r.Host("www.example.com")
// r.Host("{subdomain}.domain.com")
// r.Host("{subdomain:[a-z]+}.domain.com")
//
@@ -272,7 +296,7 @@ func (r *Route) Methods(methods ...string) *Route {
// Path adds a matcher for the URL path.
// It accepts a template with zero or more URL variables enclosed by {}. The
// template must start with a "/".
-// Variables can define an optional regexp pattern to me matched:
+// Variables can define an optional regexp pattern to be matched:
//
// - {name} matches anything until the next slash.
//
@@ -323,7 +347,7 @@ func (r *Route) PathPrefix(tpl string) *Route {
//
// It the value is an empty string, it will match any value if the key is set.
//
-// Variables can define an optional regexp pattern to me matched:
+// Variables can define an optional regexp pattern to be matched:
//
// - {name} matches anything until the next slash.
//
@@ -336,7 +360,7 @@ func (r *Route) Queries(pairs ...string) *Route {
return nil
}
for i := 0; i < length; i += 2 {
- if r.err = r.addRegexpMatcher(pairs[i]+"="+pairs[i+1], false, true, true); r.err != nil {
+ if r.err = r.addRegexpMatcher(pairs[i]+"="+pairs[i+1], false, false, true); r.err != nil {
return r
}
}
@@ -382,7 +406,7 @@ func (r *Route) BuildVarsFunc(f BuildVarsFunc) *Route {
// It will test the inner routes only if the parent route matched. For example:
//
// r := mux.NewRouter()
-// s := r.Host("www.domain.com").Subrouter()
+// s := r.Host("www.example.com").Subrouter()
// s.HandleFunc("/products/", ProductsHandler)
// s.HandleFunc("/products/{key}", ProductHandler)
// s.HandleFunc("/articles/{category}/{id:[0-9]+}"), ArticleHandler)
@@ -511,7 +535,7 @@ func (r *Route) URLPath(pairs ...string) (*url.URL, error) {
// prepareVars converts the route variable pairs into a map. If the route has a
// BuildVarsFunc, it is invoked.
func (r *Route) prepareVars(pairs ...string) (map[string]string, error) {
- m, err := mapFromPairs(pairs...)
+ m, err := mapFromPairsToString(pairs...)
if err != nil {
return nil, err
}
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/README.md b/Godeps/_workspace/src/github.com/gorilla/websocket/README.md
index 9ad75a0f5..9d71959ea 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/README.md
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/README.md
@@ -7,6 +7,8 @@ Gorilla WebSocket is a [Go](http://golang.org/) implementation of the
* [API Reference](http://godoc.org/github.com/gorilla/websocket)
* [Chat example](https://github.com/gorilla/websocket/tree/master/examples/chat)
+* [Command example](https://github.com/gorilla/websocket/tree/master/examples/command)
+* [Client and server example](https://github.com/gorilla/websocket/tree/master/examples/echo)
* [File watch example](https://github.com/gorilla/websocket/tree/master/examples/filewatch)
### Status
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/client.go b/Godeps/_workspace/src/github.com/gorilla/websocket/client.go
index 5bc27e193..3bf9b2e84 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/client.go
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/client.go
@@ -5,6 +5,7 @@
package websocket
import (
+ "bufio"
"bytes"
"crypto/tls"
"errors"
@@ -30,50 +31,17 @@ var ErrBadHandshake = errors.New("websocket: bad handshake")
// If the WebSocket handshake fails, ErrBadHandshake is returned along with a
// non-nil *http.Response so that callers can handle redirects, authentication,
// etc.
+//
+// Deprecated: Use Dialer instead.
func NewClient(netConn net.Conn, u *url.URL, requestHeader http.Header, readBufSize, writeBufSize int) (c *Conn, response *http.Response, err error) {
- challengeKey, err := generateChallengeKey()
- if err != nil {
- return nil, nil, err
+ d := Dialer{
+ ReadBufferSize: readBufSize,
+ WriteBufferSize: writeBufSize,
+ NetDial: func(net, addr string) (net.Conn, error) {
+ return netConn, nil
+ },
}
- acceptKey := computeAcceptKey(challengeKey)
-
- c = newConn(netConn, false, readBufSize, writeBufSize)
- p := c.writeBuf[:0]
- p = append(p, "GET "...)
- p = append(p, u.RequestURI()...)
- p = append(p, " HTTP/1.1\r\nHost: "...)
- p = append(p, u.Host...)
- // "Upgrade" is capitalized for servers that do not use case insensitive
- // comparisons on header tokens.
- p = append(p, "\r\nUpgrade: websocket\r\nConnection: Upgrade\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: "...)
- p = append(p, challengeKey...)
- p = append(p, "\r\n"...)
- for k, vs := range requestHeader {
- for _, v := range vs {
- p = append(p, k...)
- p = append(p, ": "...)
- p = append(p, v...)
- p = append(p, "\r\n"...)
- }
- }
- p = append(p, "\r\n"...)
-
- if _, err := netConn.Write(p); err != nil {
- return nil, nil, err
- }
-
- resp, err := http.ReadResponse(c.br, &http.Request{Method: "GET", URL: u})
- if err != nil {
- return nil, nil, err
- }
- if resp.StatusCode != 101 ||
- !strings.EqualFold(resp.Header.Get("Upgrade"), "websocket") ||
- !strings.EqualFold(resp.Header.Get("Connection"), "upgrade") ||
- resp.Header.Get("Sec-Websocket-Accept") != acceptKey {
- return nil, resp, ErrBadHandshake
- }
- c.subprotocol = resp.Header.Get("Sec-Websocket-Protocol")
- return c, resp, nil
+ return d.Dial(u.String(), requestHeader)
}
// A Dialer contains options for connecting to WebSocket server.
@@ -82,6 +50,12 @@ type Dialer struct {
// NetDial is nil, net.Dial is used.
NetDial func(network, addr string) (net.Conn, error)
+ // Proxy specifies a function to return a proxy for a given
+ // Request. If the function returns a non-nil error, the
+ // request is aborted with the provided error.
+ // If Proxy is nil or returns a nil *URL, no proxy is used.
+ Proxy func(*http.Request) (*url.URL, error)
+
// TLSClientConfig specifies the TLS configuration to use with tls.Client.
// If nil, the default configuration is used.
TLSClientConfig *tls.Config
@@ -99,17 +73,15 @@ type Dialer struct {
var errMalformedURL = errors.New("malformed ws or wss URL")
-// parseURL parses the URL. The url.Parse function is not used here because
-// url.Parse mangles the path.
+// parseURL parses the URL.
+//
+// This function is a replacement for the standard library url.Parse function.
+// In Go 1.4 and earlier, url.Parse loses information from the path.
func parseURL(s string) (*url.URL, error) {
// From the RFC:
//
// ws-URI = "ws:" "//" host [ ":" port ] path [ "?" query ]
// wss-URI = "wss:" "//" host [ ":" port ] path [ "?" query ]
- //
- // We don't use the net/url parser here because the dialer interface does
- // not provide a way for applications to work around percent deocding in
- // the net/url parser.
var u url.URL
switch {
@@ -130,6 +102,12 @@ func parseURL(s string) (*url.URL, error) {
u.Opaque = s[i:]
}
+ if strings.Contains(u.Host, "@") {
+ // Don't bother parsing user information because user information is
+ // not allowed in websocket URIs.
+ return nil, errMalformedURL
+ }
+
return &u, nil
}
@@ -139,9 +117,12 @@ func hostPortNoPort(u *url.URL) (hostPort, hostNoPort string) {
if i := strings.LastIndex(u.Host, ":"); i > strings.LastIndex(u.Host, "]") {
hostNoPort = hostNoPort[:i]
} else {
- if u.Scheme == "wss" {
+ switch u.Scheme {
+ case "wss":
+ hostPort += ":443"
+ case "https":
hostPort += ":443"
- } else {
+ default:
hostPort += ":80"
}
}
@@ -149,7 +130,9 @@ func hostPortNoPort(u *url.URL) (hostPort, hostNoPort string) {
}
// DefaultDialer is a dialer with all fields set to the default zero values.
-var DefaultDialer *Dialer
+var DefaultDialer = &Dialer{
+ Proxy: http.ProxyFromEnvironment,
+}
// Dial creates a new client connection. Use requestHeader to specify the
// origin (Origin), subprotocols (Sec-WebSocket-Protocol) and cookies (Cookie).
@@ -161,15 +144,91 @@ var DefaultDialer *Dialer
// etcetera. The response body may not contain the entire response and does not
// need to be closed by the application.
func (d *Dialer) Dial(urlStr string, requestHeader http.Header) (*Conn, *http.Response, error) {
+
+ if d == nil {
+ d = &Dialer{
+ Proxy: http.ProxyFromEnvironment,
+ }
+ }
+
+ challengeKey, err := generateChallengeKey()
+ if err != nil {
+ return nil, nil, err
+ }
+
u, err := parseURL(urlStr)
if err != nil {
return nil, nil, err
}
+ switch u.Scheme {
+ case "ws":
+ u.Scheme = "http"
+ case "wss":
+ u.Scheme = "https"
+ default:
+ return nil, nil, errMalformedURL
+ }
+
+ if u.User != nil {
+ // User name and password are not allowed in websocket URIs.
+ return nil, nil, errMalformedURL
+ }
+
+ req := &http.Request{
+ Method: "GET",
+ URL: u,
+ Proto: "HTTP/1.1",
+ ProtoMajor: 1,
+ ProtoMinor: 1,
+ Header: make(http.Header),
+ Host: u.Host,
+ }
+
+ // Set the request headers using the capitalization for names and values in
+ // RFC examples. Although the capitalization shouldn't matter, there are
+ // servers that depend on it. The Header.Set method is not used because the
+ // method canonicalizes the header names.
+ req.Header["Upgrade"] = []string{"websocket"}
+ req.Header["Connection"] = []string{"Upgrade"}
+ req.Header["Sec-WebSocket-Key"] = []string{challengeKey}
+ req.Header["Sec-WebSocket-Version"] = []string{"13"}
+ if len(d.Subprotocols) > 0 {
+ req.Header["Sec-WebSocket-Protocol"] = []string{strings.Join(d.Subprotocols, ", ")}
+ }
+ for k, vs := range requestHeader {
+ switch {
+ case k == "Host":
+ if len(vs) > 0 {
+ req.Host = vs[0]
+ }
+ case k == "Upgrade" ||
+ k == "Connection" ||
+ k == "Sec-Websocket-Key" ||
+ k == "Sec-Websocket-Version" ||
+ (k == "Sec-Websocket-Protocol" && len(d.Subprotocols) > 0):
+ return nil, nil, errors.New("websocket: duplicate header not allowed: " + k)
+ default:
+ req.Header[k] = vs
+ }
+ }
+
hostPort, hostNoPort := hostPortNoPort(u)
- if d == nil {
- d = &Dialer{}
+ var proxyURL *url.URL
+ // Check wether the proxy method has been configured
+ if d.Proxy != nil {
+ proxyURL, err = d.Proxy(req)
+ }
+ if err != nil {
+ return nil, nil, err
+ }
+
+ var targetHostPort string
+ if proxyURL != nil {
+ targetHostPort, _ = hostPortNoPort(proxyURL)
+ } else {
+ targetHostPort = hostPort
}
var deadline time.Time
@@ -183,7 +242,7 @@ func (d *Dialer) Dial(urlStr string, requestHeader http.Header) (*Conn, *http.Re
netDial = netDialer.Dial
}
- netConn, err := netDial("tcp", hostPort)
+ netConn, err := netDial("tcp", targetHostPort)
if err != nil {
return nil, nil, err
}
@@ -198,7 +257,31 @@ func (d *Dialer) Dial(urlStr string, requestHeader http.Header) (*Conn, *http.Re
return nil, nil, err
}
- if u.Scheme == "wss" {
+ if proxyURL != nil {
+ connectReq := &http.Request{
+ Method: "CONNECT",
+ URL: &url.URL{Opaque: hostPort},
+ Host: hostPort,
+ Header: make(http.Header),
+ }
+
+ connectReq.Write(netConn)
+
+ // Read response.
+ // Okay to use and discard buffered reader here, because
+ // TLS server will not speak until spoken to.
+ br := bufio.NewReader(netConn)
+ resp, err := http.ReadResponse(br, connectReq)
+ if err != nil {
+ return nil, nil, err
+ }
+ if resp.StatusCode != 200 {
+ f := strings.SplitN(resp.Status, " ", 2)
+ return nil, nil, errors.New(f[1])
+ }
+ }
+
+ if u.Scheme == "https" {
cfg := d.TLSClientConfig
if cfg == nil {
cfg = &tls.Config{ServerName: hostNoPort}
@@ -219,45 +302,32 @@ func (d *Dialer) Dial(urlStr string, requestHeader http.Header) (*Conn, *http.Re
}
}
- if len(d.Subprotocols) > 0 {
- h := http.Header{}
- for k, v := range requestHeader {
- h[k] = v
- }
- h.Set("Sec-Websocket-Protocol", strings.Join(d.Subprotocols, ", "))
- requestHeader = h
- }
-
- if len(requestHeader["Host"]) > 0 {
- // This can be used to supply a Host: header which is different from
- // the dial address.
- u.Host = requestHeader.Get("Host")
+ conn := newConn(netConn, false, d.ReadBufferSize, d.WriteBufferSize)
- // Drop "Host" header
- h := http.Header{}
- for k, v := range requestHeader {
- if k == "Host" {
- continue
- }
- h[k] = v
- }
- requestHeader = h
+ if err := req.Write(netConn); err != nil {
+ return nil, nil, err
}
- conn, resp, err := NewClient(netConn, u, requestHeader, d.ReadBufferSize, d.WriteBufferSize)
-
+ resp, err := http.ReadResponse(conn.br, req)
if err != nil {
- if err == ErrBadHandshake {
- // Before closing the network connection on return from this
- // function, slurp up some of the response to aid application
- // debugging.
- buf := make([]byte, 1024)
- n, _ := io.ReadFull(resp.Body, buf)
- resp.Body = ioutil.NopCloser(bytes.NewReader(buf[:n]))
- }
- return nil, resp, err
+ return nil, nil, err
+ }
+ if resp.StatusCode != 101 ||
+ !strings.EqualFold(resp.Header.Get("Upgrade"), "websocket") ||
+ !strings.EqualFold(resp.Header.Get("Connection"), "upgrade") ||
+ resp.Header.Get("Sec-Websocket-Accept") != computeAcceptKey(challengeKey) {
+ // Before closing the network connection on return from this
+ // function, slurp up some of the response to aid application
+ // debugging.
+ buf := make([]byte, 1024)
+ n, _ := io.ReadFull(resp.Body, buf)
+ resp.Body = ioutil.NopCloser(bytes.NewReader(buf[:n]))
+ return nil, resp, ErrBadHandshake
}
+ resp.Body = ioutil.NopCloser(bytes.NewReader([]byte{}))
+ conn.subprotocol = resp.Header.Get("Sec-Websocket-Protocol")
+
netConn.SetDeadline(time.Time{})
netConn = nil // to avoid close in defer.
return conn, resp, nil
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/client_server_test.go b/Godeps/_workspace/src/github.com/gorilla/websocket/client_server_test.go
index 749ef2050..05a7888fe 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/client_server_test.go
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/client_server_test.go
@@ -56,11 +56,6 @@ func newTLSServer(t *testing.T) *cstServer {
}
func (t cstHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
- if r.Method != "GET" {
- t.Logf("method %s not allowed", r.Method)
- http.Error(w, "method not allowed", 405)
- return
- }
subprotos := Subprotocols(r)
if !reflect.DeepEqual(subprotos, cstDialer.Subprotocols) {
t.Logf("subprotols=%v, want %v", subprotos, cstDialer.Subprotocols)
@@ -123,6 +118,45 @@ func sendRecv(t *testing.T, ws *Conn) {
}
}
+func TestProxyDial(t *testing.T) {
+
+ s := newServer(t)
+ defer s.Close()
+
+ surl, _ := url.Parse(s.URL)
+
+ cstDialer.Proxy = http.ProxyURL(surl)
+
+ connect := false
+ origHandler := s.Server.Config.Handler
+
+ // Capture the request Host header.
+ s.Server.Config.Handler = http.HandlerFunc(
+ func(w http.ResponseWriter, r *http.Request) {
+ if r.Method == "CONNECT" {
+ connect = true
+ w.WriteHeader(200)
+ return
+ }
+
+ if !connect {
+ t.Log("connect not recieved")
+ http.Error(w, "connect not recieved", 405)
+ return
+ }
+ origHandler.ServeHTTP(w, r)
+ })
+
+ ws, _, err := cstDialer.Dial(s.URL, nil)
+ if err != nil {
+ t.Fatalf("Dial: %v", err)
+ }
+ defer ws.Close()
+ sendRecv(t, ws)
+
+ cstDialer.Proxy = http.ProxyFromEnvironment
+}
+
func TestDial(t *testing.T) {
s := newServer(t)
defer s.Close()
@@ -229,6 +263,45 @@ func TestDialBadOrigin(t *testing.T) {
}
}
+func TestDialBadHeader(t *testing.T) {
+ s := newServer(t)
+ defer s.Close()
+
+ for _, k := range []string{"Upgrade",
+ "Connection",
+ "Sec-Websocket-Key",
+ "Sec-Websocket-Version",
+ "Sec-Websocket-Protocol"} {
+ h := http.Header{}
+ h.Set(k, "bad")
+ ws, _, err := cstDialer.Dial(s.URL, http.Header{"Origin": {"bad"}})
+ if err == nil {
+ ws.Close()
+ t.Errorf("Dial with header %s returned nil", k)
+ }
+ }
+}
+
+func TestBadMethod(t *testing.T) {
+ s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
+ ws, err := cstUpgrader.Upgrade(w, r, nil)
+ if err == nil {
+ t.Errorf("handshake succeeded, expect fail")
+ ws.Close()
+ }
+ }))
+ defer s.Close()
+
+ resp, err := http.PostForm(s.URL, url.Values{})
+ if err != nil {
+ t.Fatalf("PostForm returned error %v", err)
+ }
+ resp.Body.Close()
+ if resp.StatusCode != http.StatusMethodNotAllowed {
+ t.Errorf("Status = %d, want %d", resp.StatusCode, http.StatusMethodNotAllowed)
+ }
+}
+
func TestHandshake(t *testing.T) {
s := newServer(t)
defer s.Close()
@@ -289,8 +362,8 @@ func TestRespOnBadHandshake(t *testing.T) {
}
}
-// If the Host header is specified in `Dial()`, the server must receive it as
-// the `Host:` header.
+// TestHostHeader confirms that the host header provided in the call to Dial is
+// sent to the server.
func TestHostHeader(t *testing.T) {
s := newServer(t)
defer s.Close()
@@ -305,16 +378,12 @@ func TestHostHeader(t *testing.T) {
origHandler.ServeHTTP(w, r)
})
- ws, resp, err := cstDialer.Dial(s.URL, http.Header{"Host": {"testhost"}})
+ ws, _, err := cstDialer.Dial(s.URL, http.Header{"Host": {"testhost"}})
if err != nil {
t.Fatalf("Dial: %v", err)
}
defer ws.Close()
- if resp.StatusCode != http.StatusSwitchingProtocols {
- t.Fatalf("resp.StatusCode = %v, want http.StatusSwitchingProtocols", resp.StatusCode)
- }
-
if gotHost := <-specifiedHost; gotHost != "testhost" {
t.Fatalf("gotHost = %q, want \"testhost\"", gotHost)
}
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/client_test.go b/Godeps/_workspace/src/github.com/gorilla/websocket/client_test.go
index d2f2ebd79..07a9cb453 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/client_test.go
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/client_test.go
@@ -20,6 +20,7 @@ var parseURLTests = []struct {
{"wss://example.com/", &url.URL{Scheme: "wss", Host: "example.com", Opaque: "/"}},
{"wss://example.com/a/b", &url.URL{Scheme: "wss", Host: "example.com", Opaque: "/a/b"}},
{"ss://example.com/a/b", nil},
+ {"ws://webmaster@example.com/", nil},
}
func TestParseURL(t *testing.T) {
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/conn.go b/Godeps/_workspace/src/github.com/gorilla/websocket/conn.go
index e719f1ce6..e8b6b3e04 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/conn.go
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/conn.go
@@ -88,19 +88,23 @@ func (e *netError) Error() string { return e.msg }
func (e *netError) Temporary() bool { return e.temporary }
func (e *netError) Timeout() bool { return e.timeout }
-// closeError represents close frame.
-type closeError struct {
- code int
- text string
+// CloseError represents close frame.
+type CloseError struct {
+
+ // Code is defined in RFC 6455, section 11.7.
+ Code int
+
+ // Text is the optional text payload.
+ Text string
}
-func (e *closeError) Error() string {
- return "websocket: close " + strconv.Itoa(e.code) + " " + e.text
+func (e *CloseError) Error() string {
+ return "websocket: close " + strconv.Itoa(e.Code) + " " + e.Text
}
var (
- errWriteTimeout = &netError{msg: "websocket: write timeout", timeout: true}
- errUnexpectedEOF = &closeError{code: CloseAbnormalClosure, text: io.ErrUnexpectedEOF.Error()}
+ errWriteTimeout = &netError{msg: "websocket: write timeout", timeout: true, temporary: true}
+ errUnexpectedEOF = &CloseError{Code: CloseAbnormalClosure, Text: io.ErrUnexpectedEOF.Error()}
errBadWriteOpCode = errors.New("websocket: bad write message type")
errWriteClosed = errors.New("websocket: write closed")
errInvalidControlFrame = errors.New("websocket: invalid control frame")
@@ -296,7 +300,7 @@ func (c *Conn) WriteControl(messageType int, data []byte, deadline time.Time) er
if n != 0 && n != len(buf) {
c.conn.Close()
}
- return err
+ return hideTempErr(err)
}
// NextWriter returns a writer for the next message to send. The writer's
@@ -673,12 +677,7 @@ func (c *Conn) advanceFrame() (int, error) {
closeCode = int(binary.BigEndian.Uint16(payload))
closeText = string(payload[2:])
}
- switch closeCode {
- case CloseNormalClosure, CloseGoingAway:
- return noFrame, io.EOF
- default:
- return noFrame, &closeError{code: closeCode, text: closeText}
- }
+ return noFrame, &CloseError{Code: closeCode, Text: closeText}
}
return frameType, nil
@@ -790,20 +789,27 @@ func (c *Conn) SetReadLimit(limit int64) {
}
// SetPingHandler sets the handler for ping messages received from the peer.
-// The default ping handler sends a pong to the peer.
-func (c *Conn) SetPingHandler(h func(string) error) {
+// The appData argument to h is the PING frame application data. The default
+// ping handler sends a pong to the peer.
+func (c *Conn) SetPingHandler(h func(appData string) error) {
if h == nil {
h = func(message string) error {
- c.WriteControl(PongMessage, []byte(message), time.Now().Add(writeWait))
- return nil
+ err := c.WriteControl(PongMessage, []byte(message), time.Now().Add(writeWait))
+ if err == ErrCloseSent {
+ return nil
+ } else if e, ok := err.(net.Error); ok && e.Temporary() {
+ return nil
+ }
+ return err
}
}
c.handlePing = h
}
// SetPongHandler sets the handler for pong messages received from the peer.
-// The default pong handler does nothing.
-func (c *Conn) SetPongHandler(h func(string) error) {
+// The appData argument to h is the PONG frame application data. The default
+// pong handler does nothing.
+func (c *Conn) SetPongHandler(h func(appData string) error) {
if h == nil {
h = func(string) error { return nil }
}
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/conn_test.go b/Godeps/_workspace/src/github.com/gorilla/websocket/conn_test.go
index 1f1197e71..02f2d4b50 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/conn_test.go
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/conn_test.go
@@ -5,11 +5,13 @@
package websocket
import (
+ "bufio"
"bytes"
"fmt"
"io"
"io/ioutil"
"net"
+ "reflect"
"testing"
"testing/iotest"
"time"
@@ -146,13 +148,15 @@ func TestControl(t *testing.T) {
func TestCloseBeforeFinalFrame(t *testing.T) {
const bufSize = 512
+ expectedErr := &CloseError{Code: CloseNormalClosure, Text: "hello"}
+
var b1, b2 bytes.Buffer
wc := newConn(fakeNetConn{Reader: nil, Writer: &b1}, false, 1024, bufSize)
rc := newConn(fakeNetConn{Reader: &b1, Writer: &b2}, true, 1024, 1024)
w, _ := wc.NextWriter(BinaryMessage)
w.Write(make([]byte, bufSize+bufSize/2))
- wc.WriteControl(CloseMessage, FormatCloseMessage(CloseNormalClosure, ""), time.Now().Add(10*time.Second))
+ wc.WriteControl(CloseMessage, FormatCloseMessage(expectedErr.Code, expectedErr.Text), time.Now().Add(10*time.Second))
w.Close()
op, r, err := rc.NextReader()
@@ -160,12 +164,12 @@ func TestCloseBeforeFinalFrame(t *testing.T) {
t.Fatalf("NextReader() returned %d, %v", op, err)
}
_, err = io.Copy(ioutil.Discard, r)
- if err != errUnexpectedEOF {
- t.Fatalf("io.Copy() returned %v, want %v", err, errUnexpectedEOF)
+ if !reflect.DeepEqual(err, expectedErr) {
+ t.Fatalf("io.Copy() returned %v, want %v", err, expectedErr)
}
_, _, err = rc.NextReader()
- if err != io.EOF {
- t.Fatalf("NextReader() returned %v, want %v", err, io.EOF)
+ if !reflect.DeepEqual(err, expectedErr) {
+ t.Fatalf("NextReader() returned %v, want %v", err, expectedErr)
}
}
@@ -236,3 +240,33 @@ func TestUnderlyingConn(t *testing.T) {
t.Fatalf("Underlying conn is not what it should be.")
}
}
+
+func TestBufioReadBytes(t *testing.T) {
+
+ // Test calling bufio.ReadBytes for value longer than read buffer size.
+
+ m := make([]byte, 512)
+ m[len(m)-1] = '\n'
+
+ var b1, b2 bytes.Buffer
+ wc := newConn(fakeNetConn{Reader: nil, Writer: &b1}, false, len(m)+64, len(m)+64)
+ rc := newConn(fakeNetConn{Reader: &b1, Writer: &b2}, true, len(m)-64, len(m)-64)
+
+ w, _ := wc.NextWriter(BinaryMessage)
+ w.Write(m)
+ w.Close()
+
+ op, r, err := rc.NextReader()
+ if op != BinaryMessage || err != nil {
+ t.Fatalf("NextReader() returned %d, %v", op, err)
+ }
+
+ br := bufio.NewReader(r)
+ p, err := br.ReadBytes('\n')
+ if err != nil {
+ t.Fatalf("ReadBytes() returned %v", err)
+ }
+ if len(p) != len(m) {
+ t.Fatalf("read returnd %d bytes, want %d bytes", len(p), len(m))
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/doc.go b/Godeps/_workspace/src/github.com/gorilla/websocket/doc.go
index 0d2bd912b..72286279c 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/doc.go
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/doc.go
@@ -24,7 +24,7 @@
// ... Use conn to send and receive messages.
// }
//
-// Call the connection WriteMessage and ReadMessages methods to send and
+// Call the connection's WriteMessage and ReadMessage methods to send and
// receive messages as a slice of bytes. This snippet of code shows how to echo
// messages using these methods:
//
@@ -97,10 +97,13 @@
//
// Concurrency
//
-// Connections do not support concurrent calls to the write methods
-// (NextWriter, SetWriteDeadline, WriteMessage) or concurrent calls to the read
-// methods methods (NextReader, SetReadDeadline, ReadMessage). Connections do
-// support a concurrent reader and writer.
+// Connections support one concurrent reader and one concurrent writer.
+//
+// Applications are responsible for ensuring that no more than one goroutine
+// calls the write methods (NextWriter, SetWriteDeadline, WriteMessage,
+// WriteJSON) concurrently and that no more than one goroutine calls the read
+// methods (NextReader, SetReadDeadline, ReadMessage, ReadJSON, SetPongHandler,
+// SetPingHandler) concurrently.
//
// The Close and WriteControl methods can be called concurrently with all other
// methods.
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/autobahn/server.go b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/autobahn/server.go
index d96ac84db..d0b1c3158 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/autobahn/server.go
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/autobahn/server.go
@@ -8,7 +8,7 @@ package main
import (
"errors"
"flag"
- "github.com/gorilla/websocket"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/gorilla/websocket"
"io"
"log"
"net/http"
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/chat/README.md b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/chat/README.md
index 08fc3e65c..5df3cf1a3 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/chat/README.md
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/chat/README.md
@@ -17,3 +17,4 @@ using the following commands.
$ cd `go list -f '{{.Dir}}' github.com/gorilla/websocket/examples/chat`
$ go run *.go
+To use the chat example, open http://localhost:8080/ in your browser.
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/chat/conn.go b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/chat/conn.go
index 7cc0496c3..675d64113 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/chat/conn.go
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/chat/conn.go
@@ -5,7 +5,7 @@
package main
import (
- "github.com/gorilla/websocket"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/gorilla/websocket"
"log"
"net/http"
"time"
@@ -88,12 +88,8 @@ func (c *connection) writePump() {
}
}
-// serverWs handles websocket requests from the peer.
+// serveWs handles websocket requests from the peer.
func serveWs(w http.ResponseWriter, r *http.Request) {
- if r.Method != "GET" {
- http.Error(w, "Method not allowed", 405)
- return
- }
ws, err := upgrader.Upgrade(w, r, nil)
if err != nil {
log.Println(err)
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/command/README.md b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/command/README.md
new file mode 100644
index 000000000..c30d3979a
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/command/README.md
@@ -0,0 +1,19 @@
+# Command example
+
+This example connects a websocket connection to stdin and stdout of a command.
+Received messages are written to stdin followed by a `\n`. Each line read from
+from standard out is sent as a message to the client.
+
+ $ go get github.com/gorilla/websocket
+ $ cd `go list -f '{{.Dir}}' github.com/gorilla/websocket/examples/command`
+ $ go run main.go <command and arguments to run>
+ # Open http://localhost:8080/ .
+
+Try the following commands.
+
+ # Echo sent messages to the output area.
+ $ go run main.go cat
+
+ # Run a shell.Try sending "ls" and "cat main.go".
+ $ go run main.go sh
+
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/command/home.html b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/command/home.html
new file mode 100644
index 000000000..72fd02b2a
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/command/home.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<title>Command Example</title>
+<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
+<script type="text/javascript">
+ $(function() {
+
+ var conn;
+ var msg = $("#msg");
+ var log = $("#log");
+
+ function appendLog(msg) {
+ var d = log[0]
+ var doScroll = d.scrollTop == d.scrollHeight - d.clientHeight;
+ msg.appendTo(log)
+ if (doScroll) {
+ d.scrollTop = d.scrollHeight - d.clientHeight;
+ }
+ }
+
+ $("#form").submit(function() {
+ if (!conn) {
+ return false;
+ }
+ if (!msg.val()) {
+ return false;
+ }
+ conn.send(msg.val());
+ msg.val("");
+ return false
+ });
+
+ if (window["WebSocket"]) {
+ conn = new WebSocket("ws://{{$}}/ws");
+ conn.onclose = function(evt) {
+ appendLog($("<div><b>Connection closed.</b></div>"))
+ }
+ conn.onmessage = function(evt) {
+ appendLog($("<pre/>").text(evt.data))
+ }
+ } else {
+ appendLog($("<div><b>Your browser does not support WebSockets.</b></div>"))
+ }
+ });
+</script>
+<style type="text/css">
+html {
+ overflow: hidden;
+}
+
+body {
+ overflow: hidden;
+ padding: 0;
+ margin: 0;
+ width: 100%;
+ height: 100%;
+ background: gray;
+}
+
+#log {
+ background: white;
+ margin: 0;
+ padding: 0.5em 0.5em 0.5em 0.5em;
+ position: absolute;
+ top: 0.5em;
+ left: 0.5em;
+ right: 0.5em;
+ bottom: 3em;
+ overflow: auto;
+}
+
+#log pre {
+ margin: 0;
+}
+
+#form {
+ padding: 0 0.5em 0 0.5em;
+ margin: 0;
+ position: absolute;
+ bottom: 1em;
+ left: 0px;
+ width: 100%;
+ overflow: hidden;
+}
+
+</style>
+</head>
+<body>
+<div id="log"></div>
+<form id="form">
+ <input type="submit" value="Send" />
+ <input type="text" id="msg" size="64"/>
+</form>
+</body>
+</html>
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/command/main.go b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/command/main.go
new file mode 100644
index 000000000..3531b368c
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/command/main.go
@@ -0,0 +1,188 @@
+// Copyright 2015 The Gorilla WebSocket Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package main
+
+import (
+ "bufio"
+ "flag"
+ "io"
+ "log"
+ "net/http"
+ "os"
+ "os/exec"
+ "text/template"
+ "time"
+
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/gorilla/websocket"
+)
+
+var (
+ addr = flag.String("addr", "127.0.0.1:8080", "http service address")
+ cmdPath string
+ homeTempl = template.Must(template.ParseFiles("home.html"))
+)
+
+const (
+ // Time allowed to write a message to the peer.
+ writeWait = 10 * time.Second
+
+ // Maximum message size allowed from peer.
+ maxMessageSize = 8192
+
+ // Time allowed to read the next pong message from the peer.
+ pongWait = 60 * time.Second
+
+ // Send pings to peer with this period. Must be less than pongWait.
+ pingPeriod = (pongWait * 9) / 10
+)
+
+func pumpStdin(ws *websocket.Conn, w io.Writer) {
+ defer ws.Close()
+ ws.SetReadLimit(maxMessageSize)
+ ws.SetReadDeadline(time.Now().Add(pongWait))
+ ws.SetPongHandler(func(string) error { ws.SetReadDeadline(time.Now().Add(pongWait)); return nil })
+ for {
+ _, message, err := ws.ReadMessage()
+ if err != nil {
+ break
+ }
+ message = append(message, '\n')
+ if _, err := w.Write(message); err != nil {
+ break
+ }
+ }
+}
+
+func pumpStdout(ws *websocket.Conn, r io.Reader, done chan struct{}) {
+ defer func() {
+ ws.Close()
+ close(done)
+ }()
+ s := bufio.NewScanner(r)
+ for s.Scan() {
+ ws.SetWriteDeadline(time.Now().Add(writeWait))
+ if err := ws.WriteMessage(websocket.TextMessage, s.Bytes()); err != nil {
+ break
+ }
+ }
+ if s.Err() != nil {
+ log.Println("scan:", s.Err())
+ }
+}
+
+func ping(ws *websocket.Conn, done chan struct{}) {
+ ticker := time.NewTicker(pingPeriod)
+ defer ticker.Stop()
+ for {
+ select {
+ case <-ticker.C:
+ if err := ws.WriteControl(websocket.PingMessage, []byte{}, time.Now().Add(writeWait)); err != nil {
+ log.Println("ping:", err)
+ }
+ case <-done:
+ return
+ }
+ }
+}
+
+func internalError(ws *websocket.Conn, msg string, err error) {
+ log.Println(msg, err)
+ ws.WriteMessage(websocket.TextMessage, []byte("Internal server error."))
+}
+
+var upgrader = websocket.Upgrader{}
+
+func serveWs(w http.ResponseWriter, r *http.Request) {
+ ws, err := upgrader.Upgrade(w, r, nil)
+ if err != nil {
+ log.Println("upgrade:", err)
+ return
+ }
+
+ defer ws.Close()
+
+ outr, outw, err := os.Pipe()
+ if err != nil {
+ internalError(ws, "stdout:", err)
+ return
+ }
+ defer outr.Close()
+ defer outw.Close()
+
+ inr, inw, err := os.Pipe()
+ if err != nil {
+ internalError(ws, "stdin:", err)
+ return
+ }
+ defer inr.Close()
+ defer inw.Close()
+
+ proc, err := os.StartProcess(cmdPath, flag.Args(), &os.ProcAttr{
+ Files: []*os.File{inr, outw, outw},
+ })
+ if err != nil {
+ internalError(ws, "start:", err)
+ return
+ }
+
+ inr.Close()
+ outw.Close()
+
+ stdoutDone := make(chan struct{})
+ go pumpStdout(ws, outr, stdoutDone)
+ go ping(ws, stdoutDone)
+
+ pumpStdin(ws, inw)
+
+ // Some commands will exit when stdin is closed.
+ inw.Close()
+
+ // Other commands need a bonk on the head.
+ if err := proc.Signal(os.Interrupt); err != nil {
+ log.Println("inter:", err)
+ }
+
+ select {
+ case <-stdoutDone:
+ case <-time.After(time.Second):
+ // A bigger bonk on the head.
+ if err := proc.Signal(os.Kill); err != nil {
+ log.Println("term:", err)
+ }
+ <-stdoutDone
+ }
+
+ if _, err := proc.Wait(); err != nil {
+ log.Println("wait:", err)
+ }
+}
+
+func serveHome(w http.ResponseWriter, r *http.Request) {
+ if r.URL.Path != "/" {
+ http.Error(w, "Not found", 404)
+ return
+ }
+ if r.Method != "GET" {
+ http.Error(w, "Method not allowed", 405)
+ return
+ }
+ w.Header().Set("Content-Type", "text/html; charset=utf-8")
+ homeTempl.Execute(w, r.Host)
+}
+
+func main() {
+ flag.Parse()
+ if len(flag.Args()) < 1 {
+ log.Fatal("must specify at least one argument")
+ }
+ var err error
+ cmdPath, err = exec.LookPath(flag.Args()[0])
+ if err != nil {
+ log.Fatal(err)
+ }
+ http.HandleFunc("/", serveHome)
+ http.HandleFunc("/ws", serveWs)
+ log.Fatal(http.ListenAndServe(*addr, nil))
+}
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/echo/README.md b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/echo/README.md
new file mode 100644
index 000000000..6ad79ed76
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/echo/README.md
@@ -0,0 +1,17 @@
+# Client and server example
+
+This example shows a simple client and server.
+
+The server echoes messages sent to it. The client sends a message every second
+and prints all messages received.
+
+To run the example, start the server:
+
+ $ go run server.go
+
+Next, start the client:
+
+ $ go run client.go
+
+The server includes a simple web client. To use the client, open
+http://127.0.0.1:8080 in the browser and follow the instructions on the page.
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/echo/client.go b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/echo/client.go
new file mode 100644
index 000000000..998d54462
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/echo/client.go
@@ -0,0 +1,55 @@
+// Copyright 2015 The Gorilla WebSocket Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// +build ignore
+
+package main
+
+import (
+ "flag"
+ "log"
+ "net/url"
+ "time"
+
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/gorilla/websocket"
+)
+
+var addr = flag.String("addr", "localhost:8080", "http service address")
+
+func main() {
+ flag.Parse()
+ log.SetFlags(0)
+
+ u := url.URL{Scheme: "ws", Host: *addr, Path: "/echo"}
+ log.Printf("connecting to %s", u.String())
+
+ c, _, err := websocket.DefaultDialer.Dial(u.String(), nil)
+ if err != nil {
+ log.Fatal("dial:", err)
+ }
+ defer c.Close()
+
+ go func() {
+ defer c.Close()
+ for {
+ _, message, err := c.ReadMessage()
+ if err != nil {
+ log.Println("read:", err)
+ break
+ }
+ log.Printf("recv: %s", message)
+ }
+ }()
+
+ ticker := time.NewTicker(time.Second)
+ defer ticker.Stop()
+
+ for t := range ticker.C {
+ err := c.WriteMessage(websocket.TextMessage, []byte(t.String()))
+ if err != nil {
+ log.Println("write:", err)
+ break
+ }
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/echo/server.go b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/echo/server.go
new file mode 100644
index 000000000..87f14ceb5
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/echo/server.go
@@ -0,0 +1,132 @@
+// Copyright 2015 The Gorilla WebSocket Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// +build ignore
+
+package main
+
+import (
+ "flag"
+ "html/template"
+ "log"
+ "net/http"
+
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/gorilla/websocket"
+)
+
+var addr = flag.String("addr", "localhost:8080", "http service address")
+
+var upgrader = websocket.Upgrader{} // use default options
+
+func echo(w http.ResponseWriter, r *http.Request) {
+ c, err := upgrader.Upgrade(w, r, nil)
+ if err != nil {
+ log.Print("upgrade:", err)
+ return
+ }
+ defer c.Close()
+ for {
+ mt, message, err := c.ReadMessage()
+ if err != nil {
+ log.Println("read:", err)
+ break
+ }
+ log.Printf("recv: %s", message)
+ err = c.WriteMessage(mt, message)
+ if err != nil {
+ log.Println("write:", err)
+ break
+ }
+ }
+}
+
+func home(w http.ResponseWriter, r *http.Request) {
+ homeTemplate.Execute(w, "ws://"+r.Host+"/echo")
+}
+
+func main() {
+ flag.Parse()
+ log.SetFlags(0)
+ http.HandleFunc("/echo", echo)
+ http.HandleFunc("/", home)
+ log.Fatal(http.ListenAndServe(*addr, nil))
+}
+
+var homeTemplate = template.Must(template.New("").Parse(`
+<!DOCTYPE html>
+<head>
+<meta charset="utf-8">
+<script>
+window.addEventListener("load", function(evt) {
+
+ var output = document.getElementById("output");
+ var input = document.getElementById("input");
+ var ws;
+
+ var print = function(message) {
+ var d = document.createElement("div");
+ d.innerHTML = message;
+ output.appendChild(d);
+ };
+
+ document.getElementById("open").onclick = function(evt) {
+ if (ws) {
+ return false;
+ }
+ ws = new WebSocket("{{.}}");
+ ws.onopen = function(evt) {
+ print("OPEN");
+ }
+ ws.onclose = function(evt) {
+ print("CLOSE");
+ ws = null;
+ }
+ ws.onmessage = function(evt) {
+ print("RESPONSE: " + evt.data);
+ }
+ ws.onerror = function(evt) {
+ print("ERROR: " + evt.data);
+ }
+ return false;
+ };
+
+ document.getElementById("send").onclick = function(evt) {
+ if (!ws) {
+ return false;
+ }
+ print("SEND: " + input.value);
+ ws.send(input.value);
+ return false;
+ };
+
+ document.getElementById("close").onclick = function(evt) {
+ if (!ws) {
+ return false;
+ }
+ ws.close();
+ return false;
+ };
+
+});
+</script>
+</head>
+<body>
+<table>
+<tr><td valign="top" width="50%">
+<p>Click "Open" to create a connection to the server,
+"Send" to send a message to the server and "Close" to close the connection.
+You can change the message and send multiple times.
+<p>
+<form>
+<button id="open">Open</button>
+<button id="close">Close</button>
+<p><input id="input" type="text" value="Hello world!">
+<button id="send">Send</button>
+</form>
+</td><td valign="top" width="50%">
+<div id="output"></div>
+</td></tr></table>
+</body>
+</html>
+`))
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/filewatch/main.go b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/filewatch/main.go
index a2c7b85fa..04244bc0f 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/examples/filewatch/main.go
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/examples/filewatch/main.go
@@ -14,7 +14,7 @@ import (
"text/template"
"time"
- "github.com/gorilla/websocket"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/gorilla/websocket"
)
const (
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/json.go b/Godeps/_workspace/src/github.com/gorilla/websocket/json.go
index 18e62f225..4f0e36875 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/json.go
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/json.go
@@ -48,9 +48,7 @@ func (c *Conn) ReadJSON(v interface{}) error {
}
err = json.NewDecoder(r).Decode(v)
if err == io.EOF {
- // Decode returns io.EOF when the message is empty or all whitespace.
- // Convert to io.ErrUnexpectedEOF so that application can distinguish
- // between an error reading the JSON value and the connection closing.
+ // One value is expected in the message.
err = io.ErrUnexpectedEOF
}
return err
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/json_test.go b/Godeps/_workspace/src/github.com/gorilla/websocket/json_test.go
index 1b7a5ec8b..61100e481 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/json_test.go
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/json_test.go
@@ -38,7 +38,7 @@ func TestJSON(t *testing.T) {
}
}
-func TestPartialJsonRead(t *testing.T) {
+func TestPartialJSONRead(t *testing.T) {
var buf bytes.Buffer
c := fakeNetConn{&buf, &buf}
wc := newConn(c, true, 1024, 1024)
@@ -87,7 +87,7 @@ func TestPartialJsonRead(t *testing.T) {
}
err = rc.ReadJSON(&v)
- if err != io.EOF {
+ if _, ok := err.(*CloseError); !ok {
t.Error("final", err)
}
}
diff --git a/Godeps/_workspace/src/github.com/gorilla/websocket/server.go b/Godeps/_workspace/src/github.com/gorilla/websocket/server.go
index e56a00493..3a9805f02 100644
--- a/Godeps/_workspace/src/github.com/gorilla/websocket/server.go
+++ b/Godeps/_workspace/src/github.com/gorilla/websocket/server.go
@@ -93,6 +93,9 @@ func (u *Upgrader) selectSubprotocol(r *http.Request, responseHeader http.Header
// request. Use the responseHeader to specify cookies (Set-Cookie) and the
// application negotiated subprotocol (Sec-Websocket-Protocol).
func (u *Upgrader) Upgrade(w http.ResponseWriter, r *http.Request, responseHeader http.Header) (*Conn, error) {
+ if r.Method != "GET" {
+ return u.returnError(w, r, http.StatusMethodNotAllowed, "websocket: method not GET")
+ }
if values := r.Header["Sec-Websocket-Version"]; len(values) == 0 || values[0] != "13" {
return u.returnError(w, r, http.StatusBadRequest, "websocket: version != 13")
}
diff --git a/Godeps/_workspace/src/github.com/lib/pq/.travis.yml b/Godeps/_workspace/src/github.com/lib/pq/.travis.yml
index 9bf683730..6b8eb405b 100644
--- a/Godeps/_workspace/src/github.com/lib/pq/.travis.yml
+++ b/Godeps/_workspace/src/github.com/lib/pq/.travis.yml
@@ -5,6 +5,7 @@ go:
- 1.2
- 1.3
- 1.4
+ - 1.5
- tip
before_install:
diff --git a/Godeps/_workspace/src/github.com/lib/pq/bench_test.go b/Godeps/_workspace/src/github.com/lib/pq/bench_test.go
index e71f41d06..8ceadc69b 100644
--- a/Godeps/_workspace/src/github.com/lib/pq/bench_test.go
+++ b/Godeps/_workspace/src/github.com/lib/pq/bench_test.go
@@ -17,7 +17,7 @@ import (
"testing"
"time"
- "github.com/lib/pq/oid"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/lib/pq/oid"
)
var (
diff --git a/Godeps/_workspace/src/github.com/lib/pq/buf.go b/Godeps/_workspace/src/github.com/lib/pq/buf.go
index e7ff57771..fd7a3c573 100644
--- a/Godeps/_workspace/src/github.com/lib/pq/buf.go
+++ b/Godeps/_workspace/src/github.com/lib/pq/buf.go
@@ -4,7 +4,7 @@ import (
"bytes"
"encoding/binary"
- "github.com/lib/pq/oid"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/lib/pq/oid"
)
type readBuf []byte
@@ -21,6 +21,7 @@ func (b *readBuf) oid() (n oid.Oid) {
return
}
+// N.B: this is actually an unsigned 16-bit integer, unlike int32
func (b *readBuf) int16() (n int) {
n = int(binary.BigEndian.Uint16(*b))
*b = (*b)[2:]
diff --git a/Godeps/_workspace/src/github.com/lib/pq/conn.go b/Godeps/_workspace/src/github.com/lib/pq/conn.go
index 40a630d74..7b9aa5dc9 100644
--- a/Godeps/_workspace/src/github.com/lib/pq/conn.go
+++ b/Godeps/_workspace/src/github.com/lib/pq/conn.go
@@ -22,7 +22,7 @@ import (
"time"
"unicode"
- "github.com/lib/pq/oid"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/lib/pq/oid"
)
// Common error types
@@ -1369,6 +1369,10 @@ func (rs *rows) Next(dest []driver.Value) (err error) {
return io.EOF
case 'D':
n := rs.rb.int16()
+ if err != nil {
+ conn.bad = true
+ errorf("unexpected DataRow after error %s", err)
+ }
if n < len(dest) {
dest = dest[:n]
}
@@ -1622,6 +1626,10 @@ func (cn *conn) readExecuteResponse(protocolState string) (res driver.Result, co
t, r := cn.recv1()
switch t {
case 'C':
+ if err != nil {
+ cn.bad = true
+ errorf("unexpected CommandComplete after error %s", err)
+ }
res, commandTag = cn.parseComplete(r.string())
case 'Z':
cn.processReadyForQuery(r)
@@ -1629,6 +1637,10 @@ func (cn *conn) readExecuteResponse(protocolState string) (res driver.Result, co
case 'E':
err = parseError(r)
case 'T', 'D', 'I':
+ if err != nil {
+ cn.bad = true
+ errorf("unexpected %q after error %s", t, err)
+ }
// ignore any results
default:
cn.bad = true
diff --git a/Godeps/_workspace/src/github.com/lib/pq/copy.go b/Godeps/_workspace/src/github.com/lib/pq/copy.go
index e44fa48a5..101f11133 100644
--- a/Godeps/_workspace/src/github.com/lib/pq/copy.go
+++ b/Godeps/_workspace/src/github.com/lib/pq/copy.go
@@ -215,9 +215,7 @@ func (ci *copyin) Exec(v []driver.Value) (r driver.Result, err error) {
}
if len(v) == 0 {
- err = ci.Close()
- ci.closed = true
- return nil, err
+ return nil, ci.Close()
}
numValues := len(v)
@@ -240,9 +238,10 @@ func (ci *copyin) Exec(v []driver.Value) (r driver.Result, err error) {
}
func (ci *copyin) Close() (err error) {
- if ci.closed {
- return errCopyInClosed
+ if ci.closed { // Don't do anything, we're already closed
+ return nil
}
+ ci.closed = true
if ci.cn.bad {
return driver.ErrBadConn
diff --git a/Godeps/_workspace/src/github.com/lib/pq/encode.go b/Godeps/_workspace/src/github.com/lib/pq/encode.go
index 88422eb3d..a09f1a164 100644
--- a/Godeps/_workspace/src/github.com/lib/pq/encode.go
+++ b/Godeps/_workspace/src/github.com/lib/pq/encode.go
@@ -12,7 +12,7 @@ import (
"sync"
"time"
- "github.com/lib/pq/oid"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/lib/pq/oid"
)
func binaryEncode(parameterStatus *parameterStatus, x interface{}) []byte {
diff --git a/Godeps/_workspace/src/github.com/lib/pq/encode_test.go b/Godeps/_workspace/src/github.com/lib/pq/encode_test.go
index 97b663886..3e2f490d7 100644
--- a/Godeps/_workspace/src/github.com/lib/pq/encode_test.go
+++ b/Godeps/_workspace/src/github.com/lib/pq/encode_test.go
@@ -7,7 +7,7 @@ import (
"testing"
"time"
- "github.com/lib/pq/oid"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/lib/pq/oid"
)
func TestScanTimestamp(t *testing.T) {
@@ -468,11 +468,11 @@ func TestBinaryByteSlicetoUUID(t *testing.T) {
db := openTestConn(t)
defer db.Close()
- b := []byte{'\xa0','\xee','\xbc','\x99',
- '\x9c', '\x0b',
- '\x4e', '\xf8',
- '\xbb', '\x00', '\x6b',
- '\xb9', '\xbd', '\x38', '\x0a', '\x11'}
+ b := []byte{'\xa0', '\xee', '\xbc', '\x99',
+ '\x9c', '\x0b',
+ '\x4e', '\xf8',
+ '\xbb', '\x00', '\x6b',
+ '\xb9', '\xbd', '\x38', '\x0a', '\x11'}
row := db.QueryRow("SELECT $1::uuid", b)
var result string
diff --git a/Godeps/_workspace/src/github.com/lib/pq/hstore/hstore_test.go b/Godeps/_workspace/src/github.com/lib/pq/hstore/hstore_test.go
index c9c108fc3..219ba6626 100644
--- a/Godeps/_workspace/src/github.com/lib/pq/hstore/hstore_test.go
+++ b/Godeps/_workspace/src/github.com/lib/pq/hstore/hstore_test.go
@@ -5,7 +5,7 @@ import (
"os"
"testing"
- _ "github.com/lib/pq"
+ _ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/lib/pq"
)
type Fatalistic interface {
diff --git a/Godeps/_workspace/src/github.com/lib/pq/oid/gen.go b/Godeps/_workspace/src/github.com/lib/pq/oid/gen.go
index cd4aea808..d59942047 100644
--- a/Godeps/_workspace/src/github.com/lib/pq/oid/gen.go
+++ b/Godeps/_workspace/src/github.com/lib/pq/oid/gen.go
@@ -11,7 +11,7 @@ import (
"os"
"os/exec"
- _ "github.com/lib/pq"
+ _ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/lib/pq"
)
func main() {
diff --git a/Godeps/_workspace/src/github.com/mssola/user_agent/bot.go b/Godeps/_workspace/src/github.com/mssola/user_agent/bot.go
index cc993d8fe..df0b6ccda 100644
--- a/Godeps/_workspace/src/github.com/mssola/user_agent/bot.go
+++ b/Godeps/_workspace/src/github.com/mssola/user_agent/bot.go
@@ -9,6 +9,8 @@ import (
"strings"
)
+var botFromSiteRegexp = regexp.MustCompile("http://.+\\.\\w+")
+
// Get the name of the bot from the website that may be in the given comment. If
// there is no website in the comment, then an empty string is returned.
func getFromSite(comment []string) string {
@@ -23,8 +25,7 @@ func getFromSite(comment []string) string {
}
// Pick the site.
- re := regexp.MustCompile("http://.+\\.\\w+")
- results := re.FindStringSubmatch(comment[idx])
+ results := botFromSiteRegexp.FindStringSubmatch(comment[idx])
if len(results) == 1 {
// If it's a simple comment, just return the name of the site.
if idx == 0 {
diff --git a/Godeps/_workspace/src/github.com/mssola/user_agent/browser.go b/Godeps/_workspace/src/github.com/mssola/user_agent/browser.go
index c5612db7b..a45c8ab7f 100644
--- a/Godeps/_workspace/src/github.com/mssola/user_agent/browser.go
+++ b/Godeps/_workspace/src/github.com/mssola/user_agent/browser.go
@@ -9,6 +9,8 @@ import (
"strings"
)
+var ie11Regexp = regexp.MustCompile("^rv:(.+)$")
+
// A struct containing all the information that we might be
// interested from the browser.
type Browser struct {
@@ -75,9 +77,8 @@ func (p *UserAgent) detectBrowser(sections []section) {
// This is the new user agent from Internet Explorer 11.
p.browser.Engine = "Trident"
p.browser.Name = "Internet Explorer"
- reg, _ := regexp.Compile("^rv:(.+)$")
for _, c := range sections[0].comment {
- version := reg.FindStringSubmatch(c)
+ version := ie11Regexp.FindStringSubmatch(c)
if len(version) > 0 {
p.browser.Version = version[1]
return
diff --git a/Godeps/_workspace/src/github.com/pborman/uuid/CONTRIBUTORS b/Godeps/_workspace/src/github.com/pborman/uuid/CONTRIBUTORS
new file mode 100644
index 000000000..b382a04ed
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/CONTRIBUTORS
@@ -0,0 +1 @@
+Paul Borman <borman@google.com>
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/LICENSE b/Godeps/_workspace/src/github.com/pborman/uuid/LICENSE
index 5dc68268d..5dc68268d 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/LICENSE
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/LICENSE
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/dce.go b/Godeps/_workspace/src/github.com/pborman/uuid/dce.go
index 50a0f2d09..50a0f2d09 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/dce.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/dce.go
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/doc.go b/Godeps/_workspace/src/github.com/pborman/uuid/doc.go
index d8bd013e6..d8bd013e6 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/doc.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/doc.go
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/hash.go b/Godeps/_workspace/src/github.com/pborman/uuid/hash.go
index cdd4192fd..cdd4192fd 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/hash.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/hash.go
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/json.go b/Godeps/_workspace/src/github.com/pborman/uuid/json.go
index 760580a50..760580a50 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/json.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/json.go
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/json_test.go b/Godeps/_workspace/src/github.com/pborman/uuid/json_test.go
index b5eae0924..b5eae0924 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/json_test.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/json_test.go
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/node.go b/Godeps/_workspace/src/github.com/pborman/uuid/node.go
index dd0a8ac18..dd0a8ac18 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/node.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/node.go
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/seq_test.go b/Godeps/_workspace/src/github.com/pborman/uuid/seq_test.go
index 3b3d1430d..3b3d1430d 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/seq_test.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/seq_test.go
diff --git a/Godeps/_workspace/src/github.com/pborman/uuid/sql.go b/Godeps/_workspace/src/github.com/pborman/uuid/sql.go
new file mode 100644
index 000000000..2d7679e2a
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/sql.go
@@ -0,0 +1,40 @@
+// Copyright 2015 Google Inc. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package uuid
+
+import (
+ "errors"
+ "fmt"
+)
+
+// Scan implements sql.Scanner so UUIDs can be read from databases transparently
+// Currently, database types that map to string and []byte are supported. Please
+// consult database-specific driver documentation for matching types.
+func (uuid *UUID) Scan(src interface{}) error {
+ switch src.(type) {
+ case string:
+ // see uuid.Parse for required string format
+ parsed := Parse(src.(string))
+
+ if parsed == nil {
+ return errors.New("Scan: invalid UUID format")
+ }
+
+ *uuid = parsed
+ case []byte:
+ // assumes a simple slice of bytes, just check validity and store
+ u := UUID(src.([]byte))
+
+ if u.Variant() == Invalid {
+ return errors.New("Scan: invalid UUID format")
+ }
+
+ *uuid = u
+ default:
+ return fmt.Errorf("Scan: unable to scan type %T into UUID", src)
+ }
+
+ return nil
+}
diff --git a/Godeps/_workspace/src/github.com/pborman/uuid/sql_test.go b/Godeps/_workspace/src/github.com/pborman/uuid/sql_test.go
new file mode 100644
index 000000000..d643567ee
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/sql_test.go
@@ -0,0 +1,53 @@
+// Copyright 2015 Google Inc. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package uuid
+
+import (
+ "strings"
+ "testing"
+)
+
+func TestScan(t *testing.T) {
+ var stringTest string = "f47ac10b-58cc-0372-8567-0e02b2c3d479"
+ var byteTest []byte = Parse(stringTest)
+ var badTypeTest int = 6
+ var invalidTest string = "f47ac10b-58cc-0372-8567-0e02b2c3d4"
+ var invalidByteTest []byte = Parse(invalidTest)
+
+ var uuid UUID
+ err := (&uuid).Scan(stringTest)
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ err = (&uuid).Scan(byteTest)
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ err = (&uuid).Scan(badTypeTest)
+ if err == nil {
+ t.Error("int correctly parsed and shouldn't have")
+ }
+ if !strings.Contains(err.Error(), "unable to scan type") {
+ t.Error("attempting to parse an int returned an incorrect error message")
+ }
+
+ err = (&uuid).Scan(invalidTest)
+ if err == nil {
+ t.Error("invalid uuid was parsed without error")
+ }
+ if !strings.Contains(err.Error(), "invalid UUID") {
+ t.Error("attempting to parse an invalid UUID returned an incorrect error message")
+ }
+
+ err = (&uuid).Scan(invalidByteTest)
+ if err == nil {
+ t.Error("invalid byte uuid was parsed without error")
+ }
+ if !strings.Contains(err.Error(), "invalid UUID") {
+ t.Error("attempting to parse an invalid byte UUID returned an incorrect error message")
+ }
+}
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/time.go b/Godeps/_workspace/src/github.com/pborman/uuid/time.go
index 7ebc9bef1..7ebc9bef1 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/time.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/time.go
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/util.go b/Godeps/_workspace/src/github.com/pborman/uuid/util.go
index de40b102c..de40b102c 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/util.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/util.go
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/uuid.go b/Godeps/_workspace/src/github.com/pborman/uuid/uuid.go
index 2920fae63..2920fae63 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/uuid.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/uuid.go
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/uuid_test.go b/Godeps/_workspace/src/github.com/pborman/uuid/uuid_test.go
index 417ebeb26..417ebeb26 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/uuid_test.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/uuid_test.go
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/version1.go b/Godeps/_workspace/src/github.com/pborman/uuid/version1.go
index 0127eacfa..0127eacfa 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/version1.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/version1.go
diff --git a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/version4.go b/Godeps/_workspace/src/github.com/pborman/uuid/version4.go
index b3d4a368d..b3d4a368d 100644
--- a/Godeps/_workspace/src/code.google.com/p/go-uuid/uuid/version4.go
+++ b/Godeps/_workspace/src/github.com/pborman/uuid/version4.go
diff --git a/Godeps/_workspace/src/github.com/pmezard/go-difflib/difflib/difflib.go b/Godeps/_workspace/src/github.com/pmezard/go-difflib/difflib/difflib.go
new file mode 100644
index 000000000..64cc40fe1
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/pmezard/go-difflib/difflib/difflib.go
@@ -0,0 +1,758 @@
+// Package difflib is a partial port of Python difflib module.
+//
+// It provides tools to compare sequences of strings and generate textual diffs.
+//
+// The following class and functions have been ported:
+//
+// - SequenceMatcher
+//
+// - unified_diff
+//
+// - context_diff
+//
+// Getting unified diffs was the main goal of the port. Keep in mind this code
+// is mostly suitable to output text differences in a human friendly way, there
+// are no guarantees generated diffs are consumable by patch(1).
+package difflib
+
+import (
+ "bufio"
+ "bytes"
+ "fmt"
+ "io"
+ "strings"
+)
+
+func min(a, b int) int {
+ if a < b {
+ return a
+ }
+ return b
+}
+
+func max(a, b int) int {
+ if a > b {
+ return a
+ }
+ return b
+}
+
+func calculateRatio(matches, length int) float64 {
+ if length > 0 {
+ return 2.0 * float64(matches) / float64(length)
+ }
+ return 1.0
+}
+
+type Match struct {
+ A int
+ B int
+ Size int
+}
+
+type OpCode struct {
+ Tag byte
+ I1 int
+ I2 int
+ J1 int
+ J2 int
+}
+
+// SequenceMatcher compares sequence of strings. The basic
+// algorithm predates, and is a little fancier than, an algorithm
+// published in the late 1980's by Ratcliff and Obershelp under the
+// hyperbolic name "gestalt pattern matching". The basic idea is to find
+// the longest contiguous matching subsequence that contains no "junk"
+// elements (R-O doesn't address junk). The same idea is then applied
+// recursively to the pieces of the sequences to the left and to the right
+// of the matching subsequence. This does not yield minimal edit
+// sequences, but does tend to yield matches that "look right" to people.
+//
+// SequenceMatcher tries to compute a "human-friendly diff" between two
+// sequences. Unlike e.g. UNIX(tm) diff, the fundamental notion is the
+// longest *contiguous* & junk-free matching subsequence. That's what
+// catches peoples' eyes. The Windows(tm) windiff has another interesting
+// notion, pairing up elements that appear uniquely in each sequence.
+// That, and the method here, appear to yield more intuitive difference
+// reports than does diff. This method appears to be the least vulnerable
+// to synching up on blocks of "junk lines", though (like blank lines in
+// ordinary text files, or maybe "<P>" lines in HTML files). That may be
+// because this is the only method of the 3 that has a *concept* of
+// "junk" <wink>.
+//
+// Timing: Basic R-O is cubic time worst case and quadratic time expected
+// case. SequenceMatcher is quadratic time for the worst case and has
+// expected-case behavior dependent in a complicated way on how many
+// elements the sequences have in common; best case time is linear.
+type SequenceMatcher struct {
+ a []string
+ b []string
+ b2j map[string][]int
+ IsJunk func(string) bool
+ autoJunk bool
+ bJunk map[string]struct{}
+ matchingBlocks []Match
+ fullBCount map[string]int
+ bPopular map[string]struct{}
+ opCodes []OpCode
+}
+
+func NewMatcher(a, b []string) *SequenceMatcher {
+ m := SequenceMatcher{autoJunk: true}
+ m.SetSeqs(a, b)
+ return &m
+}
+
+func NewMatcherWithJunk(a, b []string, autoJunk bool,
+ isJunk func(string) bool) *SequenceMatcher {
+
+ m := SequenceMatcher{IsJunk: isJunk, autoJunk: autoJunk}
+ m.SetSeqs(a, b)
+ return &m
+}
+
+// Set two sequences to be compared.
+func (m *SequenceMatcher) SetSeqs(a, b []string) {
+ m.SetSeq1(a)
+ m.SetSeq2(b)
+}
+
+// Set the first sequence to be compared. The second sequence to be compared is
+// not changed.
+//
+// SequenceMatcher computes and caches detailed information about the second
+// sequence, so if you want to compare one sequence S against many sequences,
+// use .SetSeq2(s) once and call .SetSeq1(x) repeatedly for each of the other
+// sequences.
+//
+// See also SetSeqs() and SetSeq2().
+func (m *SequenceMatcher) SetSeq1(a []string) {
+ if &a == &m.a {
+ return
+ }
+ m.a = a
+ m.matchingBlocks = nil
+ m.opCodes = nil
+}
+
+// Set the second sequence to be compared. The first sequence to be compared is
+// not changed.
+func (m *SequenceMatcher) SetSeq2(b []string) {
+ if &b == &m.b {
+ return
+ }
+ m.b = b
+ m.matchingBlocks = nil
+ m.opCodes = nil
+ m.fullBCount = nil
+ m.chainB()
+}
+
+func (m *SequenceMatcher) chainB() {
+ // Populate line -> index mapping
+ b2j := map[string][]int{}
+ for i, s := range m.b {
+ indices := b2j[s]
+ indices = append(indices, i)
+ b2j[s] = indices
+ }
+
+ // Purge junk elements
+ m.bJunk = map[string]struct{}{}
+ if m.IsJunk != nil {
+ junk := m.bJunk
+ for s, _ := range b2j {
+ if m.IsJunk(s) {
+ junk[s] = struct{}{}
+ }
+ }
+ for s, _ := range junk {
+ delete(b2j, s)
+ }
+ }
+
+ // Purge remaining popular elements
+ popular := map[string]struct{}{}
+ n := len(m.b)
+ if m.autoJunk && n >= 200 {
+ ntest := n/100 + 1
+ for s, indices := range b2j {
+ if len(indices) > ntest {
+ popular[s] = struct{}{}
+ }
+ }
+ for s, _ := range popular {
+ delete(b2j, s)
+ }
+ }
+ m.bPopular = popular
+ m.b2j = b2j
+}
+
+func (m *SequenceMatcher) isBJunk(s string) bool {
+ _, ok := m.bJunk[s]
+ return ok
+}
+
+// Find longest matching block in a[alo:ahi] and b[blo:bhi].
+//
+// If IsJunk is not defined:
+//
+// Return (i,j,k) such that a[i:i+k] is equal to b[j:j+k], where
+// alo <= i <= i+k <= ahi
+// blo <= j <= j+k <= bhi
+// and for all (i',j',k') meeting those conditions,
+// k >= k'
+// i <= i'
+// and if i == i', j <= j'
+//
+// In other words, of all maximal matching blocks, return one that
+// starts earliest in a, and of all those maximal matching blocks that
+// start earliest in a, return the one that starts earliest in b.
+//
+// If IsJunk is defined, first the longest matching block is
+// determined as above, but with the additional restriction that no
+// junk element appears in the block. Then that block is extended as
+// far as possible by matching (only) junk elements on both sides. So
+// the resulting block never matches on junk except as identical junk
+// happens to be adjacent to an "interesting" match.
+//
+// If no blocks match, return (alo, blo, 0).
+func (m *SequenceMatcher) findLongestMatch(alo, ahi, blo, bhi int) Match {
+ // CAUTION: stripping common prefix or suffix would be incorrect.
+ // E.g.,
+ // ab
+ // acab
+ // Longest matching block is "ab", but if common prefix is
+ // stripped, it's "a" (tied with "b"). UNIX(tm) diff does so
+ // strip, so ends up claiming that ab is changed to acab by
+ // inserting "ca" in the middle. That's minimal but unintuitive:
+ // "it's obvious" that someone inserted "ac" at the front.
+ // Windiff ends up at the same place as diff, but by pairing up
+ // the unique 'b's and then matching the first two 'a's.
+ besti, bestj, bestsize := alo, blo, 0
+
+ // find longest junk-free match
+ // during an iteration of the loop, j2len[j] = length of longest
+ // junk-free match ending with a[i-1] and b[j]
+ j2len := map[int]int{}
+ for i := alo; i != ahi; i++ {
+ // look at all instances of a[i] in b; note that because
+ // b2j has no junk keys, the loop is skipped if a[i] is junk
+ newj2len := map[int]int{}
+ for _, j := range m.b2j[m.a[i]] {
+ // a[i] matches b[j]
+ if j < blo {
+ continue
+ }
+ if j >= bhi {
+ break
+ }
+ k := j2len[j-1] + 1
+ newj2len[j] = k
+ if k > bestsize {
+ besti, bestj, bestsize = i-k+1, j-k+1, k
+ }
+ }
+ j2len = newj2len
+ }
+
+ // Extend the best by non-junk elements on each end. In particular,
+ // "popular" non-junk elements aren't in b2j, which greatly speeds
+ // the inner loop above, but also means "the best" match so far
+ // doesn't contain any junk *or* popular non-junk elements.
+ for besti > alo && bestj > blo && !m.isBJunk(m.b[bestj-1]) &&
+ m.a[besti-1] == m.b[bestj-1] {
+ besti, bestj, bestsize = besti-1, bestj-1, bestsize+1
+ }
+ for besti+bestsize < ahi && bestj+bestsize < bhi &&
+ !m.isBJunk(m.b[bestj+bestsize]) &&
+ m.a[besti+bestsize] == m.b[bestj+bestsize] {
+ bestsize += 1
+ }
+
+ // Now that we have a wholly interesting match (albeit possibly
+ // empty!), we may as well suck up the matching junk on each
+ // side of it too. Can't think of a good reason not to, and it
+ // saves post-processing the (possibly considerable) expense of
+ // figuring out what to do with it. In the case of an empty
+ // interesting match, this is clearly the right thing to do,
+ // because no other kind of match is possible in the regions.
+ for besti > alo && bestj > blo && m.isBJunk(m.b[bestj-1]) &&
+ m.a[besti-1] == m.b[bestj-1] {
+ besti, bestj, bestsize = besti-1, bestj-1, bestsize+1
+ }
+ for besti+bestsize < ahi && bestj+bestsize < bhi &&
+ m.isBJunk(m.b[bestj+bestsize]) &&
+ m.a[besti+bestsize] == m.b[bestj+bestsize] {
+ bestsize += 1
+ }
+
+ return Match{A: besti, B: bestj, Size: bestsize}
+}
+
+// Return list of triples describing matching subsequences.
+//
+// Each triple is of the form (i, j, n), and means that
+// a[i:i+n] == b[j:j+n]. The triples are monotonically increasing in
+// i and in j. It's also guaranteed that if (i, j, n) and (i', j', n') are
+// adjacent triples in the list, and the second is not the last triple in the
+// list, then i+n != i' or j+n != j'. IOW, adjacent triples never describe
+// adjacent equal blocks.
+//
+// The last triple is a dummy, (len(a), len(b), 0), and is the only
+// triple with n==0.
+func (m *SequenceMatcher) GetMatchingBlocks() []Match {
+ if m.matchingBlocks != nil {
+ return m.matchingBlocks
+ }
+
+ var matchBlocks func(alo, ahi, blo, bhi int, matched []Match) []Match
+ matchBlocks = func(alo, ahi, blo, bhi int, matched []Match) []Match {
+ match := m.findLongestMatch(alo, ahi, blo, bhi)
+ i, j, k := match.A, match.B, match.Size
+ if match.Size > 0 {
+ if alo < i && blo < j {
+ matched = matchBlocks(alo, i, blo, j, matched)
+ }
+ matched = append(matched, match)
+ if i+k < ahi && j+k < bhi {
+ matched = matchBlocks(i+k, ahi, j+k, bhi, matched)
+ }
+ }
+ return matched
+ }
+ matched := matchBlocks(0, len(m.a), 0, len(m.b), nil)
+
+ // It's possible that we have adjacent equal blocks in the
+ // matching_blocks list now.
+ nonAdjacent := []Match{}
+ i1, j1, k1 := 0, 0, 0
+ for _, b := range matched {
+ // Is this block adjacent to i1, j1, k1?
+ i2, j2, k2 := b.A, b.B, b.Size
+ if i1+k1 == i2 && j1+k1 == j2 {
+ // Yes, so collapse them -- this just increases the length of
+ // the first block by the length of the second, and the first
+ // block so lengthened remains the block to compare against.
+ k1 += k2
+ } else {
+ // Not adjacent. Remember the first block (k1==0 means it's
+ // the dummy we started with), and make the second block the
+ // new block to compare against.
+ if k1 > 0 {
+ nonAdjacent = append(nonAdjacent, Match{i1, j1, k1})
+ }
+ i1, j1, k1 = i2, j2, k2
+ }
+ }
+ if k1 > 0 {
+ nonAdjacent = append(nonAdjacent, Match{i1, j1, k1})
+ }
+
+ nonAdjacent = append(nonAdjacent, Match{len(m.a), len(m.b), 0})
+ m.matchingBlocks = nonAdjacent
+ return m.matchingBlocks
+}
+
+// Return list of 5-tuples describing how to turn a into b.
+//
+// Each tuple is of the form (tag, i1, i2, j1, j2). The first tuple
+// has i1 == j1 == 0, and remaining tuples have i1 == the i2 from the
+// tuple preceding it, and likewise for j1 == the previous j2.
+//
+// The tags are characters, with these meanings:
+//
+// 'r' (replace): a[i1:i2] should be replaced by b[j1:j2]
+//
+// 'd' (delete): a[i1:i2] should be deleted, j1==j2 in this case.
+//
+// 'i' (insert): b[j1:j2] should be inserted at a[i1:i1], i1==i2 in this case.
+//
+// 'e' (equal): a[i1:i2] == b[j1:j2]
+func (m *SequenceMatcher) GetOpCodes() []OpCode {
+ if m.opCodes != nil {
+ return m.opCodes
+ }
+ i, j := 0, 0
+ matching := m.GetMatchingBlocks()
+ opCodes := make([]OpCode, 0, len(matching))
+ for _, m := range matching {
+ // invariant: we've pumped out correct diffs to change
+ // a[:i] into b[:j], and the next matching block is
+ // a[ai:ai+size] == b[bj:bj+size]. So we need to pump
+ // out a diff to change a[i:ai] into b[j:bj], pump out
+ // the matching block, and move (i,j) beyond the match
+ ai, bj, size := m.A, m.B, m.Size
+ tag := byte(0)
+ if i < ai && j < bj {
+ tag = 'r'
+ } else if i < ai {
+ tag = 'd'
+ } else if j < bj {
+ tag = 'i'
+ }
+ if tag > 0 {
+ opCodes = append(opCodes, OpCode{tag, i, ai, j, bj})
+ }
+ i, j = ai+size, bj+size
+ // the list of matching blocks is terminated by a
+ // sentinel with size 0
+ if size > 0 {
+ opCodes = append(opCodes, OpCode{'e', ai, i, bj, j})
+ }
+ }
+ m.opCodes = opCodes
+ return m.opCodes
+}
+
+// Isolate change clusters by eliminating ranges with no changes.
+//
+// Return a generator of groups with up to n lines of context.
+// Each group is in the same format as returned by GetOpCodes().
+func (m *SequenceMatcher) GetGroupedOpCodes(n int) [][]OpCode {
+ if n < 0 {
+ n = 3
+ }
+ codes := m.GetOpCodes()
+ if len(codes) == 0 {
+ codes = []OpCode{OpCode{'e', 0, 1, 0, 1}}
+ }
+ // Fixup leading and trailing groups if they show no changes.
+ if codes[0].Tag == 'e' {
+ c := codes[0]
+ i1, i2, j1, j2 := c.I1, c.I2, c.J1, c.J2
+ codes[0] = OpCode{c.Tag, max(i1, i2-n), i2, max(j1, j2-n), j2}
+ }
+ if codes[len(codes)-1].Tag == 'e' {
+ c := codes[len(codes)-1]
+ i1, i2, j1, j2 := c.I1, c.I2, c.J1, c.J2
+ codes[len(codes)-1] = OpCode{c.Tag, i1, min(i2, i1+n), j1, min(j2, j1+n)}
+ }
+ nn := n + n
+ groups := [][]OpCode{}
+ group := []OpCode{}
+ for _, c := range codes {
+ i1, i2, j1, j2 := c.I1, c.I2, c.J1, c.J2
+ // End the current group and start a new one whenever
+ // there is a large range with no changes.
+ if c.Tag == 'e' && i2-i1 > nn {
+ group = append(group, OpCode{c.Tag, i1, min(i2, i1+n),
+ j1, min(j2, j1+n)})
+ groups = append(groups, group)
+ group = []OpCode{}
+ i1, j1 = max(i1, i2-n), max(j1, j2-n)
+ }
+ group = append(group, OpCode{c.Tag, i1, i2, j1, j2})
+ }
+ if len(group) > 0 && !(len(group) == 1 && group[0].Tag == 'e') {
+ groups = append(groups, group)
+ }
+ return groups
+}
+
+// Return a measure of the sequences' similarity (float in [0,1]).
+//
+// Where T is the total number of elements in both sequences, and
+// M is the number of matches, this is 2.0*M / T.
+// Note that this is 1 if the sequences are identical, and 0 if
+// they have nothing in common.
+//
+// .Ratio() is expensive to compute if you haven't already computed
+// .GetMatchingBlocks() or .GetOpCodes(), in which case you may
+// want to try .QuickRatio() or .RealQuickRation() first to get an
+// upper bound.
+func (m *SequenceMatcher) Ratio() float64 {
+ matches := 0
+ for _, m := range m.GetMatchingBlocks() {
+ matches += m.Size
+ }
+ return calculateRatio(matches, len(m.a)+len(m.b))
+}
+
+// Return an upper bound on ratio() relatively quickly.
+//
+// This isn't defined beyond that it is an upper bound on .Ratio(), and
+// is faster to compute.
+func (m *SequenceMatcher) QuickRatio() float64 {
+ // viewing a and b as multisets, set matches to the cardinality
+ // of their intersection; this counts the number of matches
+ // without regard to order, so is clearly an upper bound
+ if m.fullBCount == nil {
+ m.fullBCount = map[string]int{}
+ for _, s := range m.b {
+ m.fullBCount[s] = m.fullBCount[s] + 1
+ }
+ }
+
+ // avail[x] is the number of times x appears in 'b' less the
+ // number of times we've seen it in 'a' so far ... kinda
+ avail := map[string]int{}
+ matches := 0
+ for _, s := range m.a {
+ n, ok := avail[s]
+ if !ok {
+ n = m.fullBCount[s]
+ }
+ avail[s] = n - 1
+ if n > 0 {
+ matches += 1
+ }
+ }
+ return calculateRatio(matches, len(m.a)+len(m.b))
+}
+
+// Return an upper bound on ratio() very quickly.
+//
+// This isn't defined beyond that it is an upper bound on .Ratio(), and
+// is faster to compute than either .Ratio() or .QuickRatio().
+func (m *SequenceMatcher) RealQuickRatio() float64 {
+ la, lb := len(m.a), len(m.b)
+ return calculateRatio(min(la, lb), la+lb)
+}
+
+// Convert range to the "ed" format
+func formatRangeUnified(start, stop int) string {
+ // Per the diff spec at http://www.unix.org/single_unix_specification/
+ beginning := start + 1 // lines start numbering with one
+ length := stop - start
+ if length == 1 {
+ return fmt.Sprintf("%d", beginning)
+ }
+ if length == 0 {
+ beginning -= 1 // empty ranges begin at line just before the range
+ }
+ return fmt.Sprintf("%d,%d", beginning, length)
+}
+
+// Unified diff parameters
+type UnifiedDiff struct {
+ A []string // First sequence lines
+ FromFile string // First file name
+ FromDate string // First file time
+ B []string // Second sequence lines
+ ToFile string // Second file name
+ ToDate string // Second file time
+ Eol string // Headers end of line, defaults to LF
+ Context int // Number of context lines
+}
+
+// Compare two sequences of lines; generate the delta as a unified diff.
+//
+// Unified diffs are a compact way of showing line changes and a few
+// lines of context. The number of context lines is set by 'n' which
+// defaults to three.
+//
+// By default, the diff control lines (those with ---, +++, or @@) are
+// created with a trailing newline. This is helpful so that inputs
+// created from file.readlines() result in diffs that are suitable for
+// file.writelines() since both the inputs and outputs have trailing
+// newlines.
+//
+// For inputs that do not have trailing newlines, set the lineterm
+// argument to "" so that the output will be uniformly newline free.
+//
+// The unidiff format normally has a header for filenames and modification
+// times. Any or all of these may be specified using strings for
+// 'fromfile', 'tofile', 'fromfiledate', and 'tofiledate'.
+// The modification times are normally expressed in the ISO 8601 format.
+func WriteUnifiedDiff(writer io.Writer, diff UnifiedDiff) error {
+ buf := bufio.NewWriter(writer)
+ defer buf.Flush()
+ w := func(format string, args ...interface{}) error {
+ _, err := buf.WriteString(fmt.Sprintf(format, args...))
+ return err
+ }
+
+ if len(diff.Eol) == 0 {
+ diff.Eol = "\n"
+ }
+
+ started := false
+ m := NewMatcher(diff.A, diff.B)
+ for _, g := range m.GetGroupedOpCodes(diff.Context) {
+ if !started {
+ started = true
+ fromDate := ""
+ if len(diff.FromDate) > 0 {
+ fromDate = "\t" + diff.FromDate
+ }
+ toDate := ""
+ if len(diff.ToDate) > 0 {
+ toDate = "\t" + diff.ToDate
+ }
+ err := w("--- %s%s%s", diff.FromFile, fromDate, diff.Eol)
+ if err != nil {
+ return err
+ }
+ err = w("+++ %s%s%s", diff.ToFile, toDate, diff.Eol)
+ if err != nil {
+ return err
+ }
+ }
+ first, last := g[0], g[len(g)-1]
+ range1 := formatRangeUnified(first.I1, last.I2)
+ range2 := formatRangeUnified(first.J1, last.J2)
+ if err := w("@@ -%s +%s @@%s", range1, range2, diff.Eol); err != nil {
+ return err
+ }
+ for _, c := range g {
+ i1, i2, j1, j2 := c.I1, c.I2, c.J1, c.J2
+ if c.Tag == 'e' {
+ for _, line := range diff.A[i1:i2] {
+ if err := w(" " + line); err != nil {
+ return err
+ }
+ }
+ continue
+ }
+ if c.Tag == 'r' || c.Tag == 'd' {
+ for _, line := range diff.A[i1:i2] {
+ if err := w("-" + line); err != nil {
+ return err
+ }
+ }
+ }
+ if c.Tag == 'r' || c.Tag == 'i' {
+ for _, line := range diff.B[j1:j2] {
+ if err := w("+" + line); err != nil {
+ return err
+ }
+ }
+ }
+ }
+ }
+ return nil
+}
+
+// Like WriteUnifiedDiff but returns the diff a string.
+func GetUnifiedDiffString(diff UnifiedDiff) (string, error) {
+ w := &bytes.Buffer{}
+ err := WriteUnifiedDiff(w, diff)
+ return string(w.Bytes()), err
+}
+
+// Convert range to the "ed" format.
+func formatRangeContext(start, stop int) string {
+ // Per the diff spec at http://www.unix.org/single_unix_specification/
+ beginning := start + 1 // lines start numbering with one
+ length := stop - start
+ if length == 0 {
+ beginning -= 1 // empty ranges begin at line just before the range
+ }
+ if length <= 1 {
+ return fmt.Sprintf("%d", beginning)
+ }
+ return fmt.Sprintf("%d,%d", beginning, beginning+length-1)
+}
+
+type ContextDiff UnifiedDiff
+
+// Compare two sequences of lines; generate the delta as a context diff.
+//
+// Context diffs are a compact way of showing line changes and a few
+// lines of context. The number of context lines is set by diff.Context
+// which defaults to three.
+//
+// By default, the diff control lines (those with *** or ---) are
+// created with a trailing newline.
+//
+// For inputs that do not have trailing newlines, set the diff.Eol
+// argument to "" so that the output will be uniformly newline free.
+//
+// The context diff format normally has a header for filenames and
+// modification times. Any or all of these may be specified using
+// strings for diff.FromFile, diff.ToFile, diff.FromDate, diff.ToDate.
+// The modification times are normally expressed in the ISO 8601 format.
+// If not specified, the strings default to blanks.
+func WriteContextDiff(writer io.Writer, diff ContextDiff) error {
+ buf := bufio.NewWriter(writer)
+ defer buf.Flush()
+ var diffErr error
+ w := func(format string, args ...interface{}) {
+ _, err := buf.WriteString(fmt.Sprintf(format, args...))
+ if diffErr == nil && err != nil {
+ diffErr = err
+ }
+ }
+
+ if len(diff.Eol) == 0 {
+ diff.Eol = "\n"
+ }
+
+ prefix := map[byte]string{
+ 'i': "+ ",
+ 'd': "- ",
+ 'r': "! ",
+ 'e': " ",
+ }
+
+ started := false
+ m := NewMatcher(diff.A, diff.B)
+ for _, g := range m.GetGroupedOpCodes(diff.Context) {
+ if !started {
+ started = true
+ fromDate := ""
+ if len(diff.FromDate) > 0 {
+ fromDate = "\t" + diff.FromDate
+ }
+ toDate := ""
+ if len(diff.ToDate) > 0 {
+ toDate = "\t" + diff.ToDate
+ }
+ w("*** %s%s%s", diff.FromFile, fromDate, diff.Eol)
+ w("--- %s%s%s", diff.ToFile, toDate, diff.Eol)
+ }
+
+ first, last := g[0], g[len(g)-1]
+ w("***************" + diff.Eol)
+
+ range1 := formatRangeContext(first.I1, last.I2)
+ w("*** %s ****%s", range1, diff.Eol)
+ for _, c := range g {
+ if c.Tag == 'r' || c.Tag == 'd' {
+ for _, cc := range g {
+ if cc.Tag == 'i' {
+ continue
+ }
+ for _, line := range diff.A[cc.I1:cc.I2] {
+ w(prefix[cc.Tag] + line)
+ }
+ }
+ break
+ }
+ }
+
+ range2 := formatRangeContext(first.J1, last.J2)
+ w("--- %s ----%s", range2, diff.Eol)
+ for _, c := range g {
+ if c.Tag == 'r' || c.Tag == 'i' {
+ for _, cc := range g {
+ if cc.Tag == 'd' {
+ continue
+ }
+ for _, line := range diff.B[cc.J1:cc.J2] {
+ w(prefix[cc.Tag] + line)
+ }
+ }
+ break
+ }
+ }
+ }
+ return diffErr
+}
+
+// Like WriteContextDiff but returns the diff a string.
+func GetContextDiffString(diff ContextDiff) (string, error) {
+ w := &bytes.Buffer{}
+ err := WriteContextDiff(w, diff)
+ return string(w.Bytes()), err
+}
+
+// Split a string on "\n" while preserving them. The output can be used
+// as input for UnifiedDiff and ContextDiff structures.
+func SplitLines(s string) []string {
+ lines := strings.SplitAfter(s, "\n")
+ lines[len(lines)-1] += "\n"
+ return lines
+}
diff --git a/Godeps/_workspace/src/github.com/pmezard/go-difflib/difflib/difflib_test.go b/Godeps/_workspace/src/github.com/pmezard/go-difflib/difflib/difflib_test.go
new file mode 100644
index 000000000..94670bea3
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/pmezard/go-difflib/difflib/difflib_test.go
@@ -0,0 +1,352 @@
+package difflib
+
+import (
+ "bytes"
+ "fmt"
+ "math"
+ "reflect"
+ "strings"
+ "testing"
+)
+
+func assertAlmostEqual(t *testing.T, a, b float64, places int) {
+ if math.Abs(a-b) > math.Pow10(-places) {
+ t.Errorf("%.7f != %.7f", a, b)
+ }
+}
+
+func assertEqual(t *testing.T, a, b interface{}) {
+ if !reflect.DeepEqual(a, b) {
+ t.Errorf("%v != %v", a, b)
+ }
+}
+
+func splitChars(s string) []string {
+ chars := make([]string, 0, len(s))
+ // Assume ASCII inputs
+ for i := 0; i != len(s); i++ {
+ chars = append(chars, string(s[i]))
+ }
+ return chars
+}
+
+func TestSequenceMatcherRatio(t *testing.T) {
+ s := NewMatcher(splitChars("abcd"), splitChars("bcde"))
+ assertEqual(t, s.Ratio(), 0.75)
+ assertEqual(t, s.QuickRatio(), 0.75)
+ assertEqual(t, s.RealQuickRatio(), 1.0)
+}
+
+func TestGetOptCodes(t *testing.T) {
+ a := "qabxcd"
+ b := "abycdf"
+ s := NewMatcher(splitChars(a), splitChars(b))
+ w := &bytes.Buffer{}
+ for _, op := range s.GetOpCodes() {
+ fmt.Fprintf(w, "%s a[%d:%d], (%s) b[%d:%d] (%s)\n", string(op.Tag),
+ op.I1, op.I2, a[op.I1:op.I2], op.J1, op.J2, b[op.J1:op.J2])
+ }
+ result := string(w.Bytes())
+ expected := `d a[0:1], (q) b[0:0] ()
+e a[1:3], (ab) b[0:2] (ab)
+r a[3:4], (x) b[2:3] (y)
+e a[4:6], (cd) b[3:5] (cd)
+i a[6:6], () b[5:6] (f)
+`
+ if expected != result {
+ t.Errorf("unexpected op codes: \n%s", result)
+ }
+}
+
+func TestGroupedOpCodes(t *testing.T) {
+ a := []string{}
+ for i := 0; i != 39; i++ {
+ a = append(a, fmt.Sprintf("%02d", i))
+ }
+ b := []string{}
+ b = append(b, a[:8]...)
+ b = append(b, " i")
+ b = append(b, a[8:19]...)
+ b = append(b, " x")
+ b = append(b, a[20:22]...)
+ b = append(b, a[27:34]...)
+ b = append(b, " y")
+ b = append(b, a[35:]...)
+ s := NewMatcher(a, b)
+ w := &bytes.Buffer{}
+ for _, g := range s.GetGroupedOpCodes(-1) {
+ fmt.Fprintf(w, "group\n")
+ for _, op := range g {
+ fmt.Fprintf(w, " %s, %d, %d, %d, %d\n", string(op.Tag),
+ op.I1, op.I2, op.J1, op.J2)
+ }
+ }
+ result := string(w.Bytes())
+ expected := `group
+ e, 5, 8, 5, 8
+ i, 8, 8, 8, 9
+ e, 8, 11, 9, 12
+group
+ e, 16, 19, 17, 20
+ r, 19, 20, 20, 21
+ e, 20, 22, 21, 23
+ d, 22, 27, 23, 23
+ e, 27, 30, 23, 26
+group
+ e, 31, 34, 27, 30
+ r, 34, 35, 30, 31
+ e, 35, 38, 31, 34
+`
+ if expected != result {
+ t.Errorf("unexpected op codes: \n%s", result)
+ }
+}
+
+func ExampleGetUnifiedDiffString() {
+ a := `one
+two
+three
+four`
+ b := `zero
+one
+three
+four`
+ diff := UnifiedDiff{
+ A: SplitLines(a),
+ B: SplitLines(b),
+ FromFile: "Original",
+ FromDate: "2005-01-26 23:30:50",
+ ToFile: "Current",
+ ToDate: "2010-04-02 10:20:52",
+ Context: 3,
+ }
+ result, _ := GetUnifiedDiffString(diff)
+ fmt.Printf(strings.Replace(result, "\t", " ", -1))
+ // Output:
+ // --- Original 2005-01-26 23:30:50
+ // +++ Current 2010-04-02 10:20:52
+ // @@ -1,4 +1,4 @@
+ // +zero
+ // one
+ // -two
+ // three
+ // four
+}
+
+func ExampleGetContextDiffString() {
+ a := `one
+two
+three
+four`
+ b := `zero
+one
+tree
+four`
+ diff := ContextDiff{
+ A: SplitLines(a),
+ B: SplitLines(b),
+ FromFile: "Original",
+ ToFile: "Current",
+ Context: 3,
+ Eol: "\n",
+ }
+ result, _ := GetContextDiffString(diff)
+ fmt.Printf(strings.Replace(result, "\t", " ", -1))
+ // Output:
+ // *** Original
+ // --- Current
+ // ***************
+ // *** 1,4 ****
+ // one
+ // ! two
+ // ! three
+ // four
+ // --- 1,4 ----
+ // + zero
+ // one
+ // ! tree
+ // four
+}
+
+func rep(s string, count int) string {
+ return strings.Repeat(s, count)
+}
+
+func TestWithAsciiOneInsert(t *testing.T) {
+ sm := NewMatcher(splitChars(rep("b", 100)),
+ splitChars("a"+rep("b", 100)))
+ assertAlmostEqual(t, sm.Ratio(), 0.995, 3)
+ assertEqual(t, sm.GetOpCodes(),
+ []OpCode{{'i', 0, 0, 0, 1}, {'e', 0, 100, 1, 101}})
+ assertEqual(t, len(sm.bPopular), 0)
+
+ sm = NewMatcher(splitChars(rep("b", 100)),
+ splitChars(rep("b", 50)+"a"+rep("b", 50)))
+ assertAlmostEqual(t, sm.Ratio(), 0.995, 3)
+ assertEqual(t, sm.GetOpCodes(),
+ []OpCode{{'e', 0, 50, 0, 50}, {'i', 50, 50, 50, 51}, {'e', 50, 100, 51, 101}})
+ assertEqual(t, len(sm.bPopular), 0)
+}
+
+func TestWithAsciiOnDelete(t *testing.T) {
+ sm := NewMatcher(splitChars(rep("a", 40)+"c"+rep("b", 40)),
+ splitChars(rep("a", 40)+rep("b", 40)))
+ assertAlmostEqual(t, sm.Ratio(), 0.994, 3)
+ assertEqual(t, sm.GetOpCodes(),
+ []OpCode{{'e', 0, 40, 0, 40}, {'d', 40, 41, 40, 40}, {'e', 41, 81, 40, 80}})
+}
+
+func TestWithAsciiBJunk(t *testing.T) {
+ isJunk := func(s string) bool {
+ return s == " "
+ }
+ sm := NewMatcherWithJunk(splitChars(rep("a", 40)+rep("b", 40)),
+ splitChars(rep("a", 44)+rep("b", 40)), true, isJunk)
+ assertEqual(t, sm.bJunk, map[string]struct{}{})
+
+ sm = NewMatcherWithJunk(splitChars(rep("a", 40)+rep("b", 40)),
+ splitChars(rep("a", 44)+rep("b", 40)+rep(" ", 20)), false, isJunk)
+ assertEqual(t, sm.bJunk, map[string]struct{}{" ": struct{}{}})
+
+ isJunk = func(s string) bool {
+ return s == " " || s == "b"
+ }
+ sm = NewMatcherWithJunk(splitChars(rep("a", 40)+rep("b", 40)),
+ splitChars(rep("a", 44)+rep("b", 40)+rep(" ", 20)), false, isJunk)
+ assertEqual(t, sm.bJunk, map[string]struct{}{" ": struct{}{}, "b": struct{}{}})
+}
+
+func TestSFBugsRatioForNullSeqn(t *testing.T) {
+ sm := NewMatcher(nil, nil)
+ assertEqual(t, sm.Ratio(), 1.0)
+ assertEqual(t, sm.QuickRatio(), 1.0)
+ assertEqual(t, sm.RealQuickRatio(), 1.0)
+}
+
+func TestSFBugsComparingEmptyLists(t *testing.T) {
+ groups := NewMatcher(nil, nil).GetGroupedOpCodes(-1)
+ assertEqual(t, len(groups), 0)
+ diff := UnifiedDiff{
+ FromFile: "Original",
+ ToFile: "Current",
+ Context: 3,
+ }
+ result, err := GetUnifiedDiffString(diff)
+ assertEqual(t, err, nil)
+ assertEqual(t, result, "")
+}
+
+func TestOutputFormatRangeFormatUnified(t *testing.T) {
+ // Per the diff spec at http://www.unix.org/single_unix_specification/
+ //
+ // Each <range> field shall be of the form:
+ // %1d", <beginning line number> if the range contains exactly one line,
+ // and:
+ // "%1d,%1d", <beginning line number>, <number of lines> otherwise.
+ // If a range is empty, its beginning line number shall be the number of
+ // the line just before the range, or 0 if the empty range starts the file.
+ fm := formatRangeUnified
+ assertEqual(t, fm(3, 3), "3,0")
+ assertEqual(t, fm(3, 4), "4")
+ assertEqual(t, fm(3, 5), "4,2")
+ assertEqual(t, fm(3, 6), "4,3")
+ assertEqual(t, fm(0, 0), "0,0")
+}
+
+func TestOutputFormatRangeFormatContext(t *testing.T) {
+ // Per the diff spec at http://www.unix.org/single_unix_specification/
+ //
+ // The range of lines in file1 shall be written in the following format
+ // if the range contains two or more lines:
+ // "*** %d,%d ****\n", <beginning line number>, <ending line number>
+ // and the following format otherwise:
+ // "*** %d ****\n", <ending line number>
+ // The ending line number of an empty range shall be the number of the preceding line,
+ // or 0 if the range is at the start of the file.
+ //
+ // Next, the range of lines in file2 shall be written in the following format
+ // if the range contains two or more lines:
+ // "--- %d,%d ----\n", <beginning line number>, <ending line number>
+ // and the following format otherwise:
+ // "--- %d ----\n", <ending line number>
+ fm := formatRangeContext
+ assertEqual(t, fm(3, 3), "3")
+ assertEqual(t, fm(3, 4), "4")
+ assertEqual(t, fm(3, 5), "4,5")
+ assertEqual(t, fm(3, 6), "4,6")
+ assertEqual(t, fm(0, 0), "0")
+}
+
+func TestOutputFormatTabDelimiter(t *testing.T) {
+ diff := UnifiedDiff{
+ A: splitChars("one"),
+ B: splitChars("two"),
+ FromFile: "Original",
+ FromDate: "2005-01-26 23:30:50",
+ ToFile: "Current",
+ ToDate: "2010-04-12 10:20:52",
+ Eol: "\n",
+ }
+ ud, err := GetUnifiedDiffString(diff)
+ assertEqual(t, err, nil)
+ assertEqual(t, SplitLines(ud)[:2], []string{
+ "--- Original\t2005-01-26 23:30:50\n",
+ "+++ Current\t2010-04-12 10:20:52\n",
+ })
+ cd, err := GetContextDiffString(ContextDiff(diff))
+ assertEqual(t, err, nil)
+ assertEqual(t, SplitLines(cd)[:2], []string{
+ "*** Original\t2005-01-26 23:30:50\n",
+ "--- Current\t2010-04-12 10:20:52\n",
+ })
+}
+
+func TestOutputFormatNoTrailingTabOnEmptyFiledate(t *testing.T) {
+ diff := UnifiedDiff{
+ A: splitChars("one"),
+ B: splitChars("two"),
+ FromFile: "Original",
+ ToFile: "Current",
+ Eol: "\n",
+ }
+ ud, err := GetUnifiedDiffString(diff)
+ assertEqual(t, err, nil)
+ assertEqual(t, SplitLines(ud)[:2], []string{"--- Original\n", "+++ Current\n"})
+
+ cd, err := GetContextDiffString(ContextDiff(diff))
+ assertEqual(t, err, nil)
+ assertEqual(t, SplitLines(cd)[:2], []string{"*** Original\n", "--- Current\n"})
+}
+
+func TestSplitLines(t *testing.T) {
+ allTests := []struct {
+ input string
+ want []string
+ }{
+ {"foo", []string{"foo\n"}},
+ {"foo\nbar", []string{"foo\n", "bar\n"}},
+ {"foo\nbar\n", []string{"foo\n", "bar\n", "\n"}},
+ }
+ for _, test := range allTests {
+ assertEqual(t, SplitLines(test.input), test.want)
+ }
+}
+
+func benchmarkSplitLines(b *testing.B, count int) {
+ str := strings.Repeat("foo\n", count)
+
+ b.ResetTimer()
+
+ n := 0
+ for i := 0; i < b.N; i++ {
+ n += len(SplitLines(str))
+ }
+}
+
+func BenchmarkSplitLines100(b *testing.B) {
+ benchmarkSplitLines(b, 100)
+}
+
+func BenchmarkSplitLines10000(b *testing.B) {
+ benchmarkSplitLines(b, 10000)
+}
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/corrupt/huge_tag_exif.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/corrupt/huge_tag_exif.jpg
new file mode 100644
index 000000000..ffb31743d
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/corrupt/huge_tag_exif.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/corrupt/infinite_loop_exif.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/corrupt/infinite_loop_exif.jpg
new file mode 100644
index 000000000..6b0994713
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/corrupt/infinite_loop_exif.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/corrupt/max_uint32_exif.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/corrupt/max_uint32_exif.jpg
new file mode 100644
index 000000000..2a51b0ba0
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/corrupt/max_uint32_exif.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/example_test.go b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/example_test.go
index 45fd5d4ad..dd99da6db 100644
--- a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/example_test.go
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/example_test.go
@@ -5,7 +5,7 @@ import (
"log"
"os"
- "github.com/rwcarlsen/goexif/exif"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif"
"github.com/rwcarlsen/goexif/mknote"
)
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/exif.go b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/exif.go
index b420729da..b24793a3c 100644
--- a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/exif.go
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/exif.go
@@ -16,7 +16,7 @@ import (
"strings"
"time"
- "github.com/rwcarlsen/goexif/tiff"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/rwcarlsen/goexif/tiff"
)
const (
@@ -574,7 +574,7 @@ func newAppSec(marker byte, r io.Reader) (*appSec, error) {
}
dataLenBytes := make([]byte, 2)
- for k,_ := range dataLenBytes {
+ for k, _ := range dataLenBytes {
c, err := br.ReadByte()
if err != nil {
return nil, err
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/exif_test.go b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/exif_test.go
index c53f1ddda..70dad6009 100644
--- a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/exif_test.go
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/exif_test.go
@@ -12,7 +12,7 @@ import (
"strings"
"testing"
- "github.com/rwcarlsen/goexif/tiff"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/rwcarlsen/goexif/tiff"
)
var dataDir = flag.String("test_data_dir", ".", "Directory where the data files for testing are located")
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/regen_regress.go b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/regen_regress.go
index 17bac5287..52fb2dd08 100644
--- a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/regen_regress.go
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/regen_regress.go
@@ -11,8 +11,8 @@ import (
"path/filepath"
"strings"
- "github.com/rwcarlsen/goexif/exif"
- "github.com/rwcarlsen/goexif/tiff"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/rwcarlsen/goexif/tiff"
)
func main() {
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/sample1.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/sample1.jpg
new file mode 100644
index 000000000..87bcf8e33
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/sample1.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2004-01-11-22-45-15-sep-2004-01-11-22-45-15a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2004-01-11-22-45-15-sep-2004-01-11-22-45-15a.jpg
new file mode 100644
index 000000000..6f3be2480
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2004-01-11-22-45-15-sep-2004-01-11-22-45-15a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-08-03-16-29-38-sep-2006-08-03-16-29-38a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-08-03-16-29-38-sep-2006-08-03-16-29-38a.jpg
new file mode 100644
index 000000000..39891df84
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-08-03-16-29-38-sep-2006-08-03-16-29-38a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-11-11-19-17-56-sep-2006-11-11-19-17-56a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-11-11-19-17-56-sep-2006-11-11-19-17-56a.jpg
new file mode 100644
index 000000000..4721e7542
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-11-11-19-17-56-sep-2006-11-11-19-17-56a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-12-10-23-58-20-sep-2006-12-10-23-58-20a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-12-10-23-58-20-sep-2006-12-10-23-58-20a.jpg
new file mode 100644
index 000000000..8c0997ea0
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-12-10-23-58-20-sep-2006-12-10-23-58-20a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-12-17-07-09-14-sep-2006-12-17-07-09-14a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-12-17-07-09-14-sep-2006-12-17-07-09-14a.jpg
new file mode 100644
index 000000000..1c6e7601d
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-12-17-07-09-14-sep-2006-12-17-07-09-14a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-12-21-15-55-26-sep-2006-12-21-15-55-26a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-12-21-15-55-26-sep-2006-12-21-15-55-26a.jpg
new file mode 100644
index 000000000..8aaf632be
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2006-12-21-15-55-26-sep-2006-12-21-15-55-26a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-01-01-12-00-00-sep-2007-01-01-12-00-00a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-01-01-12-00-00-sep-2007-01-01-12-00-00a.jpg
new file mode 100644
index 000000000..c44db32c1
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-01-01-12-00-00-sep-2007-01-01-12-00-00a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-01-17-21-49-44-sep-2007-01-17-21-49-44a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-01-17-21-49-44-sep-2007-01-17-21-49-44a.jpg
new file mode 100644
index 000000000..f025460d6
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-01-17-21-49-44-sep-2007-01-17-21-49-44a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-02-02-18-13-29-sep-2007-02-02-18-13-29a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-02-02-18-13-29-sep-2007-02-02-18-13-29a.jpg
new file mode 100644
index 000000000..3f1fbfbdf
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-02-02-18-13-29-sep-2007-02-02-18-13-29a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-02-17-02-21-sep-2007-05-02-17-02-21a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-02-17-02-21-sep-2007-05-02-17-02-21a.jpg
new file mode 100644
index 000000000..351935778
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-02-17-02-21-sep-2007-05-02-17-02-21a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-12-08-19-07-sep-2007-05-12-08-19-07a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-12-08-19-07-sep-2007-05-12-08-19-07a.jpg
new file mode 100644
index 000000000..175b60663
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-12-08-19-07-sep-2007-05-12-08-19-07a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-26-04-49-45-sep-2007-05-26-04-49-45a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-26-04-49-45-sep-2007-05-26-04-49-45a.jpg
new file mode 100644
index 000000000..90a6c92b0
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-26-04-49-45-sep-2007-05-26-04-49-45a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-30-14-28-01-sep-2007-05-30-14-28-01a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-30-14-28-01-sep-2007-05-30-14-28-01a.jpg
new file mode 100644
index 000000000..74f30c351
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-05-30-14-28-01-sep-2007-05-30-14-28-01a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-06-06-16-15-25-sep-2007-06-06-16-15-25a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-06-06-16-15-25-sep-2007-06-06-16-15-25a.jpg
new file mode 100644
index 000000000..0a025a0b8
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-06-06-16-15-25-sep-2007-06-06-16-15-25a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-06-26-10-13-04-sep-2007-06-26-10-13-04a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-06-26-10-13-04-sep-2007-06-26-10-13-04a.jpg
new file mode 100644
index 000000000..526cefafd
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-06-26-10-13-04-sep-2007-06-26-10-13-04a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-07-13-17-02-30-sep-2007-07-13-17-02-30a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-07-13-17-02-30-sep-2007-07-13-17-02-30a.jpg
new file mode 100644
index 000000000..c39e90fca
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-07-13-17-02-30-sep-2007-07-13-17-02-30a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-08-15-14-42-46-sep-2007-08-15-14-42-46a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-08-15-14-42-46-sep-2007-08-15-14-42-46a.jpg
new file mode 100644
index 000000000..81be2a200
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-08-15-14-42-46-sep-2007-08-15-14-42-46a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-08-24-02-40-42-sep-2007-08-24-02-40-42a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-08-24-02-40-42-sep-2007-08-24-02-40-42a.jpg
new file mode 100644
index 000000000..aa457643d
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-08-24-02-40-42-sep-2007-08-24-02-40-42a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-11-07-11-40-44-sep-2007-11-07-11-40-44a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-11-07-11-40-44-sep-2007-11-07-11-40-44a.jpg
new file mode 100644
index 000000000..916a2b6c3
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2007-11-07-11-40-44-sep-2007-11-07-11-40-44a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-06-02-10-03-57-sep-2008-06-02-10-03-57a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-06-02-10-03-57-sep-2008-06-02-10-03-57a.jpg
new file mode 100644
index 000000000..0aedf3003
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-06-02-10-03-57-sep-2008-06-02-10-03-57a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-06-06-13-29-29-sep-2008-06-06-13-29-29a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-06-06-13-29-29-sep-2008-06-06-13-29-29a.jpg
new file mode 100644
index 000000000..a291900e3
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-06-06-13-29-29-sep-2008-06-06-13-29-29a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-06-17-01-21-30-sep-2008-06-17-01-21-30a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-06-17-01-21-30-sep-2008-06-17-01-21-30a.jpg
new file mode 100644
index 000000000..805d1d0f0
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-06-17-01-21-30-sep-2008-06-17-01-21-30a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-09-02-17-43-48-sep-2008-09-02-17-43-48a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-09-02-17-43-48-sep-2008-09-02-17-43-48a.jpg
new file mode 100644
index 000000000..c866423c7
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2008-09-02-17-43-48-sep-2008-09-02-17-43-48a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-03-26-09-23-20-sep-2009-03-26-09-23-20a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-03-26-09-23-20-sep-2009-03-26-09-23-20a.jpg
new file mode 100644
index 000000000..761bf6488
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-03-26-09-23-20-sep-2009-03-26-09-23-20a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-04-11-03-01-38-sep-2009-04-11-03-01-38a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-04-11-03-01-38-sep-2009-04-11-03-01-38a.jpg
new file mode 100644
index 000000000..484fe3759
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-04-11-03-01-38-sep-2009-04-11-03-01-38a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-04-23-07-21-35-sep-2009-04-23-07-21-35a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-04-23-07-21-35-sep-2009-04-23-07-21-35a.jpg
new file mode 100644
index 000000000..f39db7d9a
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-04-23-07-21-35-sep-2009-04-23-07-21-35a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-06-11-19-23-18-sep-2009-06-11-19-23-18a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-06-11-19-23-18-sep-2009-06-11-19-23-18a.jpg
new file mode 100644
index 000000000..599764bf8
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-06-11-19-23-18-sep-2009-06-11-19-23-18a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-06-20-07-59-05-sep-2009-06-20-07-59-05a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-06-20-07-59-05-sep-2009-06-20-07-59-05a.jpg
new file mode 100644
index 000000000..8718269e9
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-06-20-07-59-05-sep-2009-06-20-07-59-05a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-08-05-08-11-31-sep-2009-08-05-08-11-31a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-08-05-08-11-31-sep-2009-08-05-08-11-31a.jpg
new file mode 100644
index 000000000..9598b2136
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2009-08-05-08-11-31-sep-2009-08-05-08-11-31a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2010-06-08-04-44-24-sep-2010-06-08-04-44-24a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2010-06-08-04-44-24-sep-2010-06-08-04-44-24a.jpg
new file mode 100644
index 000000000..33f7d9b20
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2010-06-08-04-44-24-sep-2010-06-08-04-44-24a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2010-06-20-20-07-39-sep-2010-06-20-20-07-39a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2010-06-20-20-07-39-sep-2010-06-20-20-07-39a.jpg
new file mode 100644
index 000000000..ec2faa1a9
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2010-06-20-20-07-39-sep-2010-06-20-20-07-39a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2010-09-02-08-43-02-sep-2010-09-02-08-43-02a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2010-09-02-08-43-02-sep-2010-09-02-08-43-02a.jpg
new file mode 100644
index 000000000..3b7f906db
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2010-09-02-08-43-02-sep-2010-09-02-08-43-02a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-01-24-22-06-02-sep-2011-01-24-22-06-02a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-01-24-22-06-02-sep-2011-01-24-22-06-02a.jpg
new file mode 100644
index 000000000..1a4af42d3
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-01-24-22-06-02-sep-2011-01-24-22-06-02a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-03-07-09-28-03-sep-2011-03-07-09-28-03a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-03-07-09-28-03-sep-2011-03-07-09-28-03a.jpg
new file mode 100644
index 000000000..42d347656
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-03-07-09-28-03-sep-2011-03-07-09-28-03a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-05-07-13-02-49-sep-2011-05-07-13-02-49a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-05-07-13-02-49-sep-2011-05-07-13-02-49a.jpg
new file mode 100644
index 000000000..7e84ec481
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-05-07-13-02-49-sep-2011-05-07-13-02-49a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-08-07-19-22-57-sep-2011-08-07-19-22-57a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-08-07-19-22-57-sep-2011-08-07-19-22-57a.jpg
new file mode 100644
index 000000000..16fad2ecb
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-08-07-19-22-57-sep-2011-08-07-19-22-57a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-10-28-17-50-18-sep-2011-10-28-17-50-18a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-10-28-17-50-18-sep-2011-10-28-17-50-18a.jpg
new file mode 100644
index 000000000..f6020a8c9
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-10-28-17-50-18-sep-2011-10-28-17-50-18a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-10-28-18-25-43-sep-2011-10-28-18-25-43.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-10-28-18-25-43-sep-2011-10-28-18-25-43.jpg
new file mode 100644
index 000000000..3aa541878
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-10-28-18-25-43-sep-2011-10-28-18-25-43.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-11-18-15-38-34-sep-Photo11181538.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-11-18-15-38-34-sep-Photo11181538.jpg
new file mode 100644
index 000000000..48ef933a2
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2011-11-18-15-38-34-sep-Photo11181538.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-06-02-10-12-28-sep-2012-06-02-10-12-28.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-06-02-10-12-28-sep-2012-06-02-10-12-28.jpg
new file mode 100644
index 000000000..f83270eee
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-06-02-10-12-28-sep-2012-06-02-10-12-28.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-09-21-22-07-34-sep-2012-09-21-22-07-34.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-09-21-22-07-34-sep-2012-09-21-22-07-34.jpg
new file mode 100644
index 000000000..5cdb55aac
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-09-21-22-07-34-sep-2012-09-21-22-07-34.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-12-19-21-38-40-sep-temple_square1.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-12-19-21-38-40-sep-temple_square1.jpg
new file mode 100644
index 000000000..4cc074f8e
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-12-19-21-38-40-sep-temple_square1.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-12-21-11-15-19-sep-IMG_0001.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-12-21-11-15-19-sep-IMG_0001.jpg
new file mode 100644
index 000000000..ba23c3c42
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2012-12-21-11-15-19-sep-IMG_0001.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2013-02-05-23-12-09-sep-DSCI0001.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2013-02-05-23-12-09-sep-DSCI0001.jpg
new file mode 100644
index 000000000..0396148af
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2013-02-05-23-12-09-sep-DSCI0001.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2099-08-12-19-59-29-sep-2099-08-12-19-59-29a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2099-08-12-19-59-29-sep-2099-08-12-19-59-29a.jpg
new file mode 100644
index 000000000..9729182b3
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2099-08-12-19-59-29-sep-2099-08-12-19-59-29a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2216-11-15-11-46-51-sep-2216-11-15-11-46-51a.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2216-11-15-11-46-51-sep-2216-11-15-11-46-51a.jpg
new file mode 100644
index 000000000..ae53a397a
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/2216-11-15-11-46-51-sep-2216-11-15-11-46-51a.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/FailedHash-NoDate-sep-remembory.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/FailedHash-NoDate-sep-remembory.jpg
new file mode 100644
index 000000000..9fb415124
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/FailedHash-NoDate-sep-remembory.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f1-exif.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f1-exif.jpg
new file mode 100644
index 000000000..ff003e394
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f1-exif.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f2-exif.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f2-exif.jpg
new file mode 100644
index 000000000..7e0f170e3
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f2-exif.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f3-exif.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f3-exif.jpg
new file mode 100644
index 000000000..3ed7b16a7
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f3-exif.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f4-exif.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f4-exif.jpg
new file mode 100644
index 000000000..0e081f919
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f4-exif.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f5-exif.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f5-exif.jpg
new file mode 100644
index 000000000..e8d875479
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f5-exif.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f6-exif.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f6-exif.jpg
new file mode 100644
index 000000000..4e2c86415
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f6-exif.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f7-exif.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f7-exif.jpg
new file mode 100644
index 000000000..b5dddea44
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f7-exif.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f8-exif.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f8-exif.jpg
new file mode 100644
index 000000000..fb050fc6d
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/f8-exif.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/geodegrees_as_string.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/geodegrees_as_string.jpg
new file mode 100644
index 000000000..280a70ec4
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/geodegrees_as_string.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/has-lens-info.jpg b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/has-lens-info.jpg
new file mode 100644
index 000000000..57757da33
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/exif/samples/has-lens-info.jpg
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/rwcarlsen/goexif/tiff/sample1.tif b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/tiff/sample1.tif
new file mode 100644
index 000000000..fe51399c5
--- /dev/null
+++ b/Godeps/_workspace/src/github.com/rwcarlsen/goexif/tiff/sample1.tif
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/stretchr/objx/accessors_test.go b/Godeps/_workspace/src/github.com/stretchr/objx/accessors_test.go
index ce5d8e4aa..03915399b 100644
--- a/Godeps/_workspace/src/github.com/stretchr/objx/accessors_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/objx/accessors_test.go
@@ -1,7 +1,7 @@
package objx
import (
- "github.com/stretchr/testify/assert"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
"testing"
)
diff --git a/Godeps/_workspace/src/github.com/stretchr/objx/conversions_test.go b/Godeps/_workspace/src/github.com/stretchr/objx/conversions_test.go
index e9ccd2987..3f68f7061 100644
--- a/Godeps/_workspace/src/github.com/stretchr/objx/conversions_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/objx/conversions_test.go
@@ -1,7 +1,7 @@
package objx
import (
- "github.com/stretchr/testify/assert"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
"testing"
)
diff --git a/Godeps/_workspace/src/github.com/stretchr/objx/fixture_test.go b/Godeps/_workspace/src/github.com/stretchr/objx/fixture_test.go
index 27f7d9049..9e8b55a75 100644
--- a/Godeps/_workspace/src/github.com/stretchr/objx/fixture_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/objx/fixture_test.go
@@ -1,7 +1,7 @@
package objx
import (
- "github.com/stretchr/testify/assert"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
"testing"
)
diff --git a/Godeps/_workspace/src/github.com/stretchr/objx/map_test.go b/Godeps/_workspace/src/github.com/stretchr/objx/map_test.go
index 1f8b45c61..e1430512e 100644
--- a/Godeps/_workspace/src/github.com/stretchr/objx/map_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/objx/map_test.go
@@ -1,7 +1,7 @@
package objx
import (
- "github.com/stretchr/testify/assert"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
"testing"
)
diff --git a/Godeps/_workspace/src/github.com/stretchr/objx/mutations_test.go b/Godeps/_workspace/src/github.com/stretchr/objx/mutations_test.go
index e20ee23bc..fb0fccfca 100644
--- a/Godeps/_workspace/src/github.com/stretchr/objx/mutations_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/objx/mutations_test.go
@@ -1,7 +1,7 @@
package objx
import (
- "github.com/stretchr/testify/assert"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
"testing"
)
diff --git a/Godeps/_workspace/src/github.com/stretchr/objx/security_test.go b/Godeps/_workspace/src/github.com/stretchr/objx/security_test.go
index 8f0898f62..a438fa65a 100644
--- a/Godeps/_workspace/src/github.com/stretchr/objx/security_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/objx/security_test.go
@@ -1,7 +1,7 @@
package objx
import (
- "github.com/stretchr/testify/assert"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
"testing"
)
diff --git a/Godeps/_workspace/src/github.com/stretchr/objx/simple_example_test.go b/Godeps/_workspace/src/github.com/stretchr/objx/simple_example_test.go
index 5408c7fd3..345c7ce54 100644
--- a/Godeps/_workspace/src/github.com/stretchr/objx/simple_example_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/objx/simple_example_test.go
@@ -1,7 +1,7 @@
package objx
import (
- "github.com/stretchr/testify/assert"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
"testing"
)
diff --git a/Godeps/_workspace/src/github.com/stretchr/objx/tests_test.go b/Godeps/_workspace/src/github.com/stretchr/objx/tests_test.go
index bcc1eb03d..81ad09005 100644
--- a/Godeps/_workspace/src/github.com/stretchr/objx/tests_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/objx/tests_test.go
@@ -1,7 +1,7 @@
package objx
import (
- "github.com/stretchr/testify/assert"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
"testing"
)
diff --git a/Godeps/_workspace/src/github.com/stretchr/objx/type_specific_codegen_test.go b/Godeps/_workspace/src/github.com/stretchr/objx/type_specific_codegen_test.go
index f7a4fceea..f76783485 100644
--- a/Godeps/_workspace/src/github.com/stretchr/objx/type_specific_codegen_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/objx/type_specific_codegen_test.go
@@ -2,7 +2,7 @@ package objx
import (
"fmt"
- "github.com/stretchr/testify/assert"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
"testing"
)
diff --git a/Godeps/_workspace/src/github.com/stretchr/objx/value.go b/Godeps/_workspace/src/github.com/stretchr/objx/value.go
index 7aaef06b1..956a2211d 100644
--- a/Godeps/_workspace/src/github.com/stretchr/objx/value.go
+++ b/Godeps/_workspace/src/github.com/stretchr/objx/value.go
@@ -1,5 +1,10 @@
package objx
+import (
+ "fmt"
+ "strconv"
+)
+
// Value provides methods for extracting interface{} data in various
// types.
type Value struct {
@@ -11,3 +16,41 @@ type Value struct {
func (v *Value) Data() interface{} {
return v.data
}
+
+// String returns the value always as a string
+func (v *Value) String() string {
+ switch {
+ case v.IsStr():
+ return v.Str()
+ case v.IsBool():
+ return strconv.FormatBool(v.Bool())
+ case v.IsFloat32():
+ return strconv.FormatFloat(float64(v.Float32()), 'f', -1, 32)
+ case v.IsFloat64():
+ return strconv.FormatFloat(v.Float64(), 'f', -1, 64)
+ case v.IsInt():
+ return strconv.FormatInt(int64(v.Int()), 10)
+ case v.IsInt():
+ return strconv.FormatInt(int64(v.Int()), 10)
+ case v.IsInt8():
+ return strconv.FormatInt(int64(v.Int8()), 10)
+ case v.IsInt16():
+ return strconv.FormatInt(int64(v.Int16()), 10)
+ case v.IsInt32():
+ return strconv.FormatInt(int64(v.Int32()), 10)
+ case v.IsInt64():
+ return strconv.FormatInt(v.Int64(), 10)
+ case v.IsUint():
+ return strconv.FormatUint(uint64(v.Uint()), 10)
+ case v.IsUint8():
+ return strconv.FormatUint(uint64(v.Uint8()), 10)
+ case v.IsUint16():
+ return strconv.FormatUint(uint64(v.Uint16()), 10)
+ case v.IsUint32():
+ return strconv.FormatUint(uint64(v.Uint32()), 10)
+ case v.IsUint64():
+ return strconv.FormatUint(v.Uint64(), 10)
+ }
+
+ return fmt.Sprintf("%#v", v.Data())
+}
diff --git a/Godeps/_workspace/src/github.com/stretchr/objx/value_test.go b/Godeps/_workspace/src/github.com/stretchr/objx/value_test.go
index 0bc65d92c..924406010 100644
--- a/Godeps/_workspace/src/github.com/stretchr/objx/value_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/objx/value_test.go
@@ -1 +1,66 @@
package objx
+
+import (
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
+ "testing"
+)
+
+func TestStringTypeString(t *testing.T) {
+ m := New(map[string]interface{}{"string": "foo"})
+ assert.Equal(t, "foo", m.Get("string").String())
+}
+
+func TestStringTypeBool(t *testing.T) {
+ m := New(map[string]interface{}{"bool": true})
+ assert.Equal(t, "true", m.Get("bool").String())
+}
+
+func TestStringTypeInt(t *testing.T) {
+ m := New(map[string]interface{}{
+ "int": int(1),
+ "int8": int8(8),
+ "int16": int16(16),
+ "int32": int32(32),
+ "int64": int64(64),
+ })
+
+ assert.Equal(t, "1", m.Get("int").String())
+ assert.Equal(t, "8", m.Get("int8").String())
+ assert.Equal(t, "16", m.Get("int16").String())
+ assert.Equal(t, "32", m.Get("int32").String())
+ assert.Equal(t, "64", m.Get("int64").String())
+}
+
+func TestStringTypeUint(t *testing.T) {
+ m := New(map[string]interface{}{
+ "uint": uint(1),
+ "uint8": uint8(8),
+ "uint16": uint16(16),
+ "uint32": uint32(32),
+ "uint64": uint64(64),
+ })
+
+ assert.Equal(t, "1", m.Get("uint").String())
+ assert.Equal(t, "8", m.Get("uint8").String())
+ assert.Equal(t, "16", m.Get("uint16").String())
+ assert.Equal(t, "32", m.Get("uint32").String())
+ assert.Equal(t, "64", m.Get("uint64").String())
+}
+
+func TestStringTypeFloat(t *testing.T) {
+ m := New(map[string]interface{}{
+ "float32": float32(32.32),
+ "float64": float64(64.64),
+ })
+
+ assert.Equal(t, "32.32", m.Get("float32").String())
+ assert.Equal(t, "64.64", m.Get("float64").String())
+}
+
+func TestStringTypeOther(t *testing.T) {
+ m := New(map[string]interface{}{
+ "other": []string{"foo", "bar"},
+ })
+
+ assert.Equal(t, "[]string{\"foo\", \"bar\"}", m.Get("other").String())
+}
diff --git a/Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions.go b/Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions.go
index 818cd7b0e..fac7ab828 100644
--- a/Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions.go
+++ b/Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions.go
@@ -3,6 +3,7 @@ package assert
import (
"bufio"
"bytes"
+ "encoding/json"
"fmt"
"math"
"reflect"
@@ -10,6 +11,11 @@ import (
"runtime"
"strings"
"time"
+ "unicode"
+ "unicode/utf8"
+
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/davecgh/go-spew/spew"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/pmezard/go-difflib/difflib"
)
// TestingT is an interface wrapper around *testing.T
@@ -33,11 +39,7 @@ func ObjectsAreEqual(expected, actual interface{}) bool {
return expected == actual
}
- if reflect.DeepEqual(expected, actual) {
- return true
- }
-
- return false
+ return reflect.DeepEqual(expected, actual)
}
@@ -49,12 +51,13 @@ func ObjectsAreEqualValues(expected, actual interface{}) bool {
}
actualType := reflect.TypeOf(actual)
+ if actualType == nil {
+ return false
+ }
expectedValue := reflect.ValueOf(expected)
- if expectedValue.Type().ConvertibleTo(actualType) {
+ if expectedValue.IsValid() && expectedValue.Type().ConvertibleTo(actualType) {
// Attempt comparison after type conversion
- if reflect.DeepEqual(actual, expectedValue.Convert(actualType).Interface()) {
- return true
- }
+ return reflect.DeepEqual(expectedValue.Convert(actualType).Interface(), actual)
}
return false
@@ -64,28 +67,67 @@ func ObjectsAreEqualValues(expected, actual interface{}) bool {
internally, causing it to print the file:line of the assert method, rather than where
the problem actually occured in calling code.*/
-// CallerInfo returns a string containing the file and line number of the assert call
-// that failed.
-func CallerInfo() string {
+// CallerInfo returns an array of strings containing the file and line number
+// of each stack frame leading from the current test to the assert call that
+// failed.
+func CallerInfo() []string {
+ pc := uintptr(0)
file := ""
line := 0
ok := false
+ name := ""
+ callers := []string{}
for i := 0; ; i++ {
- _, file, line, ok = runtime.Caller(i)
+ pc, file, line, ok = runtime.Caller(i)
if !ok {
- return ""
+ return nil
}
+
+ // This is a huge edge case, but it will panic if this is the case, see #180
+ if file == "<autogenerated>" {
+ break
+ }
+
parts := strings.Split(file, "/")
dir := parts[len(parts)-2]
file = parts[len(parts)-1]
if (dir != "assert" && dir != "mock" && dir != "require") || file == "mock_test.go" {
+ callers = append(callers, fmt.Sprintf("%s:%d", file, line))
+ }
+
+ f := runtime.FuncForPC(pc)
+ if f == nil {
+ break
+ }
+ name = f.Name()
+ // Drop the package
+ segments := strings.Split(name, ".")
+ name = segments[len(segments)-1]
+ if isTest(name, "Test") ||
+ isTest(name, "Benchmark") ||
+ isTest(name, "Example") {
break
}
}
- return fmt.Sprintf("%s:%d", file, line)
+ return callers
+}
+
+// Stolen from the `go test` tool.
+// isTest tells whether name looks like a test (or benchmark, according to prefix).
+// It is a Test (say) if there is a character after Test that is not a lower-case letter.
+// We don't want TesticularCancer.
+func isTest(name, prefix string) bool {
+ if !strings.HasPrefix(name, prefix) {
+ return false
+ }
+ if len(name) == len(prefix) { // "Test" is ok
+ return true
+ }
+ rune, _ := utf8.DecodeRuneInString(name[len(prefix):])
+ return !unicode.IsLower(rune)
}
// getWhitespaceString returns a string that is long enough to overwrite the default
@@ -144,19 +186,20 @@ func Fail(t TestingT, failureMessage string, msgAndArgs ...interface{}) bool {
message := messageFromMsgAndArgs(msgAndArgs...)
+ errorTrace := strings.Join(CallerInfo(), "\n\r\t\t\t")
if len(message) > 0 {
- t.Errorf("\r%s\r\tLocation:\t%s\n"+
+ t.Errorf("\r%s\r\tError Trace:\t%s\n"+
"\r\tError:%s\n"+
"\r\tMessages:\t%s\n\r",
getWhitespaceString(),
- CallerInfo(),
+ errorTrace,
indentMessageLines(failureMessage, 2),
message)
} else {
- t.Errorf("\r%s\r\tLocation:\t%s\n"+
+ t.Errorf("\r%s\r\tError Trace:\t%s\n"+
"\r\tError:%s\n\r",
getWhitespaceString(),
- CallerInfo(),
+ errorTrace,
indentMessageLines(failureMessage, 2))
}
@@ -171,7 +214,7 @@ func Implements(t TestingT, interfaceObject interface{}, object interface{}, msg
interfaceType := reflect.TypeOf(interfaceObject).Elem()
if !reflect.TypeOf(object).Implements(interfaceType) {
- return Fail(t, fmt.Sprintf("Object must implement %v", interfaceType), msgAndArgs...)
+ return Fail(t, fmt.Sprintf("%T must implement %v", object, interfaceType), msgAndArgs...)
}
return true
@@ -196,8 +239,9 @@ func IsType(t TestingT, expectedType interface{}, object interface{}, msgAndArgs
func Equal(t TestingT, expected, actual interface{}, msgAndArgs ...interface{}) bool {
if !ObjectsAreEqual(expected, actual) {
+ diff := diff(expected, actual)
return Fail(t, fmt.Sprintf("Not equal: %#v (expected)\n"+
- " != %#v (actual)", expected, actual), msgAndArgs...)
+ " != %#v (actual)%s", expected, actual, diff), msgAndArgs...)
}
return true
@@ -232,7 +276,7 @@ func Exactly(t TestingT, expected, actual interface{}, msgAndArgs ...interface{}
bType := reflect.TypeOf(actual)
if aType != bType {
- return Fail(t, "Types expected to match exactly", "%v != %v", aType, bType)
+ return Fail(t, fmt.Sprintf("Types expected to match exactly\n\r\t%v != %v", aType, bType), msgAndArgs...)
}
return Equal(t, expected, actual, msgAndArgs...)
@@ -245,24 +289,10 @@ func Exactly(t TestingT, expected, actual interface{}, msgAndArgs ...interface{}
//
// Returns whether the assertion was successful (true) or not (false).
func NotNil(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
-
- success := true
-
- if object == nil {
- success = false
- } else {
- value := reflect.ValueOf(object)
- kind := value.Kind()
- if kind >= reflect.Chan && kind <= reflect.Slice && value.IsNil() {
- success = false
- }
- }
-
- if !success {
- Fail(t, "Expected not to be nil.", msgAndArgs...)
+ if !isNil(object) {
+ return true
}
-
- return success
+ return Fail(t, "Expected value not to be nil.", msgAndArgs...)
}
// isNil checks if a specified object is nil or not, without Failing.
@@ -292,7 +322,7 @@ func Nil(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
return Fail(t, fmt.Sprintf("Expected nil, but got: %#v", object), msgAndArgs...)
}
-var zeros = []interface{}{
+var numericZeros = []interface{}{
int(0),
int8(0),
int16(0),
@@ -318,7 +348,7 @@ func isEmpty(object interface{}) bool {
return true
}
- for _, v := range zeros {
+ for _, v := range numericZeros {
if object == v {
return true
}
@@ -335,6 +365,9 @@ func isEmpty(object interface{}) bool {
}
case reflect.Ptr:
{
+ if objValue.IsNil() {
+ return true
+ }
switch object.(type) {
case *time.Time:
return object.(*time.Time).IsZero()
@@ -349,7 +382,7 @@ func isEmpty(object interface{}) bool {
// Empty asserts that the specified object is empty. I.e. nil, "", false, 0 or either
// a slice or a channel with len == 0.
//
-// assert.Empty(t, obj)
+// assert.Empty(t, obj)
//
// Returns whether the assertion was successful (true) or not (false).
func Empty(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
@@ -366,9 +399,9 @@ func Empty(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
// NotEmpty asserts that the specified object is NOT empty. I.e. not nil, "", false, 0 or either
// a slice or a channel with len == 0.
//
-// if assert.NotEmpty(t, obj) {
-// assert.Equal(t, "two", obj[1])
-// }
+// if assert.NotEmpty(t, obj) {
+// assert.Equal(t, "two", obj[1])
+// }
//
// Returns whether the assertion was successful (true) or not (false).
func NotEmpty(t TestingT, object interface{}, msgAndArgs ...interface{}) bool {
@@ -450,7 +483,7 @@ func False(t TestingT, value bool, msgAndArgs ...interface{}) bool {
func NotEqual(t TestingT, expected, actual interface{}, msgAndArgs ...interface{}) bool {
if ObjectsAreEqual(expected, actual) {
- return Fail(t, "Should not be equal", msgAndArgs...)
+ return Fail(t, fmt.Sprintf("Should not be: %#v\n", actual), msgAndArgs...)
}
return true
@@ -476,6 +509,16 @@ func includeElement(list interface{}, element interface{}) (ok, found bool) {
return true, strings.Contains(listValue.String(), elementValue.String())
}
+ if reflect.TypeOf(list).Kind() == reflect.Map {
+ mapKeys := listValue.MapKeys()
+ for i := 0; i < len(mapKeys); i++ {
+ if ObjectsAreEqual(mapKeys[i].Interface(), element) {
+ return true, true
+ }
+ }
+ return true, false
+ }
+
for i := 0; i < listValue.Len(); i++ {
if ObjectsAreEqual(listValue.Index(i).Interface(), element) {
return true, true
@@ -485,11 +528,12 @@ func includeElement(list interface{}, element interface{}) (ok, found bool) {
}
-// Contains asserts that the specified string or list(array, slice...) contains the
+// Contains asserts that the specified string, list(array, slice...) or map contains the
// specified substring or element.
//
// assert.Contains(t, "Hello World", "World", "But 'Hello World' does contain 'World'")
// assert.Contains(t, ["Hello", "World"], "World", "But ["Hello", "World"] does contain 'World'")
+// assert.Contains(t, {"Hello": "World"}, "Hello", "But {'Hello': 'World'} does contain 'Hello'")
//
// Returns whether the assertion was successful (true) or not (false).
func Contains(t TestingT, s, contains interface{}, msgAndArgs ...interface{}) bool {
@@ -506,11 +550,12 @@ func Contains(t TestingT, s, contains interface{}, msgAndArgs ...interface{}) bo
}
-// NotContains asserts that the specified string or list(array, slice...) does NOT contain the
+// NotContains asserts that the specified string, list(array, slice...) or map does NOT contain the
// specified substring or element.
//
// assert.NotContains(t, "Hello World", "Earth", "But 'Hello World' does NOT contain 'Earth'")
// assert.NotContains(t, ["Hello", "World"], "Earth", "But ['Hello', 'World'] does NOT contain 'Earth'")
+// assert.NotContains(t, {"Hello": "World"}, "Earth", "But {'Hello': 'World'} does NOT contain 'Earth'")
//
// Returns whether the assertion was successful (true) or not (false).
func NotContains(t TestingT, s, contains interface{}, msgAndArgs ...interface{}) bool {
@@ -766,7 +811,7 @@ func NoError(t TestingT, err error, msgAndArgs ...interface{}) bool {
return true
}
- return Fail(t, fmt.Sprintf("No error is expected but got %v", err), msgAndArgs...)
+ return Fail(t, fmt.Sprintf("Received unexpected error %q", err), msgAndArgs...)
}
// Error asserts that a function returned an error (i.e. not `nil`).
@@ -800,7 +845,7 @@ func EqualError(t TestingT, theError error, errString string, msgAndArgs ...inte
return false
}
s := "An error with value \"%s\" is expected but got \"%s\". %s"
- return Equal(t, theError.Error(), errString,
+ return Equal(t, errString, theError.Error(),
s, errString, theError.Error(), message)
}
@@ -851,3 +896,84 @@ func NotRegexp(t TestingT, rx interface{}, str interface{}, msgAndArgs ...interf
return !match
}
+
+// Zero asserts that i is the zero value for its type and returns the truth.
+func Zero(t TestingT, i interface{}, msgAndArgs ...interface{}) bool {
+ if i != nil && !reflect.DeepEqual(i, reflect.Zero(reflect.TypeOf(i)).Interface()) {
+ return Fail(t, fmt.Sprintf("Should be zero, but was %v", i), msgAndArgs...)
+ }
+ return true
+}
+
+// NotZero asserts that i is not the zero value for its type and returns the truth.
+func NotZero(t TestingT, i interface{}, msgAndArgs ...interface{}) bool {
+ if i == nil || reflect.DeepEqual(i, reflect.Zero(reflect.TypeOf(i)).Interface()) {
+ return Fail(t, fmt.Sprintf("Should not be zero, but was %v", i), msgAndArgs...)
+ }
+ return true
+}
+
+// JSONEq asserts that two JSON strings are equivalent.
+//
+// assert.JSONEq(t, `{"hello": "world", "foo": "bar"}`, `{"foo": "bar", "hello": "world"}`)
+//
+// Returns whether the assertion was successful (true) or not (false).
+func JSONEq(t TestingT, expected string, actual string, msgAndArgs ...interface{}) bool {
+ var expectedJSONAsInterface, actualJSONAsInterface interface{}
+
+ if err := json.Unmarshal([]byte(expected), &expectedJSONAsInterface); err != nil {
+ return Fail(t, fmt.Sprintf("Expected value ('%s') is not valid json.\nJSON parsing error: '%s'", expected, err.Error()), msgAndArgs...)
+ }
+
+ if err := json.Unmarshal([]byte(actual), &actualJSONAsInterface); err != nil {
+ return Fail(t, fmt.Sprintf("Input ('%s') needs to be valid json.\nJSON parsing error: '%s'", actual, err.Error()), msgAndArgs...)
+ }
+
+ return Equal(t, expectedJSONAsInterface, actualJSONAsInterface, msgAndArgs...)
+}
+
+func typeAndKind(v interface{}) (reflect.Type, reflect.Kind) {
+ t := reflect.TypeOf(v)
+ k := t.Kind()
+
+ if k == reflect.Ptr {
+ t = t.Elem()
+ k = t.Kind()
+ }
+ return t, k
+}
+
+// diff returns a diff of both values as long as both are of the same type and
+// are a struct, map, slice or array. Otherwise it returns an empty string.
+func diff(expected interface{}, actual interface{}) string {
+ if expected == nil || actual == nil {
+ return ""
+ }
+
+ et, ek := typeAndKind(expected)
+ at, _ := typeAndKind(actual)
+
+ if et != at {
+ return ""
+ }
+
+ if ek != reflect.Struct && ek != reflect.Map && ek != reflect.Slice && ek != reflect.Array {
+ return ""
+ }
+
+ spew.Config.SortKeys = true
+ e := spew.Sdump(expected)
+ a := spew.Sdump(actual)
+
+ diff, _ := difflib.GetUnifiedDiffString(difflib.UnifiedDiff{
+ A: difflib.SplitLines(e),
+ B: difflib.SplitLines(a),
+ FromFile: "Expected",
+ FromDate: "",
+ ToFile: "Actual",
+ ToDate: "",
+ Context: 1,
+ })
+
+ return "\n\nDiff:\n" + diff
+}
diff --git a/Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions_test.go b/Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions_test.go
index d859c77b9..a12352e4c 100644
--- a/Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions_test.go
@@ -2,12 +2,82 @@ package assert
import (
"errors"
+ "io"
"math"
+ "os"
+ "reflect"
"regexp"
"testing"
"time"
)
+var (
+ i interface{}
+ zeros = []interface{}{
+ false,
+ byte(0),
+ complex64(0),
+ complex128(0),
+ float32(0),
+ float64(0),
+ int(0),
+ int8(0),
+ int16(0),
+ int32(0),
+ int64(0),
+ rune(0),
+ uint(0),
+ uint8(0),
+ uint16(0),
+ uint32(0),
+ uint64(0),
+ uintptr(0),
+ "",
+ [0]interface{}{},
+ []interface{}(nil),
+ struct{ x int }{},
+ (*interface{})(nil),
+ (func())(nil),
+ nil,
+ interface{}(nil),
+ map[interface{}]interface{}(nil),
+ (chan interface{})(nil),
+ (<-chan interface{})(nil),
+ (chan<- interface{})(nil),
+ }
+ nonZeros = []interface{}{
+ true,
+ byte(1),
+ complex64(1),
+ complex128(1),
+ float32(1),
+ float64(1),
+ int(1),
+ int8(1),
+ int16(1),
+ int32(1),
+ int64(1),
+ rune(1),
+ uint(1),
+ uint8(1),
+ uint16(1),
+ uint32(1),
+ uint64(1),
+ uintptr(1),
+ "s",
+ [1]interface{}{1},
+ []interface{}{},
+ struct{ x int }{1},
+ (*interface{})(&i),
+ (func())(func() {}),
+ interface{}(1),
+ map[interface{}]interface{}{},
+ (chan interface{})(make(chan interface{})),
+ (<-chan interface{})(make(chan interface{})),
+ (chan<- interface{})(make(chan interface{})),
+ }
+)
+
// AssertionTesterInterface defines an interface to be used for testing assertion methods
type AssertionTesterInterface interface {
TestMethod()
@@ -62,6 +132,12 @@ func TestObjectsAreEqual(t *testing.T) {
if !ObjectsAreEqualValues(uint32(10), int32(10)) {
t.Error("ObjectsAreEqualValues should return true")
}
+ if ObjectsAreEqualValues(0, nil) {
+ t.Fail()
+ }
+ if ObjectsAreEqualValues(nil, 0) {
+ t.Fail()
+ }
}
@@ -129,6 +205,9 @@ func TestNotNil(t *testing.T) {
if NotNil(mockT, nil) {
t.Error("NotNil should return false: object is nil")
}
+ if NotNil(mockT, (*struct{})(nil)) {
+ t.Error("NotNil should return false: object is (*struct{})(nil)")
+ }
}
@@ -139,6 +218,9 @@ func TestNil(t *testing.T) {
if !Nil(mockT, nil) {
t.Error("Nil should return true: object is nil")
}
+ if !Nil(mockT, (*struct{})(nil)) {
+ t.Error("Nil should return true: object is (*struct{})(nil)")
+ }
if Nil(mockT, new(AssertionTesterConformingObject)) {
t.Error("Nil should return false: object is not nil")
}
@@ -255,6 +337,7 @@ func TestContains(t *testing.T) {
{"g", "h"},
{"j", "k"},
}
+ simpleMap := map[interface{}]interface{}{"Foo": "Bar"}
if !Contains(mockT, "Hello World", "Hello") {
t.Error("Contains should return true: \"Hello World\" contains \"Hello\"")
@@ -275,12 +358,22 @@ func TestContains(t *testing.T) {
if Contains(mockT, complexList, &A{"g", "e"}) {
t.Error("Contains should return false: complexList contains {\"g\", \"e\"}")
}
+ if Contains(mockT, complexList, &A{"g", "e"}) {
+ t.Error("Contains should return false: complexList contains {\"g\", \"e\"}")
+ }
+ if !Contains(mockT, simpleMap, "Foo") {
+ t.Error("Contains should return true: \"{\"Foo\": \"Bar\"}\" contains \"Foo\"")
+ }
+ if Contains(mockT, simpleMap, "Bar") {
+ t.Error("Contains should return false: \"{\"Foo\": \"Bar\"}\" does not contains \"Bar\"")
+ }
}
func TestNotContains(t *testing.T) {
mockT := new(testing.T)
list := []string{"Foo", "Bar"}
+ simpleMap := map[interface{}]interface{}{"Foo": "Bar"}
if !NotContains(mockT, "Hello World", "Hello!") {
t.Error("NotContains should return true: \"Hello World\" does not contain \"Hello!\"")
@@ -295,13 +388,19 @@ func TestNotContains(t *testing.T) {
if NotContains(mockT, list, "Foo") {
t.Error("NotContains should return false: \"[\"Foo\", \"Bar\"]\" contains \"Foo\"")
}
-
+ if NotContains(mockT, simpleMap, "Foo") {
+ t.Error("Contains should return true: \"{\"Foo\": \"Bar\"}\" contains \"Foo\"")
+ }
+ if !NotContains(mockT, simpleMap, "Bar") {
+ t.Error("Contains should return false: \"{\"Foo\": \"Bar\"}\" does not contains \"Bar\"")
+ }
}
func Test_includeElement(t *testing.T) {
list1 := []string{"Foo", "Bar"}
list2 := []int{1, 2}
+ simpleMap := map[interface{}]interface{}{"Foo": "Bar"}
ok, found := includeElement("Hello World", "World")
True(t, ok)
@@ -335,10 +434,17 @@ func Test_includeElement(t *testing.T) {
True(t, ok)
False(t, found)
+ ok, found = includeElement(simpleMap, "Foo")
+ True(t, ok)
+ True(t, found)
+
+ ok, found = includeElement(simpleMap, "Bar")
+ True(t, ok)
+ False(t, found)
+
ok, found = includeElement(1433, "1")
False(t, ok)
False(t, found)
-
}
func TestCondition(t *testing.T) {
@@ -481,6 +587,9 @@ func TestEmpty(t *testing.T) {
mockT := new(testing.T)
chWithValue := make(chan struct{}, 1)
chWithValue <- struct{}{}
+ var ti *time.Time
+ var s *string
+ var f *os.File
True(t, Empty(mockT, ""), "Empty string is empty")
True(t, Empty(mockT, nil), "Nil is empty")
@@ -488,6 +597,9 @@ func TestEmpty(t *testing.T) {
True(t, Empty(mockT, 0), "Zero int value is empty")
True(t, Empty(mockT, false), "False value is empty")
True(t, Empty(mockT, make(chan struct{})), "Channel without values is empty")
+ True(t, Empty(mockT, s), "Nil string pointer is empty")
+ True(t, Empty(mockT, f), "Nil os.File pointer is empty")
+ True(t, Empty(mockT, ti), "Nil time.Time pointer is empty")
False(t, Empty(mockT, "something"), "Non Empty string is not empty")
False(t, Empty(mockT, errors.New("something")), "Non nil object is not empty")
@@ -789,3 +901,189 @@ func TestRegexp(t *testing.T) {
True(t, NotRegexp(mockT, regexp.MustCompile(tc.rx), tc.str))
}
}
+
+func testAutogeneratedFunction() {
+ defer func() {
+ if err := recover(); err == nil {
+ panic("did not panic")
+ }
+ CallerInfo()
+ }()
+ t := struct {
+ io.Closer
+ }{}
+ var c io.Closer
+ c = t
+ c.Close()
+}
+
+func TestCallerInfoWithAutogeneratedFunctions(t *testing.T) {
+ NotPanics(t, func() {
+ testAutogeneratedFunction()
+ })
+}
+
+func TestZero(t *testing.T) {
+ mockT := new(testing.T)
+
+ for _, test := range zeros {
+ True(t, Zero(mockT, test, "%#v is not the %v zero value", test, reflect.TypeOf(test)))
+ }
+
+ for _, test := range nonZeros {
+ False(t, Zero(mockT, test, "%#v is not the %v zero value", test, reflect.TypeOf(test)))
+ }
+}
+
+func TestNotZero(t *testing.T) {
+ mockT := new(testing.T)
+
+ for _, test := range zeros {
+ False(t, NotZero(mockT, test, "%#v is not the %v zero value", test, reflect.TypeOf(test)))
+ }
+
+ for _, test := range nonZeros {
+ True(t, NotZero(mockT, test, "%#v is not the %v zero value", test, reflect.TypeOf(test)))
+ }
+}
+
+func TestJSONEq_EqualSONString(t *testing.T) {
+ mockT := new(testing.T)
+ True(t, JSONEq(mockT, `{"hello": "world", "foo": "bar"}`, `{"hello": "world", "foo": "bar"}`))
+}
+
+func TestJSONEq_EquivalentButNotEqual(t *testing.T) {
+ mockT := new(testing.T)
+ True(t, JSONEq(mockT, `{"hello": "world", "foo": "bar"}`, `{"foo": "bar", "hello": "world"}`))
+}
+
+func TestJSONEq_HashOfArraysAndHashes(t *testing.T) {
+ mockT := new(testing.T)
+ True(t, JSONEq(mockT, "{\r\n\t\"numeric\": 1.5,\r\n\t\"array\": [{\"foo\": \"bar\"}, 1, \"string\", [\"nested\", \"array\", 5.5]],\r\n\t\"hash\": {\"nested\": \"hash\", \"nested_slice\": [\"this\", \"is\", \"nested\"]},\r\n\t\"string\": \"foo\"\r\n}",
+ "{\r\n\t\"numeric\": 1.5,\r\n\t\"hash\": {\"nested\": \"hash\", \"nested_slice\": [\"this\", \"is\", \"nested\"]},\r\n\t\"string\": \"foo\",\r\n\t\"array\": [{\"foo\": \"bar\"}, 1, \"string\", [\"nested\", \"array\", 5.5]]\r\n}"))
+}
+
+func TestJSONEq_Array(t *testing.T) {
+ mockT := new(testing.T)
+ True(t, JSONEq(mockT, `["foo", {"hello": "world", "nested": "hash"}]`, `["foo", {"nested": "hash", "hello": "world"}]`))
+}
+
+func TestJSONEq_HashAndArrayNotEquivalent(t *testing.T) {
+ mockT := new(testing.T)
+ False(t, JSONEq(mockT, `["foo", {"hello": "world", "nested": "hash"}]`, `{"foo": "bar", {"nested": "hash", "hello": "world"}}`))
+}
+
+func TestJSONEq_HashesNotEquivalent(t *testing.T) {
+ mockT := new(testing.T)
+ False(t, JSONEq(mockT, `{"foo": "bar"}`, `{"foo": "bar", "hello": "world"}`))
+}
+
+func TestJSONEq_ActualIsNotJSON(t *testing.T) {
+ mockT := new(testing.T)
+ False(t, JSONEq(mockT, `{"foo": "bar"}`, "Not JSON"))
+}
+
+func TestJSONEq_ExpectedIsNotJSON(t *testing.T) {
+ mockT := new(testing.T)
+ False(t, JSONEq(mockT, "Not JSON", `{"foo": "bar", "hello": "world"}`))
+}
+
+func TestJSONEq_ExpectedAndActualNotJSON(t *testing.T) {
+ mockT := new(testing.T)
+ False(t, JSONEq(mockT, "Not JSON", "Not JSON"))
+}
+
+func TestJSONEq_ArraysOfDifferentOrder(t *testing.T) {
+ mockT := new(testing.T)
+ False(t, JSONEq(mockT, `["foo", {"hello": "world", "nested": "hash"}]`, `[{ "hello": "world", "nested": "hash"}, "foo"]`))
+}
+
+func TestDiff(t *testing.T) {
+ expected := `
+
+Diff:
+--- Expected
++++ Actual
+@@ -1,3 +1,3 @@
+ (struct { foo string }) {
+- foo: (string) (len=5) "hello"
++ foo: (string) (len=3) "bar"
+ }
+`
+ actual := diff(
+ struct{ foo string }{"hello"},
+ struct{ foo string }{"bar"},
+ )
+ Equal(t, expected, actual)
+
+ expected = `
+
+Diff:
+--- Expected
++++ Actual
+@@ -2,5 +2,5 @@
+ (int) 1,
+- (int) 2,
+ (int) 3,
+- (int) 4
++ (int) 5,
++ (int) 7
+ }
+`
+ actual = diff(
+ []int{1, 2, 3, 4},
+ []int{1, 3, 5, 7},
+ )
+ Equal(t, expected, actual)
+
+ expected = `
+
+Diff:
+--- Expected
++++ Actual
+@@ -2,4 +2,4 @@
+ (int) 1,
+- (int) 2,
+- (int) 3
++ (int) 3,
++ (int) 5
+ }
+`
+ actual = diff(
+ []int{1, 2, 3, 4}[0:3],
+ []int{1, 3, 5, 7}[0:3],
+ )
+ Equal(t, expected, actual)
+
+ expected = `
+
+Diff:
+--- Expected
++++ Actual
+@@ -1,6 +1,6 @@
+ (map[string]int) (len=4) {
+- (string) (len=4) "four": (int) 4,
++ (string) (len=4) "five": (int) 5,
+ (string) (len=3) "one": (int) 1,
+- (string) (len=5) "three": (int) 3,
+- (string) (len=3) "two": (int) 2
++ (string) (len=5) "seven": (int) 7,
++ (string) (len=5) "three": (int) 3
+ }
+`
+
+ actual = diff(
+ map[string]int{"one": 1, "two": 2, "three": 3, "four": 4},
+ map[string]int{"one": 1, "three": 3, "five": 5, "seven": 7},
+ )
+ Equal(t, expected, actual)
+}
+
+func TestDiffEmptyCases(t *testing.T) {
+ Equal(t, "", diff(nil, nil))
+ Equal(t, "", diff(struct{ foo string }{}, nil))
+ Equal(t, "", diff(nil, struct{ foo string }{}))
+ Equal(t, "", diff(1, 2))
+ Equal(t, "", diff(1, 2))
+ Equal(t, "", diff([]int{1}, []bool{true}))
+}
diff --git a/Godeps/_workspace/src/github.com/stretchr/testify/assert/doc.go b/Godeps/_workspace/src/github.com/stretchr/testify/assert/doc.go
index f67810628..c9dccc4d6 100644
--- a/Godeps/_workspace/src/github.com/stretchr/testify/assert/doc.go
+++ b/Godeps/_workspace/src/github.com/stretchr/testify/assert/doc.go
@@ -17,7 +17,7 @@
//
// }
//
-// if you assert many times, use the below:
+// if you assert many times, use the format below:
//
// import (
// "testing"
@@ -42,113 +42,4 @@
//
// Every assertion function also takes an optional string message as the final argument,
// allowing custom error messages to be appended to the message the assertion method outputs.
-//
-// Here is an overview of the assert functions:
-//
-// assert.Equal(t, expected, actual [, message [, format-args]])
-//
-// assert.EqualValues(t, expected, actual [, message [, format-args]])
-//
-// assert.NotEqual(t, notExpected, actual [, message [, format-args]])
-//
-// assert.True(t, actualBool [, message [, format-args]])
-//
-// assert.False(t, actualBool [, message [, format-args]])
-//
-// assert.Nil(t, actualObject [, message [, format-args]])
-//
-// assert.NotNil(t, actualObject [, message [, format-args]])
-//
-// assert.Empty(t, actualObject [, message [, format-args]])
-//
-// assert.NotEmpty(t, actualObject [, message [, format-args]])
-//
-// assert.Len(t, actualObject, expectedLength, [, message [, format-args]])
-//
-// assert.Error(t, errorObject [, message [, format-args]])
-//
-// assert.NoError(t, errorObject [, message [, format-args]])
-//
-// assert.EqualError(t, theError, errString [, message [, format-args]])
-//
-// assert.Implements(t, (*MyInterface)(nil), new(MyObject) [,message [, format-args]])
-//
-// assert.IsType(t, expectedObject, actualObject [, message [, format-args]])
-//
-// assert.Contains(t, stringOrSlice, substringOrElement [, message [, format-args]])
-//
-// assert.NotContains(t, stringOrSlice, substringOrElement [, message [, format-args]])
-//
-// assert.Panics(t, func(){
-//
-// // call code that should panic
-//
-// } [, message [, format-args]])
-//
-// assert.NotPanics(t, func(){
-//
-// // call code that should not panic
-//
-// } [, message [, format-args]])
-//
-// assert.WithinDuration(t, timeA, timeB, deltaTime, [, message [, format-args]])
-//
-// assert.InDelta(t, numA, numB, delta, [, message [, format-args]])
-//
-// assert.InEpsilon(t, numA, numB, epsilon, [, message [, format-args]])
-//
-// assert package contains Assertions object. it has assertion methods.
-//
-// Here is an overview of the assert functions:
-// assert.Equal(expected, actual [, message [, format-args]])
-//
-// assert.EqualValues(expected, actual [, message [, format-args]])
-//
-// assert.NotEqual(notExpected, actual [, message [, format-args]])
-//
-// assert.True(actualBool [, message [, format-args]])
-//
-// assert.False(actualBool [, message [, format-args]])
-//
-// assert.Nil(actualObject [, message [, format-args]])
-//
-// assert.NotNil(actualObject [, message [, format-args]])
-//
-// assert.Empty(actualObject [, message [, format-args]])
-//
-// assert.NotEmpty(actualObject [, message [, format-args]])
-//
-// assert.Len(actualObject, expectedLength, [, message [, format-args]])
-//
-// assert.Error(errorObject [, message [, format-args]])
-//
-// assert.NoError(errorObject [, message [, format-args]])
-//
-// assert.EqualError(theError, errString [, message [, format-args]])
-//
-// assert.Implements((*MyInterface)(nil), new(MyObject) [,message [, format-args]])
-//
-// assert.IsType(expectedObject, actualObject [, message [, format-args]])
-//
-// assert.Contains(stringOrSlice, substringOrElement [, message [, format-args]])
-//
-// assert.NotContains(stringOrSlice, substringOrElement [, message [, format-args]])
-//
-// assert.Panics(func(){
-//
-// // call code that should panic
-//
-// } [, message [, format-args]])
-//
-// assert.NotPanics(func(){
-//
-// // call code that should not panic
-//
-// } [, message [, format-args]])
-//
-// assert.WithinDuration(timeA, timeB, deltaTime, [, message [, format-args]])
-//
-// assert.InDelta(numA, numB, delta, [, message [, format-args]])
-//
-// assert.InEpsilon(numA, numB, epsilon, [, message [, format-args]])
package assert
diff --git a/Godeps/_workspace/src/github.com/stretchr/testify/assert/forward_assertions.go b/Godeps/_workspace/src/github.com/stretchr/testify/assert/forward_assertions.go
index d8d3f531e..cab3aa2ac 100644
--- a/Godeps/_workspace/src/github.com/stretchr/testify/assert/forward_assertions.go
+++ b/Godeps/_workspace/src/github.com/stretchr/testify/assert/forward_assertions.go
@@ -81,7 +81,7 @@ func (a *Assertions) Nil(object interface{}, msgAndArgs ...interface{}) bool {
// Empty asserts that the specified object is empty. I.e. nil, "", false, 0 or a
// slice with len == 0.
//
-// assert.Empty(obj)
+// assert.Empty(obj)
//
// Returns whether the assertion was successful (true) or not (false).
func (a *Assertions) Empty(object interface{}, msgAndArgs ...interface{}) bool {
@@ -91,9 +91,9 @@ func (a *Assertions) Empty(object interface{}, msgAndArgs ...interface{}) bool {
// NotEmpty asserts that the specified object is NOT empty. I.e. not nil, "", false, 0 or a
// slice with len == 0.
//
-// if assert.NotEmpty(obj) {
-// assert.Equal("two", obj[1])
-// }
+// if assert.NotEmpty(obj) {
+// assert.Equal("two", obj[1])
+// }
//
// Returns whether the assertion was successful (true) or not (false).
func (a *Assertions) NotEmpty(object interface{}, msgAndArgs ...interface{}) bool {
@@ -263,3 +263,22 @@ func (a *Assertions) Regexp(rx interface{}, str interface{}, msgAndArgs ...inter
func (a *Assertions) NotRegexp(rx interface{}, str interface{}, msgAndArgs ...interface{}) bool {
return NotRegexp(a.t, rx, str, msgAndArgs...)
}
+
+// Zero asserts that i is the zero value for its type and returns the truth.
+func (a *Assertions) Zero(i interface{}, msgAndArgs ...interface{}) bool {
+ return Zero(a.t, i, msgAndArgs...)
+}
+
+// NotZero asserts that i is not the zero value for its type and returns the truth.
+func (a *Assertions) NotZero(i interface{}, msgAndArgs ...interface{}) bool {
+ return NotZero(a.t, i, msgAndArgs...)
+}
+
+// JSONEq asserts that two JSON strings are equivalent.
+//
+// assert.JSONEq(t, `{"hello": "world", "foo": "bar"}`, `{"foo": "bar", "hello": "world"}`)
+//
+// Returns whether the assertion was successful (true) or not (false).
+func (a *Assertions) JSONEq(expected string, actual string, msgAndArgs ...interface{}) bool {
+ return JSONEq(a.t, expected, actual, msgAndArgs...)
+}
diff --git a/Godeps/_workspace/src/github.com/stretchr/testify/assert/forward_assertions_test.go b/Godeps/_workspace/src/github.com/stretchr/testify/assert/forward_assertions_test.go
index 3df3f3917..22e1df1d9 100644
--- a/Godeps/_workspace/src/github.com/stretchr/testify/assert/forward_assertions_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/testify/assert/forward_assertions_test.go
@@ -509,3 +509,103 @@ func TestRegexpWrapper(t *testing.T) {
True(t, assert.NotRegexp(regexp.MustCompile(tc.rx), tc.str))
}
}
+
+func TestZeroWrapper(t *testing.T) {
+ assert := New(t)
+ mockAssert := New(new(testing.T))
+
+ for _, test := range zeros {
+ assert.True(mockAssert.Zero(test), "Zero should return true for %v", test)
+ }
+
+ for _, test := range nonZeros {
+ assert.False(mockAssert.Zero(test), "Zero should return false for %v", test)
+ }
+}
+
+func TestNotZeroWrapper(t *testing.T) {
+ assert := New(t)
+ mockAssert := New(new(testing.T))
+
+ for _, test := range zeros {
+ assert.False(mockAssert.NotZero(test), "Zero should return true for %v", test)
+ }
+
+ for _, test := range nonZeros {
+ assert.True(mockAssert.NotZero(test), "Zero should return false for %v", test)
+ }
+}
+
+func TestJSONEqWrapper_EqualSONString(t *testing.T) {
+ assert := New(new(testing.T))
+ if !assert.JSONEq(`{"hello": "world", "foo": "bar"}`, `{"hello": "world", "foo": "bar"}`) {
+ t.Error("JSONEq should return true")
+ }
+
+}
+
+func TestJSONEqWrapper_EquivalentButNotEqual(t *testing.T) {
+ assert := New(new(testing.T))
+ if !assert.JSONEq(`{"hello": "world", "foo": "bar"}`, `{"foo": "bar", "hello": "world"}`) {
+ t.Error("JSONEq should return true")
+ }
+
+}
+
+func TestJSONEqWrapper_HashOfArraysAndHashes(t *testing.T) {
+ assert := New(new(testing.T))
+ if !assert.JSONEq("{\r\n\t\"numeric\": 1.5,\r\n\t\"array\": [{\"foo\": \"bar\"}, 1, \"string\", [\"nested\", \"array\", 5.5]],\r\n\t\"hash\": {\"nested\": \"hash\", \"nested_slice\": [\"this\", \"is\", \"nested\"]},\r\n\t\"string\": \"foo\"\r\n}",
+ "{\r\n\t\"numeric\": 1.5,\r\n\t\"hash\": {\"nested\": \"hash\", \"nested_slice\": [\"this\", \"is\", \"nested\"]},\r\n\t\"string\": \"foo\",\r\n\t\"array\": [{\"foo\": \"bar\"}, 1, \"string\", [\"nested\", \"array\", 5.5]]\r\n}") {
+ t.Error("JSONEq should return true")
+ }
+}
+
+func TestJSONEqWrapper_Array(t *testing.T) {
+ assert := New(new(testing.T))
+ if !assert.JSONEq(`["foo", {"hello": "world", "nested": "hash"}]`, `["foo", {"nested": "hash", "hello": "world"}]`) {
+ t.Error("JSONEq should return true")
+ }
+
+}
+
+func TestJSONEqWrapper_HashAndArrayNotEquivalent(t *testing.T) {
+ assert := New(new(testing.T))
+ if assert.JSONEq(`["foo", {"hello": "world", "nested": "hash"}]`, `{"foo": "bar", {"nested": "hash", "hello": "world"}}`) {
+ t.Error("JSONEq should return false")
+ }
+}
+
+func TestJSONEqWrapper_HashesNotEquivalent(t *testing.T) {
+ assert := New(new(testing.T))
+ if assert.JSONEq(`{"foo": "bar"}`, `{"foo": "bar", "hello": "world"}`) {
+ t.Error("JSONEq should return false")
+ }
+}
+
+func TestJSONEqWrapper_ActualIsNotJSON(t *testing.T) {
+ assert := New(new(testing.T))
+ if assert.JSONEq(`{"foo": "bar"}`, "Not JSON") {
+ t.Error("JSONEq should return false")
+ }
+}
+
+func TestJSONEqWrapper_ExpectedIsNotJSON(t *testing.T) {
+ assert := New(new(testing.T))
+ if assert.JSONEq("Not JSON", `{"foo": "bar", "hello": "world"}`) {
+ t.Error("JSONEq should return false")
+ }
+}
+
+func TestJSONEqWrapper_ExpectedAndActualNotJSON(t *testing.T) {
+ assert := New(new(testing.T))
+ if assert.JSONEq("Not JSON", "Not JSON") {
+ t.Error("JSONEq should return false")
+ }
+}
+
+func TestJSONEqWrapper_ArraysOfDifferentOrder(t *testing.T) {
+ assert := New(new(testing.T))
+ if assert.JSONEq(`["foo", {"hello": "world", "nested": "hash"}]`, `[{ "hello": "world", "nested": "hash"}, "foo"]`) {
+ t.Error("JSONEq should return false")
+ }
+}
diff --git a/Godeps/_workspace/src/github.com/stretchr/testify/assert/http_assertions.go b/Godeps/_workspace/src/github.com/stretchr/testify/assert/http_assertions.go
index 1246e58e0..437a86ce4 100644
--- a/Godeps/_workspace/src/github.com/stretchr/testify/assert/http_assertions.go
+++ b/Godeps/_workspace/src/github.com/stretchr/testify/assert/http_assertions.go
@@ -10,9 +10,9 @@ import (
// httpCode is a helper that returns HTTP code of the response. It returns -1
// if building a new request fails.
-func httpCode(handler http.HandlerFunc, mode, url string, values url.Values) int {
+func httpCode(handler http.HandlerFunc, method, url string, values url.Values) int {
w := httptest.NewRecorder()
- req, err := http.NewRequest(mode, url+"?"+values.Encode(), nil)
+ req, err := http.NewRequest(method, url+"?"+values.Encode(), nil)
if err != nil {
return -1
}
@@ -25,8 +25,8 @@ func httpCode(handler http.HandlerFunc, mode, url string, values url.Values) int
// assert.HTTPSuccess(t, myHandler, "POST", "http://www.google.com", nil)
//
// Returns whether the assertion was successful (true) or not (false).
-func HTTPSuccess(t TestingT, handler http.HandlerFunc, mode, url string, values url.Values) bool {
- code := httpCode(handler, mode, url, values)
+func HTTPSuccess(t TestingT, handler http.HandlerFunc, method, url string, values url.Values) bool {
+ code := httpCode(handler, method, url, values)
if code == -1 {
return false
}
@@ -38,8 +38,8 @@ func HTTPSuccess(t TestingT, handler http.HandlerFunc, mode, url string, values
// assert.HTTPRedirect(t, myHandler, "GET", "/a/b/c", url.Values{"a": []string{"b", "c"}}
//
// Returns whether the assertion was successful (true) or not (false).
-func HTTPRedirect(t TestingT, handler http.HandlerFunc, mode, url string, values url.Values) bool {
- code := httpCode(handler, mode, url, values)
+func HTTPRedirect(t TestingT, handler http.HandlerFunc, method, url string, values url.Values) bool {
+ code := httpCode(handler, method, url, values)
if code == -1 {
return false
}
@@ -51,8 +51,8 @@ func HTTPRedirect(t TestingT, handler http.HandlerFunc, mode, url string, values
// assert.HTTPError(t, myHandler, "POST", "/a/b/c", url.Values{"a": []string{"b", "c"}}
//
// Returns whether the assertion was successful (true) or not (false).
-func HTTPError(t TestingT, handler http.HandlerFunc, mode, url string, values url.Values) bool {
- code := httpCode(handler, mode, url, values)
+func HTTPError(t TestingT, handler http.HandlerFunc, method, url string, values url.Values) bool {
+ code := httpCode(handler, method, url, values)
if code == -1 {
return false
}
@@ -61,9 +61,9 @@ func HTTPError(t TestingT, handler http.HandlerFunc, mode, url string, values ur
// HTTPBody is a helper that returns HTTP body of the response. It returns
// empty string if building a new request fails.
-func HTTPBody(handler http.HandlerFunc, mode, url string, values url.Values) string {
+func HTTPBody(handler http.HandlerFunc, method, url string, values url.Values) string {
w := httptest.NewRecorder()
- req, err := http.NewRequest(mode, url+"?"+values.Encode(), nil)
+ req, err := http.NewRequest(method, url+"?"+values.Encode(), nil)
if err != nil {
return ""
}
@@ -77,8 +77,8 @@ func HTTPBody(handler http.HandlerFunc, mode, url string, values url.Values) str
// assert.HTTPBodyContains(t, myHandler, "www.google.com", nil, "I'm Feeling Lucky")
//
// Returns whether the assertion was successful (true) or not (false).
-func HTTPBodyContains(t TestingT, handler http.HandlerFunc, mode, url string, values url.Values, str interface{}) bool {
- body := HTTPBody(handler, mode, url, values)
+func HTTPBodyContains(t TestingT, handler http.HandlerFunc, method, url string, values url.Values, str interface{}) bool {
+ body := HTTPBody(handler, method, url, values)
contains := strings.Contains(body, fmt.Sprint(str))
if !contains {
@@ -94,8 +94,8 @@ func HTTPBodyContains(t TestingT, handler http.HandlerFunc, mode, url string, va
// assert.HTTPBodyNotContains(t, myHandler, "www.google.com", nil, "I'm Feeling Lucky")
//
// Returns whether the assertion was successful (true) or not (false).
-func HTTPBodyNotContains(t TestingT, handler http.HandlerFunc, mode, url string, values url.Values, str interface{}) bool {
- body := HTTPBody(handler, mode, url, values)
+func HTTPBodyNotContains(t TestingT, handler http.HandlerFunc, method, url string, values url.Values, str interface{}) bool {
+ body := HTTPBody(handler, method, url, values)
contains := strings.Contains(body, fmt.Sprint(str))
if contains {
@@ -114,8 +114,8 @@ func HTTPBodyNotContains(t TestingT, handler http.HandlerFunc, mode, url string,
// assert.HTTPSuccess(myHandler, "POST", "http://www.google.com", nil)
//
// Returns whether the assertion was successful (true) or not (false).
-func (a *Assertions) HTTPSuccess(handler http.HandlerFunc, mode, url string, values url.Values) bool {
- return HTTPSuccess(a.t, handler, mode, url, values)
+func (a *Assertions) HTTPSuccess(handler http.HandlerFunc, method, url string, values url.Values) bool {
+ return HTTPSuccess(a.t, handler, method, url, values)
}
// HTTPRedirect asserts that a specified handler returns a redirect status code.
@@ -123,8 +123,8 @@ func (a *Assertions) HTTPSuccess(handler http.HandlerFunc, mode, url string, val
// assert.HTTPRedirect(myHandler, "GET", "/a/b/c", url.Values{"a": []string{"b", "c"}}
//
// Returns whether the assertion was successful (true) or not (false).
-func (a *Assertions) HTTPRedirect(handler http.HandlerFunc, mode, url string, values url.Values) bool {
- return HTTPRedirect(a.t, handler, mode, url, values)
+func (a *Assertions) HTTPRedirect(handler http.HandlerFunc, method, url string, values url.Values) bool {
+ return HTTPRedirect(a.t, handler, method, url, values)
}
// HTTPError asserts that a specified handler returns an error status code.
@@ -132,8 +132,8 @@ func (a *Assertions) HTTPRedirect(handler http.HandlerFunc, mode, url string, va
// assert.HTTPError(myHandler, "POST", "/a/b/c", url.Values{"a": []string{"b", "c"}}
//
// Returns whether the assertion was successful (true) or not (false).
-func (a *Assertions) HTTPError(handler http.HandlerFunc, mode, url string, values url.Values) bool {
- return HTTPError(a.t, handler, mode, url, values)
+func (a *Assertions) HTTPError(handler http.HandlerFunc, method, url string, values url.Values) bool {
+ return HTTPError(a.t, handler, method, url, values)
}
// HTTPBodyContains asserts that a specified handler returns a
@@ -142,8 +142,8 @@ func (a *Assertions) HTTPError(handler http.HandlerFunc, mode, url string, value
// assert.HTTPBodyContains(t, myHandler, "www.google.com", nil, "I'm Feeling Lucky")
//
// Returns whether the assertion was successful (true) or not (false).
-func (a *Assertions) HTTPBodyContains(handler http.HandlerFunc, mode, url string, values url.Values, str interface{}) bool {
- return HTTPBodyContains(a.t, handler, mode, url, values, str)
+func (a *Assertions) HTTPBodyContains(handler http.HandlerFunc, method, url string, values url.Values, str interface{}) bool {
+ return HTTPBodyContains(a.t, handler, method, url, values, str)
}
// HTTPBodyNotContains asserts that a specified handler returns a
@@ -152,6 +152,6 @@ func (a *Assertions) HTTPBodyContains(handler http.HandlerFunc, mode, url string
// assert.HTTPBodyNotContains(t, myHandler, "www.google.com", nil, "I'm Feeling Lucky")
//
// Returns whether the assertion was successful (true) or not (false).
-func (a *Assertions) HTTPBodyNotContains(handler http.HandlerFunc, mode, url string, values url.Values, str interface{}) bool {
- return HTTPBodyNotContains(a.t, handler, mode, url, values, str)
+func (a *Assertions) HTTPBodyNotContains(handler http.HandlerFunc, method, url string, values url.Values, str interface{}) bool {
+ return HTTPBodyNotContains(a.t, handler, method, url, values, str)
}
diff --git a/Godeps/_workspace/src/github.com/stretchr/testify/mock/mock.go b/Godeps/_workspace/src/github.com/stretchr/testify/mock/mock.go
index fa8747e29..36de9e659 100644
--- a/Godeps/_workspace/src/github.com/stretchr/testify/mock/mock.go
+++ b/Godeps/_workspace/src/github.com/stretchr/testify/mock/mock.go
@@ -2,13 +2,15 @@ package mock
import (
"fmt"
- "github.com/stretchr/objx"
- "github.com/stretchr/testify/assert"
"reflect"
+ "regexp"
"runtime"
"strings"
"sync"
"time"
+
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/objx"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
)
// TestingT is an interface wrapper around *testing.T
@@ -24,6 +26,7 @@ type TestingT interface {
// Call represents a method call and is used for setting expectations,
// as well as recording activity.
type Call struct {
+ Parent *Mock
// The name of the method that was or will be called.
Method string
@@ -46,112 +49,79 @@ type Call struct {
// Holds a handler used to manipulate arguments content that are passed by
// reference. It's useful when mocking methods such as unmarshalers or
// decoders.
- Run func(Arguments)
+ RunFn func(Arguments)
}
-// Mock is the workhorse used to track activity on another object.
-// For an example of its usage, refer to the "Example Usage" section at the top of this document.
-type Mock struct {
-
- // The method name that is currently
- // being referred to by the On method.
- onMethodName string
-
- // An array of the arguments that are
- // currently being referred to by the On method.
- onMethodArguments Arguments
-
- // Represents the calls that are expected of
- // an object.
- ExpectedCalls []Call
-
- // Holds the calls that were made to this mocked object.
- Calls []Call
-
- // TestData holds any data that might be useful for testing. Testify ignores
- // this data completely allowing you to do whatever you like with it.
- testData objx.Map
-
- mutex sync.Mutex
-}
-
-// TestData holds any data that might be useful for testing. Testify ignores
-// this data completely allowing you to do whatever you like with it.
-func (m *Mock) TestData() objx.Map {
-
- if m.testData == nil {
- m.testData = make(objx.Map)
+func newCall(parent *Mock, methodName string, methodArguments ...interface{}) *Call {
+ return &Call{
+ Parent: parent,
+ Method: methodName,
+ Arguments: methodArguments,
+ ReturnArguments: make([]interface{}, 0),
+ Repeatability: 0,
+ WaitFor: nil,
+ RunFn: nil,
}
-
- return m.testData
}
-/*
- Setting expectations
-*/
+func (self *Call) lock() {
+ self.Parent.mutex.Lock()
+}
-// On starts a description of an expectation of the specified method
-// being called.
-//
-// Mock.On("MyMethod", arg1, arg2)
-func (m *Mock) On(methodName string, arguments ...interface{}) *Mock {
- m.onMethodName = methodName
- m.onMethodArguments = arguments
+func (self *Call) unlock() {
+ self.Parent.mutex.Unlock()
+}
- for _, arg := range arguments {
- if v := reflect.ValueOf(arg); v.Kind() == reflect.Func {
- panic(fmt.Sprintf("cannot use Func in expectations. Use mock.AnythingOfType(\"%T\")", arg))
- }
- }
+func (self *Call) Return(returnArguments ...interface{}) *Call {
+ self.lock()
+ defer self.unlock()
- return m
-}
+ self.ReturnArguments = returnArguments
-// Return finishes a description of an expectation of the method (and arguments)
-// specified in the most recent On method call.
-//
-// Mock.On("MyMethod", arg1, arg2).Return(returnArg1, returnArg2)
-func (m *Mock) Return(returnArguments ...interface{}) *Mock {
- m.ExpectedCalls = append(m.ExpectedCalls, Call{m.onMethodName, m.onMethodArguments, returnArguments, 0, nil, nil})
- return m
+ return self
}
// Once indicates that that the mock should only return the value once.
//
// Mock.On("MyMethod", arg1, arg2).Return(returnArg1, returnArg2).Once()
-func (m *Mock) Once() {
- m.ExpectedCalls[len(m.ExpectedCalls)-1].Repeatability = 1
+func (self *Call) Once() *Call {
+ return self.Times(1)
}
// Twice indicates that that the mock should only return the value twice.
//
// Mock.On("MyMethod", arg1, arg2).Return(returnArg1, returnArg2).Twice()
-func (m *Mock) Twice() {
- m.ExpectedCalls[len(m.ExpectedCalls)-1].Repeatability = 2
+func (self *Call) Twice() *Call {
+ return self.Times(2)
}
// Times indicates that that the mock should only return the indicated number
// of times.
//
// Mock.On("MyMethod", arg1, arg2).Return(returnArg1, returnArg2).Times(5)
-func (m *Mock) Times(i int) {
- m.ExpectedCalls[len(m.ExpectedCalls)-1].Repeatability = i
+func (self *Call) Times(i int) *Call {
+ self.lock()
+ defer self.unlock()
+ self.Repeatability = i
+ return self
}
// WaitUntil sets the channel that will block the mock's return until its closed
// or a message is received.
//
// Mock.On("MyMethod", arg1, arg2).WaitUntil(time.After(time.Second))
-func (m *Mock) WaitUntil(w <-chan time.Time) *Mock {
- m.ExpectedCalls[len(m.ExpectedCalls)-1].WaitFor = w
- return m
+func (self *Call) WaitUntil(w <-chan time.Time) *Call {
+ self.lock()
+ defer self.unlock()
+ self.WaitFor = w
+ return self
}
// After sets how long to block until the call returns
//
// Mock.On("MyMethod", arg1, arg2).After(time.Second)
-func (m *Mock) After(d time.Duration) *Mock {
- return m.WaitUntil(time.After(d))
+func (self *Call) After(d time.Duration) *Call {
+ return self.WaitUntil(time.After(d))
}
// Run sets a handler to be called before returning. It can be used when
@@ -162,22 +132,87 @@ func (m *Mock) After(d time.Duration) *Mock {
// arg := args.Get(0).(*map[string]interface{})
// arg["foo"] = "bar"
// })
-func (m *Mock) Run(fn func(Arguments)) *Mock {
- m.ExpectedCalls[len(m.ExpectedCalls)-1].Run = fn
- return m
+func (self *Call) Run(fn func(Arguments)) *Call {
+ self.lock()
+ defer self.unlock()
+ self.RunFn = fn
+ return self
+}
+
+// On chains a new expectation description onto the mocked interface. This
+// allows syntax like.
+//
+// Mock.
+// On("MyMethod", 1).Return(nil).
+// On("MyOtherMethod", 'a', 'b', 'c').Return(errors.New("Some Error"))
+func (self *Call) On(methodName string, arguments ...interface{}) *Call {
+ return self.Parent.On(methodName, arguments...)
+}
+
+// Mock is the workhorse used to track activity on another object.
+// For an example of its usage, refer to the "Example Usage" section at the top
+// of this document.
+type Mock struct {
+ // Represents the calls that are expected of
+ // an object.
+ ExpectedCalls []*Call
+
+ // Holds the calls that were made to this mocked object.
+ Calls []Call
+
+ // TestData holds any data that might be useful for testing. Testify ignores
+ // this data completely allowing you to do whatever you like with it.
+ testData objx.Map
+
+ mutex sync.Mutex
+}
+
+// TestData holds any data that might be useful for testing. Testify ignores
+// this data completely allowing you to do whatever you like with it.
+func (m *Mock) TestData() objx.Map {
+
+ if m.testData == nil {
+ m.testData = make(objx.Map)
+ }
+
+ return m.testData
}
/*
- Recording and responding to activity
+ Setting expectations
*/
+// On starts a description of an expectation of the specified method
+// being called.
+//
+// Mock.On("MyMethod", arg1, arg2)
+func (self *Mock) On(methodName string, arguments ...interface{}) *Call {
+ for _, arg := range arguments {
+ if v := reflect.ValueOf(arg); v.Kind() == reflect.Func {
+ panic(fmt.Sprintf("cannot use Func in expectations. Use mock.AnythingOfType(\"%T\")", arg))
+ }
+ }
+
+ self.mutex.Lock()
+ defer self.mutex.Unlock()
+ c := newCall(self, methodName, arguments...)
+ self.ExpectedCalls = append(self.ExpectedCalls, c)
+ return c
+}
+
+// /*
+// Recording and responding to activity
+// */
+
func (m *Mock) findExpectedCall(method string, arguments ...interface{}) (int, *Call) {
+ m.mutex.Lock()
+ defer m.mutex.Unlock()
for i, call := range m.ExpectedCalls {
if call.Method == method && call.Repeatability > -1 {
_, diffCount := call.Arguments.Diff(arguments)
if diffCount == 0 {
- return i, &call
+ return i, call
}
}
@@ -186,17 +221,16 @@ func (m *Mock) findExpectedCall(method string, arguments ...interface{}) (int, *
}
func (m *Mock) findClosestCall(method string, arguments ...interface{}) (bool, *Call) {
-
diffCount := 0
var closestCall *Call = nil
- for _, call := range m.ExpectedCalls {
+ for _, call := range m.expectedCalls() {
if call.Method == method {
_, tempDiffCount := call.Arguments.Diff(arguments)
if tempDiffCount < diffCount || diffCount == 0 {
diffCount = tempDiffCount
- closestCall = &call
+ closestCall = call
}
}
@@ -215,7 +249,7 @@ func callString(method string, arguments Arguments, includeArgumentValues bool)
if includeArgumentValues {
var argVals []string
for argIndex, arg := range arguments {
- argVals = append(argVals, fmt.Sprintf("%d: %v", argIndex, arg))
+ argVals = append(argVals, fmt.Sprintf("%d: %#v", argIndex, arg))
}
argValsString = fmt.Sprintf("\n\t\t%s", strings.Join(argVals, "\n\t\t"))
}
@@ -228,22 +262,26 @@ func callString(method string, arguments Arguments, includeArgumentValues bool)
// appropriate .On .Return() calls)
// If Call.WaitFor is set, blocks until the channel is closed or receives a message.
func (m *Mock) Called(arguments ...interface{}) Arguments {
- defer m.mutex.Unlock()
- m.mutex.Lock()
-
// get the calling function's name
pc, _, _, ok := runtime.Caller(1)
if !ok {
panic("Couldn't get the caller information")
}
functionPath := runtime.FuncForPC(pc).Name()
+ //Next four lines are required to use GCCGO function naming conventions.
+ //For Ex: github_com_docker_libkv_store_mock.WatchTree.pN39_github_com_docker_libkv_store_mock.Mock
+ //uses inteface information unlike golang github.com/docker/libkv/store/mock.(*Mock).WatchTree
+ //With GCCGO we need to remove interface information starting from pN<dd>.
+ re := regexp.MustCompile("\\.pN\\d+_")
+ if re.MatchString(functionPath) {
+ functionPath = re.Split(functionPath, -1)[0]
+ }
parts := strings.Split(functionPath, ".")
functionName := parts[len(parts)-1]
found, call := m.findExpectedCall(functionName, arguments...)
- switch {
- case found < 0:
+ if found < 0 {
// we have to fail here - because we don't know what to do
// as the return arguments. This is because:
//
@@ -258,28 +296,33 @@ func (m *Mock) Called(arguments ...interface{}) Arguments {
} else {
panic(fmt.Sprintf("\nassert: mock: I don't know what to return because the method call was unexpected.\n\tEither do Mock.On(\"%s\").Return(...) first, or remove the %s() call.\n\tThis method was unexpected:\n\t\t%s\n\tat: %s", functionName, functionName, callString(functionName, arguments, true), assert.CallerInfo()))
}
- case call.Repeatability == 1:
- call.Repeatability = -1
- m.ExpectedCalls[found] = *call
- case call.Repeatability > 1:
- call.Repeatability -= 1
- m.ExpectedCalls[found] = *call
+ } else {
+ m.mutex.Lock()
+ switch {
+ case call.Repeatability == 1:
+ call.Repeatability = -1
+
+ case call.Repeatability > 1:
+ call.Repeatability -= 1
+ }
+ m.mutex.Unlock()
}
// add the call
- m.Calls = append(m.Calls, Call{functionName, arguments, make([]interface{}, 0), 0, nil, nil})
+ m.mutex.Lock()
+ m.Calls = append(m.Calls, *newCall(m, functionName, arguments...))
+ m.mutex.Unlock()
// block if specified
if call.WaitFor != nil {
<-call.WaitFor
}
- if call.Run != nil {
- call.Run(arguments)
+ if call.RunFn != nil {
+ call.RunFn(arguments)
}
return call.ReturnArguments
-
}
/*
@@ -302,27 +345,30 @@ func AssertExpectationsForObjects(t TestingT, testObjects ...interface{}) bool {
// AssertExpectations asserts that everything specified with On and Return was
// in fact called as expected. Calls may have occurred in any order.
func (m *Mock) AssertExpectations(t TestingT) bool {
-
var somethingMissing bool = false
var failedExpectations int = 0
// iterate through each expectation
- for _, expectedCall := range m.ExpectedCalls {
- switch {
- case !m.methodWasCalled(expectedCall.Method, expectedCall.Arguments):
+ expectedCalls := m.expectedCalls()
+ for _, expectedCall := range expectedCalls {
+ if !m.methodWasCalled(expectedCall.Method, expectedCall.Arguments) {
somethingMissing = true
failedExpectations++
t.Logf("\u274C\t%s(%s)", expectedCall.Method, expectedCall.Arguments.String())
- case expectedCall.Repeatability > 0:
- somethingMissing = true
- failedExpectations++
- default:
- t.Logf("\u2705\t%s(%s)", expectedCall.Method, expectedCall.Arguments.String())
+ } else {
+ m.mutex.Lock()
+ if expectedCall.Repeatability > 0 {
+ somethingMissing = true
+ failedExpectations++
+ } else {
+ t.Logf("\u2705\t%s(%s)", expectedCall.Method, expectedCall.Arguments.String())
+ }
+ m.mutex.Unlock()
}
}
if somethingMissing {
- t.Errorf("FAIL: %d out of %d expectation(s) were met.\n\tThe code you are testing needs to make %d more call(s).\n\tat: %s", len(m.ExpectedCalls)-failedExpectations, len(m.ExpectedCalls), failedExpectations, assert.CallerInfo())
+ t.Errorf("FAIL: %d out of %d expectation(s) were met.\n\tThe code you are testing needs to make %d more call(s).\n\tat: %s", len(expectedCalls)-failedExpectations, len(expectedCalls), failedExpectations, assert.CallerInfo())
}
return !somethingMissing
@@ -331,18 +377,18 @@ func (m *Mock) AssertExpectations(t TestingT) bool {
// AssertNumberOfCalls asserts that the method was called expectedCalls times.
func (m *Mock) AssertNumberOfCalls(t TestingT, methodName string, expectedCalls int) bool {
var actualCalls int = 0
- for _, call := range m.Calls {
+ for _, call := range m.calls() {
if call.Method == methodName {
actualCalls++
}
}
- return assert.Equal(t, actualCalls, expectedCalls, fmt.Sprintf("Expected number of calls (%d) does not match the actual number of calls (%d).", expectedCalls, actualCalls))
+ return assert.Equal(t, expectedCalls, actualCalls, fmt.Sprintf("Expected number of calls (%d) does not match the actual number of calls (%d).", expectedCalls, actualCalls))
}
// AssertCalled asserts that the method was called.
func (m *Mock) AssertCalled(t TestingT, methodName string, arguments ...interface{}) bool {
if !assert.True(t, m.methodWasCalled(methodName, arguments), fmt.Sprintf("The \"%s\" method should have been called with %d argument(s), but was not.", methodName, len(arguments))) {
- t.Logf("%v", m.ExpectedCalls)
+ t.Logf("%v", m.expectedCalls())
return false
}
return true
@@ -351,14 +397,14 @@ func (m *Mock) AssertCalled(t TestingT, methodName string, arguments ...interfac
// AssertNotCalled asserts that the method was not called.
func (m *Mock) AssertNotCalled(t TestingT, methodName string, arguments ...interface{}) bool {
if !assert.False(t, m.methodWasCalled(methodName, arguments), fmt.Sprintf("The \"%s\" method was called with %d argument(s), but should NOT have been.", methodName, len(arguments))) {
- t.Logf("%v", m.ExpectedCalls)
+ t.Logf("%v", m.expectedCalls())
return false
}
return true
}
func (m *Mock) methodWasCalled(methodName string, expected []interface{}) bool {
- for _, call := range m.Calls {
+ for _, call := range m.calls() {
if call.Method == methodName {
_, differences := Arguments(expected).Diff(call.Arguments)
@@ -374,6 +420,18 @@ func (m *Mock) methodWasCalled(methodName string, expected []interface{}) bool {
return false
}
+func (m *Mock) expectedCalls() []*Call {
+ m.mutex.Lock()
+ defer m.mutex.Unlock()
+ return append([]*Call{}, m.ExpectedCalls...)
+}
+
+func (m *Mock) calls() []Call {
+ m.mutex.Lock()
+ defer m.mutex.Unlock()
+ return append([]Call{}, m.Calls...)
+}
+
/*
Arguments
*/
diff --git a/Godeps/_workspace/src/github.com/stretchr/testify/mock/mock_test.go b/Godeps/_workspace/src/github.com/stretchr/testify/mock/mock_test.go
index b7446accb..403534dbc 100644
--- a/Godeps/_workspace/src/github.com/stretchr/testify/mock/mock_test.go
+++ b/Godeps/_workspace/src/github.com/stretchr/testify/mock/mock_test.go
@@ -2,7 +2,8 @@ package mock
import (
"errors"
- "github.com/stretchr/testify/assert"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/stretchr/testify/assert"
+ "github.com/stretchr/testify/require"
"testing"
"time"
)
@@ -44,6 +45,16 @@ func (i *TestExampleImplementation) TheExampleMethodFunc(fn func(string) error)
return args.Error(0)
}
+func (i *TestExampleImplementation) TheExampleMethodVariadic(a ...int) error {
+ args := i.Called(a)
+ return args.Error(0)
+}
+
+func (i *TestExampleImplementation) TheExampleMethodVariadicInterface(a ...interface{}) error {
+ args := i.Called(a)
+ return args.Error(0)
+}
+
type ExampleFuncType func(string) error
func (i *TestExampleImplementation) TheExampleMethodFuncType(fn ExampleFuncType) error {
@@ -63,9 +74,7 @@ func Test_Mock_TestData(t *testing.T) {
mockedService.TestData().Set("something", 123)
assert.Equal(t, 123, mockedService.TestData().Get("something").Data())
-
}
-
}
func Test_Mock_On(t *testing.T) {
@@ -73,9 +82,36 @@ func Test_Mock_On(t *testing.T) {
// make a test impl object
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- assert.Equal(t, mockedService.On("TheExampleMethod"), &mockedService.Mock)
- assert.Equal(t, "TheExampleMethod", mockedService.onMethodName)
+ c := mockedService.On("TheExampleMethod")
+ assert.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
+ assert.Equal(t, "TheExampleMethod", c.Method)
+}
+
+func Test_Mock_Chained_On(t *testing.T) {
+ // make a test impl object
+ var mockedService *TestExampleImplementation = new(TestExampleImplementation)
+ mockedService.
+ On("TheExampleMethod", 1, 2, 3).
+ Return(0).
+ On("TheExampleMethod3", AnythingOfType("*mock.ExampleType")).
+ Return(nil)
+
+ expectedCalls := []*Call{
+ &Call{
+ Parent: &mockedService.Mock,
+ Method: "TheExampleMethod",
+ Arguments: []interface{}{1, 2, 3},
+ ReturnArguments: []interface{}{0},
+ },
+ &Call{
+ Parent: &mockedService.Mock,
+ Method: "TheExampleMethod3",
+ Arguments: []interface{}{AnythingOfType("*mock.ExampleType")},
+ ReturnArguments: []interface{}{nil},
+ },
+ }
+ assert.Equal(t, expectedCalls, mockedService.ExpectedCalls)
}
func Test_Mock_On_WithArgs(t *testing.T) {
@@ -83,12 +119,11 @@ func Test_Mock_On_WithArgs(t *testing.T) {
// make a test impl object
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- assert.Equal(t, mockedService.On("TheExampleMethod", 1, 2, 3), &mockedService.Mock)
- assert.Equal(t, "TheExampleMethod", mockedService.onMethodName)
- assert.Equal(t, 1, mockedService.onMethodArguments[0])
- assert.Equal(t, 2, mockedService.onMethodArguments[1])
- assert.Equal(t, 3, mockedService.onMethodArguments[2])
+ c := mockedService.On("TheExampleMethod", 1, 2, 3, 4)
+ assert.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
+ assert.Equal(t, "TheExampleMethod", c.Method)
+ assert.Equal(t, Arguments{1, 2, 3, 4}, c.Arguments)
}
func Test_Mock_On_WithFuncArg(t *testing.T) {
@@ -96,12 +131,85 @@ func Test_Mock_On_WithFuncArg(t *testing.T) {
// make a test impl object
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- assert.Equal(t, mockedService.On("TheExampleMethodFunc", AnythingOfType("func(string) error")).Return(nil), &mockedService.Mock)
- assert.Equal(t, "TheExampleMethodFunc", mockedService.onMethodName)
- assert.Equal(t, AnythingOfType("func(string) error"), mockedService.onMethodArguments[0])
+ c := mockedService.
+ On("TheExampleMethodFunc", AnythingOfType("func(string) error")).
+ Return(nil)
+
+ assert.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
+ assert.Equal(t, "TheExampleMethodFunc", c.Method)
+ assert.Equal(t, 1, len(c.Arguments))
+ assert.Equal(t, AnythingOfType("func(string) error"), c.Arguments[0])
fn := func(string) error { return nil }
- mockedService.TheExampleMethodFunc(fn)
+
+ assert.NotPanics(t, func() {
+ mockedService.TheExampleMethodFunc(fn)
+ })
+}
+
+func Test_Mock_On_WithVariadicFunc(t *testing.T) {
+
+ // make a test impl object
+ var mockedService *TestExampleImplementation = new(TestExampleImplementation)
+
+ c := mockedService.
+ On("TheExampleMethodVariadic", []int{1, 2, 3}).
+ Return(nil)
+
+ assert.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
+ assert.Equal(t, 1, len(c.Arguments))
+ assert.Equal(t, []int{1, 2, 3}, c.Arguments[0])
+
+ assert.NotPanics(t, func() {
+ mockedService.TheExampleMethodVariadic(1, 2, 3)
+ })
+ assert.Panics(t, func() {
+ mockedService.TheExampleMethodVariadic(1, 2)
+ })
+
+}
+
+func Test_Mock_On_WithVariadicFuncWithInterface(t *testing.T) {
+
+ // make a test impl object
+ var mockedService *TestExampleImplementation = new(TestExampleImplementation)
+
+ c := mockedService.On("TheExampleMethodVariadicInterface", []interface{}{1, 2, 3}).
+ Return(nil)
+
+ assert.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
+ assert.Equal(t, 1, len(c.Arguments))
+ assert.Equal(t, []interface{}{1, 2, 3}, c.Arguments[0])
+
+ assert.NotPanics(t, func() {
+ mockedService.TheExampleMethodVariadicInterface(1, 2, 3)
+ })
+ assert.Panics(t, func() {
+ mockedService.TheExampleMethodVariadicInterface(1, 2)
+ })
+
+}
+
+func Test_Mock_On_WithVariadicFuncWithEmptyInterfaceArray(t *testing.T) {
+
+ // make a test impl object
+ var mockedService *TestExampleImplementation = new(TestExampleImplementation)
+
+ var expected []interface{}
+ c := mockedService.
+ On("TheExampleMethodVariadicInterface", expected).
+ Return(nil)
+
+ assert.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
+ assert.Equal(t, 1, len(c.Arguments))
+ assert.Equal(t, expected, c.Arguments[0])
+
+ assert.NotPanics(t, func() {
+ mockedService.TheExampleMethodVariadicInterface()
+ })
+ assert.Panics(t, func() {
+ mockedService.TheExampleMethodVariadicInterface(1, 2)
+ })
}
@@ -119,13 +227,18 @@ func Test_Mock_On_WithFuncTypeArg(t *testing.T) {
// make a test impl object
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- assert.Equal(t, mockedService.On("TheExampleMethodFuncType", AnythingOfType("mock.ExampleFuncType")).Return(nil), &mockedService.Mock)
- assert.Equal(t, "TheExampleMethodFuncType", mockedService.onMethodName)
- assert.Equal(t, AnythingOfType("mock.ExampleFuncType"), mockedService.onMethodArguments[0])
+ c := mockedService.
+ On("TheExampleMethodFuncType", AnythingOfType("mock.ExampleFuncType")).
+ Return(nil)
- fn := func(string) error { return nil }
- mockedService.TheExampleMethodFuncType(fn)
+ assert.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
+ assert.Equal(t, 1, len(c.Arguments))
+ assert.Equal(t, AnythingOfType("mock.ExampleFuncType"), c.Arguments[0])
+ fn := func(string) error { return nil }
+ assert.NotPanics(t, func() {
+ mockedService.TheExampleMethodFuncType(fn)
+ })
}
func Test_Mock_Return(t *testing.T) {
@@ -133,24 +246,23 @@ func Test_Mock_Return(t *testing.T) {
// make a test impl object
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- assert.Equal(t, mockedService.On("TheExampleMethod", "A", "B", true).Return(1, "two", true), &mockedService.Mock)
-
- // ensure the call was created
- if assert.Equal(t, 1, len(mockedService.ExpectedCalls)) {
- call := mockedService.ExpectedCalls[0]
+ c := mockedService.
+ On("TheExampleMethod", "A", "B", true).
+ Return(1, "two", true)
- assert.Equal(t, "TheExampleMethod", call.Method)
- assert.Equal(t, "A", call.Arguments[0])
- assert.Equal(t, "B", call.Arguments[1])
- assert.Equal(t, true, call.Arguments[2])
- assert.Equal(t, 1, call.ReturnArguments[0])
- assert.Equal(t, "two", call.ReturnArguments[1])
- assert.Equal(t, true, call.ReturnArguments[2])
- assert.Equal(t, 0, call.Repeatability)
- assert.Nil(t, call.WaitFor)
+ require.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
- }
+ call := mockedService.ExpectedCalls[0]
+ assert.Equal(t, "TheExampleMethod", call.Method)
+ assert.Equal(t, "A", call.Arguments[0])
+ assert.Equal(t, "B", call.Arguments[1])
+ assert.Equal(t, true, call.Arguments[2])
+ assert.Equal(t, 1, call.ReturnArguments[0])
+ assert.Equal(t, "two", call.ReturnArguments[1])
+ assert.Equal(t, true, call.ReturnArguments[2])
+ assert.Equal(t, 0, call.Repeatability)
+ assert.Nil(t, call.WaitFor)
}
func Test_Mock_Return_WaitUntil(t *testing.T) {
@@ -159,24 +271,25 @@ func Test_Mock_Return_WaitUntil(t *testing.T) {
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
ch := time.After(time.Second)
- assert.Equal(t, mockedService.Mock.On("TheExampleMethod", "A", "B", true).Return(1, "two", true).WaitUntil(ch), &mockedService.Mock)
-
- // ensure the call was created
- if assert.Equal(t, 1, len(mockedService.Mock.ExpectedCalls)) {
- call := mockedService.Mock.ExpectedCalls[0]
+ c := mockedService.Mock.
+ On("TheExampleMethod", "A", "B", true).
+ WaitUntil(ch).
+ Return(1, "two", true)
- assert.Equal(t, "TheExampleMethod", call.Method)
- assert.Equal(t, "A", call.Arguments[0])
- assert.Equal(t, "B", call.Arguments[1])
- assert.Equal(t, true, call.Arguments[2])
- assert.Equal(t, 1, call.ReturnArguments[0])
- assert.Equal(t, "two", call.ReturnArguments[1])
- assert.Equal(t, true, call.ReturnArguments[2])
- assert.Equal(t, 0, call.Repeatability)
- assert.Equal(t, ch, call.WaitFor)
+ // assert that the call was created
+ require.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
- }
+ call := mockedService.ExpectedCalls[0]
+ assert.Equal(t, "TheExampleMethod", call.Method)
+ assert.Equal(t, "A", call.Arguments[0])
+ assert.Equal(t, "B", call.Arguments[1])
+ assert.Equal(t, true, call.Arguments[2])
+ assert.Equal(t, 1, call.ReturnArguments[0])
+ assert.Equal(t, "two", call.ReturnArguments[1])
+ assert.Equal(t, true, call.ReturnArguments[2])
+ assert.Equal(t, 0, call.Repeatability)
+ assert.Equal(t, ch, call.WaitFor)
}
func Test_Mock_Return_After(t *testing.T) {
@@ -184,23 +297,24 @@ func Test_Mock_Return_After(t *testing.T) {
// make a test impl object
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- assert.Equal(t, mockedService.Mock.On("TheExampleMethod", "A", "B", true).Return(1, "two", true).After(time.Second), &mockedService.Mock)
+ c := mockedService.Mock.
+ On("TheExampleMethod", "A", "B", true).
+ Return(1, "two", true).
+ After(time.Second)
- // ensure the call was created
- if assert.Equal(t, 1, len(mockedService.Mock.ExpectedCalls)) {
- call := mockedService.Mock.ExpectedCalls[0]
+ require.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
- assert.Equal(t, "TheExampleMethod", call.Method)
- assert.Equal(t, "A", call.Arguments[0])
- assert.Equal(t, "B", call.Arguments[1])
- assert.Equal(t, true, call.Arguments[2])
- assert.Equal(t, 1, call.ReturnArguments[0])
- assert.Equal(t, "two", call.ReturnArguments[1])
- assert.Equal(t, true, call.ReturnArguments[2])
- assert.Equal(t, 0, call.Repeatability)
- assert.NotEqual(t, nil, call.WaitFor)
+ call := mockedService.Mock.ExpectedCalls[0]
- }
+ assert.Equal(t, "TheExampleMethod", call.Method)
+ assert.Equal(t, "A", call.Arguments[0])
+ assert.Equal(t, "B", call.Arguments[1])
+ assert.Equal(t, true, call.Arguments[2])
+ assert.Equal(t, 1, call.ReturnArguments[0])
+ assert.Equal(t, "two", call.ReturnArguments[1])
+ assert.Equal(t, true, call.ReturnArguments[2])
+ assert.Equal(t, 0, call.Repeatability)
+ assert.NotEqual(t, nil, call.WaitFor)
}
@@ -209,29 +323,56 @@ func Test_Mock_Return_Run(t *testing.T) {
// make a test impl object
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- assert.Equal(t, mockedService.Mock.On("TheExampleMethod3", AnythingOfType("*mock.ExampleType")).Return(nil).Run(func(args Arguments) {
+ fn := func(args Arguments) {
arg := args.Get(0).(*ExampleType)
arg.ran = true
- }), &mockedService.Mock)
+ }
- // ensure the call was created
- if assert.Equal(t, 1, len(mockedService.Mock.ExpectedCalls)) {
- call := mockedService.Mock.ExpectedCalls[0]
+ c := mockedService.Mock.
+ On("TheExampleMethod3", AnythingOfType("*mock.ExampleType")).
+ Return(nil).
+ Run(fn)
- assert.Equal(t, "TheExampleMethod3", call.Method)
- assert.Equal(t, AnythingOfType("*mock.ExampleType"), call.Arguments[0])
- assert.Equal(t, nil, call.ReturnArguments[0])
- assert.Equal(t, 0, call.Repeatability)
- assert.NotEqual(t, nil, call.WaitFor)
- assert.NotNil(t, call.Run)
+ require.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
- }
+ call := mockedService.Mock.ExpectedCalls[0]
+
+ assert.Equal(t, "TheExampleMethod3", call.Method)
+ assert.Equal(t, AnythingOfType("*mock.ExampleType"), call.Arguments[0])
+ assert.Equal(t, nil, call.ReturnArguments[0])
+ assert.Equal(t, 0, call.Repeatability)
+ assert.NotEqual(t, nil, call.WaitFor)
+ assert.NotNil(t, call.Run)
et := ExampleType{}
assert.Equal(t, false, et.ran)
mockedService.TheExampleMethod3(&et)
assert.Equal(t, true, et.ran)
+}
+
+func Test_Mock_Return_Run_Out_Of_Order(t *testing.T) {
+ // make a test impl object
+ var mockedService *TestExampleImplementation = new(TestExampleImplementation)
+ f := func(args Arguments) {
+ arg := args.Get(0).(*ExampleType)
+ arg.ran = true
+ }
+
+ c := mockedService.Mock.
+ On("TheExampleMethod3", AnythingOfType("*mock.ExampleType")).
+ Run(f).
+ Return(nil)
+ require.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
+
+ call := mockedService.Mock.ExpectedCalls[0]
+
+ assert.Equal(t, "TheExampleMethod3", call.Method)
+ assert.Equal(t, AnythingOfType("*mock.ExampleType"), call.Arguments[0])
+ assert.Equal(t, nil, call.ReturnArguments[0])
+ assert.Equal(t, 0, call.Repeatability)
+ assert.NotEqual(t, nil, call.WaitFor)
+ assert.NotNil(t, call.Run)
}
func Test_Mock_Return_Once(t *testing.T) {
@@ -239,24 +380,23 @@ func Test_Mock_Return_Once(t *testing.T) {
// make a test impl object
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- mockedService.On("TheExampleMethod", "A", "B", true).Return(1, "two", true).Once()
+ c := mockedService.On("TheExampleMethod", "A", "B", true).
+ Return(1, "two", true).
+ Once()
- // ensure the call was created
- if assert.Equal(t, 1, len(mockedService.ExpectedCalls)) {
- call := mockedService.ExpectedCalls[0]
+ require.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
- assert.Equal(t, "TheExampleMethod", call.Method)
- assert.Equal(t, "A", call.Arguments[0])
- assert.Equal(t, "B", call.Arguments[1])
- assert.Equal(t, true, call.Arguments[2])
- assert.Equal(t, 1, call.ReturnArguments[0])
- assert.Equal(t, "two", call.ReturnArguments[1])
- assert.Equal(t, true, call.ReturnArguments[2])
- assert.Equal(t, 1, call.Repeatability)
- assert.Nil(t, call.WaitFor)
-
- }
+ call := mockedService.ExpectedCalls[0]
+ assert.Equal(t, "TheExampleMethod", call.Method)
+ assert.Equal(t, "A", call.Arguments[0])
+ assert.Equal(t, "B", call.Arguments[1])
+ assert.Equal(t, true, call.Arguments[2])
+ assert.Equal(t, 1, call.ReturnArguments[0])
+ assert.Equal(t, "two", call.ReturnArguments[1])
+ assert.Equal(t, true, call.ReturnArguments[2])
+ assert.Equal(t, 1, call.Repeatability)
+ assert.Nil(t, call.WaitFor)
}
func Test_Mock_Return_Twice(t *testing.T) {
@@ -264,24 +404,24 @@ func Test_Mock_Return_Twice(t *testing.T) {
// make a test impl object
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- mockedService.On("TheExampleMethod", "A", "B", true).Return(1, "two", true).Twice()
-
- // ensure the call was created
- if assert.Equal(t, 1, len(mockedService.ExpectedCalls)) {
- call := mockedService.ExpectedCalls[0]
+ c := mockedService.
+ On("TheExampleMethod", "A", "B", true).
+ Return(1, "two", true).
+ Twice()
- assert.Equal(t, "TheExampleMethod", call.Method)
- assert.Equal(t, "A", call.Arguments[0])
- assert.Equal(t, "B", call.Arguments[1])
- assert.Equal(t, true, call.Arguments[2])
- assert.Equal(t, 1, call.ReturnArguments[0])
- assert.Equal(t, "two", call.ReturnArguments[1])
- assert.Equal(t, true, call.ReturnArguments[2])
- assert.Equal(t, 2, call.Repeatability)
- assert.Nil(t, call.WaitFor)
+ require.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
- }
+ call := mockedService.ExpectedCalls[0]
+ assert.Equal(t, "TheExampleMethod", call.Method)
+ assert.Equal(t, "A", call.Arguments[0])
+ assert.Equal(t, "B", call.Arguments[1])
+ assert.Equal(t, true, call.Arguments[2])
+ assert.Equal(t, 1, call.ReturnArguments[0])
+ assert.Equal(t, "two", call.ReturnArguments[1])
+ assert.Equal(t, true, call.ReturnArguments[2])
+ assert.Equal(t, 2, call.Repeatability)
+ assert.Nil(t, call.WaitFor)
}
func Test_Mock_Return_Times(t *testing.T) {
@@ -289,24 +429,24 @@ func Test_Mock_Return_Times(t *testing.T) {
// make a test impl object
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- mockedService.On("TheExampleMethod", "A", "B", true).Return(1, "two", true).Times(5)
-
- // ensure the call was created
- if assert.Equal(t, 1, len(mockedService.ExpectedCalls)) {
- call := mockedService.ExpectedCalls[0]
+ c := mockedService.
+ On("TheExampleMethod", "A", "B", true).
+ Return(1, "two", true).
+ Times(5)
- assert.Equal(t, "TheExampleMethod", call.Method)
- assert.Equal(t, "A", call.Arguments[0])
- assert.Equal(t, "B", call.Arguments[1])
- assert.Equal(t, true, call.Arguments[2])
- assert.Equal(t, 1, call.ReturnArguments[0])
- assert.Equal(t, "two", call.ReturnArguments[1])
- assert.Equal(t, true, call.ReturnArguments[2])
- assert.Equal(t, 5, call.Repeatability)
- assert.Nil(t, call.WaitFor)
+ require.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
- }
+ call := mockedService.ExpectedCalls[0]
+ assert.Equal(t, "TheExampleMethod", call.Method)
+ assert.Equal(t, "A", call.Arguments[0])
+ assert.Equal(t, "B", call.Arguments[1])
+ assert.Equal(t, true, call.Arguments[2])
+ assert.Equal(t, 1, call.ReturnArguments[0])
+ assert.Equal(t, "two", call.ReturnArguments[1])
+ assert.Equal(t, true, call.ReturnArguments[2])
+ assert.Equal(t, 5, call.Repeatability)
+ assert.Nil(t, call.WaitFor)
}
func Test_Mock_Return_Nothing(t *testing.T) {
@@ -314,20 +454,19 @@ func Test_Mock_Return_Nothing(t *testing.T) {
// make a test impl object
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- assert.Equal(t, mockedService.On("TheExampleMethod", "A", "B", true).Return(), &mockedService.Mock)
+ c := mockedService.
+ On("TheExampleMethod", "A", "B", true).
+ Return()
- // ensure the call was created
- if assert.Equal(t, 1, len(mockedService.ExpectedCalls)) {
- call := mockedService.ExpectedCalls[0]
+ require.Equal(t, []*Call{c}, mockedService.ExpectedCalls)
- assert.Equal(t, "TheExampleMethod", call.Method)
- assert.Equal(t, "A", call.Arguments[0])
- assert.Equal(t, "B", call.Arguments[1])
- assert.Equal(t, true, call.Arguments[2])
- assert.Equal(t, 0, len(call.ReturnArguments))
-
- }
+ call := mockedService.ExpectedCalls[0]
+ assert.Equal(t, "TheExampleMethod", call.Method)
+ assert.Equal(t, "A", call.Arguments[0])
+ assert.Equal(t, "B", call.Arguments[1])
+ assert.Equal(t, true, call.Arguments[2])
+ assert.Equal(t, 0, len(call.ReturnArguments))
}
func Test_Mock_findExpectedCall(t *testing.T) {
@@ -452,8 +591,13 @@ func Test_Mock_Called_For_Bounded_Repeatability(t *testing.T) {
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- mockedService.On("Test_Mock_Called_For_Bounded_Repeatability", 1, 2, 3).Return(5, "6", true).Once()
- mockedService.On("Test_Mock_Called_For_Bounded_Repeatability", 1, 2, 3).Return(-1, "hi", false)
+ mockedService.
+ On("Test_Mock_Called_For_Bounded_Repeatability", 1, 2, 3).
+ Return(5, "6", true).
+ Once()
+ mockedService.
+ On("Test_Mock_Called_For_Bounded_Repeatability", 1, 2, 3).
+ Return(-1, "hi", false)
returnArguments1 := mockedService.Called(1, 2, 3)
returnArguments2 := mockedService.Called(1, 2, 3)
@@ -651,7 +795,9 @@ func Test_Mock_AssertCalled_WithAnythingOfTypeArgument(t *testing.T) {
var mockedService *TestExampleImplementation = new(TestExampleImplementation)
- mockedService.On("Test_Mock_AssertCalled_WithAnythingOfTypeArgument", Anything, Anything, Anything).Return()
+ mockedService.
+ On("Test_Mock_AssertCalled_WithAnythingOfTypeArgument", Anything, Anything, Anything).
+ Return()
mockedService.Called(1, "two", []uint8("three"))
diff --git a/Godeps/_workspace/src/code.google.com/p/go.crypto/bcrypt/base64.go b/Godeps/_workspace/src/golang.org/x/crypto/bcrypt/base64.go
index fc3116090..fc3116090 100644
--- a/Godeps/_workspace/src/code.google.com/p/go.crypto/bcrypt/base64.go
+++ b/Godeps/_workspace/src/golang.org/x/crypto/bcrypt/base64.go
diff --git a/Godeps/_workspace/src/code.google.com/p/go.crypto/bcrypt/bcrypt.go b/Godeps/_workspace/src/golang.org/x/crypto/bcrypt/bcrypt.go
index b8e18d744..aa50fdc61 100644
--- a/Godeps/_workspace/src/code.google.com/p/go.crypto/bcrypt/bcrypt.go
+++ b/Godeps/_workspace/src/golang.org/x/crypto/bcrypt/bcrypt.go
@@ -12,7 +12,7 @@ import (
"crypto/subtle"
"errors"
"fmt"
- "golang.org/x/crypto/blowfish"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/crypto/blowfish"
"io"
"strconv"
)
diff --git a/Godeps/_workspace/src/code.google.com/p/go.crypto/bcrypt/bcrypt_test.go b/Godeps/_workspace/src/golang.org/x/crypto/bcrypt/bcrypt_test.go
index f08a6f5b2..f08a6f5b2 100644
--- a/Godeps/_workspace/src/code.google.com/p/go.crypto/bcrypt/bcrypt_test.go
+++ b/Godeps/_workspace/src/golang.org/x/crypto/bcrypt/bcrypt_test.go
diff --git a/Godeps/_workspace/src/golang.org/x/image/font/basicfont/basicfont.go b/Godeps/_workspace/src/golang.org/x/image/font/basicfont/basicfont.go
index 7eae19c8b..8875bd1cc 100644
--- a/Godeps/_workspace/src/golang.org/x/image/font/basicfont/basicfont.go
+++ b/Godeps/_workspace/src/golang.org/x/image/font/basicfont/basicfont.go
@@ -10,7 +10,7 @@ package basicfont
import (
"image"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
// Range maps a contiguous range of runes to vertically adjacent sub-images of
diff --git a/Godeps/_workspace/src/golang.org/x/image/font/basicfont/gen.go b/Godeps/_workspace/src/golang.org/x/image/font/basicfont/gen.go
index 67a21a74a..4efb03322 100644
--- a/Godeps/_workspace/src/golang.org/x/image/font/basicfont/gen.go
+++ b/Godeps/_workspace/src/golang.org/x/image/font/basicfont/gen.go
@@ -18,9 +18,9 @@ import (
"path"
"path/filepath"
- "golang.org/x/image/font"
- "golang.org/x/image/font/plan9font"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font/plan9font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
func main() {
diff --git a/Godeps/_workspace/src/golang.org/x/image/font/font.go b/Godeps/_workspace/src/golang.org/x/image/font/font.go
index de8802fcc..1eae5c7ab 100644
--- a/Godeps/_workspace/src/golang.org/x/image/font/font.go
+++ b/Godeps/_workspace/src/golang.org/x/image/font/font.go
@@ -14,7 +14,7 @@ import (
"image/draw"
"io"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
// TODO: who is responsible for caches (glyph images, glyph indices, kerns)?
diff --git a/Godeps/_workspace/src/golang.org/x/image/font/plan9font/example_test.go b/Godeps/_workspace/src/golang.org/x/image/font/plan9font/example_test.go
index c1eacb230..1114fd7d2 100644
--- a/Godeps/_workspace/src/golang.org/x/image/font/plan9font/example_test.go
+++ b/Godeps/_workspace/src/golang.org/x/image/font/plan9font/example_test.go
@@ -13,9 +13,9 @@ import (
"path"
"path/filepath"
- "golang.org/x/image/font"
- "golang.org/x/image/font/plan9font"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font/plan9font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
func ExampleParseFont() {
diff --git a/Godeps/_workspace/src/golang.org/x/image/font/plan9font/plan9font.go b/Godeps/_workspace/src/golang.org/x/image/font/plan9font/plan9font.go
index 9c686b776..705258c3b 100644
--- a/Godeps/_workspace/src/golang.org/x/image/font/plan9font/plan9font.go
+++ b/Godeps/_workspace/src/golang.org/x/image/font/plan9font/plan9font.go
@@ -21,8 +21,8 @@ import (
"strconv"
"strings"
- "golang.org/x/image/font"
- "golang.org/x/image/math/fixed"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/font"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/math/fixed"
)
// fontchar describes one character glyph in a subfont.
diff --git a/Godeps/_workspace/src/golang.org/x/image/tiff/buffer_test.go b/Godeps/_workspace/src/golang.org/x/image/tiff/buffer_test.go
new file mode 100644
index 000000000..e13afb361
--- /dev/null
+++ b/Godeps/_workspace/src/golang.org/x/image/tiff/buffer_test.go
@@ -0,0 +1,36 @@
+// Copyright 2011 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package tiff
+
+import (
+ "io"
+ "strings"
+ "testing"
+)
+
+var readAtTests = []struct {
+ n int
+ off int64
+ s string
+ err error
+}{
+ {2, 0, "ab", nil},
+ {6, 0, "abcdef", nil},
+ {3, 3, "def", nil},
+ {3, 5, "f", io.EOF},
+ {3, 6, "", io.EOF},
+}
+
+func TestReadAt(t *testing.T) {
+ r := newReaderAt(strings.NewReader("abcdef"))
+ b := make([]byte, 10)
+ for _, test := range readAtTests {
+ n, err := r.ReadAt(b[:test.n], test.off)
+ s := string(b[:n])
+ if s != test.s || err != test.err {
+ t.Errorf("buffer.ReadAt(<%v bytes>, %v): got %v, %q; want %v, %q", test.n, test.off, err, s, test.err, test.s)
+ }
+ }
+}
diff --git a/Godeps/_workspace/src/golang.org/x/image/tiff/reader.go b/Godeps/_workspace/src/golang.org/x/image/tiff/reader.go
index 714e3dda7..651fa8026 100644
--- a/Godeps/_workspace/src/golang.org/x/image/tiff/reader.go
+++ b/Godeps/_workspace/src/golang.org/x/image/tiff/reader.go
@@ -17,7 +17,7 @@ import (
"io/ioutil"
"math"
- "golang.org/x/image/tiff/lzw"
+ "github.com/mattermost/platform/Godeps/_workspace/src/golang.org/x/image/tiff/lzw"
)
// A FormatError reports that the input is not a valid TIFF image.
diff --git a/Godeps/_workspace/src/golang.org/x/image/tiff/reader_test.go b/Godeps/_workspace/src/golang.org/x/image/tiff/reader_test.go
new file mode 100644
index 000000000..f5c02e697
--- /dev/null
+++ b/Godeps/_workspace/src/golang.org/x/image/tiff/reader_test.go
@@ -0,0 +1,377 @@
+// Copyright 2011 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package tiff
+
+import (
+ "bytes"
+ "encoding/binary"
+ "encoding/hex"
+ "errors"
+ "image"
+ "io/ioutil"
+ "os"
+ "strings"
+ "testing"
+
+ _ "image/png"
+)
+
+const testdataDir = "../testdata/"
+
+// Read makes *buffer implements io.Reader, so that we can pass one to Decode.
+func (*buffer) Read([]byte) (int, error) {
+ panic("unimplemented")
+}
+
+func load(name string) (image.Image, error) {
+ f, err := os.Open(testdataDir + name)
+ if err != nil {
+ return nil, err
+ }
+ defer f.Close()
+ img, _, err := image.Decode(f)
+ if err != nil {
+ return nil, err
+ }
+ return img, nil
+}
+
+// TestNoRPS tests decoding an image that has no RowsPerStrip tag. The tag is
+// mandatory according to the spec but some software omits it in the case of a
+// single strip.
+func TestNoRPS(t *testing.T) {
+ _, err := load("no_rps.tiff")
+ if err != nil {
+ t.Fatal(err)
+ }
+}
+
+// TestNoCompression tests decoding an image that has no Compression tag. This
+// tag is mandatory, but most tools interpret a missing value as no
+// compression.
+func TestNoCompression(t *testing.T) {
+ _, err := load("no_compress.tiff")
+ if err != nil {
+ t.Fatal(err)
+ }
+}
+
+// TestUnpackBits tests the decoding of PackBits-encoded data.
+func TestUnpackBits(t *testing.T) {
+ var unpackBitsTests = []struct {
+ compressed string
+ uncompressed string
+ }{{
+ // Example data from Wikipedia.
+ "\xfe\xaa\x02\x80\x00\x2a\xfd\xaa\x03\x80\x00\x2a\x22\xf7\xaa",
+ "\xaa\xaa\xaa\x80\x00\x2a\xaa\xaa\xaa\xaa\x80\x00\x2a\x22\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa",
+ }}
+ for _, u := range unpackBitsTests {
+ buf, err := unpackBits(strings.NewReader(u.compressed))
+ if err != nil {
+ t.Fatal(err)
+ }
+ if string(buf) != u.uncompressed {
+ t.Fatalf("unpackBits: want %x, got %x", u.uncompressed, buf)
+ }
+ }
+}
+
+func TestShortBlockData(t *testing.T) {
+ b, err := ioutil.ReadFile("../testdata/bw-uncompressed.tiff")
+ if err != nil {
+ t.Fatal(err)
+ }
+ // The bw-uncompressed.tiff image is a 153x55 bi-level image. This is 1 bit
+ // per pixel, or 20 bytes per row, times 55 rows, or 1100 bytes of pixel
+ // data. 1100 in hex is 0x44c, or "\x4c\x04" in little-endian. We replace
+ // that byte count (StripByteCounts-tagged data) by something less than
+ // that, so that there is not enough pixel data.
+ old := []byte{0x4c, 0x04}
+ new := []byte{0x01, 0x01}
+ i := bytes.Index(b, old)
+ if i < 0 {
+ t.Fatal(`could not find "\x4c\x04" byte count`)
+ }
+ if bytes.Contains(b[i+len(old):], old) {
+ t.Fatal(`too many occurrences of "\x4c\x04"`)
+ }
+ b[i+0] = new[0]
+ b[i+1] = new[1]
+ if _, err = Decode(bytes.NewReader(b)); err == nil {
+ t.Fatal("got nil error, want non-nil")
+ }
+}
+
+func TestDecodeInvalidDataType(t *testing.T) {
+ b, err := ioutil.ReadFile("../testdata/bw-uncompressed.tiff")
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ // off is the offset of the ImageWidth tag. It is the offset of the overall
+ // IFD block (0x00000454), plus 2 for the uint16 number of IFD entries, plus 12
+ // to skip the first entry.
+ const off = 0x00000454 + 2 + 12*1
+
+ if v := binary.LittleEndian.Uint16(b[off : off+2]); v != tImageWidth {
+ t.Fatal(`could not find ImageWidth tag`)
+ }
+ binary.LittleEndian.PutUint16(b[off+2:], uint16(len(lengths))) // invalid datatype
+
+ if _, err = Decode(bytes.NewReader(b)); err == nil {
+ t.Fatal("got nil error, want non-nil")
+ }
+}
+
+func compare(t *testing.T, img0, img1 image.Image) {
+ b0 := img0.Bounds()
+ b1 := img1.Bounds()
+ if b0.Dx() != b1.Dx() || b0.Dy() != b1.Dy() {
+ t.Fatalf("wrong image size: want %s, got %s", b0, b1)
+ }
+ x1 := b1.Min.X - b0.Min.X
+ y1 := b1.Min.Y - b0.Min.Y
+ for y := b0.Min.Y; y < b0.Max.Y; y++ {
+ for x := b0.Min.X; x < b0.Max.X; x++ {
+ c0 := img0.At(x, y)
+ c1 := img1.At(x+x1, y+y1)
+ r0, g0, b0, a0 := c0.RGBA()
+ r1, g1, b1, a1 := c1.RGBA()
+ if r0 != r1 || g0 != g1 || b0 != b1 || a0 != a1 {
+ t.Fatalf("pixel at (%d, %d) has wrong color: want %v, got %v", x, y, c0, c1)
+ }
+ }
+ }
+}
+
+// TestDecode tests that decoding a PNG image and a TIFF image result in the
+// same pixel data.
+func TestDecode(t *testing.T) {
+ img0, err := load("video-001.png")
+ if err != nil {
+ t.Fatal(err)
+ }
+ img1, err := load("video-001.tiff")
+ if err != nil {
+ t.Fatal(err)
+ }
+ img2, err := load("video-001-strip-64.tiff")
+ if err != nil {
+ t.Fatal(err)
+ }
+ img3, err := load("video-001-tile-64x64.tiff")
+ if err != nil {
+ t.Fatal(err)
+ }
+ img4, err := load("video-001-16bit.tiff")
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ compare(t, img0, img1)
+ compare(t, img0, img2)
+ compare(t, img0, img3)
+ compare(t, img0, img4)
+}
+
+// TestDecodeLZW tests that decoding a PNG image and a LZW-compressed TIFF
+// image result in the same pixel data.
+func TestDecodeLZW(t *testing.T) {
+ img0, err := load("blue-purple-pink.png")
+ if err != nil {
+ t.Fatal(err)
+ }
+ img1, err := load("blue-purple-pink.lzwcompressed.tiff")
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ compare(t, img0, img1)
+}
+
+// TestDecompress tests that decoding some TIFF images that use different
+// compression formats result in the same pixel data.
+func TestDecompress(t *testing.T) {
+ var decompressTests = []string{
+ "bw-uncompressed.tiff",
+ "bw-deflate.tiff",
+ "bw-packbits.tiff",
+ }
+ var img0 image.Image
+ for _, name := range decompressTests {
+ img1, err := load(name)
+ if err != nil {
+ t.Fatalf("decoding %s: %v", name, err)
+ }
+ if img0 == nil {
+ img0 = img1
+ continue
+ }
+ compare(t, img0, img1)
+ }
+}
+
+func replace(src []byte, find, repl string) ([]byte, error) {
+ removeSpaces := func(r rune) rune {
+ if r != ' ' {
+ return r
+ }
+ return -1
+ }
+
+ f, err := hex.DecodeString(strings.Map(removeSpaces, find))
+ if err != nil {
+ return nil, err
+ }
+ r, err := hex.DecodeString(strings.Map(removeSpaces, repl))
+ if err != nil {
+ return nil, err
+ }
+ dst := bytes.Replace(src, f, r, 1)
+ if bytes.Equal(dst, src) {
+ return nil, errors.New("replacement failed")
+ }
+ return dst, nil
+}
+
+// TestZeroBitsPerSample tests that an IFD with a bitsPerSample of 0 does not
+// cause a crash.
+// Issue 10711.
+func TestZeroBitsPerSample(t *testing.T) {
+ b0, err := ioutil.ReadFile(testdataDir + "bw-deflate.tiff")
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ // Mutate the loaded image to have the problem.
+ // 02 01: tag number (tBitsPerSample)
+ // 03 00: data type (short, or uint16)
+ // 01 00 00 00: count
+ // ?? 00 00 00: value (1 -> 0)
+ b1, err := replace(b0,
+ "02 01 03 00 01 00 00 00 01 00 00 00",
+ "02 01 03 00 01 00 00 00 00 00 00 00",
+ )
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ _, err = Decode(bytes.NewReader(b1))
+ if err == nil {
+ t.Fatal("Decode with 0 bits per sample: got nil error, want non-nil")
+ }
+}
+
+// TestTileTooBig tests that we do not panic when a tile is too big compared to
+// the data available.
+// Issue 10712
+func TestTileTooBig(t *testing.T) {
+ b0, err := ioutil.ReadFile(testdataDir + "video-001-tile-64x64.tiff")
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ // Mutate the loaded image to have the problem.
+ //
+ // 42 01: tag number (tTileWidth)
+ // 03 00: data type (short, or uint16)
+ // 01 00 00 00: count
+ // xx 00 00 00: value (0x40 -> 0x44: a wider tile consumes more data
+ // than is available)
+ b1, err := replace(b0,
+ "42 01 03 00 01 00 00 00 40 00 00 00",
+ "42 01 03 00 01 00 00 00 44 00 00 00",
+ )
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ // Turn off the predictor, which makes it possible to hit the
+ // place with the defect. Without this patch to the image, we run
+ // out of data too early, and do not hit the part of the code where
+ // the original panic was.
+ //
+ // 3d 01: tag number (tPredictor)
+ // 03 00: data type (short, or uint16)
+ // 01 00 00 00: count
+ // xx 00 00 00: value (2 -> 1: 2 = horizontal, 1 = none)
+ b2, err := replace(b1,
+ "3d 01 03 00 01 00 00 00 02 00 00 00",
+ "3d 01 03 00 01 00 00 00 01 00 00 00",
+ )
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ _, err = Decode(bytes.NewReader(b2))
+ if err == nil {
+ t.Fatal("did not expect nil error")
+ }
+}
+
+// TestZeroSizedImages tests that decoding does not panic when image dimensions
+// are zero, and returns a zero-sized image instead.
+// Issue 10393.
+func TestZeroSizedImages(t *testing.T) {
+ testsizes := []struct {
+ w, h int
+ }{
+ {0, 0},
+ {1, 0},
+ {0, 1},
+ {1, 1},
+ }
+ for _, r := range testsizes {
+ img := image.NewRGBA(image.Rect(0, 0, r.w, r.h))
+ var buf bytes.Buffer
+ if err := Encode(&buf, img, nil); err != nil {
+ t.Errorf("encode w=%d h=%d: %v", r.w, r.h, err)
+ continue
+ }
+ if _, err := Decode(&buf); err != nil {
+ t.Errorf("decode w=%d h=%d: %v", r.w, r.h, err)
+ }
+ }
+}
+
+// TestLargeIFDEntry tests that a large IFD entry does not cause Decode to
+// panic.
+// Issue 10596.
+func TestLargeIFDEntry(t *testing.T) {
+ testdata := "II*\x00\x08\x00\x00\x00\f\x000000000000" +
+ "00000000000000000000" +
+ "00000000000000000000" +
+ "00000000000000000000" +
+ "00000000000000\x17\x01\x04\x00\x01\x00" +
+ "\x00\xc0000000000000000000" +
+ "00000000000000000000" +
+ "00000000000000000000" +
+ "000000"
+ _, err := Decode(strings.NewReader(testdata))
+ if err == nil {
+ t.Fatal("Decode with large IFD entry: got nil error, want non-nil")
+ }
+}
+
+// benchmarkDecode benchmarks the decoding of an image.
+func benchmarkDecode(b *testing.B, filename string) {
+ b.StopTimer()
+ contents, err := ioutil.ReadFile(testdataDir + filename)
+ if err != nil {
+ b.Fatal(err)
+ }
+ r := &buffer{buf: contents}
+ b.StartTimer()
+ for i := 0; i < b.N; i++ {
+ _, err := Decode(r)
+ if err != nil {
+ b.Fatal("Decode:", err)
+ }
+ }
+}
+
+func BenchmarkDecodeCompressed(b *testing.B) { benchmarkDecode(b, "video-001.tiff") }
+func BenchmarkDecodeUncompressed(b *testing.B) { benchmarkDecode(b, "video-001-uncompressed.tiff") }
diff --git a/Godeps/_workspace/src/golang.org/x/image/tiff/writer_test.go b/Godeps/_workspace/src/golang.org/x/image/tiff/writer_test.go
new file mode 100644
index 000000000..c8fb7bf37
--- /dev/null
+++ b/Godeps/_workspace/src/golang.org/x/image/tiff/writer_test.go
@@ -0,0 +1,95 @@
+// Copyright 2012 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package tiff
+
+import (
+ "bytes"
+ "image"
+ "io/ioutil"
+ "os"
+ "testing"
+)
+
+var roundtripTests = []struct {
+ filename string
+ opts *Options
+}{
+ {"video-001.tiff", nil},
+ {"video-001-16bit.tiff", nil},
+ {"video-001-gray.tiff", nil},
+ {"video-001-gray-16bit.tiff", nil},
+ {"video-001-paletted.tiff", nil},
+ {"bw-packbits.tiff", nil},
+ {"video-001.tiff", &Options{Predictor: true}},
+ {"video-001.tiff", &Options{Compression: Deflate}},
+ {"video-001.tiff", &Options{Predictor: true, Compression: Deflate}},
+}
+
+func openImage(filename string) (image.Image, error) {
+ f, err := os.Open(testdataDir + filename)
+ if err != nil {
+ return nil, err
+ }
+ defer f.Close()
+ return Decode(f)
+}
+
+func TestRoundtrip(t *testing.T) {
+ for _, rt := range roundtripTests {
+ img, err := openImage(rt.filename)
+ if err != nil {
+ t.Fatal(err)
+ }
+ out := new(bytes.Buffer)
+ err = Encode(out, img, rt.opts)
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ img2, err := Decode(&buffer{buf: out.Bytes()})
+ if err != nil {
+ t.Fatal(err)
+ }
+ compare(t, img, img2)
+ }
+}
+
+// TestRoundtrip2 tests that encoding and decoding an image whose
+// origin is not (0, 0) gives the same thing.
+func TestRoundtrip2(t *testing.T) {
+ m0 := image.NewRGBA(image.Rect(3, 4, 9, 8))
+ for i := range m0.Pix {
+ m0.Pix[i] = byte(i)
+ }
+ out := new(bytes.Buffer)
+ if err := Encode(out, m0, nil); err != nil {
+ t.Fatal(err)
+ }
+ m1, err := Decode(&buffer{buf: out.Bytes()})
+ if err != nil {
+ t.Fatal(err)
+ }
+ compare(t, m0, m1)
+}
+
+func benchmarkEncode(b *testing.B, name string, pixelSize int) {
+ img, err := openImage(name)
+ if err != nil {
+ b.Fatal(err)
+ }
+ s := img.Bounds().Size()
+ b.SetBytes(int64(s.X * s.Y * pixelSize))
+ b.ResetTimer()
+ for i := 0; i < b.N; i++ {
+ Encode(ioutil.Discard, img, nil)
+ }
+}
+
+func BenchmarkEncode(b *testing.B) { benchmarkEncode(b, "video-001.tiff", 4) }
+func BenchmarkEncodePaletted(b *testing.B) { benchmarkEncode(b, "video-001-paletted.tiff", 1) }
+func BenchmarkEncodeGray(b *testing.B) { benchmarkEncode(b, "video-001-gray.tiff", 1) }
+func BenchmarkEncodeGray16(b *testing.B) { benchmarkEncode(b, "video-001-gray-16bit.tiff", 2) }
+func BenchmarkEncodeRGBA(b *testing.B) { benchmarkEncode(b, "video-001.tiff", 4) }
+func BenchmarkEncodeRGBA64(b *testing.B) { benchmarkEncode(b, "video-001-16bit.tiff", 8) }
diff --git a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/.travis.yml b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/.travis.yml
index 67467e140..1b5151f12 100644
--- a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/.travis.yml
+++ b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/.travis.yml
@@ -2,10 +2,15 @@ sudo: false
language: go
go:
- - 1.4.1
+ - 1.5.1
before_script:
- - FIXED=$(go fmt ./... | wc -l); if [ $FIXED -gt 0 ]; then echo "gofmt - $FIXED file(s) not formatted correctly, please run gofmt to fix this." && exit 1; fi
+ - go get -u github.com/golang/lint/golint
+
+after_script:
+ - test -z "$(gofmt -s -l -w . | tee /dev/stderr)"
+ - test -z "$(golint ./... | tee /dev/stderr)"
+ - go vet ./...
os:
- linux
diff --git a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/AUTHORS b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/AUTHORS
index 4e0e8284e..763b853c3 100644
--- a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/AUTHORS
+++ b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/AUTHORS
@@ -11,18 +11,22 @@
Adrien Bustany <adrien@bustany.org>
Caleb Spare <cespare@gmail.com>
Case Nelson <case@teammating.com>
-Chris Howey <howeyc@gmail.com> <chris@howey.me>
+Chris Howey <chris@howey.me> <howeyc@gmail.com>
Christoffer Buchholz <christoffer.buchholz@gmail.com>
+Daniel Wagner-Hall <dawagner@gmail.com>
Dave Cheney <dave@cheney.net>
+Evan Phoenix <evan@fallingsnow.net>
Francisco Souza <f@souza.cc>
Hari haran <hariharan.uno@gmail.com>
John C Barstow
Kelvin Fo <vmirage@gmail.com>
+Ken-ichirou MATSUZAWA <chamas@h4.dion.ne.jp>
Matt Layher <mdlayher@gmail.com>
Nathan Youngman <git@nathany.com>
Paul Hammond <paul@paulhammond.org>
Pieter Droogendijk <pieter@binky.org.uk>
Pursuit92 <JoshChase@techpursuit.net>
+Riku Voipio <riku.voipio@linaro.org>
Rob Figueiredo <robfig@gmail.com>
Soge Zhang <zhssoge@gmail.com>
Tilak Sharma <tilaks@google.com>
@@ -32,3 +36,4 @@ Yukang <moorekang@gmail.com>
bronze1man <bronze1man@gmail.com>
debrando <denis.brandolini@gmail.com>
henrikedwards <henrik.edwards@gmail.com>
+铁哥 <guotie.9@gmail.com>
diff --git a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/CHANGELOG.md b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/CHANGELOG.md
index ea9428a2a..4e6672702 100644
--- a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/CHANGELOG.md
+++ b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/CHANGELOG.md
@@ -1,5 +1,16 @@
# Changelog
+## v1.2.5 / 2015-10-17
+
+* inotify: use epoll_create1 for arm64 support (requires Linux 2.6.27 or later) [#100](https://github.com/go-fsnotify/fsnotify/pull/100) (thanks @suihkulokki)
+* inotify: fix path leaks [#73](https://github.com/go-fsnotify/fsnotify/pull/73) (thanks @chamaken)
+* kqueue: watch for rename events on subdirectories [#83](https://github.com/go-fsnotify/fsnotify/pull/83) (thanks @guotie)
+* kqueue: avoid infinite loops from symlinks cycles [#101](https://github.com/go-fsnotify/fsnotify/pull/101) (thanks @illicitonion)
+
+## v1.2.1 / 2015-10-14
+
+* kqueue: don't watch named pipes [#98](https://github.com/go-fsnotify/fsnotify/pull/98) (thanks @evanphx)
+
## v1.2.0 / 2015-02-08
* inotify: use epoll to wake up readEvents [#66](https://github.com/go-fsnotify/fsnotify/pull/66) (thanks @PieterD)
diff --git a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/NotUsed.xcworkspace b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/NotUsed.xcworkspace
deleted file mode 100644
index e69de29bb..000000000
--- a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/NotUsed.xcworkspace
+++ /dev/null
diff --git a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/README.md b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/README.md
index 7a0b24736..f2b432e96 100644
--- a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/README.md
+++ b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/README.md
@@ -1,6 +1,6 @@
# File system notifications for Go
-[![Coverage](http://gocover.io/_badge/github.com/go-fsnotify/fsnotify)](http://gocover.io/github.com/go-fsnotify/fsnotify) [![GoDoc](https://godoc.org/gopkg.in/fsnotify.v1?status.svg)](https://godoc.org/gopkg.in/fsnotify.v1)
+[![GoDoc](https://godoc.org/gopkg.in/fsnotify.v1?status.svg)](https://godoc.org/gopkg.in/fsnotify.v1) [![Coverage](http://gocover.io/_badge/github.com/go-fsnotify/fsnotify)](http://gocover.io/github.com/go-fsnotify/fsnotify)
Go 1.3+ required.
@@ -8,8 +8,8 @@ Cross platform: Windows, Linux, BSD and OS X.
|Adapter |OS |Status |
|----------|----------|----------|
-|inotify |Linux, Android\*|Supported [![Build Status](https://travis-ci.org/go-fsnotify/fsnotify.svg?branch=master)](https://travis-ci.org/go-fsnotify/fsnotify)|
-|kqueue |BSD, OS X, iOS\*|Supported [![Circle CI](https://circleci.com/gh/go-fsnotify/fsnotify.svg?style=svg)](https://circleci.com/gh/go-fsnotify/fsnotify)|
+|inotify |Linux 2.6.27 or later, Android\*|Supported [![Build Status](https://travis-ci.org/go-fsnotify/fsnotify.svg?branch=master)](https://travis-ci.org/go-fsnotify/fsnotify)|
+|kqueue |BSD, OS X, iOS\*|Supported [![Build Status](https://travis-ci.org/go-fsnotify/fsnotify.svg?branch=master)](https://travis-ci.org/go-fsnotify/fsnotify)|
|ReadDirectoryChangesW|Windows|Supported [![Build status](https://ci.appveyor.com/api/projects/status/ivwjubaih4r0udeh/branch/master?svg=true)](https://ci.appveyor.com/project/NathanYoungman/fsnotify/branch/master)|
|FSEvents |OS X |[Planned](https://github.com/go-fsnotify/fsnotify/issues/11)|
|FEN |Solaris 11 |[Planned](https://github.com/go-fsnotify/fsnotify/issues/12)|
@@ -55,5 +55,10 @@ Please refer to [CONTRIBUTING][] before opening an issue or pull request.
See [example_test.go](https://github.com/go-fsnotify/fsnotify/blob/master/example_test.go).
-
[contributing]: https://github.com/go-fsnotify/fsnotify/blob/master/CONTRIBUTING.md
+
+## Related Projects
+
+* [notify](https://github.com/rjeczalik/notify)
+* [fsevents](https://github.com/go-fsnotify/fsevents)
+
diff --git a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/circle.yml b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/circle.yml
deleted file mode 100644
index 204217fb0..000000000
--- a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/circle.yml
+++ /dev/null
@@ -1,26 +0,0 @@
-## OS X build (CircleCI iOS beta)
-
-# Pretend like it's an Xcode project, at least to get it running.
-machine:
- environment:
- XCODE_WORKSPACE: NotUsed.xcworkspace
- XCODE_SCHEME: NotUsed
- # This is where the go project is actually checked out to:
- CIRCLE_BUILD_DIR: $HOME/.go_project/src/github.com/go-fsnotify/fsnotify
-
-dependencies:
- pre:
- - brew upgrade go
-
-test:
- override:
- - go test ./...
-
-# Idealized future config, eventually with cross-platform build matrix :-)
-
-# machine:
-# go:
-# version: 1.4
-# os:
-# - osx
-# - linux
diff --git a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify.go b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify.go
index d7759ec8c..06f4bba88 100644
--- a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify.go
+++ b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify.go
@@ -23,6 +23,7 @@ type Watcher struct {
Events chan Event
Errors chan error
mu sync.Mutex // Map access
+ cv *sync.Cond // sync removing on rm_watch with IN_IGNORE
fd int
poller *fdPoller
watches map[string]*watch // Map of inotify watches (key: path)
@@ -54,6 +55,7 @@ func NewWatcher() (*Watcher, error) {
done: make(chan struct{}),
doneResp: make(chan struct{}),
}
+ w.cv = sync.NewCond(&w.mu)
go w.readEvents()
return w, nil
@@ -134,8 +136,10 @@ func (w *Watcher) Remove(name string) error {
}
// inotify_rm_watch will return EINVAL if the file has been deleted;
// the inotify will already have been removed.
- // That means we can safely delete it from our watches, whatever inotify_rm_watch does.
- delete(w.watches, name)
+ // watches and pathes are deleted in ignoreLinux() implicitly and asynchronously
+ // by calling inotify_rm_watch() below. e.g. readEvents() goroutine receives IN_IGNORE
+ // so that EINVAL means that the wd is being rm_watch()ed or its file removed
+ // by another thread and we have not received IN_IGNORE event.
success, errno := syscall.InotifyRmWatch(w.fd, watch.wd)
if success == -1 {
// TODO: Perhaps it's not helpful to return an error here in every case.
@@ -146,6 +150,14 @@ func (w *Watcher) Remove(name string) error {
// explicitly by inotify_rm_watch, implicitly when the file they are watching is deleted.
return errno
}
+
+ // wait until ignoreLinux() deleting maps
+ exists := true
+ for exists {
+ w.cv.Wait()
+ _, exists = w.watches[name]
+ }
+
return nil
}
@@ -249,7 +261,7 @@ func (w *Watcher) readEvents() {
event := newEvent(name, mask)
// Send the events that are not ignored on the events channel
- if !event.ignoreLinux(mask) {
+ if !event.ignoreLinux(w, raw.Wd, mask) {
select {
case w.Events <- event:
case <-w.done:
@@ -266,9 +278,15 @@ func (w *Watcher) readEvents() {
// Certain types of events can be "ignored" and not sent over the Events
// channel. Such as events marked ignore by the kernel, or MODIFY events
// against files that do not exist.
-func (e *Event) ignoreLinux(mask uint32) bool {
+func (e *Event) ignoreLinux(w *Watcher, wd int32, mask uint32) bool {
// Ignore anything the inotify API says to ignore
if mask&syscall.IN_IGNORED == syscall.IN_IGNORED {
+ w.mu.Lock()
+ defer w.mu.Unlock()
+ name := w.paths[int(wd)]
+ delete(w.paths, int(wd))
+ delete(w.watches, name)
+ w.cv.Broadcast()
return true
}
diff --git a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify_poller.go b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify_poller.go
index 3b4178404..23a5ca146 100644
--- a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify_poller.go
+++ b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify_poller.go
@@ -39,7 +39,7 @@ func newFdPoller(fd int) (*fdPoller, error) {
poller.fd = fd
// Create epoll fd
- poller.epfd, errno = syscall.EpollCreate(1)
+ poller.epfd, errno = syscall.EpollCreate1(0)
if poller.epfd == -1 {
return nil, errno
}
diff --git a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify_test.go b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify_test.go
index 035ee8f95..4b5c4b184 100644
--- a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify_test.go
+++ b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/inotify_test.go
@@ -7,6 +7,7 @@
package fsnotify
import (
+ "fmt"
"os"
"path/filepath"
"syscall"
@@ -281,12 +282,60 @@ func TestInotifyRemoveTwice(t *testing.T) {
}
err = w.Remove(testFile)
- if err != syscall.EINVAL {
- t.Fatalf("Expected EINVAL from Remove, got: %v", err)
+ if err == nil {
+ t.Fatalf("no error on removing invalid file")
}
+ s1 := fmt.Sprintf("%s", err)
err = w.Remove(testFile)
- if err == syscall.EINVAL {
- t.Fatalf("Got EINVAL again, watch was not removed")
+ if err == nil {
+ t.Fatalf("no error on removing invalid file")
+ }
+ s2 := fmt.Sprintf("%s", err)
+
+ if s1 != s2 {
+ t.Fatalf("receive different error - %s / %s", s1, s2)
+ }
+}
+
+func TestInotifyInnerMapLength(t *testing.T) {
+ testDir := tempMkdir(t)
+ defer os.RemoveAll(testDir)
+ testFile := filepath.Join(testDir, "testfile")
+
+ handle, err := os.Create(testFile)
+ if err != nil {
+ t.Fatalf("Create failed: %v", err)
+ }
+ handle.Close()
+
+ w, err := NewWatcher()
+ if err != nil {
+ t.Fatalf("Failed to create watcher: %v", err)
+ }
+ defer w.Close()
+
+ err = w.Add(testFile)
+ if err != nil {
+ t.Fatalf("Failed to add testFile: %v", err)
+ }
+ go func() {
+ for err := range w.Errors {
+ t.Fatalf("error received: %s", err)
+ }
+ }()
+
+ err = os.Remove(testFile)
+ if err != nil {
+ t.Fatalf("Failed to remove testFile: %v", err)
+ }
+ _ = <-w.Events // consume Remove event
+ <-time.After(50 * time.Millisecond) // wait IN_IGNORE propagated
+
+ if len(w.watches) != 0 {
+ t.Fatalf("Expected watches len is 0, but got: %d, %v", len(w.watches), w.watches)
+ }
+ if len(w.paths) != 0 {
+ t.Fatalf("Expected paths len is 0, but got: %d, %v", len(w.paths), w.paths)
}
}
diff --git a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/integration_test.go b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/integration_test.go
index 59169c6af..49e48ff1c 100644
--- a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/integration_test.go
+++ b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/integration_test.go
@@ -10,6 +10,7 @@ import (
"io/ioutil"
"os"
"os/exec"
+ "path"
"path/filepath"
"runtime"
"sync/atomic"
@@ -1065,6 +1066,53 @@ func TestFsnotifyFakeSymlink(t *testing.T) {
watcher.Close()
}
+func TestCyclicSymlink(t *testing.T) {
+ if runtime.GOOS == "windows" {
+ t.Skip("symlinks don't work on Windows.")
+ }
+
+ watcher := newWatcher(t)
+
+ testDir := tempMkdir(t)
+ defer os.RemoveAll(testDir)
+
+ link := path.Join(testDir, "link")
+ if err := os.Symlink(".", link); err != nil {
+ t.Fatalf("could not make symlink: %v", err)
+ }
+ addWatch(t, watcher, testDir)
+
+ var createEventsReceived counter
+ go func() {
+ for ev := range watcher.Events {
+ if ev.Op&Create == Create {
+ createEventsReceived.increment()
+ }
+ }
+ }()
+
+ if err := os.Remove(link); err != nil {
+ t.Fatalf("Error removing link: %v", err)
+ }
+
+ // It would be nice to be able to expect a delete event here, but kqueue has
+ // no way for us to get events on symlinks themselves, because opening them
+ // opens an fd to the file to which they point.
+
+ if err := ioutil.WriteFile(link, []byte("foo"), 0700); err != nil {
+ t.Fatalf("could not make symlink: %v", err)
+ }
+
+ // We expect this event to be received almost immediately, but let's wait 500 ms to be sure
+ time.Sleep(500 * time.Millisecond)
+
+ if got := createEventsReceived.value(); got == 0 {
+ t.Errorf("want at least 1 create event got %v", got)
+ }
+
+ watcher.Close()
+}
+
// TestConcurrentRemovalOfWatch tests that concurrent calls to RemoveWatch do not race.
// See https://codereview.appspot.com/103300045/
// go test -test.run=TestConcurrentRemovalOfWatch -test.cpu=1,1,1,1,1 -race
diff --git a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/kqueue.go b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/kqueue.go
index 265622d20..9662a50a8 100644
--- a/Godeps/_workspace/src/gopkg.in/fsnotify.v1/kqueue.go
+++ b/Godeps/_workspace/src/gopkg.in/fsnotify.v1/kqueue.go
@@ -94,7 +94,8 @@ func (w *Watcher) Add(name string) error {
w.mu.Lock()
w.externalWatches[name] = true
w.mu.Unlock()
- return w.addWatch(name, noteAllEvents)
+ _, err := w.addWatch(name, noteAllEvents)
+ return err
}
// Remove stops watching the the named file or directory (non-recursively).
@@ -153,7 +154,8 @@ var keventWaitTime = durationToTimespec(100 * time.Millisecond)
// addWatch adds name to the watched file set.
// The flags are interpreted as described in kevent(2).
-func (w *Watcher) addWatch(name string, flags uint32) error {
+// Returns the real path to the file which was added, if any, which may be different from the one passed in the case of symlinks.
+func (w *Watcher) addWatch(name string, flags uint32) (string, error) {
var isDir bool
// Make ./name and name equivalent
name = filepath.Clean(name)
@@ -161,7 +163,7 @@ func (w *Watcher) addWatch(name string, flags uint32) error {
w.mu.Lock()
if w.isClosed {
w.mu.Unlock()
- return errors.New("kevent instance already closed")
+ return "", errors.New("kevent instance already closed")
}
watchfd, alreadyWatching := w.watches[name]
// We already have a watch, but we can still override flags.
@@ -173,12 +175,17 @@ func (w *Watcher) addWatch(name string, flags uint32) error {
if !alreadyWatching {
fi, err := os.Lstat(name)
if err != nil {
- return err
+ return "", err
}
// Don't watch sockets.
if fi.Mode()&os.ModeSocket == os.ModeSocket {
- return nil
+ return "", nil
+ }
+
+ // Don't watch named pipes.
+ if fi.Mode()&os.ModeNamedPipe == os.ModeNamedPipe {
+ return "", nil
}
// Follow Symlinks
@@ -190,18 +197,26 @@ func (w *Watcher) addWatch(name string, flags uint32) error {
if fi.Mode()&os.ModeSymlink == os.ModeSymlink {
name, err = filepath.EvalSymlinks(name)
if err != nil {
- return nil
+ return "", nil
+ }
+
+ w.mu.Lock()
+ _, alreadyWatching = w.watches[name]
+ w.mu.Unlock()
+
+ if alreadyWatching {
+ return name, nil
}
fi, err = os.Lstat(name)
if err != nil {
- return nil
+ return "", nil
}
}
watchfd, err = syscall.Open(name, openMode, 0700)
if watchfd == -1 {
- return err
+ return "", err
}
isDir = fi.IsDir()
@@ -210,7 +225,7 @@ func (w *Watcher) addWatch(name string, flags uint32) error {
const registerAdd = syscall.EV_ADD | syscall.EV_CLEAR | syscall.EV_ENABLE
if err := register(w.kq, []int{watchfd}, registerAdd, flags); err != nil {
syscall.Close(watchfd)
- return err
+ return "", err
}
if !alreadyWatching {
@@ -224,6 +239,7 @@ func (w *Watcher) addWatch(name string, flags uint32) error {
// Watch the directory if it has not been watched before,
// or if it was watched before, but perhaps only a NOTE_DELETE (watchDirectoryFiles)
w.mu.Lock()
+
watchDir := (flags&syscall.NOTE_WRITE) == syscall.NOTE_WRITE &&
(!alreadyWatching || (w.dirFlags[name]&syscall.NOTE_WRITE) != syscall.NOTE_WRITE)
// Store flags so this watch can be updated later
@@ -232,11 +248,11 @@ func (w *Watcher) addWatch(name string, flags uint32) error {
if watchDir {
if err := w.watchDirectoryFiles(name); err != nil {
- return err
+ return "", err
}
}
}
- return nil
+ return name, nil
}
// readEvents reads from kqueue and converts the received kevents into
@@ -359,7 +375,8 @@ func (w *Watcher) watchDirectoryFiles(dirPath string) error {
for _, fileInfo := range files {
filePath := filepath.Join(dirPath, fileInfo.Name())
- if err := w.internalWatch(filePath, fileInfo); err != nil {
+ filePath, err = w.internalWatch(filePath, fileInfo)
+ if err != nil {
return err
}
@@ -394,7 +411,8 @@ func (w *Watcher) sendDirectoryChangeEvents(dirPath string) {
}
// like watchDirectoryFiles (but without doing another ReadDir)
- if err := w.internalWatch(filePath, fileInfo); err != nil {
+ filePath, err = w.internalWatch(filePath, fileInfo)
+ if err != nil {
return
}
@@ -404,7 +422,7 @@ func (w *Watcher) sendDirectoryChangeEvents(dirPath string) {
}
}
-func (w *Watcher) internalWatch(name string, fileInfo os.FileInfo) error {
+func (w *Watcher) internalWatch(name string, fileInfo os.FileInfo) (string, error) {
if fileInfo.IsDir() {
// mimic Linux providing delete events for subdirectories
// but preserve the flags used if currently watching subdirectory
@@ -412,7 +430,7 @@ func (w *Watcher) internalWatch(name string, fileInfo os.FileInfo) error {
flags := w.dirFlags[name]
w.mu.Unlock()
- flags |= syscall.NOTE_DELETE
+ flags |= syscall.NOTE_DELETE | syscall.NOTE_RENAME
return w.addWatch(name, flags)
}
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/.gitignore b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/.gitignore
index c2a6499b4..c2a6499b4 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/.gitignore
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/.gitignore
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/.travis.yml b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/.travis.yml
index 1b2427202..1b2427202 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/.travis.yml
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/LICENSE b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/LICENSE
index f9616483e..f9616483e 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/LICENSE
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/LICENSE
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/README.md b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/README.md
index 0954c808a..fbb4a01fc 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/README.md
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/README.md
@@ -1,13 +1,15 @@
-# Throttled [![build status](https://secure.travis-ci.org/throttled/throttled.png)](http://travis-ci.org/throttled/throttled) [![GoDoc](https://godoc.org/github.com/throttled/throttled?status.png)](http://godoc.org/github.com/throttled/throttled)
+# Throttled [![build status](https://secure.travis-ci.org/throttled/throttled.png)](http://travis-ci.org/throttled/throttled) [![GoDoc](https://godoc.org/gopkg.in/throttled/throttled.v1?status.png)](http://godoc.org/gopkg.in/throttled/throttled.v1)
Package throttled implements different throttling strategies for controlling
access to HTTP handlers.
-*As of July 27, 2015, the package is now located under its own GitHub organization, please adjust your imports to `github.com/throttled/throttled`.*
+*As of July 27, 2015, the package is now located under its own GitHub
+ organization and uses gopkg.in for versioning, please adjust your
+ imports to `gopkg.in/throttled/throttled.v1`.*
## Installation
-`go get github.com/throttled/throttled/...`
+`go get gopkg.in/throttled/throttled.v1/...`
## Interval
@@ -75,6 +77,6 @@ Finally, many examples are provided in the /examples sub-folder of the repositor
The [BSD 3-clause license][bsd]. Copyright (c) 2014 Martin Angers and Contributors.
-[doc]: http://godoc.org/github.com/throttled/throttled
+[doc]: http://godoc.org/gopkg.in/throttled/throttled.v1
[blog]: http://0value.com/throttled--guardian-of-the-web-server
[bsd]: http://opensource.org/licenses/BSD-3-Clause
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/common_test.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/common_test.go
index ddb57fb1c..ddb57fb1c 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/common_test.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/common_test.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/delayer.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/delayer.go
index e62ec9e86..e62ec9e86 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/delayer.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/delayer.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/delayer_test.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/delayer_test.go
index 822978e5d..822978e5d 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/delayer_test.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/delayer_test.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/doc.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/doc.go
index a83b0aca4..acf5213b0 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/doc.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/doc.go
@@ -3,7 +3,7 @@
//
// Installation
//
-// go get github.com/throttled/throttled/...
+// go get gopkg.in/throttled/throttled.v1/...
//
// Inverval
//
@@ -62,7 +62,7 @@
// Documentation
//
// The API documentation is available as usual on godoc.org:
-// http://godoc.org/github.com/throttled/throttled
+// http://godoc.org/gopkg.in/throttled/throttled.v1
//
// There is also a blog post explaining the package's usage on 0value.com:
// http://0value.com/throttled--guardian-of-the-web-server
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/examples/README.md b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/README.md
index 6b12dad20..6b12dad20 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/examples/README.md
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/README.md
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/examples/custom/main.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/custom/main.go
index 4a3fe119c..128e08b81 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/examples/custom/main.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/custom/main.go
@@ -9,7 +9,7 @@ import (
"sync"
"time"
- "github.com/throttled/throttled"
+ "github.com/mattermost/platform/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1"
)
var (
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/examples/interval-many/main.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/interval-many/main.go
index d0add9fb2..03fcfce80 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/examples/interval-many/main.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/interval-many/main.go
@@ -9,7 +9,7 @@ import (
"sync"
"time"
- "github.com/throttled/throttled"
+ "github.com/mattermost/platform/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1"
)
var (
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/examples/interval-vary/main.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/interval-vary/main.go
index 439d4ad8b..f84e1e41f 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/examples/interval-vary/main.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/interval-vary/main.go
@@ -9,7 +9,7 @@ import (
"sync"
"time"
- "github.com/throttled/throttled"
+ "github.com/mattermost/platform/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1"
)
var (
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/examples/interval-vary/siege-urls b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/interval-vary/siege-urls
index 9a2d0d312..9a2d0d312 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/examples/interval-vary/siege-urls
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/interval-vary/siege-urls
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/examples/interval/main.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/interval/main.go
index 7c6473346..f89067816 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/examples/interval/main.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/interval/main.go
@@ -9,7 +9,7 @@ import (
"sync"
"time"
- "github.com/throttled/throttled"
+ "github.com/mattermost/platform/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1"
)
var (
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/examples/memstats/main.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/memstats/main.go
index 719fea01b..823de9b25 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/examples/memstats/main.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/memstats/main.go
@@ -11,7 +11,7 @@ import (
"sync"
"time"
- "github.com/throttled/throttled"
+ "github.com/mattermost/platform/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1"
)
var (
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/examples/memstats/test-file b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/memstats/test-file
index c97c12f9b..c97c12f9b 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/examples/memstats/test-file
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/memstats/test-file
Binary files differ
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/examples/rate-limit/main.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/rate-limit/main.go
index b7b31529a..1e4c1cb8f 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/examples/rate-limit/main.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/examples/rate-limit/main.go
@@ -9,9 +9,9 @@ import (
"sync"
"time"
- "github.com/garyburd/redigo/redis"
- "github.com/throttled/throttled"
- "github.com/throttled/throttled/store"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/garyburd/redigo/redis"
+ "github.com/mattermost/platform/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1"
+ "github.com/mattermost/platform/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store"
)
var (
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/interval.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/interval.go
index 628a5593e..ab4d45251 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/interval.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/interval.go
@@ -5,7 +5,7 @@ import (
"sync"
"time"
- "github.com/golang/groupcache/lru"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/golang/groupcache/lru"
)
// Static check to ensure that the interval limiters implement the Limiter interface.
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/interval_test.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/interval_test.go
index bc584e134..bc584e134 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/interval_test.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/interval_test.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/memstats.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/memstats.go
index bd2765630..bd2765630 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/memstats.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/memstats.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/memstats_test.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/memstats_test.go
index 2b8faa721..2b8faa721 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/memstats_test.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/memstats_test.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/misc/pre-commit b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/misc/pre-commit
index 88b61bfde..88b61bfde 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/misc/pre-commit
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/misc/pre-commit
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/rate.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/rate.go
index d7a7de6d7..d7a7de6d7 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/rate.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/rate.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/rate_test.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/rate_test.go
index 67dea74b1..67dea74b1 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/rate_test.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/rate_test.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/store.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store.go
index 760fe2b69..760fe2b69 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/store.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/store/doc.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/doc.go
index adb4618d3..adb4618d3 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/store/doc.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/doc.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/store/mem.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/mem.go
index e220dfe81..74d48a73e 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/store/mem.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/mem.go
@@ -4,8 +4,8 @@ import (
"sync"
"time"
- "github.com/golang/groupcache/lru"
- "github.com/throttled/throttled"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/golang/groupcache/lru"
+ "github.com/mattermost/platform/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1"
)
// memStore implements an in-memory Store.
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/store/mem_test.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/mem_test.go
index e8ef8d0da..e8ef8d0da 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/store/mem_test.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/mem_test.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/store/redis.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/redis.go
index 6347eb6fc..44ef43122 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/store/redis.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/redis.go
@@ -3,8 +3,8 @@ package store
import (
"time"
- "github.com/garyburd/redigo/redis"
- "github.com/throttled/throttled"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/garyburd/redigo/redis"
+ "github.com/mattermost/platform/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1"
)
// redisStore implements a Redis-based store.
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/store/redis_test.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/redis_test.go
index a282d6d25..d7d1d1743 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/store/redis_test.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/store/redis_test.go
@@ -4,7 +4,7 @@ import (
"testing"
"time"
- "github.com/garyburd/redigo/redis"
+ "github.com/mattermost/platform/Godeps/_workspace/src/github.com/garyburd/redigo/redis"
)
func getPool() *redis.Pool {
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/throttler.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/throttler.go
index 06da13051..06da13051 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/throttler.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/throttler.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/varyby.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/varyby.go
index 3b2cdb011..3b2cdb011 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/varyby.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/varyby.go
diff --git a/Godeps/_workspace/src/github.com/throttled/throttled/varyby_test.go b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/varyby_test.go
index 91b7ae0ae..91b7ae0ae 100644
--- a/Godeps/_workspace/src/github.com/throttled/throttled/varyby_test.go
+++ b/Godeps/_workspace/src/gopkg.in/throttled/throttled.v1/varyby_test.go