vendor: delete

The vendor directory was added in CL 13968, as part of the Go 1.5
vendor experiment (golang.org/s/go15vendor), before the module mode
was in existence to achieve these properties.

The version of the rsc.io/pdf dependency can be determined from the
go.mod file, resulting in reproducible builds.

The content of the rsc.io/pdf dependency can be fetched from origin,
proxy.golang.org, or another proxy, resulting in available builds.

The checksum of the rsc.io/pdf dependency is written down in the
go.sum file, as well as in sum.golang.org, resulting in secure builds.

I am not aware of a reason for the vendor directory to exist in this
repository anymore, so delete it in order to have fewer files.

Change-Id: Ib97b8ff164f9f5e6565cf5b49fb794f3e4aab43c
Reviewed-on: https://go-review.googlesource.com/c/arch/+/222539
Reviewed-by: Bryan C. Mills <bcmills@google.com>
diff --git a/vendor/modules.txt b/vendor/modules.txt
deleted file mode 100644
index fac1149..0000000
--- a/vendor/modules.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-# rsc.io/pdf v0.1.1
-rsc.io/pdf
diff --git a/vendor/rsc.io/pdf/LICENSE b/vendor/rsc.io/pdf/LICENSE
deleted file mode 100644
index 6a66aea..0000000
--- a/vendor/rsc.io/pdf/LICENSE
+++ /dev/null
@@ -1,27 +0,0 @@
-Copyright (c) 2009 The Go Authors. All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
-   * Redistributions of source code must retain the above copyright
-notice, this list of conditions and the following disclaimer.
-   * Redistributions in binary form must reproduce the above
-copyright notice, this list of conditions and the following disclaimer
-in the documentation and/or other materials provided with the
-distribution.
-   * Neither the name of Google Inc. nor the names of its
-contributors may be used to endorse or promote products derived from
-this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/vendor/rsc.io/pdf/README.md b/vendor/rsc.io/pdf/README.md
deleted file mode 100644
index 902a7e1..0000000
--- a/vendor/rsc.io/pdf/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-go get rsc.io/pdf
-
-http://godoc.org/rsc.io/pdf
diff --git a/vendor/rsc.io/pdf/lex.go b/vendor/rsc.io/pdf/lex.go
deleted file mode 100644
index ee73fd9..0000000
--- a/vendor/rsc.io/pdf/lex.go
+++ /dev/null
@@ -1,529 +0,0 @@
-// Copyright 2014 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.
-
-// Reading of PDF tokens and objects from a raw byte stream.
-
-package pdf
-
-import (
-	"fmt"
-	"io"
-	"strconv"
-)
-
-// A token is a PDF token in the input stream, one of the following Go types:
-//
-//	bool, a PDF boolean
-//	int64, a PDF integer
-//	float64, a PDF real
-//	string, a PDF string literal
-//	keyword, a PDF keyword
-//	name, a PDF name without the leading slash
-//
-type token interface{}
-
-// A name is a PDF name, without the leading slash.
-type name string
-
-// A keyword is a PDF keyword.
-// Delimiter tokens used in higher-level syntax,
-// such as "<<", ">>", "[", "]", "{", "}", are also treated as keywords.
-type keyword string
-
-// A buffer holds buffered input bytes from the PDF file.
-type buffer struct {
-	r           io.Reader // source of data
-	buf         []byte    // buffered data
-	pos         int       // read index in buf
-	offset      int64     // offset at end of buf; aka offset of next read
-	tmp         []byte    // scratch space for accumulating token
-	unread      []token   // queue of read but then unread tokens
-	allowEOF    bool
-	allowObjptr bool
-	allowStream bool
-	eof         bool
-	key         []byte
-	useAES      bool
-	objptr      objptr
-}
-
-// newBuffer returns a new buffer reading from r at the given offset.
-func newBuffer(r io.Reader, offset int64) *buffer {
-	return &buffer{
-		r:           r,
-		offset:      offset,
-		buf:         make([]byte, 0, 4096),
-		allowObjptr: true,
-		allowStream: true,
-	}
-}
-
-func (b *buffer) seek(offset int64) {
-	b.offset = offset
-	b.buf = b.buf[:0]
-	b.pos = 0
-	b.unread = b.unread[:0]
-}
-
-func (b *buffer) readByte() byte {
-	if b.pos >= len(b.buf) {
-		b.reload()
-		if b.pos >= len(b.buf) {
-			return '\n'
-		}
-	}
-	c := b.buf[b.pos]
-	b.pos++
-	return c
-}
-
-func (b *buffer) errorf(format string, args ...interface{}) {
-	panic(fmt.Errorf(format, args...))
-}
-
-func (b *buffer) reload() bool {
-	n := cap(b.buf) - int(b.offset%int64(cap(b.buf)))
-	n, err := b.r.Read(b.buf[:n])
-	if n == 0 && err != nil {
-		b.buf = b.buf[:0]
-		b.pos = 0
-		if b.allowEOF && err == io.EOF {
-			b.eof = true
-			return false
-		}
-		b.errorf("malformed PDF: reading at offset %d: %v", b.offset, err)
-		return false
-	}
-	b.offset += int64(n)
-	b.buf = b.buf[:n]
-	b.pos = 0
-	return true
-}
-
-func (b *buffer) seekForward(offset int64) {
-	for b.offset < offset {
-		if !b.reload() {
-			return
-		}
-	}
-	b.pos = len(b.buf) - int(b.offset-offset)
-}
-
-func (b *buffer) readOffset() int64 {
-	return b.offset - int64(len(b.buf)) + int64(b.pos)
-}
-
-func (b *buffer) unreadByte() {
-	if b.pos > 0 {
-		b.pos--
-	}
-}
-
-func (b *buffer) unreadToken(t token) {
-	b.unread = append(b.unread, t)
-}
-
-func (b *buffer) readToken() token {
-	if n := len(b.unread); n > 0 {
-		t := b.unread[n-1]
-		b.unread = b.unread[:n-1]
-		return t
-	}
-
-	// Find first non-space, non-comment byte.
-	c := b.readByte()
-	for {
-		if isSpace(c) {
-			if b.eof {
-				return io.EOF
-			}
-			c = b.readByte()
-		} else if c == '%' {
-			for c != '\r' && c != '\n' {
-				c = b.readByte()
-			}
-		} else {
-			break
-		}
-	}
-
-	switch c {
-	case '<':
-		if b.readByte() == '<' {
-			return keyword("<<")
-		}
-		b.unreadByte()
-		return b.readHexString()
-
-	case '(':
-		return b.readLiteralString()
-
-	case '[', ']', '{', '}':
-		return keyword(string(c))
-
-	case '/':
-		return b.readName()
-
-	case '>':
-		if b.readByte() == '>' {
-			return keyword(">>")
-		}
-		b.unreadByte()
-		fallthrough
-
-	default:
-		if isDelim(c) {
-			b.errorf("unexpected delimiter %#q", rune(c))
-			return nil
-		}
-		b.unreadByte()
-		return b.readKeyword()
-	}
-}
-
-func (b *buffer) readHexString() token {
-	tmp := b.tmp[:0]
-	for {
-	Loop:
-		c := b.readByte()
-		if c == '>' {
-			break
-		}
-		if isSpace(c) {
-			goto Loop
-		}
-	Loop2:
-		c2 := b.readByte()
-		if isSpace(c2) {
-			goto Loop2
-		}
-		x := unhex(c)<<4 | unhex(c2)
-		if x < 0 {
-			b.errorf("malformed hex string %c %c %s", c, c2, b.buf[b.pos:])
-			break
-		}
-		tmp = append(tmp, byte(x))
-	}
-	b.tmp = tmp
-	return string(tmp)
-}
-
-func unhex(b byte) int {
-	switch {
-	case '0' <= b && b <= '9':
-		return int(b) - '0'
-	case 'a' <= b && b <= 'f':
-		return int(b) - 'a' + 10
-	case 'A' <= b && b <= 'F':
-		return int(b) - 'A' + 10
-	}
-	return -1
-}
-
-func (b *buffer) readLiteralString() token {
-	tmp := b.tmp[:0]
-	depth := 1
-Loop:
-	for {
-		c := b.readByte()
-		switch c {
-		default:
-			tmp = append(tmp, c)
-		case '(':
-			depth++
-			tmp = append(tmp, c)
-		case ')':
-			if depth--; depth == 0 {
-				break Loop
-			}
-			tmp = append(tmp, c)
-		case '\\':
-			switch c = b.readByte(); c {
-			default:
-				b.errorf("invalid escape sequence \\%c", c)
-				tmp = append(tmp, '\\', c)
-			case 'n':
-				tmp = append(tmp, '\n')
-			case 'r':
-				tmp = append(tmp, '\r')
-			case 'b':
-				tmp = append(tmp, '\b')
-			case 't':
-				tmp = append(tmp, '\t')
-			case 'f':
-				tmp = append(tmp, '\f')
-			case '(', ')', '\\':
-				tmp = append(tmp, c)
-			case '\r':
-				if b.readByte() != '\n' {
-					b.unreadByte()
-				}
-				fallthrough
-			case '\n':
-				// no append
-			case '0', '1', '2', '3', '4', '5', '6', '7':
-				x := int(c - '0')
-				for i := 0; i < 2; i++ {
-					c = b.readByte()
-					if c < '0' || c > '7' {
-						b.unreadByte()
-						break
-					}
-					x = x*8 + int(c-'0')
-				}
-				if x > 255 {
-					b.errorf("invalid octal escape \\%03o", x)
-				}
-				tmp = append(tmp, byte(x))
-			}
-		}
-	}
-	b.tmp = tmp
-	return string(tmp)
-}
-
-func (b *buffer) readName() token {
-	tmp := b.tmp[:0]
-	for {
-		c := b.readByte()
-		if isDelim(c) || isSpace(c) {
-			b.unreadByte()
-			break
-		}
-		if c == '#' {
-			x := unhex(b.readByte())<<4 | unhex(b.readByte())
-			if x < 0 {
-				b.errorf("malformed name")
-			}
-			tmp = append(tmp, byte(x))
-			continue
-		}
-		tmp = append(tmp, c)
-	}
-	b.tmp = tmp
-	return name(string(tmp))
-}
-
-func (b *buffer) readKeyword() token {
-	tmp := b.tmp[:0]
-	for {
-		c := b.readByte()
-		if isDelim(c) || isSpace(c) {
-			b.unreadByte()
-			break
-		}
-		tmp = append(tmp, c)
-	}
-	b.tmp = tmp
-	s := string(tmp)
-	switch {
-	case s == "true":
-		return true
-	case s == "false":
-		return false
-	case isInteger(s):
-		x, err := strconv.ParseInt(s, 10, 64)
-		if err != nil {
-			b.errorf("invalid integer %s", s)
-		}
-		return x
-	case isReal(s):
-		x, err := strconv.ParseFloat(s, 64)
-		if err != nil {
-			b.errorf("invalid real %s", s)
-		}
-		return x
-	}
-	return keyword(string(tmp))
-}
-
-func isInteger(s string) bool {
-	if len(s) > 0 && (s[0] == '+' || s[0] == '-') {
-		s = s[1:]
-	}
-	if len(s) == 0 {
-		return false
-	}
-	for _, c := range s {
-		if c < '0' || '9' < c {
-			return false
-		}
-	}
-	return true
-}
-
-func isReal(s string) bool {
-	if len(s) > 0 && (s[0] == '+' || s[0] == '-') {
-		s = s[1:]
-	}
-	if len(s) == 0 {
-		return false
-	}
-	ndot := 0
-	for _, c := range s {
-		if c == '.' {
-			ndot++
-			continue
-		}
-		if c < '0' || '9' < c {
-			return false
-		}
-	}
-	return ndot == 1
-}
-
-// An object is a PDF syntax object, one of the following Go types:
-//
-//	bool, a PDF boolean
-//	int64, a PDF integer
-//	float64, a PDF real
-//	string, a PDF string literal
-//	name, a PDF name without the leading slash
-//	dict, a PDF dictionary
-//	array, a PDF array
-//	stream, a PDF stream
-//	objptr, a PDF object reference
-//	objdef, a PDF object definition
-//
-// An object may also be nil, to represent the PDF null.
-type object interface{}
-
-type dict map[name]object
-
-type array []object
-
-type stream struct {
-	hdr    dict
-	ptr    objptr
-	offset int64
-}
-
-type objptr struct {
-	id  uint32
-	gen uint16
-}
-
-type objdef struct {
-	ptr objptr
-	obj object
-}
-
-func (b *buffer) readObject() object {
-	tok := b.readToken()
-	if kw, ok := tok.(keyword); ok {
-		switch kw {
-		case "null":
-			return nil
-		case "<<":
-			return b.readDict()
-		case "[":
-			return b.readArray()
-		}
-		b.errorf("unexpected keyword %q parsing object", kw)
-		return nil
-	}
-
-	if str, ok := tok.(string); ok && b.key != nil && b.objptr.id != 0 {
-		tok = decryptString(b.key, b.useAES, b.objptr, str)
-	}
-
-	if !b.allowObjptr {
-		return tok
-	}
-
-	if t1, ok := tok.(int64); ok && int64(uint32(t1)) == t1 {
-		tok2 := b.readToken()
-		if t2, ok := tok2.(int64); ok && int64(uint16(t2)) == t2 {
-			tok3 := b.readToken()
-			switch tok3 {
-			case keyword("R"):
-				return objptr{uint32(t1), uint16(t2)}
-			case keyword("obj"):
-				old := b.objptr
-				b.objptr = objptr{uint32(t1), uint16(t2)}
-				obj := b.readObject()
-				if _, ok := obj.(stream); !ok {
-					tok4 := b.readToken()
-					if tok4 != keyword("endobj") {
-						b.errorf("missing endobj after indirect object definition")
-						b.unreadToken(tok4)
-					}
-				}
-				b.objptr = old
-				return objdef{objptr{uint32(t1), uint16(t2)}, obj}
-			}
-			b.unreadToken(tok3)
-		}
-		b.unreadToken(tok2)
-	}
-	return tok
-}
-
-func (b *buffer) readArray() object {
-	var x array
-	for {
-		tok := b.readToken()
-		if tok == nil || tok == keyword("]") {
-			break
-		}
-		b.unreadToken(tok)
-		x = append(x, b.readObject())
-	}
-	return x
-}
-
-func (b *buffer) readDict() object {
-	x := make(dict)
-	for {
-		tok := b.readToken()
-		if tok == nil || tok == keyword(">>") {
-			break
-		}
-		n, ok := tok.(name)
-		if !ok {
-			b.errorf("unexpected non-name key %T(%v) parsing dictionary", tok, tok)
-			continue
-		}
-		x[n] = b.readObject()
-	}
-
-	if !b.allowStream {
-		return x
-	}
-
-	tok := b.readToken()
-	if tok != keyword("stream") {
-		b.unreadToken(tok)
-		return x
-	}
-
-	switch b.readByte() {
-	case '\r':
-		if b.readByte() != '\n' {
-			b.unreadByte()
-		}
-	case '\n':
-		// ok
-	default:
-		b.errorf("stream keyword not followed by newline")
-	}
-
-	return stream{x, b.objptr, b.readOffset()}
-}
-
-func isSpace(b byte) bool {
-	switch b {
-	case '\x00', '\t', '\n', '\f', '\r', ' ':
-		return true
-	}
-	return false
-}
-
-func isDelim(b byte) bool {
-	switch b {
-	case '<', '>', '(', ')', '[', ']', '{', '}', '/', '%':
-		return true
-	}
-	return false
-}
diff --git a/vendor/rsc.io/pdf/name.go b/vendor/rsc.io/pdf/name.go
deleted file mode 100644
index 3825784..0000000
--- a/vendor/rsc.io/pdf/name.go
+++ /dev/null
@@ -1,4286 +0,0 @@
-// Derived from http://www.jdawiseman.com/papers/trivia/character-entities.html
-
-package pdf
-
-var nameToRune = map[string]rune{
-	"nbspace":                        0x00A0,
-	"nonbreakingspace":               0x00A0,
-	"exclamdown":                     0x00A1,
-	"cent":                           0x00A2,
-	"sterling":                       0x00A3,
-	"currency":                       0x00A4,
-	"yen":                            0x00A5,
-	"brokenbar":                      0x00A6,
-	"section":                        0x00A7,
-	"dieresis":                       0x00A8,
-	"copyright":                      0x00A9,
-	"ordfeminine":                    0x00AA,
-	"guillemotleft":                  0x00AB,
-	"logicalnot":                     0x00AC,
-	"sfthyphen":                      0x00AD,
-	"softhyphen":                     0x00AD,
-	"registered":                     0x00AE,
-	"macron":                         0x00AF,
-	"overscore":                      0x00AF,
-	"degree":                         0x00B0,
-	"plusminus":                      0x00B1,
-	"twosuperior":                    0x00B2,
-	"threesuperior":                  0x00B3,
-	"acute":                          0x00B4,
-	"mu":                             0x00B5,
-	"mu1":                            0x00B5,
-	"paragraph":                      0x00B6,
-	"middot":                         0x00B7,
-	"periodcentered":                 0x00B7,
-	"cedilla":                        0x00B8,
-	"onesuperior":                    0x00B9,
-	"ordmasculine":                   0x00BA,
-	"guillemotright":                 0x00BB,
-	"onequarter":                     0x00BC,
-	"onehalf":                        0x00BD,
-	"threequarters":                  0x00BE,
-	"questiondown":                   0x00BF,
-	"Agrave":                         0x00C0,
-	"Aacute":                         0x00C1,
-	"Acircumflex":                    0x00C2,
-	"Atilde":                         0x00C3,
-	"Adieresis":                      0x00C4,
-	"Aring":                          0x00C5,
-	"AE":                             0x00C6,
-	"Ccedilla":                       0x00C7,
-	"Egrave":                         0x00C8,
-	"Eacute":                         0x00C9,
-	"Ecircumflex":                    0x00CA,
-	"Edieresis":                      0x00CB,
-	"Igrave":                         0x00CC,
-	"Iacute":                         0x00CD,
-	"Icircumflex":                    0x00CE,
-	"Idieresis":                      0x00CF,
-	"Eth":                            0x00D0,
-	"Ntilde":                         0x00D1,
-	"Ograve":                         0x00D2,
-	"Oacute":                         0x00D3,
-	"Ocircumflex":                    0x00D4,
-	"Otilde":                         0x00D5,
-	"Odieresis":                      0x00D6,
-	"multiply":                       0x00D7,
-	"Oslash":                         0x00D8,
-	"Ugrave":                         0x00D9,
-	"Uacute":                         0x00DA,
-	"Ucircumflex":                    0x00DB,
-	"Udieresis":                      0x00DC,
-	"Yacute":                         0x00DD,
-	"Thorn":                          0x00DE,
-	"germandbls":                     0x00DF,
-	"agrave":                         0x00E0,
-	"aacute":                         0x00E1,
-	"acircumflex":                    0x00E2,
-	"atilde":                         0x00E3,
-	"adieresis":                      0x00E4,
-	"aring":                          0x00E5,
-	"ae":                             0x00E6,
-	"ccedilla":                       0x00E7,
-	"egrave":                         0x00E8,
-	"eacute":                         0x00E9,
-	"ecircumflex":                    0x00EA,
-	"edieresis":                      0x00EB,
-	"igrave":                         0x00EC,
-	"iacute":                         0x00ED,
-	"icircumflex":                    0x00EE,
-	"idieresis":                      0x00EF,
-	"eth":                            0x00F0,
-	"ntilde":                         0x00F1,
-	"ograve":                         0x00F2,
-	"oacute":                         0x00F3,
-	"ocircumflex":                    0x00F4,
-	"otilde":                         0x00F5,
-	"odieresis":                      0x00F6,
-	"divide":                         0x00F7,
-	"oslash":                         0x00F8,
-	"ugrave":                         0x00F9,
-	"uacute":                         0x00FA,
-	"ucircumflex":                    0x00FB,
-	"udieresis":                      0x00FC,
-	"yacute":                         0x00FD,
-	"thorn":                          0x00FE,
-	"ydieresis":                      0x00FF,
-	"florin":                         0x0192,
-	"Alpha":                          0x0391,
-	"Beta":                           0x0392,
-	"Gamma":                          0x0393,
-	"Deltagreek":                     0x0394,
-	"Epsilon":                        0x0395,
-	"Zeta":                           0x0396,
-	"Eta":                            0x0397,
-	"Theta":                          0x0398,
-	"Iota":                           0x0399,
-	"Kappa":                          0x039A,
-	"Lambda":                         0x039B,
-	"Mu":                             0x039C,
-	"Nu":                             0x039D,
-	"Xi":                             0x039E,
-	"Omicron":                        0x039F,
-	"Pi":                             0x03A0,
-	"Rho":                            0x03A1,
-	"Sigma":                          0x03A3,
-	"Tau":                            0x03A4,
-	"Upsilon":                        0x03A5,
-	"Phi":                            0x03A6,
-	"Chi":                            0x03A7,
-	"Psi":                            0x03A8,
-	"Omegagreek":                     0x03A9,
-	"alpha":                          0x03B1,
-	"beta":                           0x03B2,
-	"gamma":                          0x03B3,
-	"delta":                          0x03B4,
-	"epsilon":                        0x03B5,
-	"zeta":                           0x03B6,
-	"eta":                            0x03B7,
-	"theta":                          0x03B8,
-	"iota":                           0x03B9,
-	"kappa":                          0x03BA,
-	"lambda":                         0x03BB,
-	"mugreek":                        0x03BC,
-	"nu":                             0x03BD,
-	"xi":                             0x03BE,
-	"omicron":                        0x03BF,
-	"pi":                             0x03C0,
-	"rho":                            0x03C1,
-	"sigma1":                         0x03C2,
-	"sigmafinal":                     0x03C2,
-	"sigma":                          0x03C3,
-	"tau":                            0x03C4,
-	"upsilon":                        0x03C5,
-	"phi":                            0x03C6,
-	"chi":                            0x03C7,
-	"psi":                            0x03C8,
-	"omega":                          0x03C9,
-	"theta1":                         0x03D1,
-	"thetasymbolgreek":               0x03D1,
-	"Upsilon1":                       0x03D2,
-	"Upsilonhooksymbol":              0x03D2,
-	"omega1":                         0x03D6,
-	"pisymbolgreek":                  0x03D6,
-	"bullet":                         0x2022,
-	"ellipsis":                       0x2026,
-	"minute":                         0x2032,
-	"second":                         0x2033,
-	"overline":                       0x203E,
-	"fraction":                       0x2044,
-	"weierstrass":                    0x2118,
-	"Ifraktur":                       0x2111,
-	"Rfraktur":                       0x211C,
-	"trademark":                      0x2122,
-	"aleph":                          0x2135,
-	"arrowleft":                      0x2190,
-	"arrowup":                        0x2191,
-	"arrowright":                     0x2192,
-	"arrowdown":                      0x2193,
-	"arrowboth":                      0x2194,
-	"carriagereturn":                 0x21B5,
-	"arrowdblleft":                   0x21D0,
-	"arrowleftdbl":                   0x21D0,
-	"arrowdblup":                     0x21D1,
-	"arrowdblright":                  0x21D2,
-	"dblarrowright":                  0x21D2,
-	"arrowdbldown":                   0x21D3,
-	"arrowdblboth":                   0x21D4,
-	"dblarrowleft":                   0x21D4,
-	"forall":                         0x2200,
-	"universal":                      0x2200,
-	"partialdiff":                    0x2202,
-	"existential":                    0x2203,
-	"thereexists":                    0x2203,
-	"emptyset":                       0x2205,
-	"gradient":                       0x2207,
-	"nabla":                          0x2207,
-	"element":                        0x2208,
-	"notelement":                     0x2209,
-	"notelementof":                   0x2209,
-	"suchthat":                       0x220B,
-	"product":                        0x220F,
-	"summation":                      0x2211,
-	"minus":                          0x2212,
-	"asteriskmath":                   0x2217,
-	"radical":                        0x221A,
-	"proportional":                   0x221D,
-	"infinity":                       0x221E,
-	"angle":                          0x2220,
-	"logicaland":                     0x2227,
-	"logicalor":                      0x2228,
-	"intersection":                   0x2229,
-	"union":                          0x222A,
-	"integral":                       0x222B,
-	"therefore":                      0x2234,
-	"similar":                        0x223C,
-	"tildeoperator":                  0x223C,
-	"approximatelyequal":             0x2245,
-	"congruent":                      0x2245,
-	"approxequal":                    0x2248,
-	"notequal":                       0x2260,
-	"equivalence":                    0x2261,
-	"lessequal":                      0x2264,
-	"greaterequal":                   0x2265,
-	"propersubset":                   0x2282,
-	"subset":                         0x2282,
-	"propersuperset":                 0x2283,
-	"superset":                       0x2283,
-	"notsubset":                      0x2284,
-	"reflexsubset":                   0x2286,
-	"subsetorequal":                  0x2286,
-	"reflexsuperset":                 0x2287,
-	"supersetorequal":                0x2287,
-	"circleplus":                     0x2295,
-	"pluscircle":                     0x2295,
-	"circlemultiply":                 0x2297,
-	"timescircle":                    0x2297,
-	"perpendicular":                  0x22A5,
-	"dotmath":                        0x22C5,
-	"angleleft":                      0x2329,
-	"angleright":                     0x232A,
-	"lozenge":                        0x25CA,
-	"spade":                          0x2660,
-	"spadesuitblack":                 0x2660,
-	"club":                           0x2663,
-	"clubsuitblack":                  0x2663,
-	"heart":                          0x2665,
-	"heartsuitblack":                 0x2665,
-	"diamond":                        0x2666,
-	"quotedbl":                       0x0022,
-	"ampersand":                      0x0026,
-	"less":                           0x003C,
-	"greater":                        0x003E,
-	"OE":                             0x0152,
-	"oe":                             0x0153,
-	"Scaron":                         0x0160,
-	"scaron":                         0x0161,
-	"Ydieresis":                      0x0178,
-	"circumflex":                     0x02C6,
-	"ilde":                           0x02DC,
-	"tilde":                          0x02DC,
-	"enspace":                        0x2002,
-	"afii61664":                      0x200C,
-	"zerowidthnonjoiner":             0x200C,
-	"afii301":                        0x200D,
-	"afii299":                        0x200E,
-	"afii300":                        0x200F,
-	"endash":                         0x2013,
-	"emdash":                         0x2014,
-	"quoteleft":                      0x2018,
-	"quoteright":                     0x2019,
-	"quotesinglbase":                 0x201A,
-	"quotedblleft":                   0x201C,
-	"quotedblright":                  0x201D,
-	"quotedblbase":                   0x201E,
-	"dagger":                         0x2020,
-	"daggerdbl":                      0x2021,
-	"perthousand":                    0x2030,
-	"guilsinglleft":                  0x2039,
-	"guilsinglright":                 0x203A,
-	"Euro":                           0x20AC,
-	"controlSTX":                     0x0001,
-	"controlSOT":                     0x0002,
-	"controlETX":                     0x0003,
-	"controlEOT":                     0x0004,
-	"controlENQ":                     0x0005,
-	"controlACK":                     0x0006,
-	"controlBEL":                     0x0007,
-	"controlBS":                      0x0008,
-	"controlHT":                      0x0009,
-	"controlLF":                      0x000A,
-	"controlVT":                      0x000B,
-	"controlFF":                      0x000C,
-	"controlCR":                      0x000D,
-	"controlSO":                      0x000E,
-	"controlSI":                      0x000F,
-	"controlDLE":                     0x0010,
-	"controlDC1":                     0x0011,
-	"controlDC2":                     0x0012,
-	"controlDC3":                     0x0013,
-	"controlDC4":                     0x0014,
-	"controlNAK":                     0x0015,
-	"controlSYN":                     0x0016,
-	"controlETB":                     0x0017,
-	"controlCAN":                     0x0018,
-	"controlEM":                      0x0019,
-	"controlSUB":                     0x001A,
-	"controlESC":                     0x001B,
-	"controlFS":                      0x001C,
-	"controlGS":                      0x001D,
-	"controlRS":                      0x001E,
-	"controlUS":                      0x001F,
-	"space":                          0x0020,
-	"spacehackarabic":                0x0020,
-	"exclam":                         0x0021,
-	"numbersign":                     0x0023,
-	"dollar":                         0x0024,
-	"percent":                        0x0025,
-	"quotesingle":                    0x0027,
-	"parenleft":                      0x0028,
-	"parenright":                     0x0029,
-	"asterisk":                       0x002A,
-	"plus":                           0x002B,
-	"comma":                          0x002C,
-	"hyphen":                         0x002D,
-	"period":                         0x002E,
-	"slash":                          0x002F,
-	"zero":                           0x0030,
-	"one":                            0x0031,
-	"two":                            0x0032,
-	"three":                          0x0033,
-	"four":                           0x0034,
-	"five":                           0x0035,
-	"six":                            0x0036,
-	"seven":                          0x0037,
-	"eight":                          0x0038,
-	"nine":                           0x0039,
-	"colon":                          0x003A,
-	"semicolon":                      0x003B,
-	"equal":                          0x003D,
-	"question":                       0x003F,
-	"at":                             0x0040,
-	"A":                              0x0041,
-	"B":                              0x0042,
-	"C":                              0x0043,
-	"D":                              0x0044,
-	"E":                              0x0045,
-	"F":                              0x0046,
-	"G":                              0x0047,
-	"H":                              0x0048,
-	"I":                              0x0049,
-	"J":                              0x004A,
-	"K":                              0x004B,
-	"L":                              0x004C,
-	"M":                              0x004D,
-	"N":                              0x004E,
-	"O":                              0x004F,
-	"P":                              0x0050,
-	"Q":                              0x0051,
-	"R":                              0x0052,
-	"S":                              0x0053,
-	"T":                              0x0054,
-	"U":                              0x0055,
-	"V":                              0x0056,
-	"W":                              0x0057,
-	"X":                              0x0058,
-	"Y":                              0x0059,
-	"Z":                              0x005A,
-	"bracketleft":                    0x005B,
-	"backslash":                      0x005C,
-	"bracketright":                   0x005D,
-	"asciicircum":                    0x005E,
-	"underscore":                     0x005F,
-	"grave":                          0x0060,
-	"a":                              0x0061,
-	"b":                              0x0062,
-	"c":                              0x0063,
-	"d":                              0x0064,
-	"e":                              0x0065,
-	"f":                              0x0066,
-	"g":                              0x0067,
-	"h":                              0x0068,
-	"i":                              0x0069,
-	"j":                              0x006A,
-	"k":                              0x006B,
-	"l":                              0x006C,
-	"m":                              0x006D,
-	"n":                              0x006E,
-	"o":                              0x006F,
-	"p":                              0x0070,
-	"q":                              0x0071,
-	"r":                              0x0072,
-	"s":                              0x0073,
-	"t":                              0x0074,
-	"u":                              0x0075,
-	"v":                              0x0076,
-	"w":                              0x0077,
-	"x":                              0x0078,
-	"y":                              0x0079,
-	"z":                              0x007A,
-	"braceleft":                      0x007B,
-	"bar":                            0x007C,
-	"verticalbar":                    0x007C,
-	"braceright":                     0x007D,
-	"asciitilde":                     0x007E,
-	"controlDEL":                     0x007F,
-	"Amacron":                        0x0100,
-	"amacron":                        0x0101,
-	"Abreve":                         0x0102,
-	"abreve":                         0x0103,
-	"Aogonek":                        0x0104,
-	"aogonek":                        0x0105,
-	"Cacute":                         0x0106,
-	"cacute":                         0x0107,
-	"Ccircumflex":                    0x0108,
-	"ccircumflex":                    0x0109,
-	"Cdot":                           0x010A,
-	"Cdotaccent":                     0x010A,
-	"cdot":                           0x010B,
-	"cdotaccent":                     0x010B,
-	"Ccaron":                         0x010C,
-	"ccaron":                         0x010D,
-	"Dcaron":                         0x010E,
-	"dcaron":                         0x010F,
-	"Dcroat":                         0x0110,
-	"Dslash":                         0x0110,
-	"dcroat":                         0x0111,
-	"dmacron":                        0x0111,
-	"Emacron":                        0x0112,
-	"emacron":                        0x0113,
-	"Ebreve":                         0x0114,
-	"ebreve":                         0x0115,
-	"Edot":                           0x0116,
-	"Edotaccent":                     0x0116,
-	"edot":                           0x0117,
-	"edotaccent":                     0x0117,
-	"Eogonek":                        0x0118,
-	"eogonek":                        0x0119,
-	"Ecaron":                         0x011A,
-	"ecaron":                         0x011B,
-	"Gcircumflex":                    0x011C,
-	"gcircumflex":                    0x011D,
-	"Gbreve":                         0x011E,
-	"gbreve":                         0x011F,
-	"Gdot":                           0x0120,
-	"Gdotaccent":                     0x0120,
-	"gdot":                           0x0121,
-	"gdotaccent":                     0x0121,
-	"Gcedilla":                       0x0122,
-	"Gcommaaccent":                   0x0122,
-	"gcedilla":                       0x0123,
-	"gcommaaccent":                   0x0123,
-	"Hcircumflex":                    0x0124,
-	"hcircumflex":                    0x0125,
-	"Hbar":                           0x0126,
-	"hbar":                           0x0127,
-	"Itilde":                         0x0128,
-	"itilde":                         0x0129,
-	"Imacron":                        0x012A,
-	"imacron":                        0x012B,
-	"Ibreve":                         0x012C,
-	"ibreve":                         0x012D,
-	"Iogonek":                        0x012E,
-	"iogonek":                        0x012F,
-	"Idot":                           0x0130,
-	"Idotaccent":                     0x0130,
-	"dotlessi":                       0x0131,
-	"IJ":                             0x0132,
-	"ij":                             0x0133,
-	"Jcircumflex":                    0x0134,
-	"jcircumflex":                    0x0135,
-	"Kcedilla":                       0x0136,
-	"Kcommaaccent":                   0x0136,
-	"kcedilla":                       0x0137,
-	"kcommaaccent":                   0x0137,
-	"kgreenlandic":                   0x0138,
-	"Lacute":                         0x0139,
-	"lacute":                         0x013A,
-	"Lcedilla":                       0x013B,
-	"Lcommaaccent":                   0x013B,
-	"lcedilla":                       0x013C,
-	"lcommaaccent":                   0x013C,
-	"Lcaron":                         0x013D,
-	"lcaron":                         0x013E,
-	"Ldot":                           0x013F,
-	"Ldotaccent":                     0x013F,
-	"ldot":                           0x0140,
-	"ldotaccent":                     0x0140,
-	"Lslash":                         0x0141,
-	"lslash":                         0x0142,
-	"Nacute":                         0x0143,
-	"nacute":                         0x0144,
-	"Ncedilla":                       0x0145,
-	"Ncommaaccent":                   0x0145,
-	"ncedilla":                       0x0146,
-	"ncommaaccent":                   0x0146,
-	"Ncaron":                         0x0147,
-	"ncaron":                         0x0148,
-	"napostrophe":                    0x0149,
-	"quoterightn":                    0x0149,
-	"Eng":                            0x014A,
-	"eng":                            0x014B,
-	"Omacron":                        0x014C,
-	"omacron":                        0x014D,
-	"Obreve":                         0x014E,
-	"obreve":                         0x014F,
-	"Odblacute":                      0x0150,
-	"Ohungarumlaut":                  0x0150,
-	"odblacute":                      0x0151,
-	"ohungarumlaut":                  0x0151,
-	"Racute":                         0x0154,
-	"racute":                         0x0155,
-	"Rcedilla":                       0x0156,
-	"Rcommaaccent":                   0x0156,
-	"rcedilla":                       0x0157,
-	"rcommaaccent":                   0x0157,
-	"Rcaron":                         0x0158,
-	"rcaron":                         0x0159,
-	"Sacute":                         0x015A,
-	"sacute":                         0x015B,
-	"Scircumflex":                    0x015C,
-	"scircumflex":                    0x015D,
-	"Scedilla":                       0x015E,
-	"scedilla":                       0x015F,
-	"Tcedilla":                       0x0162,
-	"Tcommaaccent":                   0x0162,
-	"tcedilla":                       0x0163,
-	"tcommaaccent":                   0x0163,
-	"Tcaron":                         0x0164,
-	"tcaron":                         0x0165,
-	"Tbar":                           0x0166,
-	"tbar":                           0x0167,
-	"Utilde":                         0x0168,
-	"utilde":                         0x0169,
-	"Umacron":                        0x016A,
-	"umacron":                        0x016B,
-	"Ubreve":                         0x016C,
-	"ubreve":                         0x016D,
-	"Uring":                          0x016E,
-	"uring":                          0x016F,
-	"Udblacute":                      0x0170,
-	"Uhungarumlaut":                  0x0170,
-	"udblacute":                      0x0171,
-	"uhungarumlaut":                  0x0171,
-	"Uogonek":                        0x0172,
-	"uogonek":                        0x0173,
-	"Wcircumflex":                    0x0174,
-	"wcircumflex":                    0x0175,
-	"Ycircumflex":                    0x0176,
-	"ycircumflex":                    0x0177,
-	"Zacute":                         0x0179,
-	"zacute":                         0x017A,
-	"Zdot":                           0x017B,
-	"Zdotaccent":                     0x017B,
-	"zdot":                           0x017C,
-	"zdotaccent":                     0x017C,
-	"Zcaron":                         0x017D,
-	"zcaron":                         0x017E,
-	"longs":                          0x017F,
-	"slong":                          0x017F,
-	"bstroke":                        0x0180,
-	"Bhook":                          0x0181,
-	"Btopbar":                        0x0182,
-	"btopbar":                        0x0183,
-	"Tonesix":                        0x0184,
-	"tonesix":                        0x0185,
-	"Oopen":                          0x0186,
-	"Chook":                          0x0187,
-	"chook":                          0x0188,
-	"Dafrican":                       0x0189,
-	"Dhook":                          0x018A,
-	"Dtopbar":                        0x018B,
-	"dtopbar":                        0x018C,
-	"deltaturned":                    0x018D,
-	"Ereversed":                      0x018E,
-	"Schwa":                          0x018F,
-	"Eopen":                          0x0190,
-	"Fhook":                          0x0191,
-	"Ghook":                          0x0193,
-	"Gammaafrican":                   0x0194,
-	"hv":                             0x0195,
-	"Iotaafrican":                    0x0196,
-	"Istroke":                        0x0197,
-	"Khook":                          0x0198,
-	"khook":                          0x0199,
-	"lbar":                           0x019A,
-	"lambdastroke":                   0x019B,
-	"Mturned":                        0x019C,
-	"Nhookleft":                      0x019D,
-	"nlegrightlong":                  0x019E,
-	"Ocenteredtilde":                 0x019F,
-	"Ohorn":                          0x01A0,
-	"ohorn":                          0x01A1,
-	"Oi":                             0x01A2,
-	"oi":                             0x01A3,
-	"Phook":                          0x01A4,
-	"phook":                          0x01A5,
-	"yr":                             0x01A6,
-	"Tonetwo":                        0x01A7,
-	"tonetwo":                        0x01A8,
-	"Esh":                            0x01A9,
-	"eshreversedloop":                0x01AA,
-	"tpalatalhook":                   0x01AB,
-	"Thook":                          0x01AC,
-	"thook":                          0x01AD,
-	"Tretroflexhook":                 0x01AE,
-	"Uhorn":                          0x01AF,
-	"uhorn":                          0x01B0,
-	"Upsilonafrican":                 0x01B1,
-	"Vhook":                          0x01B2,
-	"Yhook":                          0x01B3,
-	"yhook":                          0x01B4,
-	"Zstroke":                        0x01B5,
-	"zstroke":                        0x01B6,
-	"Ezh":                            0x01B7,
-	"Ezhreversed":                    0x01B8,
-	"ezhreversed":                    0x01B9,
-	"ezhtail":                        0x01BA,
-	"twostroke":                      0x01BB,
-	"Tonefive":                       0x01BC,
-	"tonefive":                       0x01BD,
-	"glottalinvertedstroke":          0x01BE,
-	"wynn":                           0x01BF,
-	"clickdental":                    0x01C0,
-	"clicklateral":                   0x01C1,
-	"clickalveolar":                  0x01C2,
-	"clickretroflex":                 0x01C3,
-	"DZcaron":                        0x01C4,
-	"Dzcaron":                        0x01C5,
-	"dzcaron":                        0x01C6,
-	"LJ":                             0x01C7,
-	"Lj":                             0x01C8,
-	"lj":                             0x01C9,
-	"NJ":                             0x01CA,
-	"Nj":                             0x01CB,
-	"nj":                             0x01CC,
-	"Acaron":                         0x01CD,
-	"acaron":                         0x01CE,
-	"Icaron":                         0x01CF,
-	"icaron":                         0x01D0,
-	"Ocaron":                         0x01D1,
-	"ocaron":                         0x01D2,
-	"Ucaron":                         0x01D3,
-	"ucaron":                         0x01D4,
-	"Udieresismacron":                0x01D5,
-	"udieresismacron":                0x01D6,
-	"Udieresisacute":                 0x01D7,
-	"udieresisacute":                 0x01D8,
-	"Udieresiscaron":                 0x01D9,
-	"udieresiscaron":                 0x01DA,
-	"Udieresisgrave":                 0x01DB,
-	"udieresisgrave":                 0x01DC,
-	"eturned":                        0x01DD,
-	"Adieresismacron":                0x01DE,
-	"adieresismacron":                0x01DF,
-	"Adotmacron":                     0x01E0,
-	"adotmacron":                     0x01E1,
-	"AEmacron":                       0x01E2,
-	"aemacron":                       0x01E3,
-	"Gstroke":                        0x01E4,
-	"gstroke":                        0x01E5,
-	"Gcaron":                         0x01E6,
-	"gcaron":                         0x01E7,
-	"Kcaron":                         0x01E8,
-	"kcaron":                         0x01E9,
-	"Oogonek":                        0x01EA,
-	"oogonek":                        0x01EB,
-	"Oogonekmacron":                  0x01EC,
-	"oogonekmacron":                  0x01ED,
-	"Ezhcaron":                       0x01EE,
-	"ezhcaron":                       0x01EF,
-	"jcaron":                         0x01F0,
-	"DZ":                             0x01F1,
-	"Dz":                             0x01F2,
-	"dz":                             0x01F3,
-	"Gacute":                         0x01F4,
-	"gacute":                         0x01F5,
-	"Aringacute":                     0x01FA,
-	"aringacute":                     0x01FB,
-	"AEacute":                        0x01FC,
-	"aeacute":                        0x01FD,
-	"Oslashacute":                    0x01FE,
-	"Ostrokeacute":                   0x01FE,
-	"oslashacute":                    0x01FF,
-	"ostrokeacute":                   0x01FF,
-	"Adblgrave":                      0x0200,
-	"adblgrave":                      0x0201,
-	"Ainvertedbreve":                 0x0202,
-	"ainvertedbreve":                 0x0203,
-	"Edblgrave":                      0x0204,
-	"edblgrave":                      0x0205,
-	"Einvertedbreve":                 0x0206,
-	"einvertedbreve":                 0x0207,
-	"Idblgrave":                      0x0208,
-	"idblgrave":                      0x0209,
-	"Iinvertedbreve":                 0x020A,
-	"iinvertedbreve":                 0x020B,
-	"Odblgrave":                      0x020C,
-	"odblgrave":                      0x020D,
-	"Oinvertedbreve":                 0x020E,
-	"oinvertedbreve":                 0x020F,
-	"Rdblgrave":                      0x0210,
-	"rdblgrave":                      0x0211,
-	"Rinvertedbreve":                 0x0212,
-	"rinvertedbreve":                 0x0213,
-	"Udblgrave":                      0x0214,
-	"udblgrave":                      0x0215,
-	"Uinvertedbreve":                 0x0216,
-	"uinvertedbreve":                 0x0217,
-	"Scommaaccent":                   0x0218,
-	"scommaaccent":                   0x0219,
-	"aturned":                        0x0250,
-	"ascript":                        0x0251,
-	"ascriptturned":                  0x0252,
-	"bhook":                          0x0253,
-	"oopen":                          0x0254,
-	"ccurl":                          0x0255,
-	"dtail":                          0x0256,
-	"dhook":                          0x0257,
-	"ereversed":                      0x0258,
-	"schwa":                          0x0259,
-	"schwahook":                      0x025A,
-	"eopen":                          0x025B,
-	"eopenreversed":                  0x025C,
-	"eopenreversedhook":              0x025D,
-	"eopenreversedclosed":            0x025E,
-	"jdotlessstroke":                 0x025F,
-	"ghook":                          0x0260,
-	"gscript":                        0x0261,
-	"gammalatinsmall":                0x0263,
-	"ramshorn":                       0x0264,
-	"hturned":                        0x0265,
-	"hhook":                          0x0266,
-	"henghook":                       0x0267,
-	"istroke":                        0x0268,
-	"iotalatin":                      0x0269,
-	"lmiddletilde":                   0x026B,
-	"lbelt":                          0x026C,
-	"lhookretroflex":                 0x026D,
-	"lezh":                           0x026E,
-	"mturned":                        0x026F,
-	"mlonglegturned":                 0x0270,
-	"mhook":                          0x0271,
-	"nhookleft":                      0x0272,
-	"nhookretroflex":                 0x0273,
-	"obarred":                        0x0275,
-	"omegalatinclosed":               0x0277,
-	"philatin":                       0x0278,
-	"rturned":                        0x0279,
-	"rlonglegturned":                 0x027A,
-	"rhookturned":                    0x027B,
-	"rlongleg":                       0x027C,
-	"rhook":                          0x027D,
-	"rfishhook":                      0x027E,
-	"rfishhookreversed":              0x027F,
-	"Rsmallinverted":                 0x0281,
-	"shook":                          0x0282,
-	"esh":                            0x0283,
-	"dotlessjstrokehook":             0x0284,
-	"eshsquatreversed":               0x0285,
-	"eshcurl":                        0x0286,
-	"tturned":                        0x0287,
-	"tretroflexhook":                 0x0288,
-	"ubar":                           0x0289,
-	"upsilonlatin":                   0x028A,
-	"vhook":                          0x028B,
-	"vturned":                        0x028C,
-	"wturned":                        0x028D,
-	"yturned":                        0x028E,
-	"zretroflexhook":                 0x0290,
-	"zcurl":                          0x0291,
-	"ezh":                            0x0292,
-	"ezhcurl":                        0x0293,
-	"glottalstop":                    0x0294,
-	"glottalstopreversed":            0x0295,
-	"glottalstopinverted":            0x0296,
-	"cstretched":                     0x0297,
-	"bilabialclick":                  0x0298,
-	"eopenclosed":                    0x029A,
-	"Gsmallhook":                     0x029B,
-	"jcrossedtail":                   0x029D,
-	"kturned":                        0x029E,
-	"qhook":                          0x02A0,
-	"glottalstopstroke":              0x02A1,
-	"glottalstopstrokereversed":      0x02A2,
-	"dzaltone":                       0x02A3,
-	"dezh":                           0x02A4,
-	"dzcurl":                         0x02A5,
-	"ts":                             0x02A6,
-	"tesh":                           0x02A7,
-	"tccurl":                         0x02A8,
-	"hsuperior":                      0x02B0,
-	"hhooksuperior":                  0x02B1,
-	"jsuperior":                      0x02B2,
-	"rturnedsuperior":                0x02B4,
-	"rhookturnedsuperior":            0x02B5,
-	"Rsmallinvertedsuperior":         0x02B6,
-	"wsuperior":                      0x02B7,
-	"ysuperior":                      0x02B8,
-	"primemod":                       0x02B9,
-	"dblprimemod":                    0x02BA,
-	"commaturnedmod":                 0x02BB,
-	"afii57929":                      0x02BC,
-	"apostrophemod":                  0x02BC,
-	"afii64937":                      0x02BD,
-	"commareversedmod":               0x02BD,
-	"ringhalfright":                  0x02BE,
-	"ringhalfleft":                   0x02BF,
-	"glottalstopmod":                 0x02C0,
-	"glottalstopreversedmod":         0x02C1,
-	"arrowheadleftmod":               0x02C2,
-	"arrowheadrightmod":              0x02C3,
-	"arrowheadupmod":                 0x02C4,
-	"arrowheaddownmod":               0x02C5,
-	"caron":                          0x02C7,
-	"verticallinemod":                0x02C8,
-	"firsttonechinese":               0x02C9,
-	"secondtonechinese":              0x02CA,
-	"fourthtonechinese":              0x02CB,
-	"verticallinelowmod":             0x02CC,
-	"macronlowmod":                   0x02CD,
-	"gravelowmod":                    0x02CE,
-	"acutelowmod":                    0x02CF,
-	"colontriangularmod":             0x02D0,
-	"colontriangularhalfmod":         0x02D1,
-	"ringhalfrightcentered":          0x02D2,
-	"ringhalfleftcentered":           0x02D3,
-	"uptackmod":                      0x02D4,
-	"downtackmod":                    0x02D5,
-	"plusmod":                        0x02D6,
-	"minusmod":                       0x02D7,
-	"breve":                          0x02D8,
-	"dotaccent":                      0x02D9,
-	"ring":                           0x02DA,
-	"ogonek":                         0x02DB,
-	"hungarumlaut":                   0x02DD,
-	"rhotichookmod":                  0x02DE,
-	"gammasuperior":                  0x02E0,
-	"xsuperior":                      0x02E3,
-	"glottalstopreversedsuperior":    0x02E4,
-	"tonebarextrahighmod":            0x02E5,
-	"tonebarhighmod":                 0x02E6,
-	"tonebarmidmod":                  0x02E7,
-	"tonebarlowmod":                  0x02E8,
-	"tonebarextralowmod":             0x02E9,
-	"gravecmb":                       0x0300,
-	"gravecomb":                      0x0300,
-	"acutecmb":                       0x0301,
-	"acutecomb":                      0x0301,
-	"circumflexcmb":                  0x0302,
-	"tildecmb":                       0x0303,
-	"tildecomb":                      0x0303,
-	"macroncmb":                      0x0304,
-	"overlinecmb":                    0x0305,
-	"brevecmb":                       0x0306,
-	"dotaccentcmb":                   0x0307,
-	"dieresiscmb":                    0x0308,
-	"hookabovecomb":                  0x0309,
-	"hookcmb":                        0x0309,
-	"ringcmb":                        0x030A,
-	"hungarumlautcmb":                0x030B,
-	"caroncmb":                       0x030C,
-	"verticallineabovecmb":           0x030D,
-	"dblverticallineabovecmb":        0x030E,
-	"dblgravecmb":                    0x030F,
-	"candrabinducmb":                 0x0310,
-	"breveinvertedcmb":               0x0311,
-	"commaturnedabovecmb":            0x0312,
-	"commaabovecmb":                  0x0313,
-	"commareversedabovecmb":          0x0314,
-	"commaaboverightcmb":             0x0315,
-	"gravebelowcmb":                  0x0316,
-	"acutebelowcmb":                  0x0317,
-	"lefttackbelowcmb":               0x0318,
-	"righttackbelowcmb":              0x0319,
-	"leftangleabovecmb":              0x031A,
-	"horncmb":                        0x031B,
-	"ringhalfleftbelowcmb":           0x031C,
-	"uptackbelowcmb":                 0x031D,
-	"downtackbelowcmb":               0x031E,
-	"plusbelowcmb":                   0x031F,
-	"minusbelowcmb":                  0x0320,
-	"hookpalatalizedbelowcmb":        0x0321,
-	"hookretroflexbelowcmb":          0x0322,
-	"dotbelowcmb":                    0x0323,
-	"dotbelowcomb":                   0x0323,
-	"dieresisbelowcmb":               0x0324,
-	"ringbelowcmb":                   0x0325,
-	"cedillacmb":                     0x0327,
-	"ogonekcmb":                      0x0328,
-	"verticallinebelowcmb":           0x0329,
-	"bridgebelowcmb":                 0x032A,
-	"dblarchinvertedbelowcmb":        0x032B,
-	"caronbelowcmb":                  0x032C,
-	"circumflexbelowcmb":             0x032D,
-	"brevebelowcmb":                  0x032E,
-	"breveinvertedbelowcmb":          0x032F,
-	"tildebelowcmb":                  0x0330,
-	"macronbelowcmb":                 0x0331,
-	"lowlinecmb":                     0x0332,
-	"dbllowlinecmb":                  0x0333,
-	"tildeoverlaycmb":                0x0334,
-	"strokeshortoverlaycmb":          0x0335,
-	"strokelongoverlaycmb":           0x0336,
-	"solidusshortoverlaycmb":         0x0337,
-	"soliduslongoverlaycmb":          0x0338,
-	"ringhalfrightbelowcmb":          0x0339,
-	"bridgeinvertedbelowcmb":         0x033A,
-	"squarebelowcmb":                 0x033B,
-	"seagullbelowcmb":                0x033C,
-	"xabovecmb":                      0x033D,
-	"tildeverticalcmb":               0x033E,
-	"dbloverlinecmb":                 0x033F,
-	"gravetonecmb":                   0x0340,
-	"acutetonecmb":                   0x0341,
-	"perispomenigreekcmb":            0x0342,
-	"koroniscmb":                     0x0343,
-	"dialytikatonoscmb":              0x0344,
-	"ypogegrammenigreekcmb":          0x0345,
-	"tildedoublecmb":                 0x0360,
-	"breveinverteddoublecmb":         0x0361,
-	"numeralsigngreek":               0x0374,
-	"numeralsignlowergreek":          0x0375,
-	"ypogegrammeni":                  0x037A,
-	"questiongreek":                  0x037E,
-	"tonos":                          0x0384,
-	"dialytikatonos":                 0x0385,
-	"dieresistonos":                  0x0385,
-	"Alphatonos":                     0x0386,
-	"anoteleia":                      0x0387,
-	"Epsilontonos":                   0x0388,
-	"Etatonos":                       0x0389,
-	"Iotatonos":                      0x038A,
-	"Omicrontonos":                   0x038C,
-	"Upsilontonos":                   0x038E,
-	"Omegatonos":                     0x038F,
-	"iotadieresistonos":              0x0390,
-	"Iotadieresis":                   0x03AA,
-	"Upsilondieresis":                0x03AB,
-	"alphatonos":                     0x03AC,
-	"epsilontonos":                   0x03AD,
-	"etatonos":                       0x03AE,
-	"iotatonos":                      0x03AF,
-	"upsilondieresistonos":           0x03B0,
-	"iotadieresis":                   0x03CA,
-	"upsilondieresis":                0x03CB,
-	"omicrontonos":                   0x03CC,
-	"upsilontonos":                   0x03CD,
-	"omegatonos":                     0x03CE,
-	"betasymbolgreek":                0x03D0,
-	"Upsilonacutehooksymbolgreek":    0x03D3,
-	"Upsilondieresishooksymbolgreek": 0x03D4,
-	"phi1":                                    0x03D5,
-	"phisymbolgreek":                          0x03D5,
-	"Stigmagreek":                             0x03DA,
-	"Digammagreek":                            0x03DC,
-	"Koppagreek":                              0x03DE,
-	"Sampigreek":                              0x03E0,
-	"Sheicoptic":                              0x03E2,
-	"sheicoptic":                              0x03E3,
-	"Feicoptic":                               0x03E4,
-	"feicoptic":                               0x03E5,
-	"Kheicoptic":                              0x03E6,
-	"kheicoptic":                              0x03E7,
-	"Horicoptic":                              0x03E8,
-	"horicoptic":                              0x03E9,
-	"Gangiacoptic":                            0x03EA,
-	"gangiacoptic":                            0x03EB,
-	"Shimacoptic":                             0x03EC,
-	"shimacoptic":                             0x03ED,
-	"Deicoptic":                               0x03EE,
-	"deicoptic":                               0x03EF,
-	"kappasymbolgreek":                        0x03F0,
-	"rhosymbolgreek":                          0x03F1,
-	"sigmalunatesymbolgreek":                  0x03F2,
-	"yotgreek":                                0x03F3,
-	"Iocyrillic":                              0x0401,
-	"afii10023":                               0x0401,
-	"Djecyrillic":                             0x0402,
-	"afii10051":                               0x0402,
-	"Gjecyrillic":                             0x0403,
-	"afii10052":                               0x0403,
-	"Ecyrillic":                               0x0404,
-	"afii10053":                               0x0404,
-	"Dzecyrillic":                             0x0405,
-	"afii10054":                               0x0405,
-	"Icyrillic":                               0x0406,
-	"afii10055":                               0x0406,
-	"Yicyrillic":                              0x0407,
-	"afii10056":                               0x0407,
-	"Jecyrillic":                              0x0408,
-	"afii10057":                               0x0408,
-	"Ljecyrillic":                             0x0409,
-	"afii10058":                               0x0409,
-	"Njecyrillic":                             0x040A,
-	"afii10059":                               0x040A,
-	"Tshecyrillic":                            0x040B,
-	"afii10060":                               0x040B,
-	"Kjecyrillic":                             0x040C,
-	"afii10061":                               0x040C,
-	"Ushortcyrillic":                          0x040E,
-	"afii10062":                               0x040E,
-	"Dzhecyrillic":                            0x040F,
-	"afii10145":                               0x040F,
-	"Acyrillic":                               0x0410,
-	"afii10017":                               0x0410,
-	"Becyrillic":                              0x0411,
-	"afii10018":                               0x0411,
-	"Vecyrillic":                              0x0412,
-	"afii10019":                               0x0412,
-	"Gecyrillic":                              0x0413,
-	"afii10020":                               0x0413,
-	"Decyrillic":                              0x0414,
-	"afii10021":                               0x0414,
-	"Iecyrillic":                              0x0415,
-	"afii10022":                               0x0415,
-	"Zhecyrillic":                             0x0416,
-	"afii10024":                               0x0416,
-	"Zecyrillic":                              0x0417,
-	"afii10025":                               0x0417,
-	"Iicyrillic":                              0x0418,
-	"afii10026":                               0x0418,
-	"Iishortcyrillic":                         0x0419,
-	"afii10027":                               0x0419,
-	"Kacyrillic":                              0x041A,
-	"afii10028":                               0x041A,
-	"Elcyrillic":                              0x041B,
-	"afii10029":                               0x041B,
-	"Emcyrillic":                              0x041C,
-	"afii10030":                               0x041C,
-	"Encyrillic":                              0x041D,
-	"afii10031":                               0x041D,
-	"Ocyrillic":                               0x041E,
-	"afii10032":                               0x041E,
-	"Pecyrillic":                              0x041F,
-	"afii10033":                               0x041F,
-	"Ercyrillic":                              0x0420,
-	"afii10034":                               0x0420,
-	"Escyrillic":                              0x0421,
-	"afii10035":                               0x0421,
-	"Tecyrillic":                              0x0422,
-	"afii10036":                               0x0422,
-	"Ucyrillic":                               0x0423,
-	"afii10037":                               0x0423,
-	"Efcyrillic":                              0x0424,
-	"afii10038":                               0x0424,
-	"Khacyrillic":                             0x0425,
-	"afii10039":                               0x0425,
-	"Tsecyrillic":                             0x0426,
-	"afii10040":                               0x0426,
-	"Checyrillic":                             0x0427,
-	"afii10041":                               0x0427,
-	"Shacyrillic":                             0x0428,
-	"afii10042":                               0x0428,
-	"Shchacyrillic":                           0x0429,
-	"afii10043":                               0x0429,
-	"Hardsigncyrillic":                        0x042A,
-	"afii10044":                               0x042A,
-	"Yericyrillic":                            0x042B,
-	"afii10045":                               0x042B,
-	"Softsigncyrillic":                        0x042C,
-	"afii10046":                               0x042C,
-	"Ereversedcyrillic":                       0x042D,
-	"afii10047":                               0x042D,
-	"IUcyrillic":                              0x042E,
-	"afii10048":                               0x042E,
-	"IAcyrillic":                              0x042F,
-	"afii10049":                               0x042F,
-	"acyrillic":                               0x0430,
-	"afii10065":                               0x0430,
-	"afii10066":                               0x0431,
-	"becyrillic":                              0x0431,
-	"afii10067":                               0x0432,
-	"vecyrillic":                              0x0432,
-	"afii10068":                               0x0433,
-	"gecyrillic":                              0x0433,
-	"afii10069":                               0x0434,
-	"decyrillic":                              0x0434,
-	"afii10070":                               0x0435,
-	"iecyrillic":                              0x0435,
-	"afii10072":                               0x0436,
-	"zhecyrillic":                             0x0436,
-	"afii10073":                               0x0437,
-	"zecyrillic":                              0x0437,
-	"afii10074":                               0x0438,
-	"iicyrillic":                              0x0438,
-	"afii10075":                               0x0439,
-	"iishortcyrillic":                         0x0439,
-	"afii10076":                               0x043A,
-	"kacyrillic":                              0x043A,
-	"afii10077":                               0x043B,
-	"elcyrillic":                              0x043B,
-	"afii10078":                               0x043C,
-	"emcyrillic":                              0x043C,
-	"afii10079":                               0x043D,
-	"encyrillic":                              0x043D,
-	"afii10080":                               0x043E,
-	"ocyrillic":                               0x043E,
-	"afii10081":                               0x043F,
-	"pecyrillic":                              0x043F,
-	"afii10082":                               0x0440,
-	"ercyrillic":                              0x0440,
-	"afii10083":                               0x0441,
-	"escyrillic":                              0x0441,
-	"afii10084":                               0x0442,
-	"tecyrillic":                              0x0442,
-	"afii10085":                               0x0443,
-	"ucyrillic":                               0x0443,
-	"afii10086":                               0x0444,
-	"efcyrillic":                              0x0444,
-	"afii10087":                               0x0445,
-	"khacyrillic":                             0x0445,
-	"afii10088":                               0x0446,
-	"tsecyrillic":                             0x0446,
-	"afii10089":                               0x0447,
-	"checyrillic":                             0x0447,
-	"afii10090":                               0x0448,
-	"shacyrillic":                             0x0448,
-	"afii10091":                               0x0449,
-	"shchacyrillic":                           0x0449,
-	"afii10092":                               0x044A,
-	"hardsigncyrillic":                        0x044A,
-	"afii10093":                               0x044B,
-	"yericyrillic":                            0x044B,
-	"afii10094":                               0x044C,
-	"softsigncyrillic":                        0x044C,
-	"afii10095":                               0x044D,
-	"ereversedcyrillic":                       0x044D,
-	"afii10096":                               0x044E,
-	"iucyrillic":                              0x044E,
-	"afii10097":                               0x044F,
-	"iacyrillic":                              0x044F,
-	"afii10071":                               0x0451,
-	"iocyrillic":                              0x0451,
-	"afii10099":                               0x0452,
-	"djecyrillic":                             0x0452,
-	"afii10100":                               0x0453,
-	"gjecyrillic":                             0x0453,
-	"afii10101":                               0x0454,
-	"ecyrillic":                               0x0454,
-	"afii10102":                               0x0455,
-	"dzecyrillic":                             0x0455,
-	"afii10103":                               0x0456,
-	"icyrillic":                               0x0456,
-	"afii10104":                               0x0457,
-	"yicyrillic":                              0x0457,
-	"afii10105":                               0x0458,
-	"jecyrillic":                              0x0458,
-	"afii10106":                               0x0459,
-	"ljecyrillic":                             0x0459,
-	"afii10107":                               0x045A,
-	"njecyrillic":                             0x045A,
-	"afii10108":                               0x045B,
-	"tshecyrillic":                            0x045B,
-	"afii10109":                               0x045C,
-	"kjecyrillic":                             0x045C,
-	"afii10110":                               0x045E,
-	"ushortcyrillic":                          0x045E,
-	"afii10193":                               0x045F,
-	"dzhecyrillic":                            0x045F,
-	"Omegacyrillic":                           0x0460,
-	"omegacyrillic":                           0x0461,
-	"Yatcyrillic":                             0x0462,
-	"afii10146":                               0x0462,
-	"afii10194":                               0x0463,
-	"yatcyrillic":                             0x0463,
-	"Eiotifiedcyrillic":                       0x0464,
-	"eiotifiedcyrillic":                       0x0465,
-	"Yuslittlecyrillic":                       0x0466,
-	"yuslittlecyrillic":                       0x0467,
-	"Yuslittleiotifiedcyrillic":               0x0468,
-	"yuslittleiotifiedcyrillic":               0x0469,
-	"Yusbigcyrillic":                          0x046A,
-	"yusbigcyrillic":                          0x046B,
-	"Yusbigiotifiedcyrillic":                  0x046C,
-	"yusbigiotifiedcyrillic":                  0x046D,
-	"Ksicyrillic":                             0x046E,
-	"ksicyrillic":                             0x046F,
-	"Psicyrillic":                             0x0470,
-	"psicyrillic":                             0x0471,
-	"Fitacyrillic":                            0x0472,
-	"afii10147":                               0x0472,
-	"afii10195":                               0x0473,
-	"fitacyrillic":                            0x0473,
-	"Izhitsacyrillic":                         0x0474,
-	"afii10148":                               0x0474,
-	"afii10196":                               0x0475,
-	"izhitsacyrillic":                         0x0475,
-	"Izhitsadblgravecyrillic":                 0x0476,
-	"izhitsadblgravecyrillic":                 0x0477,
-	"Ukcyrillic":                              0x0478,
-	"ukcyrillic":                              0x0479,
-	"Omegaroundcyrillic":                      0x047A,
-	"omegaroundcyrillic":                      0x047B,
-	"Omegatitlocyrillic":                      0x047C,
-	"omegatitlocyrillic":                      0x047D,
-	"Otcyrillic":                              0x047E,
-	"otcyrillic":                              0x047F,
-	"Koppacyrillic":                           0x0480,
-	"koppacyrillic":                           0x0481,
-	"thousandcyrillic":                        0x0482,
-	"titlocyrilliccmb":                        0x0483,
-	"palatalizationcyrilliccmb":               0x0484,
-	"dasiapneumatacyrilliccmb":                0x0485,
-	"psilipneumatacyrilliccmb":                0x0486,
-	"Gheupturncyrillic":                       0x0490,
-	"afii10050":                               0x0490,
-	"afii10098":                               0x0491,
-	"gheupturncyrillic":                       0x0491,
-	"Ghestrokecyrillic":                       0x0492,
-	"ghestrokecyrillic":                       0x0493,
-	"Ghemiddlehookcyrillic":                   0x0494,
-	"ghemiddlehookcyrillic":                   0x0495,
-	"Zhedescendercyrillic":                    0x0496,
-	"zhedescendercyrillic":                    0x0497,
-	"Zedescendercyrillic":                     0x0498,
-	"zedescendercyrillic":                     0x0499,
-	"Kadescendercyrillic":                     0x049A,
-	"kadescendercyrillic":                     0x049B,
-	"Kaverticalstrokecyrillic":                0x049C,
-	"kaverticalstrokecyrillic":                0x049D,
-	"Kastrokecyrillic":                        0x049E,
-	"kastrokecyrillic":                        0x049F,
-	"Kabashkircyrillic":                       0x04A0,
-	"kabashkircyrillic":                       0x04A1,
-	"Endescendercyrillic":                     0x04A2,
-	"endescendercyrillic":                     0x04A3,
-	"Enghecyrillic":                           0x04A4,
-	"enghecyrillic":                           0x04A5,
-	"Pemiddlehookcyrillic":                    0x04A6,
-	"pemiddlehookcyrillic":                    0x04A7,
-	"Haabkhasiancyrillic":                     0x04A8,
-	"haabkhasiancyrillic":                     0x04A9,
-	"Esdescendercyrillic":                     0x04AA,
-	"esdescendercyrillic":                     0x04AB,
-	"Tedescendercyrillic":                     0x04AC,
-	"tedescendercyrillic":                     0x04AD,
-	"Ustraightcyrillic":                       0x04AE,
-	"ustraightcyrillic":                       0x04AF,
-	"Ustraightstrokecyrillic":                 0x04B0,
-	"ustraightstrokecyrillic":                 0x04B1,
-	"Hadescendercyrillic":                     0x04B2,
-	"hadescendercyrillic":                     0x04B3,
-	"Tetsecyrillic":                           0x04B4,
-	"tetsecyrillic":                           0x04B5,
-	"Chedescendercyrillic":                    0x04B6,
-	"chedescendercyrillic":                    0x04B7,
-	"Cheverticalstrokecyrillic":               0x04B8,
-	"cheverticalstrokecyrillic":               0x04B9,
-	"Shhacyrillic":                            0x04BA,
-	"shhacyrillic":                            0x04BB,
-	"Cheabkhasiancyrillic":                    0x04BC,
-	"cheabkhasiancyrillic":                    0x04BD,
-	"Chedescenderabkhasiancyrillic":           0x04BE,
-	"chedescenderabkhasiancyrillic":           0x04BF,
-	"palochkacyrillic":                        0x04C0,
-	"Zhebrevecyrillic":                        0x04C1,
-	"zhebrevecyrillic":                        0x04C2,
-	"Kahookcyrillic":                          0x04C3,
-	"kahookcyrillic":                          0x04C4,
-	"Enhookcyrillic":                          0x04C7,
-	"enhookcyrillic":                          0x04C8,
-	"Chekhakassiancyrillic":                   0x04CB,
-	"chekhakassiancyrillic":                   0x04CC,
-	"Abrevecyrillic":                          0x04D0,
-	"abrevecyrillic":                          0x04D1,
-	"Adieresiscyrillic":                       0x04D2,
-	"adieresiscyrillic":                       0x04D3,
-	"Aiecyrillic":                             0x04D4,
-	"aiecyrillic":                             0x04D5,
-	"Iebrevecyrillic":                         0x04D6,
-	"iebrevecyrillic":                         0x04D7,
-	"Schwacyrillic":                           0x04D8,
-	"afii10846":                               0x04D9,
-	"schwacyrillic":                           0x04D9,
-	"Schwadieresiscyrillic":                   0x04DA,
-	"schwadieresiscyrillic":                   0x04DB,
-	"Zhedieresiscyrillic":                     0x04DC,
-	"zhedieresiscyrillic":                     0x04DD,
-	"Zedieresiscyrillic":                      0x04DE,
-	"zedieresiscyrillic":                      0x04DF,
-	"Dzeabkhasiancyrillic":                    0x04E0,
-	"dzeabkhasiancyrillic":                    0x04E1,
-	"Imacroncyrillic":                         0x04E2,
-	"imacroncyrillic":                         0x04E3,
-	"Idieresiscyrillic":                       0x04E4,
-	"idieresiscyrillic":                       0x04E5,
-	"Odieresiscyrillic":                       0x04E6,
-	"odieresiscyrillic":                       0x04E7,
-	"Obarredcyrillic":                         0x04E8,
-	"obarredcyrillic":                         0x04E9,
-	"Obarreddieresiscyrillic":                 0x04EA,
-	"obarreddieresiscyrillic":                 0x04EB,
-	"Umacroncyrillic":                         0x04EE,
-	"umacroncyrillic":                         0x04EF,
-	"Udieresiscyrillic":                       0x04F0,
-	"udieresiscyrillic":                       0x04F1,
-	"Uhungarumlautcyrillic":                   0x04F2,
-	"uhungarumlautcyrillic":                   0x04F3,
-	"Chedieresiscyrillic":                     0x04F4,
-	"chedieresiscyrillic":                     0x04F5,
-	"Yerudieresiscyrillic":                    0x04F8,
-	"yerudieresiscyrillic":                    0x04F9,
-	"Aybarmenian":                             0x0531,
-	"Benarmenian":                             0x0532,
-	"Gimarmenian":                             0x0533,
-	"Daarmenian":                              0x0534,
-	"Echarmenian":                             0x0535,
-	"Zaarmenian":                              0x0536,
-	"Eharmenian":                              0x0537,
-	"Etarmenian":                              0x0538,
-	"Toarmenian":                              0x0539,
-	"Zhearmenian":                             0x053A,
-	"Iniarmenian":                             0x053B,
-	"Liwnarmenian":                            0x053C,
-	"Xeharmenian":                             0x053D,
-	"Caarmenian":                              0x053E,
-	"Kenarmenian":                             0x053F,
-	"Hoarmenian":                              0x0540,
-	"Jaarmenian":                              0x0541,
-	"Ghadarmenian":                            0x0542,
-	"Cheharmenian":                            0x0543,
-	"Menarmenian":                             0x0544,
-	"Yiarmenian":                              0x0545,
-	"Nowarmenian":                             0x0546,
-	"Shaarmenian":                             0x0547,
-	"Voarmenian":                              0x0548,
-	"Chaarmenian":                             0x0549,
-	"Peharmenian":                             0x054A,
-	"Jheharmenian":                            0x054B,
-	"Raarmenian":                              0x054C,
-	"Seharmenian":                             0x054D,
-	"Vewarmenian":                             0x054E,
-	"Tiwnarmenian":                            0x054F,
-	"Reharmenian":                             0x0550,
-	"Coarmenian":                              0x0551,
-	"Yiwnarmenian":                            0x0552,
-	"Piwrarmenian":                            0x0553,
-	"Keharmenian":                             0x0554,
-	"Oharmenian":                              0x0555,
-	"Feharmenian":                             0x0556,
-	"ringhalfleftarmenian":                    0x0559,
-	"apostrophearmenian":                      0x055A,
-	"emphasismarkarmenian":                    0x055B,
-	"exclamarmenian":                          0x055C,
-	"commaarmenian":                           0x055D,
-	"questionarmenian":                        0x055E,
-	"abbreviationmarkarmenian":                0x055F,
-	"aybarmenian":                             0x0561,
-	"benarmenian":                             0x0562,
-	"gimarmenian":                             0x0563,
-	"daarmenian":                              0x0564,
-	"echarmenian":                             0x0565,
-	"zaarmenian":                              0x0566,
-	"eharmenian":                              0x0567,
-	"etarmenian":                              0x0568,
-	"toarmenian":                              0x0569,
-	"zhearmenian":                             0x056A,
-	"iniarmenian":                             0x056B,
-	"liwnarmenian":                            0x056C,
-	"xeharmenian":                             0x056D,
-	"caarmenian":                              0x056E,
-	"kenarmenian":                             0x056F,
-	"hoarmenian":                              0x0570,
-	"jaarmenian":                              0x0571,
-	"ghadarmenian":                            0x0572,
-	"cheharmenian":                            0x0573,
-	"menarmenian":                             0x0574,
-	"yiarmenian":                              0x0575,
-	"nowarmenian":                             0x0576,
-	"shaarmenian":                             0x0577,
-	"voarmenian":                              0x0578,
-	"chaarmenian":                             0x0579,
-	"peharmenian":                             0x057A,
-	"jheharmenian":                            0x057B,
-	"raarmenian":                              0x057C,
-	"seharmenian":                             0x057D,
-	"vewarmenian":                             0x057E,
-	"tiwnarmenian":                            0x057F,
-	"reharmenian":                             0x0580,
-	"coarmenian":                              0x0581,
-	"yiwnarmenian":                            0x0582,
-	"piwrarmenian":                            0x0583,
-	"keharmenian":                             0x0584,
-	"oharmenian":                              0x0585,
-	"feharmenian":                             0x0586,
-	"echyiwnarmenian":                         0x0587,
-	"periodarmenian":                          0x0589,
-	"etnahtafoukhhebrew":                      0x0591,
-	"etnahtafoukhlefthebrew":                  0x0591,
-	"etnahtahebrew":                           0x0591,
-	"etnahtalefthebrew":                       0x0591,
-	"segoltahebrew":                           0x0592,
-	"shalshelethebrew":                        0x0593,
-	"zaqefqatanhebrew":                        0x0594,
-	"zaqefgadolhebrew":                        0x0595,
-	"tipehahebrew":                            0x0596,
-	"tipehalefthebrew":                        0x0596,
-	"reviahebrew":                             0x0597,
-	"reviamugrashhebrew":                      0x0597,
-	"zarqahebrew":                             0x0598,
-	"pashtahebrew":                            0x0599,
-	"yetivhebrew":                             0x059A,
-	"tevirhebrew":                             0x059B,
-	"tevirlefthebrew":                         0x059B,
-	"gereshaccenthebrew":                      0x059C,
-	"gereshmuqdamhebrew":                      0x059D,
-	"gershayimaccenthebrew":                   0x059E,
-	"qarneyparahebrew":                        0x059F,
-	"telishagedolahebrew":                     0x05A0,
-	"pazerhebrew":                             0x05A1,
-	"munahhebrew":                             0x05A3,
-	"munahlefthebrew":                         0x05A3,
-	"mahapakhhebrew":                          0x05A4,
-	"mahapakhlefthebrew":                      0x05A4,
-	"merkhahebrew":                            0x05A5,
-	"merkhalefthebrew":                        0x05A5,
-	"merkhakefulahebrew":                      0x05A6,
-	"merkhakefulalefthebrew":                  0x05A6,
-	"dargahebrew":                             0x05A7,
-	"dargalefthebrew":                         0x05A7,
-	"qadmahebrew":                             0x05A8,
-	"telishaqetanahebrew":                     0x05A9,
-	"yerahbenyomohebrew":                      0x05AA,
-	"yerahbenyomolefthebrew":                  0x05AA,
-	"olehebrew":                               0x05AB,
-	"iluyhebrew":                              0x05AC,
-	"dehihebrew":                              0x05AD,
-	"zinorhebrew":                             0x05AE,
-	"masoracirclehebrew":                      0x05AF,
-	"afii57799":                               0x05B0,
-	"sheva":                                   0x05B0,
-	"sheva115":                                0x05B0,
-	"sheva15":                                 0x05B0,
-	"sheva22":                                 0x05B0,
-	"sheva2e":                                 0x05B0,
-	"shevahebrew":                             0x05B0,
-	"shevanarrowhebrew":                       0x05B0,
-	"shevaquarterhebrew":                      0x05B0,
-	"shevawidehebrew":                         0x05B0,
-	"afii57801":                               0x05B1,
-	"hatafsegol":                              0x05B1,
-	"hatafsegol17":                            0x05B1,
-	"hatafsegol24":                            0x05B1,
-	"hatafsegol30":                            0x05B1,
-	"hatafsegolhebrew":                        0x05B1,
-	"hatafsegolnarrowhebrew":                  0x05B1,
-	"hatafsegolquarterhebrew":                 0x05B1,
-	"hatafsegolwidehebrew":                    0x05B1,
-	"afii57800":                               0x05B2,
-	"hatafpatah":                              0x05B2,
-	"hatafpatah16":                            0x05B2,
-	"hatafpatah23":                            0x05B2,
-	"hatafpatah2f":                            0x05B2,
-	"hatafpatahhebrew":                        0x05B2,
-	"hatafpatahnarrowhebrew":                  0x05B2,
-	"hatafpatahquarterhebrew":                 0x05B2,
-	"hatafpatahwidehebrew":                    0x05B2,
-	"afii57802":                               0x05B3,
-	"hatafqamats":                             0x05B3,
-	"hatafqamats1b":                           0x05B3,
-	"hatafqamats28":                           0x05B3,
-	"hatafqamats34":                           0x05B3,
-	"hatafqamatshebrew":                       0x05B3,
-	"hatafqamatsnarrowhebrew":                 0x05B3,
-	"hatafqamatsquarterhebrew":                0x05B3,
-	"hatafqamatswidehebrew":                   0x05B3,
-	"afii57793":                               0x05B4,
-	"hiriq":                                   0x05B4,
-	"hiriq14":                                 0x05B4,
-	"hiriq21":                                 0x05B4,
-	"hiriq2d":                                 0x05B4,
-	"hiriqhebrew":                             0x05B4,
-	"hiriqnarrowhebrew":                       0x05B4,
-	"hiriqquarterhebrew":                      0x05B4,
-	"hiriqwidehebrew":                         0x05B4,
-	"afii57794":                               0x05B5,
-	"tsere":                                   0x05B5,
-	"tsere12":                                 0x05B5,
-	"tsere1e":                                 0x05B5,
-	"tsere2b":                                 0x05B5,
-	"tserehebrew":                             0x05B5,
-	"tserenarrowhebrew":                       0x05B5,
-	"tserequarterhebrew":                      0x05B5,
-	"tserewidehebrew":                         0x05B5,
-	"afii57795":                               0x05B6,
-	"segol":                                   0x05B6,
-	"segol13":                                 0x05B6,
-	"segol1f":                                 0x05B6,
-	"segol2c":                                 0x05B6,
-	"segolhebrew":                             0x05B6,
-	"segolnarrowhebrew":                       0x05B6,
-	"segolquarterhebrew":                      0x05B6,
-	"segolwidehebrew":                         0x05B6,
-	"afii57798":                               0x05B7,
-	"patah":                                   0x05B7,
-	"patah11":                                 0x05B7,
-	"patah1d":                                 0x05B7,
-	"patah2a":                                 0x05B7,
-	"patahhebrew":                             0x05B7,
-	"patahnarrowhebrew":                       0x05B7,
-	"patahquarterhebrew":                      0x05B7,
-	"patahwidehebrew":                         0x05B7,
-	"afii57797":                               0x05B8,
-	"qamats":                                  0x05B8,
-	"qamats10":                                0x05B8,
-	"qamats1a":                                0x05B8,
-	"qamats1c":                                0x05B8,
-	"qamats27":                                0x05B8,
-	"qamats29":                                0x05B8,
-	"qamats33":                                0x05B8,
-	"qamatsde":                                0x05B8,
-	"qamatshebrew":                            0x05B8,
-	"qamatsnarrowhebrew":                      0x05B8,
-	"qamatsqatanhebrew":                       0x05B8,
-	"qamatsqatannarrowhebrew":                 0x05B8,
-	"qamatsqatanquarterhebrew":                0x05B8,
-	"qamatsqatanwidehebrew":                   0x05B8,
-	"qamatsquarterhebrew":                     0x05B8,
-	"qamatswidehebrew":                        0x05B8,
-	"afii57806":                               0x05B9,
-	"holam":                                   0x05B9,
-	"holam19":                                 0x05B9,
-	"holam26":                                 0x05B9,
-	"holam32":                                 0x05B9,
-	"holamhebrew":                             0x05B9,
-	"holamnarrowhebrew":                       0x05B9,
-	"holamquarterhebrew":                      0x05B9,
-	"holamwidehebrew":                         0x05B9,
-	"afii57796":                               0x05BB,
-	"qubuts":                                  0x05BB,
-	"qubuts18":                                0x05BB,
-	"qubuts25":                                0x05BB,
-	"qubuts31":                                0x05BB,
-	"qubutshebrew":                            0x05BB,
-	"qubutsnarrowhebrew":                      0x05BB,
-	"qubutsquarterhebrew":                     0x05BB,
-	"qubutswidehebrew":                        0x05BB,
-	"afii57807":                               0x05BC,
-	"dagesh":                                  0x05BC,
-	"dageshhebrew":                            0x05BC,
-	"afii57839":                               0x05BD,
-	"siluqhebrew":                             0x05BD,
-	"siluqlefthebrew":                         0x05BD,
-	"afii57645":                               0x05BE,
-	"maqafhebrew":                             0x05BE,
-	"afii57841":                               0x05BF,
-	"rafe":                                    0x05BF,
-	"rafehebrew":                              0x05BF,
-	"afii57842":                               0x05C0,
-	"paseqhebrew":                             0x05C0,
-	"afii57804":                               0x05C1,
-	"shindothebrew":                           0x05C1,
-	"afii57803":                               0x05C2,
-	"sindothebrew":                            0x05C2,
-	"afii57658":                               0x05C3,
-	"sofpasuqhebrew":                          0x05C3,
-	"upperdothebrew":                          0x05C4,
-	"afii57664":                               0x05D0,
-	"alef":                                    0x05D0,
-	"alefhebrew":                              0x05D0,
-	"afii57665":                               0x05D1,
-	"bet":                                     0x05D1,
-	"bethebrew":                               0x05D1,
-	"afii57666":                               0x05D2,
-	"gimel":                                   0x05D2,
-	"gimelhebrew":                             0x05D2,
-	"afii57667":                               0x05D3,
-	"dalet":                                   0x05D3,
-	"dalethebrew":                             0x05D3,
-	"daletsheva":                              0x05D3,
-	"daletshevahebrew":                        0x05D3,
-	"dalethatafsegol":                         0x05D3,
-	"dalethatafsegolhebrew":                   0x05D3,
-	"dalethatafpatah":                         0x05D3,
-	"dalethatafpatahhebrew":                   0x05D3,
-	"dalethiriq":                              0x05D3,
-	"dalethiriqhebrew":                        0x05D3,
-	"dalettsere":                              0x05D3,
-	"dalettserehebrew":                        0x05D3,
-	"daletsegol":                              0x05D3,
-	"daletsegolhebrew":                        0x05D3,
-	"daletpatah":                              0x05D3,
-	"daletpatahhebrew":                        0x05D3,
-	"daletqamats":                             0x05D3,
-	"daletqamatshebrew":                       0x05D3,
-	"daletholam":                              0x05D3,
-	"daletholamhebrew":                        0x05D3,
-	"daletqubuts":                             0x05D3,
-	"daletqubutshebrew":                       0x05D3,
-	"afii57668":                               0x05D4,
-	"he":                                      0x05D4,
-	"hehebrew":                                0x05D4,
-	"afii57669":                               0x05D5,
-	"vav":                                     0x05D5,
-	"vavhebrew":                               0x05D5,
-	"afii57670":                               0x05D6,
-	"zayin":                                   0x05D6,
-	"zayinhebrew":                             0x05D6,
-	"afii57671":                               0x05D7,
-	"het":                                     0x05D7,
-	"hethebrew":                               0x05D7,
-	"afii57672":                               0x05D8,
-	"tet":                                     0x05D8,
-	"tethebrew":                               0x05D8,
-	"afii57673":                               0x05D9,
-	"yod":                                     0x05D9,
-	"yodhebrew":                               0x05D9,
-	"afii57674":                               0x05DA,
-	"finalkaf":                                0x05DA,
-	"finalkafhebrew":                          0x05DA,
-	"finalkafsheva":                           0x05DA,
-	"finalkafshevahebrew":                     0x05DA,
-	"finalkafqamats":                          0x05DA,
-	"finalkafqamatshebrew":                    0x05DA,
-	"afii57675":                               0x05DB,
-	"kaf":                                     0x05DB,
-	"kafhebrew":                               0x05DB,
-	"afii57676":                               0x05DC,
-	"lamed":                                   0x05DC,
-	"lamedhebrew":                             0x05DC,
-	"lamedholam":                              0x05DC,
-	"lamedholamhebrew":                        0x05DC,
-	"lamedholamdagesh":                        0x05DC,
-	"lamedholamdageshhebrew":                  0x05DC,
-	"afii57677":                               0x05DD,
-	"finalmem":                                0x05DD,
-	"finalmemhebrew":                          0x05DD,
-	"afii57678":                               0x05DE,
-	"mem":                                     0x05DE,
-	"memhebrew":                               0x05DE,
-	"afii57679":                               0x05DF,
-	"finalnun":                                0x05DF,
-	"finalnunhebrew":                          0x05DF,
-	"afii57680":                               0x05E0,
-	"nun":                                     0x05E0,
-	"nunhebrew":                               0x05E0,
-	"afii57681":                               0x05E1,
-	"samekh":                                  0x05E1,
-	"samekhhebrew":                            0x05E1,
-	"afii57682":                               0x05E2,
-	"ayin":                                    0x05E2,
-	"ayinhebrew":                              0x05E2,
-	"afii57683":                               0x05E3,
-	"finalpe":                                 0x05E3,
-	"finalpehebrew":                           0x05E3,
-	"afii57684":                               0x05E4,
-	"pe":                                      0x05E4,
-	"pehebrew":                                0x05E4,
-	"afii57685":                               0x05E5,
-	"finaltsadi":                              0x05E5,
-	"finaltsadihebrew":                        0x05E5,
-	"afii57686":                               0x05E6,
-	"tsadi":                                   0x05E6,
-	"tsadihebrew":                             0x05E6,
-	"afii57687":                               0x05E7,
-	"qof":                                     0x05E7,
-	"qofhebrew":                               0x05E7,
-	"qofsheva":                                0x05E7,
-	"qofshevahebrew":                          0x05E7,
-	"qofhatafsegol":                           0x05E7,
-	"qofhatafsegolhebrew":                     0x05E7,
-	"qofhatafpatah":                           0x05E7,
-	"qofhatafpatahhebrew":                     0x05E7,
-	"qofhiriq":                                0x05E7,
-	"qofhiriqhebrew":                          0x05E7,
-	"qoftsere":                                0x05E7,
-	"qoftserehebrew":                          0x05E7,
-	"qofsegol":                                0x05E7,
-	"qofsegolhebrew":                          0x05E7,
-	"qofpatah":                                0x05E7,
-	"qofpatahhebrew":                          0x05E7,
-	"qofqamats":                               0x05E7,
-	"qofqamatshebrew":                         0x05E7,
-	"qofholam":                                0x05E7,
-	"qofholamhebrew":                          0x05E7,
-	"qofqubuts":                               0x05E7,
-	"qofqubutshebrew":                         0x05E7,
-	"afii57688":                               0x05E8,
-	"resh":                                    0x05E8,
-	"reshhebrew":                              0x05E8,
-	"reshsheva":                               0x05E8,
-	"reshshevahebrew":                         0x05E8,
-	"reshhatafsegol":                          0x05E8,
-	"reshhatafsegolhebrew":                    0x05E8,
-	"reshhatafpatah":                          0x05E8,
-	"reshhatafpatahhebrew":                    0x05E8,
-	"reshhiriq":                               0x05E8,
-	"reshhiriqhebrew":                         0x05E8,
-	"reshtsere":                               0x05E8,
-	"reshtserehebrew":                         0x05E8,
-	"reshsegol":                               0x05E8,
-	"reshsegolhebrew":                         0x05E8,
-	"reshpatah":                               0x05E8,
-	"reshpatahhebrew":                         0x05E8,
-	"reshqamats":                              0x05E8,
-	"reshqamatshebrew":                        0x05E8,
-	"reshholam":                               0x05E8,
-	"reshholamhebrew":                         0x05E8,
-	"reshqubuts":                              0x05E8,
-	"reshqubutshebrew":                        0x05E8,
-	"afii57689":                               0x05E9,
-	"shin":                                    0x05E9,
-	"shinhebrew":                              0x05E9,
-	"afii57690":                               0x05EA,
-	"tav":                                     0x05EA,
-	"tavhebrew":                               0x05EA,
-	"afii57716":                               0x05F0,
-	"vavvavhebrew":                            0x05F0,
-	"afii57717":                               0x05F1,
-	"vavyodhebrew":                            0x05F1,
-	"afii57718":                               0x05F2,
-	"yodyodhebrew":                            0x05F2,
-	"gereshhebrew":                            0x05F3,
-	"gershayimhebrew":                         0x05F4,
-	"afii57388":                               0x060C,
-	"commaarabic":                             0x060C,
-	"afii57403":                               0x061B,
-	"semicolonarabic":                         0x061B,
-	"afii57407":                               0x061F,
-	"questionarabic":                          0x061F,
-	"afii57409":                               0x0621,
-	"hamzaarabic":                             0x0621,
-	"hamzalowarabic":                          0x0621,
-	"hamzafathatanarabic":                     0x0621,
-	"hamzadammatanarabic":                     0x0621,
-	"hamzalowkasratanarabic":                  0x0621,
-	"hamzafathaarabic":                        0x0621,
-	"hamzadammaarabic":                        0x0621,
-	"hamzalowkasraarabic":                     0x0621,
-	"hamzasukunarabic":                        0x0621,
-	"afii57410":                               0x0622,
-	"alefmaddaabovearabic":                    0x0622,
-	"afii57411":                               0x0623,
-	"alefhamzaabovearabic":                    0x0623,
-	"afii57412":                               0x0624,
-	"wawhamzaabovearabic":                     0x0624,
-	"afii57413":                               0x0625,
-	"alefhamzabelowarabic":                    0x0625,
-	"afii57414":                               0x0626,
-	"yehhamzaabovearabic":                     0x0626,
-	"afii57415":                               0x0627,
-	"alefarabic":                              0x0627,
-	"afii57416":                               0x0628,
-	"beharabic":                               0x0628,
-	"afii57417":                               0x0629,
-	"tehmarbutaarabic":                        0x0629,
-	"afii57418":                               0x062A,
-	"teharabic":                               0x062A,
-	"afii57419":                               0x062B,
-	"theharabic":                              0x062B,
-	"afii57420":                               0x062C,
-	"jeemarabic":                              0x062C,
-	"afii57421":                               0x062D,
-	"haharabic":                               0x062D,
-	"afii57422":                               0x062E,
-	"khaharabic":                              0x062E,
-	"afii57423":                               0x062F,
-	"dalarabic":                               0x062F,
-	"afii57424":                               0x0630,
-	"thalarabic":                              0x0630,
-	"afii57425":                               0x0631,
-	"reharabic":                               0x0631,
-	"rehyehaleflamarabic":                     0x0631,
-	"afii57426":                               0x0632,
-	"zainarabic":                              0x0632,
-	"afii57427":                               0x0633,
-	"seenarabic":                              0x0633,
-	"afii57428":                               0x0634,
-	"sheenarabic":                             0x0634,
-	"afii57429":                               0x0635,
-	"sadarabic":                               0x0635,
-	"afii57430":                               0x0636,
-	"dadarabic":                               0x0636,
-	"afii57431":                               0x0637,
-	"taharabic":                               0x0637,
-	"afii57432":                               0x0638,
-	"zaharabic":                               0x0638,
-	"afii57433":                               0x0639,
-	"ainarabic":                               0x0639,
-	"afii57434":                               0x063A,
-	"ghainarabic":                             0x063A,
-	"afii57440":                               0x0640,
-	"kashidaautoarabic":                       0x0640,
-	"kashidaautonosidebearingarabic":          0x0640,
-	"tatweelarabic":                           0x0640,
-	"afii57441":                               0x0641,
-	"feharabic":                               0x0641,
-	"afii57442":                               0x0642,
-	"qafarabic":                               0x0642,
-	"afii57443":                               0x0643,
-	"kafarabic":                               0x0643,
-	"afii57444":                               0x0644,
-	"lamarabic":                               0x0644,
-	"afii57445":                               0x0645,
-	"meemarabic":                              0x0645,
-	"afii57446":                               0x0646,
-	"noonarabic":                              0x0646,
-	"afii57470":                               0x0647,
-	"heharabic":                               0x0647,
-	"afii57448":                               0x0648,
-	"wawarabic":                               0x0648,
-	"afii57449":                               0x0649,
-	"alefmaksuraarabic":                       0x0649,
-	"afii57450":                               0x064A,
-	"yeharabic":                               0x064A,
-	"afii57451":                               0x064B,
-	"fathatanarabic":                          0x064B,
-	"afii57452":                               0x064C,
-	"dammatanaltonearabic":                    0x064C,
-	"dammatanarabic":                          0x064C,
-	"afii57453":                               0x064D,
-	"kasratanarabic":                          0x064D,
-	"afii57454":                               0x064E,
-	"fathaarabic":                             0x064E,
-	"fathalowarabic":                          0x064E,
-	"afii57455":                               0x064F,
-	"dammaarabic":                             0x064F,
-	"dammalowarabic":                          0x064F,
-	"afii57456":                               0x0650,
-	"kasraarabic":                             0x0650,
-	"afii57457":                               0x0651,
-	"shaddaarabic":                            0x0651,
-	"shaddafathatanarabic":                    0x0651,
-	"afii57458":                               0x0652,
-	"sukunarabic":                             0x0652,
-	"afii57392":                               0x0660,
-	"zeroarabic":                              0x0660,
-	"zerohackarabic":                          0x0660,
-	"afii57393":                               0x0661,
-	"onearabic":                               0x0661,
-	"onehackarabic":                           0x0661,
-	"afii57394":                               0x0662,
-	"twoarabic":                               0x0662,
-	"twohackarabic":                           0x0662,
-	"afii57395":                               0x0663,
-	"threearabic":                             0x0663,
-	"threehackarabic":                         0x0663,
-	"afii57396":                               0x0664,
-	"fourarabic":                              0x0664,
-	"fourhackarabic":                          0x0664,
-	"afii57397":                               0x0665,
-	"fivearabic":                              0x0665,
-	"fivehackarabic":                          0x0665,
-	"afii57398":                               0x0666,
-	"sixarabic":                               0x0666,
-	"sixhackarabic":                           0x0666,
-	"afii57399":                               0x0667,
-	"sevenarabic":                             0x0667,
-	"sevenhackarabic":                         0x0667,
-	"afii57400":                               0x0668,
-	"eightarabic":                             0x0668,
-	"eighthackarabic":                         0x0668,
-	"afii57401":                               0x0669,
-	"ninearabic":                              0x0669,
-	"ninehackarabic":                          0x0669,
-	"afii57381":                               0x066A,
-	"percentarabic":                           0x066A,
-	"decimalseparatorarabic":                  0x066B,
-	"decimalseparatorpersian":                 0x066B,
-	"thousandsseparatorarabic":                0x066C,
-	"thousandsseparatorpersian":               0x066C,
-	"afii63167":                               0x066D,
-	"asteriskaltonearabic":                    0x066D,
-	"asteriskarabic":                          0x066D,
-	"afii57511":                               0x0679,
-	"tteharabic":                              0x0679,
-	"afii57506":                               0x067E,
-	"peharabic":                               0x067E,
-	"afii57507":                               0x0686,
-	"tcheharabic":                             0x0686,
-	"afii57512":                               0x0688,
-	"ddalarabic":                              0x0688,
-	"afii57513":                               0x0691,
-	"rreharabic":                              0x0691,
-	"afii57508":                               0x0698,
-	"jeharabic":                               0x0698,
-	"afii57505":                               0x06A4,
-	"veharabic":                               0x06A4,
-	"afii57509":                               0x06AF,
-	"gafarabic":                               0x06AF,
-	"afii57514":                               0x06BA,
-	"noonghunnaarabic":                        0x06BA,
-	"haaltonearabic":                          0x06C1,
-	"hehaltonearabic":                         0x06C1,
-	"yehthreedotsbelowarabic":                 0x06D1,
-	"afii57519":                               0x06D2,
-	"yehbarreearabic":                         0x06D2,
-	"afii57534":                               0x06D5,
-	"zeropersian":                             0x06F0,
-	"onepersian":                              0x06F1,
-	"twopersian":                              0x06F2,
-	"threepersian":                            0x06F3,
-	"fourpersian":                             0x06F4,
-	"fivepersian":                             0x06F5,
-	"sixpersian":                              0x06F6,
-	"sevenpersian":                            0x06F7,
-	"eightpersian":                            0x06F8,
-	"ninepersian":                             0x06F9,
-	"candrabindudeva":                         0x0901,
-	"anusvaradeva":                            0x0902,
-	"visargadeva":                             0x0903,
-	"adeva":                                   0x0905,
-	"aadeva":                                  0x0906,
-	"ideva":                                   0x0907,
-	"iideva":                                  0x0908,
-	"udeva":                                   0x0909,
-	"uudeva":                                  0x090A,
-	"rvocalicdeva":                            0x090B,
-	"lvocalicdeva":                            0x090C,
-	"ecandradeva":                             0x090D,
-	"eshortdeva":                              0x090E,
-	"edeva":                                   0x090F,
-	"aideva":                                  0x0910,
-	"ocandradeva":                             0x0911,
-	"oshortdeva":                              0x0912,
-	"odeva":                                   0x0913,
-	"audeva":                                  0x0914,
-	"kadeva":                                  0x0915,
-	"khadeva":                                 0x0916,
-	"gadeva":                                  0x0917,
-	"ghadeva":                                 0x0918,
-	"ngadeva":                                 0x0919,
-	"cadeva":                                  0x091A,
-	"chadeva":                                 0x091B,
-	"jadeva":                                  0x091C,
-	"jhadeva":                                 0x091D,
-	"nyadeva":                                 0x091E,
-	"ttadeva":                                 0x091F,
-	"tthadeva":                                0x0920,
-	"ddadeva":                                 0x0921,
-	"ddhadeva":                                0x0922,
-	"nnadeva":                                 0x0923,
-	"tadeva":                                  0x0924,
-	"thadeva":                                 0x0925,
-	"dadeva":                                  0x0926,
-	"dhadeva":                                 0x0927,
-	"nadeva":                                  0x0928,
-	"nnnadeva":                                0x0929,
-	"padeva":                                  0x092A,
-	"phadeva":                                 0x092B,
-	"badeva":                                  0x092C,
-	"bhadeva":                                 0x092D,
-	"madeva":                                  0x092E,
-	"yadeva":                                  0x092F,
-	"radeva":                                  0x0930,
-	"rradeva":                                 0x0931,
-	"ladeva":                                  0x0932,
-	"lladeva":                                 0x0933,
-	"llladeva":                                0x0934,
-	"vadeva":                                  0x0935,
-	"shadeva":                                 0x0936,
-	"ssadeva":                                 0x0937,
-	"sadeva":                                  0x0938,
-	"hadeva":                                  0x0939,
-	"nuktadeva":                               0x093C,
-	"avagrahadeva":                            0x093D,
-	"aavowelsigndeva":                         0x093E,
-	"ivowelsigndeva":                          0x093F,
-	"iivowelsigndeva":                         0x0940,
-	"uvowelsigndeva":                          0x0941,
-	"uuvowelsigndeva":                         0x0942,
-	"rvocalicvowelsigndeva":                   0x0943,
-	"rrvocalicvowelsigndeva":                  0x0944,
-	"ecandravowelsigndeva":                    0x0945,
-	"eshortvowelsigndeva":                     0x0946,
-	"evowelsigndeva":                          0x0947,
-	"aivowelsigndeva":                         0x0948,
-	"ocandravowelsigndeva":                    0x0949,
-	"oshortvowelsigndeva":                     0x094A,
-	"ovowelsigndeva":                          0x094B,
-	"auvowelsigndeva":                         0x094C,
-	"viramadeva":                              0x094D,
-	"omdeva":                                  0x0950,
-	"udattadeva":                              0x0951,
-	"anudattadeva":                            0x0952,
-	"gravedeva":                               0x0953,
-	"acutedeva":                               0x0954,
-	"qadeva":                                  0x0958,
-	"khhadeva":                                0x0959,
-	"ghhadeva":                                0x095A,
-	"zadeva":                                  0x095B,
-	"dddhadeva":                               0x095C,
-	"rhadeva":                                 0x095D,
-	"fadeva":                                  0x095E,
-	"yyadeva":                                 0x095F,
-	"rrvocalicdeva":                           0x0960,
-	"llvocalicdeva":                           0x0961,
-	"lvocalicvowelsigndeva":                   0x0962,
-	"llvocalicvowelsigndeva":                  0x0963,
-	"danda":                                   0x0964,
-	"dbldanda":                                0x0965,
-	"zerodeva":                                0x0966,
-	"onedeva":                                 0x0967,
-	"twodeva":                                 0x0968,
-	"threedeva":                               0x0969,
-	"fourdeva":                                0x096A,
-	"fivedeva":                                0x096B,
-	"sixdeva":                                 0x096C,
-	"sevendeva":                               0x096D,
-	"eightdeva":                               0x096E,
-	"ninedeva":                                0x096F,
-	"abbreviationsigndeva":                    0x0970,
-	"candrabindubengali":                      0x0981,
-	"anusvarabengali":                         0x0982,
-	"visargabengali":                          0x0983,
-	"abengali":                                0x0985,
-	"aabengali":                               0x0986,
-	"ibengali":                                0x0987,
-	"iibengali":                               0x0988,
-	"ubengali":                                0x0989,
-	"uubengali":                               0x098A,
-	"rvocalicbengali":                         0x098B,
-	"lvocalicbengali":                         0x098C,
-	"ebengali":                                0x098F,
-	"aibengali":                               0x0990,
-	"obengali":                                0x0993,
-	"aubengali":                               0x0994,
-	"kabengali":                               0x0995,
-	"khabengali":                              0x0996,
-	"gabengali":                               0x0997,
-	"ghabengali":                              0x0998,
-	"ngabengali":                              0x0999,
-	"cabengali":                               0x099A,
-	"chabengali":                              0x099B,
-	"jabengali":                               0x099C,
-	"jhabengali":                              0x099D,
-	"nyabengali":                              0x099E,
-	"ttabengali":                              0x099F,
-	"tthabengali":                             0x09A0,
-	"ddabengali":                              0x09A1,
-	"ddhabengali":                             0x09A2,
-	"nnabengali":                              0x09A3,
-	"tabengali":                               0x09A4,
-	"thabengali":                              0x09A5,
-	"dabengali":                               0x09A6,
-	"dhabengali":                              0x09A7,
-	"nabengali":                               0x09A8,
-	"pabengali":                               0x09AA,
-	"phabengali":                              0x09AB,
-	"babengali":                               0x09AC,
-	"bhabengali":                              0x09AD,
-	"mabengali":                               0x09AE,
-	"yabengali":                               0x09AF,
-	"rabengali":                               0x09B0,
-	"labengali":                               0x09B2,
-	"shabengali":                              0x09B6,
-	"ssabengali":                              0x09B7,
-	"sabengali":                               0x09B8,
-	"habengali":                               0x09B9,
-	"nuktabengali":                            0x09BC,
-	"aavowelsignbengali":                      0x09BE,
-	"ivowelsignbengali":                       0x09BF,
-	"iivowelsignbengali":                      0x09C0,
-	"uvowelsignbengali":                       0x09C1,
-	"uuvowelsignbengali":                      0x09C2,
-	"rvocalicvowelsignbengali":                0x09C3,
-	"rrvocalicvowelsignbengali":               0x09C4,
-	"evowelsignbengali":                       0x09C7,
-	"aivowelsignbengali":                      0x09C8,
-	"ovowelsignbengali":                       0x09CB,
-	"auvowelsignbengali":                      0x09CC,
-	"viramabengali":                           0x09CD,
-	"aulengthmarkbengali":                     0x09D7,
-	"rrabengali":                              0x09DC,
-	"rhabengali":                              0x09DD,
-	"yyabengali":                              0x09DF,
-	"rrvocalicbengali":                        0x09E0,
-	"llvocalicbengali":                        0x09E1,
-	"lvocalicvowelsignbengali":                0x09E2,
-	"llvocalicvowelsignbengali":               0x09E3,
-	"zerobengali":                             0x09E6,
-	"onebengali":                              0x09E7,
-	"twobengali":                              0x09E8,
-	"threebengali":                            0x09E9,
-	"fourbengali":                             0x09EA,
-	"fivebengali":                             0x09EB,
-	"sixbengali":                              0x09EC,
-	"sevenbengali":                            0x09ED,
-	"eightbengali":                            0x09EE,
-	"ninebengali":                             0x09EF,
-	"ramiddlediagonalbengali":                 0x09F0,
-	"ralowerdiagonalbengali":                  0x09F1,
-	"rupeemarkbengali":                        0x09F2,
-	"rupeesignbengali":                        0x09F3,
-	"onenumeratorbengali":                     0x09F4,
-	"twonumeratorbengali":                     0x09F5,
-	"threenumeratorbengali":                   0x09F6,
-	"fournumeratorbengali":                    0x09F7,
-	"denominatorminusonenumeratorbengali":     0x09F8,
-	"sixteencurrencydenominatorbengali":       0x09F9,
-	"issharbengali":                           0x09FA,
-	"bindigurmukhi":                           0x0A02,
-	"agurmukhi":                               0x0A05,
-	"aagurmukhi":                              0x0A06,
-	"igurmukhi":                               0x0A07,
-	"iigurmukhi":                              0x0A08,
-	"ugurmukhi":                               0x0A09,
-	"uugurmukhi":                              0x0A0A,
-	"eegurmukhi":                              0x0A0F,
-	"aigurmukhi":                              0x0A10,
-	"oogurmukhi":                              0x0A13,
-	"augurmukhi":                              0x0A14,
-	"kagurmukhi":                              0x0A15,
-	"khagurmukhi":                             0x0A16,
-	"gagurmukhi":                              0x0A17,
-	"ghagurmukhi":                             0x0A18,
-	"ngagurmukhi":                             0x0A19,
-	"cagurmukhi":                              0x0A1A,
-	"chagurmukhi":                             0x0A1B,
-	"jagurmukhi":                              0x0A1C,
-	"jhagurmukhi":                             0x0A1D,
-	"nyagurmukhi":                             0x0A1E,
-	"ttagurmukhi":                             0x0A1F,
-	"tthagurmukhi":                            0x0A20,
-	"ddagurmukhi":                             0x0A21,
-	"ddhagurmukhi":                            0x0A22,
-	"nnagurmukhi":                             0x0A23,
-	"tagurmukhi":                              0x0A24,
-	"thagurmukhi":                             0x0A25,
-	"dagurmukhi":                              0x0A26,
-	"dhagurmukhi":                             0x0A27,
-	"nagurmukhi":                              0x0A28,
-	"pagurmukhi":                              0x0A2A,
-	"phagurmukhi":                             0x0A2B,
-	"bagurmukhi":                              0x0A2C,
-	"bhagurmukhi":                             0x0A2D,
-	"magurmukhi":                              0x0A2E,
-	"yagurmukhi":                              0x0A2F,
-	"ragurmukhi":                              0x0A30,
-	"lagurmukhi":                              0x0A32,
-	"vagurmukhi":                              0x0A35,
-	"shagurmukhi":                             0x0A36,
-	"sagurmukhi":                              0x0A38,
-	"hagurmukhi":                              0x0A39,
-	"nuktagurmukhi":                           0x0A3C,
-	"aamatragurmukhi":                         0x0A3E,
-	"imatragurmukhi":                          0x0A3F,
-	"iimatragurmukhi":                         0x0A40,
-	"umatragurmukhi":                          0x0A41,
-	"uumatragurmukhi":                         0x0A42,
-	"eematragurmukhi":                         0x0A47,
-	"aimatragurmukhi":                         0x0A48,
-	"oomatragurmukhi":                         0x0A4B,
-	"aumatragurmukhi":                         0x0A4C,
-	"halantgurmukhi":                          0x0A4D,
-	"khhagurmukhi":                            0x0A59,
-	"ghhagurmukhi":                            0x0A5A,
-	"zagurmukhi":                              0x0A5B,
-	"rragurmukhi":                             0x0A5C,
-	"fagurmukhi":                              0x0A5E,
-	"zerogurmukhi":                            0x0A66,
-	"onegurmukhi":                             0x0A67,
-	"twogurmukhi":                             0x0A68,
-	"threegurmukhi":                           0x0A69,
-	"fourgurmukhi":                            0x0A6A,
-	"fivegurmukhi":                            0x0A6B,
-	"sixgurmukhi":                             0x0A6C,
-	"sevengurmukhi":                           0x0A6D,
-	"eightgurmukhi":                           0x0A6E,
-	"ninegurmukhi":                            0x0A6F,
-	"tippigurmukhi":                           0x0A70,
-	"addakgurmukhi":                           0x0A71,
-	"irigurmukhi":                             0x0A72,
-	"uragurmukhi":                             0x0A73,
-	"ekonkargurmukhi":                         0x0A74,
-	"candrabindugujarati":                     0x0A81,
-	"anusvaragujarati":                        0x0A82,
-	"visargagujarati":                         0x0A83,
-	"agujarati":                               0x0A85,
-	"aagujarati":                              0x0A86,
-	"igujarati":                               0x0A87,
-	"iigujarati":                              0x0A88,
-	"ugujarati":                               0x0A89,
-	"uugujarati":                              0x0A8A,
-	"rvocalicgujarati":                        0x0A8B,
-	"ecandragujarati":                         0x0A8D,
-	"egujarati":                               0x0A8F,
-	"aigujarati":                              0x0A90,
-	"ocandragujarati":                         0x0A91,
-	"ogujarati":                               0x0A93,
-	"augujarati":                              0x0A94,
-	"kagujarati":                              0x0A95,
-	"khagujarati":                             0x0A96,
-	"gagujarati":                              0x0A97,
-	"ghagujarati":                             0x0A98,
-	"ngagujarati":                             0x0A99,
-	"cagujarati":                              0x0A9A,
-	"chagujarati":                             0x0A9B,
-	"jagujarati":                              0x0A9C,
-	"jhagujarati":                             0x0A9D,
-	"nyagujarati":                             0x0A9E,
-	"ttagujarati":                             0x0A9F,
-	"tthagujarati":                            0x0AA0,
-	"ddagujarati":                             0x0AA1,
-	"ddhagujarati":                            0x0AA2,
-	"nnagujarati":                             0x0AA3,
-	"tagujarati":                              0x0AA4,
-	"thagujarati":                             0x0AA5,
-	"dagujarati":                              0x0AA6,
-	"dhagujarati":                             0x0AA7,
-	"nagujarati":                              0x0AA8,
-	"pagujarati":                              0x0AAA,
-	"phagujarati":                             0x0AAB,
-	"bagujarati":                              0x0AAC,
-	"bhagujarati":                             0x0AAD,
-	"magujarati":                              0x0AAE,
-	"yagujarati":                              0x0AAF,
-	"ragujarati":                              0x0AB0,
-	"lagujarati":                              0x0AB2,
-	"llagujarati":                             0x0AB3,
-	"vagujarati":                              0x0AB5,
-	"shagujarati":                             0x0AB6,
-	"ssagujarati":                             0x0AB7,
-	"sagujarati":                              0x0AB8,
-	"hagujarati":                              0x0AB9,
-	"nuktagujarati":                           0x0ABC,
-	"aavowelsigngujarati":                     0x0ABE,
-	"ivowelsigngujarati":                      0x0ABF,
-	"iivowelsigngujarati":                     0x0AC0,
-	"uvowelsigngujarati":                      0x0AC1,
-	"uuvowelsigngujarati":                     0x0AC2,
-	"rvocalicvowelsigngujarati":               0x0AC3,
-	"rrvocalicvowelsigngujarati":              0x0AC4,
-	"ecandravowelsigngujarati":                0x0AC5,
-	"evowelsigngujarati":                      0x0AC7,
-	"aivowelsigngujarati":                     0x0AC8,
-	"ocandravowelsigngujarati":                0x0AC9,
-	"ovowelsigngujarati":                      0x0ACB,
-	"auvowelsigngujarati":                     0x0ACC,
-	"viramagujarati":                          0x0ACD,
-	"omgujarati":                              0x0AD0,
-	"rrvocalicgujarati":                       0x0AE0,
-	"zerogujarati":                            0x0AE6,
-	"onegujarati":                             0x0AE7,
-	"twogujarati":                             0x0AE8,
-	"threegujarati":                           0x0AE9,
-	"fourgujarati":                            0x0AEA,
-	"fivegujarati":                            0x0AEB,
-	"sixgujarati":                             0x0AEC,
-	"sevengujarati":                           0x0AED,
-	"eightgujarati":                           0x0AEE,
-	"ninegujarati":                            0x0AEF,
-	"kokaithai":                               0x0E01,
-	"khokhaithai":                             0x0E02,
-	"khokhuatthai":                            0x0E03,
-	"khokhwaithai":                            0x0E04,
-	"khokhonthai":                             0x0E05,
-	"khorakhangthai":                          0x0E06,
-	"ngonguthai":                              0x0E07,
-	"chochanthai":                             0x0E08,
-	"chochingthai":                            0x0E09,
-	"chochangthai":                            0x0E0A,
-	"sosothai":                                0x0E0B,
-	"chochoethai":                             0x0E0C,
-	"yoyingthai":                              0x0E0D,
-	"dochadathai":                             0x0E0E,
-	"topatakthai":                             0x0E0F,
-	"thothanthai":                             0x0E10,
-	"thonangmonthothai":                       0x0E11,
-	"thophuthaothai":                          0x0E12,
-	"nonenthai":                               0x0E13,
-	"dodekthai":                               0x0E14,
-	"totaothai":                               0x0E15,
-	"thothungthai":                            0x0E16,
-	"thothahanthai":                           0x0E17,
-	"thothongthai":                            0x0E18,
-	"nonuthai":                                0x0E19,
-	"bobaimaithai":                            0x0E1A,
-	"poplathai":                               0x0E1B,
-	"phophungthai":                            0x0E1C,
-	"fofathai":                                0x0E1D,
-	"phophanthai":                             0x0E1E,
-	"fofanthai":                               0x0E1F,
-	"phosamphaothai":                          0x0E20,
-	"momathai":                                0x0E21,
-	"yoyakthai":                               0x0E22,
-	"roruathai":                               0x0E23,
-	"ruthai":                                  0x0E24,
-	"lolingthai":                              0x0E25,
-	"luthai":                                  0x0E26,
-	"wowaenthai":                              0x0E27,
-	"sosalathai":                              0x0E28,
-	"sorusithai":                              0x0E29,
-	"sosuathai":                               0x0E2A,
-	"hohipthai":                               0x0E2B,
-	"lochulathai":                             0x0E2C,
-	"oangthai":                                0x0E2D,
-	"honokhukthai":                            0x0E2E,
-	"paiyannoithai":                           0x0E2F,
-	"saraathai":                               0x0E30,
-	"maihanakatthai":                          0x0E31,
-	"saraaathai":                              0x0E32,
-	"saraamthai":                              0x0E33,
-	"saraithai":                               0x0E34,
-	"saraiithai":                              0x0E35,
-	"sarauethai":                              0x0E36,
-	"saraueethai":                             0x0E37,
-	"sarauthai":                               0x0E38,
-	"sarauuthai":                              0x0E39,
-	"phinthuthai":                             0x0E3A,
-	"bahtthai":                                0x0E3F,
-	"saraethai":                               0x0E40,
-	"saraaethai":                              0x0E41,
-	"saraothai":                               0x0E42,
-	"saraaimaimuanthai":                       0x0E43,
-	"saraaimaimalaithai":                      0x0E44,
-	"lakkhangyaothai":                         0x0E45,
-	"maiyamokthai":                            0x0E46,
-	"maitaikhuthai":                           0x0E47,
-	"maiekthai":                               0x0E48,
-	"maithothai":                              0x0E49,
-	"maitrithai":                              0x0E4A,
-	"maichattawathai":                         0x0E4B,
-	"thanthakhatthai":                         0x0E4C,
-	"nikhahitthai":                            0x0E4D,
-	"yamakkanthai":                            0x0E4E,
-	"fongmanthai":                             0x0E4F,
-	"zerothai":                                0x0E50,
-	"onethai":                                 0x0E51,
-	"twothai":                                 0x0E52,
-	"threethai":                               0x0E53,
-	"fourthai":                                0x0E54,
-	"fivethai":                                0x0E55,
-	"sixthai":                                 0x0E56,
-	"seventhai":                               0x0E57,
-	"eightthai":                               0x0E58,
-	"ninethai":                                0x0E59,
-	"angkhankhuthai":                          0x0E5A,
-	"khomutthai":                              0x0E5B,
-	"Aringbelow":                              0x1E00,
-	"aringbelow":                              0x1E01,
-	"Bdotaccent":                              0x1E02,
-	"bdotaccent":                              0x1E03,
-	"Bdotbelow":                               0x1E04,
-	"bdotbelow":                               0x1E05,
-	"Blinebelow":                              0x1E06,
-	"blinebelow":                              0x1E07,
-	"Ccedillaacute":                           0x1E08,
-	"ccedillaacute":                           0x1E09,
-	"Ddotaccent":                              0x1E0A,
-	"ddotaccent":                              0x1E0B,
-	"Ddotbelow":                               0x1E0C,
-	"ddotbelow":                               0x1E0D,
-	"Dlinebelow":                              0x1E0E,
-	"dlinebelow":                              0x1E0F,
-	"Dcedilla":                                0x1E10,
-	"dcedilla":                                0x1E11,
-	"Dcircumflexbelow":                        0x1E12,
-	"dcircumflexbelow":                        0x1E13,
-	"Emacrongrave":                            0x1E14,
-	"emacrongrave":                            0x1E15,
-	"Emacronacute":                            0x1E16,
-	"emacronacute":                            0x1E17,
-	"Ecircumflexbelow":                        0x1E18,
-	"ecircumflexbelow":                        0x1E19,
-	"Etildebelow":                             0x1E1A,
-	"etildebelow":                             0x1E1B,
-	"Ecedillabreve":                           0x1E1C,
-	"ecedillabreve":                           0x1E1D,
-	"Fdotaccent":                              0x1E1E,
-	"fdotaccent":                              0x1E1F,
-	"Gmacron":                                 0x1E20,
-	"gmacron":                                 0x1E21,
-	"Hdotaccent":                              0x1E22,
-	"hdotaccent":                              0x1E23,
-	"Hdotbelow":                               0x1E24,
-	"hdotbelow":                               0x1E25,
-	"Hdieresis":                               0x1E26,
-	"hdieresis":                               0x1E27,
-	"Hcedilla":                                0x1E28,
-	"hcedilla":                                0x1E29,
-	"Hbrevebelow":                             0x1E2A,
-	"hbrevebelow":                             0x1E2B,
-	"Itildebelow":                             0x1E2C,
-	"itildebelow":                             0x1E2D,
-	"Idieresisacute":                          0x1E2E,
-	"idieresisacute":                          0x1E2F,
-	"Kacute":                                  0x1E30,
-	"kacute":                                  0x1E31,
-	"Kdotbelow":                               0x1E32,
-	"kdotbelow":                               0x1E33,
-	"Klinebelow":                              0x1E34,
-	"klinebelow":                              0x1E35,
-	"Ldotbelow":                               0x1E36,
-	"ldotbelow":                               0x1E37,
-	"Ldotbelowmacron":                         0x1E38,
-	"ldotbelowmacron":                         0x1E39,
-	"Llinebelow":                              0x1E3A,
-	"llinebelow":                              0x1E3B,
-	"Lcircumflexbelow":                        0x1E3C,
-	"lcircumflexbelow":                        0x1E3D,
-	"Macute":                                  0x1E3E,
-	"macute":                                  0x1E3F,
-	"Mdotaccent":                              0x1E40,
-	"mdotaccent":                              0x1E41,
-	"Mdotbelow":                               0x1E42,
-	"mdotbelow":                               0x1E43,
-	"Ndotaccent":                              0x1E44,
-	"ndotaccent":                              0x1E45,
-	"Ndotbelow":                               0x1E46,
-	"ndotbelow":                               0x1E47,
-	"Nlinebelow":                              0x1E48,
-	"nlinebelow":                              0x1E49,
-	"Ncircumflexbelow":                        0x1E4A,
-	"ncircumflexbelow":                        0x1E4B,
-	"Otildeacute":                             0x1E4C,
-	"otildeacute":                             0x1E4D,
-	"Otildedieresis":                          0x1E4E,
-	"otildedieresis":                          0x1E4F,
-	"Omacrongrave":                            0x1E50,
-	"omacrongrave":                            0x1E51,
-	"Omacronacute":                            0x1E52,
-	"omacronacute":                            0x1E53,
-	"Pacute":                                  0x1E54,
-	"pacute":                                  0x1E55,
-	"Pdotaccent":                              0x1E56,
-	"pdotaccent":                              0x1E57,
-	"Rdotaccent":                              0x1E58,
-	"rdotaccent":                              0x1E59,
-	"Rdotbelow":                               0x1E5A,
-	"rdotbelow":                               0x1E5B,
-	"Rdotbelowmacron":                         0x1E5C,
-	"rdotbelowmacron":                         0x1E5D,
-	"Rlinebelow":                              0x1E5E,
-	"rlinebelow":                              0x1E5F,
-	"Sdotaccent":                              0x1E60,
-	"sdotaccent":                              0x1E61,
-	"Sdotbelow":                               0x1E62,
-	"sdotbelow":                               0x1E63,
-	"Sacutedotaccent":                         0x1E64,
-	"sacutedotaccent":                         0x1E65,
-	"Scarondotaccent":                         0x1E66,
-	"scarondotaccent":                         0x1E67,
-	"Sdotbelowdotaccent":                      0x1E68,
-	"sdotbelowdotaccent":                      0x1E69,
-	"Tdotaccent":                              0x1E6A,
-	"tdotaccent":                              0x1E6B,
-	"Tdotbelow":                               0x1E6C,
-	"tdotbelow":                               0x1E6D,
-	"Tlinebelow":                              0x1E6E,
-	"tlinebelow":                              0x1E6F,
-	"Tcircumflexbelow":                        0x1E70,
-	"tcircumflexbelow":                        0x1E71,
-	"Udieresisbelow":                          0x1E72,
-	"udieresisbelow":                          0x1E73,
-	"Utildebelow":                             0x1E74,
-	"utildebelow":                             0x1E75,
-	"Ucircumflexbelow":                        0x1E76,
-	"ucircumflexbelow":                        0x1E77,
-	"Utildeacute":                             0x1E78,
-	"utildeacute":                             0x1E79,
-	"Umacrondieresis":                         0x1E7A,
-	"umacrondieresis":                         0x1E7B,
-	"Vtilde":                                  0x1E7C,
-	"vtilde":                                  0x1E7D,
-	"Vdotbelow":                               0x1E7E,
-	"vdotbelow":                               0x1E7F,
-	"Wgrave":                                  0x1E80,
-	"wgrave":                                  0x1E81,
-	"Wacute":                                  0x1E82,
-	"wacute":                                  0x1E83,
-	"Wdieresis":                               0x1E84,
-	"wdieresis":                               0x1E85,
-	"Wdotaccent":                              0x1E86,
-	"wdotaccent":                              0x1E87,
-	"Wdotbelow":                               0x1E88,
-	"wdotbelow":                               0x1E89,
-	"Xdotaccent":                              0x1E8A,
-	"xdotaccent":                              0x1E8B,
-	"Xdieresis":                               0x1E8C,
-	"xdieresis":                               0x1E8D,
-	"Ydotaccent":                              0x1E8E,
-	"ydotaccent":                              0x1E8F,
-	"Zcircumflex":                             0x1E90,
-	"zcircumflex":                             0x1E91,
-	"Zdotbelow":                               0x1E92,
-	"zdotbelow":                               0x1E93,
-	"Zlinebelow":                              0x1E94,
-	"zlinebelow":                              0x1E95,
-	"hlinebelow":                              0x1E96,
-	"tdieresis":                               0x1E97,
-	"wring":                                   0x1E98,
-	"yring":                                   0x1E99,
-	"arighthalfring":                          0x1E9A,
-	"slongdotaccent":                          0x1E9B,
-	"Adotbelow":                               0x1EA0,
-	"adotbelow":                               0x1EA1,
-	"Ahookabove":                              0x1EA2,
-	"ahookabove":                              0x1EA3,
-	"Acircumflexacute":                        0x1EA4,
-	"acircumflexacute":                        0x1EA5,
-	"Acircumflexgrave":                        0x1EA6,
-	"acircumflexgrave":                        0x1EA7,
-	"Acircumflexhookabove":                    0x1EA8,
-	"acircumflexhookabove":                    0x1EA9,
-	"Acircumflextilde":                        0x1EAA,
-	"acircumflextilde":                        0x1EAB,
-	"Acircumflexdotbelow":                     0x1EAC,
-	"acircumflexdotbelow":                     0x1EAD,
-	"Abreveacute":                             0x1EAE,
-	"abreveacute":                             0x1EAF,
-	"Abrevegrave":                             0x1EB0,
-	"abrevegrave":                             0x1EB1,
-	"Abrevehookabove":                         0x1EB2,
-	"abrevehookabove":                         0x1EB3,
-	"Abrevetilde":                             0x1EB4,
-	"abrevetilde":                             0x1EB5,
-	"Abrevedotbelow":                          0x1EB6,
-	"abrevedotbelow":                          0x1EB7,
-	"Edotbelow":                               0x1EB8,
-	"edotbelow":                               0x1EB9,
-	"Ehookabove":                              0x1EBA,
-	"ehookabove":                              0x1EBB,
-	"Etilde":                                  0x1EBC,
-	"etilde":                                  0x1EBD,
-	"Ecircumflexacute":                        0x1EBE,
-	"ecircumflexacute":                        0x1EBF,
-	"Ecircumflexgrave":                        0x1EC0,
-	"ecircumflexgrave":                        0x1EC1,
-	"Ecircumflexhookabove":                    0x1EC2,
-	"ecircumflexhookabove":                    0x1EC3,
-	"Ecircumflextilde":                        0x1EC4,
-	"ecircumflextilde":                        0x1EC5,
-	"Ecircumflexdotbelow":                     0x1EC6,
-	"ecircumflexdotbelow":                     0x1EC7,
-	"Ihookabove":                              0x1EC8,
-	"ihookabove":                              0x1EC9,
-	"Idotbelow":                               0x1ECA,
-	"idotbelow":                               0x1ECB,
-	"Odotbelow":                               0x1ECC,
-	"odotbelow":                               0x1ECD,
-	"Ohookabove":                              0x1ECE,
-	"ohookabove":                              0x1ECF,
-	"Ocircumflexacute":                        0x1ED0,
-	"ocircumflexacute":                        0x1ED1,
-	"Ocircumflexgrave":                        0x1ED2,
-	"ocircumflexgrave":                        0x1ED3,
-	"Ocircumflexhookabove":                    0x1ED4,
-	"ocircumflexhookabove":                    0x1ED5,
-	"Ocircumflextilde":                        0x1ED6,
-	"ocircumflextilde":                        0x1ED7,
-	"Ocircumflexdotbelow":                     0x1ED8,
-	"ocircumflexdotbelow":                     0x1ED9,
-	"Ohornacute":                              0x1EDA,
-	"ohornacute":                              0x1EDB,
-	"Ohorngrave":                              0x1EDC,
-	"ohorngrave":                              0x1EDD,
-	"Ohornhookabove":                          0x1EDE,
-	"ohornhookabove":                          0x1EDF,
-	"Ohorntilde":                              0x1EE0,
-	"ohorntilde":                              0x1EE1,
-	"Ohorndotbelow":                           0x1EE2,
-	"ohorndotbelow":                           0x1EE3,
-	"Udotbelow":                               0x1EE4,
-	"udotbelow":                               0x1EE5,
-	"Uhookabove":                              0x1EE6,
-	"uhookabove":                              0x1EE7,
-	"Uhornacute":                              0x1EE8,
-	"uhornacute":                              0x1EE9,
-	"Uhorngrave":                              0x1EEA,
-	"uhorngrave":                              0x1EEB,
-	"Uhornhookabove":                          0x1EEC,
-	"uhornhookabove":                          0x1EED,
-	"Uhorntilde":                              0x1EEE,
-	"uhorntilde":                              0x1EEF,
-	"Uhorndotbelow":                           0x1EF0,
-	"uhorndotbelow":                           0x1EF1,
-	"Ygrave":                                  0x1EF2,
-	"ygrave":                                  0x1EF3,
-	"Ydotbelow":                               0x1EF4,
-	"ydotbelow":                               0x1EF5,
-	"Yhookabove":                              0x1EF6,
-	"yhookabove":                              0x1EF7,
-	"Ytilde":                                  0x1EF8,
-	"ytilde":                                  0x1EF9,
-	"zerowidthspace":                          0x200B,
-	"hyphentwo":                               0x2010,
-	"figuredash":                              0x2012,
-	"afii00208":                               0x2015,
-	"horizontalbar":                           0x2015,
-	"dblverticalbar":                          0x2016,
-	"dbllowline":                              0x2017,
-	"underscoredbl":                           0x2017,
-	"quoteleftreversed":                       0x201B,
-	"quotereversed":                           0x201B,
-	"onedotenleader":                          0x2024,
-	"twodotenleader":                          0x2025,
-	"twodotleader":                            0x2025,
-	"afii61573":                               0x202C,
-	"afii61574":                               0x202D,
-	"afii61575":                               0x202E,
-	"primereversed":                           0x2035,
-	"referencemark":                           0x203B,
-	"exclamdbl":                               0x203C,
-	"asterism":                                0x2042,
-	"zerosuperior":                            0x2070,
-	"foursuperior":                            0x2074,
-	"fivesuperior":                            0x2075,
-	"sixsuperior":                             0x2076,
-	"sevensuperior":                           0x2077,
-	"eightsuperior":                           0x2078,
-	"ninesuperior":                            0x2079,
-	"plussuperior":                            0x207A,
-	"equalsuperior":                           0x207C,
-	"parenleftsuperior":                       0x207D,
-	"parenrightsuperior":                      0x207E,
-	"nsuperior":                               0x207F,
-	"zeroinferior":                            0x2080,
-	"oneinferior":                             0x2081,
-	"twoinferior":                             0x2082,
-	"threeinferior":                           0x2083,
-	"fourinferior":                            0x2084,
-	"fiveinferior":                            0x2085,
-	"sixinferior":                             0x2086,
-	"seveninferior":                           0x2087,
-	"eightinferior":                           0x2088,
-	"nineinferior":                            0x2089,
-	"parenleftinferior":                       0x208D,
-	"parenrightinferior":                      0x208E,
-	"colonmonetary":                           0x20A1,
-	"colonsign":                               0x20A1,
-	"cruzeiro":                                0x20A2,
-	"franc":                                   0x20A3,
-	"afii08941":                               0x20A4,
-	"lira":                                    0x20A4,
-	"peseta":                                  0x20A7,
-	"won":                                     0x20A9,
-	"afii57636":                               0x20AA,
-	"newsheqelsign":                           0x20AA,
-	"sheqel":                                  0x20AA,
-	"sheqelhebrew":                            0x20AA,
-	"dong":                                    0x20AB,
-	"centigrade":                              0x2103,
-	"afii61248":                               0x2105,
-	"careof":                                  0x2105,
-	"fahrenheit":                              0x2109,
-	"afii61289":                               0x2113,
-	"lsquare":                                 0x2113,
-	"afii61352":                               0x2116,
-	"numero":                                  0x2116,
-	"prescription":                            0x211E,
-	"telephone":                               0x2121,
-	"Ohm":                                     0x2126,
-	"Omega":                                   0x2126,
-	"angstrom":                                0x212B,
-	"estimated":                               0x212E,
-	"onethird":                                0x2153,
-	"twothirds":                               0x2154,
-	"oneeighth":                               0x215B,
-	"threeeighths":                            0x215C,
-	"fiveeighths":                             0x215D,
-	"seveneighths":                            0x215E,
-	"Oneroman":                                0x2160,
-	"Tworoman":                                0x2161,
-	"Threeroman":                              0x2162,
-	"Fourroman":                               0x2163,
-	"Fiveroman":                               0x2164,
-	"Sixroman":                                0x2165,
-	"Sevenroman":                              0x2166,
-	"Eightroman":                              0x2167,
-	"Nineroman":                               0x2168,
-	"Tenroman":                                0x2169,
-	"Elevenroman":                             0x216A,
-	"Twelveroman":                             0x216B,
-	"oneroman":                                0x2170,
-	"tworoman":                                0x2171,
-	"threeroman":                              0x2172,
-	"fourroman":                               0x2173,
-	"fiveroman":                               0x2174,
-	"sixroman":                                0x2175,
-	"sevenroman":                              0x2176,
-	"eightroman":                              0x2177,
-	"nineroman":                               0x2178,
-	"tenroman":                                0x2179,
-	"elevenroman":                             0x217A,
-	"twelveroman":                             0x217B,
-	"arrowupdn":                               0x2195,
-	"arrowupleft":                             0x2196,
-	"arrowupright":                            0x2197,
-	"arrowdownright":                          0x2198,
-	"arrowdownleft":                           0x2199,
-	"arrowupdnbse":                            0x21A8,
-	"arrowupdownbase":                         0x21A8,
-	"harpoonleftbarbup":                       0x21BC,
-	"harpoonrightbarbup":                      0x21C0,
-	"arrowrightoverleft":                      0x21C4,
-	"arrowupleftofdown":                       0x21C5,
-	"arrowleftoverright":                      0x21C6,
-	"arrowleftdblstroke":                      0x21CD,
-	"arrowrightdblstroke":                     0x21CF,
-	"pageup":                                  0x21DE,
-	"pagedown":                                0x21DF,
-	"arrowdashleft":                           0x21E0,
-	"arrowdashup":                             0x21E1,
-	"arrowdashright":                          0x21E2,
-	"arrowdashdown":                           0x21E3,
-	"arrowtableft":                            0x21E4,
-	"arrowtabright":                           0x21E5,
-	"arrowleftwhite":                          0x21E6,
-	"arrowupwhite":                            0x21E7,
-	"arrowrightwhite":                         0x21E8,
-	"arrowdownwhite":                          0x21E9,
-	"capslock":                                0x21EA,
-	"Delta":                                   0x2206,
-	"increment":                               0x2206,
-	"notcontains":                             0x220C,
-	"minusplus":                               0x2213,
-	"divisionslash":                           0x2215,
-	"bulletoperator":                          0x2219,
-	"orthogonal":                              0x221F,
-	"rightangle":                              0x221F,
-	"divides":                                 0x2223,
-	"parallel":                                0x2225,
-	"notparallel":                             0x2226,
-	"dblintegral":                             0x222C,
-	"contourintegral":                         0x222E,
-	"because":                                 0x2235,
-	"ratio":                                   0x2236,
-	"proportion":                              0x2237,
-	"reversedtilde":                           0x223D,
-	"asymptoticallyequal":                     0x2243,
-	"allequal":                                0x224C,
-	"approaches":                              0x2250,
-	"geometricallyequal":                      0x2251,
-	"approxequalorimage":                      0x2252,
-	"imageorapproximatelyequal":               0x2253,
-	"notidentical":                            0x2262,
-	"lessoverequal":                           0x2266,
-	"greateroverequal":                        0x2267,
-	"muchless":                                0x226A,
-	"muchgreater":                             0x226B,
-	"notless":                                 0x226E,
-	"notgreater":                              0x226F,
-	"notlessnorequal":                         0x2270,
-	"notgreaternorequal":                      0x2271,
-	"lessorequivalent":                        0x2272,
-	"greaterorequivalent":                     0x2273,
-	"lessorgreater":                           0x2276,
-	"greaterorless":                           0x2277,
-	"notgreaternorless":                       0x2279,
-	"precedes":                                0x227A,
-	"succeeds":                                0x227B,
-	"notprecedes":                             0x2280,
-	"notsucceeds":                             0x2281,
-	"notsuperset":                             0x2285,
-	"subsetnotequal":                          0x228A,
-	"supersetnotequal":                        0x228B,
-	"minuscircle":                             0x2296,
-	"circleot":                                0x2299,
-	"tackleft":                                0x22A3,
-	"tackdown":                                0x22A4,
-	"righttriangle":                           0x22BF,
-	"curlyor":                                 0x22CE,
-	"curlyand":                                0x22CF,
-	"lessequalorgreater":                      0x22DA,
-	"greaterequalorless":                      0x22DB,
-	"ellipsisvertical":                        0x22EE,
-	"house":                                   0x2302,
-	"control":                                 0x2303,
-	"projective":                              0x2305,
-	"logicalnotreversed":                      0x2310,
-	"revlogicalnot":                           0x2310,
-	"arc":                                     0x2312,
-	"propellor":                               0x2318,
-	"integraltop":                             0x2320,
-	"integraltp":                              0x2320,
-	"integralbottom":                          0x2321,
-	"integralbt":                              0x2321,
-	"option":                                  0x2325,
-	"deleteright":                             0x2326,
-	"clear":                                   0x2327,
-	"deleteleft":                              0x232B,
-	"blank":                                   0x2423,
-	"onecircle":                               0x2460,
-	"twocircle":                               0x2461,
-	"threecircle":                             0x2462,
-	"fourcircle":                              0x2463,
-	"fivecircle":                              0x2464,
-	"sixcircle":                               0x2465,
-	"sevencircle":                             0x2466,
-	"eightcircle":                             0x2467,
-	"ninecircle":                              0x2468,
-	"tencircle":                               0x2469,
-	"elevencircle":                            0x246A,
-	"twelvecircle":                            0x246B,
-	"thirteencircle":                          0x246C,
-	"fourteencircle":                          0x246D,
-	"fifteencircle":                           0x246E,
-	"sixteencircle":                           0x246F,
-	"seventeencircle":                         0x2470,
-	"eighteencircle":                          0x2471,
-	"nineteencircle":                          0x2472,
-	"twentycircle":                            0x2473,
-	"oneparen":                                0x2474,
-	"twoparen":                                0x2475,
-	"threeparen":                              0x2476,
-	"fourparen":                               0x2477,
-	"fiveparen":                               0x2478,
-	"sixparen":                                0x2479,
-	"sevenparen":                              0x247A,
-	"eightparen":                              0x247B,
-	"nineparen":                               0x247C,
-	"tenparen":                                0x247D,
-	"elevenparen":                             0x247E,
-	"twelveparen":                             0x247F,
-	"thirteenparen":                           0x2480,
-	"fourteenparen":                           0x2481,
-	"fifteenparen":                            0x2482,
-	"sixteenparen":                            0x2483,
-	"seventeenparen":                          0x2484,
-	"eighteenparen":                           0x2485,
-	"nineteenparen":                           0x2486,
-	"twentyparen":                             0x2487,
-	"oneperiod":                               0x2488,
-	"twoperiod":                               0x2489,
-	"threeperiod":                             0x248A,
-	"fourperiod":                              0x248B,
-	"fiveperiod":                              0x248C,
-	"sixperiod":                               0x248D,
-	"sevenperiod":                             0x248E,
-	"eightperiod":                             0x248F,
-	"nineperiod":                              0x2490,
-	"tenperiod":                               0x2491,
-	"elevenperiod":                            0x2492,
-	"twelveperiod":                            0x2493,
-	"thirteenperiod":                          0x2494,
-	"fourteenperiod":                          0x2495,
-	"fifteenperiod":                           0x2496,
-	"sixteenperiod":                           0x2497,
-	"seventeenperiod":                         0x2498,
-	"eighteenperiod":                          0x2499,
-	"nineteenperiod":                          0x249A,
-	"twentyperiod":                            0x249B,
-	"aparen":                                  0x249C,
-	"bparen":                                  0x249D,
-	"cparen":                                  0x249E,
-	"dparen":                                  0x249F,
-	"eparen":                                  0x24A0,
-	"fparen":                                  0x24A1,
-	"gparen":                                  0x24A2,
-	"hparen":                                  0x24A3,
-	"iparen":                                  0x24A4,
-	"jparen":                                  0x24A5,
-	"kparen":                                  0x24A6,
-	"lparen":                                  0x24A7,
-	"mparen":                                  0x24A8,
-	"nparen":                                  0x24A9,
-	"oparen":                                  0x24AA,
-	"pparen":                                  0x24AB,
-	"qparen":                                  0x24AC,
-	"rparen":                                  0x24AD,
-	"sparen":                                  0x24AE,
-	"tparen":                                  0x24AF,
-	"uparen":                                  0x24B0,
-	"vparen":                                  0x24B1,
-	"wparen":                                  0x24B2,
-	"xparen":                                  0x24B3,
-	"yparen":                                  0x24B4,
-	"zparen":                                  0x24B5,
-	"Acircle":                                 0x24B6,
-	"Bcircle":                                 0x24B7,
-	"Ccircle":                                 0x24B8,
-	"Dcircle":                                 0x24B9,
-	"Ecircle":                                 0x24BA,
-	"Fcircle":                                 0x24BB,
-	"Gcircle":                                 0x24BC,
-	"Hcircle":                                 0x24BD,
-	"Icircle":                                 0x24BE,
-	"Jcircle":                                 0x24BF,
-	"Kcircle":                                 0x24C0,
-	"Lcircle":                                 0x24C1,
-	"Mcircle":                                 0x24C2,
-	"Ncircle":                                 0x24C3,
-	"Ocircle":                                 0x24C4,
-	"Pcircle":                                 0x24C5,
-	"Qcircle":                                 0x24C6,
-	"Rcircle":                                 0x24C7,
-	"Scircle":                                 0x24C8,
-	"Tcircle":                                 0x24C9,
-	"Ucircle":                                 0x24CA,
-	"Vcircle":                                 0x24CB,
-	"Wcircle":                                 0x24CC,
-	"Xcircle":                                 0x24CD,
-	"Ycircle":                                 0x24CE,
-	"Zcircle":                                 0x24CF,
-	"acircle":                                 0x24D0,
-	"bcircle":                                 0x24D1,
-	"ccircle":                                 0x24D2,
-	"dcircle":                                 0x24D3,
-	"ecircle":                                 0x24D4,
-	"fcircle":                                 0x24D5,
-	"gcircle":                                 0x24D6,
-	"hcircle":                                 0x24D7,
-	"icircle":                                 0x24D8,
-	"jcircle":                                 0x24D9,
-	"kcircle":                                 0x24DA,
-	"lcircle":                                 0x24DB,
-	"mcircle":                                 0x24DC,
-	"ncircle":                                 0x24DD,
-	"ocircle":                                 0x24DE,
-	"pcircle":                                 0x24DF,
-	"qcircle":                                 0x24E0,
-	"rcircle":                                 0x24E1,
-	"scircle":                                 0x24E2,
-	"tcircle":                                 0x24E3,
-	"ucircle":                                 0x24E4,
-	"vcircle":                                 0x24E5,
-	"wcircle":                                 0x24E6,
-	"xcircle":                                 0x24E7,
-	"ycircle":                                 0x24E8,
-	"zcircle":                                 0x24E9,
-	"SF100000":                                0x2500,
-	"SF110000":                                0x2502,
-	"SF010000":                                0x250C,
-	"SF030000":                                0x2510,
-	"SF020000":                                0x2514,
-	"SF040000":                                0x2518,
-	"SF080000":                                0x251C,
-	"SF090000":                                0x2524,
-	"SF060000":                                0x252C,
-	"SF070000":                                0x2534,
-	"SF050000":                                0x253C,
-	"SF430000":                                0x2550,
-	"SF240000":                                0x2551,
-	"SF510000":                                0x2552,
-	"SF520000":                                0x2553,
-	"SF390000":                                0x2554,
-	"SF220000":                                0x2555,
-	"SF210000":                                0x2556,
-	"SF250000":                                0x2557,
-	"SF500000":                                0x2558,
-	"SF490000":                                0x2559,
-	"SF380000":                                0x255A,
-	"SF280000":                                0x255B,
-	"SF270000":                                0x255C,
-	"SF260000":                                0x255D,
-	"SF360000":                                0x255E,
-	"SF370000":                                0x255F,
-	"SF420000":                                0x2560,
-	"SF190000":                                0x2561,
-	"SF200000":                                0x2562,
-	"SF230000":                                0x2563,
-	"SF470000":                                0x2564,
-	"SF480000":                                0x2565,
-	"SF410000":                                0x2566,
-	"SF450000":                                0x2567,
-	"SF460000":                                0x2568,
-	"SF400000":                                0x2569,
-	"SF540000":                                0x256A,
-	"SF530000":                                0x256B,
-	"SF440000":                                0x256C,
-	"upblock":                                 0x2580,
-	"dnblock":                                 0x2584,
-	"block":                                   0x2588,
-	"lfblock":                                 0x258C,
-	"rtblock":                                 0x2590,
-	"ltshade":                                 0x2591,
-	"shadelight":                              0x2591,
-	"shade":                                   0x2592,
-	"shademedium":                             0x2592,
-	"dkshade":                                 0x2593,
-	"shadedark":                               0x2593,
-	"blacksquare":                             0x25A0,
-	"filledbox":                               0x25A0,
-	"H22073":                                  0x25A1,
-	"whitesquare":                             0x25A1,
-	"squarewhitewithsmallblack":               0x25A3,
-	"squarehorizontalfill":                    0x25A4,
-	"squareverticalfill":                      0x25A5,
-	"squareorthogonalcrosshatchfill":          0x25A6,
-	"squareupperlefttolowerrightfill":         0x25A7,
-	"squareupperrighttolowerleftfill":         0x25A8,
-	"squarediagonalcrosshatchfill":            0x25A9,
-	"H18543":                                  0x25AA,
-	"blacksmallsquare":                        0x25AA,
-	"H18551":                                  0x25AB,
-	"whitesmallsquare":                        0x25AB,
-	"blackrectangle":                          0x25AC,
-	"filledrect":                              0x25AC,
-	"blackuppointingtriangle":                 0x25B2,
-	"triagup":                                 0x25B2,
-	"whiteuppointingtriangle":                 0x25B3,
-	"blackuppointingsmalltriangle":            0x25B4,
-	"whiteuppointingsmalltriangle":            0x25B5,
-	"blackrightpointingtriangle":              0x25B6,
-	"whiterightpointingtriangle":              0x25B7,
-	"whiterightpointingsmalltriangle":         0x25B9,
-	"blackrightpointingpointer":               0x25BA,
-	"triagrt":                                 0x25BA,
-	"blackdownpointingtriangle":               0x25BC,
-	"triagdn":                                 0x25BC,
-	"whitedownpointingtriangle":               0x25BD,
-	"whitedownpointingsmalltriangle":          0x25BF,
-	"blackleftpointingtriangle":               0x25C0,
-	"whiteleftpointingtriangle":               0x25C1,
-	"whiteleftpointingsmalltriangle":          0x25C3,
-	"blackleftpointingpointer":                0x25C4,
-	"triaglf":                                 0x25C4,
-	"blackdiamond":                            0x25C6,
-	"whitediamond":                            0x25C7,
-	"whitediamondcontainingblacksmalldiamond": 0x25C8,
-	"fisheye":                     0x25C9,
-	"circle":                      0x25CB,
-	"whitecircle":                 0x25CB,
-	"dottedcircle":                0x25CC,
-	"bullseye":                    0x25CE,
-	"H18533":                      0x25CF,
-	"blackcircle":                 0x25CF,
-	"circlewithlefthalfblack":     0x25D0,
-	"circlewithrighthalfblack":    0x25D1,
-	"bulletinverse":               0x25D8,
-	"invbullet":                   0x25D8,
-	"invcircle":                   0x25D9,
-	"whitecircleinverse":          0x25D9,
-	"blacklowerrighttriangle":     0x25E2,
-	"blacklowerlefttriangle":      0x25E3,
-	"blackupperlefttriangle":      0x25E4,
-	"blackupperrighttriangle":     0x25E5,
-	"openbullet":                  0x25E6,
-	"whitebullet":                 0x25E6,
-	"largecircle":                 0x25EF,
-	"blackstar":                   0x2605,
-	"whitestar":                   0x2606,
-	"telephoneblack":              0x260E,
-	"whitetelephone":              0x260F,
-	"pointingindexleftwhite":      0x261C,
-	"pointingindexupwhite":        0x261D,
-	"pointingindexrightwhite":     0x261E,
-	"pointingindexdownwhite":      0x261F,
-	"yinyang":                     0x262F,
-	"smileface":                   0x263A,
-	"whitesmilingface":            0x263A,
-	"blacksmilingface":            0x263B,
-	"invsmileface":                0x263B,
-	"compass":                     0x263C,
-	"sun":                         0x263C,
-	"female":                      0x2640,
-	"venus":                       0x2640,
-	"earth":                       0x2641,
-	"male":                        0x2642,
-	"mars":                        0x2642,
-	"heartsuitwhite":              0x2661,
-	"diamondsuitwhite":            0x2662,
-	"spadesuitwhite":              0x2664,
-	"clubsuitwhite":               0x2667,
-	"hotsprings":                  0x2668,
-	"quarternote":                 0x2669,
-	"musicalnote":                 0x266A,
-	"eighthnotebeamed":            0x266B,
-	"musicalnotedbl":              0x266B,
-	"beamedsixteenthnotes":        0x266C,
-	"musicflatsign":               0x266D,
-	"musicsharpsign":              0x266F,
-	"checkmark":                   0x2713,
-	"onecircleinversesansserif":   0x278A,
-	"twocircleinversesansserif":   0x278B,
-	"threecircleinversesansserif": 0x278C,
-	"fourcircleinversesansserif":  0x278D,
-	"fivecircleinversesansserif":  0x278E,
-	"sixcircleinversesansserif":   0x278F,
-	"sevencircleinversesansserif": 0x2790,
-	"eightcircleinversesansserif": 0x2791,
-	"ninecircleinversesansserif":  0x2792,
-	"arrowrightheavy":             0x279E,
-	"ideographicspace":            0x3000,
-	"ideographiccomma":            0x3001,
-	"ideographicperiod":           0x3002,
-	"dittomark":                   0x3003,
-	"jis":                         0x3004,
-	"ideographiciterationmark":            0x3005,
-	"ideographicclose":                    0x3006,
-	"ideographiczero":                     0x3007,
-	"anglebracketleft":                    0x3008,
-	"anglebracketright":                   0x3009,
-	"dblanglebracketleft":                 0x300A,
-	"dblanglebracketright":                0x300B,
-	"cornerbracketleft":                   0x300C,
-	"cornerbracketright":                  0x300D,
-	"whitecornerbracketleft":              0x300E,
-	"whitecornerbracketright":             0x300F,
-	"blacklenticularbracketleft":          0x3010,
-	"blacklenticularbracketright":         0x3011,
-	"postalmark":                          0x3012,
-	"getamark":                            0x3013,
-	"tortoiseshellbracketleft":            0x3014,
-	"tortoiseshellbracketright":           0x3015,
-	"whitelenticularbracketleft":          0x3016,
-	"whitelenticularbracketright":         0x3017,
-	"whitetortoiseshellbracketleft":       0x3018,
-	"whitetortoiseshellbracketright":      0x3019,
-	"wavedash":                            0x301C,
-	"quotedblprimereversed":               0x301D,
-	"quotedblprime":                       0x301E,
-	"postalmarkface":                      0x3020,
-	"onehangzhou":                         0x3021,
-	"twohangzhou":                         0x3022,
-	"threehangzhou":                       0x3023,
-	"fourhangzhou":                        0x3024,
-	"fivehangzhou":                        0x3025,
-	"sixhangzhou":                         0x3026,
-	"sevenhangzhou":                       0x3027,
-	"eighthangzhou":                       0x3028,
-	"ninehangzhou":                        0x3029,
-	"circlepostalmark":                    0x3036,
-	"asmallhiragana":                      0x3041,
-	"ahiragana":                           0x3042,
-	"ismallhiragana":                      0x3043,
-	"ihiragana":                           0x3044,
-	"usmallhiragana":                      0x3045,
-	"uhiragana":                           0x3046,
-	"esmallhiragana":                      0x3047,
-	"ehiragana":                           0x3048,
-	"osmallhiragana":                      0x3049,
-	"ohiragana":                           0x304A,
-	"kahiragana":                          0x304B,
-	"gahiragana":                          0x304C,
-	"kihiragana":                          0x304D,
-	"gihiragana":                          0x304E,
-	"kuhiragana":                          0x304F,
-	"guhiragana":                          0x3050,
-	"kehiragana":                          0x3051,
-	"gehiragana":                          0x3052,
-	"kohiragana":                          0x3053,
-	"gohiragana":                          0x3054,
-	"sahiragana":                          0x3055,
-	"zahiragana":                          0x3056,
-	"sihiragana":                          0x3057,
-	"zihiragana":                          0x3058,
-	"suhiragana":                          0x3059,
-	"zuhiragana":                          0x305A,
-	"sehiragana":                          0x305B,
-	"zehiragana":                          0x305C,
-	"sohiragana":                          0x305D,
-	"zohiragana":                          0x305E,
-	"tahiragana":                          0x305F,
-	"dahiragana":                          0x3060,
-	"tihiragana":                          0x3061,
-	"dihiragana":                          0x3062,
-	"tusmallhiragana":                     0x3063,
-	"tuhiragana":                          0x3064,
-	"duhiragana":                          0x3065,
-	"tehiragana":                          0x3066,
-	"dehiragana":                          0x3067,
-	"tohiragana":                          0x3068,
-	"dohiragana":                          0x3069,
-	"nahiragana":                          0x306A,
-	"nihiragana":                          0x306B,
-	"nuhiragana":                          0x306C,
-	"nehiragana":                          0x306D,
-	"nohiragana":                          0x306E,
-	"hahiragana":                          0x306F,
-	"bahiragana":                          0x3070,
-	"pahiragana":                          0x3071,
-	"hihiragana":                          0x3072,
-	"bihiragana":                          0x3073,
-	"pihiragana":                          0x3074,
-	"huhiragana":                          0x3075,
-	"buhiragana":                          0x3076,
-	"puhiragana":                          0x3077,
-	"hehiragana":                          0x3078,
-	"behiragana":                          0x3079,
-	"pehiragana":                          0x307A,
-	"hohiragana":                          0x307B,
-	"bohiragana":                          0x307C,
-	"pohiragana":                          0x307D,
-	"mahiragana":                          0x307E,
-	"mihiragana":                          0x307F,
-	"muhiragana":                          0x3080,
-	"mehiragana":                          0x3081,
-	"mohiragana":                          0x3082,
-	"yasmallhiragana":                     0x3083,
-	"yahiragana":                          0x3084,
-	"yusmallhiragana":                     0x3085,
-	"yuhiragana":                          0x3086,
-	"yosmallhiragana":                     0x3087,
-	"yohiragana":                          0x3088,
-	"rahiragana":                          0x3089,
-	"rihiragana":                          0x308A,
-	"ruhiragana":                          0x308B,
-	"rehiragana":                          0x308C,
-	"rohiragana":                          0x308D,
-	"wasmallhiragana":                     0x308E,
-	"wahiragana":                          0x308F,
-	"wihiragana":                          0x3090,
-	"wehiragana":                          0x3091,
-	"wohiragana":                          0x3092,
-	"nhiragana":                           0x3093,
-	"vuhiragana":                          0x3094,
-	"voicedmarkkana":                      0x309B,
-	"semivoicedmarkkana":                  0x309C,
-	"iterationhiragana":                   0x309D,
-	"voicediterationhiragana":             0x309E,
-	"asmallkatakana":                      0x30A1,
-	"akatakana":                           0x30A2,
-	"ismallkatakana":                      0x30A3,
-	"ikatakana":                           0x30A4,
-	"usmallkatakana":                      0x30A5,
-	"ukatakana":                           0x30A6,
-	"esmallkatakana":                      0x30A7,
-	"ekatakana":                           0x30A8,
-	"osmallkatakana":                      0x30A9,
-	"okatakana":                           0x30AA,
-	"kakatakana":                          0x30AB,
-	"gakatakana":                          0x30AC,
-	"kikatakana":                          0x30AD,
-	"gikatakana":                          0x30AE,
-	"kukatakana":                          0x30AF,
-	"gukatakana":                          0x30B0,
-	"kekatakana":                          0x30B1,
-	"gekatakana":                          0x30B2,
-	"kokatakana":                          0x30B3,
-	"gokatakana":                          0x30B4,
-	"sakatakana":                          0x30B5,
-	"zakatakana":                          0x30B6,
-	"sikatakana":                          0x30B7,
-	"zikatakana":                          0x30B8,
-	"sukatakana":                          0x30B9,
-	"zukatakana":                          0x30BA,
-	"sekatakana":                          0x30BB,
-	"zekatakana":                          0x30BC,
-	"sokatakana":                          0x30BD,
-	"zokatakana":                          0x30BE,
-	"takatakana":                          0x30BF,
-	"dakatakana":                          0x30C0,
-	"tikatakana":                          0x30C1,
-	"dikatakana":                          0x30C2,
-	"tusmallkatakana":                     0x30C3,
-	"tukatakana":                          0x30C4,
-	"dukatakana":                          0x30C5,
-	"tekatakana":                          0x30C6,
-	"dekatakana":                          0x30C7,
-	"tokatakana":                          0x30C8,
-	"dokatakana":                          0x30C9,
-	"nakatakana":                          0x30CA,
-	"nikatakana":                          0x30CB,
-	"nukatakana":                          0x30CC,
-	"nekatakana":                          0x30CD,
-	"nokatakana":                          0x30CE,
-	"hakatakana":                          0x30CF,
-	"bakatakana":                          0x30D0,
-	"pakatakana":                          0x30D1,
-	"hikatakana":                          0x30D2,
-	"bikatakana":                          0x30D3,
-	"pikatakana":                          0x30D4,
-	"hukatakana":                          0x30D5,
-	"bukatakana":                          0x30D6,
-	"pukatakana":                          0x30D7,
-	"hekatakana":                          0x30D8,
-	"bekatakana":                          0x30D9,
-	"pekatakana":                          0x30DA,
-	"hokatakana":                          0x30DB,
-	"bokatakana":                          0x30DC,
-	"pokatakana":                          0x30DD,
-	"makatakana":                          0x30DE,
-	"mikatakana":                          0x30DF,
-	"mukatakana":                          0x30E0,
-	"mekatakana":                          0x30E1,
-	"mokatakana":                          0x30E2,
-	"yasmallkatakana":                     0x30E3,
-	"yakatakana":                          0x30E4,
-	"yusmallkatakana":                     0x30E5,
-	"yukatakana":                          0x30E6,
-	"yosmallkatakana":                     0x30E7,
-	"yokatakana":                          0x30E8,
-	"rakatakana":                          0x30E9,
-	"rikatakana":                          0x30EA,
-	"rukatakana":                          0x30EB,
-	"rekatakana":                          0x30EC,
-	"rokatakana":                          0x30ED,
-	"wasmallkatakana":                     0x30EE,
-	"wakatakana":                          0x30EF,
-	"wikatakana":                          0x30F0,
-	"wekatakana":                          0x30F1,
-	"wokatakana":                          0x30F2,
-	"nkatakana":                           0x30F3,
-	"vukatakana":                          0x30F4,
-	"kasmallkatakana":                     0x30F5,
-	"kesmallkatakana":                     0x30F6,
-	"vakatakana":                          0x30F7,
-	"vikatakana":                          0x30F8,
-	"vekatakana":                          0x30F9,
-	"vokatakana":                          0x30FA,
-	"dotkatakana":                         0x30FB,
-	"prolongedkana":                       0x30FC,
-	"iterationkatakana":                   0x30FD,
-	"voicediterationkatakana":             0x30FE,
-	"bbopomofo":                           0x3105,
-	"pbopomofo":                           0x3106,
-	"mbopomofo":                           0x3107,
-	"fbopomofo":                           0x3108,
-	"dbopomofo":                           0x3109,
-	"tbopomofo":                           0x310A,
-	"nbopomofo":                           0x310B,
-	"lbopomofo":                           0x310C,
-	"gbopomofo":                           0x310D,
-	"kbopomofo":                           0x310E,
-	"hbopomofo":                           0x310F,
-	"jbopomofo":                           0x3110,
-	"qbopomofo":                           0x3111,
-	"xbopomofo":                           0x3112,
-	"zhbopomofo":                          0x3113,
-	"chbopomofo":                          0x3114,
-	"shbopomofo":                          0x3115,
-	"rbopomofo":                           0x3116,
-	"zbopomofo":                           0x3117,
-	"cbopomofo":                           0x3118,
-	"sbopomofo":                           0x3119,
-	"abopomofo":                           0x311A,
-	"obopomofo":                           0x311B,
-	"ebopomofo":                           0x311C,
-	"ehbopomofo":                          0x311D,
-	"aibopomofo":                          0x311E,
-	"eibopomofo":                          0x311F,
-	"aubopomofo":                          0x3120,
-	"oubopomofo":                          0x3121,
-	"anbopomofo":                          0x3122,
-	"enbopomofo":                          0x3123,
-	"angbopomofo":                         0x3124,
-	"engbopomofo":                         0x3125,
-	"erbopomofo":                          0x3126,
-	"ibopomofo":                           0x3127,
-	"ubopomofo":                           0x3128,
-	"iubopomofo":                          0x3129,
-	"kiyeokkorean":                        0x3131,
-	"ssangkiyeokkorean":                   0x3132,
-	"kiyeoksioskorean":                    0x3133,
-	"nieunkorean":                         0x3134,
-	"nieuncieuckorean":                    0x3135,
-	"nieunhieuhkorean":                    0x3136,
-	"tikeutkorean":                        0x3137,
-	"ssangtikeutkorean":                   0x3138,
-	"rieulkorean":                         0x3139,
-	"rieulkiyeokkorean":                   0x313A,
-	"rieulmieumkorean":                    0x313B,
-	"rieulpieupkorean":                    0x313C,
-	"rieulsioskorean":                     0x313D,
-	"rieulthieuthkorean":                  0x313E,
-	"rieulphieuphkorean":                  0x313F,
-	"rieulhieuhkorean":                    0x3140,
-	"mieumkorean":                         0x3141,
-	"pieupkorean":                         0x3142,
-	"ssangpieupkorean":                    0x3143,
-	"pieupsioskorean":                     0x3144,
-	"sioskorean":                          0x3145,
-	"ssangsioskorean":                     0x3146,
-	"ieungkorean":                         0x3147,
-	"cieuckorean":                         0x3148,
-	"ssangcieuckorean":                    0x3149,
-	"chieuchkorean":                       0x314A,
-	"khieukhkorean":                       0x314B,
-	"thieuthkorean":                       0x314C,
-	"phieuphkorean":                       0x314D,
-	"hieuhkorean":                         0x314E,
-	"akorean":                             0x314F,
-	"aekorean":                            0x3150,
-	"yakorean":                            0x3151,
-	"yaekorean":                           0x3152,
-	"eokorean":                            0x3153,
-	"ekorean":                             0x3154,
-	"yeokorean":                           0x3155,
-	"yekorean":                            0x3156,
-	"okorean":                             0x3157,
-	"wakorean":                            0x3158,
-	"waekorean":                           0x3159,
-	"oekorean":                            0x315A,
-	"yokorean":                            0x315B,
-	"ukorean":                             0x315C,
-	"weokorean":                           0x315D,
-	"wekorean":                            0x315E,
-	"wikorean":                            0x315F,
-	"yukorean":                            0x3160,
-	"eukorean":                            0x3161,
-	"yikorean":                            0x3162,
-	"ikorean":                             0x3163,
-	"hangulfiller":                        0x3164,
-	"ssangnieunkorean":                    0x3165,
-	"nieuntikeutkorean":                   0x3166,
-	"nieunsioskorean":                     0x3167,
-	"nieunpansioskorean":                  0x3168,
-	"rieulkiyeoksioskorean":               0x3169,
-	"rieultikeutkorean":                   0x316A,
-	"rieulpieupsioskorean":                0x316B,
-	"rieulpansioskorean":                  0x316C,
-	"rieulyeorinhieuhkorean":              0x316D,
-	"mieumpieupkorean":                    0x316E,
-	"mieumsioskorean":                     0x316F,
-	"mieumpansioskorean":                  0x3170,
-	"kapyeounmieumkorean":                 0x3171,
-	"pieupkiyeokkorean":                   0x3172,
-	"pieuptikeutkorean":                   0x3173,
-	"pieupsioskiyeokkorean":               0x3174,
-	"pieupsiostikeutkorean":               0x3175,
-	"pieupcieuckorean":                    0x3176,
-	"pieupthieuthkorean":                  0x3177,
-	"kapyeounpieupkorean":                 0x3178,
-	"kapyeounssangpieupkorean":            0x3179,
-	"sioskiyeokkorean":                    0x317A,
-	"siosnieunkorean":                     0x317B,
-	"siostikeutkorean":                    0x317C,
-	"siospieupkorean":                     0x317D,
-	"sioscieuckorean":                     0x317E,
-	"pansioskorean":                       0x317F,
-	"ssangieungkorean":                    0x3180,
-	"yesieungkorean":                      0x3181,
-	"yesieungsioskorean":                  0x3182,
-	"yesieungpansioskorean":               0x3183,
-	"kapyeounphieuphkorean":               0x3184,
-	"ssanghieuhkorean":                    0x3185,
-	"yeorinhieuhkorean":                   0x3186,
-	"yoyakorean":                          0x3187,
-	"yoyaekorean":                         0x3188,
-	"yoikorean":                           0x3189,
-	"yuyeokorean":                         0x318A,
-	"yuyekorean":                          0x318B,
-	"yuikorean":                           0x318C,
-	"araeakorean":                         0x318D,
-	"araeaekorean":                        0x318E,
-	"kiyeokparenkorean":                   0x3200,
-	"nieunparenkorean":                    0x3201,
-	"tikeutparenkorean":                   0x3202,
-	"rieulparenkorean":                    0x3203,
-	"mieumparenkorean":                    0x3204,
-	"pieupparenkorean":                    0x3205,
-	"siosparenkorean":                     0x3206,
-	"ieungparenkorean":                    0x3207,
-	"cieucparenkorean":                    0x3208,
-	"chieuchparenkorean":                  0x3209,
-	"khieukhparenkorean":                  0x320A,
-	"thieuthparenkorean":                  0x320B,
-	"phieuphparenkorean":                  0x320C,
-	"hieuhparenkorean":                    0x320D,
-	"kiyeokaparenkorean":                  0x320E,
-	"nieunaparenkorean":                   0x320F,
-	"tikeutaparenkorean":                  0x3210,
-	"rieulaparenkorean":                   0x3211,
-	"mieumaparenkorean":                   0x3212,
-	"pieupaparenkorean":                   0x3213,
-	"siosaparenkorean":                    0x3214,
-	"ieungaparenkorean":                   0x3215,
-	"cieucaparenkorean":                   0x3216,
-	"chieuchaparenkorean":                 0x3217,
-	"khieukhaparenkorean":                 0x3218,
-	"thieuthaparenkorean":                 0x3219,
-	"phieuphaparenkorean":                 0x321A,
-	"hieuhaparenkorean":                   0x321B,
-	"cieucuparenkorean":                   0x321C,
-	"oneideographicparen":                 0x3220,
-	"twoideographicparen":                 0x3221,
-	"threeideographicparen":               0x3222,
-	"fourideographicparen":                0x3223,
-	"fiveideographicparen":                0x3224,
-	"sixideographicparen":                 0x3225,
-	"sevenideographicparen":               0x3226,
-	"eightideographicparen":               0x3227,
-	"nineideographicparen":                0x3228,
-	"tenideographicparen":                 0x3229,
-	"ideographicmoonparen":                0x322A,
-	"ideographicfireparen":                0x322B,
-	"ideographicwaterparen":               0x322C,
-	"ideographicwoodparen":                0x322D,
-	"ideographicmetalparen":               0x322E,
-	"ideographicearthparen":               0x322F,
-	"ideographicsunparen":                 0x3230,
-	"ideographicstockparen":               0x3231,
-	"ideographichaveparen":                0x3232,
-	"ideographicsocietyparen":             0x3233,
-	"ideographicnameparen":                0x3234,
-	"ideographicspecialparen":             0x3235,
-	"ideographicfinancialparen":           0x3236,
-	"ideographiccongratulationparen":      0x3237,
-	"ideographiclaborparen":               0x3238,
-	"ideographicrepresentparen":           0x3239,
-	"ideographiccallparen":                0x323A,
-	"ideographicstudyparen":               0x323B,
-	"ideographicsuperviseparen":           0x323C,
-	"ideographicenterpriseparen":          0x323D,
-	"ideographicresourceparen":            0x323E,
-	"ideographicallianceparen":            0x323F,
-	"ideographicfestivalparen":            0x3240,
-	"ideographicselfparen":                0x3242,
-	"ideographicreachparen":               0x3243,
-	"kiyeokcirclekorean":                  0x3260,
-	"nieuncirclekorean":                   0x3261,
-	"tikeutcirclekorean":                  0x3262,
-	"rieulcirclekorean":                   0x3263,
-	"mieumcirclekorean":                   0x3264,
-	"pieupcirclekorean":                   0x3265,
-	"sioscirclekorean":                    0x3266,
-	"ieungcirclekorean":                   0x3267,
-	"cieuccirclekorean":                   0x3268,
-	"chieuchcirclekorean":                 0x3269,
-	"khieukhcirclekorean":                 0x326A,
-	"thieuthcirclekorean":                 0x326B,
-	"phieuphcirclekorean":                 0x326C,
-	"hieuhcirclekorean":                   0x326D,
-	"kiyeokacirclekorean":                 0x326E,
-	"nieunacirclekorean":                  0x326F,
-	"tikeutacirclekorean":                 0x3270,
-	"rieulacirclekorean":                  0x3271,
-	"mieumacirclekorean":                  0x3272,
-	"pieupacirclekorean":                  0x3273,
-	"siosacirclekorean":                   0x3274,
-	"ieungacirclekorean":                  0x3275,
-	"cieucacirclekorean":                  0x3276,
-	"chieuchacirclekorean":                0x3277,
-	"khieukhacirclekorean":                0x3278,
-	"thieuthacirclekorean":                0x3279,
-	"phieuphacirclekorean":                0x327A,
-	"hieuhacirclekorean":                  0x327B,
-	"koreanstandardsymbol":                0x327F,
-	"ideographmooncircle":                 0x328A,
-	"ideographfirecircle":                 0x328B,
-	"ideographwatercircle":                0x328C,
-	"ideographwoodcircle":                 0x328D,
-	"ideographmetalcircle":                0x328E,
-	"ideographearthcircle":                0x328F,
-	"ideographsuncircle":                  0x3290,
-	"ideographnamecircle":                 0x3294,
-	"ideographicfinancialcircle":          0x3296,
-	"ideographiclaborcircle":              0x3298,
-	"ideographicsecretcircle":             0x3299,
-	"ideographicexcellentcircle":          0x329D,
-	"ideographicprintcircle":              0x329E,
-	"ideographiccorrectcircle":            0x32A3,
-	"ideographichighcircle":               0x32A4,
-	"ideographiccentrecircle":             0x32A5,
-	"ideographiclowcircle":                0x32A6,
-	"ideographicleftcircle":               0x32A7,
-	"ideographicrightcircle":              0x32A8,
-	"ideographicmedicinecircle":           0x32A9,
-	"apaatosquare":                        0x3300,
-	"aarusquare":                          0x3303,
-	"intisquare":                          0x3305,
-	"karoriisquare":                       0x330D,
-	"kirosquare":                          0x3314,
-	"kiroguramusquare":                    0x3315,
-	"kiromeetorusquare":                   0x3316,
-	"guramusquare":                        0x3318,
-	"kooposquare":                         0x331E,
-	"sentisquare":                         0x3322,
-	"sentosquare":                         0x3323,
-	"dorusquare":                          0x3326,
-	"tonsquare":                           0x3327,
-	"haitusquare":                         0x332A,
-	"paasentosquare":                      0x332B,
-	"birusquare":                          0x3331,
-	"huiitosquare":                        0x3333,
-	"hekutaarusquare":                     0x3336,
-	"herutusquare":                        0x3339,
-	"peezisquare":                         0x333B,
-	"hoonsquare":                          0x3342,
-	"mansyonsquare":                       0x3347,
-	"mirisquare":                          0x3349,
-	"miribaarusquare":                     0x334A,
-	"meetorusquare":                       0x334D,
-	"yaadosquare":                         0x334E,
-	"rittorusquare":                       0x3351,
-	"wattosquare":                         0x3357,
-	"heiseierasquare":                     0x337B,
-	"syouwaerasquare":                     0x337C,
-	"taisyouerasquare":                    0x337D,
-	"meizierasquare":                      0x337E,
-	"corporationsquare":                   0x337F,
-	"paampssquare":                        0x3380,
-	"nasquare":                            0x3381,
-	"muasquare":                           0x3382,
-	"masquare":                            0x3383,
-	"kasquare":                            0x3384,
-	"KBsquare":                            0x3385,
-	"MBsquare":                            0x3386,
-	"GBsquare":                            0x3387,
-	"calsquare":                           0x3388,
-	"kcalsquare":                          0x3389,
-	"pfsquare":                            0x338A,
-	"nfsquare":                            0x338B,
-	"mufsquare":                           0x338C,
-	"mugsquare":                           0x338D,
-	"squaremg":                            0x338E,
-	"squarekg":                            0x338F,
-	"Hzsquare":                            0x3390,
-	"khzsquare":                           0x3391,
-	"mhzsquare":                           0x3392,
-	"ghzsquare":                           0x3393,
-	"thzsquare":                           0x3394,
-	"mulsquare":                           0x3395,
-	"mlsquare":                            0x3396,
-	"dlsquare":                            0x3397,
-	"klsquare":                            0x3398,
-	"fmsquare":                            0x3399,
-	"nmsquare":                            0x339A,
-	"mumsquare":                           0x339B,
-	"squaremm":                            0x339C,
-	"squarecm":                            0x339D,
-	"squarekm":                            0x339E,
-	"mmsquaredsquare":                     0x339F,
-	"cmsquaredsquare":                     0x33A0,
-	"squaremsquared":                      0x33A1,
-	"kmsquaredsquare":                     0x33A2,
-	"mmcubedsquare":                       0x33A3,
-	"cmcubedsquare":                       0x33A4,
-	"mcubedsquare":                        0x33A5,
-	"kmcubedsquare":                       0x33A6,
-	"moverssquare":                        0x33A7,
-	"moverssquaredsquare":                 0x33A8,
-	"pasquare":                            0x33A9,
-	"kpasquare":                           0x33AA,
-	"mpasquare":                           0x33AB,
-	"gpasquare":                           0x33AC,
-	"radsquare":                           0x33AD,
-	"radoverssquare":                      0x33AE,
-	"radoverssquaredsquare":               0x33AF,
-	"pssquare":                            0x33B0,
-	"nssquare":                            0x33B1,
-	"mussquare":                           0x33B2,
-	"mssquare":                            0x33B3,
-	"pvsquare":                            0x33B4,
-	"nvsquare":                            0x33B5,
-	"muvsquare":                           0x33B6,
-	"mvsquare":                            0x33B7,
-	"kvsquare":                            0x33B8,
-	"mvmegasquare":                        0x33B9,
-	"pwsquare":                            0x33BA,
-	"nwsquare":                            0x33BB,
-	"muwsquare":                           0x33BC,
-	"mwsquare":                            0x33BD,
-	"kwsquare":                            0x33BE,
-	"mwmegasquare":                        0x33BF,
-	"kohmsquare":                          0x33C0,
-	"mohmsquare":                          0x33C1,
-	"amsquare":                            0x33C2,
-	"bqsquare":                            0x33C3,
-	"squarecc":                            0x33C4,
-	"cdsquare":                            0x33C5,
-	"coverkgsquare":                       0x33C6,
-	"cosquare":                            0x33C7,
-	"dbsquare":                            0x33C8,
-	"gysquare":                            0x33C9,
-	"hasquare":                            0x33CA,
-	"HPsquare":                            0x33CB,
-	"KKsquare":                            0x33CD,
-	"squarekmcapital":                     0x33CE,
-	"ktsquare":                            0x33CF,
-	"lmsquare":                            0x33D0,
-	"squareln":                            0x33D1,
-	"squarelog":                           0x33D2,
-	"lxsquare":                            0x33D3,
-	"mbsquare":                            0x33D4,
-	"squaremil":                           0x33D5,
-	"molsquare":                           0x33D6,
-	"pmsquare":                            0x33D8,
-	"srsquare":                            0x33DB,
-	"svsquare":                            0x33DC,
-	"wbsquare":                            0x33DD,
-	"twentyhangzhou":                      0x5344,
-	"dotlessj":                            0xF6BE,
-	"LL":                                  0xF6BF,
-	"ll":                                  0xF6C0,
-	"commaaccent":                         0xF6C3,
-	"afii10063":                           0xF6C4,
-	"afii10064":                           0xF6C5,
-	"afii10192":                           0xF6C6,
-	"afii10831":                           0xF6C7,
-	"afii10832":                           0xF6C8,
-	"Acute":                               0xF6C9,
-	"Caron":                               0xF6CA,
-	"Dieresis":                            0xF6CB,
-	"DieresisAcute":                       0xF6CC,
-	"DieresisGrave":                       0xF6CD,
-	"Grave":                               0xF6CE,
-	"Hungarumlaut":                        0xF6CF,
-	"Macron":                              0xF6D0,
-	"cyrBreve":                            0xF6D1,
-	"cyrFlex":                             0xF6D2,
-	"dblGrave":                            0xF6D3,
-	"cyrbreve":                            0xF6D4,
-	"cyrflex":                             0xF6D5,
-	"dblgrave":                            0xF6D6,
-	"dieresisacute":                       0xF6D7,
-	"dieresisgrave":                       0xF6D8,
-	"copyrightserif":                      0xF6D9,
-	"registerserif":                       0xF6DA,
-	"trademarkserif":                      0xF6DB,
-	"onefitted":                           0xF6DC,
-	"rupiah":                              0xF6DD,
-	"threequartersemdash":                 0xF6DE,
-	"centinferior":                        0xF6DF,
-	"centsuperior":                        0xF6E0,
-	"commainferior":                       0xF6E1,
-	"commasuperior":                       0xF6E2,
-	"dollarinferior":                      0xF6E3,
-	"dollarsuperior":                      0xF6E4,
-	"hypheninferior":                      0xF6E5,
-	"hyphensuperior":                      0xF6E6,
-	"periodinferior":                      0xF6E7,
-	"periodsuperior":                      0xF6E8,
-	"asuperior":                           0xF6E9,
-	"bsuperior":                           0xF6EA,
-	"dsuperior":                           0xF6EB,
-	"esuperior":                           0xF6EC,
-	"isuperior":                           0xF6ED,
-	"lsuperior":                           0xF6EE,
-	"msuperior":                           0xF6EF,
-	"osuperior":                           0xF6F0,
-	"rsuperior":                           0xF6F1,
-	"ssuperior":                           0xF6F2,
-	"tsuperior":                           0xF6F3,
-	"Brevesmall":                          0xF6F4,
-	"Caronsmall":                          0xF6F5,
-	"Circumflexsmall":                     0xF6F6,
-	"Dotaccentsmall":                      0xF6F7,
-	"Hungarumlautsmall":                   0xF6F8,
-	"Lslashsmall":                         0xF6F9,
-	"OEsmall":                             0xF6FA,
-	"Ogoneksmall":                         0xF6FB,
-	"Ringsmall":                           0xF6FC,
-	"Scaronsmall":                         0xF6FD,
-	"Tildesmall":                          0xF6FE,
-	"Zcaronsmall":                         0xF6FF,
-	"exclamsmall":                         0xF721,
-	"dollaroldstyle":                      0xF724,
-	"ampersandsmall":                      0xF726,
-	"zerooldstyle":                        0xF730,
-	"oneoldstyle":                         0xF731,
-	"twooldstyle":                         0xF732,
-	"threeoldstyle":                       0xF733,
-	"fouroldstyle":                        0xF734,
-	"fiveoldstyle":                        0xF735,
-	"sixoldstyle":                         0xF736,
-	"sevenoldstyle":                       0xF737,
-	"eightoldstyle":                       0xF738,
-	"nineoldstyle":                        0xF739,
-	"questionsmall":                       0xF73F,
-	"Gravesmall":                          0xF760,
-	"Asmall":                              0xF761,
-	"Bsmall":                              0xF762,
-	"Csmall":                              0xF763,
-	"Dsmall":                              0xF764,
-	"Esmall":                              0xF765,
-	"Fsmall":                              0xF766,
-	"Gsmall":                              0xF767,
-	"Hsmall":                              0xF768,
-	"Ismall":                              0xF769,
-	"Jsmall":                              0xF76A,
-	"Ksmall":                              0xF76B,
-	"Lsmall":                              0xF76C,
-	"Msmall":                              0xF76D,
-	"Nsmall":                              0xF76E,
-	"Osmall":                              0xF76F,
-	"Psmall":                              0xF770,
-	"Qsmall":                              0xF771,
-	"Rsmall":                              0xF772,
-	"Ssmall":                              0xF773,
-	"Tsmall":                              0xF774,
-	"Usmall":                              0xF775,
-	"Vsmall":                              0xF776,
-	"Wsmall":                              0xF777,
-	"Xsmall":                              0xF778,
-	"Ysmall":                              0xF779,
-	"Zsmall":                              0xF77A,
-	"exclamdownsmall":                     0xF7A1,
-	"centoldstyle":                        0xF7A2,
-	"Dieresissmall":                       0xF7A8,
-	"Macronsmall":                         0xF7AF,
-	"Acutesmall":                          0xF7B4,
-	"Cedillasmall":                        0xF7B8,
-	"questiondownsmall":                   0xF7BF,
-	"Agravesmall":                         0xF7E0,
-	"Aacutesmall":                         0xF7E1,
-	"Acircumflexsmall":                    0xF7E2,
-	"Atildesmall":                         0xF7E3,
-	"Adieresissmall":                      0xF7E4,
-	"Aringsmall":                          0xF7E5,
-	"AEsmall":                             0xF7E6,
-	"Ccedillasmall":                       0xF7E7,
-	"Egravesmall":                         0xF7E8,
-	"Eacutesmall":                         0xF7E9,
-	"Ecircumflexsmall":                    0xF7EA,
-	"Edieresissmall":                      0xF7EB,
-	"Igravesmall":                         0xF7EC,
-	"Iacutesmall":                         0xF7ED,
-	"Icircumflexsmall":                    0xF7EE,
-	"Idieresissmall":                      0xF7EF,
-	"Ethsmall":                            0xF7F0,
-	"Ntildesmall":                         0xF7F1,
-	"Ogravesmall":                         0xF7F2,
-	"Oacutesmall":                         0xF7F3,
-	"Ocircumflexsmall":                    0xF7F4,
-	"Otildesmall":                         0xF7F5,
-	"Odieresissmall":                      0xF7F6,
-	"Oslashsmall":                         0xF7F8,
-	"Ugravesmall":                         0xF7F9,
-	"Uacutesmall":                         0xF7FA,
-	"Ucircumflexsmall":                    0xF7FB,
-	"Udieresissmall":                      0xF7FC,
-	"Yacutesmall":                         0xF7FD,
-	"Thornsmall":                          0xF7FE,
-	"Ydieresissmall":                      0xF7FF,
-	"maihanakatleftthai":                  0xF884,
-	"saraileftthai":                       0xF885,
-	"saraiileftthai":                      0xF886,
-	"saraueleftthai":                      0xF887,
-	"saraueeleftthai":                     0xF888,
-	"maitaikhuleftthai":                   0xF889,
-	"maiekupperleftthai":                  0xF88A,
-	"maieklowrightthai":                   0xF88B,
-	"maieklowleftthai":                    0xF88C,
-	"maithoupperleftthai":                 0xF88D,
-	"maitholowrightthai":                  0xF88E,
-	"maitholowleftthai":                   0xF88F,
-	"maitriupperleftthai":                 0xF890,
-	"maitrilowrightthai":                  0xF891,
-	"maitrilowleftthai":                   0xF892,
-	"maichattawaupperleftthai":            0xF893,
-	"maichattawalowrightthai":             0xF894,
-	"maichattawalowleftthai":              0xF895,
-	"thanthakhatupperleftthai":            0xF896,
-	"thanthakhatlowrightthai":             0xF897,
-	"thanthakhatlowleftthai":              0xF898,
-	"nikhahitleftthai":                    0xF899,
-	"radicalex":                           0xF8E5,
-	"arrowvertex":                         0xF8E6,
-	"arrowhorizex":                        0xF8E7,
-	"registersans":                        0xF8E8,
-	"copyrightsans":                       0xF8E9,
-	"trademarksans":                       0xF8EA,
-	"parenlefttp":                         0xF8EB,
-	"parenleftex":                         0xF8EC,
-	"parenleftbt":                         0xF8ED,
-	"bracketlefttp":                       0xF8EE,
-	"bracketleftex":                       0xF8EF,
-	"bracketleftbt":                       0xF8F0,
-	"bracelefttp":                         0xF8F1,
-	"braceleftmid":                        0xF8F2,
-	"braceleftbt":                         0xF8F3,
-	"braceex":                             0xF8F4,
-	"integralex":                          0xF8F5,
-	"parenrighttp":                        0xF8F6,
-	"parenrightex":                        0xF8F7,
-	"parenrightbt":                        0xF8F8,
-	"bracketrighttp":                      0xF8F9,
-	"bracketrightex":                      0xF8FA,
-	"bracketrightbt":                      0xF8FB,
-	"bracerighttp":                        0xF8FC,
-	"bracerightmid":                       0xF8FD,
-	"bracerightbt":                        0xF8FE,
-	"apple":                               0xF8FF,
-	"ff":                                  0xFB00,
-	"fi":                                  0xFB01,
-	"fl":                                  0xFB02,
-	"ffi":                                 0xFB03,
-	"ffl":                                 0xFB04,
-	"afii57705":                           0xFB1F,
-	"doubleyodpatah":                      0xFB1F,
-	"doubleyodpatahhebrew":                0xFB1F,
-	"yodyodpatahhebrew":                   0xFB1F,
-	"ayinaltonehebrew":                    0xFB20,
-	"afii57694":                           0xFB2A,
-	"shinshindot":                         0xFB2A,
-	"shinshindothebrew":                   0xFB2A,
-	"afii57695":                           0xFB2B,
-	"shinsindot":                          0xFB2B,
-	"shinsindothebrew":                    0xFB2B,
-	"shindageshshindot":                   0xFB2C,
-	"shindageshshindothebrew":             0xFB2C,
-	"shindageshsindot":                    0xFB2D,
-	"shindageshsindothebrew":              0xFB2D,
-	"alefpatahhebrew":                     0xFB2E,
-	"alefqamatshebrew":                    0xFB2F,
-	"alefdageshhebrew":                    0xFB30,
-	"betdagesh":                           0xFB31,
-	"betdageshhebrew":                     0xFB31,
-	"gimeldagesh":                         0xFB32,
-	"gimeldageshhebrew":                   0xFB32,
-	"daletdagesh":                         0xFB33,
-	"daletdageshhebrew":                   0xFB33,
-	"hedagesh":                            0xFB34,
-	"hedageshhebrew":                      0xFB34,
-	"afii57723":                           0xFB35,
-	"vavdagesh":                           0xFB35,
-	"vavdagesh65":                         0xFB35,
-	"vavdageshhebrew":                     0xFB35,
-	"zayindagesh":                         0xFB36,
-	"zayindageshhebrew":                   0xFB36,
-	"tetdagesh":                           0xFB38,
-	"tetdageshhebrew":                     0xFB38,
-	"yoddagesh":                           0xFB39,
-	"yoddageshhebrew":                     0xFB39,
-	"finalkafdagesh":                      0xFB3A,
-	"finalkafdageshhebrew":                0xFB3A,
-	"kafdagesh":                           0xFB3B,
-	"kafdageshhebrew":                     0xFB3B,
-	"lameddagesh":                         0xFB3C,
-	"lameddageshhebrew":                   0xFB3C,
-	"memdagesh":                           0xFB3E,
-	"memdageshhebrew":                     0xFB3E,
-	"nundagesh":                           0xFB40,
-	"nundageshhebrew":                     0xFB40,
-	"samekhdagesh":                        0xFB41,
-	"samekhdageshhebrew":                  0xFB41,
-	"pefinaldageshhebrew":                 0xFB43,
-	"pedagesh":                            0xFB44,
-	"pedageshhebrew":                      0xFB44,
-	"tsadidagesh":                         0xFB46,
-	"tsadidageshhebrew":                   0xFB46,
-	"qofdagesh":                           0xFB47,
-	"qofdageshhebrew":                     0xFB47,
-	"reshdageshhebrew":                    0xFB48,
-	"shindagesh":                          0xFB49,
-	"shindageshhebrew":                    0xFB49,
-	"tavdages":                            0xFB4A,
-	"tavdagesh":                           0xFB4A,
-	"tavdageshhebrew":                     0xFB4A,
-	"afii57700":                           0xFB4B,
-	"vavholam":                            0xFB4B,
-	"vavholamhebrew":                      0xFB4B,
-	"betrafehebrew":                       0xFB4C,
-	"kafrafehebrew":                       0xFB4D,
-	"perafehebrew":                        0xFB4E,
-	"aleflamedhebrew":                     0xFB4F,
-	"pehfinalarabic":                      0xFB57,
-	"pehinitialarabic":                    0xFB58,
-	"pehmedialarabic":                     0xFB59,
-	"ttehfinalarabic":                     0xFB67,
-	"ttehinitialarabic":                   0xFB68,
-	"ttehmedialarabic":                    0xFB69,
-	"vehfinalarabic":                      0xFB6B,
-	"vehinitialarabic":                    0xFB6C,
-	"vehmedialarabic":                     0xFB6D,
-	"tchehfinalarabic":                    0xFB7B,
-	"tchehinitialarabic":                  0xFB7C,
-	"tchehmeeminitialarabic":              0xFB7C,
-	"tchehmedialarabic":                   0xFB7D,
-	"ddalfinalarabic":                     0xFB89,
-	"jehfinalarabic":                      0xFB8B,
-	"rrehfinalarabic":                     0xFB8D,
-	"gaffinalarabic":                      0xFB93,
-	"gafinitialarabic":                    0xFB94,
-	"gafmedialarabic":                     0xFB95,
-	"noonghunnafinalarabic":               0xFB9F,
-	"hehhamzaaboveisolatedarabic":         0xFBA4,
-	"hehhamzaabovefinalarabic":            0xFBA5,
-	"hehfinalaltonearabic":                0xFBA7,
-	"hehinitialaltonearabic":              0xFBA8,
-	"hehmedialaltonearabic":               0xFBA9,
-	"yehbarreefinalarabic":                0xFBAF,
-	"behmeemisolatedarabic":               0xFC08,
-	"tehjeemisolatedarabic":               0xFC0B,
-	"tehhahisolatedarabic":                0xFC0C,
-	"tehmeemisolatedarabic":               0xFC0E,
-	"meemmeemisolatedarabic":              0xFC48,
-	"noonjeemisolatedarabic":              0xFC4B,
-	"noonmeemisolatedarabic":              0xFC4E,
-	"yehmeemisolatedarabic":               0xFC58,
-	"shaddadammatanarabic":                0xFC5E,
-	"shaddakasratanarabic":                0xFC5F,
-	"shaddafathaarabic":                   0xFC60,
-	"shaddadammaarabic":                   0xFC61,
-	"shaddakasraarabic":                   0xFC62,
-	"behnoonfinalarabic":                  0xFC6D,
-	"tehnoonfinalarabic":                  0xFC73,
-	"noonnoonfinalarabic":                 0xFC8D,
-	"yehnoonfinalarabic":                  0xFC94,
-	"behmeeminitialarabic":                0xFC9F,
-	"tehjeeminitialarabic":                0xFCA1,
-	"tehhahinitialarabic":                 0xFCA2,
-	"tehmeeminitialarabic":                0xFCA4,
-	"lamjeeminitialarabic":                0xFCC9,
-	"lamhahinitialarabic":                 0xFCCA,
-	"lamkhahinitialarabic":                0xFCCB,
-	"lammeeminitialarabic":                0xFCCC,
-	"meemmeeminitialarabic":               0xFCD1,
-	"noonjeeminitialarabic":               0xFCD2,
-	"noonmeeminitialarabic":               0xFCD5,
-	"yehmeeminitialarabic":                0xFCDD,
-	"parenleftaltonearabic":               0xFD3E,
-	"parenrightaltonearabic":              0xFD3F,
-	"lammeemhahinitialarabic":             0xFD88,
-	"lamlamhehisolatedarabic":             0xFDF2,
-	"sallallahoualayhewasallamarabic":     0xFDFA,
-	"twodotleadervertical":                0xFE30,
-	"emdashvertical":                      0xFE31,
-	"endashvertical":                      0xFE32,
-	"underscorevertical":                  0xFE33,
-	"wavyunderscorevertical":              0xFE34,
-	"parenleftvertical":                   0xFE35,
-	"parenrightvertical":                  0xFE36,
-	"braceleftvertical":                   0xFE37,
-	"bracerightvertical":                  0xFE38,
-	"tortoiseshellbracketleftvertical":    0xFE39,
-	"tortoiseshellbracketrightvertical":   0xFE3A,
-	"blacklenticularbracketleftvertical":  0xFE3B,
-	"blacklenticularbracketrightvertical": 0xFE3C,
-	"dblanglebracketleftvertical":         0xFE3D,
-	"dblanglebracketrightvertical":        0xFE3E,
-	"anglebracketleftvertical":            0xFE3F,
-	"anglebracketrightvertical":           0xFE40,
-	"cornerbracketleftvertical":           0xFE41,
-	"cornerbracketrightvertical":          0xFE42,
-	"whitecornerbracketleftvertical":      0xFE43,
-	"whitecornerbracketrightvertical":     0xFE44,
-	"overlinedashed":                      0xFE49,
-	"overlinecenterline":                  0xFE4A,
-	"overlinewavy":                        0xFE4B,
-	"overlinedblwavy":                     0xFE4C,
-	"lowlinedashed":                       0xFE4D,
-	"lowlinecenterline":                   0xFE4E,
-	"underscorewavy":                      0xFE4F,
-	"commasmall":                          0xFE50,
-	"periodsmall":                         0xFE52,
-	"semicolonsmall":                      0xFE54,
-	"colonsmall":                          0xFE55,
-	"parenleftsmall":                      0xFE59,
-	"parenrightsmall":                     0xFE5A,
-	"braceleftsmall":                      0xFE5B,
-	"bracerightsmall":                     0xFE5C,
-	"tortoiseshellbracketleftsmall":       0xFE5D,
-	"tortoiseshellbracketrightsmall":      0xFE5E,
-	"numbersignsmall":                     0xFE5F,
-	"asterisksmall":                       0xFE61,
-	"plussmall":                           0xFE62,
-	"hyphensmall":                         0xFE63,
-	"lesssmall":                           0xFE64,
-	"greatersmall":                        0xFE65,
-	"equalsmall":                          0xFE66,
-	"dollarsmall":                         0xFE69,
-	"percentsmall":                        0xFE6A,
-	"atsmall":                             0xFE6B,
-	"alefmaddaabovefinalarabic":           0xFE82,
-	"alefhamzaabovefinalarabic":           0xFE84,
-	"wawhamzaabovefinalarabic":            0xFE86,
-	"alefhamzabelowfinalarabic":           0xFE88,
-	"yehhamzaabovefinalarabic":            0xFE8A,
-	"yehhamzaaboveinitialarabic":          0xFE8B,
-	"yehhamzaabovemedialarabic":           0xFE8C,
-	"aleffinalarabic":                     0xFE8E,
-	"behfinalarabic":                      0xFE90,
-	"behinitialarabic":                    0xFE91,
-	"behmedialarabic":                     0xFE92,
-	"tehmarbutafinalarabic":               0xFE94,
-	"tehfinalarabic":                      0xFE96,
-	"tehinitialarabic":                    0xFE97,
-	"tehmedialarabic":                     0xFE98,
-	"thehfinalarabic":                     0xFE9A,
-	"thehinitialarabic":                   0xFE9B,
-	"thehmedialarabic":                    0xFE9C,
-	"jeemfinalarabic":                     0xFE9E,
-	"jeeminitialarabic":                   0xFE9F,
-	"jeemmedialarabic":                    0xFEA0,
-	"hahfinalarabic":                      0xFEA2,
-	"hahinitialarabic":                    0xFEA3,
-	"hahmedialarabic":                     0xFEA4,
-	"khahfinalarabic":                     0xFEA6,
-	"khahinitialarabic":                   0xFEA7,
-	"khahmedialarabic":                    0xFEA8,
-	"dalfinalarabic":                      0xFEAA,
-	"thalfinalarabic":                     0xFEAC,
-	"rehfinalarabic":                      0xFEAE,
-	"zainfinalarabic":                     0xFEB0,
-	"seenfinalarabic":                     0xFEB2,
-	"seeninitialarabic":                   0xFEB3,
-	"seenmedialarabic":                    0xFEB4,
-	"sheenfinalarabic":                    0xFEB6,
-	"sheeninitialarabic":                  0xFEB7,
-	"sheenmedialarabic":                   0xFEB8,
-	"sadfinalarabic":                      0xFEBA,
-	"sadinitialarabic":                    0xFEBB,
-	"sadmedialarabic":                     0xFEBC,
-	"dadfinalarabic":                      0xFEBE,
-	"dadinitialarabic":                    0xFEBF,
-	"dadmedialarabic":                     0xFEC0,
-	"tahfinalarabic":                      0xFEC2,
-	"tahinitialarabic":                    0xFEC3,
-	"tahmedialarabic":                     0xFEC4,
-	"zahfinalarabic":                      0xFEC6,
-	"zahinitialarabic":                    0xFEC7,
-	"zahmedialarabic":                     0xFEC8,
-	"ainfinalarabic":                      0xFECA,
-	"aininitialarabic":                    0xFECB,
-	"ainmedialarabic":                     0xFECC,
-	"ghainfinalarabic":                    0xFECE,
-	"ghaininitialarabic":                  0xFECF,
-	"ghainmedialarabic":                   0xFED0,
-	"fehfinalarabic":                      0xFED2,
-	"fehinitialarabic":                    0xFED3,
-	"fehmedialarabic":                     0xFED4,
-	"qaffinalarabic":                      0xFED6,
-	"qafinitialarabic":                    0xFED7,
-	"qafmedialarabic":                     0xFED8,
-	"kaffinalarabic":                      0xFEDA,
-	"kafinitialarabic":                    0xFEDB,
-	"kafmedialarabic":                     0xFEDC,
-	"lamfinalarabic":                      0xFEDE,
-	"laminitialarabic":                    0xFEDF,
-	"lammeemjeeminitialarabic":            0xFEDF,
-	"lammeemkhahinitialarabic":            0xFEDF,
-	"lammedialarabic":                     0xFEE0,
-	"meemfinalarabic":                     0xFEE2,
-	"meeminitialarabic":                   0xFEE3,
-	"meemmedialarabic":                    0xFEE4,
-	"noonfinalarabic":                     0xFEE6,
-	"nooninitialarabic":                   0xFEE7,
-	"noonhehinitialarabic":                0xFEE7,
-	"noonmedialarabic":                    0xFEE8,
-	"hehfinalalttwoarabic":                0xFEEA,
-	"hehfinalarabic":                      0xFEEA,
-	"hehinitialarabic":                    0xFEEB,
-	"hehmedialarabic":                     0xFEEC,
-	"wawfinalarabic":                      0xFEEE,
-	"alefmaksurafinalarabic":              0xFEF0,
-	"yehfinalarabic":                      0xFEF2,
-	"alefmaksurainitialarabic":            0xFEF3,
-	"yehinitialarabic":                    0xFEF3,
-	"alefmaksuramedialarabic":             0xFEF4,
-	"yehmedialarabic":                     0xFEF4,
-	"lamalefmaddaaboveisolatedarabic":     0xFEF5,
-	"lamalefmaddaabovefinalarabic":        0xFEF6,
-	"lamalefhamzaaboveisolatedarabic":     0xFEF7,
-	"lamalefhamzaabovefinalarabic":        0xFEF8,
-	"lamalefhamzabelowisolatedarabic":     0xFEF9,
-	"lamalefhamzabelowfinalarabic":        0xFEFA,
-	"lamalefisolatedarabic":               0xFEFB,
-	"lamaleffinalarabic":                  0xFEFC,
-	"zerowidthjoiner":                     0xFEFF,
-	"exclammonospace":                     0xFF01,
-	"quotedblmonospace":                   0xFF02,
-	"numbersignmonospace":                 0xFF03,
-	"dollarmonospace":                     0xFF04,
-	"percentmonospace":                    0xFF05,
-	"ampersandmonospace":                  0xFF06,
-	"quotesinglemonospace":                0xFF07,
-	"parenleftmonospace":                  0xFF08,
-	"parenrightmonospace":                 0xFF09,
-	"asteriskmonospace":                   0xFF0A,
-	"plusmonospace":                       0xFF0B,
-	"commamonospace":                      0xFF0C,
-	"hyphenmonospace":                     0xFF0D,
-	"periodmonospace":                     0xFF0E,
-	"slashmonospace":                      0xFF0F,
-	"zeromonospace":                       0xFF10,
-	"onemonospace":                        0xFF11,
-	"twomonospace":                        0xFF12,
-	"threemonospace":                      0xFF13,
-	"fourmonospace":                       0xFF14,
-	"fivemonospace":                       0xFF15,
-	"sixmonospace":                        0xFF16,
-	"sevenmonospace":                      0xFF17,
-	"eightmonospace":                      0xFF18,
-	"ninemonospace":                       0xFF19,
-	"colonmonospace":                      0xFF1A,
-	"semicolonmonospace":                  0xFF1B,
-	"lessmonospace":                       0xFF1C,
-	"equalmonospace":                      0xFF1D,
-	"greatermonospace":                    0xFF1E,
-	"questionmonospace":                   0xFF1F,
-	"atmonospace":                         0xFF20,
-	"Amonospace":                          0xFF21,
-	"Bmonospace":                          0xFF22,
-	"Cmonospace":                          0xFF23,
-	"Dmonospace":                          0xFF24,
-	"Emonospace":                          0xFF25,
-	"Fmonospace":                          0xFF26,
-	"Gmonospace":                          0xFF27,
-	"Hmonospace":                          0xFF28,
-	"Imonospace":                          0xFF29,
-	"Jmonospace":                          0xFF2A,
-	"Kmonospace":                          0xFF2B,
-	"Lmonospace":                          0xFF2C,
-	"Mmonospace":                          0xFF2D,
-	"Nmonospace":                          0xFF2E,
-	"Omonospace":                          0xFF2F,
-	"Pmonospace":                          0xFF30,
-	"Qmonospace":                          0xFF31,
-	"Rmonospace":                          0xFF32,
-	"Smonospace":                          0xFF33,
-	"Tmonospace":                          0xFF34,
-	"Umonospace":                          0xFF35,
-	"Vmonospace":                          0xFF36,
-	"Wmonospace":                          0xFF37,
-	"Xmonospace":                          0xFF38,
-	"Ymonospace":                          0xFF39,
-	"Zmonospace":                          0xFF3A,
-	"bracketleftmonospace":                0xFF3B,
-	"backslashmonospace":                  0xFF3C,
-	"bracketrightmonospace":               0xFF3D,
-	"asciicircummonospace":                0xFF3E,
-	"underscoremonospace":                 0xFF3F,
-	"gravemonospace":                      0xFF40,
-	"amonospace":                          0xFF41,
-	"bmonospace":                          0xFF42,
-	"cmonospace":                          0xFF43,
-	"dmonospace":                          0xFF44,
-	"emonospace":                          0xFF45,
-	"fmonospace":                          0xFF46,
-	"gmonospace":                          0xFF47,
-	"hmonospace":                          0xFF48,
-	"imonospace":                          0xFF49,
-	"jmonospace":                          0xFF4A,
-	"kmonospace":                          0xFF4B,
-	"lmonospace":                          0xFF4C,
-	"mmonospace":                          0xFF4D,
-	"nmonospace":                          0xFF4E,
-	"omonospace":                          0xFF4F,
-	"pmonospace":                          0xFF50,
-	"qmonospace":                          0xFF51,
-	"rmonospace":                          0xFF52,
-	"smonospace":                          0xFF53,
-	"tmonospace":                          0xFF54,
-	"umonospace":                          0xFF55,
-	"vmonospace":                          0xFF56,
-	"wmonospace":                          0xFF57,
-	"xmonospace":                          0xFF58,
-	"ymonospace":                          0xFF59,
-	"zmonospace":                          0xFF5A,
-	"braceleftmonospace":                  0xFF5B,
-	"barmonospace":                        0xFF5C,
-	"bracerightmonospace":                 0xFF5D,
-	"asciitildemonospace":                 0xFF5E,
-	"periodhalfwidth":                     0xFF61,
-	"cornerbracketlefthalfwidth":          0xFF62,
-	"cornerbracketrighthalfwidth":         0xFF63,
-	"ideographiccommaleft":                0xFF64,
-	"middledotkatakanahalfwidth":          0xFF65,
-	"wokatakanahalfwidth":                 0xFF66,
-	"asmallkatakanahalfwidth":             0xFF67,
-	"ismallkatakanahalfwidth":             0xFF68,
-	"usmallkatakanahalfwidth":             0xFF69,
-	"esmallkatakanahalfwidth":             0xFF6A,
-	"osmallkatakanahalfwidth":             0xFF6B,
-	"yasmallkatakanahalfwidth":            0xFF6C,
-	"yusmallkatakanahalfwidth":            0xFF6D,
-	"yosmallkatakanahalfwidth":            0xFF6E,
-	"tusmallkatakanahalfwidth":            0xFF6F,
-	"katahiraprolongmarkhalfwidth":        0xFF70,
-	"akatakanahalfwidth":                  0xFF71,
-	"ikatakanahalfwidth":                  0xFF72,
-	"ukatakanahalfwidth":                  0xFF73,
-	"ekatakanahalfwidth":                  0xFF74,
-	"okatakanahalfwidth":                  0xFF75,
-	"kakatakanahalfwidth":                 0xFF76,
-	"kikatakanahalfwidth":                 0xFF77,
-	"kukatakanahalfwidth":                 0xFF78,
-	"kekatakanahalfwidth":                 0xFF79,
-	"kokatakanahalfwidth":                 0xFF7A,
-	"sakatakanahalfwidth":                 0xFF7B,
-	"sikatakanahalfwidth":                 0xFF7C,
-	"sukatakanahalfwidth":                 0xFF7D,
-	"sekatakanahalfwidth":                 0xFF7E,
-	"sokatakanahalfwidth":                 0xFF7F,
-	"takatakanahalfwidth":                 0xFF80,
-	"tikatakanahalfwidth":                 0xFF81,
-	"tukatakanahalfwidth":                 0xFF82,
-	"tekatakanahalfwidth":                 0xFF83,
-	"tokatakanahalfwidth":                 0xFF84,
-	"nakatakanahalfwidth":                 0xFF85,
-	"nikatakanahalfwidth":                 0xFF86,
-	"nukatakanahalfwidth":                 0xFF87,
-	"nekatakanahalfwidth":                 0xFF88,
-	"nokatakanahalfwidth":                 0xFF89,
-	"hakatakanahalfwidth":                 0xFF8A,
-	"hikatakanahalfwidth":                 0xFF8B,
-	"hukatakanahalfwidth":                 0xFF8C,
-	"hekatakanahalfwidth":                 0xFF8D,
-	"hokatakanahalfwidth":                 0xFF8E,
-	"makatakanahalfwidth":                 0xFF8F,
-	"mikatakanahalfwidth":                 0xFF90,
-	"mukatakanahalfwidth":                 0xFF91,
-	"mekatakanahalfwidth":                 0xFF92,
-	"mokatakanahalfwidth":                 0xFF93,
-	"yakatakanahalfwidth":                 0xFF94,
-	"yukatakanahalfwidth":                 0xFF95,
-	"yokatakanahalfwidth":                 0xFF96,
-	"rakatakanahalfwidth":                 0xFF97,
-	"rikatakanahalfwidth":                 0xFF98,
-	"rukatakanahalfwidth":                 0xFF99,
-	"rekatakanahalfwidth":                 0xFF9A,
-	"rokatakanahalfwidth":                 0xFF9B,
-	"wakatakanahalfwidth":                 0xFF9C,
-	"nkatakanahalfwidth":                  0xFF9D,
-	"voicedmarkkanahalfwidth":             0xFF9E,
-	"semivoicedmarkkanahalfwidth":         0xFF9F,
-	"centmonospace":                       0xFFE0,
-	"sterlingmonospace":                   0xFFE1,
-	"macronmonospace":                     0xFFE3,
-	"yenmonospace":                        0xFFE5,
-	"wonmonospace":                        0xFFE6,
-}
diff --git a/vendor/rsc.io/pdf/page.go b/vendor/rsc.io/pdf/page.go
deleted file mode 100644
index 77f02b1..0000000
--- a/vendor/rsc.io/pdf/page.go
+++ /dev/null
@@ -1,667 +0,0 @@
-// Copyright 2014 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 pdf
-
-import (
-	"fmt"
-	"strings"
-)
-
-// A Page represent a single page in a PDF file.
-// The methods interpret a Page dictionary stored in V.
-type Page struct {
-	V Value
-}
-
-// Page returns the page for the given page number.
-// Page numbers are indexed starting at 1, not 0.
-// If the page is not found, Page returns a Page with p.V.IsNull().
-func (r *Reader) Page(num int) Page {
-	num-- // now 0-indexed
-	page := r.Trailer().Key("Root").Key("Pages")
-Search:
-	for page.Key("Type").Name() == "Pages" {
-		count := int(page.Key("Count").Int64())
-		if count < num {
-			return Page{}
-		}
-		kids := page.Key("Kids")
-		for i := 0; i < kids.Len(); i++ {
-			kid := kids.Index(i)
-			if kid.Key("Type").Name() == "Pages" {
-				c := int(kid.Key("Count").Int64())
-				if num < c {
-					page = kid
-					continue Search
-				}
-				num -= c
-				continue
-			}
-			if kid.Key("Type").Name() == "Page" {
-				if num == 0 {
-					return Page{kid}
-				}
-				num--
-			}
-		}
-		break
-	}
-	return Page{}
-}
-
-// NumPage returns the number of pages in the PDF file.
-func (r *Reader) NumPage() int {
-	return int(r.Trailer().Key("Root").Key("Pages").Key("Count").Int64())
-}
-
-func (p Page) findInherited(key string) Value {
-	for v := p.V; !v.IsNull(); v = v.Key("Parent") {
-		if r := v.Key(key); !r.IsNull() {
-			return r
-		}
-	}
-	return Value{}
-}
-
-/*
-func (p Page) MediaBox() Value {
-	return p.findInherited("MediaBox")
-}
-
-func (p Page) CropBox() Value {
-	return p.findInherited("CropBox")
-}
-*/
-
-// Resources returns the resources dictionary associated with the page.
-func (p Page) Resources() Value {
-	return p.findInherited("Resources")
-}
-
-// Fonts returns a list of the fonts associated with the page.
-func (p Page) Fonts() []string {
-	return p.Resources().Key("Font").Keys()
-}
-
-// Font returns the font with the given name associated with the page.
-func (p Page) Font(name string) Font {
-	return Font{p.Resources().Key("Font").Key(name)}
-}
-
-// A Font represent a font in a PDF file.
-// The methods interpret a Font dictionary stored in V.
-type Font struct {
-	V Value
-}
-
-// BaseFont returns the font's name (BaseFont property).
-func (f Font) BaseFont() string {
-	return f.V.Key("BaseFont").Name()
-}
-
-// FirstChar returns the code point of the first character in the font.
-func (f Font) FirstChar() int {
-	return int(f.V.Key("FirstChar").Int64())
-}
-
-// LastChar returns the code point of the last character in the font.
-func (f Font) LastChar() int {
-	return int(f.V.Key("LastChar").Int64())
-}
-
-// Widths returns the widths of the glyphs in the font.
-// In a well-formed PDF, len(f.Widths()) == f.LastChar()+1 - f.FirstChar().
-func (f Font) Widths() []float64 {
-	x := f.V.Key("Widths")
-	var out []float64
-	for i := 0; i < x.Len(); i++ {
-		out = append(out, x.Index(i).Float64())
-	}
-	return out
-}
-
-// Width returns the width of the given code point.
-func (f Font) Width(code int) float64 {
-	first := f.FirstChar()
-	last := f.LastChar()
-	if code < first || last < code {
-		return 0
-	}
-	return f.V.Key("Widths").Index(code - first).Float64()
-}
-
-// Encoder returns the encoding between font code point sequences and UTF-8.
-func (f Font) Encoder() TextEncoding {
-	enc := f.V.Key("Encoding")
-	switch enc.Kind() {
-	case Name:
-		switch enc.Name() {
-		case "WinAnsiEncoding":
-			return &byteEncoder{&winAnsiEncoding}
-		case "MacRomanEncoding":
-			return &byteEncoder{&macRomanEncoding}
-		case "Identity-H":
-			// TODO: Should be big-endian UCS-2 decoder
-			return &nopEncoder{}
-		default:
-			println("unknown encoding", enc.Name())
-			return &nopEncoder{}
-		}
-	case Dict:
-		return &dictEncoder{enc.Key("Differences")}
-	case Null:
-		// ok, try ToUnicode
-	default:
-		println("unexpected encoding", enc.String())
-		return &nopEncoder{}
-	}
-
-	toUnicode := f.V.Key("ToUnicode")
-	if toUnicode.Kind() == Dict {
-		m := readCmap(toUnicode)
-		if m == nil {
-			return &nopEncoder{}
-		}
-		return m
-	}
-
-	return &byteEncoder{&pdfDocEncoding}
-}
-
-type dictEncoder struct {
-	v Value
-}
-
-func (e *dictEncoder) Decode(raw string) (text string) {
-	r := make([]rune, 0, len(raw))
-	for i := 0; i < len(raw); i++ {
-		ch := rune(raw[i])
-		n := -1
-		for j := 0; j < e.v.Len(); j++ {
-			x := e.v.Index(j)
-			if x.Kind() == Integer {
-				n = int(x.Int64())
-				continue
-			}
-			if x.Kind() == Name {
-				if int(raw[i]) == n {
-					r := nameToRune[x.Name()]
-					if r != 0 {
-						ch = r
-						break
-					}
-				}
-				n++
-			}
-		}
-		r = append(r, ch)
-	}
-	return string(r)
-}
-
-// A TextEncoding represents a mapping between
-// font code points and UTF-8 text.
-type TextEncoding interface {
-	// Decode returns the UTF-8 text corresponding to
-	// the sequence of code points in raw.
-	Decode(raw string) (text string)
-}
-
-type nopEncoder struct {
-}
-
-func (e *nopEncoder) Decode(raw string) (text string) {
-	return raw
-}
-
-type byteEncoder struct {
-	table *[256]rune
-}
-
-func (e *byteEncoder) Decode(raw string) (text string) {
-	r := make([]rune, 0, len(raw))
-	for i := 0; i < len(raw); i++ {
-		r = append(r, e.table[raw[i]])
-	}
-	return string(r)
-}
-
-type cmap struct {
-	space   [4][][2]string
-	bfrange []bfrange
-}
-
-func (m *cmap) Decode(raw string) (text string) {
-	var r []rune
-Parse:
-	for len(raw) > 0 {
-		for n := 1; n <= 4 && n <= len(raw); n++ {
-			for _, space := range m.space[n-1] {
-				if space[0] <= raw[:n] && raw[:n] <= space[1] {
-					text := raw[:n]
-					raw = raw[n:]
-					for _, bf := range m.bfrange {
-						if len(bf.lo) == n && bf.lo <= text && text <= bf.hi {
-							if bf.dst.Kind() == String {
-								s := bf.dst.RawString()
-								if bf.lo != text {
-									b := []byte(s)
-									b[len(b)-1] += text[len(text)-1] - bf.lo[len(bf.lo)-1]
-									s = string(b)
-								}
-								r = append(r, []rune(utf16Decode(s))...)
-								continue Parse
-							}
-							if bf.dst.Kind() == Array {
-								fmt.Printf("array %v\n", bf.dst)
-							} else {
-								fmt.Printf("unknown dst %v\n", bf.dst)
-							}
-							r = append(r, noRune)
-							continue Parse
-						}
-					}
-					fmt.Printf("no text for %q", text)
-					r = append(r, noRune)
-					continue Parse
-				}
-			}
-		}
-		println("no code space found")
-		r = append(r, noRune)
-		raw = raw[1:]
-	}
-	return string(r)
-}
-
-type bfrange struct {
-	lo  string
-	hi  string
-	dst Value
-}
-
-func readCmap(toUnicode Value) *cmap {
-	n := -1
-	var m cmap
-	ok := true
-	Interpret(toUnicode, func(stk *Stack, op string) {
-		if !ok {
-			return
-		}
-		switch op {
-		case "findresource":
-			category := stk.Pop()
-			key := stk.Pop()
-			fmt.Println("findresource", key, category)
-			stk.Push(newDict())
-		case "begincmap":
-			stk.Push(newDict())
-		case "endcmap":
-			stk.Pop()
-		case "begincodespacerange":
-			n = int(stk.Pop().Int64())
-		case "endcodespacerange":
-			if n < 0 {
-				println("missing begincodespacerange")
-				ok = false
-				return
-			}
-			for i := 0; i < n; i++ {
-				hi, lo := stk.Pop().RawString(), stk.Pop().RawString()
-				if len(lo) == 0 || len(lo) != len(hi) {
-					println("bad codespace range")
-					ok = false
-					return
-				}
-				m.space[len(lo)-1] = append(m.space[len(lo)-1], [2]string{lo, hi})
-			}
-			n = -1
-		case "beginbfrange":
-			n = int(stk.Pop().Int64())
-		case "endbfrange":
-			if n < 0 {
-				panic("missing beginbfrange")
-			}
-			for i := 0; i < n; i++ {
-				dst, srcHi, srcLo := stk.Pop(), stk.Pop().RawString(), stk.Pop().RawString()
-				m.bfrange = append(m.bfrange, bfrange{srcLo, srcHi, dst})
-			}
-		case "defineresource":
-			category := stk.Pop().Name()
-			value := stk.Pop()
-			key := stk.Pop().Name()
-			fmt.Println("defineresource", key, value, category)
-			stk.Push(value)
-		default:
-			println("interp\t", op)
-		}
-	})
-	if !ok {
-		return nil
-	}
-	return &m
-}
-
-type matrix [3][3]float64
-
-var ident = matrix{{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}
-
-func (x matrix) mul(y matrix) matrix {
-	var z matrix
-	for i := 0; i < 3; i++ {
-		for j := 0; j < 3; j++ {
-			for k := 0; k < 3; k++ {
-				z[i][j] += x[i][k] * y[k][j]
-			}
-		}
-	}
-	return z
-}
-
-// A Text represents a single piece of text drawn on a page.
-type Text struct {
-	Font     string  // the font used
-	FontSize float64 // the font size, in points (1/72 of an inch)
-	X        float64 // the X coordinate, in points, increasing left to right
-	Y        float64 // the Y coordinate, in points, increasing bottom to top
-	W        float64 // the width of the text, in points
-	S        string  // the actual UTF-8 text
-}
-
-// A Rect represents a rectangle.
-type Rect struct {
-	Min, Max Point
-}
-
-// A Point represents an X, Y pair.
-type Point struct {
-	X float64
-	Y float64
-}
-
-// Content describes the basic content on a page: the text and any drawn rectangles.
-type Content struct {
-	Text []Text
-	Rect []Rect
-}
-
-type gstate struct {
-	Tc    float64
-	Tw    float64
-	Th    float64
-	Tl    float64
-	Tf    Font
-	Tfs   float64
-	Tmode int
-	Trise float64
-	Tm    matrix
-	Tlm   matrix
-	Trm   matrix
-	CTM   matrix
-}
-
-// Content returns the page's content.
-func (p Page) Content() Content {
-	strm := p.V.Key("Contents")
-	var enc TextEncoding = &nopEncoder{}
-
-	var g = gstate{
-		Th:  1,
-		CTM: ident,
-	}
-
-	var text []Text
-	showText := func(s string) {
-		n := 0
-		for _, ch := range enc.Decode(s) {
-			Trm := matrix{{g.Tfs * g.Th, 0, 0}, {0, g.Tfs, 0}, {0, g.Trise, 1}}.mul(g.Tm).mul(g.CTM)
-			w0 := g.Tf.Width(int(s[n]))
-			n++
-			if ch != ' ' {
-				f := g.Tf.BaseFont()
-				if i := strings.Index(f, "+"); i >= 0 {
-					f = f[i+1:]
-				}
-				text = append(text, Text{f, Trm[0][0], Trm[2][0], Trm[2][1], w0 / 1000 * Trm[0][0], string(ch)})
-			}
-			tx := w0/1000*g.Tfs + g.Tc
-			if ch == ' ' {
-				tx += g.Tw
-			}
-			tx *= g.Th
-			g.Tm = matrix{{1, 0, 0}, {0, 1, 0}, {tx, 0, 1}}.mul(g.Tm)
-		}
-	}
-
-	var rect []Rect
-	var gstack []gstate
-	Interpret(strm, func(stk *Stack, op string) {
-		n := stk.Len()
-		args := make([]Value, n)
-		for i := n - 1; i >= 0; i-- {
-			args[i] = stk.Pop()
-		}
-		switch op {
-		default:
-			//fmt.Println(op, args)
-			return
-
-		case "cm": // update g.CTM
-			if len(args) != 6 {
-				panic("bad g.Tm")
-			}
-			var m matrix
-			for i := 0; i < 6; i++ {
-				m[i/2][i%2] = args[i].Float64()
-			}
-			m[2][2] = 1
-			g.CTM = m.mul(g.CTM)
-
-		case "gs": // set parameters from graphics state resource
-			gs := p.Resources().Key("ExtGState").Key(args[0].Name())
-			font := gs.Key("Font")
-			if font.Kind() == Array && font.Len() == 2 {
-				//fmt.Println("FONT", font)
-			}
-
-		case "f": // fill
-		case "g": // setgray
-		case "l": // lineto
-		case "m": // moveto
-
-		case "cs": // set colorspace non-stroking
-		case "scn": // set color non-stroking
-
-		case "re": // append rectangle to path
-			if len(args) != 4 {
-				panic("bad re")
-			}
-			x, y, w, h := args[0].Float64(), args[1].Float64(), args[2].Float64(), args[3].Float64()
-			rect = append(rect, Rect{Point{x, y}, Point{x + w, y + h}})
-
-		case "q": // save graphics state
-			gstack = append(gstack, g)
-
-		case "Q": // restore graphics state
-			n := len(gstack) - 1
-			g = gstack[n]
-			gstack = gstack[:n]
-
-		case "BT": // begin text (reset text matrix and line matrix)
-			g.Tm = ident
-			g.Tlm = g.Tm
-
-		case "ET": // end text
-
-		case "T*": // move to start of next line
-			x := matrix{{1, 0, 0}, {0, 1, 0}, {0, -g.Tl, 1}}
-			g.Tlm = x.mul(g.Tlm)
-			g.Tm = g.Tlm
-
-		case "Tc": // set character spacing
-			if len(args) != 1 {
-				panic("bad g.Tc")
-			}
-			g.Tc = args[0].Float64()
-
-		case "TD": // move text position and set leading
-			if len(args) != 2 {
-				panic("bad Td")
-			}
-			g.Tl = -args[1].Float64()
-			fallthrough
-		case "Td": // move text position
-			if len(args) != 2 {
-				panic("bad Td")
-			}
-			tx := args[0].Float64()
-			ty := args[1].Float64()
-			x := matrix{{1, 0, 0}, {0, 1, 0}, {tx, ty, 1}}
-			g.Tlm = x.mul(g.Tlm)
-			g.Tm = g.Tlm
-
-		case "Tf": // set text font and size
-			if len(args) != 2 {
-				panic("bad TL")
-			}
-			f := args[0].Name()
-			g.Tf = p.Font(f)
-			enc = g.Tf.Encoder()
-			if enc == nil {
-				println("no cmap for", f)
-				enc = &nopEncoder{}
-			}
-			g.Tfs = args[1].Float64()
-
-		case "\"": // set spacing, move to next line, and show text
-			if len(args) != 3 {
-				panic("bad \" operator")
-			}
-			g.Tw = args[0].Float64()
-			g.Tc = args[1].Float64()
-			args = args[2:]
-			fallthrough
-		case "'": // move to next line and show text
-			if len(args) != 1 {
-				panic("bad ' operator")
-			}
-			x := matrix{{1, 0, 0}, {0, 1, 0}, {0, -g.Tl, 1}}
-			g.Tlm = x.mul(g.Tlm)
-			g.Tm = g.Tlm
-			fallthrough
-		case "Tj": // show text
-			if len(args) != 1 {
-				panic("bad Tj operator")
-			}
-			showText(args[0].RawString())
-
-		case "TJ": // show text, allowing individual glyph positioning
-			v := args[0]
-			for i := 0; i < v.Len(); i++ {
-				x := v.Index(i)
-				if x.Kind() == String {
-					showText(x.RawString())
-				} else {
-					tx := -x.Float64() / 1000 * g.Tfs * g.Th
-					g.Tm = matrix{{1, 0, 0}, {0, 1, 0}, {tx, 0, 1}}.mul(g.Tm)
-				}
-			}
-
-		case "TL": // set text leading
-			if len(args) != 1 {
-				panic("bad TL")
-			}
-			g.Tl = args[0].Float64()
-
-		case "Tm": // set text matrix and line matrix
-			if len(args) != 6 {
-				panic("bad g.Tm")
-			}
-			var m matrix
-			for i := 0; i < 6; i++ {
-				m[i/2][i%2] = args[i].Float64()
-			}
-			m[2][2] = 1
-			g.Tm = m
-			g.Tlm = m
-
-		case "Tr": // set text rendering mode
-			if len(args) != 1 {
-				panic("bad Tr")
-			}
-			g.Tmode = int(args[0].Int64())
-
-		case "Ts": // set text rise
-			if len(args) != 1 {
-				panic("bad Ts")
-			}
-			g.Trise = args[0].Float64()
-
-		case "Tw": // set word spacing
-			if len(args) != 1 {
-				panic("bad g.Tw")
-			}
-			g.Tw = args[0].Float64()
-
-		case "Tz": // set horizontal text scaling
-			if len(args) != 1 {
-				panic("bad Tz")
-			}
-			g.Th = args[0].Float64() / 100
-		}
-	})
-	return Content{text, rect}
-}
-
-// TextVertical implements sort.Interface for sorting
-// a slice of Text values in vertical order, top to bottom,
-// and then left to right within a line.
-type TextVertical []Text
-
-func (x TextVertical) Len() int      { return len(x) }
-func (x TextVertical) Swap(i, j int) { x[i], x[j] = x[j], x[i] }
-func (x TextVertical) Less(i, j int) bool {
-	if x[i].Y != x[j].Y {
-		return x[i].Y > x[j].Y
-	}
-	return x[i].X < x[j].X
-}
-
-// TextVertical implements sort.Interface for sorting
-// a slice of Text values in horizontal order, left to right,
-// and then top to bottom within a column.
-type TextHorizontal []Text
-
-func (x TextHorizontal) Len() int      { return len(x) }
-func (x TextHorizontal) Swap(i, j int) { x[i], x[j] = x[j], x[i] }
-func (x TextHorizontal) Less(i, j int) bool {
-	if x[i].X != x[j].X {
-		return x[i].X < x[j].X
-	}
-	return x[i].Y > x[j].Y
-}
-
-// An Outline is a tree describing the outline (also known as the table of contents)
-// of a document.
-type Outline struct {
-	Title string    // title for this element
-	Child []Outline // child elements
-}
-
-// Outline returns the document outline.
-// The Outline returned is the root of the outline tree and typically has no Title itself.
-// That is, the children of the returned root are the top-level entries in the outline.
-func (r *Reader) Outline() Outline {
-	return buildOutline(r.Trailer().Key("Root").Key("Outlines"))
-}
-
-func buildOutline(entry Value) Outline {
-	var x Outline
-	x.Title = entry.Key("Title").Text()
-	for child := entry.Key("First"); child.Kind() == Dict; child = child.Key("Next") {
-		x.Child = append(x.Child, buildOutline(child))
-	}
-	return x
-}
diff --git a/vendor/rsc.io/pdf/ps.go b/vendor/rsc.io/pdf/ps.go
deleted file mode 100644
index 90c551e..0000000
--- a/vendor/rsc.io/pdf/ps.go
+++ /dev/null
@@ -1,138 +0,0 @@
-// Copyright 2014 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 pdf
-
-import (
-	"fmt"
-	"io"
-)
-
-// A Stack represents a stack of values.
-type Stack struct {
-	stack []Value
-}
-
-func (stk *Stack) Len() int {
-	return len(stk.stack)
-}
-
-func (stk *Stack) Push(v Value) {
-	stk.stack = append(stk.stack, v)
-}
-
-func (stk *Stack) Pop() Value {
-	n := len(stk.stack)
-	if n == 0 {
-		return Value{}
-	}
-	v := stk.stack[n-1]
-	stk.stack[n-1] = Value{}
-	stk.stack = stk.stack[:n-1]
-	return v
-}
-
-func newDict() Value {
-	return Value{nil, objptr{}, make(dict)}
-}
-
-// Interpret interprets the content in a stream as a basic PostScript program,
-// pushing values onto a stack and then calling the do function to execute
-// operators. The do function may push or pop values from the stack as needed
-// to implement op.
-//
-// Interpret handles the operators "dict", "currentdict", "begin", "end", "def", and "pop" itself.
-//
-// Interpret is not a full-blown PostScript interpreter. Its job is to handle the
-// very limited PostScript found in certain supporting file formats embedded
-// in PDF files, such as cmap files that describe the mapping from font code
-// points to Unicode code points.
-//
-// There is no support for executable blocks, among other limitations.
-//
-func Interpret(strm Value, do func(stk *Stack, op string)) {
-	rd := strm.Reader()
-	b := newBuffer(rd, 0)
-	b.allowEOF = true
-	b.allowObjptr = false
-	b.allowStream = false
-	var stk Stack
-	var dicts []dict
-Reading:
-	for {
-		tok := b.readToken()
-		if tok == io.EOF {
-			break
-		}
-		if kw, ok := tok.(keyword); ok {
-			switch kw {
-			case "null", "[", "]", "<<", ">>":
-				break
-			default:
-				for i := len(dicts) - 1; i >= 0; i-- {
-					if v, ok := dicts[i][name(kw)]; ok {
-						stk.Push(Value{nil, objptr{}, v})
-						continue Reading
-					}
-				}
-				do(&stk, string(kw))
-				continue
-			case "dict":
-				stk.Pop()
-				stk.Push(Value{nil, objptr{}, make(dict)})
-				continue
-			case "currentdict":
-				if len(dicts) == 0 {
-					panic("no current dictionary")
-				}
-				stk.Push(Value{nil, objptr{}, dicts[len(dicts)-1]})
-				continue
-			case "begin":
-				d := stk.Pop()
-				if d.Kind() != Dict {
-					panic("cannot begin non-dict")
-				}
-				dicts = append(dicts, d.data.(dict))
-				continue
-			case "end":
-				if len(dicts) <= 0 {
-					panic("mismatched begin/end")
-				}
-				dicts = dicts[:len(dicts)-1]
-				continue
-			case "def":
-				if len(dicts) <= 0 {
-					panic("def without open dict")
-				}
-				val := stk.Pop()
-				key, ok := stk.Pop().data.(name)
-				if !ok {
-					panic("def of non-name")
-				}
-				dicts[len(dicts)-1][key] = val.data
-				continue
-			case "pop":
-				stk.Pop()
-				continue
-			}
-		}
-		b.unreadToken(tok)
-		obj := b.readObject()
-		stk.Push(Value{nil, objptr{}, obj})
-	}
-}
-
-type seqReader struct {
-	rd     io.Reader
-	offset int64
-}
-
-func (r *seqReader) ReadAt(buf []byte, offset int64) (int, error) {
-	if offset != r.offset {
-		return 0, fmt.Errorf("non-sequential read of stream")
-	}
-	n, err := io.ReadFull(r.rd, buf)
-	r.offset += int64(n)
-	return n, err
-}
diff --git a/vendor/rsc.io/pdf/read.go b/vendor/rsc.io/pdf/read.go
deleted file mode 100644
index 32a7c80..0000000
--- a/vendor/rsc.io/pdf/read.go
+++ /dev/null
@@ -1,1079 +0,0 @@
-// Copyright 2014 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 pdf implements reading of PDF files.
-//
-// Overview
-//
-// PDF is Adobe's Portable Document Format, ubiquitous on the internet.
-// A PDF document is a complex data format built on a fairly simple structure.
-// This package exposes the simple structure along with some wrappers to
-// extract basic information. If more complex information is needed, it is
-// possible to extract that information by interpreting the structure exposed
-// by this package.
-//
-// Specifically, a PDF is a data structure built from Values, each of which has
-// one of the following Kinds:
-//
-//	Null, for the null object.
-//	Integer, for an integer.
-//	Real, for a floating-point number.
-//	Bool, for a boolean value.
-//	Name, for a name constant (as in /Helvetica).
-//	String, for a string constant.
-//	Dict, for a dictionary of name-value pairs.
-//	Array, for an array of values.
-//	Stream, for an opaque data stream and associated header dictionary.
-//
-// The accessors on Value—Int64, Float64, Bool, Name, and so on—return
-// a view of the data as the given type. When there is no appropriate view,
-// the accessor returns a zero result. For example, the Name accessor returns
-// the empty string if called on a Value v for which v.Kind() != Name.
-// Returning zero values this way, especially from the Dict and Array accessors,
-// which themselves return Values, makes it possible to traverse a PDF quickly
-// without writing any error checking. On the other hand, it means that mistakes
-// can go unreported.
-//
-// The basic structure of the PDF file is exposed as the graph of Values.
-//
-// Most richer data structures in a PDF file are dictionaries with specific interpretations
-// of the name-value pairs. The Font and Page wrappers make the interpretation
-// of a specific Value as the corresponding type easier. They are only helpers, though:
-// they are implemented only in terms of the Value API and could be moved outside
-// the package. Equally important, traversal of other PDF data structures can be implemented
-// in other packages as needed.
-//
-package pdf // import "rsc.io/pdf"
-
-// BUG(rsc): The package is incomplete, although it has been used successfully on some
-// large real-world PDF files.
-
-// BUG(rsc): There is no support for closing open PDF files. If you drop all references to a Reader,
-// the underlying reader will eventually be garbage collected.
-
-// BUG(rsc): The library makes no attempt at efficiency. A value cache maintained in the Reader
-// would probably help significantly.
-
-// BUG(rsc): The support for reading encrypted files is weak.
-
-// BUG(rsc): The Value API does not support error reporting. The intent is to allow users to
-// set an error reporting callback in Reader, but that code has not been implemented.
-
-import (
-	"bytes"
-	"compress/zlib"
-	"crypto/aes"
-	"crypto/cipher"
-	"crypto/md5"
-	"crypto/rc4"
-	"fmt"
-	"io"
-	"io/ioutil"
-	"os"
-	"sort"
-	"strconv"
-)
-
-// A Reader is a single PDF file open for reading.
-type Reader struct {
-	f          io.ReaderAt
-	end        int64
-	xref       []xref
-	trailer    dict
-	trailerptr objptr
-	key        []byte
-	useAES     bool
-}
-
-type xref struct {
-	ptr      objptr
-	inStream bool
-	stream   objptr
-	offset   int64
-}
-
-func (r *Reader) errorf(format string, args ...interface{}) {
-	panic(fmt.Errorf(format, args...))
-}
-
-// Open opens a file for reading.
-func Open(file string) (*Reader, error) {
-	// TODO: Deal with closing file.
-	f, err := os.Open(file)
-	if err != nil {
-		return nil, err
-	}
-	fi, err := f.Stat()
-	if err != nil {
-		f.Close()
-		return nil, err
-	}
-	return NewReader(f, fi.Size())
-}
-
-// NewReader opens a file for reading, using the data in f with the given total size.
-func NewReader(f io.ReaderAt, size int64) (*Reader, error) {
-	return NewReaderEncrypted(f, size, nil)
-}
-
-// NewReaderEncrypted opens a file for reading, using the data in f with the given total size.
-// If the PDF is encrypted, NewReaderEncrypted calls pw repeatedly to obtain passwords
-// to try. If pw returns the empty string, NewReaderEncrypted stops trying to decrypt
-// the file and returns an error.
-func NewReaderEncrypted(f io.ReaderAt, size int64, pw func() string) (*Reader, error) {
-	buf := make([]byte, 10)
-	f.ReadAt(buf, 0)
-	if !bytes.HasPrefix(buf, []byte("%PDF-1.")) || buf[7] < '0' || buf[7] > '7' || buf[8] != '\r' && buf[8] != '\n' {
-		return nil, fmt.Errorf("not a PDF file: invalid header")
-	}
-	end := size
-	const endChunk = 100
-	buf = make([]byte, endChunk)
-	f.ReadAt(buf, end-endChunk)
-	for len(buf) > 0 && buf[len(buf)-1] == '\n' || buf[len(buf)-1] == '\r' {
-		buf = buf[:len(buf)-1]
-	}
-	buf = bytes.TrimRight(buf, "\r\n\t ")
-	if !bytes.HasSuffix(buf, []byte("%%EOF")) {
-		return nil, fmt.Errorf("not a PDF file: missing %%%%EOF")
-	}
-	i := findLastLine(buf, "startxref")
-	if i < 0 {
-		return nil, fmt.Errorf("malformed PDF file: missing final startxref")
-	}
-
-	r := &Reader{
-		f:   f,
-		end: end,
-	}
-	pos := end - endChunk + int64(i)
-	b := newBuffer(io.NewSectionReader(f, pos, end-pos), pos)
-	if b.readToken() != keyword("startxref") {
-		return nil, fmt.Errorf("malformed PDF file: missing startxref")
-	}
-	startxref, ok := b.readToken().(int64)
-	if !ok {
-		return nil, fmt.Errorf("malformed PDF file: startxref not followed by integer")
-	}
-	b = newBuffer(io.NewSectionReader(r.f, startxref, r.end-startxref), startxref)
-	xref, trailerptr, trailer, err := readXref(r, b)
-	if err != nil {
-		return nil, err
-	}
-	r.xref = xref
-	r.trailer = trailer
-	r.trailerptr = trailerptr
-	if trailer["Encrypt"] == nil {
-		return r, nil
-	}
-	err = r.initEncrypt("")
-	if err == nil {
-		return r, nil
-	}
-	if pw == nil || err != ErrInvalidPassword {
-		return nil, err
-	}
-	for {
-		next := pw()
-		if next == "" {
-			break
-		}
-		if r.initEncrypt(next) == nil {
-			return r, nil
-		}
-	}
-	return nil, err
-}
-
-// Trailer returns the file's Trailer value.
-func (r *Reader) Trailer() Value {
-	return Value{r, r.trailerptr, r.trailer}
-}
-
-func readXref(r *Reader, b *buffer) ([]xref, objptr, dict, error) {
-	tok := b.readToken()
-	if tok == keyword("xref") {
-		return readXrefTable(r, b)
-	}
-	if _, ok := tok.(int64); ok {
-		b.unreadToken(tok)
-		return readXrefStream(r, b)
-	}
-	return nil, objptr{}, nil, fmt.Errorf("malformed PDF: cross-reference table not found: %v", tok)
-}
-
-func readXrefStream(r *Reader, b *buffer) ([]xref, objptr, dict, error) {
-	obj1 := b.readObject()
-	obj, ok := obj1.(objdef)
-	if !ok {
-		return nil, objptr{}, nil, fmt.Errorf("malformed PDF: cross-reference table not found: %v", objfmt(obj1))
-	}
-	strmptr := obj.ptr
-	strm, ok := obj.obj.(stream)
-	if !ok {
-		return nil, objptr{}, nil, fmt.Errorf("malformed PDF: cross-reference table not found: %v", objfmt(obj))
-	}
-	if strm.hdr["Type"] != name("XRef") {
-		return nil, objptr{}, nil, fmt.Errorf("malformed PDF: xref stream does not have type XRef")
-	}
-	size, ok := strm.hdr["Size"].(int64)
-	if !ok {
-		return nil, objptr{}, nil, fmt.Errorf("malformed PDF: xref stream missing Size")
-	}
-	table := make([]xref, size)
-
-	table, err := readXrefStreamData(r, strm, table, size)
-	if err != nil {
-		return nil, objptr{}, nil, fmt.Errorf("malformed PDF: %v", err)
-	}
-
-	for prevoff := strm.hdr["Prev"]; prevoff != nil; {
-		off, ok := prevoff.(int64)
-		if !ok {
-			return nil, objptr{}, nil, fmt.Errorf("malformed PDF: xref Prev is not integer: %v", prevoff)
-		}
-		b := newBuffer(io.NewSectionReader(r.f, off, r.end-off), off)
-		obj1 := b.readObject()
-		obj, ok := obj1.(objdef)
-		if !ok {
-			return nil, objptr{}, nil, fmt.Errorf("malformed PDF: xref prev stream not found: %v", objfmt(obj1))
-		}
-		prevstrm, ok := obj.obj.(stream)
-		if !ok {
-			return nil, objptr{}, nil, fmt.Errorf("malformed PDF: xref prev stream not found: %v", objfmt(obj))
-		}
-		prevoff = prevstrm.hdr["Prev"]
-		prev := Value{r, objptr{}, prevstrm}
-		if prev.Kind() != Stream {
-			return nil, objptr{}, nil, fmt.Errorf("malformed PDF: xref prev stream is not stream: %v", prev)
-		}
-		if prev.Key("Type").Name() != "XRef" {
-			return nil, objptr{}, nil, fmt.Errorf("malformed PDF: xref prev stream does not have type XRef")
-		}
-		psize := prev.Key("Size").Int64()
-		if psize > size {
-			return nil, objptr{}, nil, fmt.Errorf("malformed PDF: xref prev stream larger than last stream")
-		}
-		if table, err = readXrefStreamData(r, prev.data.(stream), table, psize); err != nil {
-			return nil, objptr{}, nil, fmt.Errorf("malformed PDF: reading xref prev stream: %v", err)
-		}
-	}
-
-	return table, strmptr, strm.hdr, nil
-}
-
-func readXrefStreamData(r *Reader, strm stream, table []xref, size int64) ([]xref, error) {
-	index, _ := strm.hdr["Index"].(array)
-	if index == nil {
-		index = array{int64(0), size}
-	}
-	if len(index)%2 != 0 {
-		return nil, fmt.Errorf("invalid Index array %v", objfmt(index))
-	}
-	ww, ok := strm.hdr["W"].(array)
-	if !ok {
-		return nil, fmt.Errorf("xref stream missing W array")
-	}
-
-	var w []int
-	for _, x := range ww {
-		i, ok := x.(int64)
-		if !ok || int64(int(i)) != i {
-			return nil, fmt.Errorf("invalid W array %v", objfmt(ww))
-		}
-		w = append(w, int(i))
-	}
-	if len(w) < 3 {
-		return nil, fmt.Errorf("invalid W array %v", objfmt(ww))
-	}
-
-	v := Value{r, objptr{}, strm}
-	wtotal := 0
-	for _, wid := range w {
-		wtotal += wid
-	}
-	buf := make([]byte, wtotal)
-	data := v.Reader()
-	for len(index) > 0 {
-		start, ok1 := index[0].(int64)
-		n, ok2 := index[1].(int64)
-		if !ok1 || !ok2 {
-			return nil, fmt.Errorf("malformed Index pair %v %v %T %T", objfmt(index[0]), objfmt(index[1]), index[0], index[1])
-		}
-		index = index[2:]
-		for i := 0; i < int(n); i++ {
-			_, err := io.ReadFull(data, buf)
-			if err != nil {
-				return nil, fmt.Errorf("error reading xref stream: %v", err)
-			}
-			v1 := decodeInt(buf[0:w[0]])
-			if w[0] == 0 {
-				v1 = 1
-			}
-			v2 := decodeInt(buf[w[0] : w[0]+w[1]])
-			v3 := decodeInt(buf[w[0]+w[1] : w[0]+w[1]+w[2]])
-			x := int(start) + i
-			for cap(table) <= x {
-				table = append(table[:cap(table)], xref{})
-			}
-			if table[x].ptr != (objptr{}) {
-				continue
-			}
-			switch v1 {
-			case 0:
-				table[x] = xref{ptr: objptr{0, 65535}}
-			case 1:
-				table[x] = xref{ptr: objptr{uint32(x), uint16(v3)}, offset: int64(v2)}
-			case 2:
-				table[x] = xref{ptr: objptr{uint32(x), 0}, inStream: true, stream: objptr{uint32(v2), 0}, offset: int64(v3)}
-			default:
-				fmt.Printf("invalid xref stream type %d: %x\n", v1, buf)
-			}
-		}
-	}
-	return table, nil
-}
-
-func decodeInt(b []byte) int {
-	x := 0
-	for _, c := range b {
-		x = x<<8 | int(c)
-	}
-	return x
-}
-
-func readXrefTable(r *Reader, b *buffer) ([]xref, objptr, dict, error) {
-	var table []xref
-
-	table, err := readXrefTableData(b, table)
-	if err != nil {
-		return nil, objptr{}, nil, fmt.Errorf("malformed PDF: %v", err)
-	}
-
-	trailer, ok := b.readObject().(dict)
-	if !ok {
-		return nil, objptr{}, nil, fmt.Errorf("malformed PDF: xref table not followed by trailer dictionary")
-	}
-
-	for prevoff := trailer["Prev"]; prevoff != nil; {
-		off, ok := prevoff.(int64)
-		if !ok {
-			return nil, objptr{}, nil, fmt.Errorf("malformed PDF: xref Prev is not integer: %v", prevoff)
-		}
-		b := newBuffer(io.NewSectionReader(r.f, off, r.end-off), off)
-		tok := b.readToken()
-		if tok != keyword("xref") {
-			return nil, objptr{}, nil, fmt.Errorf("malformed PDF: xref Prev does not point to xref")
-		}
-		table, err = readXrefTableData(b, table)
-		if err != nil {
-			return nil, objptr{}, nil, fmt.Errorf("malformed PDF: %v", err)
-		}
-
-		trailer, ok := b.readObject().(dict)
-		if !ok {
-			return nil, objptr{}, nil, fmt.Errorf("malformed PDF: xref Prev table not followed by trailer dictionary")
-		}
-		prevoff = trailer["Prev"]
-	}
-
-	size, ok := trailer[name("Size")].(int64)
-	if !ok {
-		return nil, objptr{}, nil, fmt.Errorf("malformed PDF: trailer missing /Size entry")
-	}
-
-	if size < int64(len(table)) {
-		table = table[:size]
-	}
-
-	return table, objptr{}, trailer, nil
-}
-
-func readXrefTableData(b *buffer, table []xref) ([]xref, error) {
-	for {
-		tok := b.readToken()
-		if tok == keyword("trailer") {
-			break
-		}
-		start, ok1 := tok.(int64)
-		n, ok2 := b.readToken().(int64)
-		if !ok1 || !ok2 {
-			return nil, fmt.Errorf("malformed xref table")
-		}
-		for i := 0; i < int(n); i++ {
-			off, ok1 := b.readToken().(int64)
-			gen, ok2 := b.readToken().(int64)
-			alloc, ok3 := b.readToken().(keyword)
-			if !ok1 || !ok2 || !ok3 || alloc != keyword("f") && alloc != keyword("n") {
-				return nil, fmt.Errorf("malformed xref table")
-			}
-			x := int(start) + i
-			for cap(table) <= x {
-				table = append(table[:cap(table)], xref{})
-			}
-			if len(table) <= x {
-				table = table[:x+1]
-			}
-			if alloc == "n" && table[x].offset == 0 {
-				table[x] = xref{ptr: objptr{uint32(x), uint16(gen)}, offset: int64(off)}
-			}
-		}
-	}
-	return table, nil
-}
-
-func findLastLine(buf []byte, s string) int {
-	bs := []byte(s)
-	max := len(buf)
-	for {
-		i := bytes.LastIndex(buf[:max], bs)
-		if i <= 0 || i+len(bs) >= len(buf) {
-			return -1
-		}
-		if (buf[i-1] == '\n' || buf[i-1] == '\r') && (buf[i+len(bs)] == '\n' || buf[i+len(bs)] == '\r') {
-			return i
-		}
-		max = i
-	}
-}
-
-// A Value is a single PDF value, such as an integer, dictionary, or array.
-// The zero Value is a PDF null (Kind() == Null, IsNull() = true).
-type Value struct {
-	r    *Reader
-	ptr  objptr
-	data interface{}
-}
-
-// IsNull reports whether the value is a null. It is equivalent to Kind() == Null.
-func (v Value) IsNull() bool {
-	return v.data == nil
-}
-
-// A ValueKind specifies the kind of data underlying a Value.
-type ValueKind int
-
-// The PDF value kinds.
-const (
-	Null ValueKind = iota
-	Bool
-	Integer
-	Real
-	String
-	Name
-	Dict
-	Array
-	Stream
-)
-
-// Kind reports the kind of value underlying v.
-func (v Value) Kind() ValueKind {
-	switch v.data.(type) {
-	default:
-		return Null
-	case bool:
-		return Bool
-	case int64:
-		return Integer
-	case float64:
-		return Real
-	case string:
-		return String
-	case name:
-		return Name
-	case dict:
-		return Dict
-	case array:
-		return Array
-	case stream:
-		return Stream
-	}
-}
-
-// String returns a textual representation of the value v.
-// Note that String is not the accessor for values with Kind() == String.
-// To access such values, see RawString, Text, and TextFromUTF16.
-func (v Value) String() string {
-	return objfmt(v.data)
-}
-
-func objfmt(x interface{}) string {
-	switch x := x.(type) {
-	default:
-		return fmt.Sprint(x)
-	case string:
-		if isPDFDocEncoded(x) {
-			return strconv.Quote(pdfDocDecode(x))
-		}
-		if isUTF16(x) {
-			return strconv.Quote(utf16Decode(x[2:]))
-		}
-		return strconv.Quote(x)
-	case name:
-		return "/" + string(x)
-	case dict:
-		var keys []string
-		for k := range x {
-			keys = append(keys, string(k))
-		}
-		sort.Strings(keys)
-		var buf bytes.Buffer
-		buf.WriteString("<<")
-		for i, k := range keys {
-			elem := x[name(k)]
-			if i > 0 {
-				buf.WriteString(" ")
-			}
-			buf.WriteString("/")
-			buf.WriteString(k)
-			buf.WriteString(" ")
-			buf.WriteString(objfmt(elem))
-		}
-		buf.WriteString(">>")
-		return buf.String()
-
-	case array:
-		var buf bytes.Buffer
-		buf.WriteString("[")
-		for i, elem := range x {
-			if i > 0 {
-				buf.WriteString(" ")
-			}
-			buf.WriteString(objfmt(elem))
-		}
-		buf.WriteString("]")
-		return buf.String()
-
-	case stream:
-		return fmt.Sprintf("%v@%d", objfmt(x.hdr), x.offset)
-
-	case objptr:
-		return fmt.Sprintf("%d %d R", x.id, x.gen)
-
-	case objdef:
-		return fmt.Sprintf("{%d %d obj}%v", x.ptr.id, x.ptr.gen, objfmt(x.obj))
-	}
-}
-
-// Bool returns v's boolean value.
-// If v.Kind() != Bool, Bool returns false.
-func (v Value) Bool() bool {
-	x, ok := v.data.(bool)
-	if !ok {
-		return false
-	}
-	return x
-}
-
-// Int64 returns v's int64 value.
-// If v.Kind() != Int64, Int64 returns 0.
-func (v Value) Int64() int64 {
-	x, ok := v.data.(int64)
-	if !ok {
-		return 0
-	}
-	return x
-}
-
-// Float64 returns v's float64 value, converting from integer if necessary.
-// If v.Kind() != Float64 and v.Kind() != Int64, Float64 returns 0.
-func (v Value) Float64() float64 {
-	x, ok := v.data.(float64)
-	if !ok {
-		x, ok := v.data.(int64)
-		if ok {
-			return float64(x)
-		}
-		return 0
-	}
-	return x
-}
-
-// RawString returns v's string value.
-// If v.Kind() != String, RawString returns the empty string.
-func (v Value) RawString() string {
-	x, ok := v.data.(string)
-	if !ok {
-		return ""
-	}
-	return x
-}
-
-// Text returns v's string value interpreted as a ``text string'' (defined in the PDF spec)
-// and converted to UTF-8.
-// If v.Kind() != String, Text returns the empty string.
-func (v Value) Text() string {
-	x, ok := v.data.(string)
-	if !ok {
-		return ""
-	}
-	if isPDFDocEncoded(x) {
-		return pdfDocDecode(x)
-	}
-	if isUTF16(x) {
-		return utf16Decode(x[2:])
-	}
-	return x
-}
-
-// TextFromUTF16 returns v's string value interpreted as big-endian UTF-16
-// and then converted to UTF-8.
-// If v.Kind() != String or if the data is not valid UTF-16, TextFromUTF16 returns
-// the empty string.
-func (v Value) TextFromUTF16() string {
-	x, ok := v.data.(string)
-	if !ok {
-		return ""
-	}
-	if len(x)%2 == 1 {
-		return ""
-	}
-	if x == "" {
-		return ""
-	}
-	return utf16Decode(x)
-}
-
-// Name returns v's name value.
-// If v.Kind() != Name, Name returns the empty string.
-// The returned name does not include the leading slash:
-// if v corresponds to the name written using the syntax /Helvetica,
-// Name() == "Helvetica".
-func (v Value) Name() string {
-	x, ok := v.data.(name)
-	if !ok {
-		return ""
-	}
-	return string(x)
-}
-
-// Key returns the value associated with the given name key in the dictionary v.
-// Like the result of the Name method, the key should not include a leading slash.
-// If v is a stream, Key applies to the stream's header dictionary.
-// If v.Kind() != Dict and v.Kind() != Stream, Key returns a null Value.
-func (v Value) Key(key string) Value {
-	x, ok := v.data.(dict)
-	if !ok {
-		strm, ok := v.data.(stream)
-		if !ok {
-			return Value{}
-		}
-		x = strm.hdr
-	}
-	return v.r.resolve(v.ptr, x[name(key)])
-}
-
-// Keys returns a sorted list of the keys in the dictionary v.
-// If v is a stream, Keys applies to the stream's header dictionary.
-// If v.Kind() != Dict and v.Kind() != Stream, Keys returns nil.
-func (v Value) Keys() []string {
-	x, ok := v.data.(dict)
-	if !ok {
-		strm, ok := v.data.(stream)
-		if !ok {
-			return nil
-		}
-		x = strm.hdr
-	}
-	keys := []string{} // not nil
-	for k := range x {
-		keys = append(keys, string(k))
-	}
-	sort.Strings(keys)
-	return keys
-}
-
-// Index returns the i'th element in the array v.
-// If v.Kind() != Array or if i is outside the array bounds,
-// Index returns a null Value.
-func (v Value) Index(i int) Value {
-	x, ok := v.data.(array)
-	if !ok || i < 0 || i >= len(x) {
-		return Value{}
-	}
-	return v.r.resolve(v.ptr, x[i])
-}
-
-// Len returns the length of the array v.
-// If v.Kind() != Array, Len returns 0.
-func (v Value) Len() int {
-	x, ok := v.data.(array)
-	if !ok {
-		return 0
-	}
-	return len(x)
-}
-
-func (r *Reader) resolve(parent objptr, x interface{}) Value {
-	if ptr, ok := x.(objptr); ok {
-		if ptr.id >= uint32(len(r.xref)) {
-			return Value{}
-		}
-		xref := r.xref[ptr.id]
-		if xref.ptr != ptr || !xref.inStream && xref.offset == 0 {
-			return Value{}
-		}
-		var obj object
-		if xref.inStream {
-			strm := r.resolve(parent, xref.stream)
-		Search:
-			for {
-				if strm.Kind() != Stream {
-					panic("not a stream")
-				}
-				if strm.Key("Type").Name() != "ObjStm" {
-					panic("not an object stream")
-				}
-				n := int(strm.Key("N").Int64())
-				first := strm.Key("First").Int64()
-				if first == 0 {
-					panic("missing First")
-				}
-				b := newBuffer(strm.Reader(), 0)
-				b.allowEOF = true
-				for i := 0; i < n; i++ {
-					id, _ := b.readToken().(int64)
-					off, _ := b.readToken().(int64)
-					if uint32(id) == ptr.id {
-						b.seekForward(first + off)
-						x = b.readObject()
-						break Search
-					}
-				}
-				ext := strm.Key("Extends")
-				if ext.Kind() != Stream {
-					panic("cannot find object in stream")
-				}
-				strm = ext
-			}
-		} else {
-			b := newBuffer(io.NewSectionReader(r.f, xref.offset, r.end-xref.offset), xref.offset)
-			b.key = r.key
-			b.useAES = r.useAES
-			obj = b.readObject()
-			def, ok := obj.(objdef)
-			if !ok {
-				panic(fmt.Errorf("loading %v: found %T instead of objdef", ptr, obj))
-				//return Value{}
-			}
-			if def.ptr != ptr {
-				panic(fmt.Errorf("loading %v: found %v", ptr, def.ptr))
-			}
-			x = def.obj
-		}
-		parent = ptr
-	}
-
-	switch x := x.(type) {
-	case nil, bool, int64, float64, name, dict, array, stream:
-		return Value{r, parent, x}
-	case string:
-		return Value{r, parent, x}
-	default:
-		panic(fmt.Errorf("unexpected value type %T in resolve", x))
-	}
-}
-
-type errorReadCloser struct {
-	err error
-}
-
-func (e *errorReadCloser) Read([]byte) (int, error) {
-	return 0, e.err
-}
-
-func (e *errorReadCloser) Close() error {
-	return e.err
-}
-
-// Reader returns the data contained in the stream v.
-// If v.Kind() != Stream, Reader returns a ReadCloser that
-// responds to all reads with a ``stream not present'' error.
-func (v Value) Reader() io.ReadCloser {
-	x, ok := v.data.(stream)
-	if !ok {
-		return &errorReadCloser{fmt.Errorf("stream not present")}
-	}
-	var rd io.Reader
-	rd = io.NewSectionReader(v.r.f, x.offset, v.Key("Length").Int64())
-	if v.r.key != nil {
-		rd = decryptStream(v.r.key, v.r.useAES, x.ptr, rd)
-	}
-	filter := v.Key("Filter")
-	param := v.Key("DecodeParms")
-	switch filter.Kind() {
-	default:
-		panic(fmt.Errorf("unsupported filter %v", filter))
-	case Null:
-		// ok
-	case Name:
-		rd = applyFilter(rd, filter.Name(), param)
-	case Array:
-		for i := 0; i < filter.Len(); i++ {
-			rd = applyFilter(rd, filter.Index(i).Name(), param.Index(i))
-		}
-	}
-
-	return ioutil.NopCloser(rd)
-}
-
-func applyFilter(rd io.Reader, name string, param Value) io.Reader {
-	switch name {
-	default:
-		panic("unknown filter " + name)
-	case "FlateDecode":
-		zr, err := zlib.NewReader(rd)
-		if err != nil {
-			panic(err)
-		}
-		pred := param.Key("Predictor")
-		if pred.Kind() == Null {
-			return zr
-		}
-		columns := param.Key("Columns").Int64()
-		switch pred.Int64() {
-		default:
-			fmt.Println("unknown predictor", pred)
-			panic("pred")
-		case 12:
-			return &pngUpReader{r: zr, hist: make([]byte, 1+columns), tmp: make([]byte, 1+columns)}
-		}
-	}
-}
-
-type pngUpReader struct {
-	r    io.Reader
-	hist []byte
-	tmp  []byte
-	pend []byte
-}
-
-func (r *pngUpReader) Read(b []byte) (int, error) {
-	n := 0
-	for len(b) > 0 {
-		if len(r.pend) > 0 {
-			m := copy(b, r.pend)
-			n += m
-			b = b[m:]
-			r.pend = r.pend[m:]
-			continue
-		}
-		_, err := io.ReadFull(r.r, r.tmp)
-		if err != nil {
-			return n, err
-		}
-		if r.tmp[0] != 2 {
-			return n, fmt.Errorf("malformed PNG-Up encoding")
-		}
-		for i, b := range r.tmp {
-			r.hist[i] += b
-		}
-		r.pend = r.hist[1:]
-	}
-	return n, nil
-}
-
-var passwordPad = []byte{
-	0x28, 0xBF, 0x4E, 0x5E, 0x4E, 0x75, 0x8A, 0x41, 0x64, 0x00, 0x4E, 0x56, 0xFF, 0xFA, 0x01, 0x08,
-	0x2E, 0x2E, 0x00, 0xB6, 0xD0, 0x68, 0x3E, 0x80, 0x2F, 0x0C, 0xA9, 0xFE, 0x64, 0x53, 0x69, 0x7A,
-}
-
-func (r *Reader) initEncrypt(password string) error {
-	// See PDF 32000-1:2008, §7.6.
-	encrypt, _ := r.resolve(objptr{}, r.trailer["Encrypt"]).data.(dict)
-	if encrypt["Filter"] != name("Standard") {
-		return fmt.Errorf("unsupported PDF: encryption filter %v", objfmt(encrypt["Filter"]))
-	}
-	n, _ := encrypt["Length"].(int64)
-	if n == 0 {
-		n = 40
-	}
-	if n%8 != 0 || n > 128 || n < 40 {
-		return fmt.Errorf("malformed PDF: %d-bit encryption key", n)
-	}
-	V, _ := encrypt["V"].(int64)
-	if V != 1 && V != 2 && (V != 4 || !okayV4(encrypt)) {
-		return fmt.Errorf("unsupported PDF: encryption version V=%d; %v", V, objfmt(encrypt))
-	}
-
-	ids, ok := r.trailer["ID"].(array)
-	if !ok || len(ids) < 1 {
-		return fmt.Errorf("malformed PDF: missing ID in trailer")
-	}
-	idstr, ok := ids[0].(string)
-	if !ok {
-		return fmt.Errorf("malformed PDF: missing ID in trailer")
-	}
-	ID := []byte(idstr)
-
-	R, _ := encrypt["R"].(int64)
-	if R < 2 {
-		return fmt.Errorf("malformed PDF: encryption revision R=%d", R)
-	}
-	if R > 4 {
-		return fmt.Errorf("unsupported PDF: encryption revision R=%d", R)
-	}
-	O, _ := encrypt["O"].(string)
-	U, _ := encrypt["U"].(string)
-	if len(O) != 32 || len(U) != 32 {
-		return fmt.Errorf("malformed PDF: missing O= or U= encryption parameters")
-	}
-	p, _ := encrypt["P"].(int64)
-	P := uint32(p)
-
-	// TODO: Password should be converted to Latin-1.
-	pw := []byte(password)
-	h := md5.New()
-	if len(pw) >= 32 {
-		h.Write(pw[:32])
-	} else {
-		h.Write(pw)
-		h.Write(passwordPad[:32-len(pw)])
-	}
-	h.Write([]byte(O))
-	h.Write([]byte{byte(P), byte(P >> 8), byte(P >> 16), byte(P >> 24)})
-	h.Write([]byte(ID))
-	key := h.Sum(nil)
-
-	if R >= 3 {
-		for i := 0; i < 50; i++ {
-			h.Reset()
-			h.Write(key[:n/8])
-			key = h.Sum(key[:0])
-		}
-		key = key[:n/8]
-	} else {
-		key = key[:40/8]
-	}
-
-	c, err := rc4.NewCipher(key)
-	if err != nil {
-		return fmt.Errorf("malformed PDF: invalid RC4 key: %v", err)
-	}
-
-	var u []byte
-	if R == 2 {
-		u = make([]byte, 32)
-		copy(u, passwordPad)
-		c.XORKeyStream(u, u)
-	} else {
-		h.Reset()
-		h.Write(passwordPad)
-		h.Write([]byte(ID))
-		u = h.Sum(nil)
-		c.XORKeyStream(u, u)
-
-		for i := 1; i <= 19; i++ {
-			key1 := make([]byte, len(key))
-			copy(key1, key)
-			for j := range key1 {
-				key1[j] ^= byte(i)
-			}
-			c, _ = rc4.NewCipher(key1)
-			c.XORKeyStream(u, u)
-		}
-	}
-
-	if !bytes.HasPrefix([]byte(U), u) {
-		return ErrInvalidPassword
-	}
-
-	r.key = key
-	r.useAES = V == 4
-
-	return nil
-}
-
-var ErrInvalidPassword = fmt.Errorf("encrypted PDF: invalid password")
-
-func okayV4(encrypt dict) bool {
-	cf, ok := encrypt["CF"].(dict)
-	if !ok {
-		return false
-	}
-	stmf, ok := encrypt["StmF"].(name)
-	if !ok {
-		return false
-	}
-	strf, ok := encrypt["StrF"].(name)
-	if !ok {
-		return false
-	}
-	if stmf != strf {
-		return false
-	}
-	cfparam, ok := cf[stmf].(dict)
-	if cfparam["AuthEvent"] != nil && cfparam["AuthEvent"] != name("DocOpen") {
-		return false
-	}
-	if cfparam["Length"] != nil && cfparam["Length"] != int64(16) {
-		return false
-	}
-	if cfparam["CFM"] != name("AESV2") {
-		return false
-	}
-	return true
-}
-
-func cryptKey(key []byte, useAES bool, ptr objptr) []byte {
-	h := md5.New()
-	h.Write(key)
-	h.Write([]byte{byte(ptr.id), byte(ptr.id >> 8), byte(ptr.id >> 16), byte(ptr.gen), byte(ptr.gen >> 8)})
-	if useAES {
-		h.Write([]byte("sAlT"))
-	}
-	return h.Sum(nil)
-}
-
-func decryptString(key []byte, useAES bool, ptr objptr, x string) string {
-	key = cryptKey(key, useAES, ptr)
-	if useAES {
-		panic("AES not implemented")
-	} else {
-		c, _ := rc4.NewCipher(key)
-		data := []byte(x)
-		c.XORKeyStream(data, data)
-		x = string(data)
-	}
-	return x
-}
-
-func decryptStream(key []byte, useAES bool, ptr objptr, rd io.Reader) io.Reader {
-	key = cryptKey(key, useAES, ptr)
-	if useAES {
-		cb, err := aes.NewCipher(key)
-		if err != nil {
-			panic("AES: " + err.Error())
-		}
-		iv := make([]byte, 16)
-		io.ReadFull(rd, iv)
-		cbc := cipher.NewCBCDecrypter(cb, iv)
-		rd = &cbcReader{cbc: cbc, rd: rd, buf: make([]byte, 16)}
-	} else {
-		c, _ := rc4.NewCipher(key)
-		rd = &cipher.StreamReader{S: c, R: rd}
-	}
-	return rd
-}
-
-type cbcReader struct {
-	cbc  cipher.BlockMode
-	rd   io.Reader
-	buf  []byte
-	pend []byte
-}
-
-func (r *cbcReader) Read(b []byte) (n int, err error) {
-	if len(r.pend) == 0 {
-		_, err = io.ReadFull(r.rd, r.buf)
-		if err != nil {
-			return 0, err
-		}
-		r.cbc.CryptBlocks(r.buf, r.buf)
-		r.pend = r.buf
-	}
-	n = copy(b, r.pend)
-	r.pend = r.pend[n:]
-	return n, nil
-}
diff --git a/vendor/rsc.io/pdf/text.go b/vendor/rsc.io/pdf/text.go
deleted file mode 100644
index da3d08c..0000000
--- a/vendor/rsc.io/pdf/text.go
+++ /dev/null
@@ -1,158 +0,0 @@
-// Copyright 2014 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 pdf
-
-import (
-	"unicode"
-	"unicode/utf16"
-)
-
-const noRune = unicode.ReplacementChar
-
-func isPDFDocEncoded(s string) bool {
-	if isUTF16(s) {
-		return false
-	}
-	for i := 0; i < len(s); i++ {
-		if pdfDocEncoding[s[i]] == noRune {
-			return false
-		}
-	}
-	return true
-}
-
-func pdfDocDecode(s string) string {
-	for i := 0; i < len(s); i++ {
-		if s[i] >= 0x80 || pdfDocEncoding[s[i]] != rune(s[i]) {
-			goto Decode
-		}
-	}
-	return s
-
-Decode:
-	r := make([]rune, len(s))
-	for i := 0; i < len(s); i++ {
-		r[i] = pdfDocEncoding[s[i]]
-	}
-	return string(r)
-}
-
-func isUTF16(s string) bool {
-	return len(s) >= 2 && s[0] == 0xfe && s[1] == 0xff && len(s)%2 == 0
-}
-
-func utf16Decode(s string) string {
-	var u []uint16
-	for i := 0; i < len(s); i += 2 {
-		u = append(u, uint16(s[i])<<8|uint16(s[i+1]))
-	}
-	return string(utf16.Decode(u))
-}
-
-// See PDF 32000-1:2008, Table D.2
-var pdfDocEncoding = [256]rune{
-	noRune, noRune, noRune, noRune, noRune, noRune, noRune, noRune,
-	noRune, 0x0009, 0x000a, noRune, noRune, 0x000d, noRune, noRune,
-	noRune, noRune, noRune, noRune, noRune, noRune, noRune, noRune,
-	0x02d8, 0x02c7, 0x02c6, 0x02d9, 0x02dd, 0x02db, 0x02da, 0x02dc,
-	0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
-	0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
-	0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
-	0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
-	0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
-	0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
-	0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
-	0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
-	0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
-	0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
-	0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
-	0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, noRune,
-	0x2022, 0x2020, 0x2021, 0x2026, 0x2014, 0x2013, 0x0192, 0x2044,
-	0x2039, 0x203a, 0x2212, 0x2030, 0x201e, 0x201c, 0x201d, 0x2018,
-	0x2019, 0x201a, 0x2122, 0xfb01, 0xfb02, 0x0141, 0x0152, 0x0160,
-	0x0178, 0x017d, 0x0131, 0x0142, 0x0153, 0x0161, 0x017e, noRune,
-	0x20ac, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
-	0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, noRune, 0x00ae, 0x00af,
-	0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
-	0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
-	0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
-	0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
-	0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
-	0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
-	0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
-	0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
-	0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
-	0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff,
-}
-
-var winAnsiEncoding = [256]rune{
-	0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
-	0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
-	0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
-	0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
-	0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
-	0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
-	0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
-	0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
-	0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
-	0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
-	0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
-	0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
-	0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
-	0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
-	0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
-	0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
-	0x20ac, noRune, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
-	0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, noRune, 0x017d, noRune,
-	noRune, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
-	0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, noRune, 0x017e, 0x0178,
-	0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
-	0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
-	0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
-	0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
-	0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
-	0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
-	0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
-	0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
-	0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
-	0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
-	0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
-	0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff,
-}
-
-var macRomanEncoding = [256]rune{
-	0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
-	0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
-	0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
-	0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
-	0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
-	0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
-	0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
-	0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
-	0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
-	0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
-	0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
-	0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
-	0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
-	0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
-	0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
-	0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
-	0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
-	0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
-	0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
-	0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
-	0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
-	0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x00c6, 0x00d8,
-	0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
-	0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x03a9, 0x00e6, 0x00f8,
-	0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x2206, 0x00ab,
-	0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
-	0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
-	0x00ff, 0x0178, 0x2044, 0x20ac, 0x2039, 0x203a, 0xfb01, 0xfb02,
-	0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
-	0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
-	0xf8ff, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, 0x02c6, 0x02dc,
-	0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7,
-}