Эх сурвалжийг харах

Merge branch 'master' of https://app.yhyue.com/moapp/jybase

duxin 1 жил өмнө
parent
commit
2f2d9d8558

+ 14 - 1
common/common.go

@@ -22,7 +22,7 @@ import (
 	"time"
 	"time"
 
 
 	date4 "app.yhyue.com/moapp/jybase/date"
 	date4 "app.yhyue.com/moapp/jybase/date"
-	"github.com/dchest/captcha"
+	"app.yhyue.com/moapp/jybase/dchest/captcha"
 )
 )
 
 
 const (
 const (
@@ -791,3 +791,16 @@ func IsWxBrowser(Request *http.Request) bool {
 		return false
 		return false
 	}
 	}
 }
 }
+
+//
+func ShortenTxt(length int, fixed, shorten string) string {
+	if len([]rune(fixed)) > length {
+		return ""
+	} else if len([]rune(fixed+shorten)) <= length {
+		return shorten
+	}
+	if limit := length - len([]rune(fixed)) - 3; limit >= 0 && limit <= len([]rune(shorten)) {
+		return string([]rune(shorten)[:limit]) + "..."
+	}
+	return ""
+}

+ 19 - 0
dchest/captcha/LICENSE

@@ -0,0 +1,19 @@
+Copyright (c) 2011-2014 Dmitry Chestnykh <dmitry@codingrobots.com>
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.

+ 275 - 0
dchest/captcha/README.md

@@ -0,0 +1,275 @@
+Package captcha
+=====================
+
+	import "github.com/dchest/captcha"
+
+Package captcha implements generation and verification of image and audio
+CAPTCHAs.
+
+A captcha solution is the sequence of digits 0-9 with the defined length.
+There are two captcha representations: image and audio.
+
+An image representation is a PNG-encoded image with the solution printed on
+it in such a way that makes it hard for computers to solve it using OCR.
+
+An audio representation is a WAVE-encoded (8 kHz unsigned 8-bit) sound with the
+spoken solution (currently in English, Russian, and Chinese). To make it hard
+for computers to solve audio captcha, the voice that pronounces numbers has
+random speed and pitch, and there is a randomly generated background noise
+mixed into the sound.
+
+This package doesn't require external files or libraries to generate captcha
+representations; it is self-contained.
+
+To make captchas one-time, the package includes a memory storage that stores
+captcha ids, their solutions, and expiration time. Used captchas are removed
+from the store immediately after calling Verify or VerifyString, while
+unused captchas (user loaded a page with captcha, but didn't submit the
+form) are collected automatically after the predefined expiration time.
+Developers can also provide custom store (for example, which saves captcha
+ids and solutions in database) by implementing Store interface and
+registering the object with SetCustomStore.
+
+Captchas are created by calling New, which returns the captcha id.  Their
+representations, though, are created on-the-fly by calling WriteImage or
+WriteAudio functions. Created representations are not stored anywhere, but
+subsequent calls to these functions with the same id will write the same
+captcha solution. Reload function will create a new different solution for the
+provided captcha, allowing users to "reload" captcha if they can't solve the
+displayed one without reloading the whole page.  Verify and VerifyString are
+used to verify that the given solution is the right one for the given captcha
+id.
+
+Server provides an http.Handler which can serve image and audio
+representations of captchas automatically from the URL. It can also be used
+to reload captchas.  Refer to Server function documentation for details, or
+take a look at the example in "capexample" subdirectory.
+
+
+Examples
+--------
+
+![Image](https://github.com/dchest/captcha/raw/master/capgen/example.png)
+
+[Audio](https://github.com/dchest/captcha/raw/master/capgen/example.wav)
+
+
+Constants
+---------
+
+``` go
+const (
+    // Default number of digits in captcha solution.
+    DefaultLen = 6
+    // The number of captchas created that triggers garbage collection used
+    // by default store.
+    CollectNum = 100
+    // Expiration time of captchas used by default store.
+    Expiration = 10 * time.Minutes
+)
+```
+
+``` go
+const (
+    // Standard width and height of a captcha image.
+    StdWidth  = 240
+    StdHeight = 80
+)
+```
+
+
+Variables
+---------
+
+``` go
+var (
+    ErrNotFound = errors.New("captcha: id not found")
+)
+```
+
+
+
+Functions
+---------
+
+### func New
+
+	func New() string
+	
+New creates a new captcha with the standard length, saves it in the internal
+storage and returns its id.
+
+### func NewLen
+
+	func NewLen(length int) (id string)
+	
+NewLen is just like New, but accepts length of a captcha solution as the
+argument.
+
+### func RandomDigits
+
+	func RandomDigits(length int) (b []byte)
+	
+RandomDigits returns a byte slice of the given length containing
+pseudorandom numbers in range 0-9. The slice can be used as a captcha
+solution.
+
+### func Reload
+
+	func Reload(id string) bool
+	
+Reload generates and remembers new digits for the given captcha id.  This
+function returns false if there is no captcha with the given id.
+
+After calling this function, the image or audio presented to a user must be
+refreshed to show the new captcha representation (WriteImage and WriteAudio
+will write the new one).
+
+### func Server
+
+	func Server(imgWidth, imgHeight int) http.Handler
+	
+Server returns a handler that serves HTTP requests with image or
+audio representations of captchas. Image dimensions are accepted as
+arguments. The server decides which captcha to serve based on the last URL
+path component: file name part must contain a captcha id, file extension —
+its format (PNG or WAV).
+
+For example, for file name "LBm5vMjHDtdUfaWYXiQX.png" it serves an image captcha
+with id "LBm5vMjHDtdUfaWYXiQX", and for "LBm5vMjHDtdUfaWYXiQX.wav" it serves the
+same captcha in audio format.
+
+To serve a captcha as a downloadable file, the URL must be constructed in
+such a way as if the file to serve is in the "download" subdirectory:
+"/download/LBm5vMjHDtdUfaWYXiQX.wav".
+
+To reload captcha (get a different solution for the same captcha id), append
+"?reload=x" to URL, where x may be anything (for example, current time or a
+random number to make browsers refetch an image instead of loading it from
+cache).
+
+By default, the Server serves audio in English language. To serve audio
+captcha in one of the other supported languages, append "lang" value, for
+example, "?lang=ru".
+
+### func SetCustomStore
+
+	func SetCustomStore(s Store)
+	
+SetCustomStore sets custom storage for captchas, replacing the default
+memory store. This function must be called before generating any captchas.
+
+### func Verify
+
+	func Verify(id string, digits []byte) bool
+	
+Verify returns true if the given digits are the ones that were used to
+create the given captcha id.
+
+The function deletes the captcha with the given id from the internal
+storage, so that the same captcha can't be verified anymore.
+
+### func VerifyString
+
+	func VerifyString(id string, digits string) bool
+	
+VerifyString is like Verify, but accepts a string of digits.  It removes
+spaces and commas from the string, but any other characters, apart from
+digits and listed above, will cause the function to return false.
+
+### func WriteAudio
+
+	func WriteAudio(w io.Writer, id string, lang string) error
+	
+WriteAudio writes WAV-encoded audio representation of the captcha with the
+given id and the given language. If there are no sounds for the given
+language, English is used.
+
+### func WriteImage
+
+	func WriteImage(w io.Writer, id string, width, height int) error
+	
+WriteImage writes PNG-encoded image representation of the captcha with the
+given id. The image will have the given width and height.
+
+
+Types
+-----
+
+``` go
+type Audio struct {
+    // contains unexported fields
+}
+```
+
+
+### func NewAudio
+
+	func NewAudio(id string, digits []byte, lang string) *Audio
+	
+NewAudio returns a new audio captcha with the given digits, where each digit
+must be in range 0-9. Digits are pronounced in the given language. If there
+are no sounds for the given language, English is used.
+
+Possible values for lang are "en", "ru", "zh".
+
+### func (*Audio) EncodedLen
+
+	func (a *Audio) EncodedLen() int
+	
+EncodedLen returns the length of WAV-encoded audio captcha.
+
+### func (*Audio) WriteTo
+
+	func (a *Audio) WriteTo(w io.Writer) (n int64, err error)
+	
+WriteTo writes captcha audio in WAVE format into the given io.Writer, and
+returns the number of bytes written and an error if any.
+
+``` go
+type Image struct {
+    *image.Paletted
+    // contains unexported fields
+}
+```
+
+
+### func NewImage
+
+	func NewImage(id string, digits []byte, width, height int) *Image
+	
+NewImage returns a new captcha image of the given width and height with the
+given digits, where each digit must be in range 0-9.
+
+### func (*Image) WriteTo
+
+	func (m *Image) WriteTo(w io.Writer) (int64, error)
+	
+WriteTo writes captcha image in PNG format into the given writer.
+
+``` go
+type Store interface {
+    // Set sets the digits for the captcha id.
+    Set(id string, digits []byte)
+
+    // Get returns stored digits for the captcha id. Clear indicates
+    // whether the captcha must be deleted from the store.
+    Get(id string, clear bool) (digits []byte)
+}
+```
+
+An object implementing Store interface can be registered with SetCustomStore
+function to handle storage and retrieval of captcha ids and solutions for
+them, replacing the default memory store.
+
+It is the responsibility of an object to delete expired and used captchas
+when necessary (for example, the default memory store collects them in Set
+method after the certain amount of captchas has been stored.)
+
+### func NewMemoryStore
+
+	func NewMemoryStore(collectNum int, expiration time.Duration) Store
+	
+NewMemoryStore returns a new standard memory store for captchas with the
+given collection threshold and expiration time in seconds. The returned
+store must be registered with SetCustomStore to replace the default one.

+ 232 - 0
dchest/captcha/audio.go

@@ -0,0 +1,232 @@
+// Copyright 2011-2014 Dmitry Chestnykh. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package captcha
+
+import (
+	"bytes"
+	"encoding/binary"
+	"io"
+	"math"
+)
+
+const sampleRate = 8000 // Hz
+
+var endingBeepSound []byte
+
+func init() {
+	endingBeepSound = changeSpeed(beepSound, 1.4)
+}
+
+type Audio struct {
+	body        *bytes.Buffer
+	digitSounds [][]byte
+	rng         siprng
+}
+
+// NewAudio returns a new audio captcha with the given digits, where each digit
+// must be in range 0-9. Digits are pronounced in the given language. If there
+// are no sounds for the given language, English is used.
+//
+// Possible values for lang are "en", "ru", "zh".
+func NewAudio(id string, digits []byte, lang string) *Audio {
+	a := new(Audio)
+
+	// Initialize PRNG.
+	a.rng.Seed(deriveSeed(audioSeedPurpose, id, digits))
+
+	if sounds, ok := digitSounds[lang]; ok {
+		a.digitSounds = sounds
+	} else {
+		a.digitSounds = digitSounds["en"]
+	}
+	numsnd := make([][]byte, len(digits))
+	nsdur := 0
+	for i, n := range digits {
+		snd := a.randomizedDigitSound(n)
+		nsdur += len(snd)
+		numsnd[i] = snd
+	}
+	// Random intervals between digits (including beginning).
+	intervals := make([]int, len(digits)+1)
+	intdur := 0
+	for i := range intervals {
+		dur := a.rng.Int(sampleRate, sampleRate*3) // 1 to 3 seconds
+		intdur += dur
+		intervals[i] = dur
+	}
+	// Generate background sound.
+	bg := a.makeBackgroundSound(a.longestDigitSndLen()*len(digits) + intdur)
+	// Create buffer and write audio to it.
+	sil := makeSilence(sampleRate / 5)
+	bufcap := 3*len(beepSound) + 2*len(sil) + len(bg) + len(endingBeepSound)
+	a.body = bytes.NewBuffer(make([]byte, 0, bufcap))
+	// Write prelude, three beeps.
+	a.body.Write(beepSound)
+	a.body.Write(sil)
+	a.body.Write(beepSound)
+	a.body.Write(sil)
+	a.body.Write(beepSound)
+	// Write digits.
+	pos := intervals[0]
+	for i, v := range numsnd {
+		mixSound(bg[pos:], v)
+		pos += len(v) + intervals[i+1]
+	}
+	a.body.Write(bg)
+	// Write ending (one beep).
+	a.body.Write(endingBeepSound)
+	return a
+}
+
+// WriteTo writes captcha audio in WAVE format into the given io.Writer, and
+// returns the number of bytes written and an error if any.
+func (a *Audio) WriteTo(w io.Writer) (n int64, err error) {
+	// Calculate padded length of PCM chunk data.
+	bodyLen := uint32(a.body.Len())
+	paddedBodyLen := bodyLen
+	if bodyLen%2 != 0 {
+		paddedBodyLen++
+	}
+	totalLen := uint32(len(waveHeader)) - 4 + paddedBodyLen
+	// Header.
+	header := make([]byte, len(waveHeader)+4) // includes 4 bytes for chunk size
+	copy(header, waveHeader)
+	// Put the length of whole RIFF chunk.
+	binary.LittleEndian.PutUint32(header[4:], totalLen)
+	// Put the length of WAVE chunk.
+	binary.LittleEndian.PutUint32(header[len(waveHeader):], bodyLen)
+	// Write header.
+	nn, err := w.Write(header)
+	n = int64(nn)
+	if err != nil {
+		return
+	}
+	// Write data.
+	n, err = a.body.WriteTo(w)
+	n += int64(nn)
+	if err != nil {
+		return
+	}
+	// Pad byte if chunk length is odd.
+	// (As header has even length, we can check if n is odd, not chunk).
+	if bodyLen != paddedBodyLen {
+		w.Write([]byte{0})
+		n++
+	}
+	return
+}
+
+// EncodedLen returns the length of WAV-encoded audio captcha.
+func (a *Audio) EncodedLen() int {
+	return len(waveHeader) + 4 + a.body.Len()
+}
+
+func (a *Audio) makeBackgroundSound(length int) []byte {
+	b := a.makeWhiteNoise(length, 4)
+	for i := 0; i < length/(sampleRate/10); i++ {
+		snd := reversedSound(a.digitSounds[a.rng.Intn(10)])
+		snd = changeSpeed(snd, a.rng.Float(0.8, 1.4))
+		place := a.rng.Intn(len(b) - len(snd))
+		setSoundLevel(snd, a.rng.Float(0.2, 0.5))
+		mixSound(b[place:], snd)
+	}
+	return b
+}
+
+func (a *Audio) randomizedDigitSound(n byte) []byte {
+	s := a.randomSpeed(a.digitSounds[n])
+	setSoundLevel(s, a.rng.Float(0.75, 1.2))
+	return s
+}
+
+func (a *Audio) longestDigitSndLen() int {
+	n := 0
+	for _, v := range a.digitSounds {
+		if n < len(v) {
+			n = len(v)
+		}
+	}
+	return n
+}
+
+func (a *Audio) randomSpeed(b []byte) []byte {
+	pitch := a.rng.Float(0.9, 1.2)
+	return changeSpeed(b, pitch)
+}
+
+func (a *Audio) makeWhiteNoise(length int, level uint8) []byte {
+	noise := a.rng.Bytes(length)
+	adj := 128 - level/2
+	for i, v := range noise {
+		v %= level
+		v += adj
+		noise[i] = v
+	}
+	return noise
+}
+
+// mixSound mixes src into dst. Dst must have length equal to or greater than
+// src length.
+func mixSound(dst, src []byte) {
+	for i, v := range src {
+		av := int(v)
+		bv := int(dst[i])
+		if av < 128 && bv < 128 {
+			dst[i] = byte(av * bv / 128)
+		} else {
+			dst[i] = byte(2*(av+bv) - av*bv/128 - 256)
+		}
+	}
+}
+
+func setSoundLevel(a []byte, level float64) {
+	for i, v := range a {
+		av := float64(v)
+		switch {
+		case av > 128:
+			if av = (av-128)*level + 128; av < 128 {
+				av = 128
+			}
+		case av < 128:
+			if av = 128 - (128-av)*level; av > 128 {
+				av = 128
+			}
+		default:
+			continue
+		}
+		a[i] = byte(av)
+	}
+}
+
+// changeSpeed returns new PCM bytes from the bytes with the speed and pitch
+// changed to the given value that must be in range [0, x].
+func changeSpeed(a []byte, speed float64) []byte {
+	b := make([]byte, int(math.Floor(float64(len(a))*speed)))
+	var p float64
+	for _, v := range a {
+		for i := int(p); i < int(p+speed); i++ {
+			b[i] = v
+		}
+		p += speed
+	}
+	return b
+}
+
+func makeSilence(length int) []byte {
+	b := make([]byte, length)
+	for i := range b {
+		b[i] = 128
+	}
+	return b
+}
+
+func reversedSound(a []byte) []byte {
+	n := len(a)
+	b := make([]byte, n)
+	for i, v := range a {
+		b[n-1-i] = v
+	}
+	return b
+}

+ 32 - 0
dchest/captcha/audio_test.go

@@ -0,0 +1,32 @@
+// Copyright 2011 Dmitry Chestnykh. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package captcha
+
+import (
+	"io/ioutil"
+	"testing"
+)
+
+func BenchmarkNewAudio(b *testing.B) {
+	b.StopTimer()
+	d := RandomDigits(DefaultLen)
+	id := randomId()
+	b.StartTimer()
+	for i := 0; i < b.N; i++ {
+		NewAudio(id, d, "")
+	}
+}
+
+func BenchmarkAudioWriteTo(b *testing.B) {
+	b.StopTimer()
+	d := RandomDigits(DefaultLen)
+	id := randomId()
+	b.StartTimer()
+	for i := 0; i < b.N; i++ {
+		a := NewAudio(id, d, "")
+		n, _ := a.WriteTo(ioutil.Discard)
+		b.SetBytes(n)
+	}
+}

+ 165 - 0
dchest/captcha/captcha.go

@@ -0,0 +1,165 @@
+// Copyright 2011 Dmitry Chestnykh. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package captcha implements generation and verification of image and audio
+// CAPTCHAs.
+//
+// A captcha solution is the sequence of digits 0-9 with the defined length.
+// There are two captcha representations: image and audio.
+//
+// An image representation is a PNG-encoded image with the solution printed on
+// it in such a way that makes it hard for computers to solve it using OCR.
+//
+// An audio representation is a WAVE-encoded (8 kHz unsigned 8-bit) sound with
+// the spoken solution (currently in English, Russian, and Chinese). To make it
+// hard for computers to solve audio captcha, the voice that pronounces numbers
+// has random speed and pitch, and there is a randomly generated background
+// noise mixed into the sound.
+//
+// This package doesn't require external files or libraries to generate captcha
+// representations; it is self-contained.
+//
+// To make captchas one-time, the package includes a memory storage that stores
+// captcha ids, their solutions, and expiration time. Used captchas are removed
+// from the store immediately after calling Verify or VerifyString, while
+// unused captchas (user loaded a page with captcha, but didn't submit the
+// form) are collected automatically after the predefined expiration time.
+// Developers can also provide custom store (for example, which saves captcha
+// ids and solutions in database) by implementing Store interface and
+// registering the object with SetCustomStore.
+//
+// Captchas are created by calling New, which returns the captcha id.  Their
+// representations, though, are created on-the-fly by calling WriteImage or
+// WriteAudio functions. Created representations are not stored anywhere, but
+// subsequent calls to these functions with the same id will write the same
+// captcha solution. Reload function will create a new different solution for
+// the provided captcha, allowing users to "reload" captcha if they can't solve
+// the displayed one without reloading the whole page.  Verify and VerifyString
+// are used to verify that the given solution is the right one for the given
+// captcha id.
+//
+// Server provides an http.Handler which can serve image and audio
+// representations of captchas automatically from the URL. It can also be used
+// to reload captchas.  Refer to Server function documentation for details, or
+// take a look at the example in "capexample" subdirectory.
+package captcha
+
+import (
+	"bytes"
+	"errors"
+	"io"
+	"time"
+)
+
+const (
+	// Default number of digits in captcha solution.
+	DefaultLen = 6
+	// The number of captchas created that triggers garbage collection used
+	// by default store.
+	CollectNum = 100
+	// Expiration time of captchas used by default store.
+	Expiration = 10 * time.Minute
+)
+
+var (
+	ErrNotFound = errors.New("captcha: id not found")
+	// globalStore is a shared storage for captchas, generated by New function.
+	globalStore = NewMemoryStore(CollectNum, Expiration)
+)
+
+// SetCustomStore sets custom storage for captchas, replacing the default
+// memory store. This function must be called before generating any captchas.
+func SetCustomStore(s Store) {
+	globalStore = s
+}
+
+// New creates a new captcha with the standard length, saves it in the internal
+// storage and returns its id.
+func New() string {
+	return NewLen(DefaultLen)
+}
+
+// NewLen is just like New, but accepts length of a captcha solution as the
+// argument.
+func NewLen(length int) (id string) {
+	id = randomId()
+	globalStore.Set(id, RandomDigits(length))
+	return
+}
+
+// Reload generates and remembers new digits for the given captcha id.  This
+// function returns false if there is no captcha with the given id.
+//
+// After calling this function, the image or audio presented to a user must be
+// refreshed to show the new captcha representation (WriteImage and WriteAudio
+// will write the new one).
+func Reload(id string) bool {
+	old := globalStore.Get(id, false)
+	if old == nil {
+		return false
+	}
+	globalStore.Set(id, RandomDigits(len(old)))
+	return true
+}
+
+// WriteImage writes PNG-encoded image representation of the captcha with the
+// given id. The image will have the given width and height.
+func WriteImage(w io.Writer, id string, width, height int) error {
+	d := globalStore.Get(id, false)
+	if d == nil {
+		return ErrNotFound
+	}
+	_, err := NewImage(id, d, width, height).WriteTo(w)
+	return err
+}
+
+// WriteAudio writes WAV-encoded audio representation of the captcha with the
+// given id and the given language. If there are no sounds for the given
+// language, English is used.
+func WriteAudio(w io.Writer, id string, lang string) error {
+	d := globalStore.Get(id, false)
+	if d == nil {
+		return ErrNotFound
+	}
+	_, err := NewAudio(id, d, lang).WriteTo(w)
+	return err
+}
+
+// Verify returns true if the given digits are the ones that were used to
+// create the given captcha id.
+//
+// The function deletes the captcha with the given id from the internal
+// storage, so that the same captcha can't be verified anymore.
+func Verify(id string, digits []byte) bool {
+	if digits == nil || len(digits) == 0 {
+		return false
+	}
+	reald := globalStore.Get(id, true)
+	if reald == nil {
+		return false
+	}
+	return bytes.Equal(digits, reald)
+}
+
+// VerifyString is like Verify, but accepts a string of digits.  It removes
+// spaces and commas from the string, but any other characters, apart from
+// digits and listed above, will cause the function to return false.
+func VerifyString(id string, digits string) bool {
+	if digits == "" {
+		return false
+	}
+	ns := make([]byte, len(digits))
+	for i := range ns {
+		d := digits[i]
+		switch {
+		case '0' <= d && d <= '9':
+			ns[i] = d - '0'
+		case d == ' ' || d == ',':
+			// ignore
+		default:
+			return false
+		}
+	}
+	return Verify(id, ns)
+}

+ 65 - 0
dchest/captcha/captcha_test.go

@@ -0,0 +1,65 @@
+// Copyright 2011 Dmitry Chestnykh. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package captcha
+
+import (
+	"bytes"
+	"fmt"
+	"os"
+	"testing"
+)
+
+func TestNew(t *testing.T) {
+	c := New()
+	if c == "" {
+		t.Errorf("expected id, got empty string")
+	}
+}
+
+func TestVerify(t *testing.T) {
+	id := New()
+	if Verify(id, []byte{0, 0}) {
+		t.Errorf("verified wrong captcha")
+	}
+	id = New()
+	d := globalStore.Get(id, false) // cheating
+	if !Verify(id, d) {
+		t.Errorf("proper captcha not verified")
+	}
+}
+
+func TestReload(t *testing.T) {
+	id := New()
+	d1 := globalStore.Get(id, false) // cheating
+	Reload(id)
+	d2 := globalStore.Get(id, false) // cheating again
+	if bytes.Equal(d1, d2) {
+		t.Errorf("reload didn't work: %v = %v", d1, d2)
+	}
+}
+
+//
+func TestCap(t *testing.T) {
+	for i := 1; i <= 20; i++ {
+
+		id := NewLen(4)
+
+		fi, _ := os.OpenFile(fmt.Sprintf("E:\\%d.png", i), os.O_CREATE|os.O_SYNC|os.O_RDWR|os.O_APPEND, 0x666)
+		WriteImage(fi, id, 90, 30)
+	}
+}
+
+func TestRandomDigits(t *testing.T) {
+	d1 := RandomDigits(10)
+	for _, v := range d1 {
+		if v > 9 {
+			t.Errorf("digits not in range 0-9: %v", d1)
+		}
+	}
+	d2 := RandomDigits(10)
+	if bytes.Equal(d1, d2) {
+		t.Errorf("digits seem to be not random")
+	}
+}

+ 214 - 0
dchest/captcha/font.go

@@ -0,0 +1,214 @@
+// Copyright 2011 Dmitry Chestnykh. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package captcha
+
+const (
+	fontWidth  = 11
+	fontHeight = 18
+	blackChar  = 1
+)
+
+var font = [][]byte{
+	{ // 0
+		0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0,
+		0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0,
+		0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0,
+		0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0,
+		1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1,
+		0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0,
+		0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0,
+		0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0,
+	},
+	{ // 1
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0,
+		0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0,
+		0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+		0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+	},
+	{ // 2
+		0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0,
+		0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
+		1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0,
+		0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0,
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0,
+		0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0,
+		0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0,
+		0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0,
+		0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
+		1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+		1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+	},
+	{ // 3
+		0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0,
+		1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
+		1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0,
+		0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0,
+		0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0,
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1,
+		0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1,
+		1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0,
+		1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
+		0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0,
+	},
+	{ // 4
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0,
+		0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0,
+		0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0,
+		0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0,
+		0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0,
+		0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0,
+		0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0,
+		0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0,
+		0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0,
+		1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0,
+		1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0,
+		1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+		1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0,
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0,
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0,
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0,
+	},
+	{ // 5
+		0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
+		0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
+		0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
+		0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
+		0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
+		0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
+		0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0,
+		0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1,
+		0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0,
+		1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
+		0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0,
+	},
+	{ // 6
+		0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0,
+		0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0,
+		0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0,
+		0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
+		0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
+		0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+		1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0,
+		1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0,
+		1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0,
+		1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1,
+		0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0,
+		0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0,
+		0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0,
+	},
+	{ // 7
+		1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+		1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+		1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0,
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0,
+		0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0,
+		0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,
+		0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0,
+		0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0,
+		0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0,
+		0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0,
+		0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0,
+		0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0,
+	},
+	{ // 8
+		0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0,
+		0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0,
+		0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1,
+		0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1,
+		0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1,
+		0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1,
+		0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0,
+		0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0,
+		0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0,
+		0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0,
+		0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0,
+		1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
+		0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0,
+	},
+	{ // 9
+		0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0,
+		0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
+		0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0,
+		1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1,
+		0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1,
+		0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1,
+		0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1,
+		0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0,
+		0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0,
+		0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0,
+		0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+	},
+}

+ 283 - 0
dchest/captcha/image.go

@@ -0,0 +1,283 @@
+// Copyright 2011-2014 Dmitry Chestnykh. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package captcha
+
+import (
+	"bytes"
+	"image"
+	"image/color"
+	"image/png"
+	"io"
+	"math"
+)
+
+const (
+	// Standard width and height of a captcha image.
+	StdWidth  = 240
+	StdHeight = 80
+	// Maximum absolute skew factor of a single digit.
+	maxSkew = 0.3
+	// Number of background circles.
+	circleCount = 20
+)
+
+type Image struct {
+	*image.Paletted
+	numWidth  int
+	numHeight int
+	dotSize   int
+	rng       siprng
+}
+
+// NewImage returns a new captcha image of the given width and height with the
+// given digits, where each digit must be in range 0-9.
+func NewImage(id string, digits []byte, width, height int) *Image {
+	m := new(Image)
+
+	// Initialize PRNG.
+	m.rng.Seed(deriveSeed(imageSeedPurpose, id, digits))
+
+	m.Paletted = image.NewPaletted(image.Rect(0, 0, width, height), m.getRandomPalette())
+	m.calculateSizes(width, height, len(digits))
+	// Randomly position captcha inside the image.
+	maxx := width - (m.numWidth+m.dotSize)*len(digits) - m.dotSize
+	maxy := height - m.numHeight - m.dotSize*2
+	var border int
+	if width > height {
+		border = height / 5
+	} else {
+		border = width / 5
+	}
+	x := m.rng.Int(border, (maxx-border)/len(digits)+border)
+	y := m.rng.Int(border, maxy-border)
+	m.numWidth = m.numWidth + 4 //补值
+	margin := (width-x-(m.numWidth+m.dotSize)*len(digits))/len(digits) - 1
+	// Draw digits.
+	for _, n := range digits {
+		m.drawDigit(font[n], x, y)
+		x += m.numWidth + m.dotSize + margin
+	}
+	// Draw strike-through line.
+
+	m.strikeThrough()
+
+	// Apply wave distortion.
+	m.distort(m.rng.Float(5, 10), m.rng.Float(100, 200))
+	// Fill image with random circles.
+	m.fillWithCircles(circleCount, m.dotSize)
+	return m
+}
+
+func (m *Image) getRandomPalette() color.Palette {
+	p := make([]color.Color, circleCount+2)
+	// Transparent color.
+	p[0] = color.RGBA{0xFF, 0xFF, 0xFF, 0x00}
+	// Primary color.
+	prim := color.RGBA{
+		uint8(m.rng.Intn(129)),
+		uint8(m.rng.Intn(129)),
+		uint8(m.rng.Intn(129)),
+		0xFF,
+	}
+	p[1] = prim
+	// Circle colors.
+	for i := 2; i <= circleCount; i++ {
+		p[i] = m.randomBrightness(prim, 255)
+	}
+	tmp := 90 + m.rng.Intn(30)
+	p[circleCount+1] = color.RGBA{
+		uint8(int(prim.R) + tmp),
+		uint8(int(prim.G) + tmp),
+		uint8(int(prim.B) + tmp),
+		uint8(prim.A),
+	}
+	return p
+}
+
+// encodedPNG encodes an image to PNG and returns
+// the result as a byte slice.
+func (m *Image) encodedPNG() []byte {
+	var buf bytes.Buffer
+	if err := png.Encode(&buf, m.Paletted); err != nil {
+		panic(err.Error())
+	}
+	return buf.Bytes()
+}
+
+// WriteTo writes captcha image in PNG format into the given writer.
+func (m *Image) WriteTo(w io.Writer) (int64, error) {
+	n, err := w.Write(m.encodedPNG())
+	return int64(n), err
+}
+
+func (m *Image) calculateSizes(width, height, ncount int) {
+	// Goal: fit all digits inside the image.
+	var border int
+	if width > height {
+		border = height / 4
+	} else {
+		border = width / 4
+	}
+	// Convert everything to floats for calculations.
+	w := float64(width - border*2)
+	h := float64(height - border*2)
+	// fw takes into account 1-dot spacing between digits.
+	fw := float64(fontWidth + 1)
+	fh := float64(fontHeight)
+	nc := float64(ncount)
+	// Calculate the width of a single digit taking into account only the
+	// width of the image.
+	nw := w / nc
+	// Calculate the height of a digit from this width.
+	nh := nw * fh / fw
+	// Digit too high?
+	if nh > h {
+		// Fit digits based on height.
+		nh = h
+		nw = fw / fh * nh
+	}
+	// Calculate dot size.
+	m.dotSize = int(nh / fh)
+	if m.dotSize < 1 {
+		m.dotSize = 1
+	}
+	// Save everything, making the actual width smaller by 1 dot to account
+	// for spacing between digits.
+	m.numWidth = int(nw) - m.dotSize
+	m.numHeight = int(nh)
+}
+
+func (m *Image) drawHorizLine(fromX, toX, y int, colorIdx uint8) {
+	for x := fromX; x <= toX; x++ {
+		m.SetColorIndex(x, y, colorIdx)
+	}
+}
+
+func (m *Image) drawCircle(x, y, radius int, colorIdx uint8) {
+	f := 1 - radius
+	dfx := 1
+	dfy := -2 * radius
+	xo := 0
+	yo := radius
+
+	m.SetColorIndex(x, y+radius, colorIdx)
+	m.SetColorIndex(x, y-radius, colorIdx)
+	m.drawHorizLine(x-radius, x+radius, y, colorIdx)
+
+	for xo < yo {
+		if f >= 0 {
+			yo--
+			dfy += 2
+			f += dfy
+		}
+		xo++
+		dfx += 2
+		f += dfx
+		m.drawHorizLine(x-xo, x+xo, y+yo, colorIdx)
+		m.drawHorizLine(x-xo, x+xo, y-yo, colorIdx)
+		m.drawHorizLine(x-yo, x+yo, y+xo, colorIdx)
+		m.drawHorizLine(x-yo, x+yo, y-xo, colorIdx)
+	}
+}
+
+func (m *Image) fillWithCircles(n, maxradius int) {
+	maxx := m.Bounds().Max.X
+	maxy := m.Bounds().Max.Y
+	for i := 0; i < n; i++ {
+		colorIdx := uint8(m.rng.Int(1, circleCount-1))
+		r := m.rng.Int(1, maxradius)
+		m.drawCircle(m.rng.Int(r, maxx-r), m.rng.Int(r, maxy-r), r, colorIdx)
+	}
+}
+
+func (m *Image) strikeThrough() {
+	maxx := m.Bounds().Max.X
+	maxy := m.Bounds().Max.Y
+	y := m.rng.Int(maxy/3, maxy-maxy/3)
+	amplitude := m.rng.Float(5, 20)
+	period := m.rng.Float(80, 180)
+	dx := 2.0 * math.Pi / period
+	//使用颜色
+	for x := 0; x < maxx; x++ {
+		xo := amplitude * math.Cos(float64(y)*dx)
+		yo := amplitude * math.Sin(float64(x)*dx)
+		for yn := 0; yn < m.dotSize; yn++ {
+			r := m.rng.Int(0, m.dotSize)
+			m.drawCircle(x+int(xo), y+int(yo)+(yn*m.dotSize), r/2, circleCount+1)
+		}
+	}
+}
+
+func (m *Image) drawDigit(digit []byte, x, y int) {
+	skf := m.rng.Float(-maxSkew, maxSkew)
+	xs := float64(x)
+	r := m.dotSize / 2
+	y += m.rng.Int(-r, r)
+	for yo := 0; yo < fontHeight; yo++ {
+		for xo := 0; xo < fontWidth; xo++ {
+			if digit[yo*fontWidth+xo] != blackChar {
+				continue
+			}
+			m.drawCircle(x+xo*m.dotSize, y+yo*m.dotSize, r, 1)
+		}
+		xs += skf
+		x = int(xs)
+	}
+}
+
+func (m *Image) distort(amplude float64, period float64) {
+	w := m.Bounds().Max.X
+	h := m.Bounds().Max.Y
+
+	oldm := m.Paletted
+	newm := image.NewPaletted(image.Rect(0, 0, w, h), oldm.Palette)
+
+	dx := 2.0 * math.Pi / period
+	for x := 0; x < w; x++ {
+		for y := 0; y < h; y++ {
+			xo := amplude * math.Sin(float64(y)*dx)
+			yo := amplude * math.Cos(float64(x)*dx)
+			newm.SetColorIndex(x, y, oldm.ColorIndexAt(x+int(xo), y+int(yo)))
+		}
+	}
+	m.Paletted = newm
+}
+
+func (m *Image) randomBrightness(c color.RGBA, max uint8) color.RGBA {
+	minc := min3(c.R, c.G, c.B)
+	maxc := max3(c.R, c.G, c.B)
+	if maxc > max {
+		return c
+	}
+	n := m.rng.Intn(int(max-maxc)) - int(minc)
+	return color.RGBA{
+		uint8(int(c.R) + n),
+		uint8(int(c.G) + n),
+		uint8(int(c.B) + n),
+		uint8(c.A),
+	}
+}
+
+func min3(x, y, z uint8) (m uint8) {
+	m = x
+	if y < m {
+		m = y
+	}
+	if z < m {
+		m = z
+	}
+	return
+}
+
+func max3(x, y, z uint8) (m uint8) {
+	m = x
+	if y > m {
+		m = y
+	}
+	if z > m {
+		m = z
+	}
+	return
+}

+ 40 - 0
dchest/captcha/image_test.go

@@ -0,0 +1,40 @@
+// Copyright 2011 Dmitry Chestnykh. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package captcha
+
+import "testing"
+
+type byteCounter struct {
+	n int64
+}
+
+func (bc *byteCounter) Write(b []byte) (int, error) {
+	bc.n += int64(len(b))
+	return len(b), nil
+}
+
+func BenchmarkNewImage(b *testing.B) {
+	b.StopTimer()
+	d := RandomDigits(DefaultLen)
+	id := randomId()
+	b.StartTimer()
+	for i := 0; i < b.N; i++ {
+		NewImage(id, d, StdWidth, StdHeight)
+	}
+}
+
+func BenchmarkImageWriteTo(b *testing.B) {
+	b.StopTimer()
+	d := RandomDigits(DefaultLen)
+	id := randomId()
+	b.StartTimer()
+	counter := &byteCounter{}
+	for i := 0; i < b.N; i++ {
+		img := NewImage(id, d, StdWidth, StdHeight)
+		img.WriteTo(counter)
+		b.SetBytes(counter.n)
+		counter.n = 0
+	}
+}

+ 101 - 0
dchest/captcha/random.go

@@ -0,0 +1,101 @@
+// Copyright 2011-2014 Dmitry Chestnykh. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package captcha
+
+import (
+	"crypto/hmac"
+	"crypto/rand"
+	"crypto/sha256"
+	"io"
+)
+
+// idLen is a length of captcha id string.
+// (20 bytes of 62-letter alphabet give ~119 bits.)
+const idLen = 20
+
+// idChars are characters allowed in captcha id.
+var idChars = []byte("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789")
+
+// rngKey is a secret key used to deterministically derive seeds for
+// PRNGs used in image and audio. Generated once during initialization.
+var rngKey [32]byte
+
+func init() {
+	if _, err := io.ReadFull(rand.Reader, rngKey[:]); err != nil {
+		panic("captcha: error reading random source: " + err.Error())
+	}
+}
+
+// Purposes for seed derivation. The goal is to make deterministic PRNG produce
+// different outputs for images and audio by using different derived seeds.
+const (
+	imageSeedPurpose = 0x01
+	audioSeedPurpose = 0x02
+)
+
+// deriveSeed returns a 16-byte PRNG seed from rngKey, purpose, id and digits.
+// Same purpose, id and digits will result in the same derived seed for this
+// instance of running application.
+//
+//   out = HMAC(rngKey, purpose || id || 0x00 || digits)  (cut to 16 bytes)
+//
+func deriveSeed(purpose byte, id string, digits []byte) (out [16]byte) {
+	var buf [sha256.Size]byte
+	h := hmac.New(sha256.New, rngKey[:])
+	h.Write([]byte{purpose})
+	io.WriteString(h, id)
+	h.Write([]byte{0})
+	h.Write(digits)
+	sum := h.Sum(buf[:0])
+	copy(out[:], sum)
+	return
+}
+
+// RandomDigits returns a byte slice of the given length containing
+// pseudorandom numbers in range 0-9. The slice can be used as a captcha
+// solution.
+func RandomDigits(length int) []byte {
+	return randomBytesMod(length, 10)
+}
+
+// randomBytes returns a byte slice of the given length read from CSPRNG.
+func randomBytes(length int) (b []byte) {
+	b = make([]byte, length)
+	if _, err := io.ReadFull(rand.Reader, b); err != nil {
+		panic("captcha: error reading random source: " + err.Error())
+	}
+	return
+}
+
+// randomBytesMod returns a byte slice of the given length, where each byte is
+// a random number modulo mod.
+func randomBytesMod(length int, mod byte) (b []byte) {
+	b = make([]byte, length)
+	maxrb := byte(256 - (256 % int(mod)))
+	i := 0
+	for {
+		r := randomBytes(length + (length / 4))
+		for _, c := range r {
+			if c > maxrb {
+				// Skip this number to avoid modulo bias.
+				continue
+			}
+			b[i] = c % mod
+			i++
+			if i == length {
+				return
+			}
+		}
+	}
+}
+
+// randomId returns a new random id string.
+func randomId() string {
+	b := randomBytesMod(idLen, byte(len(idChars)))
+	for i, c := range b {
+		b[i] = idChars[c]
+	}
+	return string(b)
+}

+ 94 - 0
dchest/captcha/server.go

@@ -0,0 +1,94 @@
+// Copyright 2011 Dmitry Chestnykh. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package captcha
+
+import (
+	"net/http"
+	"path"
+	"strconv"
+	"strings"
+)
+
+type captchaHandler struct {
+	imgWidth  int
+	imgHeight int
+}
+
+// Server returns a handler that serves HTTP requests with image or
+// audio representations of captchas. Image dimensions are accepted as
+// arguments. The server decides which captcha to serve based on the last URL
+// path component: file name part must contain a captcha id, file extension —
+// its format (PNG or WAV).
+//
+// For example, for file name "LBm5vMjHDtdUfaWYXiQX.png" it serves an image captcha
+// with id "LBm5vMjHDtdUfaWYXiQX", and for "LBm5vMjHDtdUfaWYXiQX.wav" it serves the
+// same captcha in audio format.
+//
+// To serve a captcha as a downloadable file, the URL must be constructed in
+// such a way as if the file to serve is in the "download" subdirectory:
+// "/download/LBm5vMjHDtdUfaWYXiQX.wav".
+//
+// To reload captcha (get a different solution for the same captcha id), append
+// "?reload=x" to URL, where x may be anything (for example, current time or a
+// random number to make browsers refetch an image instead of loading it from
+// cache).
+//
+// By default, the Server serves audio in English language. To serve audio
+// captcha in one of the other supported languages, append "lang" value, for
+// example, "?lang=ru".
+func Server(imgWidth, imgHeight int) http.Handler {
+	return &captchaHandler{imgWidth, imgHeight}
+}
+
+func (h *captchaHandler) serve(w http.ResponseWriter, id, ext string, lang string, download bool) error {
+	w.Header().Set("Cache-Control", "no-cache, no-store, must-revalidate")
+	w.Header().Set("Pragma", "no-cache")
+	w.Header().Set("Expires", "0")
+	if download {
+		w.Header().Set("Content-Type", "application/octet-stream")
+	}
+	switch ext {
+	case ".png":
+		if !download {
+			w.Header().Set("Content-Type", "image/png")
+		}
+		return WriteImage(w, id, h.imgWidth, h.imgHeight)
+	case ".wav":
+		//XXX(dchest) Workaround for Chrome: it wants content-length,
+		//or else will start playing NOT from the beginning.
+		//Filed issue: http://code.google.com/p/chromium/issues/detail?id=80565
+		d := globalStore.Get(id, false)
+		if d == nil {
+			return ErrNotFound
+		}
+		a := NewAudio(id, d, lang)
+		if !download {
+			w.Header().Set("Content-Type", "audio/x-wav")
+		}
+		w.Header().Set("Content-Length", strconv.Itoa(a.EncodedLen()))
+		_, err := a.WriteTo(w)
+		return err
+	}
+	return ErrNotFound
+}
+
+func (h *captchaHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
+	dir, file := path.Split(r.URL.Path)
+	ext := path.Ext(file)
+	id := file[:len(file)-len(ext)]
+	if ext == "" || id == "" {
+		http.NotFound(w, r)
+		return
+	}
+	if r.FormValue("reload") != "" {
+		Reload(id)
+	}
+	lang := strings.ToLower(r.FormValue("lang"))
+	download := path.Base(dir) == "download"
+	if h.serve(w, id, ext, lang, download) == ErrNotFound {
+		http.NotFound(w, r)
+	}
+	// Ignore other errors.
+}

+ 278 - 0
dchest/captcha/siprng.go

@@ -0,0 +1,278 @@
+// Copyright 2014 Dmitry Chestnykh. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package captcha
+
+import "encoding/binary"
+
+// siprng is PRNG based on SipHash-2-4.
+// (Note: it's not safe to use a single siprng from multiple goroutines.)
+type siprng struct {
+	k0, k1, ctr uint64
+}
+
+// siphash implements SipHash-2-4, accepting a uint64 as a message.
+func siphash(k0, k1, m uint64) uint64 {
+	// Initialization.
+	v0 := k0 ^ 0x736f6d6570736575
+	v1 := k1 ^ 0x646f72616e646f6d
+	v2 := k0 ^ 0x6c7967656e657261
+	v3 := k1 ^ 0x7465646279746573
+	t := uint64(8) << 56
+
+	// Compression.
+	v3 ^= m
+
+	// Round 1.
+	v0 += v1
+	v1 = v1<<13 | v1>>(64-13)
+	v1 ^= v0
+	v0 = v0<<32 | v0>>(64-32)
+
+	v2 += v3
+	v3 = v3<<16 | v3>>(64-16)
+	v3 ^= v2
+
+	v0 += v3
+	v3 = v3<<21 | v3>>(64-21)
+	v3 ^= v0
+
+	v2 += v1
+	v1 = v1<<17 | v1>>(64-17)
+	v1 ^= v2
+	v2 = v2<<32 | v2>>(64-32)
+
+	// Round 2.
+	v0 += v1
+	v1 = v1<<13 | v1>>(64-13)
+	v1 ^= v0
+	v0 = v0<<32 | v0>>(64-32)
+
+	v2 += v3
+	v3 = v3<<16 | v3>>(64-16)
+	v3 ^= v2
+
+	v0 += v3
+	v3 = v3<<21 | v3>>(64-21)
+	v3 ^= v0
+
+	v2 += v1
+	v1 = v1<<17 | v1>>(64-17)
+	v1 ^= v2
+	v2 = v2<<32 | v2>>(64-32)
+
+	v0 ^= m
+
+	// Compress last block.
+	v3 ^= t
+
+	// Round 1.
+	v0 += v1
+	v1 = v1<<13 | v1>>(64-13)
+	v1 ^= v0
+	v0 = v0<<32 | v0>>(64-32)
+
+	v2 += v3
+	v3 = v3<<16 | v3>>(64-16)
+	v3 ^= v2
+
+	v0 += v3
+	v3 = v3<<21 | v3>>(64-21)
+	v3 ^= v0
+
+	v2 += v1
+	v1 = v1<<17 | v1>>(64-17)
+	v1 ^= v2
+	v2 = v2<<32 | v2>>(64-32)
+
+	// Round 2.
+	v0 += v1
+	v1 = v1<<13 | v1>>(64-13)
+	v1 ^= v0
+	v0 = v0<<32 | v0>>(64-32)
+
+	v2 += v3
+	v3 = v3<<16 | v3>>(64-16)
+	v3 ^= v2
+
+	v0 += v3
+	v3 = v3<<21 | v3>>(64-21)
+	v3 ^= v0
+
+	v2 += v1
+	v1 = v1<<17 | v1>>(64-17)
+	v1 ^= v2
+	v2 = v2<<32 | v2>>(64-32)
+
+	v0 ^= t
+
+	// Finalization.
+	v2 ^= 0xff
+
+	// Round 1.
+	v0 += v1
+	v1 = v1<<13 | v1>>(64-13)
+	v1 ^= v0
+	v0 = v0<<32 | v0>>(64-32)
+
+	v2 += v3
+	v3 = v3<<16 | v3>>(64-16)
+	v3 ^= v2
+
+	v0 += v3
+	v3 = v3<<21 | v3>>(64-21)
+	v3 ^= v0
+
+	v2 += v1
+	v1 = v1<<17 | v1>>(64-17)
+	v1 ^= v2
+	v2 = v2<<32 | v2>>(64-32)
+
+	// Round 2.
+	v0 += v1
+	v1 = v1<<13 | v1>>(64-13)
+	v1 ^= v0
+	v0 = v0<<32 | v0>>(64-32)
+
+	v2 += v3
+	v3 = v3<<16 | v3>>(64-16)
+	v3 ^= v2
+
+	v0 += v3
+	v3 = v3<<21 | v3>>(64-21)
+	v3 ^= v0
+
+	v2 += v1
+	v1 = v1<<17 | v1>>(64-17)
+	v1 ^= v2
+	v2 = v2<<32 | v2>>(64-32)
+
+	// Round 3.
+	v0 += v1
+	v1 = v1<<13 | v1>>(64-13)
+	v1 ^= v0
+	v0 = v0<<32 | v0>>(64-32)
+
+	v2 += v3
+	v3 = v3<<16 | v3>>(64-16)
+	v3 ^= v2
+
+	v0 += v3
+	v3 = v3<<21 | v3>>(64-21)
+	v3 ^= v0
+
+	v2 += v1
+	v1 = v1<<17 | v1>>(64-17)
+	v1 ^= v2
+	v2 = v2<<32 | v2>>(64-32)
+
+	// Round 4.
+	v0 += v1
+	v1 = v1<<13 | v1>>(64-13)
+	v1 ^= v0
+	v0 = v0<<32 | v0>>(64-32)
+
+	v2 += v3
+	v3 = v3<<16 | v3>>(64-16)
+	v3 ^= v2
+
+	v0 += v3
+	v3 = v3<<21 | v3>>(64-21)
+	v3 ^= v0
+
+	v2 += v1
+	v1 = v1<<17 | v1>>(64-17)
+	v1 ^= v2
+	v2 = v2<<32 | v2>>(64-32)
+
+	return v0 ^ v1 ^ v2 ^ v3
+}
+
+// SetSeed sets a new secret seed for PRNG.
+func (p *siprng) Seed(k [16]byte) {
+	p.k0 = binary.LittleEndian.Uint64(k[0:8])
+	p.k1 = binary.LittleEndian.Uint64(k[8:16])
+	p.ctr = 1
+}
+
+// Uint64 returns a new pseudorandom uint64.
+func (p *siprng) Uint64() uint64 {
+	v := siphash(p.k0, p.k1, p.ctr)
+	p.ctr++
+	return v
+}
+
+func (p *siprng) Bytes(n int) []byte {
+	// Since we don't have a buffer for generated bytes in siprng state,
+	// we just generate enough 8-byte blocks and then cut the result to the
+	// required length. Doing it this way, we lose generated bytes, and we
+	// don't get the strictly sequential deterministic output from PRNG:
+	// calling Uint64() and then Bytes(3) produces different output than
+	// when calling them in the reverse order, but for our applications
+	// this is OK.
+	numBlocks := (n + 8 - 1) / 8
+	b := make([]byte, numBlocks*8)
+	for i := 0; i < len(b); i += 8 {
+		binary.LittleEndian.PutUint64(b[i:], p.Uint64())
+	}
+	return b[:n]
+}
+
+func (p *siprng) Int63() int64 {
+	return int64(p.Uint64() & 0x7fffffffffffffff)
+}
+
+func (p *siprng) Uint32() uint32 {
+	return uint32(p.Uint64())
+}
+
+func (p *siprng) Int31() int32 {
+	return int32(p.Uint32() & 0x7fffffff)
+}
+
+func (p *siprng) Intn(n int) int {
+	if n <= 0 {
+		panic("invalid argument to Intn")
+	}
+	if n <= 1<<31-1 {
+		return int(p.Int31n(int32(n)))
+	}
+	return int(p.Int63n(int64(n)))
+}
+
+func (p *siprng) Int63n(n int64) int64 {
+	if n <= 0 {
+		panic("invalid argument to Int63n")
+	}
+	max := int64((1 << 63) - 1 - (1<<63)%uint64(n))
+	v := p.Int63()
+	for v > max {
+		v = p.Int63()
+	}
+	return v % n
+}
+
+func (p *siprng) Int31n(n int32) int32 {
+	if n <= 0 {
+		panic("invalid argument to Int31n")
+	}
+	max := int32((1 << 31) - 1 - (1<<31)%uint32(n))
+	v := p.Int31()
+	for v > max {
+		v = p.Int31()
+	}
+	return v % n
+}
+
+func (p *siprng) Float64() float64 { return float64(p.Int63()) / (1 << 63) }
+
+// Int returns a pseudorandom int in range [from, to].
+func (p *siprng) Int(from, to int) int {
+	return p.Intn(to+1-from) + from
+}
+
+// Float returns a pseudorandom float64 in range [from, to].
+func (p *siprng) Float(from, to float64) float64 {
+	return (to-from)*p.Float64() + from
+}

+ 54 - 0
dchest/captcha/siprng_test.go

@@ -0,0 +1,54 @@
+package captcha
+
+import (
+	"bytes"
+	"testing"
+)
+
+func TestSiphash(t *testing.T) {
+	good := uint64(0xe849e8bb6ffe2567)
+	cur := siphash(0, 0, 0)
+	if cur != good {
+		t.Fatalf("siphash: expected %x, got %x", good, cur)
+	}
+}
+
+func TestSiprng(t *testing.T) {
+	m := make(map[uint64]interface{})
+	var yes interface{}
+	r := siprng{}
+	r.Seed([16]byte{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15})
+	for i := 0; i < 100000; i++ {
+		v := r.Uint64()
+		if _, ok := m[v]; ok {
+			t.Errorf("siphash: collision on %d: %x", i, v)
+		}
+		m[v] = yes
+	}
+}
+
+func TestSiprngBytes(t *testing.T) {
+	r := siprng{}
+	r.Seed([16]byte{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15})
+	x := r.Bytes(32)
+	if len(x) != 32 {
+		t.Fatalf("siphash: wrong length: expected 32, got %d", len(x))
+	}
+	y := r.Bytes(32)
+	if bytes.Equal(x, y) {
+		t.Fatalf("siphash: stream repeats: %x = %x", x, y)
+	}
+	r.Seed([16]byte{})
+	z := r.Bytes(32)
+	if bytes.Equal(z, x) {
+		t.Fatalf("siphash: outputs under different keys repeat: %x = %x", z, x)
+	}
+}
+
+func BenchmarkSiprng(b *testing.B) {
+	b.SetBytes(8)
+	p := &siprng{}
+	for i := 0; i < b.N; i++ {
+		p.Uint64()
+	}
+}

+ 7390 - 0
dchest/captcha/sounds.go

@@ -0,0 +1,7390 @@
+package captcha
+
+// This file has been generated from .wav files using generate.go.
+
+var waveHeader = []byte{
+	0x52, 0x49, 0x46, 0x46, 0x00, 0x00, 0x00, 0x00, 0x57, 0x41, 0x56, 0x45,
+	0x66, 0x6d, 0x74, 0x20, 0x10, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00,
+	0x40, 0x1f, 0x00, 0x00, 0x40, 0x1f, 0x00, 0x00, 0x01, 0x00, 0x08, 0x00,
+	0x64, 0x61, 0x74, 0x61,
+}
+
+// Byte slices contain raw 8 kHz unsigned 8-bit PCM data (without wav header).
+
+var digitSounds = map[string][][]byte{
+	"en": [][]byte{
+		{ // 0
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7e, 0x7d,
+			0x7e, 0x7c, 0x7e, 0x7e, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x82, 0x81,
+			0x83, 0x82, 0x84, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8a,
+			0x8c, 0x8a, 0x8b, 0x8b, 0x8a, 0x8a, 0x88, 0x88, 0x86, 0x84, 0x82,
+			0x80, 0x7e, 0x7c, 0x7c, 0x7b, 0x7c, 0x79, 0x77, 0x78, 0x76, 0x75,
+			0x73, 0x75, 0x75, 0x75, 0x73, 0x72, 0x71, 0x73, 0x76, 0x70, 0x76,
+			0x71, 0x77, 0x75, 0x74, 0x78, 0x73, 0x79, 0x76, 0x76, 0x75, 0x75,
+			0x75, 0x79, 0x7f, 0x80, 0x81, 0x83, 0x88, 0x8d, 0x90, 0x91, 0x91,
+			0x94, 0x98, 0x97, 0x97, 0x95, 0x94, 0x93, 0x92, 0x8d, 0x8a, 0x86,
+			0x84, 0x81, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x81, 0x81, 0x85, 0x81,
+			0x85, 0x85, 0x86, 0x88, 0x84, 0x83, 0x7d, 0x79, 0x77, 0x77, 0x77,
+			0x75, 0x72, 0x75, 0x75, 0x75, 0x72, 0x73, 0x72, 0x76, 0x76, 0x74,
+			0x74, 0x75, 0x77, 0x78, 0x79, 0x76, 0x79, 0x78, 0x7c, 0x7c, 0x7c,
+			0x7d, 0x7e, 0x7e, 0x7f, 0x7b, 0x7e, 0x7c, 0x7e, 0x7f, 0x80, 0x80,
+			0x7f, 0x85, 0x84, 0x89, 0x85, 0x89, 0x8c, 0x8e, 0x8e, 0x8d, 0x90,
+			0x90, 0x91, 0x8c, 0x8d, 0x89, 0x8c, 0x8a, 0x88, 0x89, 0x84, 0x87,
+			0x85, 0x86, 0x83, 0x84, 0x82, 0x7f, 0x85, 0x81, 0x81, 0x7e, 0x80,
+			0x7d, 0x7e, 0x7e, 0x79, 0x7c, 0x7a, 0x7a, 0x79, 0x79, 0x77, 0x78,
+			0x79, 0x77, 0x76, 0x79, 0x78, 0x79, 0x77, 0x79, 0x79, 0x79, 0x78,
+			0x78, 0x7a, 0x78, 0x7b, 0x79, 0x7a, 0x79, 0x7b, 0x7b, 0x79, 0x7c,
+			0x79, 0x7d, 0x7c, 0x7d, 0x7d, 0x7c, 0x7e, 0x7d, 0x7f, 0x7c, 0x7f,
+			0x7c, 0x7f, 0x7f, 0x82, 0x81, 0x82, 0x84, 0x82, 0x89, 0x82, 0x8a,
+			0x83, 0x8b, 0x88, 0x86, 0x8b, 0x85, 0x8d, 0x86, 0x89, 0x84, 0x89,
+			0x88, 0x84, 0x84, 0x83, 0x85, 0x83, 0x82, 0x80, 0x84, 0x81, 0x83,
+			0x7f, 0x80, 0x82, 0x7e, 0x81, 0x7c, 0x7f, 0x7d, 0x7c, 0x7c, 0x7b,
+			0x7d, 0x7a, 0x7d, 0x79, 0x7c, 0x7b, 0x7a, 0x7d, 0x79, 0x7d, 0x7d,
+			0x7b, 0x7d, 0x79, 0x7e, 0x7d, 0x79, 0x7d, 0x7a, 0x7d, 0x7f, 0x7b,
+			0x7d, 0x7c, 0x7d, 0x7d, 0x7a, 0x7e, 0x7c, 0x7e, 0x7e, 0x7c, 0x7e,
+			0x7f, 0x81, 0x7f, 0x7d, 0x81, 0x80, 0x82, 0x80, 0x81, 0x84, 0x85,
+			0x87, 0x84, 0x85, 0x86, 0x8a, 0x85, 0x88, 0x85, 0x8b, 0x87, 0x88,
+			0x87, 0x84, 0x89, 0x84, 0x86, 0x81, 0x84, 0x84, 0x82, 0x83, 0x81,
+			0x81, 0x83, 0x81, 0x80, 0x7e, 0x82, 0x7c, 0x80, 0x7e, 0x7b, 0x82,
+			0x78, 0x7f, 0x7c, 0x79, 0x7e, 0x77, 0x7c, 0x7e, 0x7a, 0x7b, 0x7a,
+			0x7c, 0x7d, 0x77, 0x7b, 0x7a, 0x7e, 0x7e, 0x7a, 0x7e, 0x7a, 0x7d,
+			0x7a, 0x7b, 0x7c, 0x7b, 0x7e, 0x7b, 0x7a, 0x7f, 0x7c, 0x7c, 0x7d,
+			0x7b, 0x7f, 0x7e, 0x7f, 0x7c, 0x80, 0x80, 0x80, 0x80, 0x81, 0x82,
+			0x82, 0x85, 0x82, 0x88, 0x83, 0x88, 0x84, 0x88, 0x89, 0x85, 0x88,
+			0x85, 0x8a, 0x85, 0x86, 0x85, 0x86, 0x86, 0x83, 0x81, 0x84, 0x85,
+			0x81, 0x7f, 0x80, 0x81, 0x81, 0x7e, 0x7c, 0x7e, 0x85, 0x7c, 0x7b,
+			0x7d, 0x81, 0x7f, 0x77, 0x7d, 0x77, 0x85, 0x79, 0x78, 0x7e, 0x78,
+			0x82, 0x72, 0x7e, 0x7c, 0x7b, 0x80, 0x76, 0x7f, 0x7e, 0x7a, 0x76,
+			0x7d, 0x7c, 0x76, 0x7b, 0x75, 0x7b, 0x7a, 0x77, 0x77, 0x77, 0x7e,
+			0x7c, 0x7a, 0x7a, 0x83, 0x87, 0x7d, 0x86, 0x84, 0x8c, 0x8a, 0x87,
+			0x89, 0x8b, 0x90, 0x87, 0x88, 0x86, 0x8f, 0x89, 0x83, 0x89, 0x86,
+			0x89, 0x89, 0x7c, 0x87, 0x88, 0x80, 0x81, 0x7f, 0x87, 0x82, 0x81,
+			0x7d, 0x85, 0x84, 0x7a, 0x7e, 0x7f, 0x7b, 0x83, 0x78, 0x79, 0x82,
+			0x78, 0x7c, 0x76, 0x7b, 0x78, 0x7b, 0x78, 0x72, 0x7e, 0x76, 0x6f,
+			0x78, 0x74, 0x6a, 0x77, 0x6b, 0x6a, 0x6c, 0x6d, 0x64, 0x6a, 0x71,
+			0x6b, 0x77, 0x79, 0x7d, 0x84, 0x8d, 0x88, 0x90, 0x9a, 0x96, 0x98,
+			0x9c, 0x9d, 0x9a, 0x9a, 0x95, 0x94, 0x93, 0x8b, 0x87, 0x87, 0x83,
+			0x82, 0x84, 0x7f, 0x82, 0x84, 0x84, 0x82, 0x89, 0x8b, 0x86, 0x8e,
+			0x8b, 0x87, 0x86, 0x85, 0x80, 0x7b, 0x7e, 0x78, 0x76, 0x71, 0x6e,
+			0x6d, 0x64, 0x69, 0x66, 0x66, 0x61, 0x62, 0x61, 0x59, 0x62, 0x54,
+			0x5e, 0x62, 0x5d, 0x6f, 0x71, 0x7e, 0x82, 0x8d, 0x94, 0x9d, 0xa5,
+			0xa1, 0xaf, 0xad, 0xad, 0xa8, 0xa8, 0xa3, 0x9b, 0x96, 0x89, 0x88,
+			0x81, 0x78, 0x75, 0x75, 0x75, 0x74, 0x77, 0x7c, 0x83, 0x88, 0x90,
+			0x95, 0x9a, 0xa0, 0x9d, 0x9f, 0x9c, 0x93, 0x8b, 0x83, 0x7c, 0x74,
+			0x6c, 0x65, 0x60, 0x5d, 0x59, 0x57, 0x56, 0x56, 0x55, 0x55, 0x50,
+			0x51, 0x4f, 0x51, 0x57, 0x5e, 0x7a, 0x81, 0x82, 0x93, 0xa3, 0xaa,
+			0xa6, 0xae, 0xb7, 0xb5, 0xae, 0xa4, 0xa5, 0x9f, 0x8e, 0x84, 0x80,
+			0x7d, 0x72, 0x6c, 0x70, 0x73, 0x72, 0x75, 0x7e, 0x88, 0x8f, 0x96,
+			0x9e, 0xa8, 0xad, 0xa7, 0xa5, 0xa1, 0x97, 0x8c, 0x82, 0x7b, 0x72,
+			0x6b, 0x65, 0x61, 0x5d, 0x58, 0x59, 0x59, 0x55, 0x54, 0x54, 0x4e,
+			0x4b, 0x4a, 0x4b, 0x52, 0x5d, 0x77, 0x87, 0x84, 0x91, 0xaa, 0xb0,
+			0xa6, 0xae, 0xb8, 0xb2, 0xaa, 0xa2, 0x9b, 0x96, 0x8b, 0x7d, 0x77,
+			0x79, 0x70, 0x69, 0x70, 0x76, 0x76, 0x7b, 0x83, 0x8f, 0x97, 0x9d,
+			0xa5, 0xa9, 0xaf, 0xa9, 0xa0, 0x9e, 0x94, 0x85, 0x7b, 0x76, 0x6e,
+			0x66, 0x64, 0x61, 0x60, 0x5f, 0x5e, 0x5e, 0x5f, 0x5c, 0x58, 0x57,
+			0x50, 0x4a, 0x47, 0x4e, 0x53, 0x64, 0x86, 0x7f, 0x81, 0xa4, 0xb1,
+			0xa8, 0xa8, 0xb8, 0xb7, 0xaa, 0xa4, 0x9d, 0x97, 0x8c, 0x7e, 0x74,
+			0x73, 0x73, 0x69, 0x69, 0x74, 0x7a, 0x7d, 0x84, 0x90, 0x9a, 0xa0,
+			0xa6, 0xa8, 0xab, 0xab, 0x9e, 0x96, 0x90, 0x85, 0x78, 0x70, 0x6f,
+			0x69, 0x65, 0x65, 0x67, 0x67, 0x66, 0x67, 0x66, 0x66, 0x61, 0x5b,
+			0x56, 0x4d, 0x48, 0x47, 0x4e, 0x55, 0x6a, 0x86, 0x82, 0x8a, 0xa6,
+			0xb4, 0xad, 0xa9, 0xb5, 0xb5, 0xa9, 0x9d, 0x93, 0x8b, 0x7f, 0x74,
+			0x6a, 0x66, 0x6b, 0x6d, 0x6d, 0x74, 0x82, 0x8d, 0x91, 0x99, 0xa4,
+			0xab, 0xab, 0xaa, 0xa7, 0xa0, 0x97, 0x89, 0x7c, 0x75, 0x6e, 0x65,
+			0x62, 0x68, 0x69, 0x68, 0x6d, 0x72, 0x73, 0x71, 0x73, 0x71, 0x6e,
+			0x68, 0x5f, 0x55, 0x4b, 0x47, 0x45, 0x4a, 0x52, 0x64, 0x80, 0x87,
+			0x8a, 0xa0, 0xb3, 0xb4, 0xaa, 0xae, 0xb3, 0xa9, 0x9a, 0x8c, 0x83,
+			0x79, 0x71, 0x6a, 0x63, 0x68, 0x72, 0x76, 0x7a, 0x86, 0x95, 0x9b,
+			0x9d, 0xa2, 0xa6, 0xa5, 0xa0, 0x99, 0x8e, 0x86, 0x7e, 0x73, 0x6c,
+			0x6a, 0x6d, 0x6d, 0x71, 0x78, 0x7d, 0x84, 0x84, 0x81, 0x7f, 0x7a,
+			0x73, 0x68, 0x5e, 0x55, 0x4b, 0x46, 0x42, 0x40, 0x3f, 0x44, 0x4d,
+			0x62, 0x84, 0x98, 0xa0, 0xa9, 0xbc, 0xc3, 0xb7, 0xab, 0xa3, 0x9b,
+			0x8e, 0x7b, 0x6b, 0x5f, 0x5d, 0x62, 0x63, 0x66, 0x6e, 0x7f, 0x91,
+			0x98, 0x99, 0xa0, 0xa8, 0xa8, 0xa2, 0x9a, 0x92, 0x8b, 0x84, 0x7a,
+			0x72, 0x6e, 0x6c, 0x71, 0x74, 0x75, 0x7a, 0x82, 0x89, 0x8b, 0x8b,
+			0x8b, 0x88, 0x83, 0x7b, 0x71, 0x6a, 0x63, 0x5c, 0x55, 0x51, 0x4f,
+			0x4e, 0x4e, 0x4d, 0x4b, 0x4f, 0x5e, 0x75, 0x93, 0xa7, 0xa7, 0xa7,
+			0xb1, 0xbb, 0xaf, 0x95, 0x87, 0x82, 0x7c, 0x73, 0x68, 0x62, 0x63,
+			0x6d, 0x7c, 0x83, 0x86, 0x8c, 0x97, 0xa1, 0xa1, 0x9a, 0x94, 0x91,
+			0x8e, 0x88, 0x7e, 0x76, 0x74, 0x75, 0x76, 0x76, 0x78, 0x7b, 0x82,
+			0x87, 0x8a, 0x8c, 0x8d, 0x8e, 0x8d, 0x89, 0x80, 0x77, 0x71, 0x6b,
+			0x65, 0x5e, 0x59, 0x58, 0x58, 0x57, 0x55, 0x55, 0x58, 0x57, 0x55,
+			0x53, 0x56, 0x66, 0x7c, 0x99, 0xab, 0xa9, 0xa2, 0xa5, 0xac, 0xa7,
+			0x94, 0x84, 0x7d, 0x79, 0x77, 0x75, 0x6e, 0x69, 0x6e, 0x7c, 0x8a,
+			0x8e, 0x8e, 0x90, 0x98, 0x9f, 0x9d, 0x93, 0x89, 0x85, 0x86, 0x83,
+			0x7d, 0x76, 0x74, 0x77, 0x7c, 0x7f, 0x7e, 0x7f, 0x84, 0x8c, 0x8f,
+			0x8c, 0x88, 0x85, 0x84, 0x82, 0x7b, 0x72, 0x6b, 0x67, 0x67, 0x67,
+			0x65, 0x62, 0x61, 0x61, 0x61, 0x62, 0x60, 0x60, 0x62, 0x61, 0x60,
+			0x5d, 0x5b, 0x5e, 0x6a, 0x88, 0xa8, 0xb0, 0xa3, 0x97, 0x9d, 0xab,
+			0xa8, 0x93, 0x81, 0x7a, 0x7b, 0x7b, 0x78, 0x75, 0x75, 0x76, 0x7e,
+			0x8b, 0x95, 0x97, 0x93, 0x91, 0x95, 0x95, 0x8f, 0x85, 0x7e, 0x7b,
+			0x78, 0x77, 0x78, 0x77, 0x76, 0x77, 0x7d, 0x85, 0x89, 0x89, 0x8c,
+			0x92, 0x93, 0x8f, 0x88, 0x83, 0x7f, 0x79, 0x73, 0x6e, 0x6b, 0x69,
+			0x67, 0x65, 0x65, 0x64, 0x64, 0x64, 0x61, 0x60, 0x60, 0x61, 0x62,
+			0x62, 0x60, 0x5e, 0x5e, 0x64, 0x6c, 0x73, 0x77, 0x80, 0x96, 0xae,
+			0xb2, 0xa3, 0x94, 0x93, 0x97, 0x91, 0x82, 0x79, 0x79, 0x7a, 0x7a,
+			0x7b, 0x81, 0x89, 0x8d, 0x8e, 0x90, 0x93, 0x93, 0x8f, 0x88, 0x83,
+			0x7d, 0x76, 0x70, 0x70, 0x74, 0x77, 0x77, 0x78, 0x7e, 0x88, 0x91,
+			0x95, 0x94, 0x91, 0x8d, 0x8b, 0x88, 0x84, 0x7f, 0x79, 0x74, 0x71,
+			0x71, 0x73, 0x75, 0x75, 0x76, 0x79, 0x7c, 0x7b, 0x77, 0x73, 0x70,
+			0x6b, 0x65, 0x5f, 0x5b, 0x5a, 0x5d, 0x61, 0x64, 0x62, 0x5d, 0x59,
+			0x56, 0x54, 0x52, 0x53, 0x5d, 0x76, 0x9c, 0xbb, 0xc1, 0xb4, 0xa6,
+			0xa4, 0xa8, 0xa1, 0x91, 0x81, 0x77, 0x73, 0x72, 0x72, 0x74, 0x79,
+			0x7f, 0x84, 0x8a, 0x93, 0x9b, 0x9c, 0x95, 0x8d, 0x89, 0x85, 0x7f,
+			0x77, 0x70, 0x6c, 0x6b, 0x6c, 0x70, 0x75, 0x7a, 0x7f, 0x85, 0x8c,
+			0x92, 0x95, 0x93, 0x8f, 0x8a, 0x86, 0x83, 0x80, 0x7c, 0x79, 0x78,
+			0x79, 0x7b, 0x7c, 0x7a, 0x7a, 0x7c, 0x7e, 0x7d, 0x79, 0x76, 0x76,
+			0x74, 0x72, 0x6e, 0x6c, 0x6d, 0x6d, 0x6b, 0x68, 0x66, 0x68, 0x6a,
+			0x6a, 0x66, 0x65, 0x69, 0x6b, 0x67, 0x62, 0x61, 0x6a, 0x87, 0xaf,
+			0xc2, 0xb7, 0xa0, 0x94, 0x9e, 0xa5, 0x98, 0x83, 0x74, 0x6e, 0x6e,
+			0x73, 0x7d, 0x87, 0x85, 0x82, 0x89, 0x93, 0x95, 0x8e, 0x86, 0x87,
+			0x8b, 0x86, 0x7d, 0x77, 0x72, 0x6d, 0x6a, 0x6c, 0x76, 0x7e, 0x7f,
+			0x7f, 0x83, 0x8b, 0x90, 0x8f, 0x8b, 0x89, 0x88, 0x86, 0x85, 0x82,
+			0x80, 0x7e, 0x7c, 0x7c, 0x7e, 0x81, 0x82, 0x81, 0x82, 0x84, 0x82,
+			0x7d, 0x78, 0x75, 0x74, 0x74, 0x73, 0x74, 0x75, 0x74, 0x74, 0x73,
+			0x73, 0x73, 0x71, 0x6f, 0x6e, 0x6b, 0x68, 0x66, 0x68, 0x6a, 0x68,
+			0x68, 0x6a, 0x69, 0x67, 0x6a, 0x78, 0x9b, 0xc0, 0xc5, 0xb1, 0x9b,
+			0x93, 0x92, 0x89, 0x7e, 0x76, 0x6f, 0x6a, 0x71, 0x7f, 0x8c, 0x8f,
+			0x8b, 0x8e, 0x97, 0x98, 0x92, 0x8a, 0x81, 0x78, 0x73, 0x74, 0x75,
+			0x73, 0x75, 0x7b, 0x81, 0x84, 0x85, 0x85, 0x84, 0x82, 0x7f, 0x7f,
+			0x80, 0x81, 0x81, 0x7f, 0x7d, 0x7e, 0x83, 0x8c, 0x91, 0x8d, 0x89,
+			0x86, 0x83, 0x81, 0x7f, 0x7e, 0x7c, 0x79, 0x79, 0x7b, 0x7c, 0x7c,
+			0x7a, 0x7a, 0x79, 0x77, 0x75, 0x75, 0x75, 0x74, 0x75, 0x79, 0x7a,
+			0x77, 0x74, 0x73, 0x72, 0x6e, 0x6c, 0x6c, 0x6b, 0x6b, 0x6c, 0x6d,
+			0x6d, 0x6e, 0x71, 0x73, 0x76, 0x8a, 0xab, 0xbd, 0xb5, 0xa2, 0x95,
+			0x8d, 0x84, 0x7c, 0x77, 0x6f, 0x6b, 0x74, 0x84, 0x8d, 0x8d, 0x8f,
+			0x94, 0x94, 0x8f, 0x8d, 0x87, 0x7b, 0x73, 0x75, 0x79, 0x79, 0x78,
+			0x7b, 0x7e, 0x81, 0x83, 0x84, 0x82, 0x80, 0x80, 0x81, 0x7f, 0x7c,
+			0x7c, 0x7c, 0x7a, 0x7c, 0x81, 0x85, 0x88, 0x8f, 0x90, 0x8a, 0x88,
+			0x86, 0x82, 0x7d, 0x7a, 0x7a, 0x79, 0x79, 0x7d, 0x7d, 0x7b, 0x7a,
+			0x7b, 0x7c, 0x7b, 0x7c, 0x7d, 0x7c, 0x7a, 0x79, 0x77, 0x75, 0x72,
+			0x71, 0x71, 0x70, 0x70, 0x71, 0x71, 0x6f, 0x6d, 0x6c, 0x6c, 0x6b,
+			0x6d, 0x6e, 0x6f, 0x72, 0x73, 0x7b, 0x91, 0xb0, 0xbd, 0xb1, 0x9e,
+			0x8b, 0x7f, 0x7d, 0x7f, 0x7a, 0x70, 0x74, 0x80, 0x8c, 0x95, 0x97,
+			0x94, 0x8e, 0x89, 0x89, 0x84, 0x7e, 0x78, 0x73, 0x75, 0x7c, 0x84,
+			0x86, 0x84, 0x86, 0x89, 0x87, 0x83, 0x7f, 0x7a, 0x73, 0x74, 0x77,
+			0x79, 0x7b, 0x7c, 0x7e, 0x85, 0x8b, 0x8c, 0x88, 0x84, 0x80, 0x7e,
+			0x7e, 0x81, 0x88, 0x89, 0x84, 0x86, 0x86, 0x84, 0x81, 0x7c, 0x77,
+			0x74, 0x77, 0x7c, 0x7f, 0x80, 0x7e, 0x7c, 0x7b, 0x7c, 0x7b, 0x78,
+			0x75, 0x70, 0x6f, 0x73, 0x75, 0x76, 0x75, 0x75, 0x74, 0x72, 0x73,
+			0x6f, 0x6b, 0x6c, 0x6b, 0x6c, 0x6c, 0x6c, 0x6e, 0x6f, 0x7e, 0xa1,
+			0xbc, 0xbe, 0xad, 0x95, 0x7e, 0x75, 0x7b, 0x7f, 0x79, 0x77, 0x7d,
+			0x86, 0x93, 0x9c, 0x97, 0x8d, 0x87, 0x84, 0x7f, 0x7f, 0x7e, 0x78,
+			0x76, 0x7b, 0x81, 0x86, 0x8a, 0x8b, 0x85, 0x7e, 0x7d, 0x7b, 0x79,
+			0x78, 0x76, 0x73, 0x73, 0x7c, 0x86, 0x8a, 0x89, 0x87, 0x83, 0x81,
+			0x80, 0x7d, 0x77, 0x78, 0x80, 0x86, 0x8b, 0x90, 0x8d, 0x84, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7b, 0x78, 0x7a, 0x7e, 0x7e, 0x7e, 0x7b,
+			0x75, 0x75, 0x78, 0x7a, 0x7c, 0x7a, 0x77, 0x75, 0x76, 0x76, 0x75,
+			0x75, 0x75, 0x75, 0x76, 0x75, 0x73, 0x72, 0x72, 0x72, 0x70, 0x6c,
+			0x69, 0x6a, 0x6f, 0x7f, 0x9c, 0xb6, 0xb9, 0xac, 0x96, 0x83, 0x7a,
+			0x7a, 0x7f, 0x7e, 0x7d, 0x7f, 0x85, 0x8f, 0x96, 0x94, 0x8e, 0x87,
+			0x81, 0x7f, 0x80, 0x7f, 0x7b, 0x7a, 0x79, 0x7a, 0x80, 0x86, 0x88,
+			0x89, 0x86, 0x80, 0x7b, 0x7a, 0x7a, 0x79, 0x79, 0x79, 0x7a, 0x80,
+			0x86, 0x86, 0x82, 0x7f, 0x7d, 0x7e, 0x83, 0x8a, 0x8c, 0x8b, 0x8a,
+			0x87, 0x81, 0x7d, 0x7b, 0x7b, 0x7c, 0x7e, 0x80, 0x7f, 0x80, 0x7e,
+			0x7a, 0x77, 0x73, 0x72, 0x73, 0x75, 0x79, 0x7c, 0x7c, 0x79, 0x77,
+			0x76, 0x76, 0x78, 0x79, 0x79, 0x77, 0x75, 0x75, 0x75, 0x76, 0x77,
+			0x75, 0x74, 0x74, 0x75, 0x74, 0x73, 0x71, 0x6d, 0x6a, 0x6b, 0x7a,
+			0x99, 0xb0, 0xb6, 0xb1, 0x9c, 0x85, 0x7b, 0x7e, 0x86, 0x89, 0x86,
+			0x81, 0x7b, 0x7f, 0x8a, 0x92, 0x96, 0x8f, 0x84, 0x7d, 0x7d, 0x83,
+			0x88, 0x88, 0x81, 0x79, 0x75, 0x79, 0x81, 0x87, 0x88, 0x82, 0x7c,
+			0x78, 0x79, 0x7d, 0x80, 0x7f, 0x7c, 0x7a, 0x7a, 0x7c, 0x7f, 0x82,
+			0x81, 0x80, 0x82, 0x84, 0x87, 0x89, 0x87, 0x82, 0x7d, 0x7b, 0x7b,
+			0x7d, 0x80, 0x80, 0x7f, 0x7c, 0x79, 0x77, 0x77, 0x79, 0x79, 0x79,
+			0x79, 0x79, 0x78, 0x79, 0x7a, 0x7a, 0x7a, 0x7a, 0x79, 0x77, 0x77,
+			0x77, 0x77, 0x77, 0x79, 0x7c, 0x7c, 0x7d, 0x7e, 0x7b, 0x79, 0x78,
+			0x79, 0x79, 0x78, 0x77, 0x72, 0x6b, 0x66, 0x65, 0x76, 0x94, 0xa9,
+			0xb6, 0xb3, 0x9e, 0x88, 0x7d, 0x7e, 0x85, 0x8b, 0x8e, 0x88, 0x81,
+			0x7f, 0x81, 0x87, 0x8e, 0x92, 0x90, 0x87, 0x7f, 0x7c, 0x7f, 0x84,
+			0x88, 0x86, 0x82, 0x7c, 0x78, 0x78, 0x7b, 0x7e, 0x80, 0x80, 0x7d,
+			0x7a, 0x7a, 0x7b, 0x7e, 0x83, 0x84, 0x83, 0x80, 0x7d, 0x7e, 0x80,
+			0x84, 0x86, 0x86, 0x83, 0x7e, 0x7c, 0x7c, 0x80, 0x84, 0x84, 0x80,
+			0x7a, 0x74, 0x72, 0x75, 0x7a, 0x7d, 0x7e, 0x7b, 0x76, 0x73, 0x74,
+			0x76, 0x79, 0x7c, 0x7c, 0x79, 0x76, 0x76, 0x78, 0x7b, 0x7d, 0x7f,
+			0x7d, 0x7a, 0x79, 0x79, 0x79, 0x7b, 0x7c, 0x7b, 0x7a, 0x79, 0x78,
+			0x77, 0x76, 0x74, 0x72, 0x6f, 0x6c, 0x6e, 0x7a, 0x8b, 0x9a, 0xa5,
+			0xa7, 0x9f, 0x94, 0x8b, 0x87, 0x87, 0x8c, 0x8e, 0x8c, 0x86, 0x80,
+			0x7c, 0x7e, 0x84, 0x8b, 0x8e, 0x8d, 0x89, 0x83, 0x81, 0x80, 0x81,
+			0x83, 0x83, 0x81, 0x7d, 0x79, 0x76, 0x75, 0x78, 0x7b, 0x7e, 0x80,
+			0x80, 0x7f, 0x7e, 0x7d, 0x7d, 0x7e, 0x7f, 0x7f, 0x7e, 0x7d, 0x7a,
+			0x79, 0x7b, 0x7f, 0x84, 0x88, 0x8a, 0x89, 0x86, 0x83, 0x80, 0x7e,
+			0x7e, 0x7f, 0x7d, 0x7c, 0x7a, 0x78, 0x77, 0x79, 0x7a, 0x7b, 0x7b,
+			0x7b, 0x7b, 0x7c, 0x7d, 0x7e, 0x7d, 0x7b, 0x79, 0x78, 0x77, 0x77,
+			0x79, 0x7a, 0x7b, 0x7b, 0x7b, 0x7b, 0x7c, 0x7c, 0x7c, 0x7b, 0x7b,
+			0x7a, 0x79, 0x77, 0x76, 0x75, 0x75, 0x76, 0x77, 0x7e, 0x86, 0x8c,
+			0x93, 0x95, 0x93, 0x91, 0x8e, 0x8c, 0x8c, 0x8e, 0x90, 0x8e, 0x8b,
+			0x87, 0x82, 0x81, 0x81, 0x83, 0x86, 0x87, 0x87, 0x86, 0x85, 0x85,
+			0x84, 0x84, 0x85, 0x84, 0x82, 0x7f, 0x7c, 0x79, 0x78, 0x78, 0x79,
+			0x7b, 0x7d, 0x7e, 0x7e, 0x7d, 0x7d, 0x7e, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7d, 0x7b, 0x7b, 0x7c, 0x7c, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x81, 0x82, 0x82, 0x82, 0x81, 0x80, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7d, 0x7d, 0x7c, 0x7b, 0x7b, 0x7b, 0x7c, 0x7c, 0x7c, 0x7c,
+			0x7b, 0x7a, 0x7a, 0x7a, 0x7a, 0x7a, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c,
+			0x7c, 0x7c, 0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7e,
+			0x80, 0x83, 0x85, 0x86, 0x86, 0x86, 0x86, 0x86, 0x88, 0x89, 0x8a,
+			0x8b, 0x8b, 0x8b, 0x8a, 0x89, 0x88, 0x88, 0x88, 0x89, 0x88, 0x87,
+			0x86, 0x85, 0x84, 0x83, 0x83, 0x82, 0x82, 0x81, 0x81, 0x80, 0x80,
+			0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x80, 0x7f, 0x7f, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7d, 0x7d, 0x7c, 0x7b, 0x7a, 0x79, 0x79, 0x79, 0x79,
+			0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x7a, 0x7a, 0x7b, 0x7b, 0x7b,
+			0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7a, 0x7a, 0x7a, 0x79,
+			0x79, 0x79, 0x7a, 0x79, 0x7a, 0x7a, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b,
+			0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7c, 0x7c, 0x7d,
+			0x7d, 0x7d, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x80, 0x80, 0x81, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80,
+			0x80, 0x81, 0x82, 0x82, 0x82, 0x82, 0x81, 0x81, 0x82, 0x83, 0x83,
+			0x83, 0x84, 0x84, 0x83, 0x84, 0x84, 0x84, 0x85, 0x85, 0x84, 0x84,
+			0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x83, 0x82, 0x81, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7d, 0x7d, 0x7c, 0x7c, 0x7c, 0x7d,
+			0x7d, 0x7c, 0x7b, 0x7b, 0x7a, 0x7b, 0x7c, 0x7d, 0x7d, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c,
+			0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81,
+			0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81,
+			0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
+			0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7c, 0x7c, 0x7d, 0x7e, 0x7e, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x81, 0x81, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x81, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+		},
+		{ // 1
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x84,
+			0x8a, 0x8f, 0x93, 0x94, 0x95, 0x95, 0x94, 0x91, 0x8f, 0x8d, 0x8c,
+			0x8b, 0x8a, 0x8a, 0x89, 0x87, 0x85, 0x83, 0x82, 0x80, 0x80, 0x81,
+			0x82, 0x82, 0x81, 0x7f, 0x7e, 0x7d, 0x7c, 0x7a, 0x79, 0x79, 0x78,
+			0x77, 0x77, 0x79, 0x7b, 0x7d, 0x7e, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d,
+			0x7c, 0x7c, 0x7c, 0x7b, 0x7b, 0x7a, 0x79, 0x79, 0x78, 0x77, 0x77,
+			0x77, 0x78, 0x77, 0x76, 0x75, 0x75, 0x75, 0x76, 0x75, 0x75, 0x74,
+			0x74, 0x74, 0x74, 0x74, 0x74, 0x74, 0x75, 0x77, 0x7a, 0x7e, 0x84,
+			0x8a, 0x91, 0x98, 0x9c, 0x9e, 0x9f, 0x9d, 0x9a, 0x97, 0x94, 0x93,
+			0x92, 0x91, 0x90, 0x8e, 0x8a, 0x85, 0x80, 0x7d, 0x7a, 0x7a, 0x7a,
+			0x7c, 0x7f, 0x81, 0x83, 0x83, 0x83, 0x82, 0x81, 0x7f, 0x7d, 0x7c,
+			0x7c, 0x7c, 0x7d, 0x7d, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e,
+			0x7d, 0x7c, 0x7b, 0x7a, 0x79, 0x77, 0x74, 0x72, 0x71, 0x70, 0x70,
+			0x70, 0x71, 0x70, 0x6e, 0x6c, 0x6a, 0x6a, 0x6b, 0x6c, 0x6d, 0x6d,
+			0x6a, 0x68, 0x6a, 0x6f, 0x78, 0x85, 0x92, 0x9f, 0xa7, 0xab, 0xac,
+			0xaa, 0xa7, 0xa2, 0x9c, 0x98, 0x94, 0x92, 0x91, 0x8f, 0x8c, 0x87,
+			0x81, 0x7b, 0x76, 0x74, 0x74, 0x77, 0x7a, 0x7e, 0x81, 0x84, 0x85,
+			0x84, 0x84, 0x82, 0x81, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7d, 0x7b, 0x7a, 0x79, 0x77,
+			0x76, 0x75, 0x73, 0x72, 0x71, 0x6f, 0x6d, 0x6b, 0x69, 0x69, 0x6a,
+			0x6a, 0x6a, 0x6b, 0x6b, 0x69, 0x67, 0x69, 0x6d, 0x75, 0x81, 0x8f,
+			0x9c, 0xa6, 0xab, 0xad, 0xac, 0xa9, 0xa4, 0x9d, 0x97, 0x92, 0x8f,
+			0x8d, 0x8c, 0x8a, 0x88, 0x85, 0x81, 0x7e, 0x7c, 0x7d, 0x7f, 0x81,
+			0x83, 0x84, 0x84, 0x82, 0x80, 0x7e, 0x7d, 0x7e, 0x7f, 0x82, 0x85,
+			0x87, 0x87, 0x86, 0x84, 0x81, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x7d, 0x77, 0x71, 0x69, 0x62, 0x5b, 0x56, 0x53, 0x52, 0x52, 0x52,
+			0x52, 0x52, 0x51, 0x4f, 0x50, 0x59, 0x66, 0x7b, 0x92, 0xa8, 0xb9,
+			0xbe, 0xbb, 0xb1, 0x9f, 0x8c, 0x7a, 0x6e, 0x69, 0x6c, 0x77, 0x85,
+			0x94, 0xa1, 0xa7, 0xa7, 0xa0, 0x97, 0x8b, 0x82, 0x7c, 0x78, 0x78,
+			0x79, 0x7c, 0x80, 0x82, 0x84, 0x86, 0x87, 0x87, 0x87, 0x85, 0x84,
+			0x82, 0x81, 0x80, 0x82, 0x83, 0x86, 0x87, 0x85, 0x82, 0x7c, 0x73,
+			0x6a, 0x62, 0x5d, 0x5a, 0x59, 0x5b, 0x5c, 0x5d, 0x5c, 0x5c, 0x5b,
+			0x57, 0x50, 0x4e, 0x54, 0x63, 0x7b, 0x95, 0xaf, 0xbe, 0xbe, 0xb9,
+			0xa8, 0x92, 0x7d, 0x6c, 0x64, 0x66, 0x71, 0x81, 0x94, 0xa3, 0xac,
+			0xab, 0xa3, 0x96, 0x87, 0x7a, 0x74, 0x72, 0x76, 0x7c, 0x81, 0x86,
+			0x88, 0x86, 0x83, 0x80, 0x7f, 0x80, 0x82, 0x85, 0x89, 0x8b, 0x8b,
+			0x8a, 0x88, 0x85, 0x82, 0x7f, 0x7c, 0x79, 0x76, 0x72, 0x6f, 0x6c,
+			0x6a, 0x67, 0x63, 0x61, 0x5e, 0x5c, 0x5b, 0x5a, 0x57, 0x55, 0x52,
+			0x51, 0x5b, 0x6a, 0x83, 0x9e, 0xb3, 0xbf, 0xbd, 0xae, 0x96, 0x7d,
+			0x69, 0x5f, 0x63, 0x72, 0x87, 0x9c, 0xaa, 0xaf, 0xaa, 0x9c, 0x8d,
+			0x7d, 0x74, 0x71, 0x76, 0x7f, 0x87, 0x8d, 0x8d, 0x8a, 0x83, 0x7a,
+			0x75, 0x72, 0x75, 0x7c, 0x84, 0x8e, 0x93, 0x95, 0x93, 0x8e, 0x88,
+			0x81, 0x7d, 0x7a, 0x79, 0x7a, 0x7a, 0x7a, 0x78, 0x76, 0x72, 0x6d,
+			0x67, 0x62, 0x5e, 0x5c, 0x5b, 0x59, 0x58, 0x57, 0x55, 0x54, 0x56,
+			0x61, 0x71, 0x89, 0xa3, 0xb4, 0xbc, 0xb5, 0xa3, 0x8b, 0x74, 0x66,
+			0x64, 0x70, 0x83, 0x97, 0xa6, 0xab, 0xa7, 0x9a, 0x8b, 0x7e, 0x76,
+			0x76, 0x7b, 0x83, 0x8a, 0x8c, 0x8a, 0x85, 0x7e, 0x79, 0x76, 0x78,
+			0x7a, 0x7e, 0x82, 0x85, 0x89, 0x8a, 0x8a, 0x8a, 0x89, 0x88, 0x87,
+			0x87, 0x87, 0x86, 0x85, 0x81, 0x7c, 0x77, 0x73, 0x71, 0x71, 0x72,
+			0x73, 0x71, 0x6c, 0x66, 0x5d, 0x56, 0x51, 0x4d, 0x4b, 0x4c, 0x4f,
+			0x5f, 0x75, 0x8c, 0xa9, 0xb7, 0xb9, 0xaf, 0x96, 0x7e, 0x68, 0x61,
+			0x68, 0x7c, 0x95, 0xa7, 0xb1, 0xad, 0x9e, 0x8c, 0x7a, 0x70, 0x70,
+			0x78, 0x85, 0x8f, 0x93, 0x8f, 0x85, 0x7b, 0x73, 0x73, 0x78, 0x80,
+			0x86, 0x87, 0x83, 0x7d, 0x79, 0x7c, 0x83, 0x8e, 0x96, 0x9a, 0x97,
+			0x8d, 0x82, 0x79, 0x74, 0x76, 0x7b, 0x81, 0x85, 0x85, 0x81, 0x79,
+			0x71, 0x69, 0x64, 0x61, 0x61, 0x62, 0x62, 0x60, 0x5d, 0x58, 0x54,
+			0x4f, 0x54, 0x66, 0x7b, 0x95, 0xac, 0xb8, 0xb5, 0xa3, 0x8b, 0x75,
+			0x6a, 0x6e, 0x7d, 0x93, 0xa2, 0xa7, 0xa1, 0x93, 0x85, 0x7b, 0x7b,
+			0x80, 0x87, 0x8e, 0x8e, 0x89, 0x82, 0x7a, 0x78, 0x7a, 0x80, 0x87,
+			0x8b, 0x8a, 0x82, 0x77, 0x6d, 0x67, 0x68, 0x72, 0x84, 0x96, 0xa3,
+			0xa7, 0x9e, 0x8f, 0x7e, 0x72, 0x71, 0x79, 0x85, 0x90, 0x94, 0x90,
+			0x85, 0x77, 0x6b, 0x65, 0x65, 0x67, 0x6c, 0x6f, 0x6f, 0x6b, 0x65,
+			0x5f, 0x5a, 0x58, 0x57, 0x57, 0x5c, 0x68, 0x78, 0x89, 0xa2, 0xb2,
+			0xae, 0xa6, 0x94, 0x81, 0x78, 0x77, 0x7f, 0x8c, 0x95, 0x99, 0x97,
+			0x90, 0x88, 0x85, 0x83, 0x83, 0x83, 0x81, 0x7f, 0x7e, 0x7e, 0x82,
+			0x87, 0x8a, 0x89, 0x82, 0x78, 0x6f, 0x6a, 0x6d, 0x76, 0x81, 0x8a,
+			0x8d, 0x8a, 0x83, 0x7c, 0x7d, 0x83, 0x8d, 0x96, 0x96, 0x90, 0x88,
+			0x81, 0x7f, 0x81, 0x83, 0x83, 0x80, 0x7b, 0x76, 0x74, 0x75, 0x77,
+			0x77, 0x75, 0x73, 0x6f, 0x6d, 0x6e, 0x6c, 0x6b, 0x68, 0x68, 0x67,
+			0x65, 0x65, 0x60, 0x5e, 0x5e, 0x76, 0x9b, 0xaf, 0xbf, 0xb7, 0x9d,
+			0x7f, 0x65, 0x62, 0x70, 0x8a, 0x9c, 0xa0, 0x9d, 0x8a, 0x7f, 0x7f,
+			0x81, 0x8c, 0x91, 0x91, 0x8a, 0x7d, 0x73, 0x6f, 0x76, 0x80, 0x88,
+			0x8e, 0x8c, 0x85, 0x7b, 0x72, 0x6e, 0x6e, 0x74, 0x7d, 0x85, 0x8b,
+			0x89, 0x85, 0x81, 0x7d, 0x7e, 0x83, 0x8a, 0x8f, 0x92, 0x8c, 0x82,
+			0x7b, 0x78, 0x7b, 0x81, 0x87, 0x87, 0x83, 0x7b, 0x75, 0x72, 0x73,
+			0x76, 0x78, 0x78, 0x76, 0x75, 0x74, 0x72, 0x72, 0x72, 0x70, 0x6f,
+			0x6f, 0x6d, 0x6d, 0x6b, 0x68, 0x62, 0x5c, 0x6c, 0x92, 0xb4, 0xc4,
+			0xbf, 0xa3, 0x7c, 0x63, 0x62, 0x76, 0x90, 0x9f, 0x9c, 0x92, 0x85,
+			0x7e, 0x84, 0x8d, 0x90, 0x8a, 0x7e, 0x72, 0x6e, 0x75, 0x81, 0x8e,
+			0x93, 0x8e, 0x83, 0x7a, 0x77, 0x79, 0x7c, 0x7e, 0x7c, 0x79, 0x77,
+			0x7a, 0x7e, 0x83, 0x86, 0x86, 0x83, 0x7e, 0x7a, 0x7a, 0x7d, 0x84,
+			0x8c, 0x90, 0x91, 0x8d, 0x84, 0x7d, 0x79, 0x7a, 0x7e, 0x83, 0x86,
+			0x85, 0x81, 0x7e, 0x7b, 0x79, 0x78, 0x78, 0x76, 0x74, 0x73, 0x72,
+			0x71, 0x71, 0x72, 0x74, 0x75, 0x76, 0x74, 0x70, 0x6c, 0x68, 0x66,
+			0x64, 0x64, 0x64, 0x6a, 0x84, 0xa7, 0xbf, 0xc1, 0xac, 0x89, 0x6d,
+			0x64, 0x6e, 0x83, 0x91, 0x91, 0x88, 0x82, 0x83, 0x8a, 0x91, 0x92,
+			0x8a, 0x7e, 0x77, 0x77, 0x7d, 0x84, 0x88, 0x88, 0x85, 0x82, 0x82,
+			0x84, 0x82, 0x7c, 0x75, 0x70, 0x71, 0x79, 0x80, 0x85, 0x87, 0x87,
+			0x85, 0x85, 0x84, 0x80, 0x7b, 0x78, 0x7b, 0x84, 0x8d, 0x92, 0x90,
+			0x87, 0x80, 0x7d, 0x7e, 0x80, 0x81, 0x80, 0x7e, 0x7b, 0x7b, 0x7d,
+			0x7d, 0x79, 0x75, 0x72, 0x71, 0x72, 0x73, 0x73, 0x72, 0x73, 0x73,
+			0x74, 0x75, 0x73, 0x70, 0x6e, 0x6d, 0x6d, 0x6d, 0x6e, 0x6d, 0x6d,
+			0x70, 0x70, 0x6d, 0x72, 0x88, 0xa5, 0xb6, 0xaf, 0x9a, 0x86, 0x7d,
+			0x83, 0x8b, 0x8d, 0x87, 0x81, 0x83, 0x8c, 0x94, 0x92, 0x8a, 0x83,
+			0x80, 0x81, 0x81, 0x7d, 0x77, 0x75, 0x7d, 0x86, 0x8a, 0x88, 0x84,
+			0x81, 0x81, 0x80, 0x7d, 0x78, 0x74, 0x74, 0x78, 0x7c, 0x80, 0x84,
+			0x85, 0x86, 0x88, 0x87, 0x84, 0x81, 0x83, 0x8a, 0x90, 0x8d, 0x84,
+			0x7f, 0x7f, 0x80, 0x82, 0x82, 0x80, 0x7f, 0x7f, 0x7e, 0x7d, 0x79,
+			0x76, 0x75, 0x76, 0x75, 0x74, 0x72, 0x70, 0x71, 0x72, 0x72, 0x72,
+			0x72, 0x72, 0x72, 0x73, 0x74, 0x71, 0x6d, 0x6c, 0x6d, 0x72, 0x74,
+			0x72, 0x6f, 0x6f, 0x74, 0x7b, 0x83, 0x8b, 0x8d, 0x91, 0x9b, 0xa0,
+			0x9e, 0x99, 0x93, 0x90, 0x8d, 0x8a, 0x87, 0x86, 0x87, 0x89, 0x89,
+			0x88, 0x84, 0x80, 0x80, 0x7f, 0x80, 0x82, 0x84, 0x83, 0x80, 0x7e,
+			0x7e, 0x7f, 0x7d, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x7b,
+			0x7d, 0x7e, 0x7f, 0x81, 0x81, 0x81, 0x85, 0x89, 0x8a, 0x87, 0x86,
+			0x89, 0x8b, 0x8a, 0x87, 0x86, 0x85, 0x82, 0x81, 0x7f, 0x7f, 0x80,
+			0x80, 0x7e, 0x7a, 0x77, 0x76, 0x73, 0x73, 0x74, 0x75, 0x75, 0x74,
+			0x73, 0x73, 0x74, 0x74, 0x72, 0x71, 0x70, 0x6f, 0x6f, 0x6f, 0x6f,
+			0x6f, 0x6f, 0x72, 0x72, 0x72, 0x70, 0x6f, 0x72, 0x74, 0x74, 0x75,
+			0x75, 0x77, 0x80, 0x86, 0x83, 0x88, 0x93, 0x97, 0x96, 0x97, 0x99,
+			0x9e, 0x9e, 0x9b, 0x9b, 0x9c, 0x9a, 0x99, 0x96, 0x90, 0x8b, 0x89,
+			0x85, 0x82, 0x80, 0x7e, 0x7f, 0x7e, 0x7b, 0x79, 0x7a, 0x7a, 0x78,
+			0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, 0x79, 0x78, 0x78,
+			0x7b, 0x7d, 0x80, 0x85, 0x88, 0x86, 0x89, 0x91, 0x90, 0x8b, 0x8a,
+			0x8e, 0x8f, 0x8c, 0x87, 0x85, 0x86, 0x84, 0x7e, 0x7a, 0x75, 0x73,
+			0x73, 0x70, 0x6c, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6c, 0x6c, 0x6c,
+			0x6e, 0x6f, 0x70, 0x70, 0x71, 0x72, 0x72, 0x73, 0x75, 0x74, 0x72,
+			0x73, 0x73, 0x73, 0x74, 0x74, 0x73, 0x74, 0x72, 0x72, 0x74, 0x77,
+			0x80, 0x85, 0x82, 0x89, 0x98, 0x98, 0x94, 0x99, 0x9d, 0x9f, 0xa2,
+			0x9f, 0x9d, 0xa0, 0x9e, 0x9a, 0x97, 0x91, 0x8d, 0x8d, 0x89, 0x84,
+			0x83, 0x83, 0x80, 0x80, 0x7e, 0x7b, 0x7b, 0x7a, 0x77, 0x77, 0x77,
+			0x75, 0x76, 0x75, 0x74, 0x75, 0x76, 0x75, 0x76, 0x78, 0x79, 0x7b,
+			0x7c, 0x7d, 0x80, 0x84, 0x87, 0x89, 0x8a, 0x8d, 0x91, 0x91, 0x8e,
+			0x8e, 0x8f, 0x8e, 0x8b, 0x88, 0x85, 0x83, 0x80, 0x7c, 0x78, 0x75,
+			0x73, 0x71, 0x6e, 0x6c, 0x6d, 0x6e, 0x6e, 0x6e, 0x6e, 0x6e, 0x6f,
+			0x6e, 0x6e, 0x6e, 0x6f, 0x6f, 0x70, 0x71, 0x73, 0x74, 0x75, 0x75,
+			0x77, 0x79, 0x77, 0x76, 0x77, 0x79, 0x79, 0x77, 0x77, 0x79, 0x7b,
+			0x81, 0x84, 0x85, 0x8b, 0x93, 0x94, 0x94, 0x97, 0x9a, 0x9e, 0x9f,
+			0x9d, 0x9e, 0xa1, 0xa0, 0x9d, 0x9b, 0x97, 0x93, 0x92, 0x8d, 0x87,
+			0x86, 0x85, 0x83, 0x81, 0x7f, 0x7d, 0x7d, 0x7b, 0x79, 0x79, 0x78,
+			0x75, 0x75, 0x75, 0x73, 0x72, 0x73, 0x72, 0x73, 0x76, 0x77, 0x78,
+			0x79, 0x7a, 0x7c, 0x7e, 0x81, 0x83, 0x85, 0x86, 0x8b, 0x8f, 0x8d,
+			0x8c, 0x8e, 0x8f, 0x8d, 0x8a, 0x87, 0x86, 0x86, 0x83, 0x7f, 0x7c,
+			0x79, 0x78, 0x76, 0x73, 0x71, 0x71, 0x70, 0x6f, 0x6e, 0x6e, 0x6e,
+			0x6e, 0x6e, 0x6d, 0x6e, 0x6e, 0x6d, 0x6e, 0x70, 0x70, 0x70, 0x72,
+			0x72, 0x74, 0x76, 0x77, 0x78, 0x7a, 0x7a, 0x7a, 0x7b, 0x7a, 0x7b,
+			0x7c, 0x7a, 0x7a, 0x80, 0x81, 0x7d, 0x7d, 0x86, 0x8b, 0x86, 0x84,
+			0x8c, 0x94, 0x92, 0x8f, 0x92, 0x97, 0x9a, 0x99, 0x97, 0x98, 0x9a,
+			0x99, 0x96, 0x93, 0x91, 0x8f, 0x8d, 0x8b, 0x87, 0x85, 0x85, 0x83,
+			0x7f, 0x7d, 0x7d, 0x7b, 0x79, 0x78, 0x77, 0x78, 0x77, 0x76, 0x75,
+			0x76, 0x76, 0x76, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7b, 0x7c,
+			0x7e, 0x80, 0x80, 0x81, 0x85, 0x86, 0x84, 0x85, 0x88, 0x88, 0x86,
+			0x86, 0x86, 0x86, 0x86, 0x84, 0x82, 0x82, 0x82, 0x80, 0x7e, 0x7d,
+			0x7c, 0x7c, 0x7b, 0x79, 0x78, 0x79, 0x78, 0x77, 0x77, 0x77, 0x76,
+			0x77, 0x77, 0x76, 0x76, 0x76, 0x77, 0x77, 0x76, 0x77, 0x78, 0x78,
+			0x78, 0x79, 0x79, 0x79, 0x7b, 0x7b, 0x7b, 0x7c, 0x7d, 0x7e, 0x7e,
+			0x7f, 0x80, 0x82, 0x84, 0x83, 0x83, 0x85, 0x86, 0x86, 0x86, 0x86,
+			0x86, 0x85, 0x85, 0x84, 0x83, 0x81, 0x80, 0x7e, 0x7d, 0x7c, 0x7b,
+			0x7a, 0x79, 0x78, 0x78, 0x78, 0x77, 0x77, 0x77, 0x77, 0x77, 0x78,
+			0x78, 0x78, 0x79, 0x7a, 0x7a, 0x7a, 0x7b, 0x7c, 0x7c, 0x7b, 0x7b,
+			0x7d, 0x7d, 0x7d, 0x7c, 0x7e, 0x7f, 0x7e, 0x7d, 0x7f, 0x80, 0x80,
+			0x81, 0x83, 0x84, 0x84, 0x85, 0x87, 0x88, 0x88, 0x8a, 0x8b, 0x8c,
+			0x8c, 0x8d, 0x8e, 0x8e, 0x8e, 0x8d, 0x8c, 0x8c, 0x8b, 0x8a, 0x89,
+			0x88, 0x87, 0x85, 0x84, 0x83, 0x82, 0x80, 0x7f, 0x7e, 0x7d, 0x7c,
+			0x7c, 0x7b, 0x7a, 0x7a, 0x7a, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79,
+			0x79, 0x79, 0x79, 0x7a, 0x7a, 0x7a, 0x7a, 0x7b, 0x7a, 0x7b, 0x7b,
+			0x7a, 0x7a, 0x7b, 0x7b, 0x7a, 0x7a, 0x7b, 0x7b, 0x7b, 0x7a, 0x7b,
+			0x7b, 0x7d, 0x7c, 0x7c, 0x7d, 0x7e, 0x7e, 0x7d, 0x7e, 0x7f, 0x7f,
+			0x80, 0x80, 0x81, 0x81, 0x82, 0x82, 0x81, 0x81, 0x80, 0x80, 0x7e,
+			0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
+			0x81, 0x81, 0x81, 0x81, 0x80, 0x81, 0x81, 0x81, 0x80, 0x80, 0x81,
+			0x81, 0x82, 0x82, 0x83, 0x84, 0x84, 0x85, 0x85, 0x85, 0x85, 0x86,
+			0x86, 0x86, 0x85, 0x86, 0x86, 0x85, 0x84, 0x83, 0x83, 0x83, 0x82,
+			0x81, 0x81, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7d, 0x7d, 0x7e, 0x7e, 0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x81, 0x81, 0x81, 0x82, 0x82,
+			0x83, 0x84, 0x83, 0x84, 0x85, 0x85, 0x85, 0x86, 0x85, 0x85, 0x86,
+			0x86, 0x85, 0x85, 0x85, 0x85, 0x84, 0x83, 0x83, 0x83, 0x83, 0x81,
+			0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7c, 0x7c,
+			0x7c, 0x7b, 0x7b, 0x7a, 0x7a, 0x7b, 0x7b, 0x7b, 0x7a, 0x7a, 0x7b,
+			0x7b, 0x7a, 0x7b, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f,
+		},
+		{ // 2
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x7f, 0x81, 0x80, 0x81, 0x80, 0x7f, 0x80, 0x7e, 0x7d,
+			0x80, 0x7e, 0x7e, 0x80, 0x7e, 0x80, 0x7f, 0x80, 0x80, 0x83, 0x7f,
+			0x82, 0x7e, 0x83, 0x7e, 0x80, 0x80, 0x7d, 0x83, 0x7b, 0x81, 0x7d,
+			0x81, 0x7b, 0x83, 0x7d, 0x7f, 0x83, 0x7b, 0x83, 0x7e, 0x7f, 0x82,
+			0x7e, 0x7d, 0x83, 0x7c, 0x83, 0x82, 0x7a, 0x84, 0x80, 0x80, 0x80,
+			0x80, 0x7e, 0x7a, 0x84, 0x7a, 0x7f, 0x86, 0x78, 0x80, 0x81, 0x7f,
+			0x81, 0x81, 0x84, 0x76, 0x89, 0x7d, 0x7d, 0x8f, 0x7c, 0x87, 0x7f,
+			0x82, 0x7a, 0x79, 0x7c, 0x73, 0x7e, 0x7e, 0x7a, 0x81, 0x7f, 0x81,
+			0x80, 0x87, 0x81, 0x7f, 0x84, 0x7e, 0x83, 0x7d, 0x84, 0x77, 0x87,
+			0x79, 0x7d, 0x82, 0x7c, 0x80, 0x7c, 0x82, 0x7c, 0x82, 0x7e, 0x83,
+			0x81, 0x7f, 0x7b, 0x85, 0x7a, 0x85, 0x80, 0x7b, 0x84, 0x7a, 0x81,
+			0x7b, 0x83, 0x80, 0x82, 0x7a, 0x82, 0x84, 0x7b, 0x84, 0x7e, 0x82,
+			0x84, 0x7d, 0x88, 0x7c, 0x85, 0x81, 0x7e, 0x7f, 0x7e, 0x83, 0x7a,
+			0x7e, 0x7d, 0x7d, 0x7d, 0x81, 0x7d, 0x89, 0x7a, 0x82, 0x80, 0x85,
+			0x7f, 0x7b, 0x8a, 0x74, 0x85, 0x78, 0x81, 0x7d, 0x81, 0x80, 0x7a,
+			0x85, 0x7e, 0x81, 0x7e, 0x83, 0x7d, 0x83, 0x77, 0x81, 0x82, 0x79,
+			0x82, 0x83, 0x85, 0x7e, 0x87, 0x7e, 0x82, 0x83, 0x79, 0x80, 0x85,
+			0x78, 0x79, 0x8d, 0x7e, 0x7e, 0x87, 0x7e, 0x7a, 0x81, 0x76, 0x7e,
+			0x8a, 0x7b, 0x7f, 0x83, 0x7f, 0x7e, 0x84, 0x7a, 0x7d, 0x83, 0x7f,
+			0x7d, 0x7e, 0x85, 0x7d, 0x80, 0x7e, 0x7d, 0x80, 0x81, 0x7d, 0x7b,
+			0x84, 0x83, 0x7f, 0x7e, 0x81, 0x7e, 0x80, 0x7e, 0x7c, 0x82, 0x7e,
+			0x7c, 0x80, 0x84, 0x81, 0x7d, 0x83, 0x80, 0x7d, 0x85, 0x79, 0x7a,
+			0x87, 0x7d, 0x79, 0x86, 0x80, 0x7b, 0x86, 0x7f, 0x7f, 0x86, 0x80,
+			0x7b, 0x82, 0x7f, 0x79, 0x7c, 0x79, 0x7c, 0x7c, 0x7f, 0x7d, 0x7e,
+			0x85, 0x7c, 0x7f, 0x83, 0x83, 0x81, 0x81, 0x82, 0x84, 0x87, 0x81,
+			0x7c, 0x83, 0x83, 0x7c, 0x7d, 0x7f, 0x82, 0x7f, 0x7e, 0x7f, 0x80,
+			0x80, 0x7f, 0x83, 0x82, 0x82, 0x84, 0x84, 0x83, 0x85, 0x84, 0x80,
+			0x80, 0x7f, 0x7a, 0x7a, 0x79, 0x74, 0x77, 0x76, 0x72, 0x74, 0x78,
+			0x76, 0x73, 0x7b, 0x7b, 0x76, 0x77, 0x75, 0x6f, 0x6a, 0x6b, 0x69,
+			0x63, 0x63, 0x5f, 0x62, 0x60, 0x6e, 0x82, 0x7f, 0x89, 0x99, 0xa2,
+			0xa4, 0xa8, 0xa9, 0xa6, 0xa7, 0xa2, 0x9a, 0x92, 0x90, 0x86, 0x7d,
+			0x80, 0x7d, 0x7a, 0x7a, 0x7e, 0x85, 0x8e, 0x91, 0x91, 0x99, 0x9e,
+			0x9b, 0x97, 0x9b, 0x98, 0x8d, 0x8c, 0x88, 0x7d, 0x7b, 0x7c, 0x78,
+			0x75, 0x7a, 0x7a, 0x78, 0x78, 0x75, 0x73, 0x70, 0x6a, 0x64, 0x62,
+			0x60, 0x5d, 0x5a, 0x58, 0x59, 0x58, 0x53, 0x55, 0x5d, 0x58, 0x59,
+			0x59, 0x6a, 0x8a, 0x87, 0x8a, 0xa1, 0xb3, 0xb3, 0xb1, 0xb8, 0xb1,
+			0xb3, 0xaa, 0x9b, 0x94, 0x90, 0x86, 0x76, 0x78, 0x7c, 0x79, 0x77,
+			0x7e, 0x88, 0x8d, 0x94, 0x97, 0x9a, 0x9e, 0x9b, 0x95, 0x8e, 0x8c,
+			0x8a, 0x83, 0x7f, 0x80, 0x80, 0x7e, 0x7d, 0x82, 0x85, 0x87, 0x86,
+			0x84, 0x81, 0x7d, 0x78, 0x71, 0x6a, 0x63, 0x5d, 0x58, 0x55, 0x54,
+			0x52, 0x54, 0x57, 0x58, 0x58, 0x59, 0x5e, 0x5c, 0x59, 0x55, 0x73,
+			0x8e, 0x89, 0x96, 0xa8, 0xb8, 0xb8, 0xb9, 0xb6, 0xaf, 0xb2, 0xa3,
+			0x92, 0x88, 0x86, 0x7b, 0x6d, 0x72, 0x72, 0x72, 0x77, 0x7b, 0x85,
+			0x90, 0x9b, 0x9b, 0x9d, 0xa2, 0xa1, 0x98, 0x8f, 0x89, 0x82, 0x7d,
+			0x78, 0x75, 0x7a, 0x7e, 0x7f, 0x81, 0x88, 0x8c, 0x8d, 0x8d, 0x89,
+			0x84, 0x80, 0x79, 0x72, 0x6d, 0x66, 0x61, 0x5d, 0x5a, 0x58, 0x58,
+			0x57, 0x57, 0x5c, 0x5e, 0x5c, 0x58, 0x5c, 0x5c, 0x57, 0x5b, 0x6d,
+			0x88, 0x90, 0x99, 0xa9, 0xb5, 0xbb, 0xb8, 0xb4, 0xae, 0xaa, 0xa0,
+			0x8e, 0x81, 0x7b, 0x75, 0x6f, 0x6d, 0x70, 0x75, 0x7b, 0x84, 0x8e,
+			0x99, 0x9f, 0xa2, 0xa2, 0x9e, 0x97, 0x8e, 0x84, 0x79, 0x73, 0x6f,
+			0x65, 0x64, 0x6d, 0x78, 0x81, 0x89, 0x93, 0x9b, 0xa0, 0x9e, 0x99,
+			0x95, 0x90, 0x86, 0x7b, 0x71, 0x6d, 0x69, 0x66, 0x63, 0x5f, 0x60,
+			0x61, 0x61, 0x61, 0x64, 0x66, 0x65, 0x66, 0x67, 0x65, 0x61, 0x5d,
+			0x58, 0x57, 0x55, 0x5a, 0x73, 0x87, 0x92, 0x9e, 0xaa, 0xb6, 0xb7,
+			0xb5, 0xad, 0xa4, 0xa4, 0x9a, 0x89, 0x7d, 0x78, 0x73, 0x6d, 0x6e,
+			0x6f, 0x75, 0x81, 0x8b, 0x92, 0x98, 0xa1, 0xa4, 0xa0, 0x9d, 0x97,
+			0x8d, 0x81, 0x77, 0x6d, 0x65, 0x62, 0x64, 0x68, 0x70, 0x7a, 0x86,
+			0x8f, 0x97, 0x9f, 0xa1, 0x9f, 0x99, 0x8f, 0x84, 0x7e, 0x76, 0x6d,
+			0x66, 0x66, 0x69, 0x68, 0x6b, 0x6e, 0x71, 0x73, 0x72, 0x71, 0x6c,
+			0x6a, 0x66, 0x5e, 0x5b, 0x56, 0x51, 0x50, 0x4f, 0x4b, 0x49, 0x4c,
+			0x59, 0x79, 0x95, 0x9d, 0xa3, 0xb1, 0xbd, 0xc0, 0xbc, 0xad, 0xa1,
+			0x9c, 0x93, 0x82, 0x6e, 0x67, 0x6b, 0x6c, 0x6a, 0x6e, 0x77, 0x83,
+			0x8f, 0x9b, 0x9e, 0x9d, 0xa2, 0xa1, 0x9a, 0x91, 0x87, 0x7b, 0x72,
+			0x6c, 0x66, 0x61, 0x64, 0x6c, 0x73, 0x7a, 0x84, 0x8e, 0x97, 0x9c,
+			0x9f, 0x9e, 0x9a, 0x91, 0x86, 0x7d, 0x77, 0x73, 0x6f, 0x6b, 0x6b,
+			0x70, 0x75, 0x77, 0x75, 0x77, 0x7a, 0x7a, 0x78, 0x73, 0x70, 0x6a,
+			0x65, 0x62, 0x5a, 0x53, 0x53, 0x57, 0x57, 0x52, 0x54, 0x59, 0x56,
+			0x56, 0x58, 0x7a, 0xaa, 0xad, 0xa3, 0xa5, 0xb8, 0xc0, 0xb9, 0xb2,
+			0x91, 0x80, 0x8f, 0x8e, 0x76, 0x5e, 0x63, 0x6c, 0x76, 0x82, 0x7c,
+			0x7b, 0x89, 0xa3, 0xac, 0x9b, 0x95, 0x92, 0x92, 0x95, 0x8a, 0x74,
+			0x64, 0x6d, 0x76, 0x6f, 0x6a, 0x68, 0x71, 0x7f, 0x89, 0x88, 0x82,
+			0x8b, 0x96, 0x98, 0x94, 0x8b, 0x87, 0x84, 0x82, 0x7e, 0x76, 0x74,
+			0x74, 0x77, 0x7a, 0x7a, 0x79, 0x7a, 0x7f, 0x83, 0x80, 0x7e, 0x7c,
+			0x7a, 0x77, 0x74, 0x6e, 0x66, 0x65, 0x68, 0x66, 0x63, 0x63, 0x62,
+			0x65, 0x6b, 0x6c, 0x68, 0x67, 0x6a, 0x6b, 0x67, 0x61, 0x60, 0x73,
+			0x94, 0xa3, 0x9f, 0x9b, 0xa1, 0xab, 0xb6, 0xb6, 0xa2, 0x8e, 0x8d,
+			0x90, 0x8a, 0x7d, 0x70, 0x68, 0x70, 0x81, 0x82, 0x79, 0x79, 0x85,
+			0x95, 0x9e, 0xa0, 0x99, 0x90, 0x91, 0x95, 0x90, 0x83, 0x78, 0x70,
+			0x69, 0x6d, 0x71, 0x6d, 0x69, 0x6f, 0x7a, 0x82, 0x87, 0x86, 0x82,
+			0x86, 0x91, 0x95, 0x90, 0x85, 0x7e, 0x7d, 0x81, 0x82, 0x7d, 0x78,
+			0x74, 0x77, 0x7c, 0x7f, 0x7d, 0x79, 0x7a, 0x7e, 0x7f, 0x7b, 0x77,
+			0x73, 0x71, 0x73, 0x72, 0x6f, 0x6d, 0x6d, 0x6e, 0x6d, 0x6b, 0x6a,
+			0x6b, 0x6b, 0x6c, 0x6d, 0x6c, 0x6a, 0x69, 0x69, 0x67, 0x66, 0x64,
+			0x67, 0x79, 0x8f, 0x9f, 0xa6, 0xa7, 0xa6, 0xa9, 0xb4, 0xb8, 0xae,
+			0x9e, 0x91, 0x89, 0x85, 0x85, 0x7d, 0x70, 0x6b, 0x6e, 0x76, 0x7d,
+			0x83, 0x86, 0x88, 0x8f, 0x97, 0x9c, 0x9b, 0x96, 0x8e, 0x84, 0x7d,
+			0x79, 0x72, 0x6c, 0x67, 0x64, 0x65, 0x6c, 0x76, 0x7b, 0x7f, 0x84,
+			0x8a, 0x8f, 0x95, 0x97, 0x94, 0x92, 0x8e, 0x87, 0x83, 0x80, 0x7c,
+			0x77, 0x72, 0x6e, 0x6c, 0x71, 0x79, 0x7d, 0x7d, 0x7c, 0x7b, 0x7d,
+			0x81, 0x81, 0x7c, 0x75, 0x70, 0x6d, 0x6c, 0x6c, 0x6c, 0x69, 0x68,
+			0x69, 0x6a, 0x6d, 0x6f, 0x72, 0x72, 0x71, 0x72, 0x74, 0x75, 0x73,
+			0x71, 0x70, 0x6d, 0x6b, 0x6d, 0x7c, 0x92, 0x9f, 0xa7, 0xa8, 0xa5,
+			0xa4, 0xa9, 0xb3, 0xb2, 0xa9, 0x9d, 0x8d, 0x81, 0x7d, 0x7e, 0x7c,
+			0x79, 0x77, 0x73, 0x74, 0x7c, 0x86, 0x8f, 0x94, 0x97, 0x93, 0x8e,
+			0x8c, 0x8b, 0x88, 0x82, 0x7b, 0x70, 0x68, 0x67, 0x67, 0x6b, 0x71,
+			0x77, 0x7b, 0x80, 0x86, 0x8c, 0x91, 0x95, 0x94, 0x90, 0x8b, 0x86,
+			0x81, 0x7d, 0x79, 0x74, 0x6f, 0x6d, 0x6e, 0x6f, 0x71, 0x75, 0x78,
+			0x79, 0x7b, 0x7d, 0x7f, 0x7f, 0x7e, 0x7a, 0x75, 0x73, 0x71, 0x71,
+			0x71, 0x6f, 0x6d, 0x6b, 0x6c, 0x6d, 0x6e, 0x70, 0x73, 0x76, 0x78,
+			0x79, 0x79, 0x77, 0x75, 0x75, 0x74, 0x74, 0x73, 0x72, 0x72, 0x73,
+			0x7d, 0x90, 0x9e, 0xa8, 0xac, 0xaa, 0xa6, 0xa5, 0xaa, 0xac, 0xab,
+			0xa5, 0x99, 0x8a, 0x7d, 0x77, 0x75, 0x77, 0x7a, 0x79, 0x76, 0x74,
+			0x77, 0x7e, 0x86, 0x8f, 0x93, 0x93, 0x8f, 0x89, 0x83, 0x7e, 0x7c,
+			0x7a, 0x78, 0x74, 0x6f, 0x6c, 0x6d, 0x71, 0x78, 0x80, 0x87, 0x8a,
+			0x8b, 0x8b, 0x89, 0x88, 0x87, 0x87, 0x85, 0x81, 0x7c, 0x75, 0x70,
+			0x6f, 0x70, 0x72, 0x74, 0x77, 0x77, 0x77, 0x77, 0x79, 0x7b, 0x7c,
+			0x7d, 0x7c, 0x7a, 0x76, 0x72, 0x70, 0x70, 0x71, 0x72, 0x72, 0x72,
+			0x73, 0x74, 0x75, 0x78, 0x7c, 0x7e, 0x7f, 0x7e, 0x7d, 0x7c, 0x79,
+			0x79, 0x78, 0x76, 0x75, 0x74, 0x74, 0x73, 0x72, 0x74, 0x7c, 0x89,
+			0x97, 0xa3, 0xab, 0xac, 0xa8, 0xa3, 0xa0, 0x9e, 0x9f, 0x9e, 0x9b,
+			0x93, 0x88, 0x7f, 0x79, 0x78, 0x7b, 0x7f, 0x83, 0x83, 0x81, 0x80,
+			0x80, 0x81, 0x84, 0x85, 0x84, 0x81, 0x7b, 0x75, 0x71, 0x71, 0x73,
+			0x77, 0x7a, 0x7b, 0x7b, 0x7b, 0x7c, 0x80, 0x82, 0x84, 0x84, 0x82,
+			0x80, 0x7e, 0x7c, 0x7b, 0x7b, 0x7c, 0x7b, 0x7a, 0x79, 0x78, 0x78,
+			0x78, 0x78, 0x78, 0x79, 0x79, 0x78, 0x77, 0x76, 0x75, 0x75, 0x76,
+			0x76, 0x77, 0x77, 0x77, 0x76, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76,
+			0x74, 0x74, 0x75, 0x76, 0x78, 0x79, 0x7a, 0x7a, 0x7b, 0x7b, 0x7c,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c, 0x79, 0x78, 0x7c, 0x85,
+			0x8f, 0x99, 0xa0, 0xa4, 0xa2, 0x9f, 0x9c, 0x9b, 0x9b, 0x9d, 0x9e,
+			0x9b, 0x96, 0x90, 0x89, 0x84, 0x83, 0x83, 0x85, 0x85, 0x85, 0x83,
+			0x81, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x7c, 0x79, 0x75, 0x72, 0x72,
+			0x74, 0x76, 0x7a, 0x7c, 0x7c, 0x7b, 0x7a, 0x7a, 0x7a, 0x7c, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x7d, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7c,
+			0x7a, 0x79, 0x78, 0x78, 0x79, 0x79, 0x79, 0x78, 0x78, 0x77, 0x77,
+			0x77, 0x77, 0x77, 0x77, 0x78, 0x78, 0x78, 0x79, 0x79, 0x79, 0x78,
+			0x78, 0x78, 0x78, 0x79, 0x79, 0x7a, 0x7a, 0x79, 0x79, 0x79, 0x7a,
+			0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x7a, 0x7b, 0x7c, 0x7c, 0x7c,
+			0x7c, 0x7e, 0x7f, 0x80, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x81,
+			0x82, 0x84, 0x85, 0x87, 0x89, 0x8a, 0x8b, 0x8d, 0x8e, 0x8e, 0x8e,
+			0x8e, 0x8e, 0x8e, 0x8e, 0x8e, 0x8e, 0x8d, 0x8c, 0x8b, 0x8a, 0x89,
+			0x88, 0x87, 0x86, 0x86, 0x85, 0x84, 0x83, 0x82, 0x81, 0x80, 0x80,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7d, 0x7c, 0x7b, 0x7a, 0x7a, 0x79, 0x79,
+			0x78, 0x78, 0x77, 0x77, 0x77, 0x77, 0x78, 0x79, 0x7a, 0x7a, 0x7a,
+			0x7a, 0x7a, 0x7a, 0x79, 0x79, 0x78, 0x78, 0x77, 0x77, 0x77, 0x78,
+			0x78, 0x78, 0x78, 0x77, 0x77, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7b,
+			0x7b, 0x7c, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7f,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x81, 0x81, 0x80,
+			0x80, 0x81, 0x80, 0x7f, 0x80, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x81, 0x81, 0x81, 0x82, 0x82, 0x83, 0x83, 0x84, 0x84, 0x84,
+			0x84, 0x83, 0x83, 0x83, 0x84, 0x85, 0x85, 0x86, 0x86, 0x85, 0x84,
+			0x84, 0x84, 0x83, 0x83, 0x83, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+		},
+		{ // 3
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7e, 0x7f, 0x7f, 0x80, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7e, 0x7f, 0x80, 0x80,
+			0x80, 0x81, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x81, 0x80, 0x7e, 0x80,
+			0x7f, 0x80, 0x80, 0x7e, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x81, 0x80, 0x7d, 0x7e, 0x80, 0x7e, 0x80, 0x81, 0x7f, 0x80, 0x7f,
+			0x7d, 0x81, 0x83, 0x7f, 0x7e, 0x80, 0x7f, 0x7e, 0x81, 0x7e, 0x7e,
+			0x80, 0x7f, 0x81, 0x80, 0x7f, 0x7f, 0x7e, 0x82, 0x81, 0x7e, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x81, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x7e, 0x7e, 0x80,
+			0x80, 0x82, 0x81, 0x7e, 0x80, 0x81, 0x80, 0x80, 0x7e, 0x7d, 0x7f,
+			0x7e, 0x7d, 0x7e, 0x80, 0x80, 0x80, 0x80, 0x80, 0x82, 0x7f, 0x80,
+			0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x80, 0x7f, 0x7e, 0x7f, 0x81, 0x7f,
+			0x81, 0x80, 0x80, 0x81, 0x7e, 0x80, 0x7d, 0x7e, 0x7f, 0x7b, 0x7f,
+			0x7e, 0x7f, 0x80, 0x7f, 0x82, 0x7e, 0x7e, 0x82, 0x7f, 0x81, 0x83,
+			0x81, 0x82, 0x84, 0x85, 0x80, 0x80, 0x7e, 0x7b, 0x7d, 0x7d, 0x7e,
+			0x80, 0x83, 0x81, 0x7e, 0x81, 0x81, 0x7e, 0x7f, 0x81, 0x7e, 0x80,
+			0x82, 0x7e, 0x7f, 0x80, 0x7c, 0x7d, 0x7e, 0x7f, 0x7d, 0x84, 0x89,
+			0x7f, 0x7e, 0x82, 0x80, 0x81, 0x80, 0x84, 0x82, 0x7e, 0x7d, 0x75,
+			0x78, 0x80, 0x7b, 0x7c, 0x82, 0x83, 0x7e, 0x7d, 0x83, 0x81, 0x83,
+			0x86, 0x85, 0x84, 0x83, 0x85, 0x86, 0x84, 0x84, 0x88, 0x8b, 0x8a,
+			0x89, 0x88, 0x84, 0x83, 0x84, 0x84, 0x80, 0x80, 0x82, 0x87, 0x86,
+			0x82, 0x87, 0x84, 0x7e, 0x78, 0x74, 0x70, 0x69, 0x67, 0x6c, 0x70,
+			0x70, 0x6f, 0x6e, 0x71, 0x73, 0x6e, 0x6f, 0x71, 0x6d, 0x6f, 0x71,
+			0x6f, 0x6a, 0x6d, 0x77, 0x82, 0x8a, 0x90, 0x97, 0x98, 0x99, 0x9c,
+			0x9c, 0x9a, 0x97, 0x97, 0x97, 0x94, 0x93, 0x92, 0x90, 0x91, 0x8f,
+			0x90, 0x8f, 0x8b, 0x88, 0x85, 0x83, 0x80, 0x7e, 0x79, 0x76, 0x74,
+			0x70, 0x6d, 0x6b, 0x69, 0x66, 0x63, 0x65, 0x66, 0x66, 0x62, 0x5e,
+			0x5d, 0x5c, 0x59, 0x57, 0x5b, 0x66, 0x77, 0x89, 0x92, 0x92, 0x93,
+			0x99, 0xa0, 0xa3, 0x9f, 0x99, 0x95, 0x93, 0x91, 0x8c, 0x85, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x82, 0x86, 0x89, 0x8a, 0x8d, 0x91, 0x97,
+			0x9b, 0x9b, 0x97, 0x90, 0x8a, 0x88, 0x87, 0x81, 0x7b, 0x77, 0x76,
+			0x75, 0x74, 0x75, 0x74, 0x71, 0x6c, 0x69, 0x6a, 0x6c, 0x68, 0x62,
+			0x5d, 0x5a, 0x5a, 0x58, 0x56, 0x5b, 0x69, 0x7b, 0x8b, 0x93, 0x92,
+			0x91, 0x94, 0x9b, 0xa1, 0xa0, 0x9d, 0x99, 0x94, 0x8f, 0x88, 0x82,
+			0x80, 0x80, 0x81, 0x7e, 0x7d, 0x7f, 0x84, 0x88, 0x8d, 0x90, 0x93,
+			0x96, 0x97, 0x95, 0x91, 0x8e, 0x8b, 0x87, 0x82, 0x7d, 0x79, 0x75,
+			0x73, 0x72, 0x6f, 0x6c, 0x6a, 0x69, 0x6a, 0x6b, 0x6b, 0x69, 0x66,
+			0x63, 0x61, 0x5e, 0x59, 0x55, 0x56, 0x62, 0x76, 0x8b, 0x99, 0x9a,
+			0x93, 0x8c, 0x8d, 0x98, 0xa5, 0xaa, 0xa6, 0x9a, 0x8d, 0x84, 0x80,
+			0x80, 0x82, 0x84, 0x82, 0x7e, 0x7b, 0x7a, 0x7d, 0x82, 0x89, 0x91,
+			0x97, 0x9b, 0x9b, 0x96, 0x91, 0x8d, 0x8b, 0x89, 0x85, 0x7e, 0x76,
+			0x70, 0x70, 0x72, 0x72, 0x6f, 0x6c, 0x6a, 0x69, 0x68, 0x65, 0x61,
+			0x5f, 0x5d, 0x5b, 0x59, 0x55, 0x53, 0x55, 0x60, 0x75, 0x8c, 0x9c,
+			0x9f, 0x98, 0x8e, 0x8d, 0x98, 0xa5, 0xac, 0xa8, 0x9b, 0x8b, 0x7f,
+			0x7c, 0x7f, 0x83, 0x84, 0x81, 0x7a, 0x74, 0x74, 0x7a, 0x85, 0x8f,
+			0x96, 0x9a, 0x9c, 0x9b, 0x98, 0x95, 0x91, 0x8e, 0x8a, 0x84, 0x7c,
+			0x75, 0x70, 0x70, 0x70, 0x6f, 0x6b, 0x67, 0x63, 0x62, 0x62, 0x60,
+			0x5d, 0x5c, 0x5b, 0x59, 0x56, 0x51, 0x50, 0x56, 0x64, 0x7a, 0x90,
+			0x9e, 0x9f, 0x98, 0x90, 0x90, 0x9a, 0xa6, 0xac, 0xa7, 0x98, 0x87,
+			0x7b, 0x78, 0x7b, 0x80, 0x83, 0x7f, 0x79, 0x75, 0x76, 0x7f, 0x8a,
+			0x94, 0x9b, 0x9e, 0x9e, 0x9d, 0x9d, 0x9b, 0x97, 0x91, 0x88, 0x7f,
+			0x76, 0x70, 0x6c, 0x69, 0x66, 0x63, 0x61, 0x5f, 0x5d, 0x5b, 0x59,
+			0x57, 0x56, 0x56, 0x56, 0x56, 0x54, 0x51, 0x50, 0x57, 0x69, 0x85,
+			0x9e, 0xa9, 0xa3, 0x94, 0x8a, 0x8d, 0x9c, 0xaa, 0xad, 0xa2, 0x8d,
+			0x7a, 0x71, 0x74, 0x7d, 0x83, 0x83, 0x7d, 0x77, 0x77, 0x7d, 0x89,
+			0x96, 0xa1, 0xa8, 0xa8, 0xa4, 0x9e, 0x9a, 0x97, 0x94, 0x8e, 0x83,
+			0x76, 0x6c, 0x66, 0x64, 0x64, 0x63, 0x5f, 0x59, 0x54, 0x52, 0x56,
+			0x5b, 0x5a, 0x55, 0x52, 0x53, 0x56, 0x59, 0x54, 0x4e, 0x4e, 0x5b,
+			0x76, 0x94, 0xa8, 0xa8, 0x9b, 0x8e, 0x8d, 0x98, 0xa6, 0xac, 0xa5,
+			0x93, 0x80, 0x74, 0x73, 0x79, 0x7f, 0x80, 0x7d, 0x79, 0x78, 0x7d,
+			0x87, 0x93, 0x9e, 0xa5, 0xa7, 0xa4, 0x9e, 0x98, 0x92, 0x8e, 0x89,
+			0x81, 0x77, 0x6e, 0x67, 0x65, 0x64, 0x62, 0x5e, 0x5a, 0x58, 0x59,
+			0x5c, 0x5e, 0x5f, 0x5e, 0x5c, 0x5a, 0x59, 0x58, 0x55, 0x4f, 0x4b,
+			0x4f, 0x61, 0x7f, 0x9b, 0xa7, 0x9f, 0x91, 0x8c, 0x99, 0xad, 0xb3,
+			0xa6, 0x8d, 0x7c, 0x7b, 0x85, 0x8a, 0x83, 0x75, 0x6a, 0x6c, 0x79,
+			0x87, 0x8e, 0x8c, 0x89, 0x8d, 0x9b, 0xab, 0xb3, 0xae, 0x9e, 0x8f,
+			0x86, 0x85, 0x83, 0x7d, 0x73, 0x69, 0x62, 0x5f, 0x60, 0x62, 0x64,
+			0x62, 0x5d, 0x5b, 0x5b, 0x5a, 0x5c, 0x5f, 0x63, 0x63, 0x61, 0x5c,
+			0x57, 0x54, 0x50, 0x4c, 0x4c, 0x57, 0x70, 0x8f, 0xa3, 0xa3, 0x96,
+			0x8d, 0x93, 0xa6, 0xb3, 0xab, 0x95, 0x81, 0x7c, 0x83, 0x88, 0x83,
+			0x77, 0x6d, 0x6e, 0x78, 0x84, 0x8a, 0x8b, 0x8b, 0x90, 0x9a, 0xa6,
+			0xab, 0xa7, 0x9d, 0x94, 0x8e, 0x89, 0x82, 0x79, 0x72, 0x6f, 0x6c,
+			0x68, 0x61, 0x5d, 0x5e, 0x61, 0x62, 0x5f, 0x5c, 0x5f, 0x66, 0x6a,
+			0x64, 0x5c, 0x5a, 0x5f, 0x64, 0x62, 0x5b, 0x55, 0x53, 0x51, 0x50,
+			0x55, 0x69, 0x87, 0x9c, 0x9a, 0x8a, 0x87, 0x9b, 0xb5, 0xb9, 0xa3,
+			0x89, 0x81, 0x90, 0x9c, 0x92, 0x78, 0x66, 0x6c, 0x7e, 0x85, 0x7c,
+			0x73, 0x7a, 0x8d, 0x9a, 0x9a, 0x96, 0x9a, 0xa4, 0xa7, 0x9d, 0x8f,
+			0x88, 0x87, 0x85, 0x7d, 0x73, 0x6d, 0x6d, 0x6d, 0x6b, 0x68, 0x67,
+			0x69, 0x6a, 0x68, 0x65, 0x62, 0x62, 0x63, 0x68, 0x6b, 0x67, 0x62,
+			0x61, 0x61, 0x5d, 0x58, 0x57, 0x5d, 0x66, 0x68, 0x65, 0x69, 0x7c,
+			0x97, 0xa3, 0x9c, 0x94, 0x98, 0xa3, 0xa5, 0x99, 0x8b, 0x85, 0x84,
+			0x80, 0x7b, 0x79, 0x77, 0x74, 0x76, 0x7c, 0x84, 0x8b, 0x8c, 0x8d,
+			0x91, 0x96, 0x99, 0x97, 0x93, 0x8e, 0x8c, 0x8c, 0x87, 0x7e, 0x78,
+			0x7c, 0x83, 0x82, 0x7b, 0x77, 0x7d, 0x81, 0x7b, 0x72, 0x6e, 0x6d,
+			0x66, 0x5c, 0x5c, 0x62, 0x6a, 0x71, 0x77, 0x77, 0x79, 0x80, 0x80,
+			0x77, 0x6f, 0x6e, 0x6a, 0x60, 0x59, 0x59, 0x5a, 0x52, 0x47, 0x45,
+			0x4b, 0x5e, 0x79, 0x89, 0x88, 0x8c, 0xa3, 0xb7, 0xb1, 0x9c, 0x9b,
+			0xab, 0xa9, 0x8e, 0x7b, 0x83, 0x88, 0x79, 0x69, 0x6f, 0x7f, 0x80,
+			0x79, 0x7d, 0x8d, 0x94, 0x90, 0x8e, 0x92, 0x94, 0x8f, 0x87, 0x84,
+			0x86, 0x86, 0x7f, 0x78, 0x7a, 0x7f, 0x82, 0x83, 0x87, 0x8e, 0x90,
+			0x8e, 0x8e, 0x8d, 0x87, 0x81, 0x7b, 0x73, 0x6c, 0x65, 0x5e, 0x5a,
+			0x59, 0x59, 0x57, 0x5b, 0x65, 0x6e, 0x76, 0x7a, 0x79, 0x74, 0x6d,
+			0x65, 0x5d, 0x59, 0x59, 0x58, 0x56, 0x57, 0x5b, 0x5a, 0x58, 0x5a,
+			0x56, 0x54, 0x74, 0x95, 0x88, 0x7e, 0x9e, 0xbe, 0xa6, 0x8b, 0xa6,
+			0xbc, 0xa0, 0x82, 0x93, 0xa1, 0x85, 0x6f, 0x7a, 0x85, 0x79, 0x72,
+			0x7c, 0x85, 0x86, 0x84, 0x88, 0x8d, 0x91, 0x92, 0x8a, 0x87, 0x88,
+			0x84, 0x79, 0x75, 0x7a, 0x77, 0x6f, 0x72, 0x7d, 0x82, 0x82, 0x8a,
+			0x96, 0x9b, 0x98, 0x97, 0x9b, 0x97, 0x8c, 0x86, 0x83, 0x7d, 0x74,
+			0x6f, 0x6e, 0x6b, 0x66, 0x63, 0x64, 0x62, 0x60, 0x61, 0x65, 0x63,
+			0x61, 0x63, 0x66, 0x69, 0x68, 0x63, 0x63, 0x65, 0x62, 0x61, 0x65,
+			0x66, 0x62, 0x62, 0x64, 0x66, 0x64, 0x60, 0x52, 0x67, 0x9a, 0x84,
+			0x70, 0xa0, 0xba, 0x9d, 0x91, 0xb8, 0xb9, 0x96, 0x94, 0xa5, 0x9d,
+			0x82, 0x80, 0x85, 0x7d, 0x74, 0x73, 0x7b, 0x78, 0x76, 0x7b, 0x80,
+			0x84, 0x84, 0x8a, 0x8d, 0x8c, 0x8a, 0x87, 0x86, 0x7f, 0x79, 0x76,
+			0x73, 0x71, 0x71, 0x74, 0x77, 0x7b, 0x7f, 0x83, 0x86, 0x88, 0x8b,
+			0x8d, 0x8f, 0x90, 0x8e, 0x8d, 0x8d, 0x8a, 0x84, 0x82, 0x82, 0x7d,
+			0x7a, 0x7d, 0x7c, 0x77, 0x78, 0x7a, 0x78, 0x76, 0x75, 0x74, 0x75,
+			0x71, 0x6c, 0x6d, 0x6e, 0x6b, 0x68, 0x6b, 0x6c, 0x6a, 0x6d, 0x6d,
+			0x69, 0x6c, 0x6f, 0x6a, 0x6b, 0x6f, 0x6c, 0x65, 0x66, 0x5f, 0x5f,
+			0x83, 0x7c, 0x6f, 0x93, 0xa0, 0x94, 0x96, 0xac, 0xaa, 0x9d, 0xa0,
+			0xa1, 0x9c, 0x8c, 0x84, 0x88, 0x7e, 0x71, 0x74, 0x79, 0x73, 0x70,
+			0x7b, 0x81, 0x7e, 0x85, 0x8c, 0x8a, 0x8b, 0x8d, 0x8e, 0x89, 0x82,
+			0x85, 0x82, 0x7a, 0x76, 0x77, 0x77, 0x73, 0x72, 0x76, 0x7b, 0x7a,
+			0x7d, 0x87, 0x85, 0x85, 0x8b, 0x89, 0x87, 0x87, 0x87, 0x85, 0x85,
+			0x85, 0x85, 0x87, 0x83, 0x81, 0x82, 0x7f, 0x7d, 0x7e, 0x7f, 0x7b,
+			0x78, 0x79, 0x79, 0x75, 0x75, 0x75, 0x75, 0x75, 0x72, 0x72, 0x73,
+			0x70, 0x6e, 0x6f, 0x6e, 0x6c, 0x6c, 0x6b, 0x6a, 0x6c, 0x6d, 0x6e,
+			0x6c, 0x6b, 0x68, 0x66, 0x63, 0x5e, 0x7e, 0x7a, 0x6a, 0x8f, 0x9a,
+			0x8c, 0x95, 0xa9, 0xa0, 0x9a, 0xa2, 0xa1, 0x9b, 0x92, 0x92, 0x91,
+			0x85, 0x7c, 0x80, 0x7f, 0x73, 0x76, 0x7c, 0x7a, 0x79, 0x81, 0x85,
+			0x81, 0x86, 0x8b, 0x8b, 0x89, 0x88, 0x89, 0x86, 0x7f, 0x80, 0x7f,
+			0x77, 0x79, 0x79, 0x77, 0x77, 0x78, 0x7a, 0x7c, 0x7e, 0x80, 0x82,
+			0x83, 0x85, 0x86, 0x87, 0x88, 0x87, 0x88, 0x87, 0x84, 0x84, 0x84,
+			0x80, 0x7d, 0x7f, 0x7a, 0x76, 0x78, 0x76, 0x74, 0x74, 0x75, 0x75,
+			0x74, 0x76, 0x75, 0x77, 0x77, 0x78, 0x7a, 0x77, 0x78, 0x7a, 0x77,
+			0x76, 0x75, 0x74, 0x72, 0x71, 0x74, 0x72, 0x74, 0x73, 0x71, 0x71,
+			0x6d, 0x6c, 0x68, 0x71, 0x7a, 0x71, 0x7d, 0x8a, 0x87, 0x89, 0x96,
+			0x98, 0x95, 0x9b, 0x9f, 0x9c, 0x98, 0x99, 0x98, 0x90, 0x8c, 0x8d,
+			0x88, 0x80, 0x81, 0x82, 0x7b, 0x7b, 0x7f, 0x7e, 0x7d, 0x7f, 0x83,
+			0x81, 0x81, 0x84, 0x83, 0x83, 0x82, 0x82, 0x81, 0x7f, 0x7e, 0x7e,
+			0x7c, 0x7a, 0x7c, 0x7b, 0x7a, 0x7c, 0x7d, 0x7d, 0x7e, 0x81, 0x82,
+			0x82, 0x84, 0x85, 0x84, 0x84, 0x83, 0x82, 0x80, 0x7e, 0x7d, 0x7b,
+			0x79, 0x79, 0x76, 0x75, 0x75, 0x74, 0x73, 0x73, 0x75, 0x74, 0x74,
+			0x77, 0x77, 0x75, 0x77, 0x77, 0x76, 0x76, 0x76, 0x75, 0x74, 0x72,
+			0x78, 0x77, 0x77, 0x7d, 0x7e, 0x7d, 0x79, 0x78, 0x75, 0x71, 0x6f,
+			0x71, 0x7c, 0x75, 0x78, 0x87, 0x83, 0x84, 0x8d, 0x90, 0x8e, 0x93,
+			0x96, 0x95, 0x95, 0x95, 0x95, 0x91, 0x90, 0x8f, 0x8b, 0x88, 0x87,
+			0x86, 0x83, 0x82, 0x83, 0x82, 0x81, 0x82, 0x81, 0x80, 0x80, 0x81,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7c, 0x7c, 0x7c, 0x7a, 0x7a, 0x7a, 0x7a,
+			0x7a, 0x7a, 0x7b, 0x7c, 0x7c, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x81, 0x80, 0x7f, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7d,
+			0x7d, 0x7c, 0x7c, 0x7c, 0x7b, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c,
+			0x7d, 0x7c, 0x7d, 0x7d, 0x7d, 0x7c, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e,
+			0x7e, 0x7d, 0x7e, 0x7e, 0x7d, 0x7e, 0x7d, 0x7d, 0x7d, 0x7c, 0x7c,
+			0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7e, 0x7f, 0x80, 0x80, 0x80,
+			0x82, 0x82, 0x82, 0x83, 0x84, 0x84, 0x84, 0x86, 0x85, 0x86, 0x87,
+			0x87, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x87, 0x86,
+			0x84, 0x84, 0x82, 0x80, 0x7f, 0x7d, 0x7c, 0x7a, 0x79, 0x79, 0x78,
+			0x77, 0x77, 0x76, 0x76, 0x76, 0x76, 0x76, 0x76, 0x77, 0x77, 0x78,
+			0x78, 0x79, 0x7a, 0x79, 0x7b, 0x7b, 0x7a, 0x7c, 0x7b, 0x7b, 0x7d,
+			0x7c, 0x7c, 0x7d, 0x7c, 0x7c, 0x7e, 0x7d, 0x7c, 0x7e, 0x7e, 0x7c,
+			0x7d, 0x7d, 0x7c, 0x7c, 0x7d, 0x7d, 0x7c, 0x7d, 0x7d, 0x7c, 0x7d,
+			0x7e, 0x7d, 0x7e, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x81, 0x82, 0x83, 0x85, 0x86, 0x86, 0x88, 0x89, 0x8a,
+			0x8b, 0x8c, 0x8c, 0x8d, 0x8d, 0x8d, 0x8d, 0x8d, 0x8b, 0x8b, 0x8a,
+			0x89, 0x88, 0x87, 0x86, 0x85, 0x85, 0x83, 0x82, 0x81, 0x80, 0x7e,
+			0x7d, 0x7c, 0x7b, 0x79, 0x79, 0x78, 0x77, 0x77, 0x77, 0x77, 0x77,
+			0x77, 0x77, 0x77, 0x78, 0x78, 0x78, 0x79, 0x79, 0x7a, 0x7a, 0x7a,
+			0x7a, 0x7a, 0x7b, 0x7b, 0x7b, 0x7c, 0x7d, 0x7c, 0x7e, 0x7f, 0x7e,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7d, 0x7c, 0x7c,
+			0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7c, 0x7c, 0x7d, 0x7d, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x82, 0x82,
+			0x83, 0x83, 0x83, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84,
+			0x84, 0x84, 0x84, 0x84, 0x83, 0x83, 0x83, 0x82, 0x82, 0x81, 0x81,
+			0x81, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x80,
+		},
+		{ // 4
+			0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x82, 0x80, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x7e, 0x7e, 0x7e, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7e, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x81, 0x80, 0x7f, 0x7f, 0x80,
+			0x81, 0x80, 0x7f, 0x80, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7e, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x82, 0x7f, 0x7e,
+			0x80, 0x80, 0x80, 0x7f, 0x7d, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x80,
+			0x7f, 0x80, 0x81, 0x7e, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x81,
+			0x7e, 0x80, 0x81, 0x7d, 0x80, 0x7f, 0x80, 0x81, 0x7e, 0x80, 0x81,
+			0x81, 0x82, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7e, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x7e, 0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x81, 0x7d, 0x7c, 0x7e, 0x82, 0x82, 0x80, 0x7f, 0x7e, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x82, 0x81, 0x7f, 0x7e, 0x80, 0x7f,
+			0x80, 0x81, 0x7f, 0x7e, 0x7f, 0x81, 0x80, 0x7d, 0x7e, 0x80, 0x80,
+			0x82, 0x80, 0x7c, 0x80, 0x81, 0x7f, 0x7f, 0x7f, 0x7e, 0x80, 0x80,
+			0x80, 0x7e, 0x7e, 0x80, 0x7f, 0x80, 0x7e, 0x7e, 0x80, 0x82, 0x81,
+			0x7f, 0x81, 0x82, 0x7f, 0x7f, 0x82, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e,
+			0x80, 0x83, 0x81, 0x80, 0x7f, 0x7d, 0x80, 0x81, 0x7f, 0x80, 0x80,
+			0x7e, 0x7e, 0x7e, 0x80, 0x81, 0x7f, 0x7e, 0x7e, 0x7f, 0x83, 0x82,
+			0x81, 0x80, 0x7f, 0x80, 0x7e, 0x7d, 0x80, 0x82, 0x81, 0x7d, 0x7e,
+			0x7e, 0x7d, 0x7d, 0x80, 0x82, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7e,
+			0x80, 0x83, 0x81, 0x80, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x80, 0x7e,
+			0x7e, 0x7f, 0x7f, 0x7e, 0x7e, 0x80, 0x83, 0x81, 0x7e, 0x80, 0x81,
+			0x81, 0x80, 0x7f, 0x7e, 0x7e, 0x7f, 0x80, 0x7e, 0x7e, 0x82, 0x80,
+			0x7d, 0x7f, 0x83, 0x81, 0x7f, 0x7c, 0x7e, 0x83, 0x80, 0x80, 0x80,
+			0x81, 0x80, 0x7b, 0x7a, 0x7f, 0x82, 0x83, 0x82, 0x7d, 0x7e, 0x7f,
+			0x7f, 0x80, 0x7e, 0x7f, 0x81, 0x81, 0x80, 0x7f, 0x7d, 0x7d, 0x7d,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x81, 0x80, 0x7f, 0x7f, 0x7e, 0x7d,
+			0x7f, 0x7e, 0x7e, 0x7d, 0x7b, 0x7b, 0x7c, 0x80, 0x81, 0x81, 0x82,
+			0x83, 0x86, 0x88, 0x8a, 0x8d, 0x8e, 0x8c, 0x8b, 0x8a, 0x87, 0x86,
+			0x85, 0x85, 0x85, 0x85, 0x85, 0x82, 0x7f, 0x7d, 0x7d, 0x7d, 0x7f,
+			0x83, 0x82, 0x7d, 0x79, 0x76, 0x72, 0x6f, 0x6c, 0x6a, 0x6b, 0x6c,
+			0x6c, 0x6c, 0x6a, 0x65, 0x62, 0x63, 0x62, 0x60, 0x5e, 0x5e, 0x63,
+			0x6b, 0x7a, 0x8e, 0xa1, 0xac, 0xad, 0xae, 0xa9, 0xa0, 0x97, 0x8d,
+			0x87, 0x84, 0x82, 0x83, 0x83, 0x83, 0x81, 0x7f, 0x7d, 0x7b, 0x7d,
+			0x80, 0x83, 0x89, 0x8c, 0x90, 0x92, 0x93, 0x91, 0x8c, 0x89, 0x86,
+			0x84, 0x84, 0x84, 0x83, 0x80, 0x7e, 0x7a, 0x76, 0x74, 0x71, 0x70,
+			0x6f, 0x6d, 0x6a, 0x66, 0x63, 0x5f, 0x5c, 0x5a, 0x58, 0x57, 0x55,
+			0x55, 0x5e, 0x6c, 0x80, 0x98, 0xad, 0xb8, 0xb9, 0xb4, 0xa9, 0x99,
+			0x8a, 0x7d, 0x75, 0x74, 0x75, 0x79, 0x7e, 0x80, 0x81, 0x80, 0x7f,
+			0x80, 0x83, 0x88, 0x8f, 0x96, 0x9a, 0x9b, 0x97, 0x8f, 0x86, 0x7d,
+			0x76, 0x74, 0x76, 0x7b, 0x80, 0x85, 0x87, 0x85, 0x83, 0x80, 0x7d,
+			0x7c, 0x7b, 0x7a, 0x78, 0x74, 0x6f, 0x69, 0x64, 0x60, 0x5d, 0x5b,
+			0x5c, 0x5d, 0x5f, 0x62, 0x67, 0x71, 0x7e, 0x8f, 0xa0, 0xae, 0xb8,
+			0xb9, 0xb2, 0xa5, 0x95, 0x86, 0x79, 0x72, 0x6f, 0x71, 0x75, 0x7a,
+			0x7d, 0x80, 0x81, 0x81, 0x83, 0x86, 0x8b, 0x91, 0x98, 0x9c, 0x9c,
+			0x99, 0x91, 0x86, 0x7c, 0x73, 0x6f, 0x6f, 0x73, 0x78, 0x7e, 0x83,
+			0x85, 0x85, 0x83, 0x80, 0x7e, 0x7d, 0x7e, 0x7d, 0x7c, 0x79, 0x74,
+			0x6e, 0x67, 0x61, 0x5d, 0x5b, 0x5b, 0x5c, 0x5f, 0x62, 0x66, 0x6e,
+			0x79, 0x87, 0x98, 0xa6, 0xb2, 0xb7, 0xb5, 0xad, 0xa0, 0x91, 0x81,
+			0x76, 0x6e, 0x6a, 0x6c, 0x70, 0x74, 0x79, 0x7d, 0x81, 0x84, 0x88,
+			0x8c, 0x90, 0x95, 0x98, 0x99, 0x98, 0x93, 0x8b, 0x81, 0x78, 0x71,
+			0x6d, 0x70, 0x75, 0x7c, 0x84, 0x89, 0x8b, 0x8a, 0x88, 0x85, 0x81,
+			0x7e, 0x7c, 0x7a, 0x79, 0x77, 0x75, 0x70, 0x6b, 0x66, 0x61, 0x5e,
+			0x5d, 0x5c, 0x5e, 0x60, 0x63, 0x68, 0x71, 0x7d, 0x8c, 0x9a, 0xa8,
+			0xb1, 0xb3, 0xb0, 0xa7, 0x9a, 0x8c, 0x7f, 0x75, 0x6f, 0x6e, 0x70,
+			0x74, 0x79, 0x7e, 0x82, 0x86, 0x88, 0x8c, 0x8f, 0x92, 0x95, 0x95,
+			0x93, 0x8e, 0x87, 0x7f, 0x77, 0x73, 0x71, 0x73, 0x79, 0x7f, 0x85,
+			0x8a, 0x8c, 0x8b, 0x88, 0x84, 0x80, 0x7c, 0x79, 0x77, 0x75, 0x74,
+			0x73, 0x71, 0x6e, 0x6b, 0x69, 0x67, 0x67, 0x67, 0x65, 0x65, 0x64,
+			0x63, 0x63, 0x69, 0x72, 0x7e, 0x90, 0xa0, 0xae, 0xb9, 0xba, 0xb5,
+			0xaa, 0x9b, 0x8b, 0x7d, 0x74, 0x6e, 0x6c, 0x6e, 0x70, 0x74, 0x78,
+			0x7a, 0x7e, 0x82, 0x87, 0x8c, 0x92, 0x98, 0x9a, 0x9a, 0x96, 0x8d,
+			0x84, 0x78, 0x6f, 0x69, 0x67, 0x6b, 0x74, 0x7f, 0x8a, 0x93, 0x98,
+			0x96, 0x91, 0x8a, 0x82, 0x7c, 0x77, 0x74, 0x74, 0x74, 0x74, 0x74,
+			0x73, 0x72, 0x70, 0x6e, 0x6c, 0x6b, 0x6a, 0x69, 0x68, 0x66, 0x65,
+			0x64, 0x63, 0x67, 0x6e, 0x7b, 0x8b, 0x9b, 0xab, 0xb6, 0xba, 0xb7,
+			0xad, 0x9f, 0x90, 0x82, 0x77, 0x70, 0x6d, 0x6d, 0x6f, 0x72, 0x76,
+			0x79, 0x7d, 0x81, 0x86, 0x8b, 0x91, 0x96, 0x99, 0x9a, 0x95, 0x8e,
+			0x84, 0x78, 0x6d, 0x65, 0x62, 0x63, 0x6a, 0x76, 0x82, 0x8e, 0x98,
+			0x9d, 0x9e, 0x9a, 0x93, 0x8b, 0x82, 0x7a, 0x73, 0x6f, 0x6b, 0x6a,
+			0x6a, 0x6b, 0x6e, 0x72, 0x77, 0x7c, 0x7f, 0x80, 0x7f, 0x7b, 0x75,
+			0x6d, 0x65, 0x5e, 0x58, 0x57, 0x5a, 0x63, 0x72, 0x84, 0x99, 0xab,
+			0xb8, 0xbd, 0xbb, 0xb3, 0xa6, 0x96, 0x87, 0x79, 0x70, 0x6a, 0x68,
+			0x69, 0x6c, 0x71, 0x76, 0x7c, 0x82, 0x88, 0x8e, 0x93, 0x98, 0x9b,
+			0x9a, 0x96, 0x8f, 0x84, 0x78, 0x6d, 0x64, 0x60, 0x60, 0x65, 0x6f,
+			0x7b, 0x88, 0x93, 0x9b, 0x9f, 0x9f, 0x9a, 0x94, 0x8c, 0x84, 0x7c,
+			0x75, 0x6f, 0x6b, 0x69, 0x68, 0x6a, 0x6d, 0x71, 0x77, 0x7d, 0x81,
+			0x84, 0x82, 0x7e, 0x78, 0x70, 0x69, 0x63, 0x5e, 0x5d, 0x5d, 0x60,
+			0x64, 0x6b, 0x76, 0x83, 0x92, 0xa1, 0xae, 0xb7, 0xb8, 0xb4, 0xac,
+			0x9f, 0x91, 0x82, 0x77, 0x70, 0x6b, 0x6c, 0x6e, 0x71, 0x76, 0x79,
+			0x7e, 0x82, 0x87, 0x8c, 0x90, 0x93, 0x93, 0x91, 0x8d, 0x86, 0x7e,
+			0x76, 0x70, 0x6c, 0x6b, 0x6e, 0x73, 0x79, 0x82, 0x8a, 0x90, 0x95,
+			0x96, 0x94, 0x8f, 0x89, 0x82, 0x7c, 0x78, 0x75, 0x74, 0x75, 0x76,
+			0x77, 0x78, 0x79, 0x79, 0x79, 0x7a, 0x7a, 0x79, 0x78, 0x76, 0x74,
+			0x71, 0x6e, 0x6c, 0x6a, 0x68, 0x67, 0x67, 0x67, 0x67, 0x68, 0x68,
+			0x70, 0x7d, 0x8a, 0x9d, 0xad, 0xb6, 0xba, 0xb4, 0xa7, 0x96, 0x84,
+			0x76, 0x6b, 0x69, 0x6c, 0x70, 0x78, 0x7d, 0x7e, 0x7f, 0x80, 0x81,
+			0x84, 0x8a, 0x90, 0x94, 0x97, 0x97, 0x8f, 0x87, 0x7c, 0x70, 0x68,
+			0x63, 0x64, 0x69, 0x73, 0x7d, 0x84, 0x8a, 0x8d, 0x8b, 0x8b, 0x8a,
+			0x88, 0x89, 0x88, 0x87, 0x86, 0x84, 0x80, 0x7d, 0x7c, 0x7e, 0x7f,
+			0x83, 0x86, 0x86, 0x85, 0x82, 0x7e, 0x79, 0x75, 0x73, 0x72, 0x73,
+			0x74, 0x75, 0x75, 0x75, 0x74, 0x72, 0x71, 0x70, 0x6e, 0x6d, 0x6c,
+			0x6b, 0x6a, 0x6a, 0x69, 0x67, 0x66, 0x65, 0x6a, 0x7a, 0x8a, 0x9c,
+			0xb0, 0xb8, 0xb7, 0xaf, 0xa0, 0x8c, 0x7a, 0x70, 0x6b, 0x6c, 0x74,
+			0x7b, 0x7e, 0x81, 0x80, 0x7c, 0x7c, 0x81, 0x89, 0x92, 0x9c, 0xa0,
+			0x9b, 0x92, 0x85, 0x75, 0x6a, 0x64, 0x63, 0x69, 0x72, 0x7c, 0x83,
+			0x87, 0x89, 0x88, 0x86, 0x86, 0x87, 0x88, 0x8a, 0x89, 0x87, 0x81,
+			0x7a, 0x74, 0x71, 0x72, 0x77, 0x7e, 0x87, 0x8f, 0x95, 0x97, 0x95,
+			0x91, 0x8a, 0x81, 0x7a, 0x73, 0x6f, 0x6e, 0x6f, 0x73, 0x76, 0x7a,
+			0x7c, 0x7d, 0x7e, 0x7c, 0x78, 0x76, 0x72, 0x70, 0x6f, 0x6e, 0x6d,
+			0x6b, 0x69, 0x68, 0x67, 0x67, 0x66, 0x64, 0x65, 0x68, 0x76, 0x8a,
+			0x9e, 0xaf, 0xba, 0xb9, 0xad, 0x9a, 0x86, 0x77, 0x6d, 0x6e, 0x76,
+			0x7e, 0x84, 0x86, 0x83, 0x7f, 0x7c, 0x7e, 0x86, 0x90, 0x99, 0x9f,
+			0x9b, 0x8e, 0x80, 0x72, 0x69, 0x66, 0x6b, 0x75, 0x7c, 0x80, 0x82,
+			0x80, 0x7d, 0x7d, 0x80, 0x84, 0x88, 0x8a, 0x88, 0x84, 0x7f, 0x7b,
+			0x78, 0x78, 0x7b, 0x7e, 0x80, 0x85, 0x87, 0x89, 0x8b, 0x8c, 0x8a,
+			0x89, 0x86, 0x83, 0x7e, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7d,
+			0x7b, 0x7b, 0x7b, 0x79, 0x77, 0x75, 0x73, 0x71, 0x6f, 0x70, 0x70,
+			0x71, 0x72, 0x72, 0x72, 0x72, 0x71, 0x70, 0x6e, 0x6c, 0x6c, 0x70,
+			0x73, 0x75, 0x7c, 0x91, 0xa7, 0xb2, 0xb1, 0xa8, 0x9a, 0x88, 0x79,
+			0x78, 0x7e, 0x82, 0x82, 0x81, 0x80, 0x7e, 0x7f, 0x87, 0x91, 0x96,
+			0x95, 0x8f, 0x89, 0x82, 0x7a, 0x78, 0x7a, 0x7b, 0x7b, 0x7a, 0x7b,
+			0x7d, 0x7c, 0x7d, 0x80, 0x82, 0x83, 0x82, 0x81, 0x81, 0x81, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7d, 0x7c, 0x7d, 0x7d, 0x7e, 0x80, 0x85, 0x8a,
+			0x8d, 0x8e, 0x8d, 0x8a, 0x85, 0x7f, 0x7c, 0x7b, 0x7b, 0x7c, 0x7c,
+			0x7e, 0x7e, 0x7d, 0x7c, 0x7c, 0x7d, 0x7c, 0x7a, 0x78, 0x75, 0x72,
+			0x70, 0x70, 0x71, 0x72, 0x72, 0x72, 0x73, 0x74, 0x74, 0x75, 0x74,
+			0x71, 0x6f, 0x6d, 0x6b, 0x6a, 0x6a, 0x6d, 0x71, 0x78, 0x8f, 0xad,
+			0xba, 0xb2, 0x9f, 0x92, 0x89, 0x80, 0x7e, 0x85, 0x89, 0x87, 0x7e,
+			0x79, 0x7f, 0x88, 0x8c, 0x8d, 0x8d, 0x8d, 0x8a, 0x84, 0x81, 0x81,
+			0x7f, 0x79, 0x75, 0x78, 0x7e, 0x81, 0x7f, 0x7f, 0x80, 0x80, 0x7f,
+			0x7e, 0x82, 0x85, 0x82, 0x7e, 0x7c, 0x7d, 0x7f, 0x7f, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x83, 0x89, 0x8d, 0x8e, 0x8c, 0x89, 0x84,
+			0x7f, 0x7c, 0x7b, 0x7d, 0x7e, 0x7f, 0x7e, 0x7d, 0x7b, 0x7b, 0x7c,
+			0x7c, 0x7b, 0x7a, 0x79, 0x79, 0x79, 0x76, 0x73, 0x72, 0x73, 0x75,
+			0x76, 0x76, 0x77, 0x77, 0x75, 0x72, 0x71, 0x71, 0x72, 0x71, 0x70,
+			0x70, 0x71, 0x70, 0x6d, 0x6f, 0x80, 0x9e, 0xb5, 0xb4, 0xa0, 0x8d,
+			0x8a, 0x8d, 0x8c, 0x87, 0x83, 0x81, 0x80, 0x7e, 0x7e, 0x86, 0x8e,
+			0x8e, 0x88, 0x84, 0x88, 0x8e, 0x8c, 0x83, 0x7c, 0x7a, 0x7d, 0x7e,
+			0x7c, 0x7d, 0x7e, 0x7e, 0x7e, 0x7d, 0x7f, 0x81, 0x80, 0x7c, 0x7a,
+			0x7c, 0x82, 0x85, 0x81, 0x7c, 0x7a, 0x7c, 0x7f, 0x80, 0x7f, 0x81,
+			0x84, 0x84, 0x82, 0x83, 0x87, 0x8a, 0x86, 0x7f, 0x7b, 0x7e, 0x80,
+			0x7e, 0x79, 0x79, 0x7d, 0x81, 0x81, 0x7d, 0x78, 0x75, 0x74, 0x75,
+			0x78, 0x7a, 0x7a, 0x77, 0x76, 0x77, 0x78, 0x78, 0x76, 0x76, 0x76,
+			0x77, 0x78, 0x79, 0x79, 0x78, 0x78, 0x78, 0x77, 0x76, 0x74, 0x74,
+			0x73, 0x71, 0x72, 0x7e, 0x93, 0xa4, 0xa5, 0x97, 0x89, 0x88, 0x91,
+			0x95, 0x8e, 0x83, 0x7e, 0x82, 0x87, 0x88, 0x86, 0x86, 0x86, 0x86,
+			0x85, 0x87, 0x8a, 0x8c, 0x87, 0x7f, 0x7b, 0x7d, 0x81, 0x82, 0x80,
+			0x7d, 0x7b, 0x7c, 0x7e, 0x81, 0x82, 0x81, 0x7e, 0x7d, 0x7d, 0x7f,
+			0x82, 0x84, 0x85, 0x83, 0x80, 0x7d, 0x7e, 0x81, 0x82, 0x80, 0x7d,
+			0x7d, 0x81, 0x83, 0x81, 0x7d, 0x7c, 0x7c, 0x7c, 0x7a, 0x79, 0x79,
+			0x7b, 0x7a, 0x79, 0x78, 0x79, 0x79, 0x78, 0x79, 0x7b, 0x7b, 0x79,
+			0x77, 0x77, 0x79, 0x7a, 0x7a, 0x7a, 0x7b, 0x7d, 0x7c, 0x7b, 0x79,
+			0x7a, 0x7b, 0x7b, 0x7b, 0x7a, 0x7a, 0x7a, 0x7a, 0x7b, 0x7b, 0x7b,
+			0x79, 0x78, 0x7a, 0x80, 0x89, 0x8e, 0x8d, 0x87, 0x83, 0x85, 0x8a,
+			0x8c, 0x8a, 0x88, 0x88, 0x8a, 0x8a, 0x8a, 0x89, 0x89, 0x89, 0x89,
+			0x89, 0x8a, 0x8c, 0x8b, 0x89, 0x86, 0x84, 0x83, 0x84, 0x85, 0x86,
+			0x86, 0x84, 0x82, 0x81, 0x82, 0x83, 0x82, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7e, 0x7c, 0x7c, 0x7d, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7d, 0x7d, 0x7d, 0x7c, 0x7b, 0x7a, 0x79, 0x7a, 0x7b, 0x7b, 0x7a,
+			0x79, 0x77, 0x78, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x78, 0x79,
+			0x7a, 0x7a, 0x79, 0x78, 0x7a, 0x7d, 0x7d, 0x7a, 0x79, 0x7a, 0x7b,
+			0x7c, 0x7b, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x7f, 0x7d, 0x7d,
+			0x80, 0x83, 0x82, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x81, 0x81, 0x80, 0x81, 0x83, 0x85, 0x84, 0x84, 0x85,
+			0x86, 0x85, 0x85, 0x85, 0x87, 0x88, 0x88, 0x88, 0x87, 0x87, 0x87,
+			0x87, 0x87, 0x87, 0x88, 0x89, 0x89, 0x88, 0x87, 0x88, 0x89, 0x88,
+			0x86, 0x86, 0x87, 0x88, 0x86, 0x84, 0x83, 0x83, 0x82, 0x81, 0x81,
+			0x81, 0x81, 0x80, 0x7e, 0x7e, 0x7d, 0x7b, 0x7a, 0x7a, 0x7a, 0x7a,
+			0x79, 0x79, 0x7a, 0x7a, 0x79, 0x78, 0x77, 0x79, 0x7a, 0x7a, 0x7a,
+			0x79, 0x79, 0x79, 0x79, 0x7a, 0x7b, 0x7c, 0x7c, 0x7b, 0x7a, 0x7a,
+			0x7c, 0x7d, 0x7b, 0x7a, 0x7b, 0x7e, 0x7f, 0x7d, 0x7b, 0x7c, 0x7d,
+			0x7d, 0x7c, 0x7c, 0x7e, 0x7e, 0x7c, 0x7b, 0x7d, 0x7f, 0x7e, 0x7c,
+			0x7c, 0x7d, 0x7d, 0x7c, 0x7c, 0x7d, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x82, 0x83, 0x82, 0x81, 0x81,
+			0x82, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x84, 0x84, 0x84,
+			0x85, 0x85, 0x85, 0x85, 0x85, 0x84, 0x84, 0x84, 0x85, 0x84, 0x85,
+			0x85, 0x85, 0x84, 0x83, 0x83, 0x83, 0x82, 0x80, 0x81, 0x82, 0x82,
+			0x81, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7c, 0x7c, 0x7b, 0x7c, 0x7c, 0x7c, 0x7c,
+			0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c,
+			0x7c, 0x7d, 0x7d, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7c, 0x7c,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7d, 0x7d, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x80, 0x80,
+			0x82, 0x82, 0x81, 0x81, 0x81, 0x82, 0x82, 0x82, 0x82, 0x82, 0x81,
+			0x82, 0x83, 0x83, 0x83, 0x82, 0x82, 0x82, 0x82, 0x83, 0x83, 0x83,
+			0x82, 0x82, 0x82, 0x82, 0x82, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e,
+			0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7e, 0x7e, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+		},
+		{ // 5
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7e, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x80,
+			0x80, 0x7f, 0x81, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x82, 0x82, 0x80, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x81, 0x80, 0x7f, 0x7e, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x81, 0x80,
+			0x7f, 0x7e, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x81,
+			0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7d, 0x7f, 0x7f, 0x7e, 0x80,
+			0x80, 0x7e, 0x7f, 0x81, 0x81, 0x80, 0x81, 0x80, 0x7e, 0x7e, 0x7f,
+			0x80, 0x80, 0x7f, 0x7f, 0x80, 0x81, 0x7f, 0x80, 0x81, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x80, 0x84, 0x83, 0x7f, 0x7e, 0x80, 0x80, 0x80, 0x7f,
+			0x81, 0x80, 0x7c, 0x7e, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x82, 0x81,
+			0x80, 0x81, 0x7e, 0x7e, 0x7f, 0x80, 0x81, 0x81, 0x7f, 0x7e, 0x7e,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7d, 0x7e, 0x81, 0x80, 0x7d, 0x80, 0x80,
+			0x81, 0x7f, 0x7d, 0x80, 0x80, 0x81, 0x7f, 0x7e, 0x80, 0x7f, 0x80,
+			0x7f, 0x7e, 0x82, 0x81, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x81, 0x7f,
+			0x7f, 0x81, 0x80, 0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x7e, 0x81, 0x81,
+			0x7d, 0x81, 0x83, 0x80, 0x80, 0x7f, 0x7e, 0x80, 0x80, 0x7f, 0x7e,
+			0x7e, 0x81, 0x83, 0x80, 0x7f, 0x7e, 0x80, 0x80, 0x7e, 0x80, 0x7f,
+			0x82, 0x80, 0x7d, 0x81, 0x7f, 0x7d, 0x7d, 0x86, 0x80, 0x78, 0x7e,
+			0x82, 0x82, 0x7f, 0x7b, 0x80, 0x84, 0x7f, 0x7d, 0x7c, 0x80, 0x80,
+			0x81, 0x80, 0x7c, 0x82, 0x81, 0x80, 0x7e, 0x7d, 0x82, 0x80, 0x7d,
+			0x81, 0x81, 0x81, 0x7f, 0x7c, 0x84, 0x81, 0x7b, 0x7d, 0x84, 0x85,
+			0x7b, 0x7d, 0x83, 0x81, 0x7d, 0x7e, 0x80, 0x7f, 0x81, 0x80, 0x7e,
+			0x7f, 0x81, 0x80, 0x7e, 0x81, 0x7e, 0x81, 0x82, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x79, 0x7a, 0x7f, 0x81, 0x81, 0x7f, 0x81, 0x80, 0x7a,
+			0x7e, 0x81, 0x80, 0x80, 0x80, 0x82, 0x80, 0x80, 0x7e, 0x7d, 0x80,
+			0x80, 0x7e, 0x81, 0x80, 0x7f, 0x81, 0x7f, 0x82, 0x80, 0x81, 0x81,
+			0x83, 0x86, 0x80, 0x7f, 0x7f, 0x7e, 0x7f, 0x82, 0x83, 0x81, 0x80,
+			0x84, 0x84, 0x83, 0x83, 0x84, 0x83, 0x7d, 0x7e, 0x7b, 0x79, 0x7c,
+			0x7a, 0x74, 0x7b, 0x7f, 0x7c, 0x7b, 0x7c, 0x7e, 0x7a, 0x7a, 0x7a,
+			0x7a, 0x78, 0x75, 0x77, 0x81, 0x86, 0x85, 0x85, 0x82, 0x7b, 0x73,
+			0x71, 0x73, 0x77, 0x7a, 0x83, 0x86, 0x82, 0x84, 0x88, 0x88, 0x87,
+			0x8b, 0x8b, 0x88, 0x8c, 0x90, 0x90, 0x92, 0x97, 0x95, 0x8f, 0x90,
+			0x91, 0x8e, 0x8d, 0x8c, 0x85, 0x7d, 0x7a, 0x79, 0x7b, 0x7d, 0x7d,
+			0x7a, 0x78, 0x72, 0x69, 0x65, 0x66, 0x68, 0x6c, 0x72, 0x6b, 0x61,
+			0x5a, 0x55, 0x4e, 0x4e, 0x76, 0xae, 0xc7, 0xc3, 0xb4, 0x89, 0x59,
+			0x4d, 0x58, 0x6d, 0x86, 0xa2, 0xa7, 0x95, 0x89, 0x86, 0x82, 0x81,
+			0x87, 0x84, 0x7b, 0x7b, 0x82, 0x83, 0x88, 0x90, 0x90, 0x8a, 0x85,
+			0x85, 0x84, 0x86, 0x8c, 0x8e, 0x88, 0x80, 0x7c, 0x79, 0x7c, 0x81,
+			0x85, 0x85, 0x81, 0x78, 0x6d, 0x67, 0x68, 0x6e, 0x73, 0x73, 0x6f,
+			0x67, 0x5e, 0x5a, 0x53, 0x58, 0x83, 0xb2, 0xc4, 0xbe, 0xa5, 0x74,
+			0x4c, 0x4a, 0x5f, 0x7a, 0x97, 0xac, 0xa3, 0x8d, 0x82, 0x7c, 0x7a,
+			0x84, 0x8d, 0x84, 0x7c, 0x7e, 0x80, 0x86, 0x94, 0x95, 0x8a, 0x83,
+			0x80, 0x7e, 0x84, 0x8d, 0x8f, 0x8b, 0x85, 0x7b, 0x76, 0x7a, 0x81,
+			0x87, 0x86, 0x81, 0x7c, 0x77, 0x70, 0x69, 0x6a, 0x6f, 0x72, 0x73,
+			0x6d, 0x69, 0x62, 0x5f, 0x5d, 0x5b, 0x80, 0xb1, 0xc6, 0xc0, 0xa2,
+			0x6f, 0x45, 0x45, 0x5f, 0x7f, 0x9f, 0xb0, 0x9f, 0x87, 0x7b, 0x78,
+			0x7d, 0x8b, 0x92, 0x87, 0x7b, 0x7a, 0x7f, 0x88, 0x94, 0x95, 0x88,
+			0x7c, 0x78, 0x7d, 0x89, 0x92, 0x91, 0x8e, 0x86, 0x7c, 0x75, 0x77,
+			0x7c, 0x80, 0x86, 0x86, 0x81, 0x7e, 0x77, 0x6b, 0x66, 0x6d, 0x75,
+			0x77, 0x77, 0x70, 0x68, 0x60, 0x5e, 0x56, 0x5b, 0x8b, 0xb7, 0xc4,
+			0xb9, 0x98, 0x65, 0x46, 0x4f, 0x69, 0x89, 0xa5, 0xaa, 0x96, 0x84,
+			0x7c, 0x79, 0x82, 0x8d, 0x8b, 0x80, 0x7a, 0x7b, 0x80, 0x8d, 0x9a,
+			0x97, 0x88, 0x7a, 0x73, 0x78, 0x89, 0x94, 0x92, 0x8d, 0x84, 0x77,
+			0x70, 0x78, 0x80, 0x83, 0x89, 0x8a, 0x82, 0x7b, 0x75, 0x6a, 0x64,
+			0x6c, 0x70, 0x70, 0x73, 0x70, 0x6a, 0x66, 0x66, 0x5d, 0x69, 0x98,
+			0xb8, 0xbb, 0xaa, 0x85, 0x57, 0x48, 0x5c, 0x7a, 0x99, 0xaa, 0xa2,
+			0x89, 0x78, 0x74, 0x7c, 0x8a, 0x90, 0x8a, 0x81, 0x7c, 0x7d, 0x85,
+			0x8e, 0x8e, 0x87, 0x7f, 0x7c, 0x80, 0x8b, 0x92, 0x91, 0x8a, 0x80,
+			0x78, 0x77, 0x7d, 0x84, 0x87, 0x85, 0x81, 0x7b, 0x77, 0x72, 0x6d,
+			0x6e, 0x72, 0x74, 0x71, 0x6c, 0x67, 0x64, 0x61, 0x65, 0x66, 0x61,
+			0x82, 0xaf, 0xbd, 0xb3, 0x98, 0x69, 0x49, 0x54, 0x70, 0x8b, 0xa2,
+			0xa8, 0x93, 0x81, 0x7c, 0x7a, 0x82, 0x8c, 0x8a, 0x7e, 0x78, 0x7c,
+			0x85, 0x91, 0x9b, 0x93, 0x7e, 0x74, 0x76, 0x7a, 0x89, 0x97, 0x98,
+			0x90, 0x85, 0x78, 0x72, 0x78, 0x80, 0x88, 0x8d, 0x88, 0x7f, 0x78,
+			0x72, 0x6b, 0x67, 0x6c, 0x72, 0x72, 0x71, 0x6c, 0x65, 0x62, 0x62,
+			0x60, 0x60, 0x62, 0x7b, 0xa7, 0xbc, 0xb4, 0x98, 0x70, 0x54, 0x59,
+			0x71, 0x8c, 0x9f, 0xa2, 0x95, 0x84, 0x7c, 0x7b, 0x7f, 0x87, 0x88,
+			0x7f, 0x7d, 0x81, 0x86, 0x8b, 0x8e, 0x89, 0x81, 0x7f, 0x82, 0x85,
+			0x8a, 0x8e, 0x8a, 0x83, 0x80, 0x7f, 0x7f, 0x81, 0x87, 0x88, 0x87,
+			0x86, 0x7f, 0x73, 0x6b, 0x6b, 0x6d, 0x72, 0x76, 0x73, 0x6c, 0x6a,
+			0x6a, 0x68, 0x67, 0x66, 0x63, 0x61, 0x52, 0x5b, 0x92, 0xba, 0xc4,
+			0xb3, 0x87, 0x52, 0x45, 0x5f, 0x80, 0x9f, 0xaf, 0xa1, 0x86, 0x7b,
+			0x7c, 0x83, 0x8c, 0x8b, 0x84, 0x7b, 0x78, 0x81, 0x8b, 0x8e, 0x8c,
+			0x86, 0x7e, 0x7e, 0x83, 0x86, 0x8a, 0x8a, 0x88, 0x85, 0x84, 0x81,
+			0x7c, 0x7b, 0x7f, 0x84, 0x88, 0x89, 0x87, 0x81, 0x79, 0x72, 0x6c,
+			0x6c, 0x70, 0x70, 0x6e, 0x6d, 0x6e, 0x6c, 0x67, 0x68, 0x65, 0x62,
+			0x60, 0x59, 0x68, 0x88, 0xa9, 0xb6, 0xa7, 0x86, 0x61, 0x56, 0x65,
+			0x81, 0x99, 0xa5, 0x99, 0x88, 0x7e, 0x7c, 0x84, 0x8c, 0x8b, 0x86,
+			0x82, 0x80, 0x86, 0x89, 0x89, 0x86, 0x82, 0x82, 0x81, 0x80, 0x82,
+			0x7f, 0x7b, 0x79, 0x7c, 0x84, 0x90, 0x95, 0x8f, 0x85, 0x7a, 0x76,
+			0x7d, 0x86, 0x88, 0x84, 0x7f, 0x77, 0x72, 0x77, 0x7c, 0x7b, 0x7b,
+			0x77, 0x6d, 0x65, 0x63, 0x64, 0x61, 0x61, 0x63, 0x65, 0x62, 0x60,
+			0x5f, 0x5d, 0x85, 0xb5, 0xc1, 0xb4, 0x8f, 0x5a, 0x44, 0x5a, 0x7c,
+			0x9f, 0xaf, 0xa0, 0x84, 0x76, 0x7b, 0x87, 0x91, 0x8f, 0x81, 0x75,
+			0x79, 0x84, 0x8e, 0x92, 0x8d, 0x7f, 0x74, 0x73, 0x7a, 0x85, 0x88,
+			0x84, 0x7d, 0x79, 0x7a, 0x7f, 0x87, 0x92, 0x98, 0x95, 0x86, 0x77,
+			0x71, 0x76, 0x80, 0x89, 0x8c, 0x88, 0x7f, 0x77, 0x73, 0x72, 0x75,
+			0x79, 0x76, 0x6f, 0x6a, 0x6c, 0x6e, 0x70, 0x70, 0x69, 0x69, 0x69,
+			0x66, 0x63, 0x61, 0x57, 0x5a, 0x8f, 0xc3, 0xce, 0xb6, 0x89, 0x58,
+			0x45, 0x61, 0x87, 0xa2, 0xac, 0xa0, 0x87, 0x7a, 0x7e, 0x83, 0x89,
+			0x8a, 0x83, 0x7c, 0x7e, 0x85, 0x89, 0x88, 0x82, 0x79, 0x78, 0x80,
+			0x88, 0x8a, 0x83, 0x78, 0x6f, 0x70, 0x79, 0x81, 0x85, 0x86, 0x85,
+			0x83, 0x81, 0x7d, 0x7a, 0x7c, 0x82, 0x8a, 0x90, 0x94, 0x91, 0x85,
+			0x79, 0x72, 0x73, 0x7e, 0x89, 0x8c, 0x85, 0x7b, 0x75, 0x72, 0x74,
+			0x77, 0x77, 0x75, 0x71, 0x6e, 0x6f, 0x71, 0x74, 0x75, 0x74, 0x71,
+			0x71, 0x72, 0x71, 0x6d, 0x66, 0x60, 0x5f, 0x79, 0xa9, 0xc5, 0xba,
+			0x96, 0x6c, 0x52, 0x59, 0x78, 0x96, 0xa4, 0xa5, 0x96, 0x85, 0x7f,
+			0x7e, 0x7c, 0x7a, 0x7c, 0x7e, 0x83, 0x8c, 0x8e, 0x89, 0x82, 0x7c,
+			0x7c, 0x7e, 0x80, 0x80, 0x7e, 0x7c, 0x7c, 0x7d, 0x7e, 0x7d, 0x7c,
+			0x81, 0x85, 0x85, 0x83, 0x80, 0x7d, 0x7c, 0x7d, 0x7e, 0x7e, 0x82,
+			0x86, 0x8c, 0x96, 0x96, 0x87, 0x77, 0x71, 0x73, 0x7a, 0x83, 0x88,
+			0x88, 0x83, 0x7b, 0x73, 0x71, 0x75, 0x7a, 0x7d, 0x7b, 0x75, 0x72,
+			0x74, 0x77, 0x78, 0x74, 0x71, 0x6f, 0x71, 0x74, 0x73, 0x6f, 0x6f,
+			0x73, 0x74, 0x71, 0x6c, 0x65, 0x6a, 0x86, 0xaa, 0xbd, 0xb0, 0x8e,
+			0x6b, 0x5e, 0x68, 0x7d, 0x90, 0x9a, 0x9b, 0x96, 0x91, 0x89, 0x7e,
+			0x74, 0x70, 0x75, 0x82, 0x8f, 0x92, 0x8e, 0x88, 0x7f, 0x7a, 0x7b,
+			0x7e, 0x7f, 0x80, 0x81, 0x7f, 0x7b, 0x7a, 0x7a, 0x7c, 0x80, 0x81,
+			0x81, 0x84, 0x86, 0x83, 0x7f, 0x7c, 0x7c, 0x7e, 0x82, 0x84, 0x83,
+			0x8a, 0x94, 0x93, 0x85, 0x76, 0x71, 0x75, 0x80, 0x8a, 0x8b, 0x85,
+			0x80, 0x7b, 0x76, 0x74, 0x77, 0x7a, 0x7c, 0x7d, 0x79, 0x75, 0x72,
+			0x73, 0x75, 0x76, 0x75, 0x75, 0x74, 0x73, 0x74, 0x74, 0x71, 0x70,
+			0x72, 0x73, 0x73, 0x71, 0x70, 0x70, 0x6f, 0x77, 0x8a, 0x9c, 0xa7,
+			0xa8, 0x98, 0x80, 0x70, 0x6c, 0x73, 0x82, 0x94, 0x9e, 0x9e, 0x96,
+			0x89, 0x7e, 0x79, 0x78, 0x78, 0x7d, 0x84, 0x8a, 0x8f, 0x90, 0x8c,
+			0x84, 0x7c, 0x74, 0x72, 0x76, 0x7c, 0x83, 0x87, 0x85, 0x80, 0x7c,
+			0x7c, 0x7e, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x82,
+			0x86, 0x89, 0x8a, 0x8a, 0x89, 0x85, 0x7f, 0x7b, 0x7b, 0x7c, 0x7e,
+			0x80, 0x83, 0x84, 0x82, 0x7e, 0x78, 0x75, 0x74, 0x72, 0x73, 0x75,
+			0x79, 0x7e, 0x7f, 0x7b, 0x75, 0x70, 0x6f, 0x70, 0x72, 0x74, 0x74,
+			0x75, 0x76, 0x76, 0x73, 0x71, 0x74, 0x75, 0x73, 0x6e, 0x6d, 0x6c,
+			0x72, 0x85, 0x9b, 0xac, 0xaa, 0x9e, 0x8e, 0x80, 0x77, 0x73, 0x78,
+			0x83, 0x94, 0x9d, 0x9b, 0x93, 0x8d, 0x86, 0x7e, 0x76, 0x72, 0x77,
+			0x81, 0x8a, 0x8d, 0x8d, 0x8c, 0x87, 0x80, 0x79, 0x76, 0x76, 0x79,
+			0x7d, 0x7f, 0x80, 0x82, 0x82, 0x7f, 0x7c, 0x7d, 0x80, 0x7f, 0x7c,
+			0x80, 0x82, 0x84, 0x87, 0x88, 0x83, 0x82, 0x85, 0x87, 0x83, 0x80,
+			0x7e, 0x7e, 0x7e, 0x81, 0x81, 0x7e, 0x7e, 0x7e, 0x7c, 0x7a, 0x79,
+			0x78, 0x76, 0x78, 0x77, 0x76, 0x77, 0x78, 0x78, 0x77, 0x76, 0x75,
+			0x73, 0x72, 0x71, 0x6f, 0x6f, 0x70, 0x6f, 0x71, 0x75, 0x76, 0x72,
+			0x6f, 0x71, 0x72, 0x70, 0x6e, 0x6f, 0x7a, 0x8d, 0xa1, 0xae, 0xa9,
+			0x9c, 0x93, 0x8a, 0x7c, 0x71, 0x75, 0x81, 0x8c, 0x92, 0x96, 0x99,
+			0x98, 0x90, 0x84, 0x7b, 0x76, 0x76, 0x78, 0x7d, 0x84, 0x89, 0x8b,
+			0x8a, 0x87, 0x83, 0x7f, 0x7b, 0x76, 0x75, 0x76, 0x77, 0x79, 0x7e,
+			0x83, 0x86, 0x85, 0x85, 0x84, 0x81, 0x7d, 0x7a, 0x7b, 0x7d, 0x7f,
+			0x83, 0x85, 0x88, 0x8b, 0x87, 0x83, 0x84, 0x84, 0x81, 0x7e, 0x7c,
+			0x7c, 0x7e, 0x7e, 0x7b, 0x7c, 0x7c, 0x79, 0x76, 0x75, 0x76, 0x78,
+			0x77, 0x74, 0x76, 0x78, 0x75, 0x72, 0x72, 0x74, 0x70, 0x6e, 0x71,
+			0x72, 0x74, 0x74, 0x72, 0x71, 0x74, 0x75, 0x72, 0x75, 0x78, 0x74,
+			0x78, 0x7f, 0x81, 0x85, 0x8b, 0x98, 0xa6, 0xa8, 0x9b, 0x93, 0x91,
+			0x8b, 0x82, 0x7d, 0x80, 0x88, 0x8c, 0x8e, 0x8e, 0x8f, 0x90, 0x8e,
+			0x89, 0x83, 0x81, 0x7f, 0x7c, 0x7b, 0x7c, 0x7d, 0x7e, 0x81, 0x82,
+			0x80, 0x7f, 0x7e, 0x7e, 0x7b, 0x7b, 0x7b, 0x7b, 0x7d, 0x7e, 0x80,
+			0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x7d, 0x7e, 0x81, 0x85, 0x8d, 0x87,
+			0x83, 0x88, 0x8b, 0x82, 0x78, 0x7d, 0x7e, 0x80, 0x7f, 0x7a, 0x7b,
+			0x7e, 0x81, 0x79, 0x77, 0x79, 0x77, 0x75, 0x75, 0x77, 0x77, 0x7a,
+			0x78, 0x73, 0x73, 0x74, 0x73, 0x70, 0x70, 0x70, 0x72, 0x75, 0x75,
+			0x73, 0x72, 0x75, 0x73, 0x6e, 0x6d, 0x70, 0x74, 0x75, 0x75, 0x76,
+			0x77, 0x7e, 0x8a, 0x9c, 0xa4, 0x9b, 0x99, 0xa0, 0xa5, 0x9b, 0x8e,
+			0x8b, 0x8d, 0x90, 0x8b, 0x84, 0x81, 0x86, 0x8e, 0x8a, 0x83, 0x82,
+			0x87, 0x8b, 0x88, 0x85, 0x83, 0x86, 0x87, 0x84, 0x80, 0x7c, 0x7f,
+			0x7f, 0x7b, 0x78, 0x78, 0x7b, 0x7c, 0x7d, 0x7e, 0x7e, 0x80, 0x82,
+			0x83, 0x82, 0x81, 0x82, 0x82, 0x83, 0x83, 0x82, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x7f, 0x81, 0x82, 0x82, 0x82, 0x80, 0x7f, 0x7d, 0x7c,
+			0x7b, 0x79, 0x78, 0x78, 0x78, 0x78, 0x77, 0x78, 0x79, 0x78, 0x79,
+			0x7b, 0x7c, 0x7b, 0x7b, 0x7d, 0x7d, 0x7c, 0x7c, 0x7c, 0x7b, 0x7b,
+			0x7c, 0x7c, 0x7b, 0x7c, 0x7c, 0x7c, 0x7a, 0x7a, 0x7b, 0x7d, 0x7d,
+			0x7b, 0x7c, 0x7d, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x81, 0x82, 0x83,
+			0x82, 0x82, 0x82, 0x83, 0x84, 0x86, 0x88, 0x89, 0x89, 0x89, 0x89,
+			0x89, 0x88, 0x87, 0x86, 0x85, 0x85, 0x84, 0x83, 0x82, 0x80, 0x80,
+			0x7f, 0x7e, 0x7c, 0x7c, 0x7d, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d,
+			0x7d, 0x7e, 0x7e, 0x7e, 0x7e, 0x80, 0x80, 0x7e, 0x7e, 0x80, 0x80,
+			0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d,
+			0x7e, 0x7d, 0x7c, 0x7c, 0x7c, 0x7b, 0x7b, 0x7c, 0x7c, 0x7b, 0x7a,
+			0x7a, 0x7b, 0x7c, 0x7b, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7b, 0x7b,
+			0x7c, 0x7c, 0x7c, 0x7d, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7c, 0x7d, 0x7d, 0x7d, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x81, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x89, 0x88,
+			0x88, 0x88, 0x88, 0x88, 0x87, 0x88, 0x88, 0x87, 0x86, 0x85, 0x85,
+			0x84, 0x84, 0x84, 0x84, 0x84, 0x82, 0x82, 0x82, 0x82, 0x80, 0x81,
+			0x80, 0x7e, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7f, 0x7d,
+			0x7c, 0x7d, 0x7b, 0x7c, 0x7c, 0x7a, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b,
+			0x7c, 0x7b, 0x7b, 0x7d, 0x7c, 0x79, 0x7d, 0x7d, 0x7a, 0x7a, 0x7a,
+			0x7c, 0x7c, 0x7c, 0x7c, 0x7e, 0x81, 0x7e, 0x7d, 0x7d, 0x7f, 0x80,
+			0x7e, 0x7e, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x81, 0x81,
+			0x81, 0x82, 0x81, 0x82, 0x81, 0x80, 0x82, 0x82, 0x82, 0x81, 0x81,
+			0x82, 0x82, 0x81, 0x81, 0x81, 0x83, 0x82, 0x80, 0x82, 0x82, 0x82,
+			0x81, 0x81, 0x81, 0x82, 0x83, 0x82, 0x81, 0x82, 0x80, 0x82, 0x83,
+			0x80, 0x80, 0x82, 0x81, 0x80, 0x81, 0x81, 0x82, 0x81, 0x80, 0x82,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7d, 0x80, 0x7e, 0x7b,
+			0x7d, 0x7f, 0x7e, 0x7e, 0x7c, 0x7d, 0x80, 0x7e, 0x7e, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7d, 0x7e, 0x7e, 0x7f,
+			0x7f, 0x7e, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x81, 0x81,
+			0x82, 0x7f, 0x7f, 0x81, 0x81, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x81, 0x80, 0x80, 0x81, 0x81,
+			0x7f, 0x7e, 0x81, 0x80, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x7e, 0x7e,
+			0x80, 0x82, 0x80, 0x7f, 0x7f, 0x81, 0x80, 0x7f, 0x81, 0x7e, 0x7e,
+			0x81, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x82, 0x7f, 0x7e, 0x82, 0x7f,
+			0x7e, 0x7f, 0x7e, 0x81, 0x80, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e,
+			0x80, 0x82, 0x7f, 0x7e, 0x80, 0x7f, 0x81, 0x7f, 0x7d, 0x80, 0x83,
+			0x83, 0x7c, 0x81, 0x82, 0x7e, 0x82, 0x7d, 0x7f, 0x80, 0x80, 0x80,
+			0x7f, 0x82, 0x7f, 0x81, 0x7e, 0x80, 0x81, 0x7c, 0x80, 0x81, 0x7f,
+			0x80, 0x81, 0x7f, 0x7f, 0x80, 0x80, 0x7e, 0x7f, 0x7f, 0x7f, 0x81,
+			0x81, 0x7e, 0x7c, 0x81, 0x7f, 0x7f, 0x7f, 0x7e, 0x80, 0x81, 0x7f,
+			0x7d, 0x80, 0x80, 0x7f, 0x81, 0x80, 0x80, 0x7f, 0x7e, 0x80, 0x81,
+			0x7e, 0x7f, 0x80, 0x7e, 0x7f, 0x7f, 0x7d, 0x7e, 0x7e, 0x7d, 0x80,
+			0x80, 0x81, 0x82, 0x80, 0x7f, 0x81, 0x81, 0x7e, 0x81, 0x81, 0x7e,
+			0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x81, 0x80,
+			0x7f, 0x81, 0x81, 0x7e, 0x7f, 0x81, 0x7f, 0x7f, 0x7e, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x81, 0x80, 0x81, 0x7f, 0x7e, 0x7f, 0x80, 0x7f,
+			0x7d, 0x7e, 0x80, 0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x81, 0x7f, 0x81,
+			0x81, 0x80, 0x80, 0x81, 0x80, 0x7e, 0x7f, 0x7f, 0x7e, 0x80, 0x80,
+			0x7d, 0x80, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x81,
+			0x7f, 0x7e, 0x7f, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x81, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7d, 0x7e, 0x81,
+			0x7f, 0x7e, 0x7f, 0x81, 0x80, 0x7f, 0x7f, 0x7f, 0x81, 0x82, 0x80,
+			0x80, 0x80, 0x81, 0x80, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7e,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x7f, 0x80, 0x81, 0x7f, 0x81,
+			0x81, 0x7f, 0x80, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x80,
+			0x81, 0x80, 0x7e, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7f, 0x81,
+			0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7e, 0x80, 0x7f, 0x81, 0x80, 0x7f, 0x81, 0x81,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x81, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x7e,
+			0x7e, 0x80, 0x81, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80,
+		},
+		{ // 6
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7e, 0x80,
+			0x7f, 0x80, 0x81, 0x7e, 0x80, 0x7f, 0x81, 0x7e, 0x80, 0x7f, 0x7f,
+			0x81, 0x7e, 0x7f, 0x7f, 0x81, 0x7e, 0x80, 0x7f, 0x81, 0x7e, 0x80,
+			0x80, 0x7e, 0x82, 0x7e, 0x81, 0x7f, 0x81, 0x7f, 0x81, 0x7e, 0x80,
+			0x7f, 0x7f, 0x80, 0x7e, 0x83, 0x7f, 0x83, 0x7c, 0x81, 0x7e, 0x81,
+			0x7e, 0x80, 0x80, 0x7e, 0x81, 0x7c, 0x84, 0x7b, 0x83, 0x7c, 0x82,
+			0x80, 0x80, 0x80, 0x7e, 0x81, 0x7d, 0x81, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x81, 0x7e, 0x81, 0x7d, 0x81, 0x7d, 0x81, 0x7d, 0x82, 0x7e,
+			0x80, 0x81, 0x7f, 0x80, 0x7f, 0x81, 0x7d, 0x81, 0x7d, 0x82, 0x7f,
+			0x81, 0x7e, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7e, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7e, 0x81, 0x7f, 0x80, 0x7f, 0x81, 0x81, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x81,
+			0x80, 0x7f, 0x82, 0x7e, 0x83, 0x7e, 0x80, 0x7e, 0x82, 0x80, 0x7f,
+			0x7e, 0x7f, 0x81, 0x7e, 0x81, 0x7d, 0x82, 0x7c, 0x82, 0x7d, 0x80,
+			0x83, 0x7c, 0x82, 0x7d, 0x84, 0x80, 0x7f, 0x81, 0x7e, 0x81, 0x7d,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7d, 0x80, 0x7e,
+			0x85, 0x7e, 0x81, 0x7f, 0x7d, 0x83, 0x7b, 0x83, 0x7d, 0x80, 0x7f,
+			0x7e, 0x81, 0x7e, 0x83, 0x7d, 0x82, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7e, 0x81, 0x7c, 0x83, 0x7e, 0x80, 0x81, 0x7f, 0x81, 0x7e, 0x82,
+			0x7c, 0x82, 0x7f, 0x7d, 0x83, 0x7d, 0x82, 0x7e, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7e, 0x81, 0x7f, 0x82, 0x7e, 0x80,
+			0x81, 0x7e, 0x82, 0x7e, 0x7f, 0x81, 0x7e, 0x7f, 0x7f, 0x80, 0x82,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x81, 0x7e, 0x81, 0x80, 0x80, 0x80, 0x7e,
+			0x7f, 0x81, 0x81, 0x7f, 0x80, 0x7f, 0x81, 0x7e, 0x81, 0x7f, 0x80,
+			0x81, 0x7e, 0x81, 0x7d, 0x81, 0x7e, 0x80, 0x81, 0x7d, 0x84, 0x7e,
+			0x80, 0x7f, 0x7e, 0x82, 0x7e, 0x81, 0x7f, 0x7e, 0x81, 0x81, 0x7c,
+			0x80, 0x81, 0x7f, 0x82, 0x7d, 0x81, 0x7f, 0x81, 0x7f, 0x7e, 0x81,
+			0x7f, 0x80, 0x7d, 0x81, 0x7f, 0x7f, 0x7f, 0x7e, 0x80, 0x80, 0x81,
+			0x80, 0x7f, 0x80, 0x81, 0x7d, 0x7f, 0x80, 0x7e, 0x81, 0x7e, 0x80,
+			0x80, 0x81, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x81, 0x7f, 0x81,
+			0x7e, 0x80, 0x7e, 0x7d, 0x82, 0x7d, 0x82, 0x7f, 0x7d, 0x83, 0x7f,
+			0x7d, 0x82, 0x7e, 0x81, 0x81, 0x7b, 0x82, 0x80, 0x7e, 0x81, 0x7c,
+			0x82, 0x82, 0x7c, 0x80, 0x7f, 0x81, 0x80, 0x7f, 0x7f, 0x7f, 0x81,
+			0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x82, 0x80, 0x80,
+			0x7e, 0x80, 0x80, 0x7d, 0x82, 0x7e, 0x81, 0x82, 0x7c, 0x81, 0x7e,
+			0x80, 0x81, 0x7d, 0x83, 0x80, 0x7f, 0x7f, 0x81, 0x7e, 0x81, 0x7f,
+			0x7f, 0x82, 0x7d, 0x80, 0x7f, 0x7d, 0x82, 0x7e, 0x7f, 0x81, 0x7e,
+			0x83, 0x7c, 0x80, 0x80, 0x81, 0x80, 0x7e, 0x80, 0x7e, 0x82, 0x7d,
+			0x81, 0x7f, 0x81, 0x80, 0x7b, 0x81, 0x7e, 0x83, 0x7d, 0x7e, 0x80,
+			0x7f, 0x81, 0x7c, 0x7d, 0x82, 0x7f, 0x80, 0x7f, 0x80, 0x81, 0x80,
+			0x82, 0x7c, 0x82, 0x80, 0x7c, 0x82, 0x7d, 0x7f, 0x7e, 0x82, 0x80,
+			0x7b, 0x84, 0x82, 0x82, 0x84, 0x7d, 0x7e, 0x85, 0x7f, 0x7f, 0x7c,
+			0x80, 0x82, 0x7a, 0x84, 0x7a, 0x82, 0x84, 0x7c, 0x82, 0x7c, 0x85,
+			0x7f, 0x83, 0x80, 0x7f, 0x85, 0x81, 0x82, 0x7c, 0x82, 0x80, 0x80,
+			0x80, 0x7c, 0x84, 0x7f, 0x80, 0x81, 0x7d, 0x81, 0x80, 0x7e, 0x7f,
+			0x7e, 0x7e, 0x7c, 0x7b, 0x7a, 0x76, 0x79, 0x75, 0x74, 0x75, 0x6f,
+			0x70, 0x6e, 0x6a, 0x68, 0x68, 0x70, 0x79, 0x81, 0x82, 0x8d, 0x95,
+			0x99, 0xa0, 0x9e, 0x9d, 0xa1, 0xa0, 0x99, 0x92, 0x8a, 0x84, 0x80,
+			0x75, 0x6e, 0x6f, 0x71, 0x72, 0x74, 0x7a, 0x86, 0x92, 0x9c, 0xa1,
+			0xa9, 0xaf, 0xac, 0xa5, 0x9c, 0x96, 0x89, 0x7d, 0x70, 0x65, 0x62,
+			0x5b, 0x55, 0x52, 0x55, 0x58, 0x5a, 0x5b, 0x5c, 0x60, 0x5d, 0x59,
+			0x54, 0x52, 0x4d, 0x4d, 0x51, 0x56, 0x7c, 0x92, 0x8c, 0x98, 0xae,
+			0xb5, 0xb3, 0xb2, 0xaa, 0xaa, 0xab, 0x97, 0x85, 0x81, 0x77, 0x6e,
+			0x6b, 0x66, 0x69, 0x75, 0x7d, 0x80, 0x8d, 0x99, 0x9d, 0xa2, 0xa3,
+			0x9f, 0x9b, 0x94, 0x89, 0x82, 0x7a, 0x71, 0x6e, 0x6f, 0x70, 0x76,
+			0x7e, 0x84, 0x8b, 0x8e, 0x8d, 0x8b, 0x87, 0x7f, 0x79, 0x71, 0x68,
+			0x62, 0x5e, 0x5b, 0x57, 0x57, 0x57, 0x55, 0x53, 0x4f, 0x57, 0x89,
+			0xa0, 0x8a, 0x93, 0xb1, 0xb7, 0xaf, 0xa3, 0x95, 0x9e, 0x9f, 0x81,
+			0x6e, 0x75, 0x75, 0x70, 0x6d, 0x66, 0x74, 0x89, 0x87, 0x82, 0x96,
+			0xa4, 0x9f, 0x9b, 0x96, 0x94, 0x94, 0x88, 0x75, 0x71, 0x74, 0x6e,
+			0x6b, 0x6c, 0x71, 0x7b, 0x82, 0x84, 0x8b, 0x91, 0x91, 0x8f, 0x86,
+			0x80, 0x7b, 0x73, 0x71, 0x6f, 0x6b, 0x73, 0x77, 0x71, 0x75, 0x71,
+			0x6e, 0x6d, 0x61, 0x55, 0x54, 0x4b, 0x41, 0x76, 0x9c, 0x85, 0x8f,
+			0xb2, 0xbc, 0xb9, 0xb2, 0x9f, 0xa0, 0xa4, 0x84, 0x68, 0x6b, 0x69,
+			0x5f, 0x60, 0x63, 0x71, 0x8c, 0x96, 0x8d, 0x9a, 0xad, 0xa5, 0x9a,
+			0x91, 0x8a, 0x84, 0x77, 0x64, 0x60, 0x6b, 0x6b, 0x66, 0x71, 0x80,
+			0x88, 0x92, 0x96, 0x97, 0x9d, 0x99, 0x8a, 0x7f, 0x7d, 0x7b, 0x73,
+			0x71, 0x72, 0x73, 0x78, 0x7d, 0x7b, 0x7e, 0x87, 0x86, 0x80, 0x7c,
+			0x75, 0x71, 0x70, 0x65, 0x5e, 0x61, 0x62, 0x5c, 0x5a, 0x58, 0x5e,
+			0x92, 0xab, 0x91, 0x92, 0xb2, 0xb6, 0xa1, 0x98, 0x87, 0x86, 0x8d,
+			0x6f, 0x5c, 0x74, 0x80, 0x76, 0x7a, 0x88, 0x93, 0x9d, 0x97, 0x8b,
+			0x96, 0x9a, 0x87, 0x79, 0x7b, 0x7c, 0x76, 0x6d, 0x6b, 0x78, 0x81,
+			0x7a, 0x78, 0x80, 0x85, 0x86, 0x81, 0x7e, 0x84, 0x8b, 0x86, 0x83,
+			0x88, 0x88, 0x84, 0x82, 0x81, 0x80, 0x82, 0x81, 0x7b, 0x7c, 0x7f,
+			0x7c, 0x79, 0x78, 0x78, 0x78, 0x77, 0x75, 0x75, 0x78, 0x75, 0x6f,
+			0x71, 0x71, 0x6b, 0x6b, 0x6b, 0x68, 0x67, 0x67, 0x6b, 0x92, 0xb0,
+			0x9d, 0x94, 0xae, 0xb2, 0x97, 0x8b, 0x7d, 0x78, 0x83, 0x73, 0x61,
+			0x73, 0x85, 0x81, 0x7e, 0x89, 0x93, 0x9c, 0x98, 0x86, 0x86, 0x8f,
+			0x84, 0x72, 0x75, 0x7d, 0x78, 0x76, 0x76, 0x7d, 0x86, 0x83, 0x7b,
+			0x81, 0x8a, 0x85, 0x7e, 0x7d, 0x7d, 0x7d, 0x7c, 0x7a, 0x7f, 0x83,
+			0x81, 0x81, 0x88, 0x8a, 0x85, 0x83, 0x84, 0x85, 0x83, 0x7f, 0x7d,
+			0x7d, 0x7c, 0x7a, 0x7a, 0x7a, 0x79, 0x78, 0x79, 0x79, 0x78, 0x78,
+			0x78, 0x76, 0x75, 0x75, 0x76, 0x75, 0x76, 0x76, 0x70, 0x71, 0x75,
+			0x6e, 0x6b, 0x6c, 0x6d, 0x64, 0x77, 0xab, 0xa7, 0x8b, 0x97, 0xba,
+			0xa7, 0x84, 0x89, 0x90, 0x88, 0x7a, 0x7c, 0x78, 0x7f, 0x88, 0x81,
+			0x7e, 0x8c, 0x95, 0x8b, 0x83, 0x86, 0x8f, 0x88, 0x7e, 0x7c, 0x83,
+			0x82, 0x78, 0x75, 0x7a, 0x82, 0x7c, 0x74, 0x77, 0x7f, 0x7f, 0x7b,
+			0x7f, 0x84, 0x84, 0x7f, 0x7d, 0x80, 0x81, 0x81, 0x81, 0x82, 0x84,
+			0x87, 0x86, 0x84, 0x83, 0x83, 0x81, 0x7d, 0x7e, 0x7f, 0x7e, 0x7c,
+			0x7b, 0x7a, 0x7b, 0x7b, 0x7a, 0x79, 0x79, 0x79, 0x78, 0x78, 0x78,
+			0x77, 0x78, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x78, 0x78, 0x77,
+			0x75, 0x77, 0x76, 0x73, 0x6f, 0x75, 0x81, 0x7d, 0x77, 0x87, 0x9b,
+			0x93, 0x88, 0x92, 0x9e, 0x93, 0x85, 0x8c, 0x92, 0x87, 0x7e, 0x82,
+			0x85, 0x81, 0x7e, 0x81, 0x83, 0x85, 0x87, 0x86, 0x85, 0x86, 0x89,
+			0x83, 0x7f, 0x81, 0x83, 0x7c, 0x78, 0x7b, 0x7c, 0x78, 0x76, 0x7a,
+			0x7d, 0x7e, 0x7e, 0x7f, 0x82, 0x83, 0x81, 0x7e, 0x7e, 0x7e, 0x7d,
+			0x7b, 0x7c, 0x7e, 0x7c, 0x7b, 0x7c, 0x7e, 0x7e, 0x7e, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7e, 0x7d, 0x7d, 0x7d, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d,
+			0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x7e, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x80,
+			0x7f, 0x80, 0x80, 0x81, 0x82, 0x82, 0x81, 0x7f, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7f, 0x80, 0x81, 0x82, 0x82, 0x7f, 0x83, 0x85, 0x82, 0x7c,
+			0x7a, 0x7d, 0x80, 0x7e, 0x7c, 0x7c, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x7e, 0x81, 0x81, 0x80, 0x7d, 0x7e,
+			0x81, 0x82, 0x7f, 0x7b, 0x7e, 0x80, 0x82, 0x7f, 0x7d, 0x7f, 0x82,
+			0x84, 0x81, 0x81, 0x7d, 0x82, 0x83, 0x7f, 0x81, 0x80, 0x84, 0x83,
+			0x82, 0x83, 0x81, 0x81, 0x80, 0x7e, 0x7d, 0x7e, 0x80, 0x81, 0x7e,
+			0x7b, 0x7d, 0x83, 0x80, 0x7f, 0x7d, 0x81, 0x83, 0x80, 0x80, 0x7e,
+			0x7d, 0x82, 0x81, 0x7d, 0x7c, 0x80, 0x83, 0x7f, 0x7f, 0x7a, 0x81,
+			0x81, 0x82, 0x7f, 0x7c, 0x80, 0x81, 0x85, 0x7b, 0x7d, 0x81, 0x82,
+			0x80, 0x7c, 0x7e, 0x80, 0x86, 0x80, 0x7d, 0x7c, 0x82, 0x88, 0x7c,
+			0x7c, 0x7d, 0x82, 0x83, 0x7e, 0x7c, 0x7e, 0x80, 0x83, 0x80, 0x7a,
+			0x7f, 0x81, 0x85, 0x7f, 0x7b, 0x7e, 0x7f, 0x82, 0x81, 0x7b, 0x7e,
+			0x82, 0x81, 0x81, 0x79, 0x81, 0x81, 0x83, 0x7f, 0x7d, 0x80, 0x80,
+			0x84, 0x78, 0x7f, 0x7e, 0x83, 0x7e, 0x7c, 0x7f, 0x81, 0x85, 0x7c,
+			0x7c, 0x7e, 0x85, 0x81, 0x7f, 0x7a, 0x85, 0x82, 0x80, 0x7f, 0x77,
+			0x81, 0x81, 0x81, 0x7d, 0x7c, 0x81, 0x83, 0x81, 0x7a, 0x81, 0x82,
+			0x83, 0x7d, 0x7c, 0x82, 0x80, 0x81, 0x7a, 0x80, 0x80, 0x80, 0x7e,
+			0x7c, 0x82, 0x7f, 0x82, 0x7c, 0x7f, 0x81, 0x81, 0x80, 0x7b, 0x81,
+			0x81, 0x81, 0x7d, 0x80, 0x7e, 0x82, 0x80, 0x7c, 0x80, 0x7d, 0x84,
+			0x7f, 0x7f, 0x7f, 0x80, 0x81, 0x7f, 0x80, 0x7d, 0x82, 0x7e, 0x82,
+			0x7d, 0x7e, 0x82, 0x7f, 0x80, 0x7d, 0x7f, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x83, 0x80, 0x80, 0x7e, 0x7f, 0x82, 0x7e, 0x80, 0x7f, 0x80,
+			0x81, 0x7e, 0x7e, 0x7f, 0x7f, 0x81, 0x81, 0x80, 0x80, 0x7e, 0x83,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x84, 0x7b, 0x7f, 0x80, 0x7e, 0x83, 0x7e,
+			0x80, 0x7e, 0x83, 0x81, 0x7e, 0x7f, 0x7e, 0x84, 0x7e, 0x7d, 0x80,
+			0x7f, 0x81, 0x7e, 0x7e, 0x7f, 0x82, 0x81, 0x7f, 0x7f, 0x7f, 0x82,
+			0x7e, 0x80, 0x7e, 0x80, 0x81, 0x7e, 0x7f, 0x80, 0x7e, 0x80, 0x81,
+			0x7d, 0x81, 0x7e, 0x83, 0x7f, 0x7f, 0x81, 0x7c, 0x82, 0x7e, 0x81,
+			0x7d, 0x81, 0x81, 0x80, 0x7f, 0x7d, 0x82, 0x7e, 0x81, 0x7e, 0x7f,
+			0x82, 0x7e, 0x81, 0x7d, 0x80, 0x81, 0x7e, 0x82, 0x7f, 0x7f, 0x7f,
+			0x81, 0x80, 0x7e, 0x81, 0x7f, 0x7e, 0x80, 0x82, 0x7e, 0x7d, 0x80,
+			0x82, 0x7d, 0x7c, 0x82, 0x7f, 0x81, 0x7e, 0x80, 0x81, 0x7c, 0x80,
+			0x7f, 0x80, 0x80, 0x7d, 0x83, 0x7f, 0x80, 0x7f, 0x7d, 0x82, 0x7d,
+			0x81, 0x80, 0x7f, 0x7f, 0x80, 0x81, 0x7e, 0x80, 0x80, 0x7e, 0x80,
+			0x81, 0x80, 0x7d, 0x7f, 0x82, 0x7e, 0x7d, 0x81, 0x80, 0x81, 0x7e,
+			0x80, 0x81, 0x7e, 0x81, 0x7f, 0x7f, 0x82, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x7e, 0x7e, 0x82, 0x7e, 0x80, 0x7e, 0x80, 0x81, 0x7f,
+			0x80, 0x7d, 0x80, 0x81, 0x7f, 0x7f, 0x7f, 0x81, 0x81, 0x7e, 0x80,
+			0x7d, 0x82, 0x7f, 0x7f, 0x7f, 0x7e, 0x81, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x81, 0x7f, 0x7e, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x7d, 0x80, 0x7f, 0x80, 0x7f, 0x81, 0x7f, 0x7f, 0x7e, 0x81,
+			0x7d, 0x82, 0x7e, 0x7e, 0x81, 0x7e, 0x83, 0x7c, 0x81, 0x7f, 0x80,
+			0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7e, 0x80, 0x80, 0x80, 0x80, 0x7e, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x81, 0x7f, 0x7f, 0x81, 0x7e, 0x82,
+			0x7d, 0x80, 0x80, 0x7f, 0x81, 0x7e, 0x80, 0x7f, 0x80, 0x80, 0x7e,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x81, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x7e, 0x81, 0x7e,
+			0x80, 0x7f, 0x7f, 0x81, 0x7e, 0x81, 0x7f, 0x81, 0x7f, 0x80, 0x7f,
+			0x81, 0x7f, 0x7f, 0x80, 0x7e, 0x81, 0x7f, 0x80, 0x7e, 0x80, 0x7f,
+			0x7f, 0x7f, 0x80, 0x81, 0x7e, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x81,
+			0x7f, 0x80, 0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x81, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7e, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x7e,
+			0x80, 0x81, 0x80, 0x81, 0x81, 0x82, 0x81, 0x80, 0x80, 0x81, 0x81,
+			0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x7f,
+			0x7e, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7e, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x81, 0x81, 0x81, 0x82, 0x81, 0x81, 0x81,
+			0x80, 0x81, 0x81, 0x81, 0x80, 0x80, 0x81, 0x80, 0x80, 0x7f, 0x7f,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+		},
+		{ // 7
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7e, 0x80,
+			0x7f, 0x80, 0x81, 0x7e, 0x80, 0x7f, 0x81, 0x7e, 0x80, 0x7f, 0x7f,
+			0x81, 0x7e, 0x7f, 0x7f, 0x81, 0x7e, 0x80, 0x7f, 0x81, 0x7e, 0x80,
+			0x80, 0x7e, 0x82, 0x7e, 0x81, 0x7f, 0x81, 0x7f, 0x81, 0x7e, 0x80,
+			0x7f, 0x7f, 0x80, 0x7e, 0x83, 0x7f, 0x83, 0x7c, 0x81, 0x7e, 0x81,
+			0x7e, 0x80, 0x80, 0x7e, 0x81, 0x7c, 0x84, 0x7b, 0x83, 0x7c, 0x82,
+			0x80, 0x80, 0x80, 0x7e, 0x81, 0x7d, 0x81, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x81, 0x7e, 0x81, 0x7d, 0x81, 0x7d, 0x81, 0x7d, 0x82, 0x7e,
+			0x80, 0x81, 0x7f, 0x80, 0x7f, 0x81, 0x7d, 0x81, 0x7d, 0x82, 0x7f,
+			0x81, 0x7e, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7e, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7e, 0x81, 0x7f, 0x80, 0x7f, 0x81, 0x81, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x81,
+			0x80, 0x7f, 0x82, 0x7e, 0x83, 0x7e, 0x80, 0x7e, 0x82, 0x80, 0x7f,
+			0x7e, 0x7f, 0x81, 0x7e, 0x81, 0x7d, 0x82, 0x7c, 0x82, 0x7d, 0x80,
+			0x83, 0x7c, 0x82, 0x7d, 0x84, 0x80, 0x7f, 0x81, 0x7e, 0x81, 0x7d,
+			0x7f, 0x80, 0x7f, 0x80, 0x81, 0x7f, 0x80, 0x7f, 0x7d, 0x80, 0x7e,
+			0x85, 0x7d, 0x81, 0x7f, 0x7e, 0x83, 0x7b, 0x83, 0x7d, 0x81, 0x7e,
+			0x7e, 0x80, 0x7e, 0x83, 0x7d, 0x83, 0x7e, 0x80, 0x7f, 0x7f, 0x81,
+			0x7d, 0x82, 0x7b, 0x83, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x81,
+			0x7c, 0x82, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7e, 0x80,
+			0x80, 0x81, 0x7e, 0x7f, 0x81, 0x80, 0x7e, 0x81, 0x80, 0x7f, 0x81,
+			0x7c, 0x81, 0x7f, 0x81, 0x81, 0x7f, 0x80, 0x7e, 0x81, 0x7d, 0x7e,
+			0x81, 0x7f, 0x81, 0x81, 0x7c, 0x81, 0x7f, 0x7e, 0x82, 0x7e, 0x81,
+			0x81, 0x7e, 0x81, 0x7e, 0x81, 0x80, 0x7e, 0x7f, 0x7f, 0x7f, 0x7d,
+			0x82, 0x7f, 0x80, 0x81, 0x80, 0x7f, 0x7e, 0x7f, 0x80, 0x7f, 0x80,
+			0x81, 0x7f, 0x7f, 0x80, 0x7e, 0x7e, 0x81, 0x7e, 0x81, 0x81, 0x7f,
+			0x7f, 0x7d, 0x82, 0x7e, 0x7f, 0x81, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7e, 0x80, 0x81, 0x7d, 0x80, 0x80, 0x7e, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x82, 0x7e, 0x7f, 0x81, 0x7d, 0x82, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7e, 0x7f,
+			0x80, 0x7f, 0x80, 0x82, 0x7f, 0x7f, 0x81, 0x7f, 0x7f, 0x7e, 0x80,
+			0x7f, 0x7f, 0x81, 0x7e, 0x81, 0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x80,
+			0x81, 0x7d, 0x7f, 0x82, 0x81, 0x80, 0x7d, 0x7f, 0x82, 0x7f, 0x7f,
+			0x80, 0x7e, 0x82, 0x7e, 0x7e, 0x80, 0x80, 0x7f, 0x81, 0x7e, 0x7d,
+			0x82, 0x7b, 0x83, 0x7e, 0x7f, 0x83, 0x7f, 0x82, 0x7d, 0x80, 0x80,
+			0x7f, 0x7f, 0x7d, 0x82, 0x7e, 0x80, 0x81, 0x7e, 0x81, 0x7e, 0x7f,
+			0x81, 0x7e, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x80, 0x81,
+			0x81, 0x7e, 0x7e, 0x81, 0x7e, 0x7f, 0x81, 0x7e, 0x80, 0x81, 0x7e,
+			0x7f, 0x80, 0x81, 0x7c, 0x82, 0x7e, 0x7f, 0x7f, 0x7e, 0x80, 0x7f,
+			0x84, 0x7e, 0x82, 0x80, 0x7d, 0x83, 0x7e, 0x7e, 0x7f, 0x80, 0x81,
+			0x7d, 0x83, 0x81, 0x7e, 0x81, 0x7d, 0x7e, 0x82, 0x7d, 0x7d, 0x80,
+			0x7e, 0x7e, 0x82, 0x7f, 0x7e, 0x80, 0x80, 0x80, 0x7f, 0x7d, 0x80,
+			0x80, 0x81, 0x7f, 0x7e, 0x83, 0x81, 0x80, 0x81, 0x7f, 0x81, 0x7f,
+			0x7f, 0x7f, 0x7d, 0x7f, 0x7e, 0x7c, 0x7c, 0x7e, 0x7e, 0x81, 0x7f,
+			0x80, 0x81, 0x80, 0x7f, 0x83, 0x82, 0x7f, 0x81, 0x80, 0x80, 0x7f,
+			0x7f, 0x82, 0x82, 0x84, 0x85, 0x85, 0x86, 0x85, 0x86, 0x85, 0x85,
+			0x85, 0x82, 0x83, 0x82, 0x7f, 0x7e, 0x80, 0x7f, 0x7e, 0x7e, 0x7b,
+			0x79, 0x7b, 0x79, 0x76, 0x72, 0x6f, 0x6c, 0x69, 0x67, 0x60, 0x5e,
+			0x5f, 0x5c, 0x58, 0x57, 0x56, 0x57, 0x7a, 0xa0, 0xa2, 0xa0, 0xac,
+			0xb6, 0xb7, 0xb1, 0xa0, 0x93, 0x97, 0x95, 0x82, 0x72, 0x68, 0x64,
+			0x69, 0x6e, 0x68, 0x6b, 0x7c, 0x89, 0x90, 0x96, 0x93, 0x95, 0xa1,
+			0x9f, 0x91, 0x89, 0x84, 0x80, 0x7b, 0x73, 0x71, 0x76, 0x7a, 0x7a,
+			0x7c, 0x81, 0x83, 0x83, 0x83, 0x83, 0x84, 0x84, 0x7e, 0x77, 0x74,
+			0x6f, 0x6c, 0x66, 0x60, 0x59, 0x57, 0x53, 0x4b, 0x4c, 0x4a, 0x4e,
+			0x54, 0x73, 0xa7, 0xb1, 0xaa, 0xb7, 0xc1, 0xbc, 0xb7, 0x9f, 0x83,
+			0x7b, 0x80, 0x6c, 0x56, 0x58, 0x60, 0x70, 0x83, 0x87, 0x88, 0xa0,
+			0xb3, 0xad, 0xa3, 0x98, 0x88, 0x83, 0x7c, 0x68, 0x5c, 0x60, 0x68,
+			0x6e, 0x75, 0x79, 0x83, 0x98, 0xa3, 0x9f, 0x96, 0x91, 0x8b, 0x85,
+			0x7c, 0x74, 0x76, 0x7c, 0x7d, 0x7e, 0x81, 0x7d, 0x7a, 0x7b, 0x78,
+			0x74, 0x70, 0x6c, 0x67, 0x63, 0x5f, 0x59, 0x55, 0x51, 0x58, 0x5e,
+			0x70, 0xa2, 0xbd, 0xb4, 0xaa, 0xb3, 0xb1, 0xa3, 0x8f, 0x6e, 0x63,
+			0x6c, 0x69, 0x5f, 0x66, 0x75, 0x8b, 0xa2, 0xa5, 0x9c, 0xa1, 0xa7,
+			0x9d, 0x8a, 0x78, 0x6b, 0x6d, 0x70, 0x6c, 0x6a, 0x74, 0x82, 0x8a,
+			0x8b, 0x85, 0x85, 0x8c, 0x8f, 0x87, 0x80, 0x81, 0x84, 0x85, 0x83,
+			0x82, 0x83, 0x85, 0x82, 0x7e, 0x7b, 0x79, 0x78, 0x78, 0x77, 0x76,
+			0x74, 0x71, 0x6c, 0x67, 0x61, 0x5b, 0x59, 0x56, 0x54, 0x5b, 0x6a,
+			0x7f, 0x9c, 0xb8, 0xbe, 0xb3, 0xa4, 0x9c, 0x8c, 0x78, 0x67, 0x5b,
+			0x5c, 0x6c, 0x7f, 0x88, 0x8f, 0x9b, 0xa8, 0xab, 0xa3, 0x93, 0x83,
+			0x78, 0x73, 0x6c, 0x64, 0x66, 0x72, 0x84, 0x8f, 0x93, 0x91, 0x90,
+			0x91, 0x8c, 0x81, 0x74, 0x70, 0x73, 0x78, 0x79, 0x7c, 0x85, 0x8d,
+			0x8f, 0x8d, 0x8c, 0x8a, 0x86, 0x80, 0x7a, 0x77, 0x76, 0x76, 0x76,
+			0x77, 0x77, 0x76, 0x73, 0x70, 0x6b, 0x65, 0x5e, 0x5a, 0x59, 0x57,
+			0x5a, 0x66, 0x74, 0x85, 0xa7, 0xc1, 0xbc, 0xa8, 0x99, 0x8e, 0x7f,
+			0x72, 0x64, 0x5c, 0x68, 0x80, 0x90, 0x95, 0x99, 0x9f, 0xa1, 0x9c,
+			0x8c, 0x79, 0x6c, 0x6b, 0x70, 0x74, 0x7a, 0x83, 0x8e, 0x99, 0x9a,
+			0x91, 0x83, 0x7b, 0x75, 0x6e, 0x6a, 0x69, 0x6e, 0x7c, 0x8e, 0x98,
+			0x98, 0x96, 0x93, 0x8a, 0x81, 0x7b, 0x78, 0x7a, 0x7f, 0x81, 0x80,
+			0x7d, 0x7b, 0x78, 0x77, 0x75, 0x73, 0x71, 0x71, 0x70, 0x6d, 0x68,
+			0x65, 0x66, 0x68, 0x68, 0x66, 0x64, 0x6a, 0x76, 0x84, 0x9e, 0xba,
+			0xbf, 0xab, 0x95, 0x84, 0x75, 0x6c, 0x69, 0x6d, 0x76, 0x87, 0x97,
+			0x9e, 0x9f, 0x9c, 0x95, 0x8d, 0x84, 0x78, 0x6c, 0x6b, 0x72, 0x7a,
+			0x80, 0x87, 0x8d, 0x91, 0x92, 0x8d, 0x83, 0x78, 0x70, 0x6d, 0x6e,
+			0x73, 0x7b, 0x84, 0x8d, 0x94, 0x94, 0x8f, 0x88, 0x83, 0x81, 0x82,
+			0x84, 0x84, 0x85, 0x83, 0x7f, 0x7a, 0x76, 0x74, 0x75, 0x77, 0x77,
+			0x76, 0x74, 0x73, 0x72, 0x70, 0x6e, 0x6e, 0x6d, 0x69, 0x65, 0x65,
+			0x68, 0x69, 0x67, 0x6e, 0x82, 0x93, 0xa2, 0xac, 0xab, 0xa1, 0x95,
+			0x88, 0x7a, 0x71, 0x71, 0x78, 0x80, 0x85, 0x8a, 0x91, 0x96, 0x98,
+			0x95, 0x8d, 0x85, 0x7f, 0x7a, 0x75, 0x74, 0x78, 0x81, 0x88, 0x8b,
+			0x89, 0x88, 0x86, 0x7f, 0x74, 0x6d, 0x6c, 0x71, 0x7a, 0x81, 0x85,
+			0x86, 0x8c, 0x94, 0x94, 0x8d, 0x86, 0x82, 0x80, 0x80, 0x80, 0x7e,
+			0x7c, 0x7d, 0x7f, 0x7e, 0x7d, 0x7b, 0x7a, 0x78, 0x76, 0x73, 0x71,
+			0x6e, 0x6c, 0x6d, 0x6f, 0x6f, 0x6f, 0x71, 0x72, 0x71, 0x70, 0x6e,
+			0x69, 0x67, 0x70, 0x7f, 0x96, 0xac, 0xb2, 0xa8, 0x9c, 0x93, 0x89,
+			0x81, 0x79, 0x73, 0x75, 0x80, 0x8d, 0x95, 0x96, 0x94, 0x91, 0x8d,
+			0x87, 0x7e, 0x74, 0x6f, 0x73, 0x7a, 0x80, 0x85, 0x88, 0x87, 0x86,
+			0x84, 0x81, 0x7c, 0x77, 0x75, 0x74, 0x75, 0x79, 0x7e, 0x82, 0x88,
+			0x91, 0x96, 0x92, 0x8b, 0x85, 0x81, 0x7e, 0x7d, 0x7f, 0x81, 0x83,
+			0x85, 0x85, 0x80, 0x7c, 0x7b, 0x7b, 0x78, 0x76, 0x74, 0x72, 0x72,
+			0x74, 0x75, 0x74, 0x74, 0x75, 0x72, 0x6d, 0x6d, 0x6f, 0x6d, 0x6b,
+			0x70, 0x75, 0x76, 0x78, 0x78, 0x73, 0x6d, 0x6d, 0x70, 0x7b, 0x8d,
+			0x94, 0x91, 0x8e, 0x8d, 0x83, 0x7a, 0x79, 0x70, 0x6a, 0x7e, 0x9c,
+			0xa8, 0xa4, 0xa2, 0x9e, 0x94, 0x8f, 0x8c, 0x7f, 0x6f, 0x70, 0x7a,
+			0x7f, 0x83, 0x8a, 0x8e, 0x8c, 0x90, 0x94, 0x8f, 0x83, 0x7e, 0x7d,
+			0x77, 0x74, 0x77, 0x7a, 0x7a, 0x7e, 0x84, 0x84, 0x82, 0x83, 0x85,
+			0x83, 0x80, 0x7f, 0x7b, 0x77, 0x77, 0x7c, 0x82, 0x86, 0x8a, 0x8c,
+			0x8b, 0x89, 0x89, 0x89, 0x86, 0x81, 0x7c, 0x79, 0x79, 0x7a, 0x7b,
+			0x7b, 0x7c, 0x7b, 0x7a, 0x79, 0x78, 0x76, 0x75, 0x73, 0x72, 0x72,
+			0x72, 0x73, 0x74, 0x75, 0x75, 0x76, 0x78, 0x7a, 0x7b, 0x7b, 0x7d,
+			0x7d, 0x7c, 0x7b, 0x7d, 0x7d, 0x7c, 0x7b, 0x7b, 0x7c, 0x7b, 0x7a,
+			0x79, 0x77, 0x75, 0x7a, 0x86, 0x8d, 0x8e, 0x8e, 0x91, 0x91, 0x8e,
+			0x8d, 0x8b, 0x88, 0x85, 0x87, 0x89, 0x88, 0x87, 0x87, 0x86, 0x84,
+			0x84, 0x84, 0x82, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x7f, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x7d, 0x7c, 0x7c, 0x7c, 0x7d,
+			0x7c, 0x7c, 0x7d, 0x7e, 0x80, 0x82, 0x84, 0x83, 0x80, 0x7e, 0x7c,
+			0x7d, 0x7e, 0x81, 0x83, 0x85, 0x86, 0x86, 0x85, 0x83, 0x81, 0x7f,
+			0x7e, 0x7c, 0x7b, 0x7a, 0x7a, 0x7a, 0x7b, 0x7b, 0x7a, 0x7a, 0x7b,
+			0x7b, 0x7b, 0x7b, 0x7b, 0x7a, 0x7a, 0x7a, 0x7c, 0x7d, 0x7e, 0x7e,
+			0x7d, 0x7c, 0x7d, 0x7f, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
+			0x82, 0x82, 0x82, 0x82, 0x84, 0x85, 0x86, 0x86, 0x85, 0x84, 0x85,
+			0x85, 0x85, 0x83, 0x83, 0x83, 0x83, 0x84, 0x84, 0x83, 0x81, 0x80,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7d, 0x7c, 0x7d, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d,
+			0x7e, 0x7f, 0x80, 0x81, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7e,
+			0x7e, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7d,
+			0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7e, 0x7e, 0x7f, 0x7e, 0x7e,
+			0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7d, 0x7d, 0x7e, 0x7d, 0x7c, 0x7c, 0x7d, 0x7d, 0x7c,
+			0x7c, 0x7c, 0x7b, 0x7c, 0x7d, 0x7f, 0x80, 0x82, 0x84, 0x87, 0x89,
+			0x88, 0x87, 0x88, 0x8a, 0x8b, 0x8a, 0x88, 0x85, 0x85, 0x86, 0x85,
+			0x84, 0x82, 0x81, 0x81, 0x81, 0x80, 0x7e, 0x7d, 0x7e, 0x7f, 0x80,
+			0x82, 0x81, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7c, 0x7c, 0x7d,
+			0x7b, 0x7c, 0x7e, 0x80, 0x80, 0x7f, 0x80, 0x82, 0x83, 0x84, 0x83,
+			0x80, 0x7e, 0x80, 0x7f, 0x7b, 0x79, 0x78, 0x78, 0x79, 0x79, 0x79,
+			0x77, 0x74, 0x77, 0x78, 0x77, 0x77, 0x77, 0x76, 0x73, 0x73, 0x72,
+			0x6f, 0x6f, 0x6e, 0x6e, 0x6f, 0x70, 0x70, 0x72, 0x70, 0x6d, 0x6a,
+			0x69, 0x67, 0x6d, 0x7e, 0x80, 0x83, 0x9a, 0xab, 0xaa, 0xa3, 0xa2,
+			0x9a, 0x95, 0x94, 0x8c, 0x7e, 0x78, 0x7c, 0x7c, 0x7f, 0x84, 0x86,
+			0x86, 0x8c, 0x93, 0x8f, 0x89, 0x86, 0x84, 0x80, 0x7f, 0x7b, 0x72,
+			0x73, 0x77, 0x79, 0x79, 0x7b, 0x7c, 0x7e, 0x84, 0x85, 0x82, 0x80,
+			0x82, 0x82, 0x80, 0x7e, 0x7b, 0x7f, 0x85, 0x84, 0x81, 0x84, 0x8a,
+			0x8b, 0x8a, 0x88, 0x85, 0x87, 0x89, 0x86, 0x81, 0x7e, 0x7e, 0x7d,
+			0x7c, 0x78, 0x75, 0x76, 0x76, 0x70, 0x6c, 0x6e, 0x71, 0x74, 0x73,
+			0x71, 0x71, 0x74, 0x74, 0x73, 0x72, 0x72, 0x71, 0x6e, 0x6b, 0x69,
+			0x6b, 0x6b, 0x68, 0x67, 0x69, 0x6a, 0x67, 0x64, 0x62, 0x61, 0x72,
+			0x96, 0xab, 0xac, 0xaa, 0xaf, 0xaf, 0xaa, 0x9e, 0x8d, 0x85, 0x86,
+			0x88, 0x82, 0x7f, 0x82, 0x88, 0x90, 0x91, 0x8f, 0x8c, 0x8d, 0x8c,
+			0x87, 0x81, 0x7d, 0x7c, 0x7b, 0x7b, 0x76, 0x75, 0x77, 0x78, 0x77,
+			0x76, 0x76, 0x79, 0x7d, 0x7e, 0x80, 0x82, 0x85, 0x87, 0x86, 0x84,
+			0x81, 0x81, 0x84, 0x86, 0x82, 0x80, 0x83, 0x85, 0x85, 0x82, 0x82,
+			0x85, 0x88, 0x88, 0x84, 0x81, 0x81, 0x7e, 0x7a, 0x77, 0x73, 0x72,
+			0x74, 0x73, 0x6f, 0x6d, 0x6e, 0x70, 0x72, 0x73, 0x72, 0x74, 0x76,
+			0x75, 0x73, 0x72, 0x73, 0x72, 0x72, 0x70, 0x6f, 0x70, 0x71, 0x6f,
+			0x6e, 0x70, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x75, 0x78, 0x79, 0x80,
+			0x8a, 0x94, 0xa3, 0xab, 0xa9, 0xa4, 0xa3, 0x9f, 0x98, 0x93, 0x8e,
+			0x8d, 0x8e, 0x8d, 0x89, 0x89, 0x8a, 0x8a, 0x89, 0x87, 0x85, 0x82,
+			0x82, 0x80, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7b, 0x79, 0x78, 0x78,
+			0x78, 0x76, 0x76, 0x79, 0x7a, 0x7c, 0x7f, 0x82, 0x87, 0x8b, 0x8d,
+			0x8d, 0x8d, 0x8e, 0x8e, 0x89, 0x85, 0x83, 0x81, 0x81, 0x80, 0x7c,
+			0x7b, 0x7b, 0x7c, 0x7b, 0x7a, 0x78, 0x76, 0x75, 0x73, 0x70, 0x6e,
+			0x6e, 0x6d, 0x6c, 0x6d, 0x6f, 0x71, 0x72, 0x73, 0x75, 0x76, 0x75,
+			0x75, 0x78, 0x79, 0x77, 0x77, 0x77, 0x78, 0x78, 0x7a, 0x79, 0x77,
+			0x79, 0x7a, 0x7b, 0x7b, 0x7c, 0x7d, 0x7e, 0x7e, 0x7a, 0x78, 0x78,
+			0x7d, 0x85, 0x8c, 0x92, 0x95, 0x9b, 0xa4, 0xa4, 0xa0, 0x9f, 0xa0,
+			0x9e, 0x9b, 0x97, 0x92, 0x90, 0x8f, 0x8c, 0x87, 0x85, 0x84, 0x82,
+			0x81, 0x7f, 0x7e, 0x7f, 0x80, 0x7e, 0x7b, 0x7a, 0x79, 0x76, 0x75,
+			0x74, 0x73, 0x73, 0x75, 0x77, 0x77, 0x79, 0x7c, 0x81, 0x84, 0x85,
+			0x86, 0x89, 0x8b, 0x8c, 0x8b, 0x8a, 0x8b, 0x8b, 0x88, 0x83, 0x81,
+			0x80, 0x7d, 0x7a, 0x77, 0x75, 0x76, 0x75, 0x73, 0x72, 0x72, 0x72,
+			0x70, 0x6f, 0x6e, 0x6d, 0x6d, 0x6d, 0x6d, 0x6e, 0x70, 0x71, 0x72,
+			0x75, 0x76, 0x77, 0x79, 0x79, 0x7a, 0x7b, 0x7c, 0x7c, 0x7d, 0x7f,
+			0x7e, 0x7d, 0x7d, 0x7e, 0x7d, 0x7d, 0x7d, 0x7c, 0x7c, 0x7e, 0x7e,
+			0x7b, 0x7b, 0x7e, 0x7f, 0x7f, 0x80, 0x84, 0x89, 0x90, 0x94, 0x94,
+			0x99, 0x9f, 0xa1, 0x9f, 0x9f, 0xa0, 0xa1, 0xa1, 0x9d, 0x99, 0x98,
+			0x94, 0x90, 0x8c, 0x88, 0x84, 0x82, 0x7f, 0x7b, 0x7a, 0x7a, 0x79,
+			0x76, 0x75, 0x73, 0x71, 0x71, 0x71, 0x70, 0x71, 0x74, 0x76, 0x77,
+			0x79, 0x7c, 0x7f, 0x81, 0x83, 0x85, 0x87, 0x8a, 0x89, 0x89, 0x89,
+			0x8a, 0x88, 0x85, 0x82, 0x81, 0x7e, 0x7c, 0x79, 0x76, 0x74, 0x73,
+			0x70, 0x6e, 0x6d, 0x6c, 0x6c, 0x6b, 0x6b, 0x6b, 0x6c, 0x6e, 0x6e,
+			0x6f, 0x70, 0x73, 0x73, 0x74, 0x76, 0x78, 0x7a, 0x7b, 0x7c, 0x7d,
+			0x7f, 0x80, 0x7f, 0x80, 0x81, 0x81, 0x7f, 0x81, 0x81, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x7d, 0x7d, 0x7c, 0x7c, 0x7b, 0x7a, 0x7a, 0x79, 0x78,
+			0x79, 0x7c, 0x81, 0x85, 0x88, 0x8b, 0x92, 0x97, 0x98, 0x9a, 0x9d,
+			0xa0, 0xa1, 0xa0, 0x9f, 0x9e, 0x9d, 0x9b, 0x99, 0x94, 0x90, 0x8e,
+			0x8a, 0x86, 0x83, 0x80, 0x7e, 0x7c, 0x7b, 0x78, 0x76, 0x75, 0x73,
+			0x72, 0x70, 0x6f, 0x6f, 0x6f, 0x6f, 0x71, 0x72, 0x73, 0x76, 0x79,
+			0x7b, 0x7d, 0x7f, 0x83, 0x85, 0x86, 0x86, 0x87, 0x87, 0x86, 0x84,
+			0x83, 0x82, 0x81, 0x7f, 0x7d, 0x7b, 0x79, 0x78, 0x75, 0x74, 0x73,
+			0x73, 0x71, 0x71, 0x72, 0x71, 0x71, 0x72, 0x72, 0x73, 0x73, 0x74,
+			0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7c, 0x7c, 0x7d,
+			0x7e, 0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7e, 0x7d, 0x7d, 0x7e,
+			0x7e, 0x7c, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c, 0x7c, 0x81, 0x86, 0x85,
+			0x87, 0x8d, 0x91, 0x93, 0x94, 0x96, 0x9a, 0x9d, 0x9d, 0x9c, 0x9c,
+			0x9c, 0x9b, 0x99, 0x96, 0x92, 0x90, 0x8e, 0x8a, 0x86, 0x84, 0x82,
+			0x80, 0x7e, 0x7c, 0x7a, 0x79, 0x77, 0x75, 0x75, 0x75, 0x74, 0x73,
+			0x73, 0x73, 0x74, 0x75, 0x75, 0x77, 0x79, 0x7b, 0x7d, 0x7e, 0x81,
+			0x83, 0x83, 0x85, 0x86, 0x86, 0x86, 0x87, 0x86, 0x84, 0x83, 0x82,
+			0x81, 0x7f, 0x7d, 0x7c, 0x7a, 0x79, 0x77, 0x76, 0x76, 0x76, 0x75,
+			0x75, 0x75, 0x75, 0x75, 0x75, 0x76, 0x76, 0x77, 0x77, 0x78, 0x78,
+			0x7a, 0x7b, 0x7a, 0x7a, 0x7b, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x81, 0x83, 0x84, 0x84, 0x86, 0x88, 0x89,
+			0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8d, 0x8e, 0x8e, 0x8e, 0x8d, 0x8d,
+			0x8c, 0x8b, 0x8a, 0x89, 0x87, 0x86, 0x85, 0x84, 0x82, 0x81, 0x7f,
+			0x7e, 0x7e, 0x7d, 0x7c, 0x7b, 0x7a, 0x79, 0x79, 0x79, 0x78, 0x77,
+			0x78, 0x78, 0x78, 0x77, 0x78, 0x78, 0x79, 0x79, 0x79, 0x79, 0x7a,
+			0x7a, 0x7a, 0x7a, 0x7a, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b,
+			0x7a, 0x7a, 0x7a, 0x7a, 0x7a, 0x7a, 0x7a, 0x7b, 0x7b, 0x7b, 0x7b,
+			0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7e,
+			0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x81, 0x82, 0x82, 0x82,
+			0x82, 0x82, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x84, 0x84, 0x84,
+			0x84, 0x85, 0x85, 0x86, 0x86, 0x87, 0x87, 0x88, 0x88, 0x89, 0x89,
+			0x89, 0x88, 0x88, 0x87, 0x87, 0x87, 0x86, 0x85, 0x84, 0x83, 0x83,
+			0x82, 0x81, 0x80, 0x80, 0x7f, 0x7e, 0x7d, 0x7d, 0x7d, 0x7c, 0x7b,
+			0x7b, 0x7a, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
+			0x79, 0x7a, 0x7a, 0x7a, 0x7a, 0x7a, 0x7b, 0x7b, 0x7b, 0x7b, 0x7c,
+			0x7c, 0x7c, 0x7d, 0x7d, 0x7d, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x81, 0x81, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x82, 0x82, 0x81,
+			0x81, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x81, 0x82,
+			0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x81, 0x81, 0x82, 0x81,
+			0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+		},
+		{ // 8
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x81,
+			0x81, 0x89, 0x91, 0x84, 0x81, 0x88, 0x79, 0x6b, 0x71, 0x74, 0x77,
+			0x81, 0x84, 0x87, 0x87, 0x7b, 0x6f, 0x6e, 0x6a, 0x64, 0x65, 0x63,
+			0x62, 0x67, 0x73, 0x71, 0x69, 0x84, 0x88, 0x70, 0x76, 0x81, 0x71,
+			0x63, 0x6f, 0x6b, 0x69, 0x80, 0x91, 0x95, 0xa0, 0xa8, 0xa3, 0xa1,
+			0x9c, 0x90, 0x86, 0x82, 0x79, 0x78, 0x7f, 0x81, 0x89, 0x92, 0x9c,
+			0xa4, 0xa5, 0x9e, 0x96, 0x8e, 0x83, 0x79, 0x72, 0x6d, 0x6a, 0x6f,
+			0x6e, 0x71, 0x7b, 0x7a, 0x7e, 0x7e, 0x7b, 0x79, 0x6e, 0x67, 0x62,
+			0x66, 0x5e, 0x56, 0x51, 0x4f, 0x95, 0xa8, 0x7f, 0x9b, 0xc6, 0xa6,
+			0x81, 0x93, 0x89, 0x6f, 0x69, 0x68, 0x72, 0x71, 0x6e, 0x84, 0x92,
+			0x8c, 0x97, 0xa1, 0x9c, 0x91, 0x8a, 0x88, 0x80, 0x73, 0x6d, 0x74,
+			0x74, 0x72, 0x7c, 0x90, 0x9a, 0x95, 0x99, 0x9b, 0x8c, 0x7f, 0x7c,
+			0x74, 0x6f, 0x6c, 0x73, 0x7e, 0x7c, 0x7d, 0x83, 0x7f, 0x7b, 0x77,
+			0x73, 0x70, 0x66, 0x62, 0x5f, 0x5a, 0x51, 0x74, 0xa6, 0x91, 0x90,
+			0xba, 0xb9, 0x94, 0x8f, 0x99, 0x7f, 0x65, 0x65, 0x6e, 0x6c, 0x65,
+			0x74, 0x91, 0x90, 0x8e, 0xa0, 0xa5, 0x93, 0x8b, 0x8b, 0x7d, 0x72,
+			0x6f, 0x6f, 0x73, 0x76, 0x81, 0x90, 0x93, 0x95, 0x9d, 0x96, 0x8d,
+			0x8b, 0x82, 0x76, 0x73, 0x72, 0x6e, 0x71, 0x6f, 0x6c, 0x6e, 0x6a,
+			0x6a, 0x6c, 0x6a, 0x67, 0x65, 0x64, 0x5f, 0x5b, 0x58, 0x71, 0x9a,
+			0x8d, 0x90, 0xb7, 0xb1, 0x95, 0x95, 0x9a, 0x82, 0x6e, 0x6a, 0x6b,
+			0x68, 0x64, 0x72, 0x86, 0x8f, 0x91, 0x9e, 0xa7, 0x9b, 0x94, 0x92,
+			0x84, 0x77, 0x74, 0x6e, 0x6c, 0x74, 0x7c, 0x85, 0x8c, 0x93, 0x9a,
+			0x99, 0x93, 0x8d, 0x87, 0x80, 0x7b, 0x77, 0x71, 0x6f, 0x6f, 0x6a,
+			0x69, 0x66, 0x63, 0x67, 0x64, 0x61, 0x62, 0x5f, 0x60, 0x5e, 0x5a,
+			0x59, 0x74, 0x9f, 0x92, 0x98, 0xc1, 0xaf, 0x8e, 0x95, 0x90, 0x73,
+			0x6a, 0x69, 0x6b, 0x6c, 0x69, 0x77, 0x8b, 0x8e, 0x92, 0xa7, 0xa8,
+			0x97, 0x97, 0x95, 0x83, 0x7a, 0x77, 0x71, 0x70, 0x76, 0x7d, 0x87,
+			0x89, 0x8b, 0x94, 0x92, 0x8e, 0x8d, 0x88, 0x81, 0x80, 0x7c, 0x6f,
+			0x71, 0x73, 0x68, 0x65, 0x68, 0x63, 0x65, 0x65, 0x5f, 0x5f, 0x62,
+			0x60, 0x5e, 0x5b, 0x57, 0x56, 0x82, 0xa3, 0x86, 0xa0, 0xc7, 0xa6,
+			0x8d, 0x9d, 0x92, 0x72, 0x6c, 0x6f, 0x6d, 0x65, 0x6a, 0x7c, 0x85,
+			0x83, 0x95, 0xa6, 0x9f, 0x9c, 0x9c, 0x94, 0x84, 0x7b, 0x78, 0x6f,
+			0x6f, 0x76, 0x7c, 0x83, 0x89, 0x90, 0x98, 0x94, 0x91, 0x93, 0x87,
+			0x7e, 0x81, 0x7c, 0x71, 0x73, 0x73, 0x6b, 0x69, 0x68, 0x65, 0x61,
+			0x5d, 0x5e, 0x60, 0x5d, 0x5a, 0x5e, 0x5d, 0x57, 0x50, 0x68, 0x9d,
+			0x92, 0x8a, 0xbe, 0xbe, 0x95, 0x9c, 0xa4, 0x84, 0x71, 0x71, 0x71,
+			0x66, 0x5d, 0x6e, 0x80, 0x7e, 0x88, 0xa4, 0xa5, 0x99, 0x9c, 0xa3,
+			0x93, 0x81, 0x84, 0x7a, 0x6c, 0x6d, 0x70, 0x75, 0x79, 0x80, 0x8d,
+			0x96, 0x94, 0x98, 0x9a, 0x90, 0x86, 0x7e, 0x7c, 0x78, 0x71, 0x6d,
+			0x6f, 0x6c, 0x68, 0x67, 0x65, 0x63, 0x61, 0x63, 0x60, 0x5c, 0x5d,
+			0x61, 0x66, 0x61, 0x61, 0x69, 0x8a, 0xa0, 0x8d, 0xa3, 0xba, 0x9f,
+			0x8e, 0x98, 0x90, 0x74, 0x72, 0x77, 0x6e, 0x67, 0x74, 0x7e, 0x83,
+			0x8b, 0x9a, 0xa1, 0x9d, 0x9d, 0x97, 0x8e, 0x84, 0x7a, 0x75, 0x6d,
+			0x69, 0x6e, 0x72, 0x7a, 0x89, 0x8e, 0x8f, 0x9c, 0x9e, 0x95, 0x95,
+			0x92, 0x85, 0x7a, 0x78, 0x74, 0x6c, 0x6a, 0x68, 0x61, 0x61, 0x68,
+			0x67, 0x63, 0x68, 0x6b, 0x66, 0x60, 0x64, 0x68, 0x64, 0x5b, 0x5b,
+			0x5b, 0x70, 0x8d, 0x81, 0x90, 0xaf, 0xa8, 0x9c, 0xa9, 0xab, 0x93,
+			0x89, 0x88, 0x7f, 0x70, 0x6b, 0x6f, 0x70, 0x6e, 0x7b, 0x89, 0x8c,
+			0x92, 0x9b, 0xa1, 0x9b, 0x97, 0x97, 0x8b, 0x7f, 0x7b, 0x76, 0x6c,
+			0x6a, 0x6d, 0x70, 0x75, 0x7d, 0x87, 0x8d, 0x94, 0x9d, 0x9e, 0x98,
+			0x8f, 0x89, 0x81, 0x75, 0x72, 0x72, 0x6c, 0x68, 0x69, 0x6c, 0x6d,
+			0x6d, 0x72, 0x73, 0x6c, 0x68, 0x66, 0x65, 0x62, 0x60, 0x61, 0x5d,
+			0x56, 0x57, 0x60, 0x70, 0x76, 0x86, 0x9d, 0x9f, 0xa5, 0xb2, 0xb2,
+			0xa7, 0xa5, 0x9d, 0x8e, 0x82, 0x76, 0x70, 0x69, 0x66, 0x6a, 0x73,
+			0x78, 0x80, 0x8e, 0x93, 0x99, 0xa0, 0xa2, 0xa0, 0x9a, 0x95, 0x8b,
+			0x7e, 0x74, 0x6d, 0x65, 0x61, 0x61, 0x63, 0x6d, 0x76, 0x7f, 0x8c,
+			0x96, 0xa0, 0xa4, 0xa7, 0xa6, 0x9f, 0x98, 0x8c, 0x82, 0x7a, 0x6f,
+			0x6a, 0x65, 0x62, 0x60, 0x61, 0x63, 0x63, 0x68, 0x6b, 0x6c, 0x6e,
+			0x6b, 0x6c, 0x68, 0x63, 0x65, 0x66, 0x68, 0x63, 0x5f, 0x5e, 0x5f,
+			0x64, 0x71, 0x82, 0x85, 0x94, 0xa6, 0xa9, 0xab, 0xb2, 0xb4, 0xaa,
+			0xa5, 0x9f, 0x91, 0x85, 0x7d, 0x75, 0x6c, 0x6b, 0x6b, 0x6c, 0x70,
+			0x78, 0x81, 0x87, 0x8e, 0x93, 0x95, 0x96, 0x94, 0x91, 0x8b, 0x84,
+			0x7e, 0x77, 0x71, 0x6f, 0x6d, 0x6e, 0x73, 0x79, 0x80, 0x86, 0x8f,
+			0x97, 0x97, 0x9c, 0x9d, 0x98, 0x93, 0x8f, 0x89, 0x7e, 0x78, 0x73,
+			0x6a, 0x63, 0x62, 0x5d, 0x5a, 0x5b, 0x5b, 0x5d, 0x5f, 0x5f, 0x62,
+			0x64, 0x62, 0x5f, 0x60, 0x60, 0x60, 0x63, 0x64, 0x61, 0x60, 0x66,
+			0x66, 0x6e, 0x80, 0x81, 0x8a, 0x9b, 0x9f, 0xa2, 0xab, 0xb4, 0xad,
+			0xad, 0xae, 0xa2, 0x9a, 0x93, 0x89, 0x7d, 0x77, 0x73, 0x6d, 0x6b,
+			0x6d, 0x72, 0x73, 0x7a, 0x80, 0x84, 0x8b, 0x8e, 0x92, 0x92, 0x91,
+			0x8f, 0x8c, 0x86, 0x81, 0x7f, 0x7a, 0x79, 0x7b, 0x77, 0x7b, 0x80,
+			0x7f, 0x84, 0x89, 0x88, 0x89, 0x8c, 0x89, 0x87, 0x86, 0x82, 0x7d,
+			0x79, 0x75, 0x70, 0x6a, 0x67, 0x61, 0x5d, 0x5b, 0x57, 0x56, 0x57,
+			0x5a, 0x63, 0x68, 0x67, 0x66, 0x60, 0x5c, 0x5a, 0x56, 0x56, 0x55,
+			0x51, 0x54, 0x57, 0x5a, 0x65, 0x75, 0x79, 0x84, 0x9a, 0x9c, 0xa1,
+			0xb2, 0xb5, 0xb3, 0xb8, 0xba, 0xb0, 0xa9, 0xa7, 0x99, 0x8e, 0x88,
+			0x7e, 0x75, 0x70, 0x6f, 0x69, 0x69, 0x6d, 0x6d, 0x71, 0x76, 0x7b,
+			0x7f, 0x83, 0x88, 0x89, 0x8b, 0x8c, 0x8d, 0x8b, 0x8b, 0x8b, 0x86,
+			0x89, 0x88, 0x82, 0x85, 0x85, 0x81, 0x82, 0x82, 0x7f, 0x7e, 0x7e,
+			0x7b, 0x78, 0x77, 0x73, 0x71, 0x6e, 0x6b, 0x6a, 0x69, 0x6a, 0x6d,
+			0x6f, 0x6f, 0x73, 0x74, 0x74, 0x76, 0x75, 0x73, 0x71, 0x6e, 0x6c,
+			0x69, 0x67, 0x65, 0x63, 0x5f, 0x5e, 0x5e, 0x5b, 0x59, 0x5b, 0x65,
+			0x65, 0x66, 0x7a, 0x7f, 0x7e, 0x90, 0x99, 0x98, 0xa3, 0xad, 0xab,
+			0xac, 0xb2, 0xac, 0xa7, 0xa5, 0x9e, 0x95, 0x8e, 0x89, 0x80, 0x7a,
+			0x78, 0x72, 0x6f, 0x70, 0x70, 0x70, 0x73, 0x77, 0x79, 0x7b, 0x7f,
+			0x82, 0x83, 0x85, 0x87, 0x88, 0x8a, 0x8b, 0x8a, 0x8c, 0x8b, 0x89,
+			0x8a, 0x89, 0x86, 0x85, 0x84, 0x80, 0x7e, 0x7d, 0x79, 0x77, 0x75,
+			0x73, 0x72, 0x71, 0x72, 0x71, 0x71, 0x76, 0x78, 0x7a, 0x7f, 0x82,
+			0x83, 0x86, 0x88, 0x87, 0x86, 0x86, 0x83, 0x81, 0x80, 0x7d, 0x7a,
+			0x79, 0x76, 0x74, 0x72, 0x71, 0x6f, 0x6d, 0x6d, 0x6b, 0x68, 0x6a,
+			0x68, 0x66, 0x67, 0x66, 0x64, 0x68, 0x71, 0x6c, 0x71, 0x7f, 0x7a,
+			0x80, 0x8d, 0x8a, 0x90, 0x97, 0x99, 0x9b, 0x9d, 0x9f, 0x9c, 0x9b,
+			0x9a, 0x98, 0x92, 0x8e, 0x8d, 0x86, 0x83, 0x83, 0x7c, 0x7c, 0x7c,
+			0x78, 0x78, 0x7a, 0x7a, 0x79, 0x7b, 0x7c, 0x7c, 0x7c, 0x7e, 0x7f,
+			0x7e, 0x80, 0x81, 0x81, 0x83, 0x84, 0x84, 0x85, 0x84, 0x86, 0x84,
+			0x84, 0x85, 0x82, 0x82, 0x81, 0x7e, 0x7e, 0x7c, 0x7b, 0x79, 0x76,
+			0x77, 0x76, 0x74, 0x76, 0x74, 0x73, 0x75, 0x74, 0x74, 0x76, 0x76,
+			0x77, 0x78, 0x7a, 0x7c, 0x7d, 0x7e, 0x80, 0x81, 0x82, 0x83, 0x84,
+			0x84, 0x85, 0x86, 0x85, 0x85, 0x85, 0x85, 0x84, 0x83, 0x82, 0x81,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x82, 0x82, 0x81,
+			0x82, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x81, 0x7c, 0x8b,
+			0x86, 0x7a, 0x85, 0x7f, 0x88, 0x7c, 0x77, 0x87, 0x83, 0x89, 0x8a,
+			0x84, 0x82, 0x79, 0x81, 0x8b, 0x86, 0x82, 0x7e, 0x7e, 0x7c, 0x75,
+			0x79, 0x7c, 0x7e, 0x7b, 0x78, 0x7e, 0x7d, 0x80, 0x7e, 0x7d, 0x7f,
+			0x7e, 0x7d, 0x7d, 0x82, 0x81, 0x80, 0x7c, 0x81, 0x81, 0x7e, 0x7c,
+			0x80, 0x85, 0x7f, 0x80, 0x82, 0x85, 0x81, 0x7d, 0x83, 0x83, 0x83,
+			0x7e, 0x7f, 0x82, 0x81, 0x7e, 0x7d, 0x82, 0x80, 0x7d, 0x7d, 0x81,
+			0x81, 0x7f, 0x7d, 0x81, 0x84, 0x7f, 0x7f, 0x83, 0x82, 0x80, 0x7f,
+			0x7f, 0x81, 0x7f, 0x7d, 0x82, 0x82, 0x7b, 0x7d, 0x80, 0x7d, 0x7d,
+			0x7f, 0x82, 0x81, 0x80, 0x7e, 0x80, 0x7f, 0x7c, 0x7e, 0x80, 0x82,
+			0x82, 0x81, 0x81, 0x80, 0x7f, 0x7d, 0x7e, 0x80, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7e, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81,
+			0x80, 0x7f, 0x80, 0x80, 0x7e, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x81, 0x81,
+			0x80, 0x80, 0x81, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x81, 0x80, 0x80, 0x80, 0x81,
+			0x81, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x80,
+			0x80, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x7f,
+		},
+		{ // 9
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7e, 0x7c, 0x7a,
+			0x79, 0x7a, 0x7b, 0x7e, 0x80, 0x83, 0x86, 0x8a, 0x8e, 0x91, 0x95,
+			0x98, 0x9a, 0x9c, 0x9e, 0x9f, 0x9f, 0x9e, 0x9c, 0x9b, 0x99, 0x96,
+			0x93, 0x91, 0x8e, 0x8a, 0x88, 0x86, 0x83, 0x82, 0x80, 0x7f, 0x7e,
+			0x7e, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x81, 0x81, 0x81, 0x82,
+			0x81, 0x81, 0x80, 0x7f, 0x7d, 0x7b, 0x79, 0x76, 0x74, 0x71, 0x6e,
+			0x6b, 0x69, 0x67, 0x65, 0x64, 0x63, 0x62, 0x62, 0x62, 0x62, 0x62,
+			0x64, 0x64, 0x64, 0x66, 0x67, 0x67, 0x68, 0x6a, 0x6e, 0x71, 0x75,
+			0x7a, 0x7f, 0x84, 0x8a, 0x8f, 0x94, 0x99, 0x9e, 0xa1, 0xa4, 0xa6,
+			0xa6, 0xa7, 0xa7, 0xa6, 0xa4, 0xa2, 0x9e, 0x99, 0x96, 0x91, 0x8d,
+			0x89, 0x85, 0x81, 0x7e, 0x7d, 0x7b, 0x78, 0x78, 0x78, 0x78, 0x78,
+			0x79, 0x7a, 0x7b, 0x7e, 0x80, 0x82, 0x85, 0x86, 0x87, 0x89, 0x88,
+			0x87, 0x86, 0x84, 0x80, 0x7d, 0x7a, 0x76, 0x73, 0x6f, 0x6b, 0x69,
+			0x66, 0x62, 0x5f, 0x5d, 0x5b, 0x59, 0x58, 0x58, 0x58, 0x59, 0x5b,
+			0x5d, 0x5e, 0x5f, 0x62, 0x64, 0x66, 0x6b, 0x73, 0x79, 0x80, 0x8c,
+			0x95, 0x97, 0x9e, 0xa8, 0xab, 0xab, 0xaf, 0xaf, 0xac, 0xad, 0xac,
+			0xa6, 0xa4, 0xa3, 0x9c, 0x97, 0x95, 0x90, 0x88, 0x86, 0x83, 0x7d,
+			0x7b, 0x7a, 0x77, 0x75, 0x76, 0x75, 0x74, 0x77, 0x77, 0x78, 0x7b,
+			0x7d, 0x7d, 0x80, 0x83, 0x84, 0x85, 0x88, 0x88, 0x87, 0x88, 0x87,
+			0x85, 0x84, 0x81, 0x7d, 0x7a, 0x76, 0x72, 0x6f, 0x6b, 0x66, 0x63,
+			0x61, 0x5e, 0x5c, 0x5c, 0x5b, 0x5b, 0x5c, 0x5e, 0x5e, 0x61, 0x63,
+			0x65, 0x67, 0x6c, 0x75, 0x79, 0x7d, 0x87, 0x8f, 0x93, 0x9a, 0xa4,
+			0xa8, 0xad, 0xb2, 0xb3, 0xb3, 0xb4, 0xb3, 0xaf, 0xac, 0xa9, 0xa3,
+			0x9d, 0x98, 0x91, 0x8b, 0x87, 0x83, 0x7d, 0x78, 0x75, 0x71, 0x70,
+			0x6f, 0x6d, 0x6d, 0x70, 0x74, 0x76, 0x79, 0x7c, 0x7d, 0x80, 0x83,
+			0x85, 0x85, 0x87, 0x8c, 0x8f, 0x91, 0x8c, 0x84, 0x7d, 0x77, 0x74,
+			0x6b, 0x63, 0x60, 0x5b, 0x55, 0x4f, 0x4d, 0x4c, 0x4d, 0x4b, 0x4b,
+			0x4b, 0x49, 0x48, 0x47, 0x53, 0x73, 0x8f, 0x97, 0x99, 0x9f, 0xa8,
+			0xaa, 0xa1, 0x93, 0x8e, 0x95, 0x9c, 0x99, 0x8f, 0x8b, 0x93, 0x9c,
+			0x98, 0x8b, 0x86, 0x8a, 0x8d, 0x8a, 0x84, 0x82, 0x86, 0x88, 0x85,
+			0x7d, 0x78, 0x7d, 0x82, 0x80, 0x7c, 0x82, 0x8b, 0x8a, 0x88, 0x88,
+			0x88, 0x8a, 0x8a, 0x86, 0x86, 0x88, 0x86, 0x82, 0x7a, 0x75, 0x72,
+			0x6b, 0x63, 0x61, 0x5f, 0x5f, 0x5f, 0x5c, 0x58, 0x55, 0x50, 0x52,
+			0x55, 0x4f, 0x51, 0x55, 0x4f, 0x44, 0x5c, 0x9c, 0xbb, 0xb0, 0x99,
+			0x8d, 0x96, 0x9a, 0x88, 0x73, 0x7c, 0x95, 0x9e, 0x97, 0x90, 0x8f,
+			0x98, 0x9e, 0x95, 0x89, 0x85, 0x87, 0x87, 0x84, 0x81, 0x83, 0x86,
+			0x87, 0x84, 0x7f, 0x7d, 0x7f, 0x80, 0x7f, 0x81, 0x85, 0x86, 0x87,
+			0x89, 0x8b, 0x8c, 0x8c, 0x88, 0x85, 0x83, 0x84, 0x82, 0x7c, 0x76,
+			0x75, 0x73, 0x6d, 0x65, 0x63, 0x65, 0x63, 0x5d, 0x5b, 0x5a, 0x57,
+			0x57, 0x56, 0x53, 0x54, 0x4f, 0x4d, 0x48, 0x57, 0x98, 0xc3, 0xb7,
+			0x94, 0x81, 0x85, 0x8c, 0x81, 0x6c, 0x74, 0x95, 0xa4, 0x9e, 0x90,
+			0x86, 0x8c, 0x94, 0x8a, 0x7d, 0x7b, 0x80, 0x89, 0x8d, 0x88, 0x83,
+			0x84, 0x89, 0x87, 0x80, 0x79, 0x79, 0x80, 0x83, 0x81, 0x84, 0x85,
+			0x86, 0x89, 0x8b, 0x89, 0x85, 0x83, 0x82, 0x80, 0x7d, 0x7c, 0x7c,
+			0x7a, 0x78, 0x75, 0x71, 0x6f, 0x6e, 0x6c, 0x67, 0x63, 0x61, 0x5f,
+			0x5e, 0x5e, 0x5c, 0x5a, 0x5c, 0x5d, 0x6a, 0x88, 0xa7, 0xb4, 0xa5,
+			0x8c, 0x77, 0x70, 0x75, 0x7e, 0x88, 0x91, 0x95, 0x94, 0x8e, 0x8c,
+			0x8a, 0x84, 0x81, 0x84, 0x88, 0x89, 0x86, 0x86, 0x88, 0x8a, 0x8b,
+			0x86, 0x80, 0x7d, 0x7d, 0x80, 0x83, 0x80, 0x80, 0x84, 0x82, 0x7f,
+			0x82, 0x87, 0x8a, 0x89, 0x84, 0x7e, 0x7a, 0x78, 0x79, 0x7b, 0x7c,
+			0x77, 0x73, 0x74, 0x72, 0x6e, 0x68, 0x64, 0x66, 0x67, 0x66, 0x65,
+			0x65, 0x62, 0x5d, 0x60, 0x7d, 0xab, 0xbe, 0xaa, 0x86, 0x68, 0x5f,
+			0x6f, 0x86, 0x90, 0x8d, 0x89, 0x8c, 0x95, 0x98, 0x8f, 0x82, 0x7c,
+			0x7e, 0x84, 0x86, 0x86, 0x87, 0x87, 0x85, 0x84, 0x84, 0x84, 0x82,
+			0x82, 0x84, 0x83, 0x82, 0x85, 0x84, 0x83, 0x86, 0x86, 0x85, 0x86,
+			0x86, 0x7f, 0x79, 0x76, 0x77, 0x7e, 0x81, 0x7a, 0x6e, 0x66, 0x69,
+			0x72, 0x74, 0x6c, 0x63, 0x61, 0x60, 0x5e, 0x5f, 0x5c, 0x5f, 0x7e,
+			0xaa, 0xbe, 0xae, 0x8a, 0x66, 0x5a, 0x6a, 0x81, 0x8f, 0x93, 0x8d,
+			0x87, 0x89, 0x8e, 0x90, 0x8c, 0x84, 0x7c, 0x7e, 0x86, 0x89, 0x88,
+			0x86, 0x85, 0x87, 0x88, 0x85, 0x80, 0x7f, 0x80, 0x83, 0x86, 0x85,
+			0x85, 0x87, 0x88, 0x87, 0x85, 0x84, 0x82, 0x7e, 0x79, 0x78, 0x7a,
+			0x7a, 0x78, 0x75, 0x73, 0x6f, 0x6d, 0x6b, 0x68, 0x66, 0x64, 0x62,
+			0x5f, 0x5a, 0x58, 0x65, 0x88, 0xaf, 0xbe, 0xaa, 0x81, 0x5e, 0x56,
+			0x6a, 0x88, 0x99, 0x95, 0x88, 0x81, 0x85, 0x8e, 0x92, 0x8c, 0x82,
+			0x7e, 0x80, 0x82, 0x82, 0x82, 0x84, 0x87, 0x8a, 0x8b, 0x8a, 0x8a,
+			0x87, 0x81, 0x7b, 0x79, 0x7c, 0x82, 0x8a, 0x8e, 0x8e, 0x8b, 0x85,
+			0x7d, 0x77, 0x75, 0x77, 0x7b, 0x7c, 0x78, 0x73, 0x6f, 0x6c, 0x6c,
+			0x6e, 0x6c, 0x67, 0x66, 0x62, 0x5a, 0x54, 0x59, 0x77, 0xa8, 0xc4,
+			0xb8, 0x94, 0x68, 0x50, 0x59, 0x79, 0x97, 0xa0, 0x92, 0x80, 0x7a,
+			0x84, 0x93, 0x96, 0x8c, 0x7f, 0x7b, 0x7c, 0x80, 0x83, 0x85, 0x87,
+			0x8a, 0x8c, 0x8c, 0x8b, 0x88, 0x81, 0x7a, 0x78, 0x7b, 0x80, 0x89,
+			0x8f, 0x8f, 0x8a, 0x85, 0x81, 0x7e, 0x79, 0x78, 0x79, 0x78, 0x76,
+			0x75, 0x73, 0x71, 0x6e, 0x68, 0x65, 0x64, 0x61, 0x61, 0x5e, 0x56,
+			0x50, 0x5c, 0x89, 0xb9, 0xc7, 0xb1, 0x81, 0x57, 0x4f, 0x68, 0x8c,
+			0xa2, 0x9a, 0x83, 0x79, 0x7e, 0x8b, 0x94, 0x93, 0x89, 0x81, 0x7d,
+			0x7d, 0x80, 0x82, 0x82, 0x85, 0x89, 0x8c, 0x8d, 0x8c, 0x86, 0x7f,
+			0x7c, 0x7c, 0x7d, 0x7f, 0x86, 0x8b, 0x8d, 0x8c, 0x86, 0x7f, 0x7a,
+			0x78, 0x78, 0x7b, 0x7c, 0x79, 0x74, 0x71, 0x6f, 0x6d, 0x6b, 0x68,
+			0x66, 0x64, 0x64, 0x64, 0x5d, 0x54, 0x53, 0x68, 0x9a, 0xc0, 0xc0,
+			0xa0, 0x6e, 0x4f, 0x56, 0x76, 0x98, 0xa6, 0x96, 0x7f, 0x79, 0x80,
+			0x8c, 0x93, 0x8f, 0x87, 0x82, 0x7e, 0x7d, 0x80, 0x82, 0x84, 0x87,
+			0x88, 0x89, 0x89, 0x87, 0x81, 0x7b, 0x7b, 0x7f, 0x86, 0x8b, 0x8c,
+			0x89, 0x84, 0x80, 0x7d, 0x7b, 0x7a, 0x7c, 0x7d, 0x7c, 0x78, 0x74,
+			0x71, 0x6f, 0x70, 0x70, 0x6e, 0x6a, 0x68, 0x6b, 0x6e, 0x6a, 0x64,
+			0x5e, 0x57, 0x5b, 0x78, 0xa2, 0xb9, 0xb0, 0x8f, 0x69, 0x5a, 0x64,
+			0x7e, 0x96, 0x9d, 0x90, 0x7f, 0x7e, 0x88, 0x90, 0x90, 0x8a, 0x84,
+			0x81, 0x82, 0x84, 0x83, 0x81, 0x83, 0x87, 0x8a, 0x89, 0x85, 0x7f,
+			0x7b, 0x7c, 0x7d, 0x81, 0x88, 0x8b, 0x8c, 0x8c, 0x87, 0x83, 0x81,
+			0x7f, 0x7c, 0x79, 0x77, 0x7a, 0x7e, 0x7b, 0x76, 0x75, 0x75, 0x73,
+			0x70, 0x6a, 0x62, 0x62, 0x67, 0x6b, 0x69, 0x61, 0x5d, 0x5e, 0x60,
+			0x66, 0x6f, 0x82, 0xa1, 0xae, 0xa2, 0x87, 0x6b, 0x63, 0x72, 0x8a,
+			0x9a, 0x9b, 0x8e, 0x85, 0x85, 0x89, 0x8b, 0x88, 0x81, 0x7e, 0x7e,
+			0x83, 0x88, 0x87, 0x84, 0x84, 0x86, 0x88, 0x86, 0x80, 0x7a, 0x76,
+			0x75, 0x79, 0x81, 0x8b, 0x92, 0x95, 0x91, 0x89, 0x82, 0x7f, 0x80,
+			0x84, 0x86, 0x83, 0x7f, 0x7c, 0x79, 0x77, 0x78, 0x78, 0x75, 0x72,
+			0x6e, 0x6b, 0x69, 0x6a, 0x69, 0x66, 0x65, 0x64, 0x67, 0x69, 0x66,
+			0x63, 0x5f, 0x5d, 0x5c, 0x5e, 0x83, 0xaf, 0xb7, 0xa9, 0x89, 0x67,
+			0x62, 0x75, 0x8d, 0xa1, 0x9d, 0x8a, 0x82, 0x84, 0x87, 0x8d, 0x8c,
+			0x88, 0x88, 0x86, 0x82, 0x81, 0x7f, 0x80, 0x83, 0x82, 0x80, 0x81,
+			0x80, 0x81, 0x81, 0x80, 0x7c, 0x79, 0x7c, 0x85, 0x8d, 0x90, 0x8e,
+			0x89, 0x82, 0x7e, 0x7f, 0x82, 0x85, 0x87, 0x85, 0x80, 0x80, 0x7f,
+			0x7b, 0x76, 0x74, 0x76, 0x78, 0x78, 0x73, 0x6d, 0x69, 0x68, 0x6a,
+			0x6c, 0x6d, 0x69, 0x64, 0x65, 0x67, 0x6d, 0x69, 0x65, 0x61, 0x5d,
+			0x5e, 0x63, 0x92, 0xbf, 0xbf, 0xaf, 0x89, 0x63, 0x5d, 0x74, 0x90,
+			0xa5, 0x9f, 0x8b, 0x83, 0x83, 0x8b, 0x92, 0x8e, 0x84, 0x80, 0x7e,
+			0x84, 0x8b, 0x86, 0x7f, 0x7e, 0x81, 0x85, 0x89, 0x83, 0x7a, 0x74,
+			0x6f, 0x71, 0x77, 0x7c, 0x82, 0x88, 0x88, 0x87, 0x87, 0x88, 0x8b,
+			0x8b, 0x86, 0x81, 0x7e, 0x7f, 0x83, 0x87, 0x88, 0x84, 0x7c, 0x79,
+			0x79, 0x7a, 0x7b, 0x79, 0x76, 0x74, 0x72, 0x71, 0x70, 0x70, 0x6e,
+			0x6d, 0x6e, 0x6f, 0x6e, 0x6b, 0x67, 0x66, 0x6a, 0x6e, 0x6f, 0x6d,
+			0x69, 0x63, 0x5f, 0x64, 0x66, 0x7a, 0xa9, 0xbe, 0xb6, 0x9e, 0x78,
+			0x64, 0x71, 0x88, 0x9a, 0x9f, 0x8e, 0x84, 0x89, 0x8c, 0x8f, 0x8c,
+			0x82, 0x80, 0x82, 0x83, 0x82, 0x81, 0x7a, 0x7c, 0x85, 0x89, 0x8d,
+			0x8a, 0x7e, 0x78, 0x76, 0x76, 0x79, 0x7a, 0x7d, 0x7f, 0x7f, 0x7f,
+			0x81, 0x86, 0x87, 0x85, 0x82, 0x7f, 0x7e, 0x82, 0x88, 0x87, 0x85,
+			0x86, 0x88, 0x86, 0x83, 0x7f, 0x7d, 0x81, 0x80, 0x7d, 0x7c, 0x7b,
+			0x7b, 0x7b, 0x7a, 0x78, 0x75, 0x73, 0x71, 0x71, 0x75, 0x78, 0x77,
+			0x75, 0x72, 0x71, 0x72, 0x72, 0x70, 0x6d, 0x6b, 0x6b, 0x6c, 0x6f,
+			0x70, 0x6f, 0x6d, 0x69, 0x69, 0x68, 0x6b, 0x6a, 0x76, 0xa7, 0xbc,
+			0xad, 0x93, 0x77, 0x70, 0x7e, 0x8c, 0x91, 0x91, 0x8a, 0x89, 0x90,
+			0x90, 0x88, 0x83, 0x81, 0x85, 0x8c, 0x89, 0x7f, 0x78, 0x79, 0x82,
+			0x8a, 0x88, 0x84, 0x83, 0x82, 0x81, 0x7d, 0x76, 0x70, 0x70, 0x76,
+			0x7d, 0x84, 0x86, 0x88, 0x88, 0x85, 0x7e, 0x78, 0x79, 0x80, 0x87,
+			0x88, 0x86, 0x84, 0x86, 0x87, 0x87, 0x85, 0x83, 0x80, 0x80, 0x83,
+			0x80, 0x7d, 0x7d, 0x7e, 0x7c, 0x78, 0x76, 0x78, 0x79, 0x78, 0x76,
+			0x75, 0x74, 0x74, 0x75, 0x74, 0x72, 0x74, 0x74, 0x71, 0x71, 0x72,
+			0x72, 0x72, 0x72, 0x6e, 0x70, 0x73, 0x72, 0x70, 0x6e, 0x6e, 0x73,
+			0x72, 0x6d, 0x6e, 0x81, 0xaa, 0xb5, 0x9e, 0x8b, 0x86, 0x8b, 0x90,
+			0x85, 0x7c, 0x87, 0x92, 0x98, 0x94, 0x86, 0x82, 0x8a, 0x8a, 0x83,
+			0x7e, 0x7b, 0x7f, 0x84, 0x84, 0x81, 0x81, 0x84, 0x86, 0x81, 0x7b,
+			0x7e, 0x80, 0x7e, 0x7a, 0x77, 0x78, 0x7a, 0x7e, 0x81, 0x83, 0x86,
+			0x87, 0x86, 0x82, 0x85, 0x88, 0x88, 0x88, 0x86, 0x83, 0x83, 0x82,
+			0x82, 0x84, 0x81, 0x80, 0x81, 0x7b, 0x78, 0x78, 0x77, 0x78, 0x79,
+			0x77, 0x76, 0x77, 0x73, 0x72, 0x72, 0x71, 0x75, 0x77, 0x73, 0x72,
+			0x73, 0x74, 0x73, 0x71, 0x73, 0x73, 0x71, 0x74, 0x77, 0x75, 0x75,
+			0x75, 0x74, 0x75, 0x76, 0x74, 0x75, 0x77, 0x77, 0x77, 0x77, 0x7b,
+			0x8f, 0xa1, 0x9f, 0x98, 0x97, 0x96, 0x93, 0x8b, 0x84, 0x88, 0x91,
+			0x92, 0x8c, 0x8a, 0x8a, 0x8d, 0x8b, 0x84, 0x82, 0x84, 0x82, 0x7d,
+			0x7d, 0x7f, 0x82, 0x85, 0x81, 0x7f, 0x80, 0x81, 0x80, 0x7e, 0x7b,
+			0x7b, 0x7a, 0x74, 0x74, 0x7a, 0x80, 0x81, 0x81, 0x87, 0x89, 0x8a,
+			0x87, 0x86, 0x86, 0x85, 0x82, 0x7e, 0x80, 0x81, 0x7f, 0x82, 0x84,
+			0x81, 0x7d, 0x7b, 0x79, 0x79, 0x7a, 0x79, 0x78, 0x78, 0x79, 0x79,
+			0x77, 0x75, 0x75, 0x75, 0x74, 0x72, 0x72, 0x75, 0x74, 0x70, 0x70,
+			0x74, 0x75, 0x73, 0x72, 0x73, 0x74, 0x74, 0x75, 0x73, 0x73, 0x74,
+			0x74, 0x73, 0x74, 0x75, 0x76, 0x74, 0x6f, 0x74, 0x75, 0x7d, 0x8b,
+			0x84, 0x82, 0x8c, 0x94, 0x96, 0x8d, 0x91, 0x9a, 0x98, 0x90, 0x8d,
+			0x90, 0x91, 0x8e, 0x89, 0x8b, 0x8e, 0x89, 0x86, 0x88, 0x88, 0x85,
+			0x81, 0x81, 0x84, 0x83, 0x7f, 0x7d, 0x81, 0x84, 0x7f, 0x7c, 0x80,
+			0x81, 0x7c, 0x79, 0x7b, 0x7a, 0x78, 0x7a, 0x7c, 0x7c, 0x7d, 0x81,
+			0x85, 0x83, 0x84, 0x87, 0x85, 0x83, 0x84, 0x86, 0x87, 0x84, 0x84,
+			0x89, 0x85, 0x7f, 0x81, 0x81, 0x7f, 0x7c, 0x7b, 0x7e, 0x7f, 0x79,
+			0x78, 0x7c, 0x7b, 0x77, 0x76, 0x78, 0x76, 0x72, 0x73, 0x73, 0x71,
+			0x71, 0x72, 0x72, 0x71, 0x74, 0x72, 0x6f, 0x73, 0x75, 0x72, 0x74,
+			0x76, 0x74, 0x73, 0x73, 0x73, 0x72, 0x74, 0x76, 0x74, 0x73, 0x71,
+			0x70, 0x70, 0x6f, 0x72, 0x82, 0x84, 0x7b, 0x80, 0x85, 0x80, 0x8e,
+			0x99, 0x8e, 0x96, 0xa5, 0x9d, 0x96, 0x96, 0x96, 0x96, 0x94, 0x90,
+			0x91, 0x91, 0x8a, 0x86, 0x89, 0x88, 0x81, 0x7e, 0x80, 0x82, 0x82,
+			0x7f, 0x82, 0x87, 0x84, 0x7e, 0x7f, 0x7f, 0x7c, 0x7a, 0x78, 0x79,
+			0x7a, 0x78, 0x77, 0x7a, 0x7c, 0x7b, 0x7d, 0x82, 0x85, 0x84, 0x86,
+			0x89, 0x8a, 0x88, 0x87, 0x87, 0x86, 0x84, 0x81, 0x80, 0x80, 0x7f,
+			0x7e, 0x7e, 0x7d, 0x7b, 0x79, 0x78, 0x77, 0x76, 0x75, 0x74, 0x75,
+			0x73, 0x72, 0x73, 0x73, 0x71, 0x70, 0x72, 0x73, 0x73, 0x73, 0x73,
+			0x75, 0x74, 0x74, 0x76, 0x74, 0x74, 0x74, 0x75, 0x76, 0x76, 0x78,
+			0x78, 0x77, 0x79, 0x79, 0x78, 0x78, 0x79, 0x78, 0x78, 0x77, 0x77,
+			0x75, 0x7a, 0x81, 0x7f, 0x7d, 0x81, 0x84, 0x80, 0x7e, 0x7d, 0x83,
+			0x8b, 0x89, 0x8a, 0x91, 0x95, 0x94, 0x97, 0x99, 0x9b, 0x9e, 0x9e,
+			0x9c, 0x9b, 0x9b, 0x98, 0x94, 0x92, 0x8f, 0x8b, 0x88, 0x84, 0x81,
+			0x80, 0x7f, 0x7e, 0x7c, 0x7c, 0x7c, 0x7c, 0x7a, 0x78, 0x79, 0x7a,
+			0x79, 0x78, 0x79, 0x7b, 0x7c, 0x7b, 0x7c, 0x7d, 0x7e, 0x80, 0x82,
+			0x83, 0x84, 0x85, 0x86, 0x86, 0x86, 0x86, 0x84, 0x84, 0x83, 0x80,
+			0x7f, 0x7e, 0x7d, 0x7b, 0x7a, 0x79, 0x78, 0x77, 0x76, 0x75, 0x75,
+			0x74, 0x73, 0x73, 0x73, 0x72, 0x72, 0x72, 0x72, 0x72, 0x73, 0x72,
+			0x71, 0x73, 0x74, 0x72, 0x72, 0x73, 0x75, 0x76, 0x76, 0x77, 0x79,
+			0x7a, 0x7a, 0x7a, 0x7d, 0x7c, 0x7b, 0x7d, 0x7e, 0x7d, 0x7d, 0x7d,
+			0x7c, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7d, 0x7b, 0x7a,
+			0x79, 0x79, 0x7f, 0x82, 0x80, 0x84, 0x8d, 0x8e, 0x8d, 0x92, 0x96,
+			0x99, 0x9c, 0x9e, 0x9c, 0x9c, 0x9f, 0x9e, 0x9b, 0x98, 0x95, 0x95,
+			0x91, 0x8c, 0x89, 0x8a, 0x89, 0x84, 0x81, 0x81, 0x7f, 0x7d, 0x7c,
+			0x7a, 0x7a, 0x7a, 0x78, 0x77, 0x78, 0x77, 0x77, 0x79, 0x79, 0x79,
+			0x7b, 0x7d, 0x7d, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x7f,
+			0x80, 0x81, 0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7d, 0x7c, 0x7c, 0x7b,
+			0x7a, 0x7a, 0x79, 0x78, 0x77, 0x76, 0x75, 0x74, 0x74, 0x73, 0x73,
+			0x72, 0x71, 0x72, 0x72, 0x70, 0x71, 0x72, 0x73, 0x72, 0x73, 0x74,
+			0x74, 0x75, 0x75, 0x76, 0x77, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7f,
+			0x80, 0x7f, 0x81, 0x82, 0x82, 0x81, 0x82, 0x81, 0x80, 0x81, 0x81,
+			0x81, 0x82, 0x81, 0x80, 0x80, 0x7f, 0x7d, 0x7e, 0x80, 0x81, 0x82,
+			0x84, 0x86, 0x89, 0x8b, 0x8b, 0x8d, 0x90, 0x91, 0x93, 0x93, 0x93,
+			0x94, 0x94, 0x92, 0x90, 0x8f, 0x8e, 0x8d, 0x8c, 0x8a, 0x89, 0x89,
+			0x88, 0x86, 0x85, 0x85, 0x84, 0x83, 0x82, 0x81, 0x81, 0x80, 0x7f,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c, 0x7b, 0x7b,
+			0x7a, 0x7a, 0x79, 0x78, 0x77, 0x77, 0x75, 0x75, 0x74, 0x73, 0x73,
+			0x73, 0x73, 0x73, 0x73, 0x73, 0x74, 0x75, 0x75, 0x76, 0x77, 0x78,
+			0x79, 0x7a, 0x7a, 0x7b, 0x7d, 0x7e, 0x7e, 0x7e, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x81, 0x81, 0x82, 0x83, 0x85,
+			0x86, 0x87, 0x87, 0x89, 0x8a, 0x8b, 0x8b, 0x8d, 0x8d, 0x8d, 0x8e,
+			0x8d, 0x8d, 0x8c, 0x8c, 0x8b, 0x8a, 0x89, 0x88, 0x87, 0x86, 0x85,
+			0x85, 0x83, 0x82, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7d, 0x7d, 0x7e, 0x7d,
+			0x7d, 0x7d, 0x7c, 0x7c, 0x7c, 0x7c, 0x7b, 0x7b, 0x7b, 0x7a, 0x7a,
+			0x79, 0x78, 0x78, 0x78, 0x77, 0x77, 0x76, 0x76, 0x76, 0x76, 0x76,
+			0x76, 0x77, 0x77, 0x78, 0x78, 0x79, 0x7a, 0x7b, 0x7b, 0x7c, 0x7d,
+			0x7d, 0x7d, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+		},
+	},
+	"ru": [][]byte{
+		{ // 0
+			0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x7f, 0x7d, 0x7e, 0x7d, 0x7e, 0x7e, 0x7e, 0x7d, 0x7e,
+			0x7e, 0x7d, 0x7f, 0x7e, 0x7f, 0x7e, 0x80, 0x80, 0x80, 0x81, 0x80,
+			0x82, 0x81, 0x82, 0x82, 0x83, 0x82, 0x83, 0x83, 0x82, 0x83, 0x81,
+			0x82, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7e, 0x7c,
+			0x7d, 0x7d, 0x7e, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7e, 0x7f, 0x7e, 0x7e, 0x7d,
+			0x7c, 0x7b, 0x7b, 0x7a, 0x7a, 0x79, 0x7b, 0x7b, 0x7d, 0x7e, 0x7f,
+			0x81, 0x82, 0x84, 0x85, 0x85, 0x87, 0x87, 0x86, 0x87, 0x86, 0x84,
+			0x84, 0x83, 0x81, 0x81, 0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7c,
+			0x7d, 0x7d, 0x7c, 0x7d, 0x7d, 0x7e, 0x7d, 0x7f, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x7d, 0x7d, 0x7b, 0x7b, 0x7a, 0x78, 0x79, 0x79, 0x79,
+			0x7a, 0x7b, 0x7d, 0x7f, 0x81, 0x84, 0x85, 0x86, 0x87, 0x87, 0x89,
+			0x89, 0x88, 0x88, 0x85, 0x85, 0x83, 0x82, 0x81, 0x80, 0x7f, 0x7e,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c, 0x7d, 0x7d, 0x7e, 0x7d,
+			0x7f, 0x7e, 0x7f, 0x7e, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e, 0x7c, 0x7c, 0x7b,
+			0x7a, 0x79, 0x78, 0x79, 0x79, 0x79, 0x7b, 0x7b, 0x7e, 0x7f, 0x83,
+			0x84, 0x86, 0x86, 0x88, 0x88, 0x89, 0x89, 0x88, 0x87, 0x86, 0x84,
+			0x82, 0x82, 0x80, 0x7f, 0x7d, 0x7d, 0x7d, 0x7c, 0x7c, 0x7d, 0x7c,
+			0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x80,
+			0x81, 0x80, 0x81, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7d, 0x7b, 0x7a, 0x78, 0x79, 0x77, 0x78, 0x78,
+			0x7a, 0x79, 0x7c, 0x7d, 0x81, 0x82, 0x8a, 0x8a, 0x8c, 0x8c, 0x8e,
+			0x8d, 0x8b, 0x8a, 0x86, 0x85, 0x81, 0x81, 0x7f, 0x7d, 0x7b, 0x79,
+			0x79, 0x78, 0x7a, 0x79, 0x7b, 0x7a, 0x7c, 0x7c, 0x7e, 0x7e, 0x7f,
+			0x80, 0x7f, 0x81, 0x81, 0x82, 0x82, 0x82, 0x81, 0x81, 0x80, 0x80,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7c, 0x7d, 0x7c, 0x7d, 0x7c, 0x7d, 0x7a,
+			0x78, 0x76, 0x77, 0x76, 0x74, 0x76, 0x77, 0x77, 0x78, 0x7d, 0x81,
+			0x84, 0x87, 0x89, 0x8b, 0x8a, 0x8d, 0x8f, 0x8f, 0x8d, 0x8b, 0x88,
+			0x86, 0x82, 0x81, 0x80, 0x7d, 0x7b, 0x79, 0x7a, 0x78, 0x78, 0x7a,
+			0x79, 0x7a, 0x79, 0x7c, 0x7c, 0x7d, 0x7f, 0x7f, 0x80, 0x80, 0x82,
+			0x81, 0x83, 0x83, 0x82, 0x82, 0x80, 0x81, 0x80, 0x7f, 0x7f, 0x7d,
+			0x7d, 0x7c, 0x7d, 0x7d, 0x7c, 0x7d, 0x7b, 0x78, 0x75, 0x77, 0x75,
+			0x74, 0x74, 0x77, 0x77, 0x76, 0x7a, 0x7e, 0x82, 0x84, 0x89, 0x8a,
+			0x8b, 0x8c, 0x8f, 0x8f, 0x8f, 0x8d, 0x8a, 0x88, 0x84, 0x83, 0x80,
+			0x7f, 0x7c, 0x79, 0x79, 0x77, 0x78, 0x79, 0x79, 0x79, 0x78, 0x7a,
+			0x7b, 0x7d, 0x7d, 0x80, 0x81, 0x80, 0x82, 0x82, 0x83, 0x84, 0x84,
+			0x83, 0x83, 0x82, 0x82, 0x81, 0x80, 0x7f, 0x7e, 0x7d, 0x7c, 0x7c,
+			0x7d, 0x7c, 0x7c, 0x7a, 0x76, 0x75, 0x76, 0x75, 0x72, 0x75, 0x76,
+			0x76, 0x76, 0x7c, 0x80, 0x83, 0x85, 0x8a, 0x8a, 0x8c, 0x8e, 0x90,
+			0x90, 0x8e, 0x8d, 0x89, 0x87, 0x83, 0x82, 0x80, 0x7e, 0x7b, 0x7a,
+			0x78, 0x78, 0x78, 0x78, 0x7a, 0x78, 0x7a, 0x7a, 0x7b, 0x7d, 0x7e,
+			0x81, 0x80, 0x81, 0x81, 0x83, 0x83, 0x85, 0x84, 0x84, 0x82, 0x82,
+			0x82, 0x80, 0x80, 0x7f, 0x7f, 0x7d, 0x7c, 0x7d, 0x7c, 0x7d, 0x7a,
+			0x76, 0x73, 0x75, 0x74, 0x71, 0x74, 0x76, 0x74, 0x75, 0x7a, 0x7f,
+			0x81, 0x86, 0x89, 0x8b, 0x8c, 0x8e, 0x91, 0x90, 0x90, 0x8e, 0x8c,
+			0x89, 0x84, 0x84, 0x81, 0x7f, 0x7d, 0x7a, 0x79, 0x76, 0x77, 0x78,
+			0x79, 0x78, 0x79, 0x7a, 0x7a, 0x7c, 0x7d, 0x80, 0x80, 0x80, 0x82,
+			0x82, 0x84, 0x84, 0x85, 0x83, 0x83, 0x82, 0x83, 0x82, 0x80, 0x80,
+			0x7e, 0x7d, 0x7d, 0x7c, 0x7c, 0x7a, 0x76, 0x72, 0x74, 0x72, 0x6f,
+			0x72, 0x74, 0x73, 0x72, 0x79, 0x7e, 0x80, 0x85, 0x89, 0x8c, 0x8b,
+			0x8e, 0x92, 0x91, 0x92, 0x91, 0x8e, 0x8a, 0x87, 0x84, 0x84, 0x81,
+			0x7c, 0x7c, 0x79, 0x75, 0x76, 0x78, 0x77, 0x77, 0x77, 0x79, 0x78,
+			0x7a, 0x7c, 0x7f, 0x7e, 0x80, 0x81, 0x83, 0x83, 0x86, 0x85, 0x86,
+			0x84, 0x85, 0x83, 0x83, 0x81, 0x82, 0x81, 0x7e, 0x7e, 0x7c, 0x7b,
+			0x76, 0x73, 0x74, 0x72, 0x6d, 0x6e, 0x72, 0x70, 0x70, 0x74, 0x7b,
+			0x7e, 0x83, 0x89, 0x8b, 0x8c, 0x8e, 0x93, 0x92, 0x93, 0x93, 0x92,
+			0x8d, 0x89, 0x86, 0x85, 0x80, 0x7e, 0x7d, 0x79, 0x76, 0x75, 0x76,
+			0x77, 0x74, 0x77, 0x78, 0x76, 0x78, 0x7a, 0x7e, 0x7e, 0x7f, 0x83,
+			0x82, 0x83, 0x84, 0x87, 0x86, 0x86, 0x85, 0x85, 0x83, 0x83, 0x82,
+			0x82, 0x7f, 0x7e, 0x7b, 0x75, 0x72, 0x72, 0x70, 0x6a, 0x6d, 0x6e,
+			0x6c, 0x6d, 0x74, 0x78, 0x7c, 0x82, 0x87, 0x8b, 0x8b, 0x91, 0x94,
+			0x94, 0x94, 0x95, 0x92, 0x8f, 0x8a, 0x89, 0x86, 0x83, 0x7f, 0x7d,
+			0x7a, 0x75, 0x74, 0x75, 0x75, 0x73, 0x76, 0x77, 0x74, 0x76, 0x79,
+			0x7d, 0x7d, 0x81, 0x83, 0x83, 0x85, 0x87, 0x88, 0x88, 0x87, 0x88,
+			0x86, 0x86, 0x85, 0x82, 0x7f, 0x7a, 0x75, 0x6d, 0x6c, 0x6e, 0x6d,
+			0x6c, 0x6e, 0x70, 0x69, 0x69, 0x71, 0x7a, 0x80, 0x8c, 0x92, 0x8e,
+			0x8e, 0x92, 0x99, 0x9a, 0x9c, 0x9a, 0x90, 0x85, 0x7e, 0x7e, 0x7c,
+			0x7a, 0x78, 0x71, 0x6a, 0x6a, 0x72, 0x79, 0x7d, 0x7f, 0x7e, 0x7d,
+			0x80, 0x88, 0x8e, 0x8c, 0x8b, 0x88, 0x85, 0x84, 0x88, 0x86, 0x80,
+			0x7c, 0x7b, 0x7d, 0x7e, 0x80, 0x7d, 0x7a, 0x75, 0x5c, 0x42, 0x4b,
+			0x5b, 0x66, 0x78, 0x81, 0x85, 0x84, 0x92, 0xac, 0xb0, 0xa5, 0x9f,
+			0x8b, 0x77, 0x78, 0x7e, 0x7e, 0x75, 0x71, 0x78, 0x79, 0x7f, 0x8f,
+			0x8e, 0x86, 0x81, 0x80, 0x7e, 0x7b, 0x7f, 0x7d, 0x78, 0x79, 0x81,
+			0x86, 0x88, 0x88, 0x86, 0x7f, 0x7f, 0x80, 0x81, 0x7e, 0x7e, 0x7d,
+			0x7f, 0x81, 0x83, 0x86, 0x84, 0x85, 0x88, 0x86, 0x84, 0x7e, 0x76,
+			0x57, 0x34, 0x3c, 0x4f, 0x5c, 0x78, 0x88, 0x88, 0x8a, 0x96, 0xaf,
+			0xb4, 0xac, 0xa1, 0x86, 0x6e, 0x6e, 0x78, 0x7a, 0x7c, 0x7a, 0x7b,
+			0x7d, 0x82, 0x91, 0x8f, 0x86, 0x7e, 0x74, 0x6f, 0x6f, 0x79, 0x7e,
+			0x7d, 0x83, 0x88, 0x8a, 0x8e, 0x8d, 0x89, 0x7f, 0x7b, 0x7c, 0x7e,
+			0x7f, 0x82, 0x81, 0x81, 0x81, 0x85, 0x89, 0x8a, 0x8b, 0x85, 0x7e,
+			0x77, 0x70, 0x3b, 0x50, 0x66, 0x8f, 0x97, 0x97, 0x8f, 0x8b, 0xad,
+			0xa9, 0x9d, 0x96, 0x71, 0x5c, 0x5c, 0x6b, 0x88, 0x89, 0x8b, 0x93,
+			0x85, 0x87, 0x92, 0x91, 0x89, 0x75, 0x68, 0x63, 0x62, 0x6e, 0x86,
+			0x88, 0x84, 0x86, 0x86, 0x8c, 0x8b, 0x8d, 0x87, 0x79, 0x77, 0x7d,
+			0x81, 0x85, 0x85, 0x89, 0x87, 0x88, 0x8c, 0x8e, 0x89, 0x84, 0x7f,
+			0x7c, 0x77, 0x58, 0x2b, 0x3a, 0x57, 0x6a, 0x8f, 0x95, 0x98, 0x92,
+			0x8a, 0xab, 0xaf, 0x95, 0x89, 0x69, 0x5d, 0x61, 0x71, 0x8e, 0x8a,
+			0x82, 0x8d, 0x8d, 0x92, 0x97, 0x91, 0x80, 0x6a, 0x5f, 0x6b, 0x71,
+			0x73, 0x82, 0x84, 0x87, 0x87, 0x8b, 0x92, 0x84, 0x78, 0x79, 0x76,
+			0x7e, 0x7f, 0x81, 0x80, 0x7b, 0x87, 0x90, 0x8f, 0x91, 0x8c, 0x85,
+			0x82, 0x82, 0x85, 0x82, 0x7b, 0x79, 0x6a, 0x38, 0x34, 0x64, 0x74,
+			0x82, 0x8a, 0x83, 0x92, 0x89, 0xa0, 0xbb, 0x92, 0x7a, 0x6d, 0x69,
+			0x7a, 0x77, 0x80, 0x84, 0x70, 0x81, 0x9c, 0xa2, 0x9a, 0x83, 0x77,
+			0x78, 0x6e, 0x76, 0x7e, 0x6b, 0x69, 0x76, 0x8c, 0x99, 0x8f, 0x8a,
+			0x7f, 0x6f, 0x7d, 0x7e, 0x76, 0x71, 0x71, 0x84, 0x88, 0x8a, 0x8c,
+			0x81, 0x7c, 0x86, 0x8d, 0x92, 0x88, 0x81, 0x7f, 0x80, 0x89, 0x8c,
+			0x85, 0x7f, 0x76, 0x5d, 0x30, 0x47, 0x71, 0x6d, 0x75, 0x72, 0x82,
+			0x9d, 0x98, 0xb3, 0xab, 0x7d, 0x7b, 0x7c, 0x84, 0x7f, 0x62, 0x6d,
+			0x77, 0x7a, 0x9b, 0x9e, 0x92, 0x85, 0x80, 0x94, 0x90, 0x77, 0x6d,
+			0x65, 0x65, 0x77, 0x82, 0x83, 0x7c, 0x79, 0x8d, 0x98, 0x8a, 0x7b,
+			0x70, 0x71, 0x78, 0x79, 0x79, 0x71, 0x76, 0x8a, 0x8f, 0x8d, 0x8a,
+			0x8a, 0x8f, 0x8f, 0x8d, 0x8d, 0x82, 0x81, 0x7f, 0x7e, 0x7d, 0x7c,
+			0x7d, 0x7f, 0x78, 0x76, 0x56, 0x2d, 0x63, 0x7d, 0x66, 0x6e, 0x69,
+			0x88, 0xa5, 0x99, 0xb5, 0x9c, 0x7e, 0x9f, 0x98, 0x8a, 0x72, 0x59,
+			0x74, 0x74, 0x72, 0x83, 0x76, 0x79, 0x93, 0x9e, 0x9e, 0x85, 0x7d,
+			0x88, 0x83, 0x74, 0x73, 0x69, 0x61, 0x72, 0x7c, 0x7f, 0x7d, 0x7d,
+			0x91, 0x94, 0x8a, 0x88, 0x81, 0x7e, 0x81, 0x78, 0x72, 0x70, 0x75,
+			0x7e, 0x79, 0x7b, 0x85, 0x8b, 0x8c, 0x8d, 0x89, 0x89, 0x8a, 0x8b,
+			0x85, 0x83, 0x81, 0x80, 0x7d, 0x7d, 0x7f, 0x7a, 0x7a, 0x62, 0x41,
+			0x6d, 0x80, 0x4d, 0x63, 0x79, 0x70, 0x8a, 0x9e, 0x8f, 0x8a, 0x9b,
+			0xa9, 0xa2, 0x8c, 0x86, 0x88, 0x81, 0x7a, 0x7e, 0x6c, 0x62, 0x78,
+			0x80, 0x71, 0x7a, 0x86, 0x86, 0x88, 0x8e, 0x89, 0x88, 0x8e, 0x8d,
+			0x81, 0x79, 0x79, 0x81, 0x7a, 0x74, 0x74, 0x71, 0x73, 0x7a, 0x76,
+			0x70, 0x77, 0x81, 0x81, 0x84, 0x83, 0x85, 0x8d, 0x8d, 0x89, 0x89,
+			0x87, 0x87, 0x83, 0x7c, 0x7c, 0x82, 0x83, 0x82, 0x82, 0x82, 0x86,
+			0x89, 0x84, 0x86, 0x85, 0x84, 0x7d, 0x7b, 0x76, 0x50, 0x5f, 0x7d,
+			0x56, 0x55, 0x6f, 0x66, 0x6e, 0x89, 0x88, 0x76, 0x9e, 0xb0, 0x8f,
+			0x9d, 0xa5, 0x94, 0x99, 0x97, 0x86, 0x76, 0x82, 0x83, 0x69, 0x6b,
+			0x72, 0x6e, 0x73, 0x77, 0x70, 0x6f, 0x81, 0x8f, 0x7f, 0x85, 0x91,
+			0x8c, 0x91, 0x8f, 0x81, 0x7f, 0x86, 0x7f, 0x71, 0x75, 0x77, 0x70,
+			0x74, 0x72, 0x6a, 0x73, 0x7f, 0x7b, 0x7a, 0x87, 0x8a, 0x85, 0x8d,
+			0x8e, 0x8d, 0x95, 0x8e, 0x83, 0x86, 0x86, 0x7f, 0x7d, 0x7c, 0x76,
+			0x7b, 0x7c, 0x78, 0x7f, 0x84, 0x81, 0x83, 0x83, 0x82, 0x81, 0x7e,
+			0x62, 0x6b, 0x7e, 0x61, 0x5e, 0x69, 0x63, 0x70, 0x7d, 0x79, 0x75,
+			0x91, 0x9d, 0x89, 0x9b, 0xa1, 0x98, 0xa2, 0x98, 0x8a, 0x8b, 0x91,
+			0x88, 0x74, 0x75, 0x75, 0x6b, 0x73, 0x6b, 0x67, 0x75, 0x78, 0x76,
+			0x77, 0x81, 0x87, 0x87, 0x8e, 0x86, 0x87, 0x91, 0x8a, 0x80, 0x83,
+			0x83, 0x82, 0x7b, 0x7a, 0x76, 0x77, 0x75, 0x72, 0x71, 0x74, 0x76,
+			0x77, 0x78, 0x80, 0x83, 0x87, 0x89, 0x8b, 0x8d, 0x8f, 0x8b, 0x8a,
+			0x89, 0x85, 0x7e, 0x7e, 0x7d, 0x7d, 0x7b, 0x7a, 0x7f, 0x7f, 0x7d,
+			0x80, 0x82, 0x81, 0x82, 0x7d, 0x7d, 0x7c, 0x69, 0x71, 0x7b, 0x63,
+			0x69, 0x6b, 0x68, 0x73, 0x75, 0x79, 0x75, 0x8d, 0x93, 0x84, 0x98,
+			0x9b, 0x94, 0xa1, 0x94, 0x91, 0x97, 0x8f, 0x88, 0x7f, 0x85, 0x7b,
+			0x73, 0x76, 0x6a, 0x6d, 0x74, 0x69, 0x6d, 0x74, 0x7b, 0x7c, 0x7e,
+			0x84, 0x84, 0x89, 0x8a, 0x80, 0x88, 0x86, 0x84, 0x82, 0x82, 0x83,
+			0x82, 0x7e, 0x7c, 0x7b, 0x7a, 0x75, 0x73, 0x75, 0x76, 0x78, 0x76,
+			0x79, 0x82, 0x83, 0x84, 0x89, 0x8d, 0x8e, 0x8c, 0x8b, 0x88, 0x87,
+			0x85, 0x80, 0x80, 0x7f, 0x7c, 0x7a, 0x7a, 0x79, 0x7c, 0x7e, 0x7c,
+			0x7e, 0x7f, 0x81, 0x7c, 0x82, 0x73, 0x6c, 0x80, 0x70, 0x6c, 0x71,
+			0x6e, 0x77, 0x71, 0x78, 0x72, 0x7f, 0x89, 0x7b, 0x8b, 0x91, 0x90,
+			0x96, 0x95, 0x94, 0x97, 0x94, 0x8e, 0x87, 0x89, 0x81, 0x7b, 0x79,
+			0x72, 0x73, 0x72, 0x6d, 0x71, 0x75, 0x77, 0x75, 0x7b, 0x7d, 0x7f,
+			0x82, 0x83, 0x82, 0x86, 0x84, 0x83, 0x82, 0x83, 0x83, 0x82, 0x81,
+			0x7e, 0x7f, 0x7a, 0x75, 0x7a, 0x78, 0x77, 0x76, 0x79, 0x7c, 0x7e,
+			0x7e, 0x84, 0x88, 0x88, 0x88, 0x89, 0x89, 0x87, 0x86, 0x82, 0x81,
+			0x80, 0x7e, 0x7b, 0x7d, 0x7b, 0x7b, 0x7b, 0x7c, 0x7b, 0x7d, 0x7d,
+			0x7d, 0x80, 0x7f, 0x81, 0x82, 0x88, 0x73, 0x79, 0x83, 0x6f, 0x73,
+			0x6a, 0x70, 0x72, 0x6c, 0x74, 0x6d, 0x84, 0x7e, 0x7e, 0x8d, 0x8e,
+			0x94, 0x90, 0x93, 0x91, 0x92, 0x8f, 0x87, 0x8a, 0x88, 0x85, 0x82,
+			0x81, 0x80, 0x7c, 0x79, 0x75, 0x77, 0x76, 0x71, 0x72, 0x74, 0x77,
+			0x79, 0x7b, 0x7e, 0x81, 0x83, 0x80, 0x84, 0x84, 0x82, 0x82, 0x80,
+			0x81, 0x7d, 0x7f, 0x7c, 0x7b, 0x7c, 0x7c, 0x7b, 0x7c, 0x7c, 0x7b,
+			0x7d, 0x7e, 0x80, 0x82, 0x82, 0x84, 0x85, 0x85, 0x86, 0x83, 0x84,
+			0x82, 0x84, 0x80, 0x80, 0x7e, 0x7f, 0x7e, 0x7d, 0x7c, 0x7c, 0x7c,
+			0x7d, 0x7b, 0x7d, 0x7d, 0x7e, 0x81, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e,
+			0x71, 0x7d, 0x78, 0x74, 0x76, 0x73, 0x7d, 0x74, 0x7b, 0x78, 0x7e,
+			0x85, 0x7e, 0x84, 0x86, 0x8c, 0x88, 0x8c, 0x8f, 0x8e, 0x8f, 0x89,
+			0x8a, 0x87, 0x85, 0x81, 0x7e, 0x7e, 0x7b, 0x78, 0x77, 0x78, 0x79,
+			0x77, 0x78, 0x79, 0x7d, 0x7a, 0x7d, 0x7d, 0x7f, 0x7f, 0x7f, 0x81,
+			0x83, 0x83, 0x84, 0x84, 0x84, 0x84, 0x81, 0x7d, 0x7d, 0x7c, 0x7d,
+			0x79, 0x7a, 0x7a, 0x7a, 0x7a, 0x7b, 0x7e, 0x7d, 0x80, 0x80, 0x81,
+			0x81, 0x84, 0x84, 0x82, 0x84, 0x81, 0x82, 0x83, 0x82, 0x83, 0x81,
+			0x81, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7b, 0x7e, 0x7d, 0x7e, 0x7d,
+			0x7c, 0x7e, 0x7a, 0x7d, 0x7d, 0x7e, 0x7f, 0x7e, 0x80, 0x81, 0x82,
+			0x83, 0x7f, 0x80, 0x80, 0x7d, 0x7e, 0x79, 0x7c, 0x79, 0x7a, 0x79,
+			0x7c, 0x7e, 0x80, 0x82, 0x83, 0x84, 0x85, 0x85, 0x86, 0x85, 0x85,
+			0x82, 0x83, 0x83, 0x82, 0x81, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f,
+			0x80, 0x7d, 0x7e, 0x7d, 0x81, 0x80, 0x80, 0x80, 0x7e, 0x80, 0x7d,
+			0x7e, 0x7d, 0x7d, 0x7d, 0x7b, 0x7b, 0x7d, 0x7e, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x81, 0x83, 0x81, 0x82, 0x81, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7d, 0x7e, 0x7e, 0x7e, 0x7f, 0x80, 0x7e, 0x80, 0x80, 0x81, 0x80,
+			0x81, 0x82, 0x7e, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x7f,
+			0x7f, 0x7d, 0x7d, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x80,
+			0x7f, 0x80, 0x7f, 0x7e, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x7e, 0x80, 0x80, 0x82, 0x82, 0x82, 0x81, 0x81, 0x81, 0x80, 0x80,
+			0x80, 0x7f, 0x7e, 0x7e, 0x7c, 0x7f, 0x7f, 0x81, 0x81, 0x80, 0x7f,
+			0x82, 0x82, 0x80, 0x7d, 0x7e, 0x7f, 0x7e, 0x7e, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7f, 0x7d, 0x80, 0x7d, 0x7f, 0x7e, 0x7f, 0x80, 0x7e, 0x80, 0x82,
+			0x81, 0x80, 0x80, 0x7e, 0x80, 0x7f, 0x80, 0x81, 0x7f, 0x7e, 0x7f,
+			0x7f, 0x81, 0x7f, 0x7f, 0x7c, 0x7e, 0x7d, 0x7b, 0x7e, 0x7c, 0x7e,
+			0x7e, 0x7f, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x7d, 0x7e, 0x7d,
+			0x7e, 0x7f, 0x7e, 0x80, 0x81, 0x81, 0x81, 0x83, 0x80, 0x81, 0x80,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7e, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x80, 0x7f, 0x7f, 0x81, 0x7f,
+			0x81, 0x80, 0x81, 0x80, 0x81, 0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f,
+			0x7d, 0x7f, 0x80, 0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x80, 0x80,
+			0x80, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7d, 0x7e,
+			0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7e, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f,
+		},
+		{ // 1
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7f, 0x80, 0x80, 0x81, 0x81, 0x82, 0x82, 0x82, 0x80,
+			0x80, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x81, 0x81, 0x80, 0x80,
+			0x80, 0x81, 0x81, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x80, 0x7f, 0x7e,
+			0x7f, 0x80, 0x81, 0x82, 0x82, 0x81, 0x80, 0x7f, 0x7e, 0x79, 0x50,
+			0x36, 0x71, 0x90, 0x8d, 0xa6, 0x8b, 0x7b, 0x99, 0x8f, 0x7c, 0x6b,
+			0x65, 0x78, 0x88, 0x9b, 0x97, 0x85, 0x8c, 0x8f, 0x86, 0x7f, 0x6f,
+			0x66, 0x74, 0x84, 0x8a, 0x8b, 0x86, 0x83, 0x83, 0x81, 0x7e, 0x72,
+			0x6f, 0x79, 0x7d, 0x84, 0x87, 0x7f, 0x80, 0x81, 0x7e, 0x7b, 0x77,
+			0x7b, 0x81, 0x85, 0x85, 0x7e, 0x7c, 0x7d, 0x7f, 0x83, 0x84, 0x86,
+			0x87, 0x85, 0x82, 0x7c, 0x7a, 0x7c, 0x7e, 0x83, 0x87, 0x88, 0x87,
+			0x82, 0x7e, 0x7d, 0x7d, 0x7f, 0x80, 0x7f, 0x7f, 0x75, 0x4d, 0x41,
+			0x7c, 0x8a, 0x85, 0xa3, 0x81, 0x7e, 0xa2, 0x89, 0x78, 0x6f, 0x6a,
+			0x7a, 0x87, 0x95, 0x8b, 0x83, 0x94, 0x90, 0x86, 0x81, 0x6d, 0x69,
+			0x7c, 0x81, 0x82, 0x88, 0x84, 0x88, 0x89, 0x84, 0x7e, 0x73, 0x74,
+			0x78, 0x78, 0x81, 0x81, 0x81, 0x85, 0x80, 0x7e, 0x7d, 0x7c, 0x7d,
+			0x80, 0x81, 0x80, 0x81, 0x80, 0x7e, 0x80, 0x82, 0x84, 0x87, 0x85,
+			0x84, 0x81, 0x7e, 0x7c, 0x7d, 0x80, 0x84, 0x86, 0x85, 0x84, 0x83,
+			0x81, 0x80, 0x81, 0x7f, 0x7c, 0x5e, 0x2b, 0x56, 0x93, 0x7b, 0x9f,
+			0x9c, 0x6f, 0xa5, 0xa1, 0x78, 0x72, 0x61, 0x6e, 0x7f, 0x90, 0x90,
+			0x7e, 0x94, 0x9e, 0x8d, 0x89, 0x76, 0x61, 0x74, 0x7f, 0x77, 0x82,
+			0x83, 0x89, 0x93, 0x8a, 0x85, 0x76, 0x73, 0x77, 0x71, 0x79, 0x7d,
+			0x7d, 0x87, 0x88, 0x82, 0x7f, 0x7f, 0x79, 0x78, 0x7e, 0x7f, 0x83,
+			0x85, 0x80, 0x7f, 0x81, 0x82, 0x84, 0x87, 0x87, 0x86, 0x85, 0x7f,
+			0x7b, 0x7c, 0x7d, 0x82, 0x85, 0x86, 0x88, 0x86, 0x84, 0x81, 0x7d,
+			0x7b, 0x6c, 0x30, 0x3d, 0x8c, 0x78, 0x8d, 0xaa, 0x74, 0x9f, 0xb2,
+			0x81, 0x73, 0x63, 0x6d, 0x76, 0x81, 0x8b, 0x7a, 0x92, 0xab, 0x95,
+			0x8b, 0x82, 0x67, 0x72, 0x7b, 0x6a, 0x75, 0x7e, 0x8b, 0x96, 0x8d,
+			0x8d, 0x80, 0x7f, 0x7e, 0x6a, 0x6c, 0x72, 0x77, 0x84, 0x84, 0x82,
+			0x87, 0x88, 0x80, 0x7e, 0x7d, 0x7a, 0x7f, 0x7f, 0x7d, 0x80, 0x81,
+			0x83, 0x86, 0x87, 0x85, 0x86, 0x87, 0x81, 0x80, 0x7d, 0x7b, 0x7f,
+			0x81, 0x84, 0x88, 0x88, 0x86, 0x85, 0x7f, 0x79, 0x4c, 0x23, 0x6e,
+			0x81, 0x67, 0x9d, 0x86, 0x8d, 0xc3, 0x9c, 0x7e, 0x6f, 0x75, 0x7a,
+			0x69, 0x76, 0x70, 0x7d, 0xab, 0xa0, 0x8b, 0x97, 0x88, 0x82, 0x80,
+			0x63, 0x62, 0x6d, 0x7d, 0x85, 0x7c, 0x8f, 0x96, 0x95, 0x93, 0x76,
+			0x6f, 0x73, 0x71, 0x6f, 0x67, 0x71, 0x85, 0x8c, 0x8d, 0x8a, 0x8a,
+			0x8a, 0x84, 0x78, 0x71, 0x78, 0x7e, 0x7e, 0x81, 0x87, 0x8b, 0x8e,
+			0x89, 0x82, 0x83, 0x83, 0x7e, 0x7b, 0x7e, 0x80, 0x84, 0x87, 0x84,
+			0x86, 0x87, 0x7b, 0x3a, 0x34, 0x88, 0x60, 0x61, 0x91, 0x6f, 0xaa,
+			0xc0, 0x92, 0x8a, 0x88, 0x98, 0x75, 0x5f, 0x6c, 0x60, 0x82, 0x95,
+			0x76, 0x90, 0xa9, 0x9b, 0x99, 0x81, 0x78, 0x7c, 0x72, 0x6d, 0x59,
+			0x6e, 0x88, 0x85, 0x90, 0x89, 0x8d, 0x99, 0x89, 0x7a, 0x69, 0x69,
+			0x70, 0x6b, 0x6e, 0x7b, 0x8d, 0x91, 0x8d, 0x8b, 0x89, 0x89, 0x7f,
+			0x76, 0x79, 0x80, 0x82, 0x7f, 0x83, 0x87, 0x88, 0x85, 0x82, 0x84,
+			0x87, 0x85, 0x80, 0x84, 0x83, 0x83, 0x80, 0x81, 0x56, 0x28, 0x7b,
+			0x6d, 0x3e, 0x83, 0x6b, 0x8b, 0xbc, 0x94, 0x98, 0xa6, 0xb3, 0x8f,
+			0x6d, 0x7e, 0x66, 0x6c, 0x74, 0x52, 0x79, 0x9b, 0x89, 0x93, 0x93,
+			0x9d, 0xa4, 0x8d, 0x7d, 0x70, 0x7b, 0x73, 0x5e, 0x6b, 0x6d, 0x7d,
+			0x84, 0x74, 0x7f, 0x92, 0x8e, 0x83, 0x83, 0x84, 0x88, 0x84, 0x77,
+			0x7d, 0x84, 0x7c, 0x76, 0x7c, 0x82, 0x82, 0x81, 0x82, 0x8b, 0x90,
+			0x88, 0x83, 0x87, 0x87, 0x80, 0x7c, 0x7c, 0x81, 0x7f, 0x7b, 0x7d,
+			0x8a, 0x71, 0x3d, 0x76, 0x76, 0x44, 0x78, 0x58, 0x6a, 0xa4, 0x77,
+			0x88, 0xa5, 0xb0, 0xa8, 0x96, 0x9f, 0x8c, 0x96, 0x82, 0x56, 0x7a,
+			0x75, 0x63, 0x73, 0x67, 0x7e, 0x92, 0x85, 0x85, 0x94, 0x9d, 0x8c,
+			0x8c, 0x85, 0x7c, 0x87, 0x73, 0x69, 0x75, 0x6e, 0x69, 0x71, 0x73,
+			0x7d, 0x87, 0x82, 0x89, 0x96, 0x90, 0x8d, 0x8f, 0x8b, 0x8a, 0x83,
+			0x79, 0x7c, 0x7e, 0x75, 0x72, 0x78, 0x7e, 0x81, 0x7f, 0x82, 0x8b,
+			0x8c, 0x8a, 0x84, 0x89, 0x80, 0x5d, 0x74, 0x75, 0x56, 0x6d, 0x5f,
+			0x5e, 0x7b, 0x6e, 0x6f, 0x83, 0x8f, 0x8e, 0x93, 0x9a, 0x95, 0xa6,
+			0x9e, 0x8e, 0x9a, 0x90, 0x8a, 0x86, 0x7c, 0x7c, 0x7e, 0x79, 0x72,
+			0x79, 0x79, 0x74, 0x79, 0x77, 0x78, 0x7c, 0x77, 0x78, 0x80, 0x7f,
+			0x7f, 0x82, 0x83, 0x86, 0x88, 0x85, 0x87, 0x8a, 0x87, 0x82, 0x81,
+			0x80, 0x80, 0x7f, 0x79, 0x7a, 0x7e, 0x7b, 0x7b, 0x7b, 0x7b, 0x7e,
+			0x7f, 0x7e, 0x7d, 0x7f, 0x81, 0x80, 0x80, 0x7e, 0x7f, 0x82, 0x7e,
+			0x7d, 0x7d, 0x7c, 0x7d, 0x7a, 0x7a, 0x7c, 0x7c, 0x7c, 0x7b, 0x7c,
+			0x7f, 0x81, 0x80, 0x7e, 0x82, 0x85, 0x83, 0x86, 0x85, 0x85, 0x89,
+			0x88, 0x86, 0x87, 0x88, 0x88, 0x87, 0x86, 0x85, 0x85, 0x84, 0x81,
+			0x7f, 0x7d, 0x7c, 0x7b, 0x79, 0x79, 0x7b, 0x7c, 0x7d, 0x7b, 0x7c,
+			0x7e, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f,
+			0x80, 0x81, 0x7f, 0x80, 0x82, 0x82, 0x81, 0x7e, 0x7d, 0x7d, 0x7a,
+			0x77, 0x76, 0x78, 0x79, 0x78, 0x7b, 0x7e, 0x80, 0x83, 0x81, 0x82,
+			0x84, 0x83, 0x83, 0x83, 0x84, 0x86, 0x87, 0x87, 0x89, 0x8a, 0x88,
+			0x88, 0x88, 0x86, 0x86, 0x83, 0x80, 0x80, 0x7f, 0x7e, 0x7d, 0x7c,
+			0x7c, 0x7c, 0x7c, 0x7a, 0x7b, 0x7b, 0x7a, 0x7b, 0x7b, 0x7c, 0x7d,
+			0x7d, 0x7e, 0x7f, 0x80, 0x80, 0x81, 0x82, 0x83, 0x84, 0x84, 0x83,
+			0x83, 0x80, 0x7e, 0x7d, 0x7a, 0x78, 0x77, 0x77, 0x79, 0x79, 0x7b,
+			0x7d, 0x7f, 0x81, 0x80, 0x81, 0x82, 0x81, 0x81, 0x80, 0x81, 0x82,
+			0x82, 0x84, 0x87, 0x88, 0x8a, 0x89, 0x87, 0x87, 0x86, 0x84, 0x83,
+			0x81, 0x7f, 0x80, 0x7f, 0x7c, 0x7d, 0x7c, 0x7c, 0x7c, 0x7a, 0x7b,
+			0x7c, 0x7b, 0x7c, 0x7c, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x80,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x7e, 0x80, 0x82, 0x81, 0x81, 0x7f,
+			0x7d, 0x7e, 0x7b, 0x7a, 0x7b, 0x7b, 0x7b, 0x7b, 0x7c, 0x7d, 0x7e,
+			0x7f, 0x7e, 0x7f, 0x81, 0x83, 0x85, 0x85, 0x86, 0x87, 0x89, 0x87,
+			0x86, 0x85, 0x84, 0x83, 0x82, 0x80, 0x7f, 0x81, 0x81, 0x81, 0x80,
+			0x7f, 0x80, 0x80, 0x7e, 0x7d, 0x7c, 0x7b, 0x7a, 0x79, 0x79, 0x79,
+			0x7c, 0x7c, 0x7c, 0x7e, 0x7f, 0x81, 0x81, 0x80, 0x81, 0x83, 0x82,
+			0x81, 0x81, 0x81, 0x81, 0x82, 0x7f, 0x7e, 0x7e, 0x7c, 0x79, 0x78,
+			0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7f, 0x81, 0x80, 0x80, 0x82, 0x83,
+			0x83, 0x82, 0x81, 0x83, 0x85, 0x85, 0x85, 0x85, 0x84, 0x86, 0x85,
+			0x83, 0x83, 0x83, 0x82, 0x81, 0x7f, 0x7f, 0x7e, 0x7c, 0x7d, 0x7c,
+			0x7b, 0x7c, 0x7b, 0x7b, 0x7c, 0x7d, 0x7d, 0x7e, 0x7f, 0x80, 0x81,
+			0x81, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x80,
+			0x81, 0x82, 0x81, 0x80, 0x7f, 0x7e, 0x7c, 0x7c, 0x7a, 0x7a, 0x7b,
+			0x7c, 0x7c, 0x7c, 0x7c, 0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x82, 0x84,
+			0x85, 0x85, 0x85, 0x86, 0x86, 0x85, 0x84, 0x82, 0x82, 0x82, 0x7f,
+			0x80, 0x80, 0x80, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7d, 0x7d,
+			0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7e, 0x7e, 0x7e, 0x7f, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x81, 0x80, 0x80, 0x81, 0x81, 0x80, 0x7e,
+			0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e,
+			0x7f, 0x7e, 0x7d, 0x7c, 0x7d, 0x7e, 0x7e, 0x7e, 0x7e, 0x80, 0x81,
+			0x80, 0x81, 0x82, 0x83, 0x84, 0x83, 0x83, 0x84, 0x85, 0x84, 0x83,
+			0x83, 0x83, 0x82, 0x81, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7c, 0x7d, 0x7c, 0x7c, 0x7e,
+			0x7e, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x81,
+			0x81, 0x82, 0x82, 0x80, 0x7f, 0x7f, 0x7f, 0x7d, 0x7d, 0x7c, 0x7c,
+			0x7c, 0x7a, 0x7b, 0x7c, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x82, 0x81,
+			0x82, 0x83, 0x83, 0x83, 0x82, 0x82, 0x81, 0x81, 0x81, 0x82, 0x82,
+			0x82, 0x82, 0x82, 0x82, 0x81, 0x82, 0x82, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x7c, 0x7c, 0x7d, 0x7e, 0x7d, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x80, 0x7d, 0x7e, 0x7f, 0x7d, 0x80, 0x80, 0x80, 0x81, 0x81, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7d, 0x7d, 0x7f, 0x7d, 0x7c, 0x7e, 0x7c,
+			0x7e, 0x7d, 0x7b, 0x7e, 0x7e, 0x7d, 0x7e, 0x7e, 0x80, 0x81, 0x80,
+			0x80, 0x82, 0x82, 0x82, 0x82, 0x82, 0x83, 0x83, 0x81, 0x81, 0x81,
+			0x82, 0x82, 0x82, 0x82, 0x80, 0x81, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7e, 0x7d,
+			0x80, 0x7e, 0x7e, 0x81, 0x7d, 0x7f, 0x80, 0x7d, 0x7f, 0x7f, 0x7d,
+			0x80, 0x7f, 0x80, 0x82, 0x7e, 0x7f, 0x83, 0x7e, 0x7e, 0x80, 0x79,
+			0x7e, 0x7b, 0x76, 0x7d, 0x79, 0x7b, 0x7f, 0x7c, 0x83, 0x82, 0x80,
+			0x85, 0x83, 0x84, 0x83, 0x81, 0x83, 0x83, 0x82, 0x81, 0x83, 0x82,
+			0x82, 0x83, 0x7f, 0x84, 0x81, 0x7f, 0x82, 0x7f, 0x81, 0x7e, 0x7e,
+			0x7f, 0x80, 0x7c, 0x7f, 0x7e, 0x7d, 0x80, 0x7d, 0x81, 0x80, 0x7e,
+			0x80, 0x81, 0x7c, 0x83, 0x7b, 0x7e, 0x80, 0x7c, 0x7f, 0x7d, 0x81,
+			0x7e, 0x85, 0x80, 0x7b, 0x83, 0x80, 0x76, 0x7f, 0x78, 0x77, 0x80,
+			0x70, 0x7d, 0x7f, 0x78, 0x84, 0x7d, 0x7f, 0x89, 0x7f, 0x81, 0x85,
+			0x82, 0x85, 0x81, 0x82, 0x86, 0x86, 0x83, 0x82, 0x87, 0x83, 0x82,
+			0x80, 0x7f, 0x82, 0x80, 0x7b, 0x7e, 0x81, 0x7d, 0x7c, 0x7c, 0x7f,
+			0x7c, 0x7c, 0x7f, 0x7f, 0x81, 0x82, 0x7f, 0x83, 0x83, 0x7e, 0x83,
+			0x7f, 0x81, 0x7f, 0x7f, 0x81, 0x81, 0x7f, 0x81, 0x84, 0x80, 0x86,
+			0x73, 0x7c, 0x84, 0x6f, 0x7b, 0x77, 0x70, 0x82, 0x72, 0x70, 0x86,
+			0x75, 0x7f, 0x7e, 0x77, 0x89, 0x81, 0x7e, 0x87, 0x87, 0x8b, 0x89,
+			0x86, 0x8d, 0x8b, 0x88, 0x84, 0x85, 0x85, 0x82, 0x7f, 0x7a, 0x83,
+			0x7d, 0x7b, 0x7e, 0x7a, 0x7d, 0x79, 0x77, 0x7b, 0x7b, 0x79, 0x7c,
+			0x7f, 0x81, 0x81, 0x82, 0x83, 0x87, 0x86, 0x81, 0x87, 0x85, 0x81,
+			0x84, 0x82, 0x7f, 0x85, 0x7f, 0x7e, 0x81, 0x71, 0x7e, 0x7b, 0x6c,
+			0x7d, 0x70, 0x73, 0x7d, 0x68, 0x78, 0x7b, 0x70, 0x81, 0x75, 0x7d,
+			0x8a, 0x7d, 0x89, 0x8b, 0x8c, 0x93, 0x8d, 0x8f, 0x92, 0x8f, 0x8a,
+			0x86, 0x87, 0x83, 0x80, 0x7c, 0x7b, 0x7e, 0x78, 0x77, 0x78, 0x78,
+			0x78, 0x76, 0x76, 0x7a, 0x79, 0x7b, 0x7f, 0x7f, 0x85, 0x82, 0x84,
+			0x88, 0x84, 0x87, 0x88, 0x89, 0x87, 0x8a, 0x85, 0x86, 0x87, 0x7e,
+			0x85, 0x73, 0x76, 0x81, 0x67, 0x70, 0x72, 0x62, 0x76, 0x68, 0x63,
+			0x7e, 0x6b, 0x76, 0x7e, 0x76, 0x8d, 0x85, 0x85, 0x93, 0x90, 0x96,
+			0x93, 0x92, 0x98, 0x94, 0x92, 0x8d, 0x8d, 0x8d, 0x82, 0x83, 0x7c,
+			0x7b, 0x7a, 0x6e, 0x72, 0x72, 0x6d, 0x6e, 0x6d, 0x71, 0x75, 0x75,
+			0x7a, 0x83, 0x84, 0x8b, 0x8e, 0x8e, 0x94, 0x8d, 0x8c, 0x8e, 0x8b,
+			0x87, 0x85, 0x83, 0x80, 0x81, 0x70, 0x71, 0x7f, 0x66, 0x6c, 0x71,
+			0x5e, 0x75, 0x67, 0x5e, 0x7e, 0x6c, 0x74, 0x80, 0x76, 0x90, 0x8a,
+			0x85, 0x97, 0x95, 0x99, 0x98, 0x94, 0x9c, 0x99, 0x95, 0x8e, 0x91,
+			0x92, 0x83, 0x82, 0x7b, 0x7a, 0x76, 0x67, 0x6e, 0x6e, 0x6a, 0x6a,
+			0x6b, 0x73, 0x76, 0x76, 0x7b, 0x89, 0x89, 0x8b, 0x90, 0x93, 0x96,
+			0x8f, 0x90, 0x8f, 0x8d, 0x87, 0x84, 0x83, 0x81, 0x76, 0x6b, 0x7e,
+			0x6c, 0x63, 0x71, 0x5c, 0x6d, 0x6c, 0x56, 0x71, 0x70, 0x6d, 0x7c,
+			0x76, 0x87, 0x92, 0x87, 0x95, 0x9a, 0x9f, 0x9e, 0x9a, 0xa2, 0x9e,
+			0x9d, 0x94, 0x8f, 0x96, 0x87, 0x7e, 0x7d, 0x7a, 0x74, 0x69, 0x69,
+			0x6b, 0x6b, 0x66, 0x69, 0x72, 0x74, 0x76, 0x7b, 0x87, 0x8a, 0x8c,
+			0x90, 0x95, 0x97, 0x93, 0x92, 0x92, 0x91, 0x8a, 0x86, 0x84, 0x83,
+			0x75, 0x68, 0x7c, 0x69, 0x5e, 0x6f, 0x56, 0x67, 0x6a, 0x53, 0x6f,
+			0x71, 0x6b, 0x7c, 0x7a, 0x8a, 0x95, 0x8f, 0x99, 0xa1, 0xa8, 0xa2,
+			0x9e, 0xa8, 0x9e, 0x9d, 0x96, 0x8a, 0x92, 0x83, 0x74, 0x79, 0x70,
+			0x67, 0x66, 0x61, 0x63, 0x68, 0x64, 0x6b, 0x78, 0x78, 0x7e, 0x8a,
+			0x90, 0x95, 0x98, 0x98, 0x9d, 0x9c, 0x95, 0x95, 0x94, 0x8b, 0x85,
+			0x82, 0x7b, 0x7b, 0x66, 0x5f, 0x72, 0x55, 0x54, 0x64, 0x50, 0x63,
+			0x61, 0x59, 0x75, 0x75, 0x7a, 0x85, 0x8f, 0x9e, 0x9b, 0xa2, 0xa9,
+			0xa9, 0xb3, 0xa2, 0xa1, 0xab, 0x96, 0x91, 0x8a, 0x7f, 0x81, 0x70,
+			0x65, 0x67, 0x67, 0x5b, 0x58, 0x64, 0x65, 0x67, 0x6e, 0x78, 0x84,
+			0x88, 0x8b, 0x95, 0x9f, 0x9c, 0x9e, 0xa2, 0xa0, 0x9b, 0x92, 0x90,
+			0x8c, 0x85, 0x7d, 0x7b, 0x78, 0x73, 0x70, 0x55, 0x60, 0x6f, 0x48,
+			0x53, 0x63, 0x51, 0x62, 0x61, 0x62, 0x7c, 0x81, 0x83, 0x8b, 0xa2,
+			0xa9, 0x9c, 0xae, 0xb1, 0xab, 0xb2, 0x9f, 0x9e, 0xa3, 0x8d, 0x83,
+			0x7e, 0x7b, 0x72, 0x64, 0x65, 0x62, 0x63, 0x5d, 0x5a, 0x69, 0x6e,
+			0x6c, 0x74, 0x83, 0x88, 0x8a, 0x91, 0x98, 0x9f, 0x9d, 0x9b, 0x9e,
+			0x9e, 0x94, 0x8e, 0x8f, 0x89, 0x81, 0x7e, 0x7c, 0x79, 0x75, 0x74,
+			0x6b, 0x56, 0x67, 0x68, 0x44, 0x5a, 0x62, 0x51, 0x5f, 0x63, 0x6c,
+			0x7a, 0x84, 0x8b, 0x91, 0xab, 0xab, 0x9e, 0xb4, 0xb4, 0xa9, 0xad,
+			0xa1, 0x9c, 0x95, 0x88, 0x7f, 0x76, 0x7a, 0x6e, 0x61, 0x6a, 0x65,
+			0x60, 0x64, 0x63, 0x67, 0x70, 0x71, 0x72, 0x80, 0x88, 0x87, 0x8e,
+			0x98, 0x9a, 0x99, 0x9d, 0x9c, 0x9b, 0x99, 0x90, 0x8d, 0x8b, 0x84,
+			0x7d, 0x7f, 0x7c, 0x77, 0x75, 0x75, 0x6f, 0x58, 0x60, 0x68, 0x4c,
+			0x52, 0x5f, 0x56, 0x5b, 0x63, 0x6e, 0x76, 0x84, 0x93, 0x91, 0xa5,
+			0xb2, 0xa5, 0xad, 0xb4, 0xaf, 0xaa, 0xa0, 0x9c, 0x91, 0x88, 0x83,
+			0x74, 0x75, 0x72, 0x65, 0x65, 0x66, 0x67, 0x62, 0x63, 0x6a, 0x6a,
+			0x6d, 0x71, 0x77, 0x80, 0x86, 0x89, 0x8f, 0x97, 0x99, 0x9a, 0x9b,
+			0x9d, 0x9a, 0x96, 0x93, 0x8d, 0x89, 0x83, 0x7e, 0x7c, 0x7a, 0x76,
+			0x73, 0x73, 0x73, 0x72, 0x61, 0x58, 0x65, 0x5d, 0x50, 0x59, 0x5f,
+			0x61, 0x61, 0x6b, 0x79, 0x7f, 0x8e, 0x97, 0x9d, 0xaa, 0xac, 0xab,
+			0xab, 0xad, 0xaf, 0xa0, 0x97, 0x93, 0x89, 0x82, 0x78, 0x72, 0x71,
+			0x6b, 0x67, 0x63, 0x64, 0x6a, 0x69, 0x68, 0x6a, 0x6f, 0x72, 0x74,
+			0x7a, 0x82, 0x87, 0x8b, 0x8e, 0x92, 0x97, 0x97, 0x97, 0x95, 0x94,
+			0x92, 0x8c, 0x88, 0x85, 0x82, 0x7c, 0x77, 0x76, 0x74, 0x73, 0x73,
+			0x73, 0x74, 0x75, 0x74, 0x6b, 0x66, 0x6b, 0x6b, 0x65, 0x62, 0x67,
+			0x6d, 0x6b, 0x71, 0x7c, 0x81, 0x89, 0x94, 0x99, 0x99, 0x9c, 0xa1,
+			0x9d, 0x9a, 0x9c, 0x96, 0x8e, 0x8a, 0x87, 0x82, 0x7d, 0x7d, 0x79,
+			0x74, 0x74, 0x73, 0x72, 0x74, 0x75, 0x75, 0x76, 0x76, 0x77, 0x78,
+			0x78, 0x79, 0x7b, 0x7e, 0x7f, 0x81, 0x84, 0x86, 0x88, 0x89, 0x89,
+			0x88, 0x87, 0x88, 0x85, 0x83, 0x82, 0x81, 0x7f, 0x7f, 0x7e, 0x7f,
+			0x80, 0x82, 0x82, 0x82, 0x83, 0x82, 0x81, 0x7a, 0x6f, 0x6c, 0x6f,
+			0x68, 0x60, 0x65, 0x68, 0x64, 0x69, 0x72, 0x74, 0x77, 0x83, 0x8a,
+			0x88, 0x8e, 0x95, 0x96, 0x99, 0x9c, 0x9b, 0x96, 0x95, 0x94, 0x90,
+			0x8d, 0x8a, 0x86, 0x85, 0x81, 0x7d, 0x7c, 0x79, 0x73, 0x71, 0x71,
+			0x6d, 0x6a, 0x6c, 0x6d, 0x6c, 0x6f, 0x72, 0x74, 0x77, 0x7c, 0x80,
+			0x82, 0x85, 0x88, 0x8b, 0x8d, 0x8e, 0x8f, 0x8f, 0x8e, 0x8e, 0x8d,
+			0x8b, 0x89, 0x87, 0x85, 0x82, 0x80, 0x7f, 0x7c, 0x7a, 0x79, 0x78,
+			0x78, 0x75, 0x6f, 0x69, 0x6c, 0x6d, 0x64, 0x65, 0x6b, 0x68, 0x69,
+			0x73, 0x78, 0x79, 0x82, 0x8a, 0x88, 0x8d, 0x94, 0x95, 0x96, 0x99,
+			0x99, 0x98, 0x96, 0x93, 0x90, 0x8f, 0x8b, 0x86, 0x85, 0x81, 0x7c,
+			0x7b, 0x7a, 0x76, 0x73, 0x74, 0x72, 0x6f, 0x71, 0x71, 0x70, 0x70,
+			0x73, 0x73, 0x74, 0x78, 0x7b, 0x7d, 0x7f, 0x82, 0x84, 0x86, 0x88,
+			0x89, 0x8a, 0x8a, 0x8b, 0x8b, 0x8b, 0x8b, 0x8b, 0x8a, 0x88, 0x87,
+			0x87, 0x85, 0x83, 0x82, 0x81, 0x80, 0x7e, 0x7b, 0x78, 0x76, 0x70,
+			0x66, 0x67, 0x68, 0x5f, 0x60, 0x66, 0x64, 0x65, 0x6f, 0x76, 0x78,
+			0x82, 0x8b, 0x8c, 0x91, 0x98, 0x9a, 0x9c, 0x9d, 0x9c, 0x9c, 0x9a,
+			0x95, 0x92, 0x90, 0x8a, 0x86, 0x84, 0x7f, 0x79, 0x76, 0x74, 0x70,
+			0x6d, 0x6c, 0x6b, 0x6b, 0x6c, 0x6c, 0x6e, 0x70, 0x74, 0x77, 0x7a,
+			0x7e, 0x83, 0x86, 0x87, 0x89, 0x8c, 0x8d, 0x8d, 0x8d, 0x8d, 0x8b,
+			0x8a, 0x89, 0x86, 0x85, 0x83, 0x80, 0x7f, 0x7d, 0x7b, 0x7b, 0x7b,
+			0x79, 0x7a, 0x7b, 0x7a, 0x7c, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7e,
+			0x7c, 0x75, 0x75, 0x79, 0x72, 0x6f, 0x73, 0x73, 0x70, 0x75, 0x7a,
+			0x7a, 0x7e, 0x84, 0x85, 0x87, 0x8b, 0x8d, 0x8f, 0x90, 0x8f, 0x90,
+			0x90, 0x8c, 0x8b, 0x8c, 0x89, 0x85, 0x86, 0x84, 0x80, 0x7e, 0x7e,
+			0x7c, 0x79, 0x78, 0x77, 0x75, 0x74, 0x75, 0x76, 0x74, 0x74, 0x78,
+			0x78, 0x78, 0x7b, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x83, 0x84, 0x84,
+			0x85, 0x85, 0x85, 0x87, 0x86, 0x86, 0x86, 0x86, 0x84, 0x84, 0x83,
+			0x82, 0x81, 0x80, 0x7e, 0x7f, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d,
+			0x7e, 0x7e, 0x7c, 0x7b, 0x7b, 0x77, 0x70, 0x71, 0x73, 0x6f, 0x6d,
+			0x72, 0x73, 0x74, 0x79, 0x7e, 0x81, 0x86, 0x8a, 0x8b, 0x8e, 0x8f,
+			0x91, 0x92, 0x91, 0x8f, 0x8f, 0x8d, 0x89, 0x88, 0x87, 0x82, 0x80,
+			0x7f, 0x7d, 0x7b, 0x79, 0x78, 0x77, 0x76, 0x75, 0x75, 0x76, 0x76,
+			0x77, 0x78, 0x79, 0x7c, 0x7d, 0x7e, 0x81, 0x82, 0x83, 0x84, 0x85,
+			0x84, 0x84, 0x84, 0x82, 0x81, 0x81, 0x80, 0x80, 0x7f, 0x7e, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x80, 0x80,
+			0x81, 0x81, 0x81, 0x81, 0x81, 0x82, 0x82, 0x82, 0x82, 0x82, 0x81,
+			0x80, 0x7e, 0x7c, 0x77, 0x74, 0x74, 0x71, 0x6f, 0x70, 0x70, 0x71,
+			0x74, 0x78, 0x7c, 0x7f, 0x84, 0x87, 0x8a, 0x8c, 0x8e, 0x90, 0x90,
+			0x90, 0x8f, 0x8e, 0x8c, 0x8a, 0x89, 0x87, 0x84, 0x82, 0x7f, 0x7e,
+			0x7b, 0x79, 0x78, 0x76, 0x74, 0x73, 0x73, 0x73, 0x75, 0x76, 0x76,
+			0x79, 0x7c, 0x7c, 0x7f, 0x81, 0x83, 0x85, 0x85, 0x85, 0x87, 0x86,
+			0x86, 0x86, 0x84, 0x83, 0x83, 0x81, 0x80, 0x7f, 0x7e, 0x7d, 0x7c,
+			0x7d, 0x7d, 0x7c, 0x7d, 0x7e, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x82,
+			0x83, 0x84, 0x84, 0x83, 0x82, 0x82, 0x81, 0x7e, 0x7c, 0x77, 0x73,
+			0x74, 0x71, 0x6e, 0x6f, 0x70, 0x71, 0x75, 0x79, 0x7c, 0x80, 0x85,
+			0x88, 0x8b, 0x8c, 0x8e, 0x90, 0x8f, 0x8f, 0x8e, 0x8c, 0x8a, 0x88,
+			0x87, 0x84, 0x82, 0x80, 0x7e, 0x7d, 0x7a, 0x79, 0x79, 0x77, 0x76,
+			0x76, 0x76, 0x76, 0x78, 0x79, 0x79, 0x7b, 0x7e, 0x7f, 0x80, 0x81,
+			0x82, 0x84, 0x84, 0x84, 0x85, 0x84, 0x84, 0x84, 0x81, 0x81, 0x81,
+			0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x81, 0x82, 0x82, 0x82, 0x83, 0x84, 0x84, 0x83,
+			0x83, 0x83, 0x82, 0x80, 0x7d, 0x7b, 0x79, 0x75, 0x73, 0x72, 0x70,
+			0x6f, 0x6f, 0x71, 0x72, 0x75, 0x79, 0x7c, 0x81, 0x84, 0x87, 0x8a,
+			0x8d, 0x8f, 0x91, 0x91, 0x91, 0x91, 0x90, 0x8e, 0x8c, 0x8a, 0x87,
+			0x85, 0x82, 0x7f, 0x7c, 0x7a, 0x78, 0x77, 0x75, 0x75, 0x74, 0x74,
+			0x74, 0x76, 0x77, 0x78, 0x7a, 0x7b, 0x7d, 0x80, 0x81, 0x83, 0x85,
+			0x86, 0x86, 0x86, 0x86, 0x85, 0x85, 0x84, 0x83, 0x82, 0x81, 0x80,
+			0x7f, 0x7e, 0x7d, 0x7e, 0x7d, 0x7e, 0x7e, 0x7e, 0x80, 0x80, 0x80,
+			0x81, 0x81, 0x82, 0x82, 0x82, 0x81, 0x81, 0x81, 0x80, 0x7f, 0x7d,
+			0x7b, 0x7b, 0x79, 0x75, 0x74, 0x74, 0x72, 0x71, 0x72, 0x74, 0x75,
+			0x79, 0x7d, 0x80, 0x84, 0x87, 0x8b, 0x8e, 0x8f, 0x91, 0x92, 0x91,
+			0x90, 0x8f, 0x8d, 0x8b, 0x88, 0x86, 0x82, 0x80, 0x7e, 0x7b, 0x7a,
+			0x78, 0x77, 0x76, 0x75, 0x75, 0x76, 0x76, 0x77, 0x78, 0x79, 0x7a,
+			0x7c, 0x7e, 0x7f, 0x81, 0x83, 0x84, 0x85, 0x86, 0x87, 0x86, 0x86,
+			0x85, 0x84, 0x82, 0x81, 0x80, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x80, 0x80, 0x81, 0x82, 0x82, 0x82,
+			0x83, 0x83, 0x82, 0x83, 0x82, 0x81, 0x81, 0x80, 0x80, 0x7e, 0x7c,
+			0x7b, 0x78, 0x73, 0x72, 0x73, 0x70, 0x6e, 0x70, 0x72, 0x73, 0x77,
+			0x7c, 0x7f, 0x83, 0x88, 0x8c, 0x8f, 0x90, 0x92, 0x94, 0x93, 0x92,
+			0x91, 0x8f, 0x8d, 0x8a, 0x88, 0x85, 0x82, 0x7f, 0x7e, 0x7c, 0x79,
+			0x78, 0x77, 0x75, 0x74, 0x74, 0x74, 0x74, 0x75, 0x76, 0x77, 0x78,
+			0x7a, 0x7d, 0x7e, 0x80, 0x82, 0x84, 0x85, 0x85, 0x86, 0x86, 0x86,
+			0x85, 0x85, 0x84, 0x83, 0x83, 0x82, 0x81, 0x81, 0x80, 0x80, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7f, 0x7e, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7d, 0x7d, 0x7e, 0x7e, 0x7c, 0x7a, 0x7a, 0x7b, 0x79, 0x79, 0x7a,
+			0x7a, 0x7a, 0x7c, 0x7e, 0x7f, 0x81, 0x83, 0x86, 0x88, 0x89, 0x8b,
+			0x8c, 0x8c, 0x8c, 0x8b, 0x8b, 0x89, 0x87, 0x86, 0x84, 0x82, 0x80,
+			0x7f, 0x7d, 0x7b, 0x7a, 0x79, 0x78, 0x77, 0x77, 0x77, 0x78, 0x79,
+			0x79, 0x7b, 0x7c, 0x7e, 0x80, 0x81, 0x82, 0x83, 0x84, 0x84, 0x84,
+			0x84, 0x84, 0x83, 0x82, 0x81, 0x81, 0x7f, 0x7f, 0x7e, 0x7d, 0x7c,
+			0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x81, 0x81,
+			0x82, 0x83, 0x83, 0x84, 0x84, 0x84, 0x84, 0x84, 0x83, 0x83, 0x83,
+			0x82, 0x81, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80,
+		},
+		{ // 2
+			0x80, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x7f, 0x7d, 0x7c, 0x80, 0x81, 0x7e, 0x7c, 0x7c, 0x7f,
+			0x83, 0x85, 0x86, 0x88, 0x88, 0x85, 0x81, 0x7e, 0x7d, 0x7d, 0x7c,
+			0x7a, 0x7a, 0x7b, 0x7c, 0x7e, 0x7f, 0x80, 0x81, 0x81, 0x81, 0x80,
+			0x82, 0x81, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x7e, 0x7e, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x82, 0x81, 0x80, 0x80, 0x80,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7e, 0x7e, 0x7f, 0x80, 0x80,
+			0x80, 0x81, 0x81, 0x82, 0x81, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7e,
+			0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x81, 0x82, 0x82, 0x80, 0x7f, 0x81,
+			0x82, 0x81, 0x7f, 0x7e, 0x7f, 0x81, 0x80, 0x7f, 0x7e, 0x7f, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x81, 0x82, 0x81, 0x81, 0x80, 0x80, 0x7f, 0x7e, 0x7c, 0x7b,
+			0x7b, 0x79, 0x78, 0x6d, 0x69, 0x76, 0x76, 0x75, 0x7b, 0x7d, 0x85,
+			0x8c, 0x94, 0x92, 0x8d, 0x95, 0x95, 0x8d, 0x89, 0x81, 0x7a, 0x78,
+			0x76, 0x75, 0x6f, 0x71, 0x75, 0x78, 0x80, 0x82, 0x85, 0x89, 0x8e,
+			0x8e, 0x8a, 0x89, 0x84, 0x81, 0x7e, 0x7a, 0x77, 0x77, 0x7a, 0x7a,
+			0x7d, 0x80, 0x82, 0x86, 0x88, 0x8a, 0x87, 0x86, 0x87, 0x84, 0x82,
+			0x80, 0x7e, 0x7e, 0x7f, 0x7e, 0x57, 0x2e, 0x5c, 0x6e, 0x54, 0x65,
+			0x64, 0x6e, 0x8c, 0xac, 0xb6, 0x94, 0xa1, 0xbf, 0xac, 0x9d, 0x94,
+			0x75, 0x65, 0x71, 0x74, 0x60, 0x4d, 0x66, 0x78, 0x7a, 0x95, 0x94,
+			0x8a, 0x97, 0xa8, 0xa5, 0x8c, 0x84, 0x7c, 0x6c, 0x6b, 0x65, 0x57,
+			0x55, 0x67, 0x75, 0x7b, 0x88, 0x90, 0x93, 0x9e, 0xa3, 0x98, 0x8d,
+			0x89, 0x81, 0x79, 0x77, 0x6f, 0x68, 0x6e, 0x78, 0x79, 0x7e, 0x86,
+			0x8a, 0x8e, 0x96, 0x95, 0x8f, 0x8d, 0x8b, 0x6a, 0x32, 0x44, 0x5e,
+			0x45, 0x56, 0x5e, 0x5a, 0x76, 0x9a, 0xc0, 0xaf, 0xa5, 0xbf, 0xb4,
+			0xa8, 0xa9, 0x8b, 0x64, 0x5b, 0x64, 0x66, 0x53, 0x55, 0x68, 0x65,
+			0x85, 0xa5, 0x9b, 0x9a, 0x9c, 0xa7, 0xa4, 0x94, 0x8d, 0x6c, 0x59,
+			0x61, 0x5c, 0x56, 0x55, 0x61, 0x6c, 0x82, 0x9f, 0x9d, 0x99, 0xa0,
+			0xa0, 0x9b, 0x95, 0x8b, 0x73, 0x6c, 0x71, 0x6d, 0x6c, 0x6d, 0x6f,
+			0x74, 0x82, 0x92, 0x91, 0x93, 0x97, 0x93, 0x93, 0x90, 0x84, 0x53,
+			0x2b, 0x4d, 0x52, 0x49, 0x63, 0x5b, 0x5e, 0x7b, 0xa5, 0xc4, 0xb0,
+			0xb0, 0xba, 0xa4, 0xa4, 0xa9, 0x87, 0x62, 0x56, 0x5a, 0x5f, 0x59,
+			0x67, 0x6c, 0x61, 0x86, 0xa2, 0xa3, 0xa6, 0x9f, 0x9d, 0x93, 0x8f,
+			0x94, 0x71, 0x58, 0x56, 0x4e, 0x55, 0x63, 0x70, 0x6e, 0x7a, 0x97,
+			0x9c, 0xa4, 0xa8, 0x99, 0x8c, 0x8a, 0x8a, 0x7c, 0x72, 0x6e, 0x62,
+			0x67, 0x75, 0x7b, 0x7c, 0x82, 0x8a, 0x8c, 0x97, 0x9f, 0x95, 0x8f,
+			0x86, 0x7b, 0x54, 0x35, 0x4e, 0x47, 0x45, 0x65, 0x62, 0x67, 0x7c,
+			0x9c, 0xb9, 0xb3, 0xbc, 0xbc, 0x9e, 0x98, 0x9d, 0x87, 0x6e, 0x62,
+			0x58, 0x53, 0x54, 0x6b, 0x79, 0x6f, 0x87, 0x97, 0x95, 0xa5, 0xa8,
+			0xa2, 0x91, 0x85, 0x85, 0x71, 0x63, 0x64, 0x54, 0x4b, 0x58, 0x68,
+			0x73, 0x84, 0x97, 0x95, 0x96, 0xa4, 0x9e, 0x94, 0x90, 0x85, 0x75,
+			0x72, 0x76, 0x6e, 0x6d, 0x75, 0x73, 0x77, 0x85, 0x8c, 0x8d, 0x91,
+			0x96, 0x8f, 0x8d, 0x8b, 0x80, 0x62, 0x3b, 0x42, 0x48, 0x42, 0x64,
+			0x6c, 0x66, 0x77, 0x89, 0xa7, 0xb4, 0xbf, 0xc7, 0xa9, 0x95, 0x95,
+			0x86, 0x78, 0x74, 0x66, 0x54, 0x4f, 0x5b, 0x6f, 0x77, 0x8a, 0x9a,
+			0x8d, 0x94, 0xa0, 0x9d, 0x9e, 0x96, 0x8a, 0x74, 0x60, 0x62, 0x5b,
+			0x59, 0x61, 0x60, 0x66, 0x75, 0x8a, 0x97, 0x9c, 0xa3, 0x99, 0x8f,
+			0x90, 0x89, 0x83, 0x7f, 0x77, 0x6e, 0x6b, 0x73, 0x77, 0x7d, 0x86,
+			0x85, 0x87, 0x8c, 0x91, 0x93, 0x93, 0x8d, 0x80, 0x67, 0x42, 0x40,
+			0x48, 0x43, 0x60, 0x6d, 0x68, 0x77, 0x83, 0x9d, 0xb0, 0xbc, 0xc8,
+			0xb1, 0x9a, 0x95, 0x84, 0x78, 0x79, 0x6f, 0x5e, 0x56, 0x58, 0x64,
+			0x70, 0x86, 0x9b, 0x94, 0x96, 0x9d, 0x92, 0x96, 0x98, 0x8f, 0x80,
+			0x6b, 0x62, 0x57, 0x53, 0x62, 0x65, 0x6b, 0x79, 0x80, 0x8a, 0x97,
+			0xa3, 0xa3, 0x99, 0x94, 0x86, 0x7d, 0x80, 0x7b, 0x78, 0x76, 0x72,
+			0x71, 0x78, 0x82, 0x87, 0x8b, 0x8f, 0x8d, 0x8d, 0x8f, 0x8b, 0x84,
+			0x71, 0x4d, 0x41, 0x42, 0x3d, 0x58, 0x6f, 0x73, 0x80, 0x86, 0x92,
+			0xa3, 0xb1, 0xc5, 0xbe, 0xa8, 0x9b, 0x81, 0x6e, 0x70, 0x70, 0x69,
+			0x67, 0x62, 0x60, 0x66, 0x78, 0x91, 0x9a, 0xa0, 0xa4, 0x93, 0x8c,
+			0x8e, 0x86, 0x83, 0x7d, 0x71, 0x61, 0x54, 0x58, 0x5c, 0x69, 0x80,
+			0x89, 0x8f, 0x96, 0x94, 0x96, 0x97, 0x97, 0x8f, 0x85, 0x7f, 0x74,
+			0x72, 0x77, 0x77, 0x7c, 0x80, 0x7f, 0x81, 0x85, 0x8b, 0x8f, 0x92,
+			0x93, 0x8a, 0x7b, 0x5f, 0x44, 0x44, 0x41, 0x4a, 0x69, 0x70, 0x78,
+			0x86, 0x8a, 0x98, 0xa6, 0xb6, 0xbe, 0xb2, 0xa6, 0x92, 0x75, 0x6a,
+			0x6c, 0x67, 0x69, 0x6f, 0x67, 0x67, 0x70, 0x7f, 0x8f, 0x9b, 0xa7,
+			0xa2, 0x93, 0x90, 0x85, 0x7a, 0x7c, 0x77, 0x6d, 0x66, 0x5f, 0x59,
+			0x5d, 0x6c, 0x7d, 0x8b, 0x9b, 0x9c, 0x97, 0x95, 0x8f, 0x8a, 0x8a,
+			0x86, 0x7f, 0x79, 0x76, 0x73, 0x75, 0x7f, 0x83, 0x86, 0x8b, 0x8a,
+			0x8a, 0x8e, 0x8f, 0x8c, 0x82, 0x68, 0x4c, 0x43, 0x3c, 0x41, 0x60,
+			0x71, 0x7c, 0x8d, 0x8f, 0x94, 0x9d, 0xab, 0xb6, 0xb2, 0xae, 0x9f,
+			0x80, 0x6e, 0x66, 0x5e, 0x63, 0x71, 0x72, 0x72, 0x78, 0x7a, 0x83,
+			0x90, 0x9f, 0xa4, 0x9e, 0x9b, 0x8c, 0x79, 0x76, 0x6e, 0x67, 0x6a,
+			0x67, 0x61, 0x63, 0x6a, 0x72, 0x81, 0x95, 0x9e, 0x9f, 0x9e, 0x93,
+			0x88, 0x85, 0x81, 0x7e, 0x80, 0x7f, 0x7b, 0x79, 0x7b, 0x7c, 0x81,
+			0x8a, 0x8e, 0x91, 0x93, 0x8d, 0x84, 0x71, 0x53, 0x49, 0x44, 0x3f,
+			0x57, 0x6b, 0x74, 0x89, 0x90, 0x92, 0x9c, 0xa4, 0xae, 0xb0, 0xab,
+			0xa3, 0x8c, 0x76, 0x6b, 0x60, 0x5e, 0x6a, 0x6f, 0x72, 0x7d, 0x7f,
+			0x83, 0x8d, 0x95, 0x9c, 0x9e, 0x9d, 0x96, 0x84, 0x78, 0x6f, 0x62,
+			0x62, 0x64, 0x63, 0x68, 0x6f, 0x78, 0x83, 0x90, 0x9b, 0x9f, 0x9e,
+			0x97, 0x8b, 0x84, 0x7d, 0x78, 0x7c, 0x7e, 0x7d, 0x7f, 0x7d, 0x7c,
+			0x80, 0x86, 0x8d, 0x92, 0x93, 0x8d, 0x7a, 0x5b, 0x4c, 0x43, 0x3c,
+			0x54, 0x6b, 0x74, 0x8c, 0x95, 0x92, 0x9a, 0x9f, 0xa5, 0xaa, 0xac,
+			0xa6, 0x91, 0x7c, 0x6c, 0x5b, 0x56, 0x62, 0x6a, 0x72, 0x83, 0x86,
+			0x85, 0x8e, 0x91, 0x94, 0x9b, 0x9d, 0x9a, 0x8e, 0x82, 0x72, 0x5f,
+			0x59, 0x5a, 0x5c, 0x68, 0x75, 0x7f, 0x8a, 0x93, 0x99, 0x9c, 0x9d,
+			0x9a, 0x91, 0x89, 0x80, 0x78, 0x76, 0x76, 0x77, 0x7a, 0x7c, 0x7d,
+			0x81, 0x85, 0x8b, 0x8d, 0x8c, 0x7d, 0x63, 0x58, 0x4c, 0x43, 0x58,
+			0x69, 0x75, 0x8d, 0x96, 0x94, 0x99, 0x9d, 0xa0, 0xa4, 0xa8, 0xa3,
+			0x93, 0x82, 0x70, 0x5d, 0x55, 0x5d, 0x62, 0x6c, 0x7e, 0x84, 0x89,
+			0x92, 0x92, 0x93, 0x98, 0x9b, 0x98, 0x91, 0x86, 0x75, 0x64, 0x5b,
+			0x57, 0x59, 0x67, 0x77, 0x84, 0x90, 0x97, 0x98, 0x9a, 0x98, 0x94,
+			0x90, 0x8c, 0x85, 0x7f, 0x7a, 0x75, 0x71, 0x73, 0x74, 0x78, 0x81,
+			0x88, 0x8a, 0x83, 0x6d, 0x5e, 0x55, 0x4b, 0x5b, 0x6e, 0x77, 0x8e,
+			0x96, 0x90, 0x94, 0x95, 0x95, 0x9c, 0xa1, 0xa0, 0x97, 0x88, 0x79,
+			0x69, 0x5e, 0x62, 0x65, 0x6b, 0x7c, 0x82, 0x83, 0x8b, 0x8a, 0x89,
+			0x8f, 0x92, 0x93, 0x91, 0x8a, 0x7e, 0x6e, 0x64, 0x5f, 0x5f, 0x6b,
+			0x79, 0x84, 0x91, 0x93, 0x91, 0x92, 0x8f, 0x8e, 0x8e, 0x8c, 0x89,
+			0x85, 0x80, 0x7b, 0x77, 0x76, 0x75, 0x79, 0x7e, 0x7f, 0x77, 0x61,
+			0x58, 0x52, 0x49, 0x60, 0x77, 0x81, 0x9c, 0xa4, 0x99, 0x9a, 0x97,
+			0x91, 0x94, 0x99, 0x95, 0x8a, 0x7d, 0x6e, 0x60, 0x5b, 0x67, 0x70,
+			0x7a, 0x8e, 0x91, 0x8e, 0x93, 0x8b, 0x85, 0x89, 0x88, 0x86, 0x81,
+			0x7a, 0x6d, 0x61, 0x60, 0x61, 0x6a, 0x7e, 0x8c, 0x96, 0x9e, 0x9a,
+			0x92, 0x8e, 0x88, 0x86, 0x85, 0x84, 0x82, 0x7d, 0x7a, 0x77, 0x76,
+			0x7b, 0x80, 0x84, 0x85, 0x7a, 0x5e, 0x52, 0x4c, 0x42, 0x5e, 0x79,
+			0x83, 0x9d, 0xa5, 0x99, 0x9a, 0x99, 0x97, 0x98, 0x9a, 0x94, 0x82,
+			0x6f, 0x62, 0x55, 0x55, 0x6b, 0x7a, 0x84, 0x98, 0x96, 0x8e, 0x90,
+			0x8b, 0x88, 0x8c, 0x8c, 0x86, 0x7a, 0x6e, 0x60, 0x57, 0x5e, 0x69,
+			0x76, 0x8a, 0x93, 0x94, 0x96, 0x90, 0x8b, 0x8c, 0x8b, 0x8a, 0x86,
+			0x84, 0x7f, 0x79, 0x7a, 0x7b, 0x7b, 0x82, 0x84, 0x82, 0x7b, 0x5d,
+			0x49, 0x4a, 0x41, 0x59, 0x81, 0x89, 0x9d, 0xa9, 0x9a, 0x98, 0x9b,
+			0x99, 0x9b, 0x97, 0x8b, 0x76, 0x5e, 0x55, 0x55, 0x5c, 0x78, 0x8f,
+			0x93, 0x9e, 0x9b, 0x8c, 0x8e, 0x8c, 0x86, 0x86, 0x7e, 0x71, 0x63,
+			0x5b, 0x5a, 0x5d, 0x71, 0x85, 0x8e, 0x9c, 0x9e, 0x97, 0x94, 0x8e,
+			0x88, 0x84, 0x7d, 0x78, 0x73, 0x75, 0x7b, 0x7c, 0x83, 0x87, 0x86,
+			0x8c, 0x8c, 0x87, 0x7b, 0x56, 0x45, 0x44, 0x38, 0x5a, 0x82, 0x87,
+			0xa0, 0xa9, 0x99, 0x9d, 0xa2, 0x9f, 0x9c, 0x91, 0x7e, 0x63, 0x50,
+			0x54, 0x5f, 0x6e, 0x90, 0x9c, 0x94, 0x9b, 0x93, 0x88, 0x91, 0x8e,
+			0x82, 0x76, 0x68, 0x5b, 0x58, 0x66, 0x74, 0x7e, 0x8e, 0x8d, 0x87,
+			0x8a, 0x88, 0x87, 0x8b, 0x88, 0x81, 0x7c, 0x7c, 0x7d, 0x83, 0x90,
+			0x92, 0x8d, 0x8a, 0x82, 0x7c, 0x80, 0x7e, 0x79, 0x5f, 0x37, 0x37,
+			0x3d, 0x4b, 0x8c, 0xa9, 0xa8, 0xb7, 0xa4, 0x90, 0x99, 0x9a, 0x93,
+			0x81, 0x68, 0x4f, 0x3d, 0x4c, 0x73, 0x8e, 0xa8, 0xbb, 0xa5, 0x95,
+			0x97, 0x8a, 0x89, 0x89, 0x70, 0x55, 0x44, 0x4a, 0x5e, 0x7e, 0xa0,
+			0xa1, 0x96, 0x8d, 0x7c, 0x7d, 0x89, 0x87, 0x80, 0x75, 0x6b, 0x6a,
+			0x78, 0x8b, 0x92, 0x92, 0x8e, 0x84, 0x86, 0x8d, 0x8e, 0x8f, 0x87,
+			0x78, 0x6b, 0x61, 0x47, 0x3c, 0x57, 0x5e, 0x73, 0x9f, 0x9c, 0x9a,
+			0xa3, 0x97, 0x92, 0x90, 0x89, 0x74, 0x5f, 0x5e, 0x60, 0x69, 0x88,
+			0x9e, 0x9b, 0xa1, 0x9f, 0x89, 0x87, 0x86, 0x75, 0x6c, 0x64, 0x5e,
+			0x60, 0x77, 0x92, 0x99, 0x9f, 0x97, 0x7e, 0x77, 0x75, 0x70, 0x72,
+			0x74, 0x71, 0x72, 0x80, 0x8c, 0x90, 0x94, 0x8c, 0x80, 0x7f, 0x83,
+			0x8a, 0x90, 0x8a, 0x7d, 0x75, 0x75, 0x7b, 0x80, 0x82, 0x65, 0x36,
+			0x41, 0x59, 0x6b, 0xa8, 0xb7, 0x97, 0x94, 0x8d, 0x87, 0x92, 0x92,
+			0x7b, 0x55, 0x4c, 0x5d, 0x70, 0x95, 0xb2, 0xa0, 0x8f, 0x92, 0x85,
+			0x84, 0x8d, 0x79, 0x62, 0x5c, 0x63, 0x71, 0x8a, 0x9f, 0x97, 0x8c,
+			0x88, 0x79, 0x73, 0x76, 0x6f, 0x68, 0x70, 0x7e, 0x88, 0x93, 0x97,
+			0x88, 0x7e, 0x7d, 0x79, 0x7b, 0x81, 0x7f, 0x7f, 0x88, 0x8d, 0x89,
+			0x87, 0x86, 0x82, 0x83, 0x80, 0x77, 0x58, 0x32, 0x42, 0x65, 0x79,
+			0xab, 0xb2, 0x90, 0x92, 0x90, 0x88, 0x8a, 0x7c, 0x64, 0x52, 0x61,
+			0x83, 0x96, 0xa5, 0xa7, 0x8b, 0x80, 0x89, 0x7f, 0x76, 0x71, 0x60,
+			0x60, 0x77, 0x91, 0x9d, 0x98, 0x94, 0x84, 0x79, 0x81, 0x77, 0x65,
+			0x61, 0x63, 0x71, 0x89, 0x9b, 0x96, 0x8a, 0x87, 0x7f, 0x7f, 0x84,
+			0x7a, 0x72, 0x77, 0x7e, 0x86, 0x8c, 0x8a, 0x83, 0x85, 0x8b, 0x8b,
+			0x87, 0x80, 0x73, 0x6b, 0x6e, 0x60, 0x43, 0x57, 0x77, 0x7f, 0xa6,
+			0xac, 0x88, 0x87, 0x84, 0x79, 0x79, 0x74, 0x6b, 0x66, 0x7d, 0x9c,
+			0xa1, 0xa1, 0x9b, 0x7f, 0x75, 0x7e, 0x73, 0x6c, 0x70, 0x70, 0x7b,
+			0x90, 0x9a, 0x94, 0x83, 0x7a, 0x77, 0x75, 0x78, 0x78, 0x71, 0x77,
+			0x83, 0x87, 0x8a, 0x86, 0x79, 0x74, 0x7a, 0x80, 0x80, 0x82, 0x80,
+			0x7f, 0x87, 0x8a, 0x86, 0x82, 0x7c, 0x7c, 0x80, 0x85, 0x85, 0x81,
+			0x7f, 0x7f, 0x82, 0x88, 0x87, 0x80, 0x79, 0x6b, 0x4c, 0x41, 0x65,
+			0x7b, 0x8d, 0xa8, 0x92, 0x83, 0x8f, 0x87, 0x81, 0x7a, 0x6f, 0x6d,
+			0x7b, 0x94, 0x9b, 0x91, 0x8c, 0x80, 0x76, 0x7e, 0x7a, 0x6e, 0x73,
+			0x7c, 0x87, 0x96, 0x96, 0x89, 0x7b, 0x74, 0x76, 0x76, 0x75, 0x74,
+			0x76, 0x7e, 0x8a, 0x8c, 0x84, 0x7d, 0x78, 0x7b, 0x83, 0x86, 0x82,
+			0x7f, 0x7f, 0x7d, 0x7d, 0x7c, 0x78, 0x7a, 0x81, 0x88, 0x8c, 0x8a,
+			0x84, 0x7c, 0x79, 0x7c, 0x7e, 0x83, 0x87, 0x88, 0x8a, 0x88, 0x82,
+			0x7b, 0x72, 0x6e, 0x66, 0x4e, 0x4c, 0x74, 0x8b, 0x9b, 0xaa, 0x8c,
+			0x78, 0x7f, 0x77, 0x75, 0x74, 0x70, 0x79, 0x8c, 0xa0, 0x9e, 0x8d,
+			0x82, 0x77, 0x75, 0x7d, 0x79, 0x73, 0x7c, 0x88, 0x92, 0x98, 0x8a,
+			0x77, 0x6d, 0x6f, 0x7a, 0x7d, 0x7e, 0x81, 0x81, 0x88, 0x8a, 0x7d,
+			0x77, 0x74, 0x74, 0x7f, 0x83, 0x82, 0x80, 0x7b, 0x79, 0x76, 0x77,
+			0x7c, 0x80, 0x89, 0x8c, 0x8b, 0x8a, 0x81, 0x7c, 0x7b, 0x7c, 0x81,
+			0x83, 0x84, 0x84, 0x83, 0x82, 0x80, 0x7f, 0x80, 0x81, 0x84, 0x84,
+			0x81, 0x7a, 0x70, 0x68, 0x63, 0x5e, 0x5a, 0x68, 0x83, 0x8f, 0x98,
+			0x99, 0x87, 0x82, 0x82, 0x79, 0x76, 0x77, 0x7f, 0x8a, 0x94, 0x98,
+			0x8c, 0x81, 0x7d, 0x79, 0x79, 0x7c, 0x7a, 0x7d, 0x88, 0x8d, 0x8b,
+			0x84, 0x77, 0x6f, 0x70, 0x77, 0x7e, 0x80, 0x83, 0x85, 0x85, 0x86,
+			0x81, 0x7a, 0x78, 0x75, 0x78, 0x82, 0x86, 0x84, 0x83, 0x7d, 0x79,
+			0x7a, 0x7a, 0x7b, 0x81, 0x88, 0x89, 0x85, 0x7f, 0x77, 0x75, 0x79,
+			0x7d, 0x83, 0x87, 0x87, 0x85, 0x80, 0x7d, 0x7b, 0x7d, 0x80, 0x81,
+			0x83, 0x85, 0x84, 0x85, 0x84, 0x81, 0x7f, 0x7d, 0x78, 0x71, 0x6a,
+			0x64, 0x5f, 0x61, 0x7b, 0x8d, 0x8e, 0x93, 0x88, 0x7a, 0x80, 0x7d,
+			0x76, 0x78, 0x7e, 0x88, 0x91, 0x97, 0x91, 0x82, 0x7d, 0x7d, 0x7b,
+			0x7f, 0x80, 0x80, 0x87, 0x8d, 0x89, 0x83, 0x7b, 0x74, 0x75, 0x79,
+			0x7d, 0x7f, 0x7f, 0x82, 0x81, 0x7f, 0x7b, 0x74, 0x73, 0x79, 0x80,
+			0x86, 0x87, 0x82, 0x7d, 0x7b, 0x78, 0x7a, 0x7d, 0x7d, 0x7e, 0x82,
+			0x82, 0x81, 0x82, 0x82, 0x7f, 0x7f, 0x81, 0x84, 0x87, 0x87, 0x84,
+			0x7f, 0x7b, 0x79, 0x7c, 0x7e, 0x80, 0x82, 0x81, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x81, 0x81, 0x83, 0x84, 0x82, 0x7e, 0x7b, 0x7a, 0x7a,
+			0x77, 0x6d, 0x68, 0x68, 0x64, 0x71, 0x89, 0x8d, 0x8e, 0x8e, 0x81,
+			0x7d, 0x80, 0x7b, 0x79, 0x7f, 0x88, 0x8e, 0x91, 0x8f, 0x84, 0x7f,
+			0x7f, 0x7c, 0x7e, 0x7e, 0x7e, 0x82, 0x85, 0x85, 0x82, 0x7d, 0x7b,
+			0x7c, 0x7e, 0x81, 0x82, 0x80, 0x7e, 0x7e, 0x7e, 0x7b, 0x78, 0x79,
+			0x7b, 0x81, 0x85, 0x83, 0x7e, 0x7b, 0x78, 0x76, 0x7b, 0x7d, 0x7d,
+			0x80, 0x7f, 0x80, 0x84, 0x83, 0x84, 0x83, 0x83, 0x83, 0x80, 0x80,
+			0x7e, 0x7f, 0x82, 0x81, 0x80, 0x81, 0x7f, 0x80, 0x81, 0x80, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7c, 0x7b, 0x7c, 0x7d, 0x7f, 0x80,
+			0x82, 0x81, 0x7f, 0x82, 0x81, 0x7f, 0x7f, 0x7e, 0x77, 0x71, 0x69,
+			0x55, 0x5b, 0x7e, 0x8b, 0x91, 0x95, 0x84, 0x81, 0x84, 0x7d, 0x7a,
+			0x7f, 0x89, 0x8d, 0x90, 0x8e, 0x83, 0x80, 0x82, 0x7e, 0x81, 0x85,
+			0x84, 0x88, 0x87, 0x82, 0x7d, 0x78, 0x76, 0x77, 0x7a, 0x7f, 0x80,
+			0x81, 0x7f, 0x7d, 0x7d, 0x7a, 0x76, 0x79, 0x84, 0x8b, 0x88, 0x80,
+			0x78, 0x76, 0x78, 0x7a, 0x7b, 0x7e, 0x86, 0x89, 0x87, 0x81, 0x7c,
+			0x7a, 0x7b, 0x7d, 0x81, 0x83, 0x84, 0x81, 0x7d, 0x7c, 0x7b, 0x7d,
+			0x7f, 0x81, 0x82, 0x82, 0x80, 0x7d, 0x7b, 0x7d, 0x81, 0x83, 0x83,
+			0x81, 0x7e, 0x7d, 0x7e, 0x7d, 0x7d, 0x7e, 0x7e, 0x81, 0x81, 0x7f,
+			0x7d, 0x7c, 0x7d, 0x7f, 0x7e, 0x7e, 0x81, 0x82, 0x82, 0x80, 0x74,
+			0x68, 0x6a, 0x75, 0x7d, 0x84, 0x88, 0x8a, 0x8a, 0x83, 0x7b, 0x7b,
+			0x81, 0x89, 0x8c, 0x8a, 0x88, 0x87, 0x80, 0x7a, 0x79, 0x7c, 0x82,
+			0x88, 0x87, 0x83, 0x82, 0x7f, 0x7b, 0x7b, 0x7d, 0x7f, 0x83, 0x82,
+			0x7e, 0x7b, 0x7a, 0x79, 0x7a, 0x7a, 0x7d, 0x84, 0x88, 0x85, 0x82,
+			0x80, 0x7c, 0x7a, 0x79, 0x79, 0x7d, 0x7f, 0x7e, 0x7c, 0x7d, 0x7e,
+			0x80, 0x82, 0x83, 0x83, 0x84, 0x82, 0x7f, 0x7d, 0x7d, 0x7d, 0x7e,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7d, 0x7d, 0x7e, 0x80, 0x82, 0x82,
+			0x81, 0x7f, 0x7e, 0x7c, 0x7c, 0x7e, 0x80, 0x80, 0x7f, 0x7e, 0x7e,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x80, 0x80, 0x7e, 0x7e, 0x7f, 0x7e, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7f, 0x80, 0x7f, 0x7e, 0x7f,
+		},
+		{ // 3
+			0x7f, 0x80, 0x81, 0x7e, 0x7a, 0x7c, 0x84, 0x85, 0x7d, 0x7c, 0x81,
+			0x82, 0x80, 0x7f, 0x81, 0x81, 0x80, 0x80, 0x7e, 0x80, 0x80, 0x80,
+			0x7d, 0x7c, 0x80, 0x81, 0x80, 0x7f, 0x7d, 0x82, 0x7c, 0x7d, 0x80,
+			0x7b, 0x7e, 0x81, 0x84, 0x83, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x81, 0x82, 0x80, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7d, 0x80,
+			0x7f, 0x7e, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x81, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x79, 0x7a, 0x7f, 0x7e, 0x82, 0x82, 0x80,
+			0x83, 0x84, 0x83, 0x85, 0x86, 0x82, 0x7f, 0x80, 0x7f, 0x7b, 0x7c,
+			0x7d, 0x7d, 0x7c, 0x7c, 0x7d, 0x80, 0x81, 0x7e, 0x7f, 0x82, 0x82,
+			0x80, 0x7f, 0x7f, 0x7f, 0x81, 0x7f, 0x7e, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x81, 0x81, 0x80, 0x80, 0x82, 0x82, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x81, 0x80,
+			0x80, 0x80, 0x80, 0x81, 0x82, 0x81, 0x80, 0x82, 0x82, 0x80, 0x7f,
+			0x7e, 0x7e, 0x7d, 0x7b, 0x79, 0x73, 0x73, 0x78, 0x74, 0x73, 0x78,
+			0x7a, 0x7f, 0x83, 0x87, 0x88, 0x8c, 0x92, 0x8f, 0x8d, 0x8f, 0x8c,
+			0x87, 0x82, 0x7e, 0x7a, 0x77, 0x73, 0x72, 0x72, 0x76, 0x7b, 0x7e,
+			0x82, 0x87, 0x8b, 0x8d, 0x8f, 0x8e, 0x8c, 0x8b, 0x88, 0x83, 0x80,
+			0x7f, 0x7d, 0x7b, 0x7b, 0x7b, 0x7f, 0x82, 0x80, 0x83, 0x87, 0x8a,
+			0x83, 0x82, 0x63, 0x45, 0x76, 0x68, 0x3c, 0x56, 0x5f, 0x6c, 0x74,
+			0x80, 0x8a, 0x91, 0xc1, 0xb6, 0x95, 0xb7, 0xbc, 0xa0, 0x92, 0x85,
+			0x80, 0x72, 0x70, 0x61, 0x49, 0x6f, 0x74, 0x5e, 0x71, 0x84, 0x90,
+			0x8f, 0x99, 0x9b, 0x92, 0xa3, 0x8f, 0x75, 0x7f, 0x7a, 0x64, 0x5c,
+			0x65, 0x62, 0x6a, 0x78, 0x79, 0x8a, 0x9c, 0x9c, 0x97, 0xa3, 0xa4,
+			0x96, 0x92, 0x8b, 0x84, 0x7e, 0x77, 0x6f, 0x73, 0x7c, 0x7b, 0x78,
+			0x79, 0x7e, 0x4c, 0x40, 0x84, 0x58, 0x38, 0x66, 0x68, 0x75, 0x7c,
+			0x8c, 0x93, 0xa1, 0xcc, 0xa5, 0x95, 0xc2, 0xaa, 0x88, 0x86, 0x7f,
+			0x77, 0x64, 0x65, 0x5b, 0x5a, 0x81, 0x6f, 0x6a, 0x90, 0x96, 0x96,
+			0x93, 0xa1, 0x9e, 0x8f, 0x94, 0x77, 0x6e, 0x76, 0x63, 0x50, 0x58,
+			0x6a, 0x65, 0x70, 0x83, 0x8f, 0x9e, 0xa1, 0x9f, 0xa1, 0xa8, 0x99,
+			0x89, 0x8b, 0x83, 0x78, 0x70, 0x71, 0x70, 0x77, 0x7d, 0x7b, 0x87,
+			0x89, 0x81, 0x48, 0x51, 0x93, 0x4a, 0x35, 0x69, 0x66, 0x70, 0x6c,
+			0x83, 0x96, 0xa4, 0xbd, 0x97, 0xa7, 0xcf, 0x9e, 0x87, 0x91, 0x87,
+			0x7a, 0x5f, 0x62, 0x61, 0x62, 0x76, 0x5e, 0x73, 0x98, 0x8a, 0x8d,
+			0x97, 0xaa, 0x9f, 0x8b, 0x94, 0x82, 0x7b, 0x6f, 0x59, 0x5e, 0x62,
+			0x59, 0x5a, 0x77, 0x83, 0x86, 0x97, 0x9e, 0xa5, 0xa3, 0x9f, 0x96,
+			0x95, 0x8f, 0x7c, 0x79, 0x77, 0x71, 0x6e, 0x72, 0x7a, 0x7f, 0x86,
+			0x87, 0x8b, 0x54, 0x4b, 0x98, 0x57, 0x30, 0x6a, 0x69, 0x69, 0x62,
+			0x80, 0x98, 0x94, 0xb3, 0x9e, 0xa5, 0xcc, 0xa0, 0x8d, 0x99, 0x8e,
+			0x7f, 0x60, 0x68, 0x6b, 0x59, 0x6b, 0x61, 0x70, 0x8c, 0x7d, 0x8a,
+			0x97, 0xa6, 0x9d, 0x8b, 0x9f, 0x8c, 0x78, 0x76, 0x6a, 0x64, 0x5f,
+			0x5e, 0x61, 0x75, 0x7e, 0x7f, 0x91, 0x9b, 0x9c, 0x9b, 0x9f, 0x9a,
+			0x92, 0x8f, 0x83, 0x7e, 0x79, 0x74, 0x74, 0x76, 0x7b, 0x7d, 0x80,
+			0x84, 0x4e, 0x48, 0x98, 0x58, 0x2f, 0x73, 0x71, 0x69, 0x61, 0x87,
+			0x9e, 0x8b, 0xac, 0x9f, 0xa5, 0xc2, 0x98, 0x8e, 0x9d, 0x8e, 0x7b,
+			0x64, 0x71, 0x72, 0x56, 0x68, 0x69, 0x73, 0x82, 0x75, 0x8c, 0x95,
+			0x9b, 0x95, 0x8d, 0xa0, 0x8a, 0x7a, 0x79, 0x75, 0x69, 0x5d, 0x69,
+			0x6b, 0x72, 0x77, 0x82, 0x90, 0x90, 0x95, 0x97, 0x9f, 0x97, 0x8e,
+			0x90, 0x88, 0x80, 0x77, 0x79, 0x79, 0x74, 0x7a, 0x7b, 0x81, 0x54,
+			0x40, 0x93, 0x64, 0x29, 0x74, 0x78, 0x66, 0x5f, 0x81, 0xa3, 0x83,
+			0x9f, 0xa5, 0xa1, 0xbe, 0x98, 0x92, 0xa5, 0x92, 0x80, 0x6b, 0x78,
+			0x7a, 0x53, 0x65, 0x6e, 0x6b, 0x75, 0x6c, 0x84, 0x8b, 0x8b, 0x91,
+			0x8e, 0x9c, 0x8b, 0x83, 0x89, 0x81, 0x71, 0x6e, 0x7b, 0x6e, 0x6e,
+			0x79, 0x7f, 0x82, 0x82, 0x8e, 0x8e, 0x91, 0x8e, 0x8d, 0x90, 0x87,
+			0x83, 0x80, 0x81, 0x7a, 0x7d, 0x7c, 0x7e, 0x69, 0x3b, 0x85, 0x77,
+			0x27, 0x6b, 0x76, 0x68, 0x5f, 0x71, 0xa0, 0x7f, 0x91, 0xa4, 0x9b,
+			0xb8, 0x9e, 0x94, 0xae, 0x9a, 0x8a, 0x7b, 0x7f, 0x87, 0x59, 0x65,
+			0x75, 0x63, 0x6a, 0x60, 0x7a, 0x7d, 0x74, 0x87, 0x85, 0x92, 0x88,
+			0x8a, 0x93, 0x89, 0x86, 0x80, 0x8a, 0x7d, 0x7a, 0x80, 0x7d, 0x80,
+			0x7a, 0x84, 0x84, 0x84, 0x84, 0x83, 0x8a, 0x83, 0x82, 0x84, 0x84,
+			0x82, 0x7d, 0x85, 0x66, 0x4e, 0x88, 0x75, 0x37, 0x6c, 0x7d, 0x63,
+			0x5a, 0x75, 0x94, 0x71, 0x84, 0x99, 0x8e, 0xa2, 0x99, 0x95, 0x9f,
+			0xa0, 0x9a, 0x85, 0x8b, 0x95, 0x7a, 0x73, 0x7e, 0x76, 0x72, 0x6b,
+			0x70, 0x76, 0x73, 0x78, 0x75, 0x7c, 0x82, 0x7e, 0x81, 0x84, 0x86,
+			0x83, 0x81, 0x81, 0x82, 0x82, 0x7f, 0x81, 0x82, 0x82, 0x82, 0x81,
+			0x83, 0x83, 0x81, 0x80, 0x80, 0x7f, 0x7e, 0x7b, 0x7b, 0x7d, 0x7c,
+			0x7c, 0x7e, 0x7d, 0x7a, 0x7e, 0x82, 0x7e, 0x7d, 0x80, 0x7f, 0x7e,
+			0x7c, 0x7c, 0x7b, 0x7a, 0x7c, 0x7b, 0x7c, 0x7c, 0x7d, 0x80, 0x80,
+			0x82, 0x83, 0x83, 0x84, 0x85, 0x84, 0x83, 0x84, 0x86, 0x84, 0x83,
+			0x84, 0x86, 0x85, 0x84, 0x84, 0x82, 0x82, 0x81, 0x7d, 0x7c, 0x7c,
+			0x7b, 0x79, 0x78, 0x7a, 0x7a, 0x7a, 0x7d, 0x7e, 0x7f, 0x82, 0x84,
+			0x83, 0x84, 0x85, 0x83, 0x82, 0x82, 0x80, 0x7e, 0x7e, 0x80, 0x79,
+			0x7a, 0x81, 0x79, 0x78, 0x7c, 0x7d, 0x7e, 0x7a, 0x7e, 0x7e, 0x7b,
+			0x7f, 0x7e, 0x7c, 0x7d, 0x7e, 0x82, 0x80, 0x80, 0x86, 0x82, 0x84,
+			0x86, 0x85, 0x86, 0x83, 0x86, 0x84, 0x7f, 0x82, 0x81, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x81, 0x80, 0x7e, 0x7f, 0x7f, 0x7e, 0x7d, 0x7d,
+			0x7c, 0x7b, 0x7c, 0x7d, 0x7c, 0x7d, 0x80, 0x7e, 0x81, 0x82, 0x83,
+			0x82, 0x82, 0x84, 0x82, 0x82, 0x83, 0x7d, 0x78, 0x80, 0x7f, 0x76,
+			0x77, 0x7a, 0x7d, 0x77, 0x76, 0x7d, 0x7c, 0x7e, 0x7e, 0x7e, 0x81,
+			0x81, 0x84, 0x82, 0x81, 0x88, 0x86, 0x81, 0x84, 0x86, 0x85, 0x82,
+			0x83, 0x86, 0x80, 0x7f, 0x81, 0x7f, 0x7c, 0x7c, 0x80, 0x7c, 0x7b,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x80, 0x80, 0x80, 0x81, 0x7f, 0x7f, 0x80,
+			0x80, 0x7d, 0x80, 0x82, 0x7e, 0x7f, 0x81, 0x80, 0x80, 0x82, 0x82,
+			0x80, 0x81, 0x82, 0x81, 0x75, 0x7c, 0x86, 0x74, 0x72, 0x7c, 0x7d,
+			0x76, 0x6f, 0x7f, 0x7e, 0x75, 0x7f, 0x81, 0x81, 0x82, 0x85, 0x87,
+			0x83, 0x8a, 0x8c, 0x80, 0x86, 0x8a, 0x82, 0x7f, 0x7f, 0x87, 0x7f,
+			0x79, 0x82, 0x7e, 0x7e, 0x7a, 0x7c, 0x7e, 0x79, 0x7b, 0x7b, 0x7e,
+			0x7d, 0x7e, 0x7d, 0x7d, 0x85, 0x7c, 0x81, 0x87, 0x84, 0x83, 0x84,
+			0x88, 0x7f, 0x80, 0x82, 0x7f, 0x81, 0x7f, 0x83, 0x81, 0x82, 0x84,
+			0x81, 0x6d, 0x7d, 0x8f, 0x5d, 0x6c, 0x88, 0x6e, 0x66, 0x6e, 0x86,
+			0x72, 0x6c, 0x8c, 0x80, 0x81, 0x8a, 0x88, 0x90, 0x8f, 0x8b, 0x8d,
+			0x8f, 0x91, 0x83, 0x85, 0x93, 0x7e, 0x7c, 0x84, 0x7f, 0x78, 0x71,
+			0x7d, 0x75, 0x6d, 0x73, 0x76, 0x75, 0x6e, 0x7b, 0x7f, 0x7b, 0x7f,
+			0x87, 0x8e, 0x85, 0x8c, 0x93, 0x8e, 0x8a, 0x8b, 0x8f, 0x82, 0x80,
+			0x85, 0x7e, 0x7b, 0x7b, 0x7f, 0x7b, 0x7d, 0x6e, 0x67, 0x8d, 0x64,
+			0x55, 0x8a, 0x69, 0x5e, 0x72, 0x76, 0x79, 0x6d, 0x85, 0x87, 0x86,
+			0x92, 0x88, 0x9d, 0x9c, 0x87, 0x9c, 0x9c, 0x8b, 0x8b, 0x8c, 0x8f,
+			0x7e, 0x7b, 0x85, 0x77, 0x75, 0x6f, 0x76, 0x77, 0x66, 0x71, 0x74,
+			0x71, 0x6d, 0x77, 0x7e, 0x74, 0x80, 0x87, 0x89, 0x88, 0x8e, 0x98,
+			0x8f, 0x92, 0x95, 0x93, 0x8a, 0x86, 0x8a, 0x80, 0x7b, 0x7b, 0x7c,
+			0x76, 0x78, 0x6c, 0x61, 0x89, 0x5f, 0x53, 0x8d, 0x5b, 0x63, 0x77,
+			0x67, 0x7c, 0x6d, 0x7d, 0x89, 0x83, 0x8d, 0x8c, 0x9f, 0x96, 0x8f,
+			0xa7, 0x99, 0x92, 0x99, 0x8e, 0x92, 0x84, 0x7c, 0x88, 0x76, 0x71,
+			0x70, 0x73, 0x6f, 0x62, 0x75, 0x6e, 0x69, 0x75, 0x75, 0x79, 0x78,
+			0x81, 0x85, 0x85, 0x89, 0x8e, 0x94, 0x8c, 0x93, 0x95, 0x8e, 0x90,
+			0x8d, 0x8c, 0x83, 0x83, 0x81, 0x7a, 0x7c, 0x77, 0x77, 0x62, 0x68,
+			0x7f, 0x50, 0x67, 0x79, 0x56, 0x76, 0x67, 0x70, 0x83, 0x6a, 0x89,
+			0x89, 0x84, 0x90, 0x8f, 0x9b, 0x90, 0x94, 0xa0, 0x94, 0x95, 0x93,
+			0x92, 0x92, 0x83, 0x88, 0x86, 0x78, 0x78, 0x73, 0x75, 0x6b, 0x68,
+			0x6e, 0x6c, 0x6b, 0x6a, 0x78, 0x74, 0x76, 0x84, 0x82, 0x88, 0x8a,
+			0x92, 0x8f, 0x8d, 0x96, 0x91, 0x8e, 0x8c, 0x8f, 0x89, 0x83, 0x86,
+			0x82, 0x7e, 0x7d, 0x7e, 0x7a, 0x71, 0x64, 0x7a, 0x6b, 0x53, 0x7a,
+			0x61, 0x63, 0x71, 0x60, 0x83, 0x6c, 0x75, 0x90, 0x7d, 0x8d, 0x8f,
+			0x95, 0x9a, 0x8f, 0x9d, 0x9c, 0x92, 0x95, 0x93, 0x93, 0x8b, 0x83,
+			0x8b, 0x7f, 0x78, 0x78, 0x76, 0x74, 0x68, 0x6f, 0x6f, 0x68, 0x6b,
+			0x6e, 0x73, 0x70, 0x78, 0x82, 0x81, 0x84, 0x8d, 0x91, 0x8e, 0x91,
+			0x95, 0x91, 0x8f, 0x8f, 0x8e, 0x88, 0x86, 0x86, 0x80, 0x7e, 0x80,
+			0x7d, 0x7b, 0x7b, 0x73, 0x67, 0x7e, 0x6a, 0x59, 0x7f, 0x5e, 0x69,
+			0x70, 0x60, 0x85, 0x66, 0x79, 0x8f, 0x76, 0x92, 0x8a, 0x94, 0x9a,
+			0x8b, 0x9f, 0x99, 0x91, 0x98, 0x8f, 0x91, 0x8b, 0x84, 0x8a, 0x7e,
+			0x7b, 0x7c, 0x76, 0x75, 0x6e, 0x73, 0x71, 0x6b, 0x71, 0x70, 0x74,
+			0x71, 0x76, 0x7e, 0x79, 0x80, 0x86, 0x88, 0x88, 0x8d, 0x91, 0x8c,
+			0x8e, 0x91, 0x8e, 0x8a, 0x8b, 0x8b, 0x84, 0x82, 0x83, 0x7f, 0x7b,
+			0x7d, 0x7e, 0x7a, 0x78, 0x74, 0x6f, 0x7b, 0x69, 0x67, 0x7a, 0x60,
+			0x70, 0x6e, 0x69, 0x7f, 0x68, 0x82, 0x84, 0x79, 0x91, 0x86, 0x94,
+			0x92, 0x8e, 0x9e, 0x92, 0x93, 0x96, 0x8f, 0x92, 0x8a, 0x86, 0x8a,
+			0x7c, 0x7d, 0x7c, 0x75, 0x75, 0x70, 0x74, 0x70, 0x6f, 0x75, 0x74,
+			0x75, 0x77, 0x79, 0x7b, 0x7e, 0x7d, 0x82, 0x85, 0x82, 0x89, 0x87,
+			0x8a, 0x8a, 0x89, 0x8b, 0x87, 0x8a, 0x87, 0x86, 0x85, 0x84, 0x83,
+			0x7f, 0x82, 0x80, 0x7d, 0x81, 0x7e, 0x7d, 0x7a, 0x70, 0x7c, 0x73,
+			0x65, 0x7b, 0x67, 0x6d, 0x71, 0x66, 0x7f, 0x69, 0x7a, 0x85, 0x77,
+			0x8c, 0x83, 0x8e, 0x92, 0x89, 0x98, 0x93, 0x90, 0x94, 0x8e, 0x91,
+			0x8b, 0x85, 0x8d, 0x81, 0x7e, 0x80, 0x7a, 0x7c, 0x73, 0x77, 0x78,
+			0x70, 0x75, 0x75, 0x76, 0x76, 0x77, 0x7c, 0x7b, 0x7b, 0x7d, 0x81,
+			0x7e, 0x80, 0x85, 0x80, 0x82, 0x84, 0x84, 0x84, 0x84, 0x88, 0x86,
+			0x84, 0x88, 0x88, 0x85, 0x86, 0x88, 0x85, 0x83, 0x84, 0x84, 0x82,
+			0x83, 0x80, 0x7f, 0x7b, 0x71, 0x7f, 0x6b, 0x69, 0x78, 0x5f, 0x71,
+			0x66, 0x68, 0x78, 0x61, 0x7d, 0x78, 0x78, 0x89, 0x81, 0x93, 0x8d,
+			0x8e, 0x9d, 0x95, 0x98, 0x99, 0x95, 0x99, 0x8f, 0x8e, 0x90, 0x82,
+			0x83, 0x7f, 0x7a, 0x77, 0x70, 0x75, 0x70, 0x6b, 0x70, 0x71, 0x6f,
+			0x70, 0x75, 0x78, 0x77, 0x7b, 0x80, 0x80, 0x7f, 0x83, 0x87, 0x82,
+			0x86, 0x87, 0x86, 0x87, 0x85, 0x89, 0x85, 0x85, 0x89, 0x84, 0x87,
+			0x86, 0x87, 0x84, 0x83, 0x87, 0x82, 0x81, 0x82, 0x82, 0x7e, 0x7e,
+			0x7f, 0x79, 0x7d, 0x6b, 0x75, 0x79, 0x5a, 0x78, 0x65, 0x66, 0x75,
+			0x5c, 0x83, 0x6b, 0x75, 0x8d, 0x77, 0x92, 0x88, 0x92, 0x9b, 0x8c,
+			0x9e, 0x9a, 0x92, 0x98, 0x91, 0x92, 0x8d, 0x84, 0x8b, 0x7f, 0x7b,
+			0x7b, 0x75, 0x77, 0x6d, 0x70, 0x72, 0x6c, 0x70, 0x71, 0x74, 0x74,
+			0x77, 0x7f, 0x7f, 0x81, 0x87, 0x88, 0x89, 0x89, 0x8a, 0x8a, 0x83,
+			0x87, 0x84, 0x7e, 0x81, 0x7d, 0x7e, 0x7a, 0x7b, 0x7e, 0x79, 0x7d,
+			0x7e, 0x7f, 0x81, 0x82, 0x85, 0x85, 0x86, 0x88, 0x87, 0x86, 0x88,
+			0x87, 0x85, 0x85, 0x86, 0x80, 0x82, 0x7c, 0x6b, 0x84, 0x68, 0x64,
+			0x7b, 0x58, 0x75, 0x5f, 0x68, 0x7d, 0x5c, 0x85, 0x78, 0x80, 0x8d,
+			0x82, 0x9c, 0x8f, 0x94, 0x9f, 0x95, 0x99, 0x98, 0x94, 0x96, 0x8c,
+			0x8d, 0x8a, 0x80, 0x81, 0x7a, 0x79, 0x72, 0x70, 0x72, 0x6c, 0x6d,
+			0x6e, 0x70, 0x70, 0x73, 0x78, 0x7a, 0x7d, 0x81, 0x84, 0x86, 0x87,
+			0x89, 0x8b, 0x88, 0x8a, 0x86, 0x82, 0x84, 0x7d, 0x7e, 0x7c, 0x7b,
+			0x7c, 0x7a, 0x7e, 0x7d, 0x7f, 0x81, 0x81, 0x84, 0x84, 0x86, 0x85,
+			0x87, 0x86, 0x85, 0x85, 0x83, 0x84, 0x81, 0x82, 0x81, 0x81, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7b, 0x69, 0x81, 0x71, 0x61, 0x7d, 0x61, 0x75,
+			0x67, 0x6d, 0x81, 0x64, 0x86, 0x7d, 0x83, 0x8c, 0x87, 0x9b, 0x8d,
+			0x95, 0x9b, 0x94, 0x95, 0x93, 0x94, 0x8e, 0x88, 0x89, 0x83, 0x7e,
+			0x7a, 0x7a, 0x76, 0x72, 0x73, 0x72, 0x72, 0x72, 0x75, 0x77, 0x77,
+			0x7b, 0x7f, 0x7e, 0x81, 0x85, 0x84, 0x85, 0x84, 0x86, 0x85, 0x80,
+			0x83, 0x82, 0x7d, 0x7d, 0x7f, 0x7b, 0x7b, 0x7c, 0x7c, 0x7c, 0x7d,
+			0x80, 0x7f, 0x80, 0x84, 0x84, 0x84, 0x86, 0x88, 0x86, 0x86, 0x87,
+			0x86, 0x83, 0x83, 0x83, 0x7f, 0x7f, 0x7e, 0x7c, 0x7a, 0x7a, 0x7c,
+			0x7a, 0x7b, 0x7d, 0x7d, 0x7c, 0x80, 0x7c, 0x77, 0x80, 0x76, 0x76,
+			0x77, 0x75, 0x79, 0x72, 0x7b, 0x7a, 0x7a, 0x82, 0x82, 0x87, 0x87,
+			0x8c, 0x8f, 0x8c, 0x8f, 0x90, 0x8d, 0x8b, 0x8a, 0x88, 0x83, 0x81,
+			0x81, 0x7d, 0x7c, 0x7c, 0x7b, 0x7b, 0x7b, 0x7e, 0x7c, 0x7c, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x81, 0x7f, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x7d, 0x7f, 0x7d, 0x7d, 0x7d, 0x7d, 0x7f,
+			0x7c, 0x7f, 0x81, 0x7f, 0x81, 0x81, 0x83, 0x81, 0x81, 0x84, 0x82,
+			0x81, 0x82, 0x82, 0x80, 0x7f, 0x81, 0x80, 0x7e, 0x81, 0x81, 0x7f,
+			0x81, 0x81, 0x80, 0x7f, 0x80, 0x7f, 0x7d, 0x7e, 0x7e, 0x7e, 0x7c,
+			0x7d, 0x7e, 0x7d, 0x7e, 0x7d, 0x7e, 0x80, 0x7e, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x7d, 0x7f, 0x7d, 0x7e, 0x7f, 0x7f, 0x81, 0x81, 0x82, 0x84,
+			0x84, 0x85, 0x85, 0x85, 0x85, 0x83, 0x84, 0x82, 0x80, 0x82, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x80, 0x81, 0x81, 0x81, 0x81,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x7e, 0x7f, 0x81,
+			0x7f, 0x80, 0x80, 0x80, 0x82, 0x80, 0x81, 0x83, 0x80, 0x81, 0x81,
+			0x7f, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x81, 0x7f, 0x81, 0x81, 0x7f, 0x82,
+			0x80, 0x81, 0x81, 0x80, 0x82, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x80,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x81,
+			0x80, 0x81, 0x81, 0x7f, 0x81, 0x7f, 0x7f, 0x80, 0x7e, 0x7e, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x81, 0x7f, 0x80, 0x81,
+			0x80, 0x82, 0x80, 0x81, 0x81, 0x81, 0x81, 0x80, 0x81, 0x80, 0x81,
+			0x7f, 0x7f, 0x80, 0x7e, 0x7f, 0x7d, 0x7d, 0x7f, 0x7c, 0x7e, 0x7f,
+			0x7e, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x82, 0x80, 0x80, 0x82, 0x80,
+			0x80, 0x80, 0x81, 0x80, 0x80, 0x80, 0x81, 0x80, 0x7e, 0x81, 0x7f,
+			0x7e, 0x7f, 0x7d, 0x7f, 0x7e, 0x7d, 0x80, 0x7c, 0x7e, 0x80, 0x7e,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x81, 0x7f,
+			0x81, 0x82, 0x81, 0x81, 0x82, 0x81, 0x82, 0x82, 0x81, 0x81, 0x80,
+			0x7f, 0x7e, 0x7d, 0x7d, 0x7d, 0x7c, 0x7c, 0x7d, 0x7e, 0x7e, 0x7f,
+			0x81, 0x80, 0x81, 0x83, 0x82, 0x80, 0x81, 0x81, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x80, 0x7f, 0x80,
+			0x7f, 0x7e, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x81,
+			0x81, 0x82, 0x82, 0x81, 0x81, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7d,
+			0x7c, 0x7d, 0x7c, 0x7d, 0x7d, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x82, 0x81, 0x81, 0x81, 0x82, 0x81, 0x81, 0x82, 0x80, 0x82, 0x81,
+			0x81, 0x82, 0x80, 0x82, 0x81, 0x7f, 0x80, 0x7e, 0x7d, 0x7d, 0x7b,
+			0x7b, 0x7c, 0x7b, 0x7c, 0x7d, 0x7d, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x81, 0x80, 0x81, 0x81, 0x7f, 0x81, 0x80, 0x80, 0x82, 0x80, 0x82,
+			0x81, 0x7f, 0x81, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x81, 0x7f, 0x80, 0x81, 0x7f, 0x81, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f,
+		},
+		{ // 4
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7e, 0x7f, 0x80, 0x7d, 0x7f, 0x80, 0x7e, 0x7f, 0x7e, 0x81, 0x7f,
+			0x81, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x7e, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x80, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x80, 0x81, 0x7d,
+			0x80, 0x7f, 0x79, 0x81, 0x7c, 0x7c, 0x84, 0x80, 0x81, 0x81, 0x80,
+			0x85, 0x7a, 0x82, 0x80, 0x7d, 0x81, 0x7a, 0x80, 0x7d, 0x7e, 0x7e,
+			0x80, 0x7e, 0x7f, 0x7f, 0x7c, 0x86, 0x7d, 0x7e, 0x85, 0x7b, 0x81,
+			0x83, 0x76, 0x88, 0x78, 0x82, 0x83, 0x76, 0x88, 0x7a, 0x7f, 0x83,
+			0x7a, 0x84, 0x7a, 0x80, 0x85, 0x73, 0x8b, 0x79, 0x7e, 0x85, 0x75,
+			0x8b, 0x75, 0x83, 0x84, 0x75, 0x8a, 0x78, 0x80, 0x86, 0x75, 0x83,
+			0x7d, 0x7d, 0x84, 0x7b, 0x85, 0x7f, 0x7d, 0x7e, 0x7f, 0x84, 0x77,
+			0x88, 0x7d, 0x79, 0x8b, 0x71, 0x87, 0x84, 0x6e, 0x8f, 0x77, 0x7a,
+			0x89, 0x78, 0x84, 0x7d, 0x7e, 0x82, 0x80, 0x79, 0x7f, 0x89, 0x75,
+			0x85, 0x81, 0x74, 0x8f, 0x71, 0x7e, 0x8e, 0x6f, 0x84, 0x86, 0x76,
+			0x82, 0x80, 0x80, 0x7d, 0x77, 0x8c, 0x7c, 0x7c, 0x80, 0x80, 0x7d,
+			0x7d, 0x84, 0x77, 0x89, 0x7e, 0x76, 0x8d, 0x76, 0x7a, 0x8d, 0x70,
+			0x85, 0x8a, 0x6d, 0x8b, 0x81, 0x6f, 0x8c, 0x7f, 0x73, 0x8e, 0x7e,
+			0x74, 0x8c, 0x79, 0x7a, 0x8c, 0x71, 0x85, 0x85, 0x74, 0x84, 0x83,
+			0x79, 0x7d, 0x8a, 0x74, 0x84, 0x7e, 0x7d, 0x86, 0x77, 0x8a, 0x77,
+			0x7e, 0x85, 0x78, 0x81, 0x81, 0x7e, 0x84, 0x7a, 0x7d, 0x83, 0x7b,
+			0x83, 0x77, 0x8d, 0x76, 0x80, 0x8a, 0x6d, 0x91, 0x78, 0x76, 0x8b,
+			0x7c, 0x78, 0x87, 0x7b, 0x80, 0x7f, 0x7c, 0x83, 0x75, 0x8a, 0x7c,
+			0x7b, 0x87, 0x79, 0x7f, 0x81, 0x7d, 0x7f, 0x83, 0x7a, 0x84, 0x7e,
+			0x7d, 0x84, 0x77, 0x84, 0x7d, 0x81, 0x81, 0x7b, 0x8b, 0x72, 0x78,
+			0x94, 0x6f, 0x7b, 0x98, 0x6d, 0x7b, 0x94, 0x65, 0x87, 0x8e, 0x6c,
+			0x8c, 0x7b, 0x80, 0x82, 0x74, 0x8d, 0x79, 0x78, 0x8c, 0x79, 0x7e,
+			0x7e, 0x86, 0x7d, 0x77, 0x8d, 0x76, 0x77, 0x91, 0x77, 0x75, 0x93,
+			0x76, 0x78, 0x8c, 0x74, 0x83, 0x7b, 0x7e, 0x87, 0x77, 0x86, 0x7c,
+			0x78, 0x8c, 0x7c, 0x76, 0x8d, 0x74, 0x7f, 0x8f, 0x6d, 0x8a, 0x7f,
+			0x74, 0x8f, 0x71, 0x84, 0x86, 0x78, 0x87, 0x75, 0x88, 0x7d, 0x75,
+			0x86, 0x7e, 0x7e, 0x82, 0x7a, 0x85, 0x83, 0x72, 0x89, 0x80, 0x73,
+			0x8b, 0x7d, 0x7a, 0x8c, 0x76, 0x81, 0x7f, 0x7e, 0x83, 0x7a, 0x80,
+			0x82, 0x7e, 0x7d, 0x83, 0x7e, 0x7c, 0x84, 0x7c, 0x7e, 0x84, 0x7a,
+			0x80, 0x83, 0x7e, 0x80, 0x7f, 0x7a, 0x84, 0x7f, 0x77, 0x88, 0x7b,
+			0x7d, 0x82, 0x7d, 0x7f, 0x7f, 0x80, 0x79, 0x87, 0x81, 0x71, 0x8d,
+			0x80, 0x75, 0x89, 0x7e, 0x79, 0x8a, 0x7a, 0x7b, 0x8a, 0x73, 0x7f,
+			0x87, 0x76, 0x81, 0x86, 0x7b, 0x7d, 0x89, 0x78, 0x7c, 0x8a, 0x79,
+			0x7e, 0x88, 0x79, 0x7b, 0x88, 0x73, 0x82, 0x8a, 0x72, 0x88, 0x82,
+			0x74, 0x83, 0x80, 0x7e, 0x84, 0x7e, 0x7e, 0x82, 0x7c, 0x82, 0x7b,
+			0x7f, 0x88, 0x74, 0x87, 0x86, 0x6f, 0x8e, 0x7f, 0x74, 0x8a, 0x7a,
+			0x7b, 0x87, 0x7c, 0x7b, 0x85, 0x7f, 0x7e, 0x82, 0x7f, 0x81, 0x7e,
+			0x80, 0x83, 0x7e, 0x7e, 0x7e, 0x7f, 0x7a, 0x82, 0x7f, 0x7a, 0x88,
+			0x7d, 0x81, 0x83, 0x7e, 0x83, 0x7a, 0x82, 0x7b, 0x7e, 0x80, 0x7b,
+			0x83, 0x81, 0x80, 0x7f, 0x86, 0x78, 0x84, 0x84, 0x75, 0x88, 0x7f,
+			0x7b, 0x84, 0x7c, 0x7f, 0x81, 0x7c, 0x7c, 0x85, 0x79, 0x80, 0x84,
+			0x7a, 0x83, 0x83, 0x7d, 0x81, 0x7f, 0x83, 0x76, 0x87, 0x81, 0x73,
+			0x89, 0x7f, 0x78, 0x86, 0x81, 0x78, 0x88, 0x81, 0x75, 0x8d, 0x7d,
+			0x7a, 0x86, 0x7a, 0x81, 0x7d, 0x7d, 0x7e, 0x7f, 0x7d, 0x7c, 0x7f,
+			0x7b, 0x81, 0x7a, 0x7c, 0x81, 0x7d, 0x7b, 0x82, 0x81, 0x7c, 0x86,
+			0x85, 0x7e, 0x8a, 0x85, 0x82, 0x89, 0x85, 0x83, 0x8b, 0x83, 0x83,
+			0x86, 0x80, 0x81, 0x80, 0x7b, 0x81, 0x82, 0x78, 0x85, 0x7e, 0x79,
+			0x81, 0x7a, 0x7c, 0x81, 0x80, 0x7d, 0x83, 0x7e, 0x80, 0x84, 0x7b,
+			0x88, 0x81, 0x84, 0x61, 0x68, 0x91, 0x52, 0x64, 0x75, 0x61, 0x77,
+			0x66, 0x74, 0x81, 0x89, 0x87, 0x87, 0xa5, 0x99, 0x9b, 0x9e, 0x9e,
+			0xa0, 0x97, 0x8f, 0x8a, 0x8d, 0x80, 0x72, 0x77, 0x76, 0x6a, 0x68,
+			0x6c, 0x6d, 0x70, 0x70, 0x78, 0x80, 0x81, 0x81, 0x8b, 0x8d, 0x8a,
+			0x8c, 0x8e, 0x8c, 0x88, 0x85, 0x84, 0x85, 0x7d, 0x7a, 0x7e, 0x7b,
+			0x79, 0x79, 0x7c, 0x7e, 0x7c, 0x81, 0x7f, 0x84, 0x88, 0x84, 0x83,
+			0x53, 0x6b, 0x95, 0x3e, 0x53, 0x79, 0x57, 0x69, 0x61, 0x6f, 0x7f,
+			0x8c, 0x8a, 0x83, 0xb1, 0xaa, 0x96, 0xa5, 0xac, 0xa3, 0x9c, 0x93,
+			0x8a, 0x91, 0x82, 0x72, 0x72, 0x78, 0x6b, 0x63, 0x69, 0x6c, 0x6e,
+			0x65, 0x72, 0x79, 0x79, 0x7d, 0x84, 0x8c, 0x89, 0x8d, 0x8e, 0x90,
+			0x90, 0x8a, 0x8b, 0x8b, 0x85, 0x7f, 0x80, 0x83, 0x77, 0x7b, 0x7c,
+			0x7a, 0x79, 0x7d, 0x7d, 0x7e, 0x85, 0x7d, 0x86, 0x84, 0x86, 0x62,
+			0x4d, 0x98, 0x58, 0x37, 0x7b, 0x5b, 0x60, 0x64, 0x6c, 0x77, 0x86,
+			0x98, 0x7d, 0xa0, 0xbb, 0x9c, 0x9d, 0xb1, 0xa9, 0x9c, 0x9b, 0x8a,
+			0x8d, 0x89, 0x7a, 0x6b, 0x71, 0x78, 0x5f, 0x63, 0x6c, 0x70, 0x67,
+			0x66, 0x7a, 0x79, 0x7b, 0x7b, 0x89, 0x8f, 0x89, 0x8d, 0x8f, 0x98,
+			0x8c, 0x89, 0x8e, 0x8a, 0x83, 0x7c, 0x82, 0x7f, 0x79, 0x77, 0x7a,
+			0x7c, 0x78, 0x7b, 0x7e, 0x81, 0x82, 0x7d, 0x85, 0x85, 0x87, 0x7e,
+			0x41, 0x70, 0x95, 0x33, 0x50, 0x73, 0x5e, 0x61, 0x5e, 0x78, 0x77,
+			0x98, 0x90, 0x7d, 0xb4, 0xb8, 0x98, 0x9e, 0xb5, 0xa7, 0x9b, 0x92,
+			0x8c, 0x89, 0x86, 0x75, 0x63, 0x77, 0x74, 0x5b, 0x61, 0x6f, 0x75,
+			0x68, 0x69, 0x75, 0x84, 0x7e, 0x78, 0x88, 0x94, 0x8d, 0x86, 0x90,
+			0x95, 0x8d, 0x87, 0x84, 0x88, 0x85, 0x7b, 0x78, 0x80, 0x7d, 0x75,
+			0x78, 0x79, 0x7b, 0x7b, 0x79, 0x7e, 0x80, 0x81, 0x7d, 0x85, 0x87,
+			0x8b, 0x7d, 0x42, 0x79, 0x8c, 0x3c, 0x57, 0x6b, 0x68, 0x5e, 0x63,
+			0x76, 0x72, 0x9a, 0x8c, 0x81, 0xa8, 0xb3, 0x9e, 0x96, 0xae, 0xa8,
+			0x99, 0x94, 0x8c, 0x87, 0x89, 0x7b, 0x6a, 0x72, 0x76, 0x6b, 0x63,
+			0x6f, 0x75, 0x6e, 0x71, 0x72, 0x7c, 0x81, 0x7e, 0x7d, 0x88, 0x91,
+			0x86, 0x84, 0x8a, 0x8c, 0x87, 0x81, 0x82, 0x84, 0x81, 0x79, 0x78,
+			0x7a, 0x7e, 0x78, 0x76, 0x7c, 0x7e, 0x7b, 0x7b, 0x7c, 0x83, 0x81,
+			0x7d, 0x80, 0x84, 0x87, 0x83, 0x8c, 0x69, 0x5c, 0x8f, 0x6f, 0x54,
+			0x67, 0x6e, 0x6b, 0x60, 0x73, 0x6a, 0x79, 0x8e, 0x80, 0x85, 0x98,
+			0xa6, 0x96, 0x97, 0xa6, 0x9f, 0x9b, 0x98, 0x8e, 0x87, 0x8c, 0x85,
+			0x72, 0x75, 0x7c, 0x70, 0x6a, 0x72, 0x73, 0x70, 0x72, 0x74, 0x74,
+			0x7e, 0x7e, 0x79, 0x7d, 0x87, 0x84, 0x7f, 0x81, 0x85, 0x83, 0x83,
+			0x81, 0x7f, 0x84, 0x81, 0x7d, 0x7c, 0x81, 0x7f, 0x7a, 0x7c, 0x7d,
+			0x7d, 0x7d, 0x7c, 0x7d, 0x7f, 0x7e, 0x7e, 0x7d, 0x81, 0x80, 0x7f,
+			0x80, 0x82, 0x82, 0x80, 0x76, 0x77, 0x7c, 0x77, 0x75, 0x72, 0x75,
+			0x75, 0x75, 0x79, 0x77, 0x7c, 0x82, 0x84, 0x86, 0x89, 0x8d, 0x8c,
+			0x8d, 0x8b, 0x8b, 0x89, 0x8a, 0x86, 0x84, 0x83, 0x82, 0x82, 0x7e,
+			0x7f, 0x7c, 0x7d, 0x7e, 0x7c, 0x7a, 0x7c, 0x7c, 0x7b, 0x7b, 0x7c,
+			0x7c, 0x7d, 0x7e, 0x7d, 0x7e, 0x7f, 0x81, 0x80, 0x80, 0x80, 0x82,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7d, 0x7e, 0x7e, 0x7e, 0x7c,
+			0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7c, 0x7e, 0x7d, 0x7d, 0x7d, 0x7e,
+			0x7f, 0x7e, 0x7f, 0x7f, 0x81, 0x80, 0x81, 0x81, 0x81, 0x82, 0x81,
+			0x80, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7d, 0x7f, 0x7e, 0x7d, 0x7e,
+			0x7d, 0x7f, 0x7e, 0x7f, 0x80, 0x81, 0x80, 0x81, 0x81, 0x83, 0x82,
+			0x83, 0x82, 0x84, 0x82, 0x82, 0x82, 0x81, 0x82, 0x81, 0x81, 0x7f,
+			0x81, 0x7f, 0x7e, 0x80, 0x7e, 0x7e, 0x7c, 0x7d, 0x7d, 0x7c, 0x7d,
+			0x7b, 0x7c, 0x7d, 0x7d, 0x7c, 0x7e, 0x7d, 0x80, 0x7d, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x7f, 0x81, 0x7f, 0x80, 0x7f, 0x80, 0x7e, 0x7f,
+			0x7e, 0x7d, 0x7e, 0x7d, 0x7e, 0x7d, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x81, 0x81, 0x7f, 0x81, 0x81,
+			0x82, 0x81, 0x80, 0x81, 0x80, 0x81, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x7e, 0x7d, 0x7f, 0x7d, 0x7f, 0x7e, 0x7f, 0x7f, 0x80,
+			0x7f, 0x81, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7d,
+			0x7e, 0x7d, 0x7d, 0x7d, 0x7f, 0x7d, 0x7d, 0x7f, 0x7e, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x81, 0x7f, 0x81, 0x80, 0x81, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x7d, 0x7f, 0x7d, 0x7e, 0x7d, 0x7f, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x7f,
+			0x80, 0x7f, 0x81, 0x81, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7d, 0x7d,
+			0x7d, 0x7c, 0x7d, 0x7c, 0x7d, 0x7e, 0x7d, 0x7f, 0x7e, 0x80, 0x80,
+			0x81, 0x82, 0x81, 0x81, 0x80, 0x81, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7d, 0x7e, 0x7f, 0x7f, 0x7d, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x7e, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7e, 0x80, 0x7e, 0x80, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e,
+			0x7f, 0x7d, 0x7e, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81,
+			0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x80,
+			0x7e, 0x80, 0x7e, 0x7e, 0x81, 0x7e, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x81, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7e,
+			0x7f, 0x7e, 0x7f, 0x7d, 0x7f, 0x7e, 0x7d, 0x7c, 0x77, 0x82, 0x82,
+			0x7e, 0x80, 0x7e, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x83, 0x7f, 0x7c,
+			0x86, 0x75, 0x7c, 0x85, 0x81, 0x85, 0x84, 0x82, 0x7b, 0x7e, 0x81,
+			0x80, 0x7f, 0x7b, 0x7d, 0x7e, 0x7d, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x81, 0x80, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x81, 0x7e, 0x7e,
+			0x7f, 0x7e, 0x7e, 0x80, 0x7c, 0x7d, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f,
+			0x79, 0x7c, 0x82, 0x82, 0x82, 0x84, 0x81, 0x80, 0x81, 0x78, 0x7f,
+			0x7e, 0x7f, 0x7c, 0x79, 0x7e, 0x7d, 0x7f, 0x75, 0x7f, 0x85, 0x82,
+			0x85, 0x86, 0x85, 0x83, 0x7f, 0x7c, 0x82, 0x83, 0x81, 0x80, 0x7e,
+			0x80, 0x7d, 0x7b, 0x7c, 0x7c, 0x7d, 0x7c, 0x78, 0x7b, 0x7c, 0x7e,
+			0x7e, 0x7d, 0x80, 0x81, 0x81, 0x80, 0x83, 0x84, 0x82, 0x81, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7c, 0x7f, 0x7d, 0x7f, 0x7d, 0x7e, 0x7f,
+			0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7d, 0x7e,
+			0x7f, 0x7c, 0x7e, 0x7f, 0x80, 0x80, 0x7d, 0x81, 0x7f, 0x7d, 0x81,
+			0x7e, 0x80, 0x81, 0x7f, 0x80, 0x81, 0x82, 0x7e, 0x81, 0x83, 0x80,
+			0x81, 0x81, 0x80, 0x80, 0x81, 0x80, 0x7f, 0x7f, 0x7f, 0x7d, 0x7c,
+			0x81, 0x7c, 0x7d, 0x7f, 0x7a, 0x80, 0x81, 0x7c, 0x7e, 0x83, 0x80,
+			0x7d, 0x7f, 0x83, 0x81, 0x81, 0x7f, 0x7f, 0x7f, 0x81, 0x7a, 0x7e,
+			0x81, 0x7d, 0x7d, 0x7c, 0x7e, 0x7f, 0x7d, 0x7d, 0x81, 0x7d, 0x7f,
+			0x7d, 0x7b, 0x7c, 0x7a, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7f, 0x7e,
+			0x82, 0x84, 0x85, 0x87, 0x89, 0x8a, 0x8b, 0x8d, 0x88, 0x8a, 0x8a,
+			0x85, 0x84, 0x83, 0x83, 0x7f, 0x80, 0x7e, 0x81, 0x7e, 0x7b, 0x7d,
+			0x7e, 0x7d, 0x7d, 0x7d, 0x7f, 0x7d, 0x7f, 0x80, 0x7f, 0x80, 0x6d,
+			0x58, 0x70, 0x77, 0x59, 0x5e, 0x65, 0x6f, 0x71, 0x75, 0x7e, 0x7b,
+			0x93, 0xa3, 0x94, 0x92, 0xa3, 0xab, 0x9e, 0x94, 0x98, 0x92, 0x8e,
+			0x89, 0x79, 0x72, 0x76, 0x6d, 0x64, 0x69, 0x6b, 0x6e, 0x72, 0x7c,
+			0x7e, 0x82, 0x8f, 0x8d, 0x90, 0x92, 0x96, 0x93, 0x8e, 0x90, 0x89,
+			0x87, 0x82, 0x7d, 0x7a, 0x7a, 0x7d, 0x78, 0x7e, 0x7d, 0x7c, 0x6c,
+			0x40, 0x65, 0x7c, 0x45, 0x4b, 0x58, 0x67, 0x6c, 0x64, 0x82, 0x7a,
+			0x8f, 0xb6, 0x9d, 0x96, 0xb3, 0xbf, 0xac, 0x96, 0x9d, 0xa2, 0x89,
+			0x84, 0x7f, 0x63, 0x72, 0x77, 0x61, 0x58, 0x60, 0x74, 0x60, 0x62,
+			0x7d, 0x76, 0x82, 0x89, 0x8f, 0x8e, 0x96, 0xa3, 0x8d, 0x93, 0x9d,
+			0x94, 0x8a, 0x8b, 0x91, 0x7f, 0x7e, 0x87, 0x7d, 0x7e, 0x82, 0x81,
+			0x7d, 0x6c, 0x44, 0x5c, 0x7d, 0x3e, 0x3f, 0x55, 0x5e, 0x69, 0x52,
+			0x7a, 0x7e, 0x89, 0xb5, 0x98, 0x9c, 0xbd, 0xc5, 0xb3, 0x98, 0xab,
+			0xb1, 0x8e, 0x80, 0x81, 0x6d, 0x71, 0x6e, 0x54, 0x59, 0x5e, 0x73,
+			0x64, 0x57, 0x77, 0x77, 0x7e, 0x81, 0x83, 0x94, 0x91, 0x9c, 0x8d,
+			0x8f, 0xa0, 0x94, 0x8c, 0x8a, 0x93, 0x90, 0x80, 0x84, 0x83, 0x86,
+			0x85, 0x80, 0x84, 0x7e, 0x81, 0x58, 0x40, 0x78, 0x64, 0x31, 0x48,
+			0x57, 0x66, 0x57, 0x5d, 0x81, 0x7d, 0x9c, 0xab, 0x90, 0xad, 0xc8,
+			0xbb, 0xa6, 0x9e, 0xb9, 0xa8, 0x7f, 0x84, 0x7e, 0x6f, 0x73, 0x5d,
+			0x56, 0x5e, 0x65, 0x6b, 0x53, 0x6a, 0x87, 0x75, 0x78, 0x81, 0x90,
+			0x92, 0x87, 0x92, 0x8c, 0x96, 0x95, 0x83, 0x89, 0x90, 0x8f, 0x7f,
+			0x81, 0x91, 0x84, 0x80, 0x84, 0x88, 0x89, 0x85, 0x89, 0x80, 0x71,
+			0x56, 0x60, 0x73, 0x42, 0x41, 0x58, 0x57, 0x5a, 0x54, 0x6f, 0x7e,
+			0x83, 0x9e, 0x99, 0x9f, 0xbd, 0xbb, 0xab, 0xa7, 0xb4, 0xb0, 0x91,
+			0x85, 0x8d, 0x7b, 0x71, 0x6a, 0x59, 0x62, 0x61, 0x61, 0x5c, 0x60,
+			0x7b, 0x76, 0x6f, 0x81, 0x8a, 0x89, 0x86, 0x8f, 0x8e, 0x8c, 0x93,
+			0x89, 0x86, 0x8b, 0x8b, 0x82, 0x7f, 0x8b, 0x87, 0x84, 0x83, 0x87,
+			0x8b, 0x87, 0x88, 0x89, 0x88, 0x84, 0x76, 0x5a, 0x57, 0x74, 0x54,
+			0x35, 0x53, 0x5c, 0x5b, 0x51, 0x62, 0x80, 0x8e, 0x93, 0xab, 0xaa,
+			0x9c, 0xb3, 0xb5, 0xa2, 0x9e, 0x9d, 0x95, 0x8a, 0x7a, 0x79, 0x70,
+			0x6d, 0x67, 0x59, 0x69, 0x6b, 0x60, 0x68, 0x72, 0x7e, 0x7d, 0x7f,
+			0x8a, 0x8d, 0x93, 0x8c, 0x8c, 0x95, 0x89, 0x83, 0x82, 0x82, 0x78,
+			0x74, 0x78, 0x73, 0x76, 0x75, 0x79, 0x80, 0x83, 0x84, 0x89, 0x90,
+			0x91, 0x90, 0x95, 0x93, 0x93, 0x91, 0x8d, 0x82, 0x70, 0x61, 0x6b,
+			0x64, 0x3c, 0x51, 0x5a, 0x49, 0x54, 0x57, 0x69, 0x77, 0x7e, 0x8a,
+			0x93, 0xad, 0xae, 0xa2, 0xb7, 0xba, 0xaa, 0xa7, 0xa0, 0x9a, 0x92,
+			0x7f, 0x79, 0x72, 0x6e, 0x66, 0x58, 0x65, 0x67, 0x5f, 0x66, 0x6d,
+			0x79, 0x79, 0x7c, 0x85, 0x89, 0x8e, 0x8c, 0x85, 0x93, 0x8d, 0x7f,
+			0x83, 0x87, 0x7c, 0x75, 0x7d, 0x7b, 0x79, 0x7d, 0x7e, 0x82, 0x87,
+			0x86, 0x8a, 0x91, 0x90, 0x8a, 0x91, 0x90, 0x8a, 0x89, 0x87, 0x87,
+			0x7d, 0x73, 0x60, 0x5a, 0x71, 0x4e, 0x3d, 0x60, 0x56, 0x51, 0x5b,
+			0x66, 0x79, 0x7c, 0x8a, 0x91, 0xa0, 0xb5, 0xa8, 0xa5, 0xbf, 0xb5,
+			0xa5, 0xa3, 0x9e, 0x9a, 0x87, 0x7d, 0x77, 0x6c, 0x6f, 0x5c, 0x58,
+			0x68, 0x63, 0x5d, 0x64, 0x6e, 0x76, 0x73, 0x7c, 0x85, 0x89, 0x8e,
+			0x8b, 0x90, 0x95, 0x8c, 0x8c, 0x8a, 0x89, 0x82, 0x7f, 0x7f, 0x7d,
+			0x7e, 0x79, 0x7d, 0x7e, 0x7f, 0x7c, 0x80, 0x84, 0x7f, 0x81, 0x7f,
+			0x7f, 0x80, 0x80, 0x7d, 0x7f, 0x81, 0x7f, 0x7e, 0x7f, 0x7d, 0x77,
+			0x73, 0x7d, 0x72, 0x6c, 0x73, 0x70, 0x70, 0x71, 0x74, 0x78, 0x79,
+			0x81, 0x82, 0x82, 0x8d, 0x8e, 0x8b, 0x92, 0x92, 0x91, 0x8f, 0x8f,
+			0x8f, 0x89, 0x8a, 0x87, 0x7f, 0x82, 0x7f, 0x7b, 0x79, 0x7b, 0x79,
+			0x75, 0x77, 0x79, 0x78, 0x77, 0x7b, 0x79, 0x7b, 0x7d, 0x7b, 0x7d,
+			0x7e, 0x81, 0x7d, 0x7d, 0x82, 0x7d, 0x7e, 0x80, 0x81, 0x80, 0x80,
+			0x81, 0x7f, 0x82, 0x81, 0x81, 0x82, 0x84, 0x81, 0x81, 0x82, 0x82,
+			0x80, 0x83, 0x81, 0x81, 0x80, 0x82, 0x81, 0x81, 0x81, 0x80, 0x7f,
+			0x80, 0x7d, 0x7d, 0x7d, 0x78, 0x77, 0x7b, 0x76, 0x6f, 0x76, 0x72,
+			0x72, 0x74, 0x75, 0x76, 0x79, 0x7e, 0x7f, 0x7f, 0x89, 0x89, 0x88,
+			0x8f, 0x91, 0x8e, 0x90, 0x8e, 0x8e, 0x89, 0x8a, 0x87, 0x80, 0x83,
+			0x7f, 0x7a, 0x7b, 0x7c, 0x77, 0x77, 0x78, 0x7a, 0x77, 0x79, 0x7a,
+			0x78, 0x7b, 0x7a, 0x7a, 0x7e, 0x7d, 0x7d, 0x7d, 0x81, 0x81, 0x7d,
+			0x82, 0x85, 0x7d, 0x82, 0x81, 0x80, 0x7e, 0x81, 0x80, 0x7d, 0x82,
+			0x7e, 0x80, 0x82, 0x7f, 0x80, 0x81, 0x83, 0x7f, 0x83, 0x83, 0x83,
+			0x81, 0x84, 0x82, 0x83, 0x82, 0x80, 0x82, 0x82, 0x80, 0x80, 0x80,
+			0x7d, 0x7b, 0x73, 0x70, 0x7a, 0x6c, 0x67, 0x74, 0x6c, 0x6e, 0x71,
+			0x74, 0x79, 0x7d, 0x81, 0x84, 0x8c, 0x91, 0x8d, 0x92, 0x9b, 0x92,
+			0x92, 0x94, 0x8f, 0x8d, 0x87, 0x82, 0x81, 0x7c, 0x78, 0x73, 0x75,
+			0x75, 0x6e, 0x72, 0x74, 0x75, 0x76, 0x77, 0x7b, 0x80, 0x7e, 0x81,
+			0x82, 0x86, 0x84, 0x83, 0x85, 0x85, 0x82, 0x80, 0x81, 0x7d, 0x7c,
+			0x7a, 0x78, 0x78, 0x77, 0x78, 0x79, 0x7b, 0x7c, 0x81, 0x84, 0x84,
+			0x87, 0x8a, 0x8b, 0x8b, 0x8a, 0x8b, 0x8a, 0x86, 0x85, 0x82, 0x83,
+			0x80, 0x7f, 0x80, 0x7d, 0x7d, 0x7f, 0x78, 0x7a, 0x6c, 0x5b, 0x81,
+			0x64, 0x4a, 0x7c, 0x61, 0x60, 0x71, 0x6c, 0x82, 0x80, 0x85, 0x90,
+			0x99, 0xa4, 0x92, 0x9f, 0xae, 0x95, 0x98, 0x9c, 0x8c, 0x90, 0x7e,
+			0x7a, 0x81, 0x6f, 0x6d, 0x6a, 0x70, 0x69, 0x64, 0x73, 0x71, 0x71,
+			0x79, 0x78, 0x85, 0x85, 0x80, 0x8e, 0x8e, 0x8b, 0x89, 0x8c, 0x8f,
+			0x84, 0x84, 0x81, 0x7c, 0x7b, 0x72, 0x70, 0x73, 0x6b, 0x6d, 0x6f,
+			0x73, 0x75, 0x7a, 0x80, 0x85, 0x8a, 0x8d, 0x92, 0x93, 0x92, 0x93,
+			0x93, 0x8e, 0x89, 0x88, 0x84, 0x7e, 0x7a, 0x79, 0x78, 0x75, 0x76,
+			0x78, 0x7e, 0x7a, 0x7c, 0x7c, 0x83, 0x68, 0x5c, 0x95, 0x55, 0x4e,
+			0x8b, 0x57, 0x69, 0x73, 0x6a, 0x8d, 0x7f, 0x84, 0x97, 0x9f, 0x9e,
+			0x90, 0xa7, 0xab, 0x89, 0x9c, 0x95, 0x86, 0x8d, 0x6f, 0x7e, 0x7c,
+			0x64, 0x6d, 0x6f, 0x6f, 0x69, 0x6d, 0x7d, 0x75, 0x79, 0x80, 0x83,
+			0x8e, 0x83, 0x86, 0x99, 0x8a, 0x86, 0x8c, 0x8b, 0x86, 0x7a, 0x7f,
+			0x7b, 0x74, 0x71, 0x69, 0x73, 0x70, 0x62, 0x71, 0x7b, 0x6e, 0x76,
+			0x85, 0x84, 0x82, 0x8b, 0x91, 0x92, 0x8d, 0x91, 0x97, 0x90, 0x85,
+			0x8c, 0x8d, 0x80, 0x7d, 0x82, 0x7e, 0x78, 0x77, 0x7c, 0x7a, 0x77,
+			0x79, 0x81, 0x7f, 0x79, 0x80, 0x7e, 0x7c, 0x6a, 0x61, 0x7f, 0x60,
+			0x4e, 0x75, 0x62, 0x65, 0x6e, 0x6e, 0x89, 0x82, 0x86, 0x9b, 0xa1,
+			0xa2, 0x9b, 0xaa, 0xac, 0x95, 0x9b, 0x99, 0x8c, 0x87, 0x75, 0x7b,
+			0x75, 0x63, 0x68, 0x69, 0x6a, 0x63, 0x69, 0x77, 0x75, 0x77, 0x82,
+			0x87, 0x8e, 0x87, 0x8f, 0x98, 0x8c, 0x8b, 0x8c, 0x8c, 0x84, 0x79,
+			0x7d, 0x78, 0x72, 0x6e, 0x6f, 0x6f, 0x6c, 0x6f, 0x70, 0x77, 0x78,
+			0x79, 0x82, 0x84, 0x85, 0x86, 0x90, 0x8b, 0x88, 0x8e, 0x8c, 0x89,
+			0x85, 0x87, 0x86, 0x80, 0x81, 0x80, 0x82, 0x7c, 0x7f, 0x83, 0x7f,
+			0x7e, 0x80, 0x83, 0x82, 0x7f, 0x85, 0x83, 0x81, 0x7c, 0x7c, 0x71,
+			0x56, 0x7c, 0x63, 0x42, 0x75, 0x5d, 0x5c, 0x6f, 0x6b, 0x83, 0x82,
+			0x8b, 0x9a, 0xa3, 0xa7, 0x9e, 0xae, 0xb0, 0x97, 0xa0, 0x9a, 0x8a,
+			0x88, 0x73, 0x79, 0x73, 0x62, 0x65, 0x68, 0x6a, 0x61, 0x6b, 0x78,
+			0x73, 0x79, 0x83, 0x86, 0x8f, 0x87, 0x8d, 0x95, 0x8c, 0x88, 0x89,
+			0x88, 0x80, 0x79, 0x7d, 0x75, 0x73, 0x6f, 0x71, 0x74, 0x71, 0x6c,
+			0x7a, 0x7c, 0x74, 0x7e, 0x86, 0x86, 0x85, 0x88, 0x90, 0x89, 0x88,
+			0x89, 0x8b, 0x85, 0x7f, 0x86, 0x82, 0x7e, 0x7e, 0x81, 0x80, 0x7c,
+			0x81, 0x83, 0x81, 0x7f, 0x83, 0x83, 0x7e, 0x81, 0x81, 0x81, 0x7d,
+			0x80, 0x7e, 0x80, 0x75, 0x72, 0x6b, 0x63, 0x73, 0x55, 0x5f, 0x73,
+			0x5f, 0x70, 0x75, 0x80, 0x87, 0x89, 0x9a, 0x9e, 0xa2, 0xa1, 0xa0,
+			0xa7, 0x9a, 0x91, 0x93, 0x85, 0x80, 0x75, 0x70, 0x73, 0x65, 0x66,
+			0x6d, 0x6e, 0x6e, 0x72, 0x80, 0x7f, 0x82, 0x89, 0x8f, 0x90, 0x8b,
+			0x8e, 0x8f, 0x88, 0x83, 0x81, 0x81, 0x7a, 0x73, 0x76, 0x75, 0x72,
+			0x70, 0x74, 0x76, 0x73, 0x75, 0x7c, 0x7d, 0x79, 0x7e, 0x85, 0x81,
+			0x81, 0x86, 0x89, 0x85, 0x87, 0x89, 0x89, 0x85, 0x86, 0x87, 0x85,
+			0x81, 0x81, 0x82, 0x7c, 0x7c, 0x7e, 0x7e, 0x7b, 0x7b, 0x7e, 0x7c,
+			0x7c, 0x7e, 0x80, 0x80, 0x7f, 0x82, 0x82, 0x81, 0x80, 0x82, 0x82,
+			0x78, 0x65, 0x78, 0x6f, 0x58, 0x6b, 0x6f, 0x68, 0x6e, 0x7a, 0x81,
+			0x84, 0x8c, 0x92, 0x9e, 0x9a, 0x97, 0x9f, 0x98, 0x90, 0x8d, 0x8c,
+			0x81, 0x7b, 0x78, 0x76, 0x74, 0x70, 0x72, 0x79, 0x77, 0x78, 0x7f,
+			0x83, 0x80, 0x84, 0x88, 0x87, 0x85, 0x83, 0x84, 0x82, 0x7e, 0x7b,
+			0x7f, 0x7b, 0x76, 0x7b, 0x79, 0x77, 0x77, 0x78, 0x78, 0x76, 0x78,
+			0x7c, 0x7b, 0x7a, 0x7f, 0x82, 0x82, 0x84, 0x88, 0x8a, 0x88, 0x8a,
+			0x8b, 0x8a, 0x86, 0x84, 0x85, 0x80, 0x7d, 0x7c, 0x7d, 0x79, 0x79,
+			0x7a, 0x7d, 0x7b, 0x7d, 0x80, 0x80, 0x81, 0x81, 0x83, 0x84, 0x80,
+			0x83, 0x80, 0x7f, 0x7e, 0x7d, 0x7d, 0x7a, 0x7f, 0x71, 0x66, 0x7f,
+			0x68, 0x62, 0x73, 0x71, 0x6f, 0x75, 0x80, 0x7f, 0x8a, 0x89, 0x8f,
+			0x99, 0x90, 0x92, 0x96, 0x91, 0x89, 0x8d, 0x88, 0x82, 0x82, 0x7d,
+			0x7e, 0x7d, 0x78, 0x7c, 0x7c, 0x78, 0x78, 0x7e, 0x7a, 0x79, 0x7c,
+			0x7d, 0x7e, 0x7c, 0x7e, 0x80, 0x80, 0x80, 0x81, 0x83, 0x7f, 0x80,
+			0x81, 0x7d, 0x7c, 0x7b, 0x7c, 0x79, 0x7a, 0x7a, 0x7d, 0x7c, 0x7e,
+			0x80, 0x82, 0x82, 0x84, 0x84, 0x85, 0x84, 0x83, 0x84, 0x82, 0x81,
+			0x7f, 0x7f, 0x7c, 0x7d, 0x7d, 0x7d, 0x7c, 0x7e, 0x7e, 0x7f, 0x80,
+			0x7e, 0x80, 0x81, 0x80, 0x7f, 0x80, 0x7e, 0x7f, 0x7e, 0x7c, 0x7d,
+			0x7d, 0x7b, 0x7c, 0x7c, 0x7c, 0x7c, 0x7f, 0x7e, 0x7f, 0x80, 0x81,
+			0x81, 0x7e, 0x7e, 0x80, 0x7e, 0x7d, 0x7f, 0x80, 0x7d, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x81, 0x7f, 0x81, 0x81, 0x82, 0x82, 0x84,
+			0x83, 0x83, 0x83, 0x83, 0x83, 0x82, 0x81, 0x81, 0x80, 0x7f, 0x7d,
+			0x80, 0x7e, 0x7d, 0x7c, 0x7f, 0x7d, 0x7d, 0x7f, 0x7e, 0x7f, 0x7f,
+			0x7e, 0x7e, 0x7d, 0x7e, 0x7e, 0x7d, 0x7e, 0x7e, 0x7f, 0x7d, 0x7e,
+			0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x80, 0x81, 0x80, 0x81, 0x81, 0x81,
+			0x80, 0x81, 0x81, 0x7f, 0x81, 0x7f, 0x7f, 0x80, 0x7e, 0x7f, 0x7e,
+			0x7d, 0x7d, 0x7e, 0x7b, 0x7b, 0x7d, 0x7b, 0x7a, 0x7c, 0x7b, 0x7c,
+			0x7c, 0x7e, 0x7d, 0x80, 0x7f, 0x81, 0x81, 0x82, 0x81, 0x83, 0x82,
+			0x80, 0x82, 0x81, 0x81, 0x80, 0x81, 0x81, 0x82, 0x80, 0x81, 0x82,
+			0x80, 0x81, 0x80, 0x82, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x81, 0x80, 0x81, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7e, 0x7e, 0x7c, 0x7e, 0x7e, 0x7d,
+			0x7e, 0x7c, 0x7e, 0x7f, 0x7e, 0x7d, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7d,
+			0x7e, 0x7c, 0x7c, 0x7c, 0x7d, 0x7c, 0x7d, 0x7d, 0x7f, 0x7e, 0x80,
+			0x81, 0x82, 0x81, 0x83, 0x83, 0x83, 0x83, 0x83, 0x82, 0x83, 0x81,
+			0x82, 0x80, 0x80, 0x7e, 0x7f, 0x7e, 0x7c, 0x7e, 0x7d, 0x7e, 0x7d,
+			0x7e, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x81, 0x81, 0x82, 0x81, 0x81,
+			0x80,
+		},
+		{ // 5
+			0x7f, 0x7f, 0x7f, 0x7c, 0x7a, 0x7c, 0x7d, 0x7a, 0x7b, 0x81, 0x83,
+			0x82, 0x85, 0x87, 0x87, 0x88, 0x87, 0x84, 0x83, 0x84, 0x81, 0x7c,
+			0x7c, 0x7f, 0x7d, 0x7a, 0x7c, 0x7f, 0x7e, 0x7e, 0x81, 0x82, 0x82,
+			0x83, 0x82, 0x82, 0x83, 0x81, 0x7e, 0x7e, 0x7f, 0x7c, 0x7b, 0x7c,
+			0x7c, 0x7b, 0x7c, 0x7d, 0x7d, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x81, 0x82, 0x81, 0x82, 0x81, 0x82, 0x82, 0x82, 0x82,
+			0x81, 0x82, 0x81, 0x83, 0x83, 0x83, 0x83, 0x83, 0x85, 0x84, 0x84,
+			0x85, 0x85, 0x83, 0x78, 0x5c, 0x68, 0x7a, 0x57, 0x5d, 0x6f, 0x69,
+			0x7e, 0x81, 0x7e, 0x96, 0xa6, 0x9f, 0x99, 0xa1, 0xa2, 0x94, 0x89,
+			0x7e, 0x74, 0x79, 0x6c, 0x5b, 0x69, 0x70, 0x6f, 0x73, 0x7e, 0x8b,
+			0x92, 0x90, 0x91, 0x9a, 0x95, 0x89, 0x84, 0x82, 0x7b, 0x74, 0x6e,
+			0x71, 0x7a, 0x77, 0x7d, 0x8a, 0x8d, 0x91, 0x98, 0x99, 0x98, 0x92,
+			0x54, 0x4f, 0x83, 0x49, 0x34, 0x5b, 0x52, 0x70, 0x82, 0x74, 0x95,
+			0xbe, 0xb8, 0xa4, 0xa3, 0xaf, 0xa2, 0x7b, 0x6d, 0x62, 0x64, 0x67,
+			0x46, 0x56, 0x7c, 0x81, 0x89, 0x8d, 0xa2, 0xb5, 0xa7, 0x94, 0x89,
+			0x8f, 0x7f, 0x5b, 0x56, 0x60, 0x62, 0x59, 0x66, 0x80, 0x90, 0x95,
+			0x96, 0xa5, 0xaa, 0x9c, 0x8a, 0x87, 0x87, 0x78, 0x6d, 0x6d, 0x76,
+			0x7a, 0x7e, 0x85, 0x8b, 0x81, 0x50, 0x6a, 0x8b, 0x53, 0x5d, 0x72,
+			0x6d, 0x8b, 0x8b, 0x7f, 0x99, 0xb0, 0x9f, 0x88, 0x87, 0x92, 0x81,
+			0x66, 0x68, 0x67, 0x77, 0x7d, 0x68, 0x80, 0x9d, 0x98, 0x94, 0x8e,
+			0x95, 0x96, 0x7e, 0x70, 0x6c, 0x72, 0x69, 0x59, 0x68, 0x7e, 0x81,
+			0x7f, 0x8a, 0x98, 0x97, 0x8f, 0x87, 0x8b, 0x89, 0x7a, 0x74, 0x7b,
+			0x81, 0x7e, 0x7f, 0x87, 0x8e, 0x91, 0x91, 0x92, 0x8f, 0x7f, 0x40,
+			0x38, 0x78, 0x52, 0x3b, 0x72, 0x7c, 0x96, 0xb3, 0x98, 0x9d, 0xc4,
+			0xa8, 0x75, 0x70, 0x6e, 0x67, 0x59, 0x4f, 0x65, 0x86, 0x9a, 0x90,
+			0x94, 0xb5, 0xaf, 0x94, 0x82, 0x71, 0x73, 0x68, 0x50, 0x58, 0x71,
+			0x7e, 0x82, 0x8c, 0x99, 0xa1, 0x97, 0x83, 0x7d, 0x7d, 0x6b, 0x61,
+			0x6c, 0x7c, 0x84, 0x85, 0x8e, 0x97, 0x97, 0x8b, 0x81, 0x85, 0x85,
+			0x7b, 0x79, 0x83, 0x89, 0x83, 0x81, 0x70, 0x41, 0x5c, 0x86, 0x53,
+			0x5d, 0x89, 0x86, 0x9a, 0xa3, 0x8d, 0x92, 0xa8, 0x8a, 0x65, 0x70,
+			0x72, 0x6d, 0x6f, 0x6f, 0x80, 0x96, 0x9d, 0x90, 0x8c, 0x9a, 0x8e,
+			0x78, 0x6f, 0x69, 0x72, 0x75, 0x6f, 0x7b, 0x8b, 0x93, 0x8e, 0x85,
+			0x86, 0x83, 0x6f, 0x65, 0x6d, 0x74, 0x77, 0x7e, 0x8b, 0x97, 0x9a,
+			0x8e, 0x85, 0x89, 0x7f, 0x72, 0x72, 0x7a, 0x82, 0x84, 0x86, 0x8d,
+			0x95, 0x92, 0x8d, 0x84, 0x7e, 0x56, 0x22, 0x5c, 0x79, 0x53, 0x78,
+			0x96, 0x9f, 0xb9, 0xac, 0x85, 0x86, 0x96, 0x6b, 0x4b, 0x5f, 0x6c,
+			0x7d, 0x88, 0x89, 0x9e, 0xb0, 0xa7, 0x86, 0x73, 0x7c, 0x6f, 0x5e,
+			0x5d, 0x67, 0x84, 0x92, 0x90, 0x96, 0x9c, 0x99, 0x84, 0x69, 0x64,
+			0x6c, 0x66, 0x62, 0x75, 0x8d, 0x96, 0x96, 0x93, 0x93, 0x91, 0x7c,
+			0x6d, 0x74, 0x79, 0x76, 0x79, 0x84, 0x91, 0x8f, 0x8b, 0x87, 0x89,
+			0x8f, 0x84, 0x7f, 0x7a, 0x75, 0x4d, 0x2b, 0x6f, 0x8a, 0x67, 0x87,
+			0x9c, 0x9f, 0xb0, 0x99, 0x70, 0x78, 0x8b, 0x66, 0x54, 0x6d, 0x80,
+			0x90, 0x8f, 0x8d, 0x99, 0xa2, 0x97, 0x73, 0x68, 0x79, 0x73, 0x6b,
+			0x6e, 0x78, 0x93, 0x97, 0x8d, 0x8b, 0x8c, 0x89, 0x76, 0x64, 0x67,
+			0x74, 0x7a, 0x7a, 0x81, 0x90, 0x94, 0x8c, 0x7f, 0x7d, 0x7f, 0x75,
+			0x72, 0x7a, 0x86, 0x89, 0x86, 0x89, 0x8d, 0x89, 0x81, 0x7c, 0x81,
+			0x86, 0x81, 0x82, 0x89, 0x8c, 0x84, 0x7c, 0x54, 0x2b, 0x70, 0x85,
+			0x53, 0x7b, 0x9f, 0x9f, 0xaf, 0xa0, 0x7a, 0x87, 0x92, 0x63, 0x50,
+			0x67, 0x7c, 0x83, 0x82, 0x90, 0x9e, 0xa8, 0x9f, 0x78, 0x75, 0x81,
+			0x6e, 0x65, 0x67, 0x79, 0x8f, 0x8e, 0x8c, 0x8e, 0x93, 0x8b, 0x74,
+			0x67, 0x6b, 0x6f, 0x6f, 0x78, 0x87, 0x90, 0x96, 0x90, 0x86, 0x83,
+			0x7a, 0x70, 0x6e, 0x77, 0x7f, 0x81, 0x87, 0x8d, 0x90, 0x8c, 0x84,
+			0x81, 0x80, 0x7e, 0x7c, 0x7c, 0x7f, 0x86, 0x89, 0x89, 0x89, 0x86,
+			0x75, 0x38, 0x3f, 0x8a, 0x6a, 0x5b, 0x92, 0x9b, 0xa6, 0xb1, 0x88,
+			0x7d, 0x96, 0x79, 0x55, 0x56, 0x72, 0x82, 0x7a, 0x8a, 0x99, 0xa6,
+			0xad, 0x86, 0x77, 0x84, 0x75, 0x65, 0x5d, 0x6b, 0x85, 0x87, 0x88,
+			0x93, 0x9d, 0x9c, 0x85, 0x72, 0x74, 0x71, 0x67, 0x63, 0x68, 0x80,
+			0x91, 0x8c, 0x8b, 0x96, 0x91, 0x7d, 0x72, 0x71, 0x74, 0x73, 0x74,
+			0x7e, 0x8f, 0x8f, 0x88, 0x8c, 0x8f, 0x86, 0x7c, 0x7b, 0x7d, 0x7f,
+			0x7b, 0x7d, 0x86, 0x8c, 0x8c, 0x8c, 0x8b, 0x86, 0x6f, 0x32, 0x44,
+			0x81, 0x55, 0x56, 0x90, 0x96, 0xac, 0xad, 0x8c, 0x99, 0xa0, 0x7a,
+			0x58, 0x5c, 0x77, 0x6c, 0x6a, 0x83, 0x93, 0xae, 0xa3, 0x8a, 0x98,
+			0x95, 0x79, 0x66, 0x60, 0x6f, 0x72, 0x6c, 0x78, 0x8c, 0x9c, 0x91,
+			0x85, 0x8d, 0x88, 0x79, 0x68, 0x63, 0x72, 0x6c, 0x6f, 0x87, 0x8c,
+			0x91, 0x93, 0x8d, 0x89, 0x84, 0x75, 0x70, 0x75, 0x73, 0x76, 0x81,
+			0x87, 0x8a, 0x8e, 0x8d, 0x8b, 0x86, 0x7d, 0x79, 0x7a, 0x78, 0x77,
+			0x7c, 0x80, 0x84, 0x86, 0x88, 0x8b, 0x8c, 0x89, 0x80, 0x75, 0x4b,
+			0x48, 0x7d, 0x5c, 0x53, 0x8a, 0x8b, 0x99, 0xa3, 0x92, 0xa4, 0xa5,
+			0x88, 0x70, 0x72, 0x7c, 0x63, 0x5f, 0x73, 0x7c, 0x8e, 0x8a, 0x88,
+			0xa2, 0x9d, 0x8c, 0x86, 0x81, 0x7e, 0x6d, 0x63, 0x6a, 0x74, 0x78,
+			0x74, 0x84, 0x94, 0x90, 0x8e, 0x8d, 0x8c, 0x87, 0x76, 0x6f, 0x74,
+			0x6f, 0x64, 0x74, 0x7e, 0x7d, 0x86, 0x89, 0x8c, 0x8f, 0x88, 0x82,
+			0x81, 0x7b, 0x76, 0x79, 0x79, 0x7b, 0x80, 0x84, 0x86, 0x85, 0x87,
+			0x89, 0x86, 0x80, 0x7f, 0x80, 0x7f, 0x7c, 0x7c, 0x7f, 0x80, 0x7f,
+			0x83, 0x85, 0x87, 0x83, 0x7f, 0x6e, 0x51, 0x75, 0x73, 0x4d, 0x74,
+			0x7b, 0x80, 0x94, 0x85, 0x9b, 0xa8, 0x96, 0x91, 0x8d, 0x8e, 0x7c,
+			0x6d, 0x70, 0x6d, 0x73, 0x6d, 0x72, 0x89, 0x86, 0x8a, 0x95, 0x96,
+			0x98, 0x8c, 0x84, 0x83, 0x7b, 0x6f, 0x66, 0x6e, 0x71, 0x6d, 0x74,
+			0x7d, 0x89, 0x8c, 0x89, 0x90, 0x93, 0x8d, 0x84, 0x80, 0x7a, 0x75,
+			0x73, 0x6d, 0x72, 0x76, 0x77, 0x7b, 0x80, 0x83, 0x87, 0x88, 0x88,
+			0x8a, 0x8a, 0x88, 0x84, 0x80, 0x7f, 0x7c, 0x76, 0x76, 0x78, 0x7a,
+			0x7e, 0x80, 0x87, 0x8b, 0x8b, 0x8a, 0x8a, 0x88, 0x83, 0x7e, 0x7c,
+			0x7a, 0x78, 0x79, 0x77, 0x77, 0x60, 0x70, 0x83, 0x5b, 0x73, 0x7e,
+			0x6f, 0x8a, 0x7a, 0x86, 0x9f, 0x8e, 0x91, 0x96, 0x97, 0x8d, 0x83,
+			0x83, 0x7c, 0x7e, 0x70, 0x6f, 0x7f, 0x74, 0x78, 0x7d, 0x80, 0x88,
+			0x80, 0x83, 0x8a, 0x8a, 0x86, 0x83, 0x8a, 0x85, 0x81, 0x7d, 0x79,
+			0x7a, 0x71, 0x6f, 0x74, 0x74, 0x77, 0x79, 0x81, 0x88, 0x87, 0x88,
+			0x8d, 0x8a, 0x86, 0x81, 0x7e, 0x7d, 0x76, 0x75, 0x79, 0x7a, 0x7a,
+			0x7e, 0x81, 0x83, 0x84, 0x85, 0x85, 0x83, 0x83, 0x84, 0x82, 0x81,
+			0x83, 0x83, 0x82, 0x80, 0x7f, 0x82, 0x7f, 0x7b, 0x7c, 0x7d, 0x7c,
+			0x7a, 0x7e, 0x82, 0x83, 0x83, 0x86, 0x86, 0x85, 0x7d, 0x73, 0x7d,
+			0x74, 0x69, 0x72, 0x6d, 0x71, 0x76, 0x75, 0x80, 0x85, 0x84, 0x8b,
+			0x8f, 0x8d, 0x8e, 0x8b, 0x8a, 0x8c, 0x86, 0x85, 0x88, 0x84, 0x83,
+			0x84, 0x82, 0x81, 0x7e, 0x7b, 0x7a, 0x79, 0x77, 0x78, 0x79, 0x7a,
+			0x7c, 0x7c, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x80, 0x81, 0x81, 0x81,
+			0x82, 0x82, 0x82, 0x81, 0x82, 0x80, 0x7e, 0x7e, 0x7c, 0x7b, 0x7c,
+			0x7c, 0x7e, 0x80, 0x82, 0x82, 0x82, 0x82, 0x80, 0x80, 0x7e, 0x7d,
+			0x7e, 0x7e, 0x7f, 0x82, 0x83, 0x83, 0x84, 0x83, 0x82, 0x82, 0x80,
+			0x7e, 0x7f, 0x7e, 0x7c, 0x7c, 0x7d, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f,
+			0x7e, 0x7e, 0x7d, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x82, 0x81, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7d, 0x7e, 0x80, 0x7f, 0x81, 0x7f, 0x7f,
+			0x84, 0x81, 0x7e, 0x7e, 0x80, 0x81, 0x81, 0x80, 0x80, 0x83, 0x82,
+			0x81, 0x82, 0x82, 0x82, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x81, 0x82, 0x81, 0x80, 0x7f, 0x7e, 0x7d, 0x7b, 0x7a,
+			0x7b, 0x7c, 0x7c, 0x7d, 0x7f, 0x81, 0x81, 0x82, 0x81, 0x81, 0x81,
+			0x7f, 0x7d, 0x7f, 0x7e, 0x7e, 0x7f, 0x80, 0x82, 0x82, 0x82, 0x82,
+			0x82, 0x82, 0x80, 0x80, 0x81, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7e, 0x7c, 0x7d, 0x7e, 0x7d, 0x7f, 0x7f, 0x80, 0x82, 0x82, 0x82,
+			0x81, 0x7f, 0x80, 0x7e, 0x7d, 0x7d, 0x7e, 0x80, 0x80, 0x80, 0x82,
+			0x83, 0x82, 0x81, 0x80, 0x80, 0x81, 0x7f, 0x7d, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x81, 0x82, 0x82, 0x82, 0x81, 0x81, 0x80, 0x7e, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7e, 0x7f, 0x81, 0x84, 0x84, 0x84, 0x83, 0x83, 0x80, 0x7d,
+			0x7b, 0x7b, 0x7a, 0x7a, 0x7c, 0x7f, 0x81, 0x82, 0x82, 0x83, 0x83,
+			0x82, 0x80, 0x7f, 0x7d, 0x7d, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x81,
+			0x81, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x81, 0x81,
+			0x81, 0x80, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7f, 0x80, 0x81,
+			0x82, 0x82, 0x81, 0x80, 0x7f, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x80,
+			0x82, 0x82, 0x82, 0x82, 0x81, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7f,
+			0x7f, 0x80, 0x81, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7e,
+			0x7f, 0x7f, 0x80, 0x80, 0x81, 0x81, 0x80, 0x80, 0x7f, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7f, 0x7e, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x82, 0x81, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7e, 0x7f, 0x80, 0x7f, 0x7e, 0x7e, 0x80, 0x80, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x7e, 0x7f, 0x80, 0x80, 0x7e, 0x7f, 0x80, 0x81,
+			0x80, 0x80, 0x80, 0x81, 0x80, 0x7e, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x81, 0x81, 0x80, 0x80, 0x81, 0x80, 0x7e, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7e, 0x80, 0x81, 0x81, 0x81, 0x82, 0x82, 0x80, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x81,
+			0x80, 0x7f, 0x80, 0x7f, 0x7e, 0x7e, 0x7f, 0x80, 0x81, 0x80, 0x80,
+			0x81, 0x81, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x80, 0x81,
+			0x81, 0x82, 0x82, 0x82, 0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x81, 0x81, 0x80, 0x80, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x81, 0x81,
+			0x81, 0x80, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7f, 0x81,
+			0x81, 0x82, 0x83, 0x84, 0x83, 0x81, 0x80, 0x7f, 0x7e, 0x7c, 0x7c,
+			0x7d, 0x7e, 0x7f, 0x7f, 0x81, 0x82, 0x82, 0x81, 0x80, 0x80, 0x7f,
+			0x7e, 0x7d, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x81, 0x81,
+			0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x81, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x7e, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7e, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x82,
+			0x81, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7d, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x80, 0x81, 0x82, 0x81, 0x80, 0x81, 0x81, 0x7f, 0x7e, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x80, 0x81, 0x81, 0x80, 0x80, 0x80, 0x81, 0x7d, 0x7c,
+			0x7f, 0x80, 0x81, 0x80, 0x81, 0x80, 0x80, 0x81, 0x81, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x81,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x81, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x7f, 0x7e, 0x7d, 0x7d,
+			0x7e, 0x7f, 0x80, 0x80, 0x81, 0x81, 0x82, 0x81, 0x81, 0x80, 0x7f,
+			0x7e, 0x7e, 0x7e, 0x7d, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x82, 0x81,
+			0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x80, 0x7f, 0x80, 0x81,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x81, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x81, 0x7f, 0x7e, 0x80, 0x7e, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x7e, 0x7f, 0x7f, 0x7e, 0x80, 0x80, 0x7f,
+			0x81, 0x7f, 0x81, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x81, 0x80, 0x80, 0x80, 0x80, 0x81, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x80, 0x81, 0x7f, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7e, 0x80, 0x81, 0x7e, 0x82,
+			0x7e, 0x7e, 0x82, 0x7c, 0x80, 0x82, 0x7f, 0x80, 0x80, 0x7d, 0x7f,
+			0x80, 0x7e, 0x80, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x81, 0x7e, 0x7f,
+			0x7f, 0x7d, 0x80, 0x7e, 0x7f, 0x80, 0x7f, 0x81, 0x7f, 0x7f, 0x82,
+			0x80, 0x7f, 0x82, 0x7e, 0x7f, 0x7f, 0x7e, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x81, 0x7f, 0x80,
+			0x80, 0x80, 0x81, 0x7e, 0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x81, 0x7e,
+			0x81, 0x7f, 0x7e, 0x81, 0x7f, 0x7e, 0x81, 0x7e, 0x7f, 0x81, 0x7d,
+			0x80, 0x82, 0x7e, 0x81, 0x81, 0x7c, 0x83, 0x7f, 0x7e, 0x7f, 0x7e,
+			0x80, 0x7e, 0x7f, 0x81, 0x80, 0x81, 0x81, 0x7f, 0x81, 0x7f, 0x7f,
+			0x7e, 0x80, 0x7d, 0x81, 0x7f, 0x7f, 0x83, 0x7d, 0x80, 0x81, 0x7e,
+			0x7f, 0x80, 0x7c, 0x81, 0x7f, 0x7f, 0x81, 0x7f, 0x81, 0x7f, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x80, 0x81, 0x80, 0x7f, 0x81,
+			0x82, 0x7d, 0x80, 0x80, 0x7d, 0x82, 0x7e, 0x7e, 0x81, 0x7f, 0x80,
+			0x80, 0x7f, 0x81, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7e, 0x81,
+			0x7f, 0x7f, 0x81, 0x7e, 0x82, 0x80, 0x80, 0x81, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7e, 0x7f, 0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x7f, 0x81, 0x7f, 0x80, 0x7f, 0x7e, 0x81, 0x7e, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x81, 0x7f, 0x80, 0x81, 0x7f, 0x80, 0x7f, 0x7e,
+			0x7f, 0x80, 0x7d, 0x81, 0x7f, 0x7f, 0x82, 0x7f, 0x80, 0x82, 0x7e,
+			0x7f, 0x80, 0x7d, 0x80, 0x7f, 0x7e, 0x81, 0x81, 0x7f, 0x82, 0x7f,
+			0x80, 0x81, 0x7d, 0x80, 0x7d, 0x80, 0x80, 0x7e, 0x81, 0x81, 0x7f,
+			0x80, 0x80, 0x7f, 0x81, 0x7d, 0x7e, 0x82, 0x7e, 0x7f, 0x81, 0x7f,
+			0x82, 0x81, 0x7d, 0x82, 0x7f, 0x7f, 0x80, 0x7d, 0x80, 0x82, 0x7e,
+			0x81, 0x80, 0x7f, 0x81, 0x7e, 0x80, 0x7f, 0x7e, 0x81, 0x7e, 0x7f,
+			0x81, 0x7e, 0x80, 0x81, 0x7d, 0x80, 0x7f, 0x7e, 0x80, 0x80, 0x80,
+			0x7f, 0x81, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x81, 0x7f, 0x7f, 0x80,
+			0x7d, 0x80, 0x7e, 0x7e, 0x81, 0x7e, 0x81, 0x7f, 0x80, 0x81, 0x80,
+			0x80, 0x80, 0x7f, 0x7e, 0x81, 0x7e, 0x80, 0x7f, 0x81, 0x80, 0x7f,
+			0x82, 0x7d, 0x80, 0x80, 0x7d, 0x7f, 0x80, 0x7d, 0x81, 0x81, 0x7e,
+			0x82, 0x80, 0x80, 0x81, 0x7e, 0x80, 0x80, 0x7e, 0x80, 0x7e, 0x80,
+			0x80, 0x7e, 0x80, 0x81, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x81, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x81, 0x7e, 0x80, 0x81, 0x7f, 0x80,
+			0x80, 0x80, 0x7f, 0x81, 0x7d, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x81,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x80, 0x7f,
+			0x80, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x80, 0x7e, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x81, 0x7f, 0x80, 0x80, 0x7f, 0x81,
+			0x7f, 0x7f, 0x80, 0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+		},
+		{ // 6
+			0x80, 0x80, 0x80, 0x7f, 0x7e, 0x80, 0x81, 0x80, 0x7f, 0x7e, 0x7f,
+			0x81, 0x80, 0x7f, 0x7e, 0x7f, 0x81, 0x80, 0x7f, 0x7e, 0x7f, 0x81,
+			0x81, 0x7f, 0x7e, 0x7f, 0x81, 0x81, 0x7f, 0x7e, 0x7e, 0x81, 0x81,
+			0x80, 0x7e, 0x7d, 0x80, 0x82, 0x81, 0x7d, 0x7d, 0x80, 0x83, 0x80,
+			0x7d, 0x7d, 0x81, 0x82, 0x7f, 0x7d, 0x7f, 0x82, 0x81, 0x7e, 0x7e,
+			0x80, 0x82, 0x80, 0x7d, 0x7e, 0x82, 0x82, 0x7f, 0x7c, 0x7f, 0x82,
+			0x81, 0x7e, 0x7d, 0x80, 0x82, 0x80, 0x7e, 0x7e, 0x80, 0x81, 0x80,
+			0x7f, 0x7f, 0x7f, 0x80, 0x81, 0x7f, 0x7e, 0x80, 0x81, 0x80, 0x7e,
+			0x7e, 0x80, 0x81, 0x80, 0x7e, 0x7e, 0x81, 0x81, 0x7f, 0x7d, 0x7e,
+			0x81, 0x82, 0x80, 0x7c, 0x7d, 0x82, 0x83, 0x7e, 0x7c, 0x7f, 0x83,
+			0x81, 0x7d, 0x7e, 0x80, 0x81, 0x80, 0x7f, 0x7f, 0x80, 0x81, 0x80,
+			0x7f, 0x7e, 0x80, 0x82, 0x7f, 0x7d, 0x7f, 0x81, 0x80, 0x80, 0x7e,
+			0x7e, 0x80, 0x82, 0x7f, 0x7e, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x7e, 0x7f, 0x82, 0x81, 0x7c, 0x7e, 0x82, 0x80, 0x7d, 0x80, 0x81,
+			0x7d, 0x7f, 0x83, 0x80, 0x7d, 0x7d, 0x82, 0x84, 0x7e, 0x7b, 0x80,
+			0x82, 0x80, 0x7e, 0x80, 0x7f, 0x7e, 0x80, 0x83, 0x81, 0x7a, 0x7d,
+			0x85, 0x82, 0x7c, 0x7c, 0x81, 0x82, 0x7e, 0x80, 0x80, 0x7d, 0x7e,
+			0x83, 0x83, 0x7a, 0x7b, 0x84, 0x85, 0x7c, 0x7b, 0x81, 0x82, 0x80,
+			0x7e, 0x7f, 0x80, 0x7e, 0x82, 0x83, 0x7b, 0x7c, 0x84, 0x82, 0x7d,
+			0x7e, 0x7e, 0x83, 0x81, 0x7e, 0x7d, 0x7f, 0x84, 0x82, 0x7c, 0x79,
+			0x82, 0x86, 0x7f, 0x7a, 0x7c, 0x85, 0x85, 0x7c, 0x7c, 0x7e, 0x81,
+			0x84, 0x81, 0x7b, 0x79, 0x84, 0x86, 0x7d, 0x7b, 0x7d, 0x81, 0x84,
+			0x81, 0x79, 0x7b, 0x87, 0x84, 0x78, 0x7e, 0x83, 0x81, 0x7f, 0x80,
+			0x7d, 0x7d, 0x87, 0x84, 0x77, 0x78, 0x88, 0x87, 0x7a, 0x78, 0x82,
+			0x87, 0x7f, 0x7c, 0x7d, 0x83, 0x82, 0x7e, 0x7e, 0x7f, 0x80, 0x82,
+			0x7f, 0x7b, 0x7f, 0x86, 0x80, 0x76, 0x7f, 0x89, 0x83, 0x77, 0x79,
+			0x85, 0x85, 0x7e, 0x7c, 0x80, 0x80, 0x80, 0x82, 0x80, 0x7a, 0x80,
+			0x84, 0x7e, 0x7b, 0x80, 0x89, 0x7a, 0x75, 0x88, 0x86, 0x7b, 0x7c,
+			0x7e, 0x84, 0x82, 0x7e, 0x80, 0x7c, 0x7e, 0x85, 0x83, 0x7a, 0x7d,
+			0x81, 0x83, 0x81, 0x7c, 0x7e, 0x7f, 0x80, 0x83, 0x7f, 0x7b, 0x82,
+			0x81, 0x7e, 0x7d, 0x82, 0x83, 0x7c, 0x7e, 0x7e, 0x81, 0x85, 0x7f,
+			0x78, 0x7e, 0x84, 0x84, 0x7f, 0x79, 0x7c, 0x87, 0x84, 0x7c, 0x7d,
+			0x7c, 0x81, 0x86, 0x81, 0x79, 0x7c, 0x84, 0x83, 0x81, 0x7a, 0x7c,
+			0x84, 0x83, 0x7c, 0x80, 0x7d, 0x7d, 0x85, 0x84, 0x7e, 0x76, 0x7e,
+			0x86, 0x87, 0x7d, 0x75, 0x81, 0x85, 0x83, 0x7f, 0x7d, 0x7b, 0x80,
+			0x84, 0x7f, 0x80, 0x7f, 0x7d, 0x80, 0x83, 0x7e, 0x80, 0x81, 0x7c,
+			0x7b, 0x86, 0x85, 0x7a, 0x7d, 0x7b, 0x81, 0x8a, 0x7d, 0x76, 0x7f,
+			0x87, 0x84, 0x7a, 0x7a, 0x82, 0x88, 0x7e, 0x73, 0x85, 0x88, 0x7d,
+			0x7a, 0x7c, 0x85, 0x82, 0x7e, 0x7c, 0x7e, 0x83, 0x7f, 0x83, 0x7b,
+			0x7a, 0x86, 0x81, 0x7d, 0x79, 0x83, 0x86, 0x7b, 0x7c, 0x81, 0x80,
+			0x7c, 0x84, 0x83, 0x7f, 0x78, 0x79, 0x8d, 0x86, 0x77, 0x78, 0x7f,
+			0x8b, 0x80, 0x78, 0x7f, 0x7e, 0x84, 0x87, 0x7c, 0x71, 0x84, 0x8b,
+			0x80, 0x79, 0x76, 0x87, 0x86, 0x7e, 0x7b, 0x7e, 0x83, 0x7f, 0x82,
+			0x80, 0x77, 0x82, 0x87, 0x7e, 0x7d, 0x7b, 0x84, 0x80, 0x7e, 0x84,
+			0x76, 0x82, 0x88, 0x79, 0x80, 0x80, 0x7e, 0x83, 0x7c, 0x7f, 0x86,
+			0x7f, 0x76, 0x7f, 0x86, 0x82, 0x85, 0x79, 0x77, 0x83, 0x85, 0x84,
+			0x7e, 0x79, 0x7c, 0x81, 0x87, 0x82, 0x77, 0x83, 0x7f, 0x79, 0x86,
+			0x85, 0x7a, 0x7a, 0x83, 0x83, 0x7e, 0x80, 0x7f, 0x7b, 0x83, 0x83,
+			0x7b, 0x7c, 0x80, 0x86, 0x85, 0x78, 0x78, 0x80, 0x87, 0x81, 0x7f,
+			0x85, 0x76, 0x78, 0x89, 0x85, 0x80, 0x7d, 0x74, 0x84, 0x8e, 0x79,
+			0x7a, 0x80, 0x7f, 0x7d, 0x8c, 0x7f, 0x71, 0x87, 0x7a, 0x80, 0x8a,
+			0x7e, 0x7b, 0x77, 0x85, 0x83, 0x7f, 0x7d, 0x7a, 0x8a, 0x81, 0x73,
+			0x82, 0x85, 0x80, 0x7d, 0x7e, 0x81, 0x80, 0x81, 0x7d, 0x83, 0x80,
+			0x79, 0x86, 0x7e, 0x7a, 0x89, 0x7e, 0x7a, 0x81, 0x7f, 0x7f, 0x81,
+			0x86, 0x79, 0x78, 0x86, 0x84, 0x81, 0x7d, 0x75, 0x84, 0x8e, 0x75,
+			0x79, 0x82, 0x86, 0x81, 0x79, 0x81, 0x7a, 0x85, 0x85, 0x7b, 0x7d,
+			0x7d, 0x86, 0x7f, 0x7c, 0x83, 0x78, 0x7f, 0x8f, 0x7b, 0x6f, 0x84,
+			0x8d, 0x7b, 0x79, 0x88, 0x7a, 0x79, 0x84, 0x8c, 0x7a, 0x73, 0x87,
+			0x7b, 0x83, 0x8a, 0x7b, 0x75, 0x7c, 0x8c, 0x80, 0x7a, 0x86, 0x7d,
+			0x75, 0x84, 0x8d, 0x7c, 0x75, 0x80, 0x85, 0x81, 0x80, 0x81, 0x7b,
+			0x7a, 0x87, 0x83, 0x78, 0x81, 0x86, 0x76, 0x80, 0x8a, 0x75, 0x82,
+			0x80, 0x7a, 0x8a, 0x80, 0x79, 0x7b, 0x84, 0x83, 0x7b, 0x87, 0x7e,
+			0x72, 0x87, 0x86, 0x7f, 0x7b, 0x7e, 0x80, 0x82, 0x84, 0x7a, 0x7e,
+			0x85, 0x7f, 0x7b, 0x87, 0x7a, 0x7b, 0x86, 0x7f, 0x83, 0x82, 0x78,
+			0x79, 0x89, 0x83, 0x7b, 0x7d, 0x83, 0x83, 0x74, 0x81, 0x8a, 0x7f,
+			0x78, 0x7c, 0x85, 0x84, 0x7a, 0x7e, 0x84, 0x7c, 0x82, 0x7a, 0x7c,
+			0x8a, 0x86, 0x74, 0x75, 0x8e, 0x83, 0x79, 0x7b, 0x83, 0x84, 0x7e,
+			0x7e, 0x7f, 0x78, 0x87, 0x89, 0x74, 0x82, 0x7b, 0x7f, 0x95, 0x77,
+			0x69, 0x8d, 0x85, 0x7e, 0x81, 0x72, 0x8a, 0x82, 0x7c, 0x82, 0x76,
+			0x85, 0x84, 0x84, 0x74, 0x7f, 0x83, 0x84, 0x82, 0x72, 0x8b, 0x71,
+			0x8d, 0x91, 0x61, 0x7f, 0x8e, 0x83, 0x7f, 0x77, 0x7a, 0x87, 0x81,
+			0x83, 0x84, 0x6f, 0x79, 0x95, 0x88, 0x67, 0x7b, 0x96, 0x7c, 0x75,
+			0x85, 0x7d, 0x81, 0x88, 0x77, 0x7c, 0x89, 0x77, 0x83, 0x8d, 0x6e,
+			0x7c, 0x89, 0x7f, 0x84, 0x7d, 0x7e, 0x7b, 0x7b, 0x8a, 0x8a, 0x80,
+			0x61, 0x80, 0x9c, 0x7b, 0x7d, 0x78, 0x7f, 0x7f, 0x7c, 0x95, 0x84,
+			0x61, 0x75, 0x99, 0x8d, 0x71, 0x73, 0x8a, 0x79, 0x79, 0x9f, 0x7e,
+			0x5a, 0x85, 0x9d, 0x7b, 0x72, 0x82, 0x84, 0x7d, 0x77, 0x8a, 0x8f,
+			0x69, 0x76, 0x94, 0x79, 0x76, 0x94, 0x82, 0x65, 0x7f, 0x96, 0x82,
+			0x74, 0x7a, 0x81, 0x7f, 0x8d, 0x87, 0x6a, 0x74, 0x90, 0x94, 0x76,
+			0x6e, 0x7b, 0x8a, 0x90, 0x7c, 0x6b, 0x7d, 0x92, 0x87, 0x6d, 0x7d,
+			0x8f, 0x7a, 0x7b, 0x83, 0x7d, 0x7c, 0x8a, 0x7c, 0x78, 0x84, 0x7e,
+			0x80, 0x85, 0x7d, 0x74, 0x84, 0x94, 0x78, 0x65, 0x84, 0x98, 0x85,
+			0x67, 0x7a, 0x8f, 0x7f, 0x81, 0x83, 0x74, 0x75, 0x91, 0x8d, 0x72,
+			0x80, 0x7b, 0x78, 0x91, 0x83, 0x76, 0x7f, 0x79, 0x85, 0x87, 0x80,
+			0x76, 0x73, 0x8a, 0x88, 0x86, 0x76, 0x75, 0x82, 0x83, 0x88, 0x81,
+			0x78, 0x7a, 0x84, 0x83, 0x7d, 0x7d, 0x82, 0x85, 0x7d, 0x76, 0x82,
+			0x85, 0x81, 0x80, 0x7a, 0x81, 0x7f, 0x82, 0x85, 0x7d, 0x78, 0x83,
+			0x85, 0x7a, 0x7f, 0x83, 0x7e, 0x81, 0x83, 0x7b, 0x7e, 0x86, 0x84,
+			0x75, 0x7b, 0x88, 0x82, 0x7b, 0x78, 0x85, 0x85, 0x7d, 0x7d, 0x7f,
+			0x83, 0x7f, 0x7d, 0x7d, 0x84, 0x7c, 0x82, 0x84, 0x77, 0x7f, 0x81,
+			0x86, 0x7b, 0x7b, 0x85, 0x7d, 0x82, 0x83, 0x7b, 0x7d, 0x7f, 0x89,
+			0x7e, 0x7a, 0x83, 0x7f, 0x7d, 0x80, 0x84, 0x7c, 0x7d, 0x83, 0x80,
+			0x7a, 0x80, 0x82, 0x81, 0x89, 0x77, 0x73, 0x89, 0x88, 0x7c, 0x7c,
+			0x7d, 0x7e, 0x83, 0x82, 0x81, 0x7a, 0x7d, 0x8a, 0x81, 0x73, 0x81,
+			0x8b, 0x7d, 0x79, 0x7f, 0x84, 0x7d, 0x7e, 0x86, 0x79, 0x7a, 0x87,
+			0x86, 0x7b, 0x79, 0x84, 0x81, 0x7c, 0x87, 0x81, 0x73, 0x81, 0x89,
+			0x7a, 0x7c, 0x87, 0x7c, 0x7a, 0x85, 0x82, 0x79, 0x82, 0x86, 0x77,
+			0x7f, 0x87, 0x7c, 0x7e, 0x7f, 0x80, 0x7f, 0x7d, 0x85, 0x80, 0x7b,
+			0x7d, 0x7f, 0x85, 0x80, 0x7e, 0x81, 0x7d, 0x82, 0x7f, 0x80, 0x81,
+			0x79, 0x81, 0x85, 0x81, 0x7c, 0x7a, 0x86, 0x84, 0x77, 0x82, 0x82,
+			0x79, 0x84, 0x84, 0x7d, 0x7c, 0x85, 0x81, 0x75, 0x83, 0x8a, 0x7c,
+			0x7a, 0x82, 0x7e, 0x7e, 0x84, 0x7f, 0x7b, 0x81, 0x84, 0x7c, 0x7b,
+			0x83, 0x84, 0x7e, 0x7a, 0x80, 0x83, 0x82, 0x7d, 0x7d, 0x81, 0x82,
+			0x80, 0x7c, 0x81, 0x83, 0x80, 0x81, 0x82, 0x7d, 0x81, 0x89, 0x80,
+			0x7b, 0x83, 0x85, 0x7c, 0x7d, 0x81, 0x7f, 0x7f, 0x7d, 0x7c, 0x7d,
+			0x7d, 0x7c, 0x72, 0x6d, 0x76, 0x7a, 0x75, 0x73, 0x7a, 0x85, 0x86,
+			0x84, 0x89, 0x8e, 0x8f, 0x8c, 0x88, 0x85, 0x84, 0x82, 0x7f, 0x7b,
+			0x79, 0x7d, 0x81, 0x7e, 0x7f, 0x86, 0x89, 0x88, 0x86, 0x88, 0x8d,
+			0x8b, 0x85, 0x80, 0x80, 0x85, 0x80, 0x7b, 0x7d, 0x81, 0x84, 0x82,
+			0x73, 0x42, 0x46, 0x89, 0x71, 0x39, 0x52, 0x82, 0x92, 0x77, 0x75,
+			0xa1, 0xad, 0xa1, 0xa1, 0x9a, 0x91, 0x97, 0x96, 0x7a, 0x64, 0x71,
+			0x82, 0x72, 0x59, 0x6a, 0x8c, 0x89, 0x7c, 0x82, 0x93, 0x99, 0x8c,
+			0x85, 0x82, 0x7b, 0x7b, 0x75, 0x68, 0x6a, 0x7a, 0x7f, 0x77, 0x7d,
+			0x92, 0x98, 0x8d, 0x8f, 0x99, 0x96, 0x8c, 0x87, 0x88, 0x86, 0x83,
+			0x82, 0x7a, 0x61, 0x32, 0x48, 0x81, 0x4d, 0x2e, 0x61, 0x89, 0x91,
+			0x76, 0x8e, 0xbe, 0xb2, 0xac, 0xa9, 0x96, 0x98, 0x92, 0x7c, 0x5e,
+			0x57, 0x73, 0x6f, 0x53, 0x5e, 0x82, 0x96, 0x88, 0x89, 0xa1, 0xa8,
+			0x9f, 0x91, 0x8a, 0x86, 0x7a, 0x6a, 0x56, 0x53, 0x63, 0x65, 0x63,
+			0x75, 0x92, 0x9b, 0x95, 0x9c, 0xa9, 0xa4, 0x95, 0x8d, 0x8c, 0x87,
+			0x7d, 0x76, 0x73, 0x77, 0x7c, 0x76, 0x6f, 0x44, 0x43, 0x8b, 0x69,
+			0x39, 0x64, 0x8b, 0x96, 0x76, 0x80, 0xb6, 0xaa, 0x9d, 0x9e, 0x8b,
+			0x95, 0x92, 0x74, 0x65, 0x62, 0x7e, 0x78, 0x55, 0x70, 0x8e, 0x92,
+			0x88, 0x84, 0x9e, 0xa2, 0x8f, 0x86, 0x81, 0x85, 0x7c, 0x68, 0x61,
+			0x64, 0x6e, 0x65, 0x5f, 0x77, 0x8b, 0x8c, 0x8b, 0x9b, 0xa5, 0x9d,
+			0x91, 0x8f, 0x91, 0x8a, 0x7e, 0x78, 0x7c, 0x82, 0x7d, 0x79, 0x80,
+			0x84, 0x7d, 0x48, 0x47, 0x89, 0x60, 0x3b, 0x61, 0x7e, 0x8c, 0x74,
+			0x82, 0xb1, 0xa9, 0xa1, 0xa1, 0x8f, 0x9c, 0x97, 0x6e, 0x66, 0x6d,
+			0x7b, 0x69, 0x53, 0x78, 0x8c, 0x85, 0x83, 0x8b, 0xa5, 0xa1, 0x8b,
+			0x8a, 0x8c, 0x8c, 0x79, 0x61, 0x68, 0x73, 0x68, 0x5a, 0x63, 0x79,
+			0x82, 0x7d, 0x84, 0x9b, 0xa1, 0x95, 0x90, 0x98, 0x95, 0x85, 0x80,
+			0x82, 0x81, 0x7b, 0x7b, 0x83, 0x85, 0x85, 0x84, 0x83, 0x75, 0x44,
+			0x62, 0x7e, 0x42, 0x4d, 0x6d, 0x73, 0x7f, 0x79, 0x8f, 0xb0, 0xa4,
+			0x9e, 0xa2, 0x9c, 0xa0, 0x84, 0x74, 0x77, 0x70, 0x71, 0x5c, 0x64,
+			0x80, 0x78, 0x7c, 0x88, 0x94, 0x9f, 0x92, 0x8e, 0x97, 0x92, 0x83,
+			0x73, 0x71, 0x76, 0x67, 0x61, 0x64, 0x6a, 0x79, 0x73, 0x74, 0x8e,
+			0x98, 0x8e, 0x91, 0x9d, 0x98, 0x8e, 0x87, 0x86, 0x84, 0x80, 0x79,
+			0x7c, 0x81, 0x80, 0x83, 0x84, 0x8b, 0x85, 0x87, 0x61, 0x4a, 0x88,
+			0x5e, 0x37, 0x70, 0x67, 0x6a, 0x80, 0x75, 0x95, 0xaa, 0x9c, 0x9f,
+			0xa2, 0xb1, 0x96, 0x7e, 0x90, 0x78, 0x75, 0x6a, 0x58, 0x74, 0x6f,
+			0x66, 0x79, 0x83, 0x8e, 0x8d, 0x8e, 0x9c, 0x97, 0x93, 0x86, 0x81,
+			0x87, 0x71, 0x6c, 0x6d, 0x6c, 0x6b, 0x68, 0x72, 0x77, 0x7e, 0x83,
+			0x8c, 0x93, 0x91, 0x94, 0x95, 0x90, 0x88, 0x88, 0x85, 0x7f, 0x7a,
+			0x7b, 0x7e, 0x7d, 0x80, 0x85, 0x89, 0x8d, 0x88, 0x8e, 0x62, 0x58,
+			0x95, 0x49, 0x46, 0x79, 0x4b, 0x72, 0x71, 0x61, 0xa0, 0x95, 0x92,
+			0xa3, 0xa9, 0xb4, 0x93, 0x9d, 0x96, 0x84, 0x88, 0x63, 0x72, 0x75,
+			0x58, 0x6a, 0x6c, 0x74, 0x7a, 0x79, 0x8e, 0x90, 0x98, 0x91, 0x95,
+			0x9f, 0x87, 0x85, 0x7c, 0x7a, 0x74, 0x63, 0x6a, 0x6c, 0x67, 0x6e,
+			0x7d, 0x81, 0x86, 0x8e, 0x97, 0x96, 0x91, 0x93, 0x93, 0x89, 0x81,
+			0x82, 0x7e, 0x77, 0x75, 0x7b, 0x7b, 0x7f, 0x80, 0x89, 0x8a, 0x96,
+			0x83, 0x48, 0x92, 0x73, 0x3a, 0x78, 0x59, 0x65, 0x69, 0x61, 0x84,
+			0x8c, 0x7f, 0x95, 0xae, 0x96, 0xa0, 0xa1, 0x9e, 0x99, 0x86, 0x88,
+			0x86, 0x77, 0x6d, 0x73, 0x71, 0x6f, 0x6f, 0x78, 0x77, 0x76, 0x82,
+			0x86, 0x85, 0x86, 0x8d, 0x8d, 0x89, 0x84, 0x86, 0x84, 0x7d, 0x7a,
+			0x7b, 0x79, 0x77, 0x7a, 0x7c, 0x7e, 0x7e, 0x84, 0x85, 0x84, 0x85,
+			0x87, 0x86, 0x82, 0x82, 0x82, 0x7f, 0x7e, 0x7e, 0x7c, 0x7d, 0x7d,
+			0x80, 0x81, 0x80, 0x88, 0x88, 0x8d, 0x7f, 0x74, 0x83, 0x6d, 0x66,
+			0x6e, 0x67, 0x67, 0x65, 0x6a, 0x74, 0x73, 0x7c, 0x8a, 0x8a, 0x90,
+			0x97, 0x9b, 0x9a, 0x95, 0x98, 0x95, 0x8a, 0x88, 0x84, 0x7f, 0x7a,
+			0x75, 0x78, 0x78, 0x74, 0x78, 0x7e, 0x7f, 0x81, 0x86, 0x86, 0x86,
+			0x85, 0x85, 0x82, 0x7e, 0x7e, 0x7a, 0x76, 0x76, 0x76, 0x76, 0x77,
+			0x79, 0x7e, 0x7f, 0x81, 0x85, 0x86, 0x87, 0x88, 0x88, 0x88, 0x83,
+			0x83, 0x82, 0x7d, 0x7b, 0x7c, 0x7b, 0x7a, 0x7a, 0x7d, 0x7e, 0x7e,
+			0x82, 0x7e, 0x82, 0x82, 0x7f, 0x82, 0x7a, 0x7e, 0x7a, 0x73, 0x77,
+			0x77, 0x74, 0x74, 0x77, 0x7a, 0x7b, 0x7b, 0x81, 0x83, 0x84, 0x89,
+			0x8b, 0x8a, 0x8c, 0x8c, 0x8c, 0x89, 0x86, 0x87, 0x84, 0x81, 0x7f,
+			0x7d, 0x7d, 0x7d, 0x7b, 0x7a, 0x7d, 0x7f, 0x7f, 0x7e, 0x80, 0x82,
+			0x81, 0x80, 0x81, 0x82, 0x7f, 0x80, 0x7e, 0x7c, 0x81, 0x7d, 0x7c,
+			0x80, 0x7d, 0x7e, 0x81, 0x7c, 0x80, 0x83, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7d, 0x7c, 0x7c, 0x7c, 0x7d, 0x7c, 0x7d, 0x7e, 0x7f, 0x80,
+			0x7f, 0x7f, 0x82, 0x81, 0x7f, 0x81, 0x7f, 0x7e, 0x81, 0x7f, 0x7f,
+			0x80, 0x7f, 0x82, 0x80, 0x7d, 0x81, 0x80, 0x7e, 0x7d, 0x7d, 0x80,
+			0x7e, 0x7d, 0x80, 0x7e, 0x80, 0x81, 0x7f, 0x80, 0x81, 0x82, 0x83,
+			0x80, 0x82, 0x83, 0x81, 0x83, 0x81, 0x82, 0x82, 0x81, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x7e, 0x7e, 0x82, 0x7e, 0x7b, 0x7f, 0x7e,
+			0x7d, 0x7e, 0x7c, 0x80, 0x80, 0x7f, 0x81, 0x80, 0x83, 0x82, 0x80,
+			0x81, 0x81, 0x7f, 0x80, 0x7f, 0x7c, 0x81, 0x7b, 0x7b, 0x7f, 0x7a,
+			0x7f, 0x7c, 0x7c, 0x83, 0x7b, 0x81, 0x83, 0x7d, 0x82, 0x81, 0x7e,
+			0x81, 0x7c, 0x81, 0x7d, 0x7b, 0x82, 0x7b, 0x80, 0x7f, 0x81, 0x83,
+			0x81, 0x84, 0x82, 0x81, 0x82, 0x7f, 0x7f, 0x81, 0x7a, 0x7c, 0x7e,
+			0x7a, 0x7e, 0x7d, 0x80, 0x81, 0x7e, 0x85, 0x83, 0x80, 0x84, 0x82,
+			0x81, 0x83, 0x7b, 0x81, 0x7c, 0x7a, 0x80, 0x7a, 0x80, 0x7f, 0x7c,
+			0x85, 0x80, 0x81, 0x86, 0x7d, 0x84, 0x82, 0x7a, 0x82, 0x79, 0x7c,
+			0x80, 0x77, 0x81, 0x7d, 0x7e, 0x84, 0x7f, 0x84, 0x83, 0x80, 0x86,
+			0x7c, 0x80, 0x82, 0x78, 0x82, 0x7a, 0x7b, 0x80, 0x7b, 0x7e, 0x82,
+			0x7d, 0x84, 0x81, 0x80, 0x87, 0x7e, 0x83, 0x84, 0x7c, 0x81, 0x81,
+			0x7c, 0x80, 0x7d, 0x7b, 0x7f, 0x7d, 0x7c, 0x7e, 0x80, 0x80, 0x80,
+			0x81, 0x81, 0x7f, 0x82, 0x81, 0x7f, 0x80, 0x81, 0x80, 0x7e, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x81, 0x7e, 0x80, 0x7e, 0x7e, 0x81,
+			0x7d, 0x80, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x81,
+			0x7f, 0x81, 0x80, 0x7e, 0x83, 0x7f, 0x7d, 0x81, 0x7e, 0x7d, 0x7f,
+			0x7e, 0x81, 0x7f, 0x82, 0x80, 0x80, 0x84, 0x7c, 0x82, 0x82, 0x7c,
+			0x81, 0x7e, 0x7e, 0x7f, 0x7d, 0x7e, 0x7f, 0x7e, 0x81, 0x7e, 0x80,
+			0x82, 0x80, 0x80, 0x82, 0x7f, 0x80, 0x82, 0x7f, 0x7f, 0x81, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x81, 0x7f, 0x7d, 0x81, 0x7e, 0x7e,
+			0x81, 0x7d, 0x81, 0x7f, 0x7f, 0x7f, 0x81, 0x7e, 0x81, 0x7f, 0x7f,
+			0x81, 0x7a, 0x83, 0x7f, 0x7d, 0x81, 0x81, 0x80, 0x80, 0x82, 0x80,
+			0x82, 0x7e, 0x81, 0x7f, 0x7e, 0x7f, 0x7c, 0x7f, 0x7d, 0x7e, 0x7e,
+			0x7f, 0x80, 0x80, 0x83, 0x83, 0x81, 0x84, 0x83, 0x80, 0x7f, 0x7f,
+			0x7e, 0x7d, 0x7d, 0x7b, 0x7e, 0x7c, 0x7f, 0x7f, 0x7f, 0x83, 0x82,
+			0x81, 0x84, 0x81, 0x81, 0x81, 0x7f, 0x81, 0x7f, 0x7e, 0x80, 0x7d,
+			0x7f, 0x81, 0x7e, 0x7f, 0x81, 0x7f, 0x7e, 0x7e, 0x7d, 0x7e, 0x7e,
+			0x7d, 0x7e, 0x7f, 0x80, 0x82, 0x81, 0x81, 0x83, 0x82, 0x84, 0x80,
+			0x80, 0x82, 0x7d, 0x7e, 0x7d, 0x7d, 0x7c, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x81, 0x80, 0x83, 0x82, 0x80, 0x80, 0x80, 0x80, 0x7e, 0x7f, 0x7f,
+			0x80, 0x7d, 0x7e, 0x7f, 0x7e, 0x81, 0x7e, 0x7f, 0x81, 0x80, 0x7f,
+			0x81, 0x80, 0x80, 0x81, 0x7e, 0x81, 0x7f, 0x80, 0x81, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7d, 0x7f,
+			0x7f, 0x7e, 0x80, 0x7f, 0x80, 0x81, 0x80, 0x7f, 0x82, 0x81, 0x80,
+			0x80, 0x80, 0x81, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7e, 0x7f, 0x7e,
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x80, 0x7e, 0x7d,
+			0x7e, 0x7e, 0x7e, 0x7f, 0x7e, 0x81, 0x81, 0x81, 0x82, 0x80, 0x81,
+			0x81, 0x7e, 0x7f, 0x7f, 0x7d, 0x7f, 0x7e, 0x7f, 0x81, 0x7f, 0x82,
+			0x82, 0x82, 0x82, 0x81, 0x80, 0x81, 0x7f, 0x7e, 0x7d, 0x7c, 0x7d,
+			0x7c, 0x7c, 0x7e, 0x7f, 0x7e, 0x81, 0x82, 0x82, 0x82, 0x82, 0x81,
+			0x81, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x80, 0x81,
+			0x80, 0x81, 0x82, 0x80, 0x81, 0x80, 0x7e, 0x7f, 0x7f, 0x7e, 0x7c,
+			0x7d, 0x7f, 0x7e, 0x7f, 0x7f, 0x81, 0x81, 0x81, 0x82, 0x82, 0x82,
+			0x81, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7d, 0x7e, 0x7e, 0x7e, 0x7f,
+			0x7f, 0x80, 0x81, 0x81, 0x82, 0x81, 0x81, 0x81, 0x80, 0x7f, 0x7f,
+			0x7e, 0x7e, 0x7e, 0x7d, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x81,
+			0x81, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x81, 0x81, 0x80, 0x80, 0x81, 0x81, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x81, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x80, 0x7f, 0x7f,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81,
+			0x81, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e,
+			0x7f, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7e, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x81, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x81, 0x7d, 0x81, 0x80,
+			0x7f, 0x80, 0x7f, 0x7e, 0x81, 0x7e, 0x7f, 0x81, 0x7e, 0x81, 0x80,
+			0x7e, 0x81, 0x7f, 0x7e, 0x82, 0x7e, 0x80, 0x81, 0x7d, 0x81, 0x80,
+			0x7d, 0x81, 0x7f, 0x7e, 0x83, 0x7d, 0x80, 0x81, 0x7c, 0x81, 0x81,
+			0x7d, 0x81, 0x80, 0x7d, 0x82, 0x7e, 0x7f, 0x82, 0x7e, 0x81, 0x81,
+			0x7e, 0x81, 0x80, 0x7e, 0x82, 0x7e, 0x7f, 0x80, 0x7e, 0x7f, 0x80,
+			0x7e, 0x80, 0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x81,
+			0x7e, 0x80, 0x80, 0x7f, 0x81, 0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x82, 0x7e,
+			0x80, 0x81, 0x7d, 0x81, 0x80, 0x7f, 0x81, 0x7f, 0x7e, 0x82, 0x7e,
+			0x80, 0x80, 0x7e, 0x80, 0x7f, 0x7e, 0x81, 0x7f, 0x7f, 0x81, 0x7e,
+			0x81, 0x7f, 0x7f, 0x80, 0x80, 0x7e, 0x81, 0x7e, 0x80, 0x81, 0x7e,
+			0x81, 0x7f, 0x7f, 0x80, 0x80, 0x7e, 0x82, 0x7d, 0x80, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x7f, 0x82, 0x7c, 0x82, 0x7d, 0x80, 0x80, 0x7e,
+			0x80, 0x7f, 0x80, 0x7f, 0x81, 0x7e, 0x82, 0x7e, 0x81, 0x7f, 0x7f,
+			0x7f, 0x81, 0x7f, 0x7f, 0x81, 0x7d, 0x82, 0x7e, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x80, 0x7f, 0x81,
+			0x7f, 0x7f, 0x81, 0x7e, 0x81, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x81,
+			0x7f, 0x80, 0x80, 0x7e, 0x80, 0x80, 0x7e, 0x7f, 0x80, 0x7e, 0x81,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7e, 0x81,
+			0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x81, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x80, 0x7e, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x80, 0x7f,
+			0x7f, 0x81, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7e, 0x80, 0x80, 0x7e, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80,
+		},
+		{ // 7
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x81, 0x7e, 0x81, 0x7f, 0x7f,
+			0x80, 0x7e, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x80,
+			0x7f, 0x7f, 0x81, 0x7e, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7e, 0x81, 0x7f, 0x7f,
+			0x81, 0x7e, 0x80, 0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x82, 0x7d, 0x80,
+			0x81, 0x7d, 0x82, 0x7e, 0x7f, 0x81, 0x7e, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7e, 0x81, 0x7e, 0x80, 0x80, 0x7e, 0x81, 0x7e,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7e,
+			0x81, 0x7f, 0x7f, 0x81, 0x7e, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x7e, 0x81, 0x7f, 0x7f, 0x81, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x81, 0x7f,
+			0x7f, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x81, 0x7e, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x81, 0x7e, 0x80, 0x80, 0x7e, 0x81,
+			0x80, 0x7e, 0x82, 0x7e, 0x80, 0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x81,
+			0x7e, 0x80, 0x81, 0x7e, 0x81, 0x7f, 0x7e, 0x81, 0x7e, 0x81, 0x7f,
+			0x7e, 0x81, 0x7e, 0x7f, 0x81, 0x7e, 0x80, 0x80, 0x7e, 0x81, 0x7f,
+			0x7f, 0x81, 0x7e, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x81, 0x7e, 0x80, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x80, 0x80, 0x7e,
+			0x81, 0x7e, 0x81, 0x7f, 0x7f, 0x81, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x80, 0x7e, 0x81, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x81,
+			0x7e, 0x80, 0x80, 0x7e, 0x81, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7e, 0x81, 0x7f, 0x7f,
+			0x81, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x81, 0x7e, 0x80,
+			0x80, 0x7f, 0x81, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x7f, 0x81, 0x7e, 0x81, 0x7f, 0x7f, 0x81, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x81,
+			0x7f, 0x7f, 0x81, 0x7e, 0x81, 0x7f, 0x7e, 0x82, 0x7e, 0x80, 0x80,
+			0x7e, 0x81, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7e, 0x81, 0x7f,
+			0x7f, 0x81, 0x7e, 0x81, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7e, 0x81, 0x7e, 0x80, 0x81, 0x7d, 0x82, 0x7f, 0x7f,
+			0x81, 0x7e, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x81, 0x7e,
+			0x80, 0x7f, 0x80, 0x7f, 0x81, 0x7e, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x81, 0x7f, 0x80, 0x80, 0x80, 0x7e, 0x80, 0x80, 0x7e,
+			0x81, 0x7f, 0x7d, 0x83, 0x7e, 0x7f, 0x82, 0x7c, 0x81, 0x7f, 0x7f,
+			0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x82, 0x7c, 0x81, 0x80, 0x7e,
+			0x82, 0x7e, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x81, 0x7e, 0x80, 0x81, 0x7e, 0x81, 0x80, 0x7e, 0x81, 0x7d, 0x80,
+			0x81, 0x7d, 0x82, 0x7e, 0x7f, 0x82, 0x7d, 0x80, 0x80, 0x7e, 0x81,
+			0x7f, 0x7e, 0x83, 0x7c, 0x80, 0x81, 0x7e, 0x81, 0x7f, 0x80, 0x7f,
+			0x7f, 0x81, 0x7f, 0x7f, 0x81, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x81, 0x7d, 0x81, 0x80, 0x7f,
+			0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x80, 0x7e, 0x82,
+			0x7e, 0x7e, 0x82, 0x7e, 0x80, 0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x81,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7e, 0x80, 0x80, 0x7f, 0x81,
+			0x7e, 0x81, 0x7e, 0x7f, 0x82, 0x7e, 0x7f, 0x81, 0x7e, 0x7f, 0x81,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x81, 0x7e, 0x7f, 0x81, 0x7e, 0x80, 0x7f, 0x80, 0x80, 0x7e,
+			0x81, 0x7f, 0x7e, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x81, 0x7f,
+			0x80, 0x7f, 0x7f, 0x81, 0x7d, 0x81, 0x80, 0x7e, 0x80, 0x7f, 0x7f,
+			0x80, 0x7e, 0x81, 0x7e, 0x7f, 0x82, 0x7d, 0x81, 0x80, 0x7d, 0x82,
+			0x7e, 0x7f, 0x82, 0x7c, 0x81, 0x80, 0x7d, 0x83, 0x7d, 0x80, 0x82,
+			0x7d, 0x82, 0x7f, 0x7e, 0x82, 0x7e, 0x7f, 0x80, 0x7e, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x81, 0x7e,
+			0x7f, 0x81, 0x7e, 0x81, 0x7f, 0x7e, 0x81, 0x7f, 0x7f, 0x81, 0x7e,
+			0x80, 0x80, 0x7e, 0x80, 0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x81, 0x7e,
+			0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x81, 0x7f, 0x80, 0x80, 0x7e, 0x81,
+			0x80, 0x7e, 0x81, 0x7e, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x81,
+			0x7e, 0x80, 0x81, 0x7e, 0x80, 0x80, 0x7e, 0x80, 0x80, 0x7f, 0x81,
+			0x7e, 0x81, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x81, 0x7e,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x81, 0x7e,
+			0x7f, 0x81, 0x7e, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7e, 0x80, 0x80, 0x7f, 0x81, 0x7f, 0x80, 0x81, 0x7e,
+			0x80, 0x80, 0x7e, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7e,
+			0x80, 0x80, 0x7d, 0x82, 0x7f, 0x7e, 0x82, 0x7f, 0x7f, 0x81, 0x7e,
+			0x80, 0x80, 0x7d, 0x82, 0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x81, 0x7e, 0x80, 0x80, 0x7d, 0x81,
+			0x80, 0x7e, 0x82, 0x7e, 0x80, 0x80, 0x7e, 0x81, 0x80, 0x7d, 0x81,
+			0x7f, 0x7e, 0x81, 0x7e, 0x80, 0x80, 0x7e, 0x80, 0x80, 0x7e, 0x80,
+			0x81, 0x7e, 0x81, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x81, 0x7e, 0x80, 0x80, 0x7e, 0x81,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x81, 0x7e, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7e, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x81, 0x82, 0x81, 0x82, 0x84,
+			0x82, 0x83, 0x83, 0x81, 0x83, 0x81, 0x81, 0x83, 0x7f, 0x81, 0x81,
+			0x7d, 0x81, 0x7f, 0x7d, 0x82, 0x7d, 0x82, 0x79, 0x72, 0x87, 0x70,
+			0x74, 0x7e, 0x6d, 0x80, 0x72, 0x74, 0x87, 0x77, 0x81, 0x84, 0x84,
+			0x8b, 0x86, 0x89, 0x8d, 0x8c, 0x83, 0x8a, 0x87, 0x82, 0x84, 0x7a,
+			0x83, 0x7f, 0x75, 0x7f, 0x7a, 0x7b, 0x7c, 0x7a, 0x80, 0x7f, 0x7c,
+			0x7f, 0x83, 0x7f, 0x81, 0x81, 0x81, 0x83, 0x7a, 0x7f, 0x81, 0x7a,
+			0x7c, 0x7d, 0x7d, 0x7d, 0x7b, 0x81, 0x83, 0x7f, 0x84, 0x87, 0x86,
+			0x86, 0x86, 0x8a, 0x87, 0x84, 0x89, 0x84, 0x85, 0x82, 0x87, 0x76,
+			0x65, 0x8f, 0x61, 0x66, 0x7d, 0x58, 0x82, 0x64, 0x69, 0x8e, 0x6f,
+			0x84, 0x8a, 0x8b, 0x95, 0x8f, 0x90, 0x99, 0x96, 0x83, 0x92, 0x88,
+			0x7d, 0x82, 0x70, 0x7f, 0x75, 0x69, 0x79, 0x73, 0x74, 0x78, 0x7b,
+			0x81, 0x85, 0x7f, 0x89, 0x90, 0x80, 0x8b, 0x89, 0x80, 0x84, 0x78,
+			0x7b, 0x7c, 0x70, 0x79, 0x7c, 0x77, 0x80, 0x81, 0x86, 0x8a, 0x86,
+			0x8f, 0x90, 0x87, 0x90, 0x88, 0x8b, 0x86, 0x8a, 0x80, 0x47, 0x96,
+			0x62, 0x3d, 0x8a, 0x43, 0x7a, 0x6b, 0x58, 0xa0, 0x7b, 0x85, 0x9e,
+			0xa0, 0x9b, 0x9d, 0x95, 0x96, 0x99, 0x70, 0x83, 0x82, 0x64, 0x72,
+			0x68, 0x74, 0x75, 0x6a, 0x81, 0x89, 0x7f, 0x87, 0x94, 0x8c, 0x8e,
+			0x85, 0x86, 0x8b, 0x75, 0x72, 0x7d, 0x76, 0x6b, 0x75, 0x7c, 0x79,
+			0x77, 0x82, 0x8c, 0x82, 0x84, 0x8f, 0x8c, 0x83, 0x84, 0x89, 0x84,
+			0x7c, 0x81, 0x86, 0x82, 0x7e, 0x8d, 0x88, 0x92, 0x62, 0x67, 0xa6,
+			0x3c, 0x67, 0x7f, 0x52, 0x81, 0x57, 0x7f, 0x94, 0x76, 0x89, 0xa1,
+			0x9b, 0x8b, 0x99, 0x8f, 0x92, 0x82, 0x74, 0x8b, 0x77, 0x6a, 0x7a,
+			0x7b, 0x7a, 0x77, 0x7e, 0x89, 0x82, 0x7d, 0x89, 0x8a, 0x7d, 0x7f,
+			0x81, 0x80, 0x7b, 0x73, 0x81, 0x84, 0x72, 0x80, 0x87, 0x7e, 0x81,
+			0x81, 0x82, 0x7f, 0x77, 0x7f, 0x80, 0x78, 0x7e, 0x85, 0x83, 0x82,
+			0x88, 0x89, 0x89, 0x84, 0x88, 0x89, 0x82, 0x88, 0x84, 0x93, 0x4d,
+			0x70, 0x9a, 0x2c, 0x7e, 0x73, 0x5d, 0x88, 0x62, 0x8f, 0x90, 0x82,
+			0x8d, 0xa1, 0x8d, 0x85, 0x94, 0x80, 0x87, 0x7b, 0x77, 0x85, 0x76,
+			0x76, 0x84, 0x81, 0x7e, 0x82, 0x84, 0x83, 0x7c, 0x7c, 0x85, 0x7b,
+			0x79, 0x80, 0x7e, 0x7e, 0x7d, 0x80, 0x87, 0x80, 0x7f, 0x87, 0x82,
+			0x7d, 0x80, 0x7d, 0x79, 0x7a, 0x75, 0x7b, 0x7d, 0x7a, 0x83, 0x86,
+			0x84, 0x88, 0x8a, 0x87, 0x87, 0x85, 0x85, 0x81, 0x83, 0x7f, 0x87,
+			0x80, 0x8b, 0x7b, 0x4b, 0x9e, 0x61, 0x4b, 0x91, 0x5e, 0x77, 0x76,
+			0x79, 0x8c, 0x88, 0x81, 0x95, 0x95, 0x7f, 0x93, 0x86, 0x83, 0x84,
+			0x7d, 0x80, 0x81, 0x79, 0x7f, 0x84, 0x7c, 0x82, 0x81, 0x80, 0x7f,
+			0x7c, 0x7f, 0x7f, 0x7a, 0x7e, 0x81, 0x7e, 0x7a, 0x83, 0x85, 0x7c,
+			0x85, 0x83, 0x81, 0x80, 0x7d, 0x7e, 0x7a, 0x78, 0x7a, 0x7c, 0x7a,
+			0x80, 0x82, 0x84, 0x86, 0x87, 0x88, 0x86, 0x86, 0x85, 0x84, 0x81,
+			0x82, 0x82, 0x7f, 0x87, 0x81, 0x91, 0x63, 0x65, 0x9a, 0x49, 0x6a,
+			0x81, 0x63, 0x77, 0x74, 0x7f, 0x87, 0x86, 0x80, 0x9b, 0x8a, 0x84,
+			0x92, 0x86, 0x86, 0x84, 0x83, 0x81, 0x84, 0x7b, 0x81, 0x83, 0x7b,
+			0x7f, 0x80, 0x7c, 0x7a, 0x7c, 0x7c, 0x7d, 0x78, 0x83, 0x7f, 0x7e,
+			0x88, 0x83, 0x84, 0x86, 0x83, 0x80, 0x81, 0x7b, 0x7b, 0x7b, 0x75,
+			0x78, 0x7a, 0x7a, 0x7e, 0x82, 0x83, 0x87, 0x86, 0x85, 0x88, 0x84,
+			0x84, 0x85, 0x81, 0x82, 0x81, 0x82, 0x80, 0x87, 0x82, 0x91, 0x6f,
+			0x5a, 0x99, 0x4e, 0x5c, 0x8b, 0x5a, 0x76, 0x7a, 0x7c, 0x84, 0x8c,
+			0x83, 0x95, 0x94, 0x81, 0x94, 0x8a, 0x82, 0x85, 0x85, 0x7f, 0x81,
+			0x7e, 0x7d, 0x83, 0x7b, 0x7c, 0x81, 0x7c, 0x77, 0x7e, 0x7c, 0x7d,
+			0x7c, 0x7c, 0x84, 0x7e, 0x81, 0x88, 0x82, 0x84, 0x84, 0x80, 0x80,
+			0x7e, 0x7b, 0x7d, 0x7a, 0x78, 0x7c, 0x7c, 0x7d, 0x80, 0x83, 0x84,
+			0x84, 0x84, 0x86, 0x85, 0x82, 0x85, 0x83, 0x81, 0x82, 0x83, 0x83,
+			0x82, 0x87, 0x84, 0x8c, 0x62, 0x66, 0x8f, 0x4c, 0x64, 0x82, 0x66,
+			0x71, 0x79, 0x84, 0x82, 0x8c, 0x85, 0x93, 0x95, 0x80, 0x8f, 0x8f,
+			0x83, 0x83, 0x8a, 0x81, 0x80, 0x83, 0x7c, 0x82, 0x7d, 0x77, 0x7e,
+			0x7c, 0x73, 0x7a, 0x7f, 0x7b, 0x7e, 0x82, 0x82, 0x83, 0x7f, 0x86,
+			0x87, 0x7f, 0x83, 0x83, 0x80, 0x7c, 0x7e, 0x7e, 0x7b, 0x79, 0x79,
+			0x7e, 0x7c, 0x7c, 0x82, 0x84, 0x81, 0x83, 0x86, 0x85, 0x83, 0x82,
+			0x85, 0x83, 0x82, 0x83, 0x84, 0x83, 0x82, 0x88, 0x85, 0x87, 0x68,
+			0x66, 0x8a, 0x5b, 0x5d, 0x7c, 0x6e, 0x70, 0x6f, 0x85, 0x83, 0x84,
+			0x87, 0x89, 0x9a, 0x87, 0x85, 0x93, 0x8f, 0x85, 0x85, 0x8b, 0x82,
+			0x80, 0x80, 0x7c, 0x7f, 0x7a, 0x76, 0x7a, 0x7a, 0x78, 0x7a, 0x80,
+			0x7f, 0x80, 0x81, 0x80, 0x87, 0x84, 0x80, 0x84, 0x84, 0x80, 0x7f,
+			0x80, 0x7f, 0x7e, 0x7c, 0x7b, 0x7c, 0x7a, 0x79, 0x7c, 0x7e, 0x7f,
+			0x7e, 0x82, 0x84, 0x83, 0x85, 0x85, 0x87, 0x86, 0x84, 0x86, 0x85,
+			0x85, 0x83, 0x84, 0x84, 0x83, 0x81, 0x82, 0x75, 0x61, 0x75, 0x76,
+			0x62, 0x68, 0x6f, 0x7c, 0x73, 0x71, 0x84, 0x86, 0x8a, 0x86, 0x8c,
+			0x91, 0x8d, 0x8f, 0x8a, 0x8a, 0x8c, 0x8a, 0x84, 0x7e, 0x84, 0x85,
+			0x7c, 0x7b, 0x7c, 0x7c, 0x7b, 0x78, 0x79, 0x7c, 0x7c, 0x7c, 0x7c,
+			0x7d, 0x80, 0x81, 0x81, 0x7f, 0x80, 0x82, 0x82, 0x82, 0x80, 0x81,
+			0x81, 0x80, 0x7e, 0x7e, 0x7c, 0x7c, 0x7e, 0x7d, 0x7f, 0x7e, 0x80,
+			0x84, 0x81, 0x83, 0x83, 0x82, 0x82, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x81, 0x83, 0x81, 0x83, 0x83, 0x81, 0x7c, 0x79, 0x7d,
+			0x7c, 0x72, 0x72, 0x7a, 0x73, 0x71, 0x79, 0x78, 0x78, 0x7d, 0x84,
+			0x82, 0x81, 0x89, 0x8c, 0x89, 0x8a, 0x8f, 0x8b, 0x87, 0x8b, 0x88,
+			0x85, 0x85, 0x85, 0x82, 0x7f, 0x7f, 0x7e, 0x7e, 0x7b, 0x7a, 0x7a,
+			0x7a, 0x79, 0x78, 0x7a, 0x7a, 0x79, 0x7c, 0x7d, 0x7b, 0x7d, 0x81,
+			0x80, 0x80, 0x81, 0x83, 0x83, 0x83, 0x84, 0x83, 0x83, 0x83, 0x83,
+			0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x81,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x81, 0x83, 0x82, 0x83, 0x7e,
+			0x78, 0x7e, 0x7d, 0x75, 0x71, 0x78, 0x77, 0x70, 0x76, 0x7a, 0x79,
+			0x7b, 0x83, 0x84, 0x80, 0x87, 0x8c, 0x89, 0x88, 0x8c, 0x8d, 0x88,
+			0x89, 0x89, 0x86, 0x85, 0x84, 0x82, 0x82, 0x80, 0x7e, 0x7f, 0x7d,
+			0x7b, 0x7a, 0x7b, 0x79, 0x78, 0x79, 0x7a, 0x7a, 0x7b, 0x7d, 0x7e,
+			0x7e, 0x80, 0x81, 0x81, 0x81, 0x80, 0x81, 0x81, 0x80, 0x7f, 0x80,
+			0x82, 0x80, 0x80, 0x81, 0x81, 0x80, 0x82, 0x81, 0x80, 0x81, 0x82,
+			0x82, 0x80, 0x81, 0x82, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x81, 0x82, 0x82, 0x83, 0x83, 0x82, 0x82, 0x80, 0x79, 0x79, 0x7d,
+			0x76, 0x6e, 0x74, 0x77, 0x70, 0x73, 0x79, 0x79, 0x7a, 0x81, 0x86,
+			0x82, 0x85, 0x8d, 0x8c, 0x8a, 0x8c, 0x8e, 0x8b, 0x89, 0x8a, 0x88,
+			0x86, 0x85, 0x84, 0x82, 0x80, 0x7d, 0x7d, 0x7b, 0x79, 0x78, 0x77,
+			0x78, 0x76, 0x76, 0x79, 0x79, 0x7a, 0x7d, 0x7f, 0x7f, 0x81, 0x83,
+			0x83, 0x84, 0x84, 0x84, 0x83, 0x82, 0x83, 0x81, 0x7f, 0x80, 0x7f,
+			0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7e, 0x7d, 0x7e, 0x7f, 0x7f,
+			0x80, 0x81, 0x83, 0x83, 0x83, 0x84, 0x85, 0x84, 0x84, 0x83, 0x83,
+			0x82, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7d,
+			0x79, 0x7a, 0x7d, 0x78, 0x71, 0x75, 0x79, 0x73, 0x74, 0x7a, 0x7a,
+			0x7b, 0x81, 0x84, 0x82, 0x86, 0x8c, 0x8c, 0x8a, 0x8b, 0x8d, 0x8a,
+			0x89, 0x88, 0x86, 0x84, 0x84, 0x83, 0x80, 0x80, 0x7e, 0x7e, 0x7d,
+			0x7b, 0x7a, 0x7a, 0x7a, 0x78, 0x79, 0x7a, 0x79, 0x79, 0x7c, 0x7d,
+			0x7d, 0x7f, 0x81, 0x82, 0x82, 0x83, 0x84, 0x84, 0x83, 0x83, 0x82,
+			0x81, 0x81, 0x80, 0x7e, 0x7e, 0x7d, 0x7d, 0x7c, 0x7c, 0x7c, 0x7d,
+			0x7e, 0x7f, 0x80, 0x80, 0x82, 0x84, 0x83, 0x83, 0x85, 0x84, 0x84,
+			0x83, 0x83, 0x83, 0x81, 0x81, 0x81, 0x80, 0x7f, 0x7f, 0x7e, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c, 0x79, 0x78,
+			0x7b, 0x79, 0x75, 0x77, 0x7a, 0x78, 0x79, 0x7d, 0x7e, 0x7f, 0x83,
+			0x86, 0x85, 0x87, 0x8b, 0x8b, 0x8a, 0x8b, 0x8b, 0x89, 0x88, 0x87,
+			0x86, 0x83, 0x82, 0x81, 0x7e, 0x7c, 0x7c, 0x7b, 0x7a, 0x79, 0x78,
+			0x79, 0x79, 0x78, 0x7a, 0x7b, 0x7b, 0x7c, 0x7e, 0x7f, 0x80, 0x82,
+			0x82, 0x83, 0x83, 0x82, 0x82, 0x82, 0x81, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x80, 0x80, 0x80,
+			0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x82, 0x81, 0x82, 0x81, 0x82,
+			0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x81,
+			0x82, 0x82, 0x81, 0x7e, 0x7e, 0x7e, 0x7c, 0x7a, 0x7b, 0x7c, 0x7b,
+			0x7b, 0x7d, 0x7e, 0x7e, 0x81, 0x82, 0x81, 0x82, 0x84, 0x84, 0x83,
+			0x84, 0x84, 0x83, 0x83, 0x83, 0x82, 0x82, 0x81, 0x81, 0x80, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7f, 0x7f, 0x7f,
+		},
+		{ // 8
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x81, 0x81, 0x82, 0x82, 0x82, 0x82, 0x82, 0x81, 0x81,
+			0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81,
+			0x81, 0x80, 0x80, 0x7f, 0x7d, 0x7c, 0x79, 0x78, 0x78, 0x78, 0x7a,
+			0x7d, 0x7f, 0x81, 0x83, 0x83, 0x84, 0x84, 0x85, 0x85, 0x86, 0x85,
+			0x84, 0x83, 0x81, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7c, 0x7c,
+			0x7b, 0x7c, 0x7d, 0x80, 0x82, 0x83, 0x84, 0x84, 0x82, 0x81, 0x81,
+			0x80, 0x81, 0x82, 0x82, 0x83, 0x83, 0x84, 0x84, 0x83, 0x85, 0x87,
+			0x88, 0x8a, 0x84, 0x73, 0x6c, 0x61, 0x53, 0x5d, 0x66, 0x6e, 0x81,
+			0x8b, 0x8e, 0x8e, 0x8d, 0x8f, 0x8e, 0x93, 0x9a, 0x96, 0x8f, 0x8a,
+			0x7b, 0x6e, 0x6d, 0x6a, 0x6e, 0x79, 0x82, 0x87, 0x88, 0x89, 0x86,
+			0x80, 0x85, 0x88, 0x87, 0x8a, 0x89, 0x7f, 0x78, 0x72, 0x6c, 0x6b,
+			0x70, 0x76, 0x7a, 0x7f, 0x83, 0x83, 0x86, 0x8a, 0x8c, 0x8f, 0x8f,
+			0x8b, 0x86, 0x81, 0x7f, 0x7e, 0x81, 0x85, 0x86, 0x8a, 0x8c, 0x8b,
+			0x8a, 0x8a, 0x78, 0x5f, 0x59, 0x48, 0x42, 0x5a, 0x68, 0x78, 0x8e,
+			0x96, 0x98, 0x97, 0x9c, 0x9f, 0x9d, 0xa2, 0x9f, 0x8a, 0x7b, 0x6f,
+			0x5a, 0x58, 0x63, 0x6b, 0x7a, 0x87, 0x90, 0x90, 0x8d, 0x93, 0x90,
+			0x8f, 0x97, 0x91, 0x85, 0x7e, 0x6e, 0x5f, 0x5a, 0x5c, 0x62, 0x6c,
+			0x7d, 0x88, 0x8f, 0x99, 0x9a, 0x98, 0x99, 0x93, 0x8b, 0x84, 0x7f,
+			0x79, 0x77, 0x7b, 0x7e, 0x82, 0x89, 0x8d, 0x8d, 0x91, 0x7b, 0x59,
+			0x56, 0x43, 0x3f, 0x60, 0x6f, 0x7e, 0x8f, 0x92, 0x94, 0x93, 0x9f,
+			0xab, 0xa5, 0xa5, 0x9c, 0x7a, 0x66, 0x5f, 0x54, 0x5f, 0x71, 0x7d,
+			0x84, 0x84, 0x8c, 0x8a, 0x8c, 0xa0, 0xa0, 0x99, 0x96, 0x82, 0x6c,
+			0x62, 0x5f, 0x60, 0x64, 0x6e, 0x72, 0x72, 0x7f, 0x8a, 0x95, 0xa3,
+			0xa6, 0x9e, 0x90, 0x84, 0x7a, 0x74, 0x7c, 0x80, 0x81, 0x82, 0x80,
+			0x7e, 0x86, 0x8f, 0x99, 0x96, 0x66, 0x4f, 0x44, 0x2b, 0x4d, 0x73,
+			0x7f, 0x8f, 0x8e, 0x8f, 0x8e, 0x99, 0xba, 0xba, 0xaa, 0xa0, 0x77,
+			0x53, 0x55, 0x5b, 0x6b, 0x78, 0x7e, 0x7e, 0x6e, 0x7d, 0x96, 0x9d,
+			0xb2, 0xb2, 0x96, 0x7a, 0x63, 0x60, 0x62, 0x6f, 0x7c, 0x6e, 0x65,
+			0x66, 0x6f, 0x87, 0xa0, 0xb0, 0xa5, 0x92, 0x86, 0x79, 0x7f, 0x8a,
+			0x8b, 0x82, 0x75, 0x6e, 0x6e, 0x7f, 0x94, 0x9d, 0x9d, 0x9f, 0x71,
+			0x35, 0x42, 0x45, 0x49, 0x74, 0x7b, 0x72, 0x68, 0x7d, 0xa5, 0xaf,
+			0xca, 0xd1, 0x9d, 0x7b, 0x76, 0x6d, 0x6f, 0x72, 0x73, 0x5d, 0x47,
+			0x68, 0x80, 0x91, 0xae, 0xab, 0x95, 0x85, 0x8d, 0x92, 0x89, 0x8b,
+			0x76, 0x58, 0x54, 0x5f, 0x6b, 0x75, 0x84, 0x84, 0x80, 0x91, 0x9f,
+			0xa0, 0x9c, 0x93, 0x81, 0x74, 0x7b, 0x7f, 0x7a, 0x79, 0x76, 0x74,
+			0x7c, 0x8c, 0x95, 0x92, 0x9c, 0x7a, 0x3b, 0x42, 0x51, 0x5a, 0x6d,
+			0x72, 0x70, 0x68, 0x8b, 0xb1, 0xb0, 0xb3, 0xa7, 0x91, 0x87, 0x8b,
+			0x8e, 0x75, 0x5e, 0x5a, 0x5c, 0x6c, 0x82, 0x8a, 0x83, 0x86, 0x95,
+			0x9e, 0xa1, 0x9a, 0x86, 0x74, 0x74, 0x7a, 0x77, 0x6c, 0x61, 0x5f,
+			0x6d, 0x83, 0x91, 0x90, 0x8b, 0x8d, 0x92, 0x98, 0x95, 0x87, 0x77,
+			0x73, 0x7a, 0x7f, 0x7d, 0x78, 0x74, 0x7b, 0x8a, 0x99, 0x96, 0x72,
+			0x4c, 0x4f, 0x62, 0x6c, 0x6b, 0x62, 0x5f, 0x70, 0x94, 0xa4, 0x9a,
+			0x91, 0x94, 0x9c, 0x9f, 0x9a, 0x88, 0x73, 0x74, 0x7c, 0x79, 0x73,
+			0x70, 0x73, 0x7d, 0x8d, 0x91, 0x88, 0x86, 0x8a, 0x8a, 0x87, 0x82,
+			0x7a, 0x74, 0x78, 0x7a, 0x75, 0x73, 0x78, 0x7d, 0x81, 0x86, 0x88,
+			0x89, 0x8d, 0x8f, 0x8a, 0x84, 0x83, 0x80, 0x7c, 0x7b, 0x79, 0x7a,
+			0x7e, 0x87, 0x84, 0x75, 0x6b, 0x64, 0x67, 0x67, 0x65, 0x64, 0x68,
+			0x75, 0x7e, 0x85, 0x89, 0x90, 0x98, 0x9a, 0x96, 0x91, 0x90, 0x8d,
+			0x88, 0x84, 0x7e, 0x7b, 0x7c, 0x7c, 0x7b, 0x7d, 0x82, 0x85, 0x85,
+			0x84, 0x84, 0x84, 0x84, 0x85, 0x80, 0x7c, 0x7a, 0x79, 0x77, 0x77,
+			0x7b, 0x7b, 0x7d, 0x7e, 0x80, 0x85, 0x89, 0x8a, 0x88, 0x85, 0x83,
+			0x81, 0x80, 0x7e, 0x7c, 0x7b, 0x79, 0x7b, 0x7a, 0x76, 0x77, 0x73,
+			0x71, 0x6f, 0x6f, 0x70, 0x70, 0x75, 0x78, 0x7b, 0x80, 0x84, 0x87,
+			0x8a, 0x8f, 0x90, 0x8f, 0x8e, 0x8c, 0x88, 0x86, 0x85, 0x84, 0x81,
+			0x7f, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x82, 0x84, 0x85, 0x84, 0x82,
+			0x81, 0x7f, 0x7d, 0x7d, 0x7c, 0x7b, 0x7a, 0x7a, 0x7b, 0x7d, 0x80,
+			0x82, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7d,
+			0x80, 0x7e, 0x7e, 0x80, 0x7e, 0x7f, 0x7f, 0x7f, 0x81, 0x81, 0x83,
+			0x80, 0x7f, 0x7f, 0x7d, 0x80, 0x7f, 0x7d, 0x80, 0x7e, 0x7e, 0x81,
+			0x7f, 0x81, 0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x7e, 0x80, 0x7d, 0x84, 0x82, 0x82, 0x82, 0x7f, 0x81, 0x80, 0x80,
+			0x7f, 0x81, 0x7b, 0x7f, 0x7f, 0x80, 0x81, 0x7f, 0x80, 0x7e, 0x7f,
+			0x81, 0x7f, 0x82, 0x7f, 0x7e, 0x80, 0x7c, 0x81, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7e, 0x7f, 0x82, 0x7f, 0x84, 0x80, 0x81, 0x81, 0x7e, 0x81,
+			0x81, 0x7f, 0x80, 0x80, 0x7e, 0x82, 0x7d, 0x80, 0x7e, 0x7c, 0x81,
+			0x7c, 0x7f, 0x80, 0x7e, 0x7e, 0x81, 0x7e, 0x81, 0x82, 0x81, 0x80,
+			0x82, 0x80, 0x82, 0x81, 0x80, 0x80, 0x7d, 0x81, 0x7d, 0x81, 0x7f,
+			0x82, 0x7e, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x7e, 0x7e, 0x7d,
+			0x7f, 0x80, 0x80, 0x7f, 0x84, 0x7e, 0x82, 0x82, 0x7f, 0x80, 0x82,
+			0x7d, 0x82, 0x7f, 0x7d, 0x83, 0x7d, 0x81, 0x82, 0x7f, 0x82, 0x81,
+			0x7f, 0x80, 0x7f, 0x7d, 0x7f, 0x7c, 0x7e, 0x7c, 0x7d, 0x7f, 0x7e,
+			0x83, 0x81, 0x83, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x81, 0x7c,
+			0x80, 0x7c, 0x7f, 0x83, 0x7e, 0x82, 0x82, 0x7e, 0x80, 0x80, 0x7d,
+			0x81, 0x7c, 0x7c, 0x80, 0x79, 0x7f, 0x7e, 0x7e, 0x82, 0x7f, 0x82,
+			0x81, 0x80, 0x82, 0x81, 0x7f, 0x82, 0x7e, 0x7f, 0x7f, 0x7e, 0x80,
+			0x80, 0x7f, 0x80, 0x82, 0x80, 0x81, 0x7f, 0x80, 0x7f, 0x7e, 0x80,
+			0x7c, 0x7e, 0x7d, 0x7c, 0x80, 0x80, 0x7e, 0x82, 0x82, 0x80, 0x84,
+			0x80, 0x82, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x81,
+			0x7e, 0x83, 0x7e, 0x7f, 0x80, 0x7b, 0x80, 0x7d, 0x7e, 0x7f, 0x7f,
+			0x7c, 0x81, 0x7e, 0x81, 0x83, 0x7f, 0x82, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x81, 0x7e, 0x80, 0x7e, 0x7c, 0x83, 0x7f, 0x83, 0x80, 0x83,
+			0x7d, 0x80, 0x82, 0x7c, 0x82, 0x7d, 0x7c, 0x7d, 0x7d, 0x7c, 0x81,
+			0x80, 0x7f, 0x84, 0x7e, 0x82, 0x80, 0x80, 0x81, 0x80, 0x81, 0x7d,
+			0x82, 0x7e, 0x7e, 0x83, 0x80, 0x81, 0x80, 0x80, 0x80, 0x7e, 0x81,
+			0x7d, 0x7f, 0x7d, 0x7e, 0x7e, 0x7d, 0x7f, 0x83, 0x7f, 0x81, 0x83,
+			0x7c, 0x83, 0x7e, 0x7d, 0x82, 0x7e, 0x80, 0x7f, 0x7d, 0x80, 0x7e,
+			0x7f, 0x82, 0x80, 0x80, 0x84, 0x7d, 0x83, 0x80, 0x7f, 0x81, 0x7c,
+			0x7e, 0x7d, 0x7d, 0x7f, 0x7f, 0x80, 0x81, 0x7e, 0x82, 0x80, 0x80,
+			0x82, 0x80, 0x7e, 0x80, 0x81, 0x7d, 0x81, 0x81, 0x7e, 0x82, 0x7f,
+			0x83, 0x80, 0x81, 0x7f, 0x7f, 0x7d, 0x7d, 0x7e, 0x7d, 0x7e, 0x7e,
+			0x81, 0x80, 0x82, 0x80, 0x84, 0x80, 0x81, 0x80, 0x7f, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x80, 0x7f, 0x80, 0x82, 0x81, 0x83, 0x81,
+			0x81, 0x81, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e, 0x7d, 0x80, 0x7e,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7c,
+			0x82, 0x7e, 0x80, 0x82, 0x80, 0x81, 0x82, 0x7e, 0x80, 0x7f, 0x7d,
+			0x81, 0x7d, 0x7f, 0x80, 0x7b, 0x7e, 0x84, 0x7c, 0x82, 0x82, 0x7d,
+			0x84, 0x7f, 0x80, 0x80, 0x7b, 0x80, 0x7f, 0x7f, 0x82, 0x7f, 0x7f,
+			0x81, 0x7d, 0x82, 0x81, 0x7f, 0x81, 0x80, 0x7f, 0x80, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x80, 0x80, 0x80, 0x7d, 0x80, 0x82, 0x80, 0x7f, 0x7f,
+			0x7d, 0x7f, 0x80, 0x80, 0x81, 0x80, 0x7f, 0x81, 0x7e, 0x82, 0x82,
+			0x7d, 0x83, 0x7c, 0x81, 0x7d, 0x7f, 0x7f, 0x7d, 0x7f, 0x7e, 0x81,
+			0x7f, 0x81, 0x80, 0x82, 0x80, 0x83, 0x7f, 0x7f, 0x80, 0x7d, 0x80,
+			0x7f, 0x7d, 0x7e, 0x7f, 0x7e, 0x82, 0x81, 0x80, 0x82, 0x7e, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x80, 0x7d, 0x82, 0x7e, 0x82,
+			0x80, 0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x7f,
+			0x82, 0x80, 0x81, 0x82, 0x7d, 0x82, 0x7b, 0x82, 0x7e, 0x7f, 0x80,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x83, 0x7c, 0x81, 0x80, 0x7d, 0x83,
+			0x7e, 0x83, 0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x7f, 0x81, 0x7c, 0x83,
+			0x7d, 0x81, 0x80, 0x7f, 0x80, 0x81, 0x7e, 0x7f, 0x80, 0x7c, 0x82,
+			0x7d, 0x81, 0x7f, 0x7f, 0x7f, 0x81, 0x7f, 0x80, 0x7f, 0x7d, 0x81,
+			0x7c, 0x80, 0x81, 0x7d, 0x82, 0x81, 0x7f, 0x84, 0x7d, 0x81, 0x80,
+			0x7d, 0x81, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x81, 0x7f,
+			0x7e, 0x82, 0x7e, 0x7f, 0x81, 0x7a, 0x82, 0x81, 0x7d, 0x83, 0x7e,
+			0x7f, 0x80, 0x7f, 0x7e, 0x81, 0x7d, 0x81, 0x81, 0x7f, 0x80, 0x80,
+			0x82, 0x7d, 0x82, 0x7e, 0x7e, 0x81, 0x7f, 0x80, 0x82, 0x7e, 0x7d,
+			0x81, 0x7c, 0x81, 0x7f, 0x7d, 0x81, 0x7c, 0x80, 0x80, 0x80, 0x81,
+			0x81, 0x7d, 0x81, 0x81, 0x7c, 0x84, 0x80, 0x7e, 0x81, 0x7f, 0x7c,
+			0x83, 0x7d, 0x81, 0x80, 0x7d, 0x80, 0x7e, 0x7e, 0x7f, 0x81, 0x7d,
+			0x80, 0x7f, 0x80, 0x81, 0x7f, 0x82, 0x80, 0x81, 0x80, 0x7d, 0x82,
+			0x7e, 0x7f, 0x83, 0x7e, 0x82, 0x81, 0x7f, 0x82, 0x7f, 0x7d, 0x7f,
+			0x7d, 0x7c, 0x81, 0x7c, 0x7e, 0x80, 0x7d, 0x7f, 0x80, 0x7f, 0x81,
+			0x80, 0x7f, 0x82, 0x7f, 0x80, 0x82, 0x7f, 0x7f, 0x81, 0x7c, 0x7f,
+			0x80, 0x7e, 0x81, 0x80, 0x7d, 0x80, 0x80, 0x7c, 0x83, 0x7e, 0x81,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x80, 0x7e, 0x81, 0x7e, 0x81,
+			0x7d, 0x81, 0x80, 0x7e, 0x81, 0x7e, 0x7d, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x82, 0x80, 0x81, 0x80, 0x7f, 0x7d, 0x7f, 0x7f,
+			0x7e, 0x81, 0x7d, 0x81, 0x7d, 0x7e, 0x80, 0x7f, 0x81, 0x7f, 0x80,
+			0x80, 0x80, 0x7f, 0x81, 0x7d, 0x80, 0x7f, 0x7e, 0x81, 0x7e, 0x80,
+			0x81, 0x80, 0x80, 0x82, 0x7e, 0x80, 0x7f, 0x7e, 0x80, 0x7e, 0x7d,
+			0x7f, 0x7d, 0x7e, 0x81, 0x7f, 0x81, 0x81, 0x7f, 0x80, 0x80, 0x7f,
+			0x81, 0x7e, 0x80, 0x80, 0x7d, 0x81, 0x7f, 0x7e, 0x81, 0x7e, 0x7e,
+			0x82, 0x7e, 0x81, 0x80, 0x7e, 0x81, 0x7e, 0x7f, 0x80, 0x7e, 0x80,
+			0x7f, 0x7e, 0x81, 0x7e, 0x80, 0x80, 0x80, 0x81, 0x81, 0x7e, 0x81,
+			0x7f, 0x7e, 0x82, 0x7e, 0x80, 0x81, 0x7f, 0x81, 0x80, 0x7e, 0x80,
+			0x7e, 0x7b, 0x7b, 0x7a, 0x77, 0x79, 0x79, 0x79, 0x7c, 0x7c, 0x7d,
+			0x80, 0x81, 0x83, 0x86, 0x86, 0x88, 0x88, 0x87, 0x87, 0x86, 0x86,
+			0x84, 0x83, 0x81, 0x80, 0x7e, 0x7e, 0x7c, 0x7c, 0x7b, 0x7a, 0x7a,
+			0x7b, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x82, 0x82, 0x83, 0x84,
+			0x84, 0x84, 0x84, 0x85, 0x82, 0x83, 0x81, 0x81, 0x81, 0x80, 0x7f,
+			0x80, 0x7e, 0x81, 0x7f, 0x83, 0x77, 0x6d, 0x88, 0x69, 0x6a, 0x7a,
+			0x65, 0x77, 0x6e, 0x6d, 0x80, 0x7a, 0x7c, 0x88, 0x8c, 0x8d, 0x90,
+			0x91, 0x93, 0x98, 0x8e, 0x8e, 0x93, 0x86, 0x85, 0x83, 0x7e, 0x7e,
+			0x77, 0x76, 0x79, 0x76, 0x74, 0x77, 0x78, 0x79, 0x7a, 0x7a, 0x7f,
+			0x80, 0x7e, 0x82, 0x84, 0x82, 0x84, 0x83, 0x83, 0x85, 0x80, 0x7d,
+			0x80, 0x7e, 0x76, 0x7b, 0x7b, 0x79, 0x7a, 0x7b, 0x7f, 0x7f, 0x80,
+			0x85, 0x87, 0x85, 0x88, 0x89, 0x89, 0x87, 0x86, 0x87, 0x85, 0x82,
+			0x82, 0x84, 0x7f, 0x80, 0x80, 0x81, 0x83, 0x7d, 0x7f, 0x63, 0x7c,
+			0x78, 0x49, 0x7f, 0x64, 0x5a, 0x7a, 0x5d, 0x7c, 0x7f, 0x75, 0x8b,
+			0x92, 0x95, 0x8f, 0x9e, 0x9a, 0x94, 0x9e, 0x8b, 0x96, 0x94, 0x7a,
+			0x8a, 0x83, 0x76, 0x7b, 0x75, 0x78, 0x74, 0x73, 0x72, 0x77, 0x7a,
+			0x71, 0x7f, 0x7f, 0x7b, 0x83, 0x7f, 0x86, 0x86, 0x81, 0x88, 0x86,
+			0x83, 0x7f, 0x80, 0x82, 0x79, 0x7a, 0x7d, 0x78, 0x77, 0x79, 0x7c,
+			0x7b, 0x7c, 0x7f, 0x83, 0x84, 0x83, 0x89, 0x8a, 0x88, 0x89, 0x8a,
+			0x89, 0x87, 0x86, 0x86, 0x83, 0x80, 0x7f, 0x80, 0x7f, 0x7c, 0x81,
+			0x7f, 0x81, 0x6b, 0x66, 0x8d, 0x51, 0x57, 0x8a, 0x4d, 0x68, 0x74,
+			0x65, 0x84, 0x77, 0x88, 0x8d, 0x9a, 0xa1, 0x85, 0xaa, 0xa4, 0x8a,
+			0xa2, 0x95, 0x8c, 0x8b, 0x7e, 0x81, 0x7f, 0x77, 0x74, 0x73, 0x7a,
+			0x6e, 0x6c, 0x7d, 0x75, 0x75, 0x7b, 0x7a, 0x82, 0x7d, 0x7f, 0x86,
+			0x84, 0x87, 0x83, 0x86, 0x8a, 0x83, 0x83, 0x83, 0x83, 0x7c, 0x76,
+			0x7d, 0x79, 0x72, 0x76, 0x77, 0x77, 0x76, 0x7b, 0x81, 0x80, 0x84,
+			0x86, 0x89, 0x8c, 0x89, 0x8b, 0x8c, 0x8b, 0x88, 0x86, 0x86, 0x83,
+			0x80, 0x80, 0x7e, 0x7d, 0x7c, 0x7c, 0x7d, 0x7f, 0x80, 0x7e, 0x80,
+			0x74, 0x69, 0x79, 0x72, 0x65, 0x67, 0x6b, 0x76, 0x6a, 0x6a, 0x82,
+			0x83, 0x81, 0x89, 0x92, 0x94, 0x8f, 0x96, 0x9a, 0x92, 0x92, 0x94,
+			0x8e, 0x86, 0x86, 0x86, 0x81, 0x7d, 0x7d, 0x7c, 0x79, 0x78, 0x79,
+			0x7a, 0x78, 0x76, 0x78, 0x7b, 0x79, 0x79, 0x7c, 0x7e, 0x7c, 0x7d,
+			0x81, 0x82, 0x80, 0x83, 0x84, 0x82, 0x82, 0x83, 0x82, 0x7f, 0x7e,
+			0x80, 0x7d, 0x79, 0x7a, 0x7c, 0x7a, 0x7b, 0x7e, 0x7e, 0x7e, 0x81,
+			0x82, 0x83, 0x84, 0x86, 0x87, 0x86, 0x86, 0x87, 0x87, 0x86, 0x85,
+			0x84, 0x83, 0x81, 0x81, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x7e, 0x71, 0x71, 0x79, 0x71, 0x64, 0x69, 0x74, 0x6d,
+			0x68, 0x77, 0x7c, 0x79, 0x83, 0x8e, 0x8b, 0x88, 0x94, 0x9a, 0x94,
+			0x92, 0x96, 0x94, 0x8d, 0x8c, 0x8c, 0x88, 0x83, 0x82, 0x81, 0x7e,
+			0x7a, 0x79, 0x7a, 0x78, 0x72, 0x74, 0x77, 0x74, 0x72, 0x77, 0x79,
+			0x76, 0x79, 0x7e, 0x7e, 0x7e, 0x81, 0x85, 0x83, 0x83, 0x85, 0x86,
+			0x84, 0x84, 0x84, 0x81, 0x80, 0x7f, 0x7e, 0x7d, 0x7c, 0x7c, 0x7c,
+			0x7c, 0x7c, 0x7e, 0x80, 0x80, 0x82, 0x84, 0x84, 0x85, 0x86, 0x86,
+			0x86, 0x85, 0x86, 0x85, 0x82, 0x81, 0x81, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x75, 0x6c, 0x74, 0x76,
+			0x68, 0x64, 0x71, 0x73, 0x6a, 0x73, 0x7f, 0x7d, 0x82, 0x8c, 0x90,
+			0x8b, 0x90, 0x9a, 0x97, 0x92, 0x94, 0x96, 0x91, 0x8e, 0x8c, 0x89,
+			0x86, 0x82, 0x7f, 0x7d, 0x78, 0x74, 0x75, 0x74, 0x70, 0x6f, 0x73,
+			0x74, 0x72, 0x75, 0x7a, 0x7a, 0x7b, 0x80, 0x83, 0x82, 0x85, 0x88,
+			0x87, 0x86, 0x87, 0x86, 0x85, 0x83, 0x81, 0x7f, 0x7d, 0x7d, 0x7c,
+			0x7a, 0x7a, 0x7a, 0x7a, 0x7a, 0x7b, 0x7d, 0x7f, 0x80, 0x82, 0x83,
+			0x85, 0x86, 0x87, 0x87, 0x88, 0x87, 0x86, 0x86, 0x84, 0x83, 0x83,
+			0x81, 0x7f, 0x7e, 0x7d, 0x7c, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7d,
+			0x7d, 0x7e, 0x7e, 0x7f, 0x7b, 0x72, 0x75, 0x7b, 0x73, 0x6b, 0x72,
+			0x7a, 0x73, 0x74, 0x7f, 0x82, 0x81, 0x89, 0x8e, 0x89, 0x8b, 0x93,
+			0x93, 0x8f, 0x8e, 0x90, 0x8d, 0x89, 0x89, 0x86, 0x84, 0x81, 0x7e,
+			0x7c, 0x7a, 0x77, 0x77, 0x78, 0x76, 0x73, 0x76, 0x78, 0x77, 0x78,
+			0x7b, 0x7d, 0x7d, 0x7f, 0x81, 0x81, 0x81, 0x83, 0x83, 0x82, 0x81,
+			0x80, 0x80, 0x81, 0x7f, 0x7e, 0x7f, 0x80, 0x7d, 0x7d, 0x7f, 0x7e,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x83, 0x82, 0x82, 0x84, 0x84, 0x83,
+			0x83, 0x83, 0x83, 0x82, 0x81, 0x81, 0x7f, 0x7e, 0x7e, 0x7e, 0x7d,
+			0x7c, 0x7c, 0x7e, 0x7d, 0x7d, 0x7e, 0x7f, 0x80, 0x80, 0x81, 0x81,
+			0x82, 0x81, 0x80, 0x80, 0x7d, 0x77, 0x75, 0x78, 0x76, 0x70, 0x72,
+			0x78, 0x76, 0x76, 0x7d, 0x81, 0x81, 0x85, 0x8a, 0x89, 0x8a, 0x8e,
+			0x90, 0x8d, 0x8c, 0x8d, 0x8c, 0x89, 0x87, 0x86, 0x84, 0x83, 0x80,
+			0x7f, 0x7d, 0x7a, 0x79, 0x78, 0x77, 0x75, 0x75, 0x76, 0x76, 0x77,
+			0x79, 0x7b, 0x7c, 0x7e, 0x80, 0x81, 0x82, 0x84, 0x84, 0x82, 0x82,
+			0x82, 0x81, 0x7e, 0x7d, 0x7f, 0x7e, 0x7d, 0x7e, 0x80, 0x7f, 0x7f,
+			0x81, 0x81, 0x80, 0x81, 0x83, 0x82, 0x82, 0x83, 0x83, 0x83, 0x83,
+			0x84, 0x83, 0x82, 0x82, 0x81, 0x80, 0x7f, 0x7f, 0x7e, 0x7c, 0x7b,
+			0x7b, 0x7b, 0x7a, 0x7b, 0x7c, 0x7c, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x81, 0x82, 0x82,
+			0x83, 0x83, 0x83, 0x84, 0x84, 0x83, 0x84, 0x83, 0x81, 0x81, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c, 0x7d, 0x7e,
+			0x7e, 0x7f, 0x80, 0x80, 0x81, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82,
+			0x82, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f,
+			0x7e, 0x7e, 0x7d, 0x7e, 0x7d, 0x79, 0x78, 0x7a, 0x78, 0x76, 0x76,
+			0x79, 0x79, 0x79, 0x7d, 0x7f, 0x81, 0x83, 0x87, 0x88, 0x88, 0x8b,
+			0x8c, 0x8b, 0x8b, 0x8b, 0x8a, 0x88, 0x86, 0x85, 0x83, 0x81, 0x7f,
+			0x7e, 0x7c, 0x7a, 0x7a, 0x79, 0x79, 0x78, 0x78, 0x7a, 0x7a, 0x7a,
+			0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x80, 0x81, 0x82, 0x82, 0x82, 0x82,
+			0x82, 0x82, 0x81, 0x81, 0x80, 0x7f, 0x7f, 0x7d, 0x7c, 0x7d, 0x7c,
+			0x7c, 0x7c, 0x7c, 0x7d, 0x7e, 0x7e, 0x7f, 0x80, 0x81, 0x81, 0x82,
+			0x83, 0x83, 0x83, 0x83, 0x84, 0x83, 0x83, 0x82, 0x81, 0x80, 0x7f,
+			0x7e, 0x7e, 0x7d, 0x7d, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7d,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81,
+			0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x80, 0x80,
+			0x81, 0x81, 0x82, 0x82, 0x82, 0x82, 0x81, 0x81, 0x81, 0x80, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f,
+		},
+		{ // 9
+			0x7f, 0x7e, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x81, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x7f, 0x81, 0x7f, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7e, 0x81, 0x7d, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f,
+			0x7d, 0x7f, 0x7f, 0x7d, 0x80, 0x7e, 0x7f, 0x80, 0x7f, 0x81, 0x80,
+			0x81, 0x81, 0x81, 0x81, 0x81, 0x82, 0x81, 0x82, 0x81, 0x81, 0x81,
+			0x81, 0x81, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7f, 0x7d, 0x7e, 0x7d, 0x7e, 0x7e, 0x80, 0x7e, 0x7f,
+			0x7e, 0x7e, 0x7e, 0x83, 0x84, 0x82, 0x81, 0x82, 0x80, 0x7e, 0x84,
+			0x7e, 0x81, 0x81, 0x7d, 0x7f, 0x7f, 0x7d, 0x81, 0x7f, 0x7e, 0x82,
+			0x7c, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x81, 0x7d, 0x7f, 0x7c, 0x7f,
+			0x7c, 0x7c, 0x7e, 0x7c, 0x7d, 0x7d, 0x7c, 0x7f, 0x7f, 0x7d, 0x81,
+			0x80, 0x81, 0x82, 0x80, 0x84, 0x82, 0x82, 0x85, 0x81, 0x84, 0x83,
+			0x81, 0x82, 0x82, 0x81, 0x81, 0x82, 0x80, 0x80, 0x7f, 0x7d, 0x80,
+			0x7e, 0x7c, 0x7f, 0x7b, 0x7d, 0x7b, 0x7c, 0x7d, 0x7c, 0x7d, 0x7f,
+			0x7e, 0x7f, 0x80, 0x7f, 0x83, 0x80, 0x83, 0x83, 0x80, 0x83, 0x81,
+			0x81, 0x84, 0x81, 0x7f, 0x83, 0x7e, 0x7f, 0x81, 0x7e, 0x80, 0x7e,
+			0x7e, 0x80, 0x7d, 0x7f, 0x7f, 0x80, 0x82, 0x7f, 0x82, 0x76, 0x7c,
+			0x85, 0x6f, 0x7e, 0x7b, 0x72, 0x82, 0x6e, 0x7a, 0x84, 0x74, 0x83,
+			0x7f, 0x83, 0x88, 0x82, 0x88, 0x8a, 0x8a, 0x84, 0x8a, 0x87, 0x84,
+			0x87, 0x7e, 0x87, 0x82, 0x7a, 0x84, 0x7c, 0x7d, 0x7f, 0x77, 0x80,
+			0x7c, 0x79, 0x7d, 0x7e, 0x7c, 0x7a, 0x7b, 0x7e, 0x7a, 0x7b, 0x7f,
+			0x7e, 0x7e, 0x7f, 0x82, 0x83, 0x81, 0x84, 0x86, 0x84, 0x84, 0x84,
+			0x86, 0x82, 0x80, 0x83, 0x81, 0x7e, 0x7f, 0x7e, 0x7f, 0x7d, 0x7b,
+			0x80, 0x7f, 0x7d, 0x80, 0x80, 0x84, 0x80, 0x87, 0x77, 0x72, 0x90,
+			0x67, 0x74, 0x81, 0x62, 0x85, 0x6b, 0x6c, 0x8d, 0x6e, 0x80, 0x88,
+			0x81, 0x91, 0x88, 0x8b, 0x95, 0x90, 0x86, 0x91, 0x8c, 0x83, 0x8a,
+			0x7a, 0x85, 0x80, 0x70, 0x84, 0x76, 0x77, 0x7d, 0x72, 0x81, 0x7c,
+			0x75, 0x82, 0x80, 0x7a, 0x83, 0x7e, 0x81, 0x81, 0x79, 0x84, 0x7d,
+			0x7b, 0x82, 0x7e, 0x81, 0x80, 0x7f, 0x87, 0x81, 0x81, 0x8a, 0x82,
+			0x85, 0x84, 0x83, 0x85, 0x7f, 0x81, 0x82, 0x7d, 0x7e, 0x7e, 0x7c,
+			0x80, 0x7b, 0x81, 0x81, 0x82, 0x82, 0x89, 0x7b, 0x60, 0x9b, 0x65,
+			0x5e, 0x8f, 0x4f, 0x86, 0x6c, 0x59, 0x9d, 0x68, 0x7c, 0x94, 0x81,
+			0x9b, 0x8e, 0x8f, 0xa1, 0x97, 0x86, 0x99, 0x92, 0x7e, 0x8c, 0x73,
+			0x83, 0x7c, 0x60, 0x82, 0x6f, 0x6c, 0x78, 0x70, 0x7f, 0x7c, 0x75,
+			0x89, 0x89, 0x7a, 0x8c, 0x88, 0x85, 0x87, 0x7c, 0x89, 0x7c, 0x75,
+			0x80, 0x79, 0x78, 0x7b, 0x7c, 0x83, 0x7d, 0x81, 0x8d, 0x84, 0x87,
+			0x8b, 0x88, 0x88, 0x82, 0x84, 0x84, 0x7a, 0x7b, 0x7f, 0x77, 0x7a,
+			0x7a, 0x7d, 0x86, 0x7b, 0x8e, 0x56, 0x80, 0x9e, 0x30, 0x96, 0x70,
+			0x58, 0x98, 0x44, 0x93, 0x8e, 0x60, 0x9d, 0x8f, 0x90, 0x97, 0x90,
+			0x9a, 0x9e, 0x84, 0x86, 0x9e, 0x74, 0x7b, 0x7f, 0x6e, 0x83, 0x5f,
+			0x74, 0x82, 0x66, 0x78, 0x80, 0x81, 0x7f, 0x82, 0x89, 0x8f, 0x81,
+			0x85, 0x8f, 0x81, 0x7f, 0x7e, 0x80, 0x77, 0x6f, 0x79, 0x7a, 0x72,
+			0x78, 0x82, 0x82, 0x81, 0x86, 0x8f, 0x8a, 0x85, 0x8e, 0x8c, 0x83,
+			0x82, 0x82, 0x81, 0x78, 0x79, 0x7f, 0x77, 0x79, 0x76, 0x89, 0x7e,
+			0x90, 0x6c, 0x53, 0xbf, 0x42, 0x5e, 0xa0, 0x3f, 0x98, 0x5b, 0x68,
+			0xb0, 0x62, 0x86, 0xa2, 0x92, 0x94, 0x92, 0x97, 0x9c, 0x8e, 0x75,
+			0x95, 0x86, 0x62, 0x7f, 0x6e, 0x79, 0x6e, 0x65, 0x8b, 0x78, 0x73,
+			0x86, 0x91, 0x82, 0x86, 0x8c, 0x8d, 0x8a, 0x77, 0x88, 0x82, 0x72,
+			0x75, 0x77, 0x76, 0x70, 0x70, 0x7e, 0x7e, 0x76, 0x88, 0x8d, 0x88,
+			0x88, 0x8e, 0x90, 0x85, 0x82, 0x89, 0x82, 0x79, 0x7c, 0x7d, 0x7b,
+			0x74, 0x7d, 0x80, 0x7b, 0x7d, 0x85, 0x8c, 0x89, 0x93, 0x4b, 0x89,
+			0x9f, 0x1d, 0x93, 0x71, 0x4f, 0x93, 0x49, 0x92, 0x98, 0x67, 0x9d,
+			0xa5, 0x96, 0x91, 0x9c, 0x99, 0x91, 0x83, 0x72, 0x91, 0x6f, 0x5c,
+			0x7d, 0x6c, 0x74, 0x6a, 0x7a, 0x8d, 0x7c, 0x81, 0x94, 0x98, 0x81,
+			0x8c, 0x8e, 0x88, 0x7c, 0x73, 0x80, 0x73, 0x69, 0x6e, 0x79, 0x71,
+			0x70, 0x80, 0x86, 0x83, 0x85, 0x93, 0x92, 0x88, 0x89, 0x8f, 0x85,
+			0x79, 0x7f, 0x7f, 0x76, 0x74, 0x7a, 0x7f, 0x79, 0x7b, 0x88, 0x83,
+			0x84, 0x84, 0x8e, 0x8b, 0x90, 0x78, 0x48, 0xa4, 0x60, 0x31, 0x98,
+			0x50, 0x6e, 0x79, 0x62, 0xa5, 0x8b, 0x83, 0xa6, 0xad, 0x95, 0x91,
+			0x9f, 0x8c, 0x84, 0x75, 0x6e, 0x82, 0x5f, 0x60, 0x79, 0x73, 0x73,
+			0x79, 0x8d, 0x8e, 0x89, 0x8b, 0x9b, 0x92, 0x81, 0x88, 0x84, 0x7b,
+			0x6e, 0x70, 0x73, 0x6c, 0x64, 0x75, 0x7e, 0x74, 0x82, 0x8d, 0x8e,
+			0x8c, 0x8e, 0x93, 0x8e, 0x80, 0x83, 0x85, 0x75, 0x75, 0x7a, 0x79,
+			0x76, 0x79, 0x81, 0x83, 0x7f, 0x86, 0x8b, 0x86, 0x85, 0x85, 0x8e,
+			0x83, 0x84, 0x5b, 0x66, 0x91, 0x3a, 0x62, 0x7f, 0x5a, 0x7c, 0x74,
+			0x89, 0x9c, 0x8f, 0x96, 0xaa, 0xa1, 0x8e, 0x94, 0x90, 0x7e, 0x77,
+			0x6f, 0x6f, 0x71, 0x62, 0x6e, 0x7c, 0x79, 0x7b, 0x8b, 0x92, 0x8e,
+			0x90, 0x8e, 0x96, 0x87, 0x7d, 0x82, 0x79, 0x70, 0x6d, 0x70, 0x6f,
+			0x6c, 0x72, 0x7f, 0x7e, 0x80, 0x8d, 0x8f, 0x8d, 0x8d, 0x8d, 0x8b,
+			0x82, 0x7d, 0x80, 0x79, 0x74, 0x78, 0x7a, 0x79, 0x7b, 0x81, 0x85,
+			0x83, 0x86, 0x8b, 0x85, 0x86, 0x82, 0x86, 0x84, 0x83, 0x7a, 0x46,
+			0x83, 0x79, 0x3a, 0x7c, 0x75, 0x6b, 0x7b, 0x81, 0x90, 0x9b, 0x93,
+			0x92, 0xab, 0x97, 0x87, 0x91, 0x89, 0x77, 0x77, 0x70, 0x71, 0x73,
+			0x68, 0x74, 0x81, 0x7b, 0x80, 0x90, 0x8c, 0x8b, 0x90, 0x8e, 0x8a,
+			0x83, 0x7f, 0x7d, 0x78, 0x70, 0x71, 0x70, 0x70, 0x72, 0x76, 0x7f,
+			0x82, 0x85, 0x8b, 0x8e, 0x8c, 0x8b, 0x89, 0x87, 0x82, 0x7d, 0x7c,
+			0x7a, 0x78, 0x78, 0x7b, 0x7b, 0x7d, 0x81, 0x82, 0x84, 0x86, 0x85,
+			0x85, 0x86, 0x83, 0x89, 0x81, 0x88, 0x68, 0x56, 0x90, 0x5f, 0x4d,
+			0x7d, 0x74, 0x6b, 0x79, 0x8b, 0x89, 0x99, 0x92, 0x95, 0xa7, 0x95,
+			0x89, 0x91, 0x8c, 0x78, 0x7a, 0x76, 0x71, 0x72, 0x6e, 0x70, 0x7c,
+			0x7c, 0x7a, 0x89, 0x8a, 0x88, 0x8e, 0x8e, 0x89, 0x89, 0x84, 0x7f,
+			0x7e, 0x75, 0x72, 0x75, 0x72, 0x6f, 0x77, 0x7c, 0x7b, 0x83, 0x87,
+			0x88, 0x8a, 0x89, 0x88, 0x87, 0x84, 0x7f, 0x7f, 0x7e, 0x7a, 0x7b,
+			0x7c, 0x7b, 0x7e, 0x7e, 0x7d, 0x82, 0x82, 0x80, 0x83, 0x83, 0x82,
+			0x88, 0x84, 0x89, 0x74, 0x5f, 0x8b, 0x75, 0x56, 0x73, 0x7e, 0x6e,
+			0x6e, 0x86, 0x82, 0x8a, 0x91, 0x8b, 0x97, 0x9a, 0x8f, 0x89, 0x92,
+			0x8a, 0x7f, 0x7d, 0x7d, 0x79, 0x74, 0x74, 0x75, 0x78, 0x78, 0x7a,
+			0x7e, 0x82, 0x84, 0x86, 0x88, 0x87, 0x87, 0x85, 0x83, 0x80, 0x7d,
+			0x7b, 0x79, 0x78, 0x78, 0x79, 0x7b, 0x7e, 0x7e, 0x80, 0x81, 0x83,
+			0x83, 0x82, 0x83, 0x82, 0x81, 0x82, 0x81, 0x80, 0x7e, 0x7e, 0x7f,
+			0x7d, 0x7d, 0x7f, 0x7e, 0x7e, 0x80, 0x81, 0x82, 0x84, 0x85, 0x84,
+			0x8a, 0x71, 0x6d, 0x8b, 0x76, 0x65, 0x73, 0x7f, 0x75, 0x6e, 0x7f,
+			0x81, 0x83, 0x88, 0x89, 0x8a, 0x93, 0x91, 0x84, 0x8a, 0x8f, 0x84,
+			0x7c, 0x81, 0x80, 0x7a, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7c, 0x7e,
+			0x84, 0x81, 0x7e, 0x82, 0x84, 0x7f, 0x7d, 0x80, 0x7d, 0x7b, 0x7d,
+			0x7c, 0x7b, 0x7e, 0x7e, 0x7d, 0x81, 0x81, 0x81, 0x81, 0x83, 0x83,
+			0x80, 0x82, 0x81, 0x80, 0x80, 0x7e, 0x7e, 0x7e, 0x7d, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x81, 0x81, 0x81, 0x83, 0x81, 0x82, 0x84, 0x81, 0x84,
+			0x72, 0x72, 0x88, 0x74, 0x6b, 0x79, 0x7f, 0x76, 0x75, 0x81, 0x7f,
+			0x83, 0x86, 0x86, 0x87, 0x8c, 0x8d, 0x85, 0x85, 0x8a, 0x85, 0x7d,
+			0x81, 0x82, 0x7e, 0x7e, 0x7f, 0x7e, 0x80, 0x81, 0x7e, 0x7f, 0x82,
+			0x7f, 0x7d, 0x7d, 0x7f, 0x7c, 0x79, 0x7d, 0x7d, 0x7b, 0x7d, 0x7e,
+			0x7e, 0x7f, 0x80, 0x81, 0x82, 0x82, 0x83, 0x83, 0x81, 0x81, 0x80,
+			0x80, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e, 0x80, 0x80, 0x80, 0x81,
+			0x81, 0x81, 0x82, 0x80, 0x82, 0x80, 0x7e, 0x80, 0x80, 0x80, 0x81,
+			0x82, 0x72, 0x76, 0x88, 0x76, 0x70, 0x7b, 0x81, 0x78, 0x73, 0x81,
+			0x7e, 0x7e, 0x84, 0x83, 0x84, 0x8b, 0x8a, 0x83, 0x87, 0x8b, 0x86,
+			0x80, 0x83, 0x84, 0x81, 0x7e, 0x80, 0x81, 0x7e, 0x7e, 0x7c, 0x7d,
+			0x80, 0x7d, 0x7a, 0x7e, 0x7e, 0x7c, 0x7c, 0x7e, 0x7e, 0x7c, 0x7e,
+			0x80, 0x80, 0x7f, 0x81, 0x80, 0x80, 0x7f, 0x80, 0x81, 0x7f, 0x7f,
+			0x80, 0x80, 0x81, 0x7f, 0x81, 0x81, 0x81, 0x82, 0x81, 0x82, 0x81,
+			0x80, 0x81, 0x80, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x80, 0x81,
+			0x80, 0x83, 0x83, 0x85, 0x7a, 0x70, 0x8a, 0x7c, 0x68, 0x79, 0x7e,
+			0x75, 0x6d, 0x7f, 0x7f, 0x7a, 0x85, 0x84, 0x88, 0x8f, 0x8c, 0x87,
+			0x8d, 0x8e, 0x85, 0x82, 0x85, 0x82, 0x7a, 0x7c, 0x7e, 0x7a, 0x79,
+			0x7c, 0x7b, 0x7c, 0x7f, 0x7e, 0x7f, 0x80, 0x81, 0x7f, 0x80, 0x81,
+			0x7f, 0x7e, 0x80, 0x7d, 0x7d, 0x7e, 0x7b, 0x7f, 0x7d, 0x7d, 0x7f,
+			0x7e, 0x7f, 0x80, 0x81, 0x81, 0x82, 0x83, 0x81, 0x82, 0x82, 0x81,
+			0x80, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x81,
+			0x80, 0x81, 0x81, 0x81, 0x81, 0x7f, 0x84, 0x81, 0x82, 0x72, 0x70,
+			0x8e, 0x6c, 0x67, 0x83, 0x75, 0x70, 0x74, 0x80, 0x7b, 0x81, 0x85,
+			0x82, 0x93, 0x8d, 0x86, 0x92, 0x92, 0x86, 0x89, 0x89, 0x83, 0x80,
+			0x7d, 0x7b, 0x7d, 0x79, 0x74, 0x7c, 0x7b, 0x77, 0x7d, 0x80, 0x7d,
+			0x7f, 0x83, 0x81, 0x84, 0x82, 0x7f, 0x84, 0x82, 0x7d, 0x80, 0x81,
+			0x7b, 0x7b, 0x80, 0x7b, 0x79, 0x7d, 0x7c, 0x7c, 0x7b, 0x7f, 0x82,
+			0x80, 0x80, 0x85, 0x86, 0x83, 0x86, 0x86, 0x86, 0x84, 0x83, 0x84,
+			0x81, 0x7f, 0x7f, 0x7f, 0x7d, 0x7c, 0x7d, 0x7f, 0x7e, 0x7f, 0x81,
+			0x87, 0x81, 0x86, 0x77, 0x6d, 0x91, 0x63, 0x6a, 0x82, 0x63, 0x77,
+			0x6f, 0x74, 0x81, 0x7d, 0x7f, 0x8e, 0x92, 0x88, 0x97, 0x94, 0x92,
+			0x93, 0x8a, 0x8c, 0x8a, 0x7d, 0x7e, 0x7e, 0x76, 0x74, 0x74, 0x75,
+			0x74, 0x74, 0x78, 0x7e, 0x7b, 0x7f, 0x84, 0x84, 0x86, 0x85, 0x88,
+			0x88, 0x84, 0x82, 0x85, 0x80, 0x7e, 0x7c, 0x79, 0x7c, 0x77, 0x77,
+			0x7a, 0x78, 0x78, 0x7b, 0x7d, 0x7e, 0x80, 0x83, 0x86, 0x84, 0x86,
+			0x8a, 0x88, 0x85, 0x86, 0x87, 0x84, 0x82, 0x83, 0x82, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x7e, 0x7d, 0x7f, 0x7f, 0x80, 0x82, 0x81, 0x83, 0x69,
+			0x81, 0x7f, 0x5f, 0x7e, 0x6b, 0x72, 0x74, 0x6a, 0x81, 0x7c, 0x7a,
+			0x89, 0x8c, 0x8a, 0x92, 0x8e, 0x96, 0x93, 0x89, 0x91, 0x8b, 0x84,
+			0x84, 0x7e, 0x7f, 0x7a, 0x74, 0x7a, 0x77, 0x73, 0x78, 0x79, 0x7a,
+			0x7a, 0x7c, 0x81, 0x80, 0x80, 0x85, 0x85, 0x85, 0x85, 0x84, 0x87,
+			0x83, 0x82, 0x84, 0x81, 0x7e, 0x7b, 0x7c, 0x7b, 0x76, 0x78, 0x79,
+			0x78, 0x77, 0x7b, 0x7e, 0x7d, 0x80, 0x85, 0x85, 0x85, 0x87, 0x89,
+			0x88, 0x87, 0x88, 0x87, 0x83, 0x83, 0x82, 0x80, 0x7e, 0x7e, 0x7e,
+			0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x80, 0x7e, 0x83, 0x76, 0x75, 0x85,
+			0x6e, 0x77, 0x78, 0x72, 0x79, 0x70, 0x79, 0x7f, 0x78, 0x81, 0x85,
+			0x84, 0x8b, 0x87, 0x8e, 0x8e, 0x88, 0x8e, 0x8c, 0x88, 0x88, 0x84,
+			0x84, 0x82, 0x7d, 0x7f, 0x7d, 0x7a, 0x7a, 0x79, 0x7a, 0x79, 0x7a,
+			0x7c, 0x7c, 0x7c, 0x7e, 0x7f, 0x80, 0x80, 0x81, 0x83, 0x82, 0x82,
+			0x83, 0x83, 0x81, 0x80, 0x81, 0x7f, 0x7d, 0x7d, 0x7d, 0x7c, 0x7b,
+			0x7c, 0x7c, 0x7d, 0x7d, 0x7e, 0x80, 0x80, 0x81, 0x83, 0x82, 0x82,
+			0x83, 0x84, 0x83, 0x82, 0x82, 0x82, 0x80, 0x80, 0x81, 0x80, 0x7f,
+			0x7f, 0x7e, 0x7f, 0x7e, 0x7d, 0x7e, 0x7e, 0x7d, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x80, 0x7c, 0x7c, 0x80, 0x7b, 0x7c, 0x7d, 0x7c, 0x7d, 0x7c,
+			0x7c, 0x7f, 0x7c, 0x7f, 0x81, 0x80, 0x83, 0x82, 0x83, 0x85, 0x83,
+			0x85, 0x85, 0x83, 0x85, 0x83, 0x83, 0x84, 0x82, 0x83, 0x82, 0x81,
+			0x80, 0x80, 0x7f, 0x7e, 0x7d, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c,
+			0x7d, 0x7e, 0x7e, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x81, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x80, 0x81, 0x80, 0x81, 0x81, 0x81, 0x81, 0x80, 0x81,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x80, 0x81, 0x81, 0x80, 0x80,
+			0x80, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x80, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x81,
+			0x80, 0x81, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x81, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7e, 0x81,
+			0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7e, 0x7f, 0x80, 0x7e, 0x7f, 0x80, 0x80, 0x7f, 0x81, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7e,
+			0x7f, 0x81, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x7e, 0x80, 0x7e, 0x80, 0x7e, 0x7f, 0x81, 0x7e, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x82, 0x7f, 0x7f, 0x82, 0x7f, 0x7f, 0x81,
+			0x7f, 0x7e, 0x80, 0x7e, 0x80, 0x80, 0x7d, 0x81, 0x7f, 0x7f, 0x81,
+			0x7f, 0x80, 0x81, 0x7e, 0x81, 0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x81,
+			0x7e, 0x80, 0x81, 0x7d, 0x82, 0x7f, 0x7f, 0x82, 0x7e, 0x81, 0x80,
+			0x7d, 0x81, 0x7f, 0x7e, 0x81, 0x7e, 0x80, 0x7e, 0x7f, 0x80, 0x7e,
+			0x80, 0x80, 0x7f, 0x81, 0x80, 0x7e, 0x82, 0x7f, 0x7e, 0x81, 0x7e,
+			0x7e, 0x80, 0x7d, 0x80, 0x80, 0x7c, 0x83, 0x7e, 0x7f, 0x82, 0x7e,
+			0x82, 0x80, 0x7f, 0x82, 0x7f, 0x7f, 0x81, 0x7e, 0x80, 0x80, 0x7d,
+			0x82, 0x7d, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x81, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x7e, 0x80, 0x7f, 0x7e, 0x82, 0x7e, 0x7f, 0x82,
+			0x7e, 0x81, 0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7e, 0x7f, 0x81, 0x7e, 0x81, 0x80, 0x7f, 0x81,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x7e, 0x81, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x81, 0x7e, 0x80, 0x81, 0x7d, 0x82,
+			0x80, 0x7e, 0x82, 0x7d, 0x81, 0x80, 0x7d, 0x83, 0x7e, 0x7e, 0x82,
+			0x7d, 0x81, 0x7f, 0x7f, 0x82, 0x7e, 0x81, 0x80, 0x7f, 0x81, 0x80,
+			0x7f, 0x82, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x80, 0x7f,
+			0x7e, 0x81, 0x7f, 0x7e, 0x81, 0x7f, 0x7f, 0x81, 0x7e, 0x80, 0x81,
+			0x7e, 0x81, 0x7f, 0x80, 0x80, 0x7e, 0x82, 0x7e, 0x7f, 0x81, 0x7c,
+			0x81, 0x7f, 0x7d, 0x82, 0x7d, 0x7f, 0x82, 0x7c, 0x82, 0x81, 0x7d,
+			0x83, 0x80, 0x7d, 0x82, 0x7f, 0x7e, 0x82, 0x7d, 0x7f, 0x82, 0x7c,
+			0x81, 0x81, 0x7d, 0x81, 0x7e, 0x7f, 0x81, 0x7d, 0x81, 0x81, 0x7e,
+			0x7f, 0x81, 0x81, 0x7e, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7e, 0x7f, 0x80, 0x7e, 0x80, 0x7e, 0x81, 0x80, 0x7e, 0x81, 0x80,
+			0x80, 0x80, 0x80, 0x81, 0x80, 0x7e, 0x80, 0x80, 0x7e, 0x7f, 0x7e,
+			0x80, 0x80, 0x7d, 0x81, 0x81, 0x7d, 0x81, 0x81, 0x7f, 0x81, 0x7f,
+			0x80, 0x80, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7e, 0x82, 0x7f, 0x7e, 0x82, 0x7e, 0x7e, 0x81,
+			0x7e, 0x80, 0x80, 0x7c, 0x82, 0x7f, 0x7c, 0x82, 0x7f, 0x7f, 0x80,
+			0x7f, 0x81, 0x80, 0x7e, 0x81, 0x81, 0x7e, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x81, 0x7f, 0x7f, 0x82, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x7e, 0x81, 0x7f, 0x7e, 0x80, 0x7f, 0x80, 0x7f, 0x7e, 0x81,
+			0x7f, 0x7d, 0x82, 0x7f, 0x7f, 0x81, 0x7d, 0x82, 0x7f, 0x7e, 0x81,
+			0x80, 0x7e, 0x7f, 0x80, 0x7f, 0x7f, 0x7e, 0x80, 0x80, 0x7f, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x81, 0x81, 0x7e, 0x80, 0x7f, 0x7f, 0x80,
+			0x7e, 0x7f, 0x80, 0x7e, 0x80, 0x81, 0x7f, 0x81, 0x80, 0x7f, 0x80,
+			0x7f, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x81, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x7e, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+		},
+	},
+	"zh": [][]byte{
+		{ // 0
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x81,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x81, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7d, 0x7e, 0x7d, 0x7e, 0x7e, 0x7e, 0x7f, 0x80,
+			0x80, 0x80, 0x82, 0x81, 0x82, 0x82, 0x83, 0x83, 0x83, 0x83, 0x83,
+			0x83, 0x83, 0x83, 0x81, 0x81, 0x7f, 0x80, 0x7e, 0x7d, 0x7d, 0x7a,
+			0x7a, 0x78, 0x78, 0x77, 0x76, 0x76, 0x77, 0x78, 0x78, 0x7a, 0x7b,
+			0x7f, 0x82, 0x83, 0x88, 0x8a, 0x8c, 0x90, 0x8f, 0x94, 0x92, 0x93,
+			0x93, 0x90, 0x90, 0x8b, 0x88, 0x84, 0x81, 0x7d, 0x77, 0x73, 0x6e,
+			0x69, 0x65, 0x65, 0x61, 0x64, 0x61, 0x66, 0x65, 0x6a, 0x69, 0x71,
+			0x73, 0x7b, 0x87, 0x86, 0x97, 0x92, 0xa5, 0x9f, 0xa5, 0xab, 0xa3,
+			0xab, 0x9f, 0xa0, 0x98, 0x90, 0x8b, 0x83, 0x7d, 0x76, 0x70, 0x6d,
+			0x68, 0x64, 0x62, 0x60, 0x5f, 0x60, 0x5e, 0x5e, 0x60, 0x60, 0x64,
+			0x64, 0x70, 0x76, 0x7c, 0x87, 0x8b, 0x99, 0x9a, 0xa5, 0xa9, 0xaa,
+			0xae, 0xaa, 0xaa, 0xa2, 0x9e, 0x97, 0x8f, 0x89, 0x81, 0x7d, 0x77,
+			0x74, 0x6f, 0x6d, 0x69, 0x66, 0x65, 0x62, 0x61, 0x60, 0x5f, 0x5d,
+			0x60, 0x60, 0x64, 0x67, 0x71, 0x74, 0x7f, 0x85, 0x8e, 0x98, 0x9a,
+			0xa7, 0xa6, 0xac, 0xab, 0xaa, 0xa9, 0xa3, 0x9f, 0x99, 0x93, 0x8b,
+			0x84, 0x7d, 0x77, 0x71, 0x6c, 0x6a, 0x63, 0x63, 0x60, 0x5f, 0x60,
+			0x5e, 0x61, 0x60, 0x63, 0x65, 0x69, 0x6e, 0x72, 0x77, 0x7e, 0x83,
+			0x8c, 0x91, 0x98, 0x9c, 0xa2, 0xa4, 0xa7, 0xa5, 0xa5, 0xa2, 0xa2,
+			0x9d, 0x95, 0x96, 0x88, 0x85, 0x7f, 0x7a, 0x73, 0x73, 0x6d, 0x6a,
+			0x66, 0x61, 0x62, 0x5f, 0x61, 0x5f, 0x5f, 0x5f, 0x5e, 0x5c, 0x63,
+			0x6b, 0x70, 0x78, 0x83, 0x8a, 0x95, 0x9b, 0xa6, 0xaa, 0xad, 0xb2,
+			0xad, 0xad, 0xa6, 0xa0, 0x9b, 0x91, 0x8e, 0x83, 0x7e, 0x79, 0x73,
+			0x72, 0x6c, 0x6f, 0x6a, 0x6b, 0x6b, 0x67, 0x63, 0x62, 0x5f, 0x5e,
+			0x59, 0x5b, 0x58, 0x54, 0x5b, 0x62, 0x71, 0x79, 0x8d, 0x99, 0xa1,
+			0xad, 0xb5, 0xb6, 0xbc, 0xb8, 0xb3, 0xaf, 0xa7, 0x9e, 0x95, 0x8f,
+			0x84, 0x7e, 0x77, 0x73, 0x6f, 0x6d, 0x6d, 0x6c, 0x6e, 0x6e, 0x6e,
+			0x6e, 0x69, 0x66, 0x63, 0x5d, 0x5e, 0x57, 0x57, 0x51, 0x53, 0x57,
+			0x5d, 0x73, 0x76, 0x8e, 0x99, 0xa4, 0xaf, 0xb6, 0xbc, 0xba, 0xbe,
+			0xb5, 0xaf, 0xab, 0x9c, 0x95, 0x8f, 0x82, 0x7f, 0x76, 0x72, 0x70,
+			0x6b, 0x6e, 0x6c, 0x6e, 0x6f, 0x6f, 0x73, 0x6e, 0x6e, 0x69, 0x66,
+			0x62, 0x5d, 0x5e, 0x55, 0x5a, 0x51, 0x5a, 0x5c, 0x67, 0x77, 0x7f,
+			0x97, 0x9a, 0xab, 0xb1, 0xb8, 0xbb, 0xba, 0xbb, 0xb4, 0xad, 0xa7,
+			0x9c, 0x94, 0x8c, 0x83, 0x7d, 0x77, 0x72, 0x6f, 0x6c, 0x6d, 0x6b,
+			0x6d, 0x6f, 0x6e, 0x70, 0x6e, 0x6f, 0x6b, 0x6b, 0x65, 0x65, 0x5f,
+			0x5d, 0x5c, 0x56, 0x59, 0x5a, 0x5d, 0x6c, 0x74, 0x81, 0x94, 0x98,
+			0xaa, 0xad, 0xb7, 0xbb, 0xbb, 0xbd, 0xb5, 0xb2, 0xa8, 0xa2, 0x98,
+			0x8f, 0x88, 0x7b, 0x7a, 0x72, 0x6d, 0x6d, 0x69, 0x6b, 0x6a, 0x6d,
+			0x6e, 0x6f, 0x71, 0x70, 0x70, 0x6d, 0x6b, 0x68, 0x66, 0x62, 0x61,
+			0x5e, 0x5d, 0x5e, 0x5d, 0x63, 0x69, 0x75, 0x7b, 0x8e, 0x93, 0x9e,
+			0xaa, 0xac, 0xb7, 0xb6, 0xb9, 0xb7, 0xb1, 0xad, 0xa4, 0x9b, 0x94,
+			0x87, 0x82, 0x79, 0x73, 0x70, 0x6b, 0x6d, 0x69, 0x6b, 0x6f, 0x6d,
+			0x73, 0x71, 0x72, 0x72, 0x70, 0x6e, 0x6c, 0x68, 0x64, 0x63, 0x5f,
+			0x60, 0x5d, 0x5f, 0x62, 0x64, 0x6e, 0x78, 0x7f, 0x90, 0x95, 0x9f,
+			0xa9, 0xac, 0xb3, 0xb6, 0xb6, 0xb5, 0xb1, 0xaa, 0xa5, 0x99, 0x92,
+			0x89, 0x80, 0x7a, 0x73, 0x6f, 0x6c, 0x6b, 0x6b, 0x6c, 0x6e, 0x6e,
+			0x72, 0x73, 0x71, 0x75, 0x70, 0x70, 0x6d, 0x69, 0x69, 0x64, 0x65,
+			0x62, 0x64, 0x64, 0x65, 0x69, 0x6c, 0x72, 0x7d, 0x80, 0x8f, 0x95,
+			0x9a, 0xa7, 0xa5, 0xaf, 0xb0, 0xb0, 0xb0, 0xab, 0xa6, 0xa2, 0x97,
+			0x92, 0x88, 0x7f, 0x7a, 0x73, 0x70, 0x6e, 0x6c, 0x6e, 0x6d, 0x6f,
+			0x72, 0x71, 0x76, 0x73, 0x76, 0x74, 0x72, 0x72, 0x6d, 0x6c, 0x69,
+			0x66, 0x67, 0x66, 0x69, 0x6a, 0x6b, 0x6e, 0x73, 0x74, 0x7e, 0x84,
+			0x87, 0x96, 0x94, 0x9e, 0xa2, 0xa3, 0xab, 0xa8, 0xab, 0xa8, 0xa4,
+			0x9f, 0x99, 0x91, 0x8b, 0x83, 0x7b, 0x76, 0x72, 0x6f, 0x6e, 0x6e,
+			0x6f, 0x6f, 0x71, 0x73, 0x75, 0x76, 0x76, 0x77, 0x75, 0x74, 0x73,
+			0x70, 0x70, 0x6d, 0x6c, 0x6b, 0x6b, 0x6e, 0x6e, 0x70, 0x72, 0x75,
+			0x77, 0x7c, 0x82, 0x86, 0x8d, 0x93, 0x94, 0x9e, 0x9d, 0xa2, 0xa6,
+			0xa1, 0xa7, 0x9e, 0x9e, 0x99, 0x90, 0x8d, 0x84, 0x7e, 0x79, 0x76,
+			0x71, 0x72, 0x6f, 0x71, 0x72, 0x72, 0x76, 0x75, 0x78, 0x76, 0x77,
+			0x77, 0x76, 0x76, 0x74, 0x73, 0x72, 0x71, 0x71, 0x70, 0x72, 0x72,
+			0x74, 0x76, 0x77, 0x79, 0x79, 0x7d, 0x7b, 0x81, 0x82, 0x88, 0x8c,
+			0x8f, 0x95, 0x96, 0x9b, 0x9d, 0x9e, 0x9f, 0x9d, 0x9b, 0x97, 0x93,
+			0x8d, 0x87, 0x82, 0x7d, 0x79, 0x76, 0x74, 0x73, 0x73, 0x73, 0x74,
+			0x75, 0x77, 0x77, 0x78, 0x78, 0x77, 0x77, 0x75, 0x74, 0x74, 0x73,
+			0x73, 0x73, 0x73, 0x74, 0x73, 0x76, 0x75, 0x78, 0x78, 0x7a, 0x78,
+			0x7e, 0x79, 0x81, 0x82, 0x84, 0x8f, 0x89, 0x98, 0x93, 0x9a, 0x9d,
+			0x9b, 0xa1, 0x9a, 0x9c, 0x97, 0x90, 0x8f, 0x86, 0x82, 0x7f, 0x78,
+			0x78, 0x74, 0x73, 0x75, 0x73, 0x76, 0x76, 0x77, 0x79, 0x77, 0x7a,
+			0x77, 0x78, 0x77, 0x75, 0x77, 0x74, 0x75, 0x75, 0x75, 0x77, 0x75,
+			0x77, 0x78, 0x79, 0x7a, 0x7a, 0x7b, 0x78, 0x7d, 0x76, 0x81, 0x7d,
+			0x84, 0x8a, 0x87, 0x96, 0x8e, 0x9b, 0x99, 0x9b, 0x9f, 0x9a, 0x9b,
+			0x96, 0x91, 0x8d, 0x87, 0x82, 0x7f, 0x79, 0x79, 0x75, 0x74, 0x75,
+			0x75, 0x75, 0x79, 0x75, 0x7a, 0x78, 0x78, 0x7a, 0x77, 0x7a, 0x78,
+			0x78, 0x78, 0x76, 0x77, 0x76, 0x75, 0x76, 0x75, 0x77, 0x76, 0x78,
+			0x78, 0x78, 0x78, 0x7b, 0x78, 0x81, 0x7e, 0x84, 0x8b, 0x88, 0x95,
+			0x92, 0x99, 0x9b, 0x9a, 0x9e, 0x9b, 0x98, 0x97, 0x8f, 0x8e, 0x88,
+			0x83, 0x82, 0x7b, 0x7b, 0x78, 0x77, 0x77, 0x76, 0x77, 0x76, 0x78,
+			0x76, 0x78, 0x78, 0x77, 0x79, 0x76, 0x79, 0x77, 0x78, 0x78, 0x77,
+			0x78, 0x77, 0x78, 0x78, 0x78, 0x79, 0x79, 0x79, 0x79, 0x7c, 0x7a,
+			0x81, 0x80, 0x86, 0x8b, 0x8a, 0x94, 0x93, 0x97, 0x9a, 0x99, 0x9b,
+			0x99, 0x95, 0x94, 0x8e, 0x8b, 0x87, 0x82, 0x81, 0x7c, 0x7b, 0x7a,
+			0x77, 0x77, 0x75, 0x74, 0x74, 0x73, 0x75, 0x73, 0x77, 0x76, 0x75,
+			0x7a, 0x76, 0x7b, 0x7b, 0x7b, 0x7f, 0x7a, 0x7f, 0x7b, 0x7c, 0x7d,
+			0x7b, 0x7d, 0x7c, 0x7d, 0x7f, 0x84, 0x83, 0x8c, 0x8b, 0x90, 0x94,
+			0x92, 0x99, 0x94, 0x97, 0x95, 0x91, 0x92, 0x8a, 0x8a, 0x85, 0x81,
+			0x80, 0x7b, 0x7a, 0x77, 0x76, 0x76, 0x75, 0x75, 0x76, 0x73, 0x76,
+			0x74, 0x75, 0x78, 0x76, 0x79, 0x79, 0x79, 0x7c, 0x7b, 0x7c, 0x7e,
+			0x7d, 0x7f, 0x7d, 0x7f, 0x7f, 0x7f, 0x82, 0x82, 0x86, 0x87, 0x8c,
+			0x8c, 0x90, 0x92, 0x91, 0x97, 0x91, 0x95, 0x91, 0x8e, 0x8d, 0x88,
+			0x87, 0x82, 0x81, 0x7d, 0x7b, 0x7a, 0x77, 0x77, 0x75, 0x76, 0x75,
+			0x76, 0x76, 0x76, 0x77, 0x77, 0x77, 0x78, 0x7a, 0x78, 0x7c, 0x79,
+			0x7b, 0x7b, 0x7a, 0x7d, 0x7a, 0x7f, 0x7d, 0x7e, 0x80, 0x7e, 0x82,
+			0x85, 0x85, 0x8d, 0x8c, 0x8f, 0x95, 0x90, 0x97, 0x94, 0x93, 0x93,
+			0x8f, 0x8d, 0x8a, 0x87, 0x84, 0x80, 0x7d, 0x7a, 0x79, 0x76, 0x76,
+			0x75, 0x74, 0x74, 0x72, 0x74, 0x73, 0x75, 0x76, 0x75, 0x78, 0x77,
+			0x7a, 0x79, 0x7a, 0x7a, 0x7a, 0x7b, 0x7d, 0x7e, 0x7f, 0x80, 0x7b,
+			0x7f, 0x7b, 0x80, 0x83, 0x84, 0x8c, 0x8b, 0x8f, 0x93, 0x94, 0x98,
+			0x97, 0x96, 0x96, 0x93, 0x8f, 0x8e, 0x88, 0x85, 0x80, 0x7d, 0x7b,
+			0x78, 0x76, 0x75, 0x74, 0x74, 0x74, 0x73, 0x75, 0x72, 0x74, 0x73,
+			0x73, 0x75, 0x74, 0x75, 0x75, 0x77, 0x75, 0x78, 0x78, 0x78, 0x7a,
+			0x78, 0x7a, 0x7a, 0x7d, 0x7c, 0x84, 0x85, 0x8b, 0x94, 0x93, 0x9c,
+			0x9b, 0x9d, 0x9e, 0x9c, 0x9b, 0x98, 0x95, 0x8f, 0x8d, 0x88, 0x83,
+			0x81, 0x7d, 0x7a, 0x79, 0x76, 0x74, 0x74, 0x71, 0x71, 0x6f, 0x6f,
+			0x6e, 0x6c, 0x6d, 0x6c, 0x6d, 0x6e, 0x6f, 0x71, 0x72, 0x74, 0x74,
+			0x76, 0x76, 0x79, 0x7a, 0x7a, 0x7d, 0x7c, 0x84, 0x88, 0x91, 0x97,
+			0x9b, 0xa0, 0xa0, 0xa3, 0xa3, 0xa3, 0xa1, 0x9c, 0x99, 0x93, 0x8f,
+			0x8a, 0x86, 0x82, 0x7e, 0x7d, 0x7a, 0x79, 0x76, 0x74, 0x73, 0x6f,
+			0x6f, 0x6c, 0x6b, 0x6b, 0x6a, 0x6b, 0x6a, 0x6b, 0x6b, 0x6e, 0x6f,
+			0x72, 0x74, 0x75, 0x77, 0x77, 0x78, 0x78, 0x79, 0x79, 0x7c, 0x82,
+			0x87, 0x8f, 0x96, 0x9a, 0xa0, 0xa1, 0xa4, 0xa4, 0xa5, 0xa2, 0xa0,
+			0x9b, 0x96, 0x91, 0x8c, 0x88, 0x83, 0x80, 0x7c, 0x7b, 0x79, 0x78,
+			0x76, 0x73, 0x71, 0x6f, 0x6e, 0x6c, 0x6b, 0x6b, 0x6a, 0x6a, 0x6a,
+			0x6a, 0x6c, 0x6e, 0x70, 0x73, 0x74, 0x76, 0x76, 0x79, 0x79, 0x7a,
+			0x7a, 0x79, 0x7b, 0x7f, 0x86, 0x8d, 0x95, 0x98, 0x9d, 0x9f, 0xa2,
+			0xa3, 0xa5, 0xa2, 0xa0, 0x9d, 0x98, 0x94, 0x8f, 0x8a, 0x86, 0x82,
+			0x7e, 0x7c, 0x7a, 0x78, 0x76, 0x75, 0x72, 0x71, 0x6e, 0x6c, 0x6c,
+			0x6a, 0x6b, 0x6a, 0x6a, 0x6b, 0x6b, 0x6d, 0x6f, 0x71, 0x73, 0x74,
+			0x76, 0x78, 0x79, 0x7a, 0x7a, 0x7a, 0x7b, 0x7c, 0x80, 0x85, 0x8b,
+			0x91, 0x96, 0x9a, 0x9d, 0x9f, 0xa1, 0xa1, 0xa0, 0x9e, 0x9b, 0x97,
+			0x94, 0x90, 0x8b, 0x87, 0x83, 0x80, 0x7e, 0x7b, 0x7a, 0x79, 0x77,
+			0x75, 0x73, 0x70, 0x6e, 0x6c, 0x6b, 0x6a, 0x6a, 0x6a, 0x6a, 0x6b,
+			0x6b, 0x6d, 0x6f, 0x71, 0x73, 0x75, 0x77, 0x78, 0x79, 0x7a, 0x7b,
+			0x7b, 0x7c, 0x7d, 0x7f, 0x83, 0x88, 0x8e, 0x93, 0x96, 0x99, 0x9c,
+			0x9e, 0xa0, 0xa0, 0x9f, 0x9d, 0x9a, 0x97, 0x94, 0x8f, 0x8b, 0x87,
+			0x84, 0x80, 0x7e, 0x7c, 0x7a, 0x78, 0x76, 0x74, 0x72, 0x70, 0x6e,
+			0x6c, 0x6b, 0x6b, 0x6b, 0x6a, 0x6a, 0x6b, 0x6b, 0x6d, 0x6f, 0x70,
+			0x72, 0x74, 0x75, 0x77, 0x78, 0x79, 0x7a, 0x7a, 0x7b, 0x7b, 0x7c,
+			0x7f, 0x84, 0x89, 0x8f, 0x92, 0x96, 0x98, 0x9c, 0x9e, 0xa0, 0xa0,
+			0x9f, 0x9d, 0x9a, 0x97, 0x93, 0x90, 0x8b, 0x88, 0x83, 0x81, 0x7e,
+			0x7c, 0x7a, 0x78, 0x76, 0x74, 0x73, 0x70, 0x6e, 0x6c, 0x6b, 0x6a,
+			0x6a, 0x69, 0x69, 0x69, 0x6a, 0x6b, 0x6d, 0x6e, 0x71, 0x73, 0x74,
+			0x76, 0x77, 0x79, 0x7a, 0x7b, 0x7b, 0x7b, 0x7c, 0x80, 0x85, 0x8a,
+			0x90, 0x93, 0x96, 0x9a, 0x9d, 0xa0, 0xa2, 0xa2, 0x9f, 0x9e, 0x9b,
+			0x98, 0x94, 0x90, 0x8b, 0x87, 0x83, 0x80, 0x7e, 0x7b, 0x79, 0x76,
+			0x75, 0x73, 0x71, 0x6e, 0x6d, 0x6a, 0x6a, 0x6a, 0x69, 0x68, 0x68,
+			0x69, 0x6a, 0x6c, 0x6d, 0x6e, 0x70, 0x73, 0x75, 0x77, 0x77, 0x79,
+			0x7a, 0x7c, 0x7c, 0x7d, 0x7d, 0x80, 0x85, 0x8b, 0x91, 0x94, 0x97,
+			0x9a, 0x9e, 0xa1, 0xa2, 0xa2, 0xa0, 0x9d, 0x9b, 0x98, 0x94, 0x8f,
+			0x8b, 0x87, 0x83, 0x80, 0x7d, 0x7a, 0x78, 0x76, 0x75, 0x72, 0x70,
+			0x6d, 0x6b, 0x6a, 0x69, 0x69, 0x67, 0x67, 0x67, 0x68, 0x69, 0x6b,
+			0x6c, 0x6e, 0x71, 0x73, 0x75, 0x77, 0x79, 0x7b, 0x7b, 0x7c, 0x7c,
+			0x7d, 0x81, 0x86, 0x8c, 0x91, 0x95, 0x98, 0x9c, 0x9f, 0xa2, 0xa3,
+			0xa2, 0xa0, 0x9e, 0x9b, 0x98, 0x94, 0x90, 0x8a, 0x87, 0x83, 0x80,
+			0x7d, 0x7a, 0x78, 0x75, 0x74, 0x72, 0x6f, 0x6d, 0x6c, 0x6b, 0x69,
+			0x68, 0x67, 0x66, 0x66, 0x68, 0x69, 0x6a, 0x6c, 0x6f, 0x71, 0x74,
+			0x75, 0x77, 0x79, 0x7b, 0x7b, 0x7b, 0x7c, 0x7e, 0x84, 0x88, 0x90,
+			0x93, 0x97, 0x9a, 0x9e, 0xa1, 0xa3, 0xa4, 0xa1, 0xa0, 0x9c, 0x9a,
+			0x95, 0x92, 0x8d, 0x89, 0x84, 0x82, 0x7e, 0x7b, 0x79, 0x77, 0x74,
+			0x72, 0x70, 0x6e, 0x6c, 0x6b, 0x69, 0x67, 0x66, 0x65, 0x65, 0x67,
+			0x68, 0x69, 0x6b, 0x6e, 0x70, 0x73, 0x75, 0x77, 0x79, 0x7a, 0x7b,
+			0x7c, 0x7c, 0x7e, 0x84, 0x88, 0x90, 0x93, 0x98, 0x9a, 0x9f, 0xa1,
+			0xa3, 0xa5, 0xa2, 0xa1, 0x9d, 0x9a, 0x96, 0x92, 0x8d, 0x89, 0x84,
+			0x81, 0x7e, 0x7c, 0x79, 0x76, 0x74, 0x71, 0x6f, 0x6d, 0x6c, 0x69,
+			0x68, 0x66, 0x65, 0x65, 0x65, 0x65, 0x67, 0x69, 0x6b, 0x6e, 0x71,
+			0x73, 0x76, 0x77, 0x79, 0x7a, 0x7b, 0x7d, 0x7f, 0x84, 0x88, 0x90,
+			0x94, 0x99, 0x9b, 0x9f, 0xa2, 0xa4, 0xa5, 0xa3, 0xa1, 0x9e, 0x9c,
+			0x96, 0x93, 0x8d, 0x8a, 0x85, 0x82, 0x7e, 0x7c, 0x79, 0x76, 0x74,
+			0x72, 0x70, 0x6d, 0x6b, 0x67, 0x67, 0x64, 0x65, 0x63, 0x64, 0x63,
+			0x65, 0x68, 0x6b, 0x6d, 0x70, 0x73, 0x75, 0x77, 0x79, 0x79, 0x7c,
+			0x7e, 0x82, 0x88, 0x8d, 0x93, 0x97, 0x9c, 0x9e, 0xa3, 0xa4, 0xa6,
+			0xa4, 0xa3, 0x9f, 0x9d, 0x98, 0x94, 0x8f, 0x8a, 0x86, 0x82, 0x80,
+			0x7c, 0x7b, 0x78, 0x77, 0x74, 0x72, 0x6f, 0x6c, 0x69, 0x67, 0x65,
+			0x64, 0x63, 0x63, 0x63, 0x64, 0x66, 0x69, 0x6d, 0x70, 0x72, 0x74,
+			0x76, 0x78, 0x7a, 0x7d, 0x7f, 0x84, 0x89, 0x90, 0x95, 0x99, 0x9e,
+			0xa0, 0xa4, 0xa4, 0xa6, 0xa3, 0xa2, 0x9e, 0x9a, 0x96, 0x92, 0x8e,
+			0x88, 0x86, 0x81, 0x7f, 0x7b, 0x7a, 0x77, 0x76, 0x73, 0x71, 0x6d,
+			0x6b, 0x68, 0x67, 0x65, 0x64, 0x64, 0x63, 0x64, 0x66, 0x69, 0x6b,
+			0x6f, 0x70, 0x73, 0x74, 0x77, 0x78, 0x7b, 0x7d, 0x83, 0x87, 0x8e,
+			0x93, 0x98, 0x9c, 0x9f, 0xa2, 0xa4, 0xa5, 0xa3, 0xa2, 0x9e, 0x9c,
+			0x96, 0x93, 0x8e, 0x8a, 0x86, 0x83, 0x80, 0x7d, 0x7b, 0x78, 0x77,
+			0x74, 0x71, 0x6e, 0x6c, 0x6a, 0x68, 0x66, 0x66, 0x64, 0x64, 0x65,
+			0x67, 0x68, 0x6b, 0x6e, 0x70, 0x72, 0x74, 0x75, 0x78, 0x7a, 0x7e,
+			0x84, 0x8a, 0x8f, 0x93, 0x98, 0x9b, 0xa0, 0xa2, 0xa4, 0xa3, 0xa2,
+			0xa0, 0x9d, 0x99, 0x95, 0x91, 0x8c, 0x89, 0x85, 0x82, 0x7f, 0x7d,
+			0x7a, 0x78, 0x76, 0x73, 0x70, 0x6e, 0x6c, 0x6a, 0x69, 0x67, 0x67,
+			0x67, 0x67, 0x68, 0x6a, 0x6c, 0x6e, 0x70, 0x72, 0x73, 0x75, 0x77,
+			0x7a, 0x7c, 0x80, 0x86, 0x8c, 0x8f, 0x95, 0x98, 0x9b, 0x9f, 0xa0,
+			0xa1, 0xa0, 0x9f, 0x9c, 0x9a, 0x96, 0x93, 0x8f, 0x8b, 0x87, 0x83,
+			0x80, 0x7e, 0x7b, 0x78, 0x75, 0x73, 0x71, 0x6e, 0x6c, 0x6b, 0x6a,
+			0x69, 0x6a, 0x69, 0x6a, 0x6a, 0x6d, 0x6e, 0x70, 0x72, 0x73, 0x75,
+			0x77, 0x79, 0x7b, 0x7e, 0x82, 0x88, 0x8d, 0x91, 0x95, 0x98, 0x9a,
+			0x9d, 0x9e, 0x9d, 0x9b, 0x9a, 0x97, 0x94, 0x91, 0x8e, 0x8a, 0x87,
+			0x84, 0x81, 0x7f, 0x7d, 0x7a, 0x78, 0x76, 0x74, 0x72, 0x70, 0x6f,
+			0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x73, 0x74,
+			0x75, 0x77, 0x78, 0x7b, 0x7c, 0x81, 0x84, 0x89, 0x8d, 0x91, 0x94,
+			0x96, 0x98, 0x99, 0x9a, 0x99, 0x98, 0x95, 0x93, 0x90, 0x8d, 0x8a,
+			0x88, 0x85, 0x82, 0x80, 0x7e, 0x7c, 0x7a, 0x78, 0x76, 0x74, 0x72,
+			0x70, 0x6f, 0x6f, 0x6e, 0x6f, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74,
+			0x75, 0x76, 0x78, 0x78, 0x79, 0x7a, 0x7c, 0x80, 0x83, 0x87, 0x8b,
+			0x8e, 0x91, 0x94, 0x96, 0x97, 0x97, 0x96, 0x95, 0x93, 0x91, 0x8e,
+			0x8b, 0x88, 0x86, 0x83, 0x82, 0x80, 0x7e, 0x7d, 0x7b, 0x79, 0x77,
+			0x75, 0x74, 0x73, 0x71, 0x71, 0x71, 0x71, 0x72, 0x74, 0x75, 0x78,
+			0x7a, 0x7c, 0x7e, 0x7f, 0x81, 0x82, 0x83, 0x83, 0x82, 0x81, 0x80,
+			0x7e, 0x7e, 0x7c, 0x7c, 0x7a, 0x7a, 0x7b, 0x7d, 0x80, 0x83, 0x86,
+			0x87, 0x8a, 0x8c, 0x8e, 0x8f, 0x90, 0x8f, 0x8e, 0x8d, 0x8b, 0x89,
+			0x86, 0x85, 0x82, 0x80, 0x7e, 0x7e, 0x7c, 0x7b, 0x79, 0x79, 0x76,
+			0x76, 0x74, 0x73, 0x72, 0x72, 0x72, 0x73, 0x74, 0x75, 0x77, 0x79,
+			0x7c, 0x7e, 0x81, 0x82, 0x85, 0x86, 0x88, 0x89, 0x8a, 0x89, 0x89,
+			0x89, 0x87, 0x86, 0x84, 0x83, 0x81, 0x80, 0x7e, 0x7e, 0x7c, 0x7c,
+			0x7b, 0x7a, 0x7a, 0x7a, 0x7a, 0x7a, 0x7b, 0x7b, 0x7c, 0x7c, 0x7d,
+			0x7e, 0x7f, 0x7f, 0x81, 0x82, 0x84, 0x85, 0x86, 0x88, 0x89, 0x8b,
+			0x8b, 0x8c, 0x8b, 0x8b, 0x89, 0x88, 0x86, 0x84, 0x82, 0x7f, 0x7d,
+			0x7b, 0x7a, 0x78, 0x77, 0x76, 0x76, 0x75, 0x75, 0x75, 0x75, 0x75,
+			0x75, 0x76, 0x76, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7c, 0x7d, 0x7f,
+			0x82, 0x84, 0x86, 0x89, 0x8b, 0x8c, 0x8d, 0x8e, 0x8e, 0x8e, 0x8d,
+			0x8b, 0x8a, 0x88, 0x86, 0x83, 0x81, 0x7f, 0x7e, 0x7c, 0x7b, 0x7a,
+			0x79, 0x78, 0x78, 0x77, 0x77, 0x77, 0x76, 0x76, 0x77, 0x77, 0x78,
+			0x79, 0x7a, 0x7b, 0x7d, 0x7e, 0x80, 0x81, 0x83, 0x85, 0x87, 0x89,
+			0x8a, 0x8a, 0x8b, 0x8b, 0x8a, 0x89, 0x88, 0x86, 0x84, 0x82, 0x81,
+			0x7f, 0x7e, 0x7c, 0x7b, 0x7a, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79,
+			0x79, 0x79, 0x79, 0x7a, 0x7a, 0x7b, 0x7b, 0x7c, 0x7d, 0x7e, 0x80,
+			0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x87, 0x87, 0x87, 0x87,
+			0x86, 0x85, 0x84, 0x83, 0x82, 0x80, 0x7f, 0x7e, 0x7e, 0x7d, 0x7c,
+			0x7c, 0x7c, 0x7c, 0x7b, 0x7b, 0x7b, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c,
+			0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x82, 0x82,
+			0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x82, 0x82, 0x81, 0x81, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f,
+		},
+		{ // 1
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x80, 0x81, 0x81, 0x81,
+			0x81, 0x81, 0x81, 0x82, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7c, 0x7c, 0x7c, 0x7b, 0x7d,
+			0x7b, 0x7e, 0x7c, 0x7e, 0x7f, 0x7e, 0x82, 0x82, 0x83, 0x85, 0x86,
+			0x87, 0x89, 0x88, 0x8a, 0x89, 0x89, 0x87, 0x88, 0x84, 0x84, 0x7f,
+			0x7e, 0x7a, 0x77, 0x74, 0x71, 0x6e, 0x6c, 0x6a, 0x6a, 0x6b, 0x6b,
+			0x71, 0x70, 0x78, 0x79, 0x80, 0x84, 0x8a, 0x8e, 0x94, 0x97, 0x9c,
+			0x9e, 0x9e, 0xa2, 0x9d, 0x9e, 0x9a, 0x95, 0x92, 0x8c, 0x85, 0x80,
+			0x77, 0x73, 0x6a, 0x66, 0x60, 0x5c, 0x58, 0x58, 0x55, 0x59, 0x5b,
+			0x5d, 0x67, 0x69, 0x72, 0x79, 0x80, 0x88, 0x91, 0x95, 0x9d, 0xa1,
+			0xa5, 0xa8, 0xa9, 0xa8, 0xa9, 0xa3, 0xa2, 0x9b, 0x96, 0x90, 0x89,
+			0x82, 0x7a, 0x72, 0x6a, 0x65, 0x5d, 0x5a, 0x53, 0x55, 0x4f, 0x56,
+			0x55, 0x5c, 0x62, 0x67, 0x6f, 0x77, 0x7f, 0x88, 0x90, 0x96, 0xa0,
+			0xa1, 0xaa, 0xa8, 0xad, 0xab, 0xaa, 0xa6, 0xa2, 0x9c, 0x97, 0x8e,
+			0x89, 0x80, 0x78, 0x70, 0x67, 0x61, 0x5a, 0x56, 0x52, 0x52, 0x4f,
+			0x55, 0x53, 0x5d, 0x61, 0x68, 0x71, 0x78, 0x80, 0x8b, 0x90, 0x9b,
+			0xa0, 0xa5, 0xab, 0xab, 0xae, 0xac, 0xab, 0xa6, 0xa3, 0x9a, 0x97,
+			0x8d, 0x87, 0x7d, 0x76, 0x6c, 0x65, 0x5d, 0x58, 0x53, 0x50, 0x50,
+			0x4e, 0x56, 0x53, 0x5f, 0x61, 0x6a, 0x73, 0x7a, 0x83, 0x8d, 0x93,
+			0x9e, 0xa2, 0xa8, 0xad, 0xae, 0xb0, 0xae, 0xad, 0xa7, 0xa4, 0x9b,
+			0x96, 0x8d, 0x86, 0x7b, 0x74, 0x68, 0x63, 0x5a, 0x56, 0x4f, 0x50,
+			0x4b, 0x4e, 0x53, 0x52, 0x5f, 0x60, 0x6b, 0x74, 0x7c, 0x86, 0x91,
+			0x96, 0xa2, 0xa5, 0xae, 0xaf, 0xb3, 0xb2, 0xb3, 0xad, 0xaa, 0xa2,
+			0x9d, 0x94, 0x8c, 0x82, 0x79, 0x70, 0x64, 0x5f, 0x55, 0x53, 0x4c,
+			0x4e, 0x49, 0x52, 0x4d, 0x5d, 0x59, 0x6a, 0x6d, 0x75, 0x85, 0x85,
+			0x95, 0x9b, 0x9f, 0xaa, 0xab, 0xac, 0xb5, 0xa8, 0xb3, 0xa4, 0xa6,
+			0x9e, 0x96, 0x92, 0x88, 0x7f, 0x7b, 0x6c, 0x68, 0x61, 0x57, 0x59,
+			0x4f, 0x53, 0x50, 0x52, 0x55, 0x5a, 0x60, 0x66, 0x6f, 0x76, 0x80,
+			0x88, 0x92, 0x99, 0xa2, 0xa6, 0xac, 0xb0, 0xaf, 0xb3, 0xad, 0xaa,
+			0xa6, 0x9d, 0x98, 0x8f, 0x86, 0x7e, 0x74, 0x6b, 0x62, 0x5c, 0x56,
+			0x50, 0x50, 0x4d, 0x4d, 0x54, 0x52, 0x5e, 0x61, 0x68, 0x75, 0x79,
+			0x84, 0x8f, 0x94, 0x9e, 0xa4, 0xa8, 0xaf, 0xb0, 0xb1, 0xb2, 0xad,
+			0xaa, 0xa4, 0x9b, 0x98, 0x8b, 0x86, 0x7a, 0x72, 0x68, 0x61, 0x58,
+			0x55, 0x4d, 0x4f, 0x4a, 0x4e, 0x52, 0x53, 0x5e, 0x61, 0x6c, 0x74,
+			0x7e, 0x86, 0x93, 0x96, 0xa4, 0xa4, 0xae, 0xaf, 0xb1, 0xb5, 0xae,
+			0xb1, 0xa7, 0xa2, 0x9d, 0x91, 0x8c, 0x81, 0x76, 0x71, 0x61, 0x5f,
+			0x55, 0x51, 0x4e, 0x4c, 0x49, 0x51, 0x4e, 0x59, 0x5f, 0x63, 0x70,
+			0x76, 0x81, 0x8b, 0x93, 0x9b, 0xa4, 0xa7, 0xaf, 0xaf, 0xb4, 0xb0,
+			0xb2, 0xab, 0xa8, 0xa0, 0x9a, 0x90, 0x88, 0x7e, 0x75, 0x6b, 0x62,
+			0x5b, 0x54, 0x4f, 0x4d, 0x4c, 0x49, 0x52, 0x4e, 0x5c, 0x5e, 0x68,
+			0x71, 0x7a, 0x83, 0x8f, 0x96, 0x9f, 0xa7, 0xa9, 0xb3, 0xaf, 0xb7,
+			0xb2, 0xb0, 0xae, 0xa4, 0xa0, 0x97, 0x8d, 0x87, 0x79, 0x74, 0x67,
+			0x60, 0x58, 0x51, 0x4d, 0x4c, 0x49, 0x4e, 0x4e, 0x53, 0x5d, 0x5e,
+			0x6d, 0x71, 0x7d, 0x86, 0x90, 0x98, 0xa2, 0xa6, 0xae, 0xb0, 0xb2,
+			0xb5, 0xb1, 0xb0, 0xab, 0xa4, 0x9f, 0x95, 0x8d, 0x85, 0x78, 0x73,
+			0x64, 0x5f, 0x55, 0x50, 0x4b, 0x4a, 0x47, 0x4d, 0x4e, 0x52, 0x5e,
+			0x5f, 0x6e, 0x74, 0x7f, 0x8a, 0x93, 0x9b, 0xa6, 0xa8, 0xb1, 0xb2,
+			0xb4, 0xb7, 0xb1, 0xb2, 0xa8, 0xa3, 0x9c, 0x92, 0x8b, 0x81, 0x77,
+			0x6f, 0x62, 0x5d, 0x53, 0x4e, 0x4a, 0x49, 0x48, 0x4d, 0x4c, 0x57,
+			0x5b, 0x63, 0x70, 0x75, 0x84, 0x8b, 0x96, 0xa0, 0xa8, 0xac, 0xb5,
+			0xb3, 0xb9, 0xb6, 0xb3, 0xb1, 0xa8, 0xa2, 0x9a, 0x8f, 0x8a, 0x7d,
+			0x75, 0x6b, 0x60, 0x5a, 0x51, 0x4d, 0x48, 0x49, 0x46, 0x4e, 0x4b,
+			0x59, 0x5a, 0x66, 0x6f, 0x77, 0x84, 0x8c, 0x97, 0xa1, 0xa8, 0xad,
+			0xb6, 0xb4, 0xbb, 0xb5, 0xb5, 0xaf, 0xa7, 0xa2, 0x99, 0x90, 0x89,
+			0x7b, 0x75, 0x68, 0x60, 0x57, 0x50, 0x4b, 0x49, 0x47, 0x48, 0x4c,
+			0x4e, 0x59, 0x5b, 0x68, 0x6e, 0x7a, 0x84, 0x8f, 0x98, 0xa3, 0xa9,
+			0xb0, 0xb4, 0xb7, 0xb8, 0xb6, 0xb3, 0xae, 0xa7, 0xa0, 0x97, 0x8e,
+			0x86, 0x7a, 0x72, 0x65, 0x5f, 0x54, 0x50, 0x48, 0x4a, 0x44, 0x4b,
+			0x4a, 0x51, 0x5a, 0x5d, 0x6c, 0x70, 0x7f, 0x88, 0x93, 0x9c, 0xa7,
+			0xab, 0xb3, 0xb6, 0xb7, 0xb8, 0xb5, 0xb1, 0xac, 0xa3, 0x9e, 0x92,
+			0x8c, 0x81, 0x78, 0x6e, 0x63, 0x5b, 0x53, 0x4d, 0x49, 0x48, 0x45,
+			0x4c, 0x4a, 0x56, 0x58, 0x63, 0x6c, 0x75, 0x82, 0x8c, 0x96, 0xa1,
+			0xa8, 0xaf, 0xb5, 0xb6, 0xba, 0xb7, 0xb5, 0xb0, 0xaa, 0xa2, 0x9b,
+			0x91, 0x8a, 0x7d, 0x77, 0x69, 0x62, 0x57, 0x52, 0x4b, 0x49, 0x46,
+			0x48, 0x4b, 0x4c, 0x59, 0x59, 0x69, 0x6e, 0x7a, 0x85, 0x8f, 0x99,
+			0xa4, 0xaa, 0xb2, 0xb6, 0xb7, 0xba, 0xb5, 0xb4, 0xae, 0xa7, 0xa0,
+			0x97, 0x8f, 0x85, 0x7b, 0x73, 0x66, 0x60, 0x55, 0x50, 0x4a, 0x48,
+			0x46, 0x49, 0x4a, 0x50, 0x58, 0x5d, 0x6a, 0x71, 0x7d, 0x88, 0x92,
+			0x9c, 0xa6, 0xac, 0xb3, 0xb6, 0xb8, 0xb9, 0xb5, 0xb2, 0xac, 0xa5,
+			0x9e, 0x93, 0x8d, 0x81, 0x79, 0x6e, 0x63, 0x5d, 0x52, 0x4f, 0x48,
+			0x48, 0x45, 0x4b, 0x4a, 0x53, 0x59, 0x60, 0x6d, 0x73, 0x80, 0x8a,
+			0x94, 0x9e, 0xa8, 0xac, 0xb5, 0xb5, 0xb9, 0xb8, 0xb5, 0xb1, 0xab,
+			0xa3, 0x9d, 0x92, 0x8b, 0x7f, 0x76, 0x6c, 0x62, 0x5a, 0x52, 0x4d,
+			0x48, 0x48, 0x45, 0x4d, 0x49, 0x58, 0x58, 0x65, 0x6d, 0x76, 0x83,
+			0x8b, 0x97, 0xa0, 0xa9, 0xae, 0xb6, 0xb5, 0xb9, 0xb6, 0xb4, 0xae,
+			0xa8, 0xa1, 0x99, 0x8f, 0x88, 0x7c, 0x76, 0x68, 0x62, 0x58, 0x52,
+			0x4d, 0x49, 0x47, 0x47, 0x4c, 0x4d, 0x59, 0x5a, 0x69, 0x6d, 0x7a,
+			0x84, 0x8e, 0x99, 0xa2, 0xa9, 0xb1, 0xb4, 0xb7, 0xb7, 0xb5, 0xb3,
+			0xac, 0xa7, 0x9f, 0x97, 0x8e, 0x85, 0x7b, 0x73, 0x68, 0x61, 0x57,
+			0x54, 0x4b, 0x4c, 0x46, 0x4b, 0x4c, 0x50, 0x59, 0x5e, 0x68, 0x71,
+			0x7a, 0x86, 0x90, 0x99, 0xa5, 0xa9, 0xb2, 0xb4, 0xb8, 0xb7, 0xb6,
+			0xb1, 0xad, 0xa5, 0x9e, 0x96, 0x8d, 0x84, 0x7b, 0x71, 0x67, 0x5f,
+			0x55, 0x52, 0x4a, 0x4b, 0x45, 0x4c, 0x4a, 0x53, 0x58, 0x5f, 0x69,
+			0x72, 0x7c, 0x87, 0x92, 0x9b, 0xa6, 0xab, 0xb4, 0xb4, 0xb8, 0xb6,
+			0xb5, 0xaf, 0xab, 0xa2, 0x9c, 0x92, 0x8b, 0x80, 0x78, 0x6c, 0x64,
+			0x5b, 0x55, 0x4e, 0x4c, 0x49, 0x4a, 0x4d, 0x4e, 0x59, 0x5b, 0x68,
+			0x6f, 0x79, 0x84, 0x8f, 0x97, 0xa4, 0xa8, 0xb1, 0xb3, 0xb7, 0xb6,
+			0xb5, 0xb0, 0xab, 0xa4, 0x9d, 0x95, 0x8c, 0x84, 0x7a, 0x71, 0x67,
+			0x5f, 0x56, 0x52, 0x4b, 0x4d, 0x47, 0x50, 0x4c, 0x57, 0x5a, 0x63,
+			0x6d, 0x75, 0x81, 0x8b, 0x94, 0x9e, 0xa6, 0xab, 0xb2, 0xb3, 0xb6,
+			0xb3, 0xb2, 0xab, 0xa7, 0x9f, 0x98, 0x90, 0x89, 0x7e, 0x78, 0x6b,
+			0x65, 0x59, 0x55, 0x4d, 0x4e, 0x48, 0x4d, 0x4d, 0x52, 0x5a, 0x5e,
+			0x6b, 0x70, 0x7e, 0x85, 0x92, 0x98, 0xa4, 0xa7, 0xb1, 0xb0, 0xb6,
+			0xb2, 0xb3, 0xad, 0xa8, 0xa1, 0x9a, 0x93, 0x8b, 0x82, 0x79, 0x70,
+			0x67, 0x5e, 0x57, 0x51, 0x4d, 0x4c, 0x4a, 0x50, 0x4f, 0x59, 0x5b,
+			0x67, 0x6e, 0x79, 0x82, 0x8e, 0x94, 0xa0, 0xa4, 0xac, 0xaf, 0xb2,
+			0xb3, 0xb2, 0xaf, 0xaa, 0xa3, 0x9d, 0x95, 0x8d, 0x86, 0x7b, 0x75,
+			0x69, 0x63, 0x5a, 0x55, 0x4f, 0x50, 0x49, 0x51, 0x4d, 0x57, 0x5b,
+			0x62, 0x6d, 0x73, 0x80, 0x88, 0x92, 0x9b, 0xa3, 0xa8, 0xaf, 0xb0,
+			0xb5, 0xb0, 0xb2, 0xa9, 0xa7, 0x9e, 0x98, 0x90, 0x89, 0x7f, 0x78,
+			0x6d, 0x67, 0x5d, 0x58, 0x52, 0x4e, 0x4e, 0x4a, 0x51, 0x4e, 0x5a,
+			0x5b, 0x67, 0x6d, 0x78, 0x81, 0x8c, 0x93, 0x9e, 0xa3, 0xaa, 0xaf,
+			0xb1, 0xb4, 0xb1, 0xb0, 0xaa, 0xa6, 0x9d, 0x98, 0x8f, 0x89, 0x7e,
+			0x77, 0x6c, 0x66, 0x5c, 0x58, 0x50, 0x4f, 0x4c, 0x4d, 0x50, 0x52,
+			0x5b, 0x5e, 0x6a, 0x6f, 0x7a, 0x84, 0x8d, 0x95, 0x9e, 0xa3, 0xab,
+			0xac, 0xb1, 0xb0, 0xb0, 0xac, 0xa8, 0xa2, 0x9c, 0x95, 0x8e, 0x86,
+			0x7d, 0x76, 0x6c, 0x65, 0x5b, 0x59, 0x50, 0x51, 0x4b, 0x50, 0x4f,
+			0x55, 0x5b, 0x60, 0x6b, 0x71, 0x7c, 0x85, 0x8f, 0x96, 0xa0, 0xa4,
+			0xac, 0xac, 0xb1, 0xaf, 0xb0, 0xaa, 0xa7, 0xa1, 0x99, 0x94, 0x8b,
+			0x85, 0x7c, 0x74, 0x6c, 0x64, 0x5d, 0x59, 0x51, 0x53, 0x4b, 0x53,
+			0x50, 0x57, 0x5e, 0x61, 0x6d, 0x71, 0x7e, 0x85, 0x8f, 0x97, 0xa0,
+			0xa4, 0xac, 0xab, 0xb0, 0xae, 0xae, 0xab, 0xa5, 0xa1, 0x98, 0x93,
+			0x8b, 0x84, 0x7c, 0x73, 0x6c, 0x64, 0x5c, 0x59, 0x51, 0x53, 0x4d,
+			0x53, 0x52, 0x57, 0x5f, 0x62, 0x6e, 0x73, 0x7d, 0x86, 0x8f, 0x97,
+			0x9f, 0xa3, 0xaa, 0xaa, 0xaf, 0xab, 0xad, 0xa7, 0xa3, 0x9e, 0x96,
+			0x92, 0x89, 0x83, 0x7c, 0x73, 0x6c, 0x64, 0x5e, 0x59, 0x53, 0x55,
+			0x4e, 0x56, 0x53, 0x5b, 0x60, 0x64, 0x6f, 0x75, 0x7e, 0x88, 0x8f,
+			0x98, 0xa0, 0xa3, 0xab, 0xa9, 0xae, 0xaa, 0xab, 0xa5, 0xa3, 0x9b,
+			0x96, 0x8f, 0x88, 0x82, 0x7a, 0x72, 0x6c, 0x64, 0x5e, 0x59, 0x54,
+			0x55, 0x4f, 0x57, 0x53, 0x5d, 0x60, 0x67, 0x70, 0x76, 0x80, 0x89,
+			0x90, 0x9a, 0x9f, 0xa4, 0xaa, 0xa9, 0xae, 0xa8, 0xaa, 0xa4, 0xa2,
+			0x9b, 0x95, 0x90, 0x88, 0x83, 0x7b, 0x74, 0x6d, 0x66, 0x5f, 0x5c,
+			0x54, 0x57, 0x50, 0x56, 0x56, 0x5a, 0x62, 0x64, 0x70, 0x74, 0x7e,
+			0x87, 0x8e, 0x96, 0x9e, 0xa1, 0xa8, 0xa8, 0xab, 0xaa, 0xa8, 0xa4,
+			0xa1, 0x9b, 0x95, 0x90, 0x88, 0x83, 0x7b, 0x75, 0x6e, 0x69, 0x60,
+			0x5f, 0x57, 0x58, 0x54, 0x56, 0x59, 0x5a, 0x62, 0x64, 0x6e, 0x73,
+			0x7c, 0x84, 0x8c, 0x93, 0x9b, 0x9e, 0xa5, 0xa6, 0xa7, 0xa9, 0xa5,
+			0xa5, 0x9e, 0x9b, 0x95, 0x8f, 0x89, 0x83, 0x7b, 0x77, 0x6e, 0x6a,
+			0x63, 0x5f, 0x5c, 0x59, 0x59, 0x58, 0x5c, 0x5c, 0x65, 0x64, 0x71,
+			0x73, 0x7c, 0x84, 0x8a, 0x91, 0x99, 0x9c, 0xa3, 0xa4, 0xa5, 0xa9,
+			0xa2, 0xa5, 0x9d, 0x9b, 0x94, 0x90, 0x88, 0x84, 0x7a, 0x78, 0x6e,
+			0x6b, 0x63, 0x61, 0x5c, 0x5b, 0x5a, 0x59, 0x5e, 0x5d, 0x66, 0x67,
+			0x71, 0x74, 0x7e, 0x83, 0x8c, 0x90, 0x9a, 0x9b, 0xa3, 0xa3, 0xa5,
+			0xa6, 0xa1, 0xa2, 0x9b, 0x99, 0x92, 0x8d, 0x87, 0x81, 0x7a, 0x75,
+			0x6c, 0x6b, 0x62, 0x62, 0x5d, 0x5d, 0x5c, 0x5c, 0x61, 0x60, 0x6a,
+			0x69, 0x75, 0x77, 0x80, 0x86, 0x8d, 0x93, 0x9a, 0x9d, 0xa1, 0xa3,
+			0xa2, 0xa4, 0xa0, 0x9f, 0x9a, 0x95, 0x90, 0x8a, 0x83, 0x7f, 0x76,
+			0x74, 0x6a, 0x69, 0x62, 0x61, 0x5e, 0x5e, 0x5c, 0x60, 0x62, 0x66,
+			0x6c, 0x6f, 0x78, 0x7b, 0x84, 0x89, 0x90, 0x95, 0x9c, 0x9c, 0xa3,
+			0x9f, 0xa4, 0xa0, 0x9e, 0x9b, 0x95, 0x91, 0x8b, 0x85, 0x80, 0x79,
+			0x73, 0x6e, 0x68, 0x65, 0x61, 0x61, 0x5d, 0x60, 0x5f, 0x64, 0x65,
+			0x6c, 0x6f, 0x76, 0x7c, 0x82, 0x89, 0x8e, 0x94, 0x99, 0x9c, 0xa0,
+			0xa0, 0xa0, 0xa2, 0x9c, 0x9d, 0x95, 0x93, 0x8d, 0x86, 0x82, 0x7b,
+			0x75, 0x71, 0x6a, 0x68, 0x63, 0x61, 0x5f, 0x5f, 0x60, 0x62, 0x65,
+			0x69, 0x6e, 0x73, 0x7a, 0x7e, 0x85, 0x8a, 0x90, 0x95, 0x99, 0x9c,
+			0x9f, 0x9f, 0xa2, 0x9d, 0x9e, 0x99, 0x95, 0x90, 0x8a, 0x85, 0x7f,
+			0x79, 0x75, 0x6d, 0x6b, 0x65, 0x63, 0x62, 0x5f, 0x61, 0x60, 0x65,
+			0x66, 0x6d, 0x6f, 0x77, 0x7a, 0x81, 0x86, 0x8c, 0x91, 0x96, 0x99,
+			0x9c, 0x9d, 0x9f, 0x9e, 0x9d, 0x9b, 0x95, 0x94, 0x8c, 0x89, 0x81,
+			0x7d, 0x77, 0x73, 0x6d, 0x6b, 0x65, 0x65, 0x61, 0x63, 0x61, 0x64,
+			0x66, 0x69, 0x6f, 0x71, 0x79, 0x7b, 0x84, 0x86, 0x8e, 0x91, 0x95,
+			0x99, 0x9b, 0x9d, 0x9e, 0x9c, 0x9c, 0x97, 0x95, 0x8f, 0x8b, 0x86,
+			0x80, 0x7c, 0x76, 0x71, 0x6d, 0x69, 0x66, 0x65, 0x62, 0x64, 0x63,
+			0x67, 0x68, 0x6d, 0x70, 0x76, 0x7b, 0x7f, 0x85, 0x88, 0x8e, 0x91,
+			0x95, 0x97, 0x99, 0x9a, 0x9a, 0x9a, 0x97, 0x95, 0x91, 0x8d, 0x89,
+			0x84, 0x80, 0x7a, 0x76, 0x70, 0x6d, 0x6a, 0x67, 0x66, 0x65, 0x65,
+			0x67, 0x69, 0x6b, 0x71, 0x74, 0x79, 0x7d, 0x82, 0x86, 0x8b, 0x8f,
+			0x92, 0x95, 0x98, 0x99, 0x99, 0x9a, 0x97, 0x96, 0x92, 0x8f, 0x8a,
+			0x86, 0x81, 0x7c, 0x77, 0x73, 0x6e, 0x6b, 0x69, 0x67, 0x66, 0x66,
+			0x67, 0x69, 0x6c, 0x70, 0x73, 0x78, 0x7c, 0x81, 0x84, 0x8a, 0x8e,
+			0x91, 0x95, 0x96, 0x98, 0x98, 0x99, 0x95, 0x95, 0x90, 0x8e, 0x87,
+			0x84, 0x7e, 0x79, 0x74, 0x70, 0x6d, 0x69, 0x69, 0x67, 0x68, 0x68,
+			0x6b, 0x6c, 0x71, 0x73, 0x79, 0x7b, 0x81, 0x83, 0x89, 0x8b, 0x8f,
+			0x92, 0x94, 0x96, 0x96, 0x97, 0x95, 0x95, 0x91, 0x8f, 0x8a, 0x86,
+			0x82, 0x7d, 0x77, 0x75, 0x70, 0x6d, 0x6b, 0x69, 0x69, 0x69, 0x6a,
+			0x6c, 0x6e, 0x70, 0x73, 0x77, 0x7a, 0x7f, 0x82, 0x86, 0x8a, 0x8b,
+			0x8f, 0x90, 0x93, 0x93, 0x94, 0x93, 0x93, 0x91, 0x8e, 0x8c, 0x87,
+			0x84, 0x80, 0x7c, 0x79, 0x75, 0x72, 0x71, 0x6e, 0x6d, 0x6d, 0x6d,
+			0x6e, 0x70, 0x72, 0x74, 0x77, 0x7a, 0x7d, 0x81, 0x83, 0x87, 0x89,
+			0x8b, 0x8d, 0x8f, 0x90, 0x8f, 0x90, 0x8f, 0x8e, 0x8c, 0x8a, 0x87,
+			0x85, 0x81, 0x7e, 0x7c, 0x78, 0x77, 0x74, 0x73, 0x71, 0x71, 0x70,
+			0x71, 0x72, 0x74, 0x75, 0x78, 0x79, 0x7d, 0x7e, 0x81, 0x84, 0x85,
+			0x88, 0x88, 0x8a, 0x8a, 0x8b, 0x8b, 0x8b, 0x8a, 0x8a, 0x88, 0x86,
+			0x85, 0x82, 0x80, 0x7e, 0x7c, 0x7a, 0x79, 0x76, 0x77, 0x75, 0x75,
+			0x75, 0x76, 0x76, 0x78, 0x79, 0x7b, 0x7c, 0x7e, 0x80, 0x81, 0x83,
+			0x84, 0x86, 0x86, 0x87, 0x87, 0x88, 0x87, 0x87, 0x86, 0x86, 0x84,
+			0x84, 0x82, 0x81, 0x7f, 0x7e, 0x7d, 0x7b, 0x7b, 0x79, 0x79, 0x78,
+			0x78, 0x78, 0x7a, 0x79, 0x7c, 0x7b, 0x7e, 0x7e, 0x7f, 0x81, 0x82,
+			0x83, 0x83, 0x84, 0x83, 0x85, 0x84, 0x85, 0x84, 0x84, 0x83, 0x83,
+			0x81, 0x81, 0x80, 0x7f, 0x7f, 0x7d, 0x7d, 0x7c, 0x7c, 0x7b, 0x7c,
+			0x7b, 0x7c, 0x7c, 0x7d, 0x7d, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x81,
+			0x82, 0x82, 0x81, 0x82, 0x81, 0x82, 0x81, 0x81, 0x81, 0x81, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81,
+			0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+		},
+		{ // 2
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7e, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x7e, 0x80, 0x7e, 0x81, 0x7f, 0x89, 0x87,
+			0x7d, 0x78, 0x76, 0x7c, 0x87, 0x88, 0x82, 0x7a, 0x72, 0x73, 0x79,
+			0x80, 0x81, 0x7d, 0x74, 0x73, 0x77, 0x81, 0x7c, 0x7f, 0x75, 0x90,
+			0x9f, 0x92, 0x81, 0x6b, 0x6a, 0x83, 0x97, 0x94, 0x8c, 0x7c, 0x78,
+			0x80, 0x88, 0x81, 0x82, 0x7c, 0x81, 0x84, 0x7e, 0x77, 0x76, 0x7b,
+			0x81, 0x81, 0x73, 0x6b, 0x65, 0x6b, 0x70, 0x7d, 0x84, 0x8f, 0xa8,
+			0x91, 0x73, 0x65, 0x66, 0x7f, 0x95, 0x97, 0x93, 0x89, 0x7d, 0x7a,
+			0x79, 0x7e, 0x83, 0x84, 0x85, 0x84, 0x7d, 0x7a, 0x73, 0x77, 0x7e,
+			0x83, 0x82, 0x80, 0x73, 0x6b, 0x69, 0x69, 0x6e, 0x7b, 0x82, 0x88,
+			0xa4, 0x9b, 0x83, 0x70, 0x66, 0x76, 0x8f, 0x9b, 0x9f, 0x94, 0x83,
+			0x7a, 0x76, 0x7d, 0x83, 0x85, 0x87, 0x80, 0x79, 0x73, 0x6f, 0x74,
+			0x7c, 0x7d, 0x75, 0x68, 0x62, 0x60, 0x77, 0x86, 0x90, 0xad, 0x99,
+			0x80, 0x6b, 0x63, 0x7e, 0x9a, 0xa0, 0xa3, 0x92, 0x83, 0x7c, 0x77,
+			0x7f, 0x83, 0x89, 0x86, 0x7b, 0x71, 0x6f, 0x6d, 0x76, 0x7a, 0x76,
+			0x6d, 0x64, 0x55, 0x6c, 0x82, 0x93, 0xba, 0xa5, 0x7e, 0x64, 0x5d,
+			0x78, 0x9e, 0xa8, 0xa4, 0x93, 0x83, 0x79, 0x75, 0x7c, 0x84, 0x89,
+			0x89, 0x7b, 0x6e, 0x64, 0x6e, 0x79, 0x75, 0x6f, 0x68, 0x56, 0x5e,
+			0x7a, 0x7f, 0xb2, 0xb8, 0x8e, 0x6c, 0x57, 0x6a, 0x95, 0xae, 0xaa,
+			0xa0, 0x8a, 0x7c, 0x77, 0x7c, 0x83, 0x89, 0x8d, 0x81, 0x6f, 0x63,
+			0x63, 0x6e, 0x71, 0x6f, 0x6a, 0x56, 0x60, 0x7d, 0x77, 0xa3, 0xb3,
+			0x92, 0x7a, 0x5e, 0x66, 0x8c, 0xab, 0xaa, 0x9f, 0x8a, 0x7d, 0x77,
+			0x7c, 0x7f, 0x87, 0x8b, 0x7d, 0x6c, 0x60, 0x65, 0x6d, 0x73, 0x6d,
+			0x5e, 0x56, 0x78, 0x76, 0x8f, 0xb8, 0x9c, 0x88, 0x6a, 0x61, 0x81,
+			0xa4, 0xa9, 0x9f, 0x94, 0x85, 0x7f, 0x7e, 0x7c, 0x81, 0x8b, 0x86,
+			0x72, 0x64, 0x65, 0x6d, 0x6d, 0x68, 0x61, 0x5a, 0x77, 0x7f, 0x77,
+			0xac, 0xaa, 0x89, 0x74, 0x59, 0x77, 0xa2, 0xac, 0xa0, 0x97, 0x87,
+			0x85, 0x7c, 0x74, 0x83, 0x90, 0x87, 0x73, 0x60, 0x62, 0x6a, 0x64,
+			0x69, 0x65, 0x5f, 0x7d, 0x74, 0x75, 0xb1, 0xa4, 0x8b, 0x75, 0x64,
+			0x7a, 0xa3, 0xa7, 0x9c, 0x99, 0x87, 0x85, 0x7c, 0x79, 0x84, 0x8f,
+			0x81, 0x71, 0x63, 0x65, 0x6d, 0x62, 0x64, 0x60, 0x6b, 0x81, 0x6b,
+			0x7b, 0xb3, 0xa0, 0x89, 0x72, 0x67, 0x8a, 0xa5, 0x9e, 0x97, 0x98,
+			0x8d, 0x87, 0x79, 0x77, 0x84, 0x8e, 0x7d, 0x6a, 0x60, 0x66, 0x6b,
+			0x63, 0x64, 0x61, 0x6d, 0x7c, 0x6b, 0x81, 0xaf, 0x9f, 0x86, 0x71,
+			0x6f, 0x8b, 0xa6, 0x9b, 0x98, 0x9e, 0x8a, 0x81, 0x76, 0x7c, 0x90,
+			0x86, 0x73, 0x6c, 0x68, 0x68, 0x5f, 0x63, 0x6a, 0x6b, 0x77, 0x6a,
+			0x66, 0x99, 0xab, 0x9c, 0x7c, 0x67, 0x7e, 0x9d, 0xa1, 0x97, 0x9b,
+			0x94, 0x88, 0x7e, 0x73, 0x88, 0x90, 0x7e, 0x71, 0x68, 0x6b, 0x63,
+			0x5d, 0x61, 0x6a, 0x76, 0x79, 0x59, 0x72, 0xad, 0xa5, 0x87, 0x6d,
+			0x71, 0x95, 0xa9, 0x94, 0x97, 0x9e, 0x8d, 0x86, 0x75, 0x80, 0x99,
+			0x89, 0x71, 0x67, 0x6e, 0x70, 0x62, 0x61, 0x66, 0x67, 0x78, 0x6d,
+			0x5a, 0x8f, 0xa8, 0x8f, 0x80, 0x72, 0x7f, 0x98, 0x9a, 0x94, 0xa2,
+			0x99, 0x84, 0x81, 0x78, 0x8d, 0x8f, 0x82, 0x73, 0x6c, 0x6b, 0x67,
+			0x60, 0x6b, 0x6d, 0x68, 0x73, 0x5f, 0x6d, 0x9a, 0xa4, 0x82, 0x7b,
+			0x77, 0x87, 0x98, 0x92, 0x98, 0xa5, 0x96, 0x7c, 0x80, 0x79, 0x91,
+			0x8b, 0x7b, 0x75, 0x73, 0x6c, 0x65, 0x67, 0x69, 0x6b, 0x64, 0x7b,
+			0x6b, 0x60, 0x96, 0xa5, 0x86, 0x7d, 0x76, 0x85, 0x9a, 0x94, 0x93,
+			0xa4, 0x96, 0x7c, 0x81, 0x81, 0x8c, 0x88, 0x7a, 0x74, 0x74, 0x6b,
+			0x67, 0x6d, 0x69, 0x61, 0x6b, 0x7a, 0x64, 0x67, 0x98, 0xa1, 0x85,
+			0x7d, 0x7a, 0x8d, 0x9e, 0x91, 0x90, 0xa3, 0x96, 0x7e, 0x80, 0x81,
+			0x8d, 0x89, 0x77, 0x76, 0x77, 0x6a, 0x61, 0x63, 0x6f, 0x74, 0x61,
+			0x6e, 0x6e, 0x61, 0x84, 0x9d, 0x9a, 0x87, 0x77, 0x80, 0x8a, 0x92,
+			0x9c, 0xa3, 0x9b, 0x82, 0x7a, 0x81, 0x8b, 0x8b, 0x82, 0x77, 0x76,
+			0x6e, 0x62, 0x69, 0x72, 0x69, 0x62, 0x6c, 0x71, 0x69, 0x7d, 0x92,
+			0x8e, 0x8f, 0x7d, 0x7e, 0x90, 0x93, 0x95, 0x97, 0x9b, 0x90, 0x7f,
+			0x7f, 0x84, 0x89, 0x88, 0x7c, 0x78, 0x74, 0x6c, 0x67, 0x67, 0x6c,
+			0x63, 0x65, 0x76, 0x6b, 0x60, 0x8b, 0x9e, 0x88, 0x86, 0x84, 0x88,
+			0x89, 0x93, 0x98, 0x98, 0x98, 0x8e, 0x87, 0x85, 0x81, 0x82, 0x86,
+			0x82, 0x7b, 0x71, 0x69, 0x69, 0x67, 0x67, 0x66, 0x6e, 0x7c, 0x63,
+			0x56, 0x8e, 0x9f, 0x8a, 0x85, 0x7c, 0x88, 0x91, 0x8e, 0x8b, 0x9c,
+			0x9e, 0x8d, 0x83, 0x82, 0x83, 0x84, 0x7f, 0x81, 0x7e, 0x73, 0x6c,
+			0x68, 0x6d, 0x6c, 0x65, 0x62, 0x6f, 0x77, 0x64, 0x72, 0x9b, 0x8d,
+			0x82, 0x8c, 0x87, 0x83, 0x90, 0x95, 0x92, 0x97, 0x95, 0x8d, 0x84,
+			0x82, 0x87, 0x82, 0x7f, 0x7e, 0x77, 0x75, 0x70, 0x69, 0x67, 0x6d,
+			0x65, 0x5e, 0x74, 0x78, 0x6a, 0x85, 0x95, 0x84, 0x82, 0x85, 0x86,
+			0x92, 0x97, 0x90, 0x92, 0x95, 0x91, 0x8a, 0x87, 0x86, 0x82, 0x7f,
+			0x80, 0x83, 0x7a, 0x73, 0x6d, 0x68, 0x6a, 0x68, 0x64, 0x63, 0x6f,
+			0x76, 0x67, 0x7a, 0x97, 0x85, 0x7c, 0x8b, 0x8f, 0x89, 0x8f, 0x95,
+			0x93, 0x95, 0x91, 0x8c, 0x8c, 0x8a, 0x83, 0x7f, 0x80, 0x80, 0x7b,
+			0x7b, 0x7a, 0x6b, 0x63, 0x6a, 0x68, 0x5f, 0x62, 0x75, 0x78, 0x6b,
+			0x7b, 0x91, 0x89, 0x84, 0x8b, 0x89, 0x8b, 0x95, 0x97, 0x90, 0x93,
+			0x91, 0x8f, 0x8c, 0x89, 0x85, 0x80, 0x7d, 0x7b, 0x7d, 0x7d, 0x7a,
+			0x6d, 0x60, 0x63, 0x69, 0x66, 0x63, 0x6b, 0x79, 0x74, 0x6d, 0x85,
+			0x93, 0x89, 0x8a, 0x8c, 0x8b, 0x8c, 0x95, 0x93, 0x8f, 0x94, 0x91,
+			0x8e, 0x89, 0x88, 0x84, 0x7d, 0x7d, 0x7c, 0x7e, 0x79, 0x75, 0x72,
+			0x69, 0x64, 0x65, 0x69, 0x69, 0x6a, 0x70, 0x76, 0x74, 0x84, 0x95,
+			0x84, 0x81, 0x92, 0x91, 0x86, 0x8c, 0x99, 0x95, 0x91, 0x91, 0x8b,
+			0x89, 0x8b, 0x8a, 0x83, 0x7c, 0x7a, 0x79, 0x7a, 0x7a, 0x77, 0x71,
+			0x6d, 0x69, 0x60, 0x60, 0x6e, 0x73, 0x6c, 0x6d, 0x74, 0x7b, 0x8b,
+			0x90, 0x85, 0x88, 0x93, 0x90, 0x88, 0x8e, 0x98, 0x95, 0x92, 0x8f,
+			0x89, 0x89, 0x8b, 0x87, 0x7f, 0x7d, 0x7c, 0x7b, 0x78, 0x79, 0x77,
+			0x72, 0x70, 0x6d, 0x67, 0x64, 0x6f, 0x70, 0x6b, 0x70, 0x71, 0x79,
+			0x78, 0x86, 0x9c, 0x94, 0x89, 0x8a, 0x8f, 0x8b, 0x8d, 0x95, 0x95,
+			0x92, 0x8f, 0x89, 0x83, 0x86, 0x86, 0x83, 0x7e, 0x7a, 0x79, 0x78,
+			0x78, 0x74, 0x79, 0x7c, 0x70, 0x64, 0x65, 0x6d, 0x6e, 0x6c, 0x75,
+			0x7b, 0x6c, 0x6d, 0x7a, 0x8c, 0x9c, 0x8f, 0x8b, 0x92, 0x93, 0x88,
+			0x86, 0x96, 0x99, 0x90, 0x8e, 0x8d, 0x88, 0x80, 0x80, 0x82, 0x82,
+			0x7d, 0x78, 0x79, 0x7e, 0x78, 0x72, 0x78, 0x79, 0x71, 0x6c, 0x6f,
+			0x71, 0x70, 0x6b, 0x6c, 0x75, 0x79, 0x72, 0x6e, 0x78, 0x84, 0x93,
+			0x95, 0x89, 0x8e, 0x98, 0x91, 0x86, 0x8f, 0x98, 0x90, 0x8b, 0x8d,
+			0x8a, 0x84, 0x83, 0x82, 0x80, 0x80, 0x80, 0x7a, 0x78, 0x7b, 0x79,
+			0x72, 0x74, 0x79, 0x75, 0x70, 0x73, 0x74, 0x6f, 0x6f, 0x73, 0x6f,
+			0x70, 0x74, 0x79, 0x74, 0x73, 0x80, 0x8a, 0x97, 0x97, 0x8c, 0x8a,
+			0x91, 0x91, 0x89, 0x8c, 0x92, 0x92, 0x8e, 0x8a, 0x87, 0x81, 0x80,
+			0x80, 0x81, 0x7f, 0x7c, 0x80, 0x7c, 0x78, 0x77, 0x7a, 0x76, 0x71,
+			0x79, 0x78, 0x74, 0x74, 0x77, 0x75, 0x73, 0x71, 0x71, 0x78, 0x77,
+			0x76, 0x7a, 0x7d, 0x73, 0x71, 0x86, 0x9a, 0x94, 0x8e, 0x99, 0x94,
+			0x88, 0x85, 0x90, 0x90, 0x88, 0x8f, 0x90, 0x8c, 0x84, 0x83, 0x82,
+			0x7f, 0x7f, 0x7b, 0x79, 0x7b, 0x7e, 0x7b, 0x7a, 0x7b, 0x76, 0x74,
+			0x75, 0x78, 0x76, 0x75, 0x76, 0x79, 0x7a, 0x75, 0x6e, 0x70, 0x77,
+			0x78, 0x72, 0x77, 0x82, 0x7e, 0x76, 0x7a, 0x7c, 0x7b, 0x91, 0x9e,
+			0x90, 0x8f, 0x98, 0x8e, 0x7f, 0x89, 0x91, 0x8b, 0x8b, 0x8e, 0x8c,
+			0x84, 0x84, 0x85, 0x7f, 0x7c, 0x7e, 0x7e, 0x7c, 0x7c, 0x7c, 0x7a,
+			0x77, 0x75, 0x78, 0x7c, 0x77, 0x76, 0x79, 0x78, 0x75, 0x78, 0x7e,
+			0x7a, 0x76, 0x76, 0x7a, 0x78, 0x72, 0x75, 0x7e, 0x7e, 0x79, 0x7c,
+			0x7e, 0x7b, 0x76, 0x77, 0x80, 0x92, 0x9a, 0x92, 0x92, 0x94, 0x8f,
+			0x88, 0x89, 0x8c, 0x8a, 0x8e, 0x8e, 0x89, 0x85, 0x84, 0x81, 0x7d,
+			0x7d, 0x7e, 0x7d, 0x7c, 0x7b, 0x7a, 0x79, 0x78, 0x77, 0x78, 0x7a,
+			0x7a, 0x7e, 0x79, 0x76, 0x7a, 0x78, 0x72, 0x74, 0x82, 0x7d, 0x72,
+			0x76, 0x7d, 0x77, 0x6e, 0x78, 0x7f, 0x7b, 0x78, 0x7d, 0x7f, 0x79,
+			0x77, 0x7a, 0x80, 0x8b, 0x97, 0x98, 0x94, 0x94, 0x91, 0x8b, 0x87,
+			0x8a, 0x8c, 0x8a, 0x8c, 0x8c, 0x8a, 0x84, 0x81, 0x81, 0x7f, 0x7c,
+			0x7c, 0x7c, 0x7a, 0x7b, 0x7b, 0x7b, 0x7a, 0x76, 0x79, 0x7a, 0x7c,
+			0x7a, 0x79, 0x79, 0x77, 0x76, 0x76, 0x78, 0x7a, 0x7a, 0x77, 0x76,
+			0x76, 0x73, 0x75, 0x7a, 0x79, 0x75, 0x7c, 0x7e, 0x78, 0x76, 0x79,
+			0x7b, 0x81, 0x8e, 0x96, 0x99, 0x96, 0x93, 0x90, 0x8b, 0x87, 0x88,
+			0x8f, 0x8e, 0x8c, 0x8a, 0x89, 0x86, 0x80, 0x7f, 0x80, 0x7e, 0x7c,
+			0x7a, 0x7b, 0x79, 0x79, 0x79, 0x76, 0x77, 0x78, 0x78, 0x79, 0x7a,
+			0x7b, 0x7a, 0x7c, 0x7d, 0x7e, 0x7f, 0x85, 0x83, 0x7b, 0x7e, 0x80,
+			0x7a, 0x76, 0x7e, 0x80, 0x79, 0x78, 0x7b, 0x78, 0x73, 0x75, 0x77,
+			0x77, 0x77, 0x78, 0x7a, 0x7b, 0x79, 0x79, 0x82, 0x8e, 0x92, 0x91,
+			0x95, 0x98, 0x90, 0x89, 0x8b, 0x8b, 0x87, 0x87, 0x8a, 0x88, 0x85,
+			0x83, 0x81, 0x80, 0x7e, 0x7b, 0x7a, 0x7b, 0x79, 0x77, 0x78, 0x77,
+			0x78, 0x76, 0x77, 0x77, 0x77, 0x79, 0x79, 0x7a, 0x7b, 0x7d, 0x7d,
+			0x7c, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x82, 0x81,
+			0x82, 0x81, 0x82, 0x80, 0x84, 0x88, 0x82, 0x82, 0x85, 0x83, 0x7c,
+			0x7e, 0x82, 0x7d, 0x7e, 0x7f, 0x80, 0x7c, 0x7c, 0x7e, 0x7c, 0x7c,
+			0x7c, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7d, 0x7d, 0x7f, 0x80,
+			0x7c, 0x7b, 0x7e, 0x7c, 0x7a, 0x7b, 0x7f, 0x7f, 0x7f, 0x81, 0x80,
+			0x83, 0x85, 0x84, 0x83, 0x85, 0x87, 0x83, 0x86, 0x88, 0x85, 0x83,
+			0x84, 0x85, 0x80, 0x80, 0x80, 0x80, 0x7c, 0x7c, 0x7f, 0x7c, 0x7a,
+			0x7b, 0x7c, 0x7a, 0x78, 0x7a, 0x7a, 0x78, 0x78, 0x7a, 0x7a, 0x78,
+			0x7a, 0x7b, 0x7c, 0x7a, 0x7c, 0x7e, 0x7d, 0x7d, 0x7e, 0x80, 0x7f,
+			0x7e, 0x81, 0x81, 0x7f, 0x80, 0x83, 0x81, 0x80, 0x82, 0x83, 0x81,
+			0x81, 0x83, 0x82, 0x80, 0x82, 0x82, 0x81, 0x81, 0x82, 0x81, 0x80,
+			0x81, 0x81, 0x7f, 0x80, 0x81, 0x80, 0x7e, 0x7f, 0x7f, 0x7f, 0x7d,
+			0x7e, 0x7e, 0x7d, 0x7e, 0x7e, 0x7e, 0x7d, 0x7e, 0x7d, 0x7d, 0x7e,
+			0x7d, 0x7e, 0x7d, 0x7f, 0x7e, 0x7d, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x81, 0x80, 0x7e, 0x80, 0x81, 0x7e, 0x7e, 0x80, 0x7e, 0x7d, 0x7e,
+			0x7f, 0x7e, 0x7d, 0x7e, 0x7d, 0x7d, 0x7e, 0x7d, 0x7c, 0x7d, 0x7e,
+			0x7d, 0x7e, 0x7f, 0x7e, 0x7f, 0x80, 0x80, 0x7f, 0x81, 0x81, 0x80,
+			0x81, 0x82, 0x81, 0x80, 0x81, 0x82, 0x81, 0x81, 0x82, 0x81, 0x80,
+			0x81, 0x80, 0x80, 0x81, 0x7f, 0x7e, 0x7f, 0x7f, 0x7d, 0x7d, 0x7e,
+			0x7d, 0x7c, 0x7d, 0x7e, 0x7d, 0x7c, 0x7d, 0x7d, 0x7e, 0x7d, 0x7c,
+			0x7d, 0x7e, 0x7d, 0x7d, 0x7e, 0x7d, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x80, 0x81, 0x80, 0x81, 0x80, 0x81, 0x80, 0x80, 0x80, 0x81,
+			0x80, 0x81, 0x80, 0x81, 0x80, 0x81, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7e, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x80, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x7e, 0x7f,
+			0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x80, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x80, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e,
+			0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f,
+			0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f,
+		},
+		{ // 3
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80,
+			0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x81, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x81, 0x80, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x81, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x81, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x81, 0x7f, 0x7f, 0x80, 0x81, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x81, 0x81, 0x80, 0x7f, 0x7f, 0x81, 0x80, 0x81, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x80, 0x7f,
+			0x80, 0x7e, 0x7e, 0x80, 0x7f, 0x7f, 0x7f, 0x81, 0x80, 0x7e, 0x7e,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x82, 0x82, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7e, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x81, 0x80, 0x80, 0x7e, 0x7e, 0x80, 0x80, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x7d, 0x7d, 0x80, 0x80, 0x7e, 0x7e, 0x80, 0x80, 0x81, 0x80,
+			0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x81, 0x80, 0x7f, 0x7f, 0x7e,
+			0x80, 0x80, 0x82, 0x81, 0x80, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x80,
+			0x7f, 0x7e, 0x7e, 0x80, 0x80, 0x80, 0x7f, 0x81, 0x7f, 0x80, 0x7f,
+			0x81, 0x80, 0x7e, 0x7d, 0x7f, 0x80, 0x81, 0x82, 0x81, 0x80, 0x80,
+			0x82, 0x83, 0x81, 0x80, 0x82, 0x80, 0x81, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x80, 0x7e, 0x7c, 0x7d, 0x7d, 0x7b, 0x7c, 0x7e, 0x7c,
+			0x7c, 0x7c, 0x7d, 0x7c, 0x7c, 0x7f, 0x7e, 0x7c, 0x7c, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x80, 0x7f, 0x80, 0x81, 0x81, 0x80, 0x80, 0x81, 0x80,
+			0x80, 0x81, 0x83, 0x83, 0x83, 0x82, 0x81, 0x81, 0x82, 0x83, 0x83,
+			0x81, 0x81, 0x80, 0x80, 0x80, 0x81, 0x82, 0x81, 0x81, 0x81, 0x80,
+			0x80, 0x81, 0x82, 0x82, 0x82, 0x80, 0x80, 0x81, 0x81, 0x80, 0x80,
+			0x82, 0x80, 0x7e, 0x7f, 0x82, 0x80, 0x81, 0x82, 0x82, 0x81, 0x80,
+			0x82, 0x82, 0x81, 0x81, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x81, 0x81, 0x80, 0x7f, 0x80, 0x82, 0x7f, 0x7f,
+			0x82, 0x82, 0x7f, 0x7e, 0x81, 0x82, 0x7f, 0x7f, 0x81, 0x81, 0x7f,
+			0x7e, 0x7f, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x81, 0x81,
+			0x81, 0x81, 0x7f, 0x7e, 0x81, 0x80, 0x7e, 0x7e, 0x80, 0x80, 0x7e,
+			0x7f, 0x81, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x82, 0x81, 0x7e, 0x7e,
+			0x80, 0x7f, 0x7f, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x81, 0x82,
+			0x81, 0x80, 0x80, 0x7f, 0x7f, 0x81, 0x81, 0x80, 0x7f, 0x7f, 0x7e,
+			0x7f, 0x7e, 0x7f, 0x80, 0x80, 0x7e, 0x7d, 0x80, 0x81, 0x7f, 0x80,
+			0x81, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x81, 0x7f, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7e, 0x7f,
+			0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7d, 0x80, 0x80, 0x7e, 0x7f, 0x7f,
+			0x7d, 0x7d, 0x7e, 0x7f, 0x7e, 0x7f, 0x80, 0x7d, 0x7d, 0x7e, 0x7f,
+			0x7e, 0x7e, 0x80, 0x7e, 0x7d, 0x7e, 0x7f, 0x80, 0x80, 0x7e, 0x7e,
+			0x80, 0x80, 0x7d, 0x7e, 0x80, 0x7f, 0x7d, 0x7e, 0x80, 0x7f, 0x7e,
+			0x80, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7e, 0x7f, 0x7f, 0x81,
+			0x80, 0x7e, 0x7e, 0x7f, 0x7e, 0x7d, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7d, 0x7d, 0x7f, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7d, 0x7f, 0x7f,
+			0x7d, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7e,
+			0x80, 0x81, 0x7f, 0x7d, 0x7f, 0x7f, 0x7e, 0x80, 0x7f, 0x7f, 0x80,
+			0x7e, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x82, 0x81, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x82, 0x81, 0x80, 0x7e, 0x81, 0x80, 0x7f, 0x81,
+			0x7f, 0x7d, 0x7f, 0x7f, 0x7f, 0x82, 0x7f, 0x7f, 0x80, 0x80, 0x7f,
+			0x7f, 0x7e, 0x80, 0x7e, 0x7f, 0x7d, 0x7d, 0x80, 0x7f, 0x7f, 0x80,
+			0x80, 0x7e, 0x80, 0x7f, 0x7f, 0x7e, 0x80, 0x7f, 0x81, 0x7e, 0x7e,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x80, 0x7e, 0x7e, 0x7e, 0x7d, 0x7f,
+			0x7f, 0x80, 0x7e, 0x7d, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7e, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x81, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x81, 0x82, 0x80, 0x7e, 0x80, 0x83, 0x80, 0x81,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x81, 0x81, 0x81, 0x82, 0x80, 0x83,
+			0x7f, 0x82, 0x82, 0x82, 0x81, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x80,
+			0x80, 0x7e, 0x7f, 0x7e, 0x7f, 0x82, 0x80, 0x80, 0x82, 0x82, 0x81,
+			0x80, 0x80, 0x80, 0x7e, 0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x81, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x81, 0x7c, 0x7d, 0x7f, 0x7c, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x80, 0x80, 0x7e, 0x80, 0x80,
+			0x7f, 0x80, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x81, 0x80, 0x81, 0x7f,
+			0x80, 0x7f, 0x81, 0x81, 0x81, 0x80, 0x82, 0x7f, 0x7f, 0x82, 0x82,
+			0x80, 0x7f, 0x82, 0x7f, 0x7e, 0x80, 0x80, 0x80, 0x81, 0x7e, 0x81,
+			0x7f, 0x7f, 0x81, 0x80, 0x7f, 0x7d, 0x80, 0x7e, 0x7f, 0x80, 0x81,
+			0x7f, 0x80, 0x81, 0x7e, 0x80, 0x7e, 0x81, 0x80, 0x81, 0x81, 0x82,
+			0x81, 0x7e, 0x80, 0x7e, 0x7e, 0x7e, 0x81, 0x80, 0x81, 0x80, 0x80,
+			0x81, 0x7e, 0x80, 0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x80, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7d, 0x7f, 0x81,
+			0x80, 0x80, 0x81, 0x82, 0x81, 0x81, 0x7f, 0x7e, 0x80, 0x80, 0x7e,
+			0x80, 0x80, 0x7f, 0x7f, 0x7d, 0x7f, 0x7f, 0x7d, 0x7c, 0x80, 0x7f,
+			0x7d, 0x7c, 0x7e, 0x7e, 0x7d, 0x80, 0x7d, 0x81, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x82, 0x81, 0x7e, 0x7d, 0x82, 0x80,
+			0x7f, 0x81, 0x82, 0x80, 0x7f, 0x7f, 0x81, 0x80, 0x81, 0x80, 0x82,
+			0x82, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x83, 0x81, 0x7f, 0x82, 0x81,
+			0x80, 0x7f, 0x81, 0x7e, 0x7e, 0x7f, 0x81, 0x81, 0x7f, 0x7e, 0x7e,
+			0x81, 0x7d, 0x80, 0x80, 0x7d, 0x7e, 0x7e, 0x7d, 0x7c, 0x7e, 0x80,
+			0x7d, 0x80, 0x80, 0x80, 0x7e, 0x7a, 0x80, 0x81, 0x7c, 0x7d, 0x7f,
+			0x83, 0x7f, 0x80, 0x83, 0x7f, 0x81, 0x80, 0x81, 0x80, 0x81, 0x80,
+			0x82, 0x83, 0x7f, 0x80, 0x7f, 0x7f, 0x7e, 0x82, 0x83, 0x82, 0x80,
+			0x80, 0x81, 0x7d, 0x7c, 0x7f, 0x82, 0x7e, 0x83, 0x7f, 0x80, 0x80,
+			0x80, 0x83, 0x83, 0x84, 0x7a, 0x7f, 0x7d, 0x7f, 0x7e, 0x7d, 0x84,
+			0x7c, 0x7b, 0x79, 0x7e, 0x81, 0x7c, 0x80, 0x7f, 0x81, 0x81, 0x7d,
+			0x7f, 0x7d, 0x7f, 0x7c, 0x7a, 0x7e, 0x7d, 0x7b, 0x7d, 0x7e, 0x80,
+			0x7e, 0x7d, 0x7e, 0x7f, 0x81, 0x7f, 0x7f, 0x81, 0x81, 0x83, 0x83,
+			0x81, 0x87, 0x84, 0x84, 0x80, 0x83, 0x83, 0x7e, 0x83, 0x86, 0x86,
+			0x84, 0x87, 0x89, 0x87, 0x86, 0x82, 0x7c, 0x80, 0x7f, 0x7b, 0x7e,
+			0x83, 0x80, 0x7f, 0x7d, 0x7f, 0x82, 0x80, 0x7b, 0x79, 0x7d, 0x7c,
+			0x76, 0x78, 0x7d, 0x7e, 0x7c, 0x79, 0x7e, 0x7b, 0x7c, 0x7c, 0x7f,
+			0x7f, 0x7a, 0x7b, 0x7e, 0x7d, 0x7a, 0x7f, 0x7b, 0x7c, 0x7b, 0x7c,
+			0x7c, 0x79, 0x7b, 0x7d, 0x79, 0x78, 0x7a, 0x7c, 0x7b, 0x7d, 0x80,
+			0x82, 0x86, 0x84, 0x89, 0x8c, 0x92, 0x93, 0x95, 0x97, 0x98, 0x97,
+			0x92, 0x92, 0x8f, 0x85, 0x7b, 0x70, 0x62, 0x60, 0x64, 0x65, 0x5d,
+			0x5d, 0x5d, 0x5e, 0x60, 0x73, 0x92, 0xa5, 0xab, 0xaa, 0xad, 0xae,
+			0xa4, 0x96, 0x93, 0x9a, 0x9a, 0x92, 0x8c, 0x85, 0x7d, 0x6c, 0x60,
+			0x56, 0x4d, 0x45, 0x4b, 0x4a, 0x4c, 0x4f, 0x62, 0x9a, 0xa9, 0xa5,
+			0xa2, 0x9c, 0x98, 0x80, 0x78, 0x84, 0x92, 0x98, 0x98, 0x9c, 0x9d,
+			0x8f, 0x79, 0x79, 0x6f, 0x5a, 0x56, 0x51, 0x4a, 0x4e, 0x56, 0x70,
+			0x7b, 0x83, 0xb0, 0xae, 0xa4, 0x94, 0x85, 0x8c, 0x82, 0x82, 0x91,
+			0xa2, 0xa9, 0xa6, 0x9e, 0x98, 0x8a, 0x79, 0x72, 0x72, 0x71, 0x65,
+			0x59, 0x53, 0x4a, 0x4e, 0x5c, 0x77, 0x75, 0x86, 0xb4, 0xa5, 0x99,
+			0x84, 0x7e, 0x83, 0x7c, 0x88, 0x98, 0xad, 0xab, 0x9b, 0x95, 0x85,
+			0x78, 0x6e, 0x6f, 0x78, 0x6e, 0x5e, 0x54, 0x50, 0x45, 0x4c, 0x62,
+			0x86, 0x71, 0x9c, 0xbc, 0xa0, 0x92, 0x74, 0x88, 0x7d, 0x83, 0x93,
+			0xa8, 0xb9, 0xa5, 0x96, 0x8d, 0x7c, 0x73, 0x73, 0x7b, 0x7b, 0x68,
+			0x60, 0x5a, 0x49, 0x45, 0x54, 0x7f, 0x82, 0x75, 0xbd, 0xb3, 0x96,
+			0x7b, 0x71, 0x84, 0x7d, 0x89, 0xa5, 0xb9, 0xad, 0x97, 0x88, 0x7c,
+			0x75, 0x71, 0x78, 0x8a, 0x74, 0x66, 0x59, 0x56, 0x49, 0x47, 0x58,
+			0x8a, 0x7c, 0x8c, 0xc7, 0xa4, 0x8f, 0x6d, 0x74, 0x7c, 0x7c, 0x91,
+			0xab, 0xb4, 0xa6, 0x8e, 0x7a, 0x75, 0x75, 0x73, 0x82, 0x82, 0x73,
+			0x62, 0x51, 0x50, 0x49, 0x4b, 0x64, 0x90, 0x81, 0xb4, 0xb8, 0x93,
+			0x81, 0x62, 0x74, 0x79, 0x8c, 0xa3, 0xb6, 0xb0, 0x9a, 0x83, 0x74,
+			0x70, 0x76, 0x7b, 0x8d, 0x7e, 0x6d, 0x60, 0x56, 0x4d, 0x50, 0x52,
+			0x6e, 0x96, 0x8b, 0xc0, 0xaf, 0x89, 0x70, 0x66, 0x76, 0x80, 0x94,
+			0xa8, 0xb8, 0xa3, 0x8d, 0x75, 0x71, 0x75, 0x7d, 0x83, 0x8f, 0x7c,
+			0x6a, 0x58, 0x58, 0x5c, 0x59, 0x4a, 0x74, 0x8f, 0x91, 0xc7, 0xa2,
+			0x8c, 0x6c, 0x60, 0x76, 0x82, 0x9c, 0xb3, 0xb6, 0x9e, 0x82, 0x70,
+			0x72, 0x79, 0x81, 0x8f, 0x8c, 0x75, 0x64, 0x5b, 0x5c, 0x56, 0x50,
+			0x57, 0x91, 0x8e, 0xac, 0xbf, 0x8d, 0x79, 0x56, 0x66, 0x7d, 0x94,
+			0xae, 0xba, 0xaa, 0x8d, 0x73, 0x6d, 0x74, 0x83, 0x8b, 0x90, 0x7f,
+			0x6a, 0x5d, 0x5b, 0x5d, 0x60, 0x4e, 0x5f, 0x95, 0x8f, 0xc0, 0xad,
+			0x87, 0x6d, 0x57, 0x70, 0x83, 0x9d, 0xb8, 0xb6, 0xa4, 0x83, 0x6d,
+			0x6f, 0x76, 0x86, 0x89, 0x8b, 0x73, 0x67, 0x5d, 0x5c, 0x5a, 0x66,
+			0x4d, 0x73, 0x91, 0xa6, 0xc8, 0x91, 0x7f, 0x67, 0x61, 0x75, 0x8d,
+			0xac, 0xb5, 0xa5, 0x96, 0x76, 0x6c, 0x71, 0x82, 0x87, 0x8e, 0x84,
+			0x71, 0x65, 0x5f, 0x5c, 0x5c, 0x5a, 0x50, 0x8b, 0x93, 0xc0, 0xb1,
+			0x7f, 0x72, 0x5b, 0x6a, 0x7c, 0x9e, 0xb8, 0xb4, 0x9b, 0x87, 0x6e,
+			0x72, 0x75, 0x87, 0x90, 0x8f, 0x79, 0x6d, 0x61, 0x60, 0x5e, 0x67,
+			0x4f, 0x5e, 0x95, 0x97, 0xc5, 0x97, 0x78, 0x6e, 0x5b, 0x71, 0x88,
+			0xa4, 0xb8, 0xa1, 0x96, 0x7d, 0x6e, 0x74, 0x7a, 0x8d, 0x8b, 0x8a,
+			0x76, 0x6a, 0x5f, 0x5a, 0x63, 0x60, 0x4a, 0x88, 0x97, 0xaf, 0xb0,
+			0x80, 0x77, 0x5e, 0x63, 0x83, 0x9c, 0xb3, 0xa9, 0x99, 0x84, 0x6b,
+			0x75, 0x78, 0x8f, 0x8a, 0x84, 0x78, 0x69, 0x5e, 0x5e, 0x5f, 0x67,
+			0x4c, 0x79, 0x97, 0xac, 0xbb, 0x80, 0x77, 0x64, 0x64, 0x7b, 0x97,
+			0xb5, 0xa9, 0x97, 0x84, 0x70, 0x72, 0x73, 0x8e, 0x8c, 0x86, 0x74,
+			0x69, 0x65, 0x5e, 0x5d, 0x63, 0x51, 0x7d, 0x96, 0xad, 0xb4, 0x7f,
+			0x79, 0x61, 0x6b, 0x7e, 0x99, 0xb3, 0xaa, 0x96, 0x83, 0x70, 0x74,
+			0x77, 0x89, 0x8c, 0x81, 0x76, 0x69, 0x60, 0x5e, 0x65, 0x64, 0x53,
+			0x7c, 0x93, 0xa9, 0xb2, 0x81, 0x7b, 0x63, 0x69, 0x84, 0x99, 0xb3,
+			0xa8, 0x99, 0x83, 0x71, 0x73, 0x7a, 0x8b, 0x8a, 0x84, 0x75, 0x66,
+			0x5f, 0x5a, 0x64, 0x5e, 0x51, 0x85, 0x94, 0xab, 0xad, 0x80, 0x7b,
+			0x63, 0x6e, 0x8b, 0x9c, 0xb1, 0xa2, 0x95, 0x83, 0x75, 0x78, 0x82,
+			0x8a, 0x86, 0x7d, 0x71, 0x65, 0x61, 0x5d, 0x61, 0x61, 0x58, 0x8f,
+			0x8d, 0xa9, 0x9e, 0x76, 0x75, 0x61, 0x83, 0x92, 0xa2, 0xaa, 0x9b,
+			0x91, 0x7c, 0x7c, 0x85, 0x8b, 0x8b, 0x84, 0x7c, 0x70, 0x67, 0x64,
+			0x62, 0x64, 0x52, 0x5d, 0x8d, 0x8f, 0xa8, 0x89, 0x76, 0x70, 0x67,
+			0x86, 0x92, 0xa3, 0xa2, 0x9d, 0x8e, 0x80, 0x80, 0x85, 0x8e, 0x89,
+			0x87, 0x80, 0x75, 0x68, 0x5f, 0x5b, 0x67, 0x51, 0x6a, 0x8e, 0x88,
+			0xa5, 0x80, 0x75, 0x67, 0x69, 0x8f, 0x95, 0xa4, 0x9f, 0x9a, 0x8c,
+			0x80, 0x80, 0x89, 0x8d, 0x8c, 0x88, 0x83, 0x72, 0x66, 0x5e, 0x5d,
+			0x62, 0x51, 0x80, 0x8b, 0x8d, 0x9c, 0x7b, 0x73, 0x61, 0x71, 0x90,
+			0x95, 0xa4, 0x9d, 0x99, 0x89, 0x7e, 0x82, 0x89, 0x8d, 0x89, 0x8a,
+			0x80, 0x70, 0x66, 0x62, 0x60, 0x61, 0x56, 0x87, 0x83, 0x95, 0x9b,
+			0x78, 0x70, 0x5e, 0x7f, 0x8e, 0x98, 0xa0, 0x9d, 0x97, 0x84, 0x81,
+			0x83, 0x8a, 0x90, 0x8c, 0x8b, 0x7b, 0x6e, 0x68, 0x5d, 0x5f, 0x58,
+			0x5e, 0x89, 0x7c, 0x9a, 0x93, 0x78, 0x6f, 0x63, 0x82, 0x8c, 0x98,
+			0x9f, 0xa0, 0x95, 0x85, 0x81, 0x86, 0x89, 0x89, 0x8e, 0x8b, 0x7c,
+			0x6a, 0x66, 0x5f, 0x5f, 0x53, 0x64, 0x93, 0x7c, 0x9b, 0x8a, 0x7c,
+			0x6b, 0x5e, 0x8a, 0x8a, 0x9c, 0x9e, 0xa0, 0x96, 0x81, 0x7f, 0x84,
+			0x8b, 0x89, 0x8a, 0x8c, 0x7c, 0x68, 0x62, 0x5b, 0x63, 0x50, 0x72,
+			0x8a, 0x84, 0xa0, 0x82, 0x7c, 0x69, 0x6e, 0x8a, 0x8e, 0x9d, 0xa1,
+			0x9f, 0x91, 0x81, 0x82, 0x84, 0x88, 0x8c, 0x8e, 0x86, 0x77, 0x69,
+			0x60, 0x59, 0x60, 0x59, 0x79, 0x82, 0x81, 0xa0, 0x7f, 0x79, 0x64,
+			0x78, 0x8a, 0x89, 0x9d, 0xa1, 0x9f, 0x90, 0x85, 0x84, 0x84, 0x86,
+			0x8c, 0x8d, 0x87, 0x75, 0x6b, 0x62, 0x5a, 0x59, 0x55, 0x7d, 0x7e,
+			0x82, 0x9a, 0x81, 0x79, 0x64, 0x77, 0x86, 0x89, 0x9d, 0xa4, 0xa2,
+			0x91, 0x83, 0x83, 0x84, 0x87, 0x8d, 0x91, 0x88, 0x77, 0x6b, 0x5e,
+			0x58, 0x55, 0x5a, 0x7e, 0x76, 0x8a, 0x9b, 0x80, 0x77, 0x66, 0x7d,
+			0x80, 0x8c, 0x9d, 0xa8, 0xa1, 0x91, 0x87, 0x85, 0x84, 0x84, 0x8f,
+			0x8f, 0x83, 0x74, 0x6c, 0x60, 0x57, 0x51, 0x63, 0x81, 0x71, 0x8d,
+			0x96, 0x80, 0x78, 0x69, 0x81, 0x7f, 0x8f, 0x9f, 0xa5, 0x9e, 0x8d,
+			0x89, 0x88, 0x83, 0x85, 0x93, 0x8e, 0x80, 0x72, 0x6b, 0x5f, 0x58,
+			0x53, 0x69, 0x7b, 0x70, 0x8a, 0x90, 0x82, 0x76, 0x6d, 0x82, 0x80,
+			0x89, 0x9c, 0xa6, 0x9e, 0x91, 0x8b, 0x8a, 0x82, 0x86, 0x8f, 0x8e,
+			0x83, 0x72, 0x6c, 0x5e, 0x55, 0x52, 0x6e, 0x74, 0x70, 0x8e, 0x8c,
+			0x7f, 0x72, 0x73, 0x7e, 0x7e, 0x8a, 0xa2, 0xa7, 0x9c, 0x96, 0x8e,
+			0x8a, 0x80, 0x86, 0x91, 0x8a, 0x80, 0x74, 0x6b, 0x5e, 0x53, 0x57,
+			0x72, 0x6f, 0x70, 0x8d, 0x8b, 0x80, 0x72, 0x7b, 0x83, 0x7f, 0x8e,
+			0x9f, 0xa4, 0x9b, 0x94, 0x8f, 0x8b, 0x82, 0x87, 0x8f, 0x88, 0x7d,
+			0x73, 0x6a, 0x5d, 0x53, 0x5d, 0x71, 0x69, 0x72, 0x8d, 0x86, 0x7e,
+			0x76, 0x7e, 0x83, 0x7e, 0x8c, 0x9f, 0xa2, 0x9b, 0x97, 0x95, 0x8e,
+			0x82, 0x89, 0x8b, 0x83, 0x7b, 0x76, 0x6a, 0x5c, 0x54, 0x62, 0x6c,
+			0x60, 0x77, 0x8a, 0x83, 0x7b, 0x79, 0x84, 0x82, 0x80, 0x91, 0x9f,
+			0x9e, 0x98, 0x99, 0x99, 0x8c, 0x85, 0x8c, 0x8a, 0x81, 0x78, 0x73,
+			0x69, 0x5a, 0x57, 0x65, 0x69, 0x66, 0x7a, 0x83, 0x81, 0x7a, 0x7c,
+			0x83, 0x81, 0x85, 0x91, 0x9d, 0x9b, 0x97, 0x99, 0x97, 0x8d, 0x8a,
+			0x8d, 0x89, 0x80, 0x76, 0x71, 0x68, 0x5d, 0x5f, 0x67, 0x68, 0x66,
+			0x74, 0x7b, 0x7a, 0x79, 0x7e, 0x86, 0x83, 0x87, 0x91, 0x98, 0x98,
+			0x97, 0x99, 0x98, 0x90, 0x8e, 0x8d, 0x8a, 0x83, 0x7b, 0x75, 0x6d,
+			0x65, 0x65, 0x67, 0x65, 0x66, 0x6f, 0x72, 0x72, 0x74, 0x7c, 0x81,
+			0x83, 0x88, 0x8f, 0x93, 0x93, 0x95, 0x97, 0x99, 0x94, 0x93, 0x92,
+			0x8e, 0x89, 0x82, 0x7e, 0x77, 0x70, 0x6c, 0x6b, 0x65, 0x63, 0x66,
+			0x67, 0x68, 0x6b, 0x71, 0x77, 0x7c, 0x81, 0x88, 0x8e, 0x92, 0x95,
+			0x99, 0x9c, 0x9b, 0x9d, 0x9a, 0x99, 0x94, 0x8e, 0x87, 0x81, 0x78,
+			0x71, 0x6b, 0x63, 0x60, 0x5d, 0x5d, 0x5f, 0x62, 0x67, 0x6c, 0x74,
+			0x7b, 0x83, 0x8a, 0x91, 0x97, 0x9c, 0x9f, 0xa2, 0xa2, 0xa0, 0x9e,
+			0x9a, 0x93, 0x8c, 0x86, 0x7c, 0x73, 0x6d, 0x66, 0x5f, 0x5b, 0x5c,
+			0x5c, 0x5e, 0x61, 0x68, 0x6e, 0x75, 0x7e, 0x85, 0x8e, 0x95, 0x99,
+			0x9e, 0xa2, 0xa2, 0xa1, 0xa1, 0x9e, 0x98, 0x92, 0x8a, 0x82, 0x78,
+			0x70, 0x69, 0x62, 0x5c, 0x5b, 0x5c, 0x5c, 0x5f, 0x64, 0x6b, 0x72,
+			0x7a, 0x82, 0x8a, 0x91, 0x96, 0x9b, 0xa0, 0xa2, 0xa2, 0xa1, 0xa0,
+			0x9b, 0x95, 0x8f, 0x86, 0x7d, 0x73, 0x6c, 0x64, 0x5e, 0x5b, 0x5c,
+			0x5b, 0x5d, 0x62, 0x68, 0x6f, 0x76, 0x7e, 0x86, 0x8e, 0x93, 0x98,
+			0x9d, 0xa1, 0xa2, 0xa2, 0xa1, 0x9d, 0x97, 0x91, 0x89, 0x81, 0x77,
+			0x6f, 0x68, 0x62, 0x5d, 0x5d, 0x5d, 0x5d, 0x61, 0x66, 0x6c, 0x73,
+			0x7b, 0x83, 0x8a, 0x91, 0x96, 0x9b, 0x9f, 0xa1, 0xa1, 0xa1, 0x9e,
+			0x99, 0x94, 0x8c, 0x84, 0x7b, 0x73, 0x6c, 0x64, 0x5f, 0x5d, 0x5d,
+			0x5d, 0x60, 0x65, 0x6b, 0x71, 0x78, 0x80, 0x88, 0x8e, 0x93, 0x98,
+			0x9d, 0x9f, 0xa0, 0xa1, 0x9f, 0x9b, 0x96, 0x90, 0x88, 0x7f, 0x76,
+			0x70, 0x69, 0x62, 0x5f, 0x5e, 0x5d, 0x5e, 0x62, 0x67, 0x6d, 0x73,
+			0x7b, 0x83, 0x89, 0x8f, 0x95, 0x9a, 0x9d, 0x9f, 0x9f, 0xa0, 0x9d,
+			0x98, 0x93, 0x8d, 0x84, 0x7b, 0x74, 0x6e, 0x67, 0x61, 0x60, 0x5f,
+			0x5e, 0x61, 0x65, 0x6b, 0x70, 0x77, 0x7f, 0x86, 0x8c, 0x91, 0x97,
+			0x9b, 0x9d, 0x9e, 0x9f, 0x9e, 0x9b, 0x95, 0x90, 0x89, 0x80, 0x77,
+			0x72, 0x6b, 0x64, 0x61, 0x60, 0x5f, 0x60, 0x64, 0x69, 0x6f, 0x74,
+			0x7b, 0x82, 0x89, 0x8f, 0x93, 0x98, 0x9b, 0x9d, 0x9d, 0x9d, 0x9b,
+			0x96, 0x91, 0x8b, 0x83, 0x7a, 0x74, 0x6e, 0x67, 0x63, 0x61, 0x61,
+			0x60, 0x63, 0x68, 0x6d, 0x72, 0x79, 0x80, 0x86, 0x8c, 0x91, 0x96,
+			0x9a, 0x9b, 0x9c, 0x9d, 0x9b, 0x97, 0x93, 0x8d, 0x85, 0x7d, 0x76,
+			0x70, 0x6a, 0x65, 0x63, 0x62, 0x62, 0x64, 0x68, 0x6c, 0x71, 0x78,
+			0x7e, 0x85, 0x8a, 0x8f, 0x94, 0x98, 0x9a, 0x9b, 0x9c, 0x9b, 0x97,
+			0x93, 0x8d, 0x87, 0x7f, 0x77, 0x72, 0x6c, 0x66, 0x64, 0x64, 0x63,
+			0x64, 0x68, 0x6d, 0x71, 0x77, 0x7e, 0x84, 0x89, 0x8e, 0x93, 0x96,
+			0x99, 0x9a, 0x9b, 0x9a, 0x97, 0x93, 0x8e, 0x88, 0x80, 0x79, 0x73,
+			0x6d, 0x68, 0x65, 0x65, 0x63, 0x64, 0x68, 0x6d, 0x71, 0x76, 0x7d,
+			0x83, 0x88, 0x8c, 0x92, 0x95, 0x97, 0x99, 0x9a, 0x9a, 0x96, 0x93,
+			0x8e, 0x87, 0x80, 0x79, 0x74, 0x6e, 0x69, 0x66, 0x66, 0x64, 0x65,
+			0x69, 0x6d, 0x72, 0x77, 0x7d, 0x83, 0x88, 0x8d, 0x92, 0x95, 0x97,
+			0x98, 0x99, 0x98, 0x95, 0x92, 0x8c, 0x86, 0x7e, 0x78, 0x73, 0x6d,
+			0x69, 0x67, 0x66, 0x65, 0x67, 0x6b, 0x6f, 0x73, 0x79, 0x7f, 0x84,
+			0x89, 0x8d, 0x92, 0x95, 0x96, 0x98, 0x98, 0x97, 0x94, 0x90, 0x8b,
+			0x85, 0x7e, 0x78, 0x73, 0x6e, 0x69, 0x67, 0x67, 0x66, 0x67, 0x6b,
+			0x6f, 0x73, 0x78, 0x7e, 0x84, 0x88, 0x8c, 0x90, 0x94, 0x96, 0x97,
+			0x98, 0x97, 0x94, 0x90, 0x8b, 0x86, 0x7f, 0x79, 0x75, 0x70, 0x6b,
+			0x68, 0x68, 0x67, 0x68, 0x6c, 0x70, 0x73, 0x78, 0x7d, 0x82, 0x87,
+			0x8b, 0x90, 0x92, 0x94, 0x96, 0x96, 0x96, 0x93, 0x90, 0x8b, 0x86,
+			0x7f, 0x79, 0x75, 0x70, 0x6c, 0x6a, 0x69, 0x69, 0x6a, 0x6d, 0x71,
+			0x74, 0x79, 0x7e, 0x82, 0x87, 0x8b, 0x8f, 0x91, 0x93, 0x95, 0x95,
+			0x94, 0x92, 0x8f, 0x8a, 0x85, 0x7e, 0x79, 0x75, 0x70, 0x6d, 0x6a,
+			0x6a, 0x69, 0x6a, 0x6e, 0x71, 0x75, 0x79, 0x7f, 0x83, 0x87, 0x8b,
+			0x8f, 0x91, 0x93, 0x94, 0x95, 0x94, 0x91, 0x8d, 0x89, 0x84, 0x7d,
+			0x79, 0x74, 0x70, 0x6d, 0x6b, 0x6b, 0x6a, 0x6c, 0x6f, 0x73, 0x76,
+			0x7b, 0x80, 0x84, 0x88, 0x8b, 0x8f, 0x91, 0x92, 0x93, 0x94, 0x93,
+			0x90, 0x8c, 0x88, 0x82, 0x7d, 0x79, 0x74, 0x70, 0x6d, 0x6b, 0x6b,
+			0x6b, 0x6d, 0x70, 0x73, 0x77, 0x7b, 0x80, 0x84, 0x88, 0x8c, 0x8f,
+			0x90, 0x92, 0x93, 0x93, 0x91, 0x8f, 0x8b, 0x87, 0x81, 0x7c, 0x78,
+			0x74, 0x70, 0x6e, 0x6d, 0x6c, 0x6c, 0x6e, 0x71, 0x74, 0x78, 0x7c,
+			0x81, 0x85, 0x88, 0x8c, 0x8f, 0x91, 0x91, 0x92, 0x92, 0x90, 0x8d,
+			0x89, 0x85, 0x7f, 0x7b, 0x77, 0x73, 0x70, 0x6e, 0x6d, 0x6d, 0x6e,
+			0x70, 0x73, 0x76, 0x79, 0x7e, 0x82, 0x85, 0x89, 0x8c, 0x8e, 0x90,
+			0x91, 0x91, 0x91, 0x8e, 0x8c, 0x88, 0x83, 0x7e, 0x7b, 0x77, 0x74,
+			0x70, 0x6f, 0x6e, 0x6e, 0x6f, 0x72, 0x75, 0x77, 0x7b, 0x7f, 0x83,
+			0x86, 0x8a, 0x8c, 0x8e, 0x8f, 0x90, 0x91, 0x8f, 0x8d, 0x89, 0x86,
+			0x81, 0x7d, 0x79, 0x76, 0x72, 0x70, 0x6f, 0x6f, 0x70, 0x71, 0x74,
+			0x76, 0x79, 0x7d, 0x81, 0x85, 0x88, 0x8a, 0x8d, 0x8e, 0x8f, 0x90,
+			0x8f, 0x8e, 0x8a, 0x87, 0x83, 0x7e, 0x7b, 0x77, 0x74, 0x72, 0x70,
+			0x70, 0x70, 0x71, 0x73, 0x75, 0x78, 0x7c, 0x7f, 0x83, 0x86, 0x89,
+			0x8b, 0x8d, 0x8e, 0x8f, 0x8f, 0x8d, 0x8b, 0x88, 0x84, 0x80, 0x7d,
+			0x79, 0x76, 0x73, 0x71, 0x71, 0x70, 0x71, 0x73, 0x75, 0x77, 0x7b,
+			0x7e, 0x82, 0x85, 0x88, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x8e, 0x8c,
+			0x89, 0x86, 0x82, 0x7e, 0x7b, 0x78, 0x75, 0x72, 0x71, 0x71, 0x71,
+			0x72, 0x74, 0x76, 0x78, 0x7c, 0x7f, 0x82, 0x85, 0x88, 0x8b, 0x8c,
+			0x8d, 0x8e, 0x8e, 0x8d, 0x8a, 0x87, 0x84, 0x80, 0x7d, 0x7a, 0x77,
+			0x74, 0x72, 0x71, 0x71, 0x72, 0x74, 0x76, 0x77, 0x7a, 0x7d, 0x81,
+			0x84, 0x87, 0x89, 0x8b, 0x8c, 0x8d, 0x8d, 0x8c, 0x8b, 0x88, 0x85,
+			0x82, 0x7f, 0x7c, 0x79, 0x76, 0x74, 0x73, 0x72, 0x72, 0x74, 0x75,
+			0x76, 0x79, 0x7c, 0x7f, 0x82, 0x85, 0x87, 0x89, 0x8a, 0x8c, 0x8c,
+			0x8c, 0x8b, 0x89, 0x87, 0x84, 0x81, 0x7e, 0x7b, 0x79, 0x76, 0x74,
+			0x73, 0x73, 0x74, 0x75, 0x76, 0x78, 0x7a, 0x7d, 0x80, 0x83, 0x86,
+			0x87, 0x89, 0x8a, 0x8b, 0x8c, 0x8b, 0x8a, 0x88, 0x85, 0x83, 0x80,
+			0x7e, 0x7b, 0x78, 0x76, 0x75, 0x74, 0x74, 0x75, 0x77, 0x78, 0x7a,
+			0x7c, 0x7f, 0x81, 0x83, 0x85, 0x87, 0x88, 0x89, 0x89, 0x88, 0x87,
+			0x86, 0x84, 0x82, 0x80, 0x7e, 0x7c, 0x7a, 0x78, 0x77, 0x77, 0x77,
+			0x78, 0x79, 0x7a, 0x7c, 0x7e, 0x80, 0x82, 0x84, 0x85, 0x86, 0x87,
+			0x88, 0x88, 0x88, 0x87, 0x85, 0x84, 0x82, 0x81, 0x7e, 0x7c, 0x7a,
+			0x78, 0x77, 0x77, 0x77, 0x77, 0x78, 0x79, 0x7a, 0x7c, 0x7e, 0x80,
+			0x82, 0x84, 0x85, 0x86, 0x87, 0x87, 0x87, 0x86, 0x86, 0x85, 0x83,
+			0x82, 0x80, 0x7e, 0x7c, 0x7a, 0x79, 0x79, 0x78, 0x78, 0x78, 0x79,
+			0x7a, 0x7c, 0x7d, 0x7f, 0x80, 0x82, 0x83, 0x84, 0x85, 0x86, 0x86,
+			0x86, 0x85, 0x85, 0x84, 0x83, 0x82, 0x80, 0x7e, 0x7d, 0x7c, 0x7b,
+			0x7a, 0x7a, 0x7a, 0x7a, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x80, 0x81,
+			0x82, 0x83, 0x84, 0x84, 0x85, 0x85, 0x84, 0x84, 0x83, 0x82, 0x81,
+			0x80, 0x7f, 0x7e, 0x7d, 0x7c, 0x7c, 0x7b, 0x7b, 0x7b, 0x7b, 0x7c,
+			0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x82, 0x83, 0x83, 0x83,
+			0x83, 0x83, 0x82, 0x82, 0x81, 0x81, 0x80, 0x7f, 0x7f, 0x7e, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x80,
+			0x80, 0x81, 0x81, 0x82, 0x82, 0x82, 0x82, 0x82, 0x81, 0x81, 0x81,
+			0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81,
+			0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x7f, 0x80,
+		},
+		{ // 4
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e,
+			0x7f, 0x7f, 0x80, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x81, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x80, 0x80, 0x7f, 0x81, 0x80,
+			0x80, 0x81, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x82, 0x81,
+			0x81, 0x81, 0x81, 0x80, 0x81, 0x81, 0x82, 0x81, 0x82, 0x82, 0x81,
+			0x80, 0x81, 0x82, 0x82, 0x81, 0x82, 0x81, 0x81, 0x80, 0x80, 0x82,
+			0x82, 0x80, 0x81, 0x80, 0x81, 0x81, 0x81, 0x82, 0x81, 0x80, 0x80,
+			0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x7f, 0x80, 0x81, 0x80,
+			0x80, 0x81, 0x82, 0x83, 0x82, 0x81, 0x82, 0x81, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e,
+			0x7e, 0x7f, 0x7f, 0x7d, 0x7d, 0x7e, 0x7d, 0x7e, 0x7e, 0x7e, 0x7f,
+			0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x81,
+			0x81, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7f, 0x7d, 0x7e, 0x7f, 0x80,
+			0x80, 0x80, 0x81, 0x81, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x7e, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7e, 0x7d, 0x7f,
+			0x7e, 0x7e, 0x7d, 0x7c, 0x7c, 0x7c, 0x7c, 0x7e, 0x7f, 0x7d, 0x7e,
+			0x7e, 0x7d, 0x7d, 0x7d, 0x7e, 0x7f, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c,
+			0x7d, 0x7c, 0x7c, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x7e,
+			0x7f, 0x7d, 0x7d, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x7c, 0x7e,
+			0x80, 0x80, 0x7e, 0x7d, 0x7e, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7d, 0x81, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x7e, 0x7e,
+			0x7f, 0x7f, 0x80, 0x80, 0x7d, 0x7d, 0x80, 0x7f, 0x7f, 0x7d, 0x7e,
+			0x7e, 0x7d, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7d, 0x7e, 0x7f, 0x81,
+			0x7f, 0x7d, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x7e, 0x7e,
+			0x7e, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7d, 0x7d, 0x7f, 0x7f, 0x7e,
+			0x80, 0x81, 0x7f, 0x81, 0x7e, 0x80, 0x7f, 0x81, 0x81, 0x7f, 0x7f,
+			0x7e, 0x81, 0x7f, 0x81, 0x81, 0x80, 0x80, 0x81, 0x84, 0x80, 0x7f,
+			0x80, 0x7e, 0x7e, 0x80, 0x82, 0x80, 0x7f, 0x81, 0x81, 0x7f, 0x7e,
+			0x80, 0x7f, 0x81, 0x81, 0x7e, 0x7f, 0x80, 0x81, 0x81, 0x80, 0x7e,
+			0x81, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x80, 0x7e, 0x7f, 0x7f,
+			0x80, 0x7e, 0x7d, 0x80, 0x7f, 0x80, 0x81, 0x80, 0x80, 0x7e, 0x7f,
+			0x7e, 0x81, 0x80, 0x7d, 0x7f, 0x80, 0x80, 0x7c, 0x7d, 0x7b, 0x7b,
+			0x7d, 0x7c, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7d, 0x7f, 0x81, 0x7f,
+			0x7e, 0x7c, 0x7e, 0x7d, 0x7d, 0x80, 0x81, 0x7e, 0x7f, 0x80, 0x80,
+			0x83, 0x85, 0x81, 0x83, 0x84, 0x83, 0x7f, 0x80, 0x80, 0x81, 0x84,
+			0x7f, 0x7f, 0x7f, 0x82, 0x7f, 0x7f, 0x7f, 0x7c, 0x81, 0x80, 0x7e,
+			0x7d, 0x7f, 0x7f, 0x81, 0x82, 0x81, 0x80, 0x7e, 0x7c, 0x7d, 0x80,
+			0x81, 0x80, 0x7f, 0x82, 0x7e, 0x80, 0x80, 0x80, 0x81, 0x82, 0x7f,
+			0x7d, 0x7e, 0x7e, 0x80, 0x80, 0x7b, 0x7b, 0x7f, 0x81, 0x82, 0x7f,
+			0x7e, 0x7e, 0x80, 0x80, 0x80, 0x80, 0x82, 0x7e, 0x7a, 0x80, 0x82,
+			0x81, 0x81, 0x83, 0x83, 0x80, 0x7f, 0x7f, 0x7f, 0x81, 0x83, 0x85,
+			0x86, 0x81, 0x7b, 0x7c, 0x7e, 0x80, 0x82, 0x83, 0x80, 0x81, 0x80,
+			0x7f, 0x83, 0x81, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7a, 0x7d, 0x80,
+			0x7e, 0x7c, 0x7e, 0x82, 0x7e, 0x7c, 0x80, 0x7f, 0x7c, 0x7d, 0x7e,
+			0x7e, 0x7c, 0x7a, 0x7d, 0x80, 0x7e, 0x7f, 0x80, 0x7f, 0x7f, 0x82,
+			0x83, 0x82, 0x7f, 0x80, 0x81, 0x83, 0x80, 0x81, 0x82, 0x81, 0x81,
+			0x7f, 0x80, 0x7c, 0x81, 0x81, 0x80, 0x81, 0x81, 0x7f, 0x7f, 0x82,
+			0x7f, 0x82, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x80, 0x7d,
+			0x7f, 0x7e, 0x7c, 0x7c, 0x7d, 0x80, 0x7e, 0x7d, 0x7e, 0x7e, 0x7e,
+			0x7d, 0x81, 0x82, 0x7d, 0x79, 0x7c, 0x7f, 0x7b, 0x7d, 0x7d, 0x7f,
+			0x7d, 0x7e, 0x7e, 0x7d, 0x7f, 0x7f, 0x81, 0x80, 0x7e, 0x7d, 0x82,
+			0x82, 0x7e, 0x7e, 0x83, 0x7e, 0x7d, 0x81, 0x7f, 0x7e, 0x7e, 0x80,
+			0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x80, 0x81, 0x81, 0x82, 0x7b, 0x79,
+			0x81, 0x81, 0x80, 0x7f, 0x82, 0x7f, 0x7c, 0x7e, 0x81, 0x7e, 0x7e,
+			0x80, 0x7f, 0x7e, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7e,
+			0x7d, 0x7d, 0x7f, 0x80, 0x82, 0x82, 0x7c, 0x77, 0x7d, 0x7f, 0x7d,
+			0x7f, 0x7e, 0x7d, 0x7e, 0x7f, 0x7f, 0x7d, 0x7c, 0x80, 0x7f, 0x7c,
+			0x7b, 0x7c, 0x7e, 0x7d, 0x7d, 0x81, 0x80, 0x7d, 0x7d, 0x7f, 0x81,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x82, 0x81, 0x7e, 0x81, 0x83, 0x80,
+			0x80, 0x7e, 0x81, 0x80, 0x7f, 0x80, 0x7f, 0x7b, 0x7c, 0x81, 0x82,
+			0x7f, 0x7e, 0x7e, 0x7f, 0x7c, 0x7c, 0x7e, 0x7e, 0x81, 0x7d, 0x7e,
+			0x7e, 0x81, 0x82, 0x7f, 0x7c, 0x80, 0x82, 0x80, 0x7f, 0x80, 0x80,
+			0x83, 0x83, 0x81, 0x7f, 0x7e, 0x83, 0x82, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x83, 0x84, 0x82, 0x82, 0x81, 0x81, 0x80, 0x81, 0x81, 0x7f,
+			0x7d, 0x7d, 0x82, 0x82, 0x7c, 0x7e, 0x7e, 0x7c, 0x7e, 0x7f, 0x7d,
+			0x7c, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7b, 0x7d, 0x7f, 0x7e,
+			0x80, 0x80, 0x80, 0x7d, 0x7d, 0x81, 0x80, 0x7f, 0x80, 0x82, 0x82,
+			0x7f, 0x80, 0x83, 0x83, 0x80, 0x81, 0x82, 0x7e, 0x7f, 0x7e, 0x7d,
+			0x7d, 0x7c, 0x7e, 0x7f, 0x7c, 0x7e, 0x80, 0x81, 0x81, 0x83, 0x84,
+			0x83, 0x83, 0x82, 0x82, 0x80, 0x81, 0x82, 0x82, 0x80, 0x7b, 0x79,
+			0x7a, 0x7b, 0x7d, 0x7e, 0x7e, 0x7c, 0x7b, 0x7f, 0x82, 0x7f, 0x7f,
+			0x84, 0x87, 0x86, 0x87, 0x84, 0x84, 0x84, 0x80, 0x7d, 0x7a, 0x77,
+			0x75, 0x74, 0x6f, 0x6c, 0x6e, 0x74, 0x76, 0x7c, 0x85, 0x8b, 0x8f,
+			0x97, 0x9d, 0xa1, 0xa3, 0xa0, 0x9a, 0x8d, 0x80, 0x75, 0x6c, 0x68,
+			0x61, 0x56, 0x53, 0x5c, 0x63, 0x68, 0x6f, 0x7b, 0x88, 0x91, 0x96,
+			0xa3, 0xb3, 0xb6, 0xb5, 0xb1, 0xa9, 0x96, 0x7e, 0x6c, 0x5f, 0x58,
+			0x54, 0x51, 0x51, 0x50, 0x54, 0x5f, 0x6a, 0x74, 0x7e, 0x89, 0x92,
+			0x99, 0x9d, 0xa3, 0xaa, 0xa9, 0xa6, 0xa1, 0x9b, 0x98, 0x93, 0x90,
+			0x8c, 0x88, 0x82, 0x78, 0x6c, 0x5f, 0x58, 0x52, 0x4c, 0x4e, 0x52,
+			0x57, 0x5d, 0x67, 0x75, 0x81, 0x8b, 0x94, 0x9b, 0xa3, 0xa7, 0xaa,
+			0xad, 0xac, 0xa6, 0xa3, 0x9d, 0x98, 0x93, 0x8c, 0x87, 0x7f, 0x75,
+			0x6a, 0x5e, 0x53, 0x4b, 0x45, 0x4b, 0x50, 0x59, 0x5d, 0x69, 0x77,
+			0x82, 0x8f, 0x96, 0xa0, 0xa5, 0xa9, 0xac, 0xac, 0xab, 0xa6, 0xa0,
+			0x9b, 0x95, 0x90, 0x89, 0x81, 0x78, 0x6c, 0x61, 0x55, 0x4f, 0x45,
+			0x41, 0x47, 0x50, 0x5e, 0x63, 0x71, 0x7e, 0x8d, 0x95, 0x9e, 0xa8,
+			0xad, 0xaf, 0xad, 0xaf, 0xab, 0xa5, 0x9e, 0x9a, 0x92, 0x89, 0x7f,
+			0x77, 0x69, 0x60, 0x56, 0x4e, 0x44, 0x3a, 0x45, 0x4d, 0x5d, 0x60,
+			0x71, 0x82, 0x8f, 0x98, 0x9e, 0xa9, 0xad, 0xae, 0xaf, 0xaf, 0xab,
+			0xa6, 0x9f, 0x9b, 0x91, 0x88, 0x7c, 0x76, 0x66, 0x5d, 0x53, 0x4d,
+			0x41, 0x39, 0x42, 0x4e, 0x5e, 0x61, 0x73, 0x85, 0x95, 0x9a, 0xa0,
+			0xad, 0xb2, 0xb2, 0xaf, 0xb1, 0xad, 0xa4, 0x9e, 0x96, 0x8c, 0x7f,
+			0x78, 0x6d, 0x5f, 0x53, 0x4c, 0x45, 0x38, 0x3c, 0x4a, 0x5f, 0x61,
+			0x6c, 0x80, 0x93, 0x9b, 0x9d, 0xab, 0xb3, 0xb4, 0xb0, 0xb1, 0xb0,
+			0xa7, 0x9e, 0x97, 0x8b, 0x7f, 0x77, 0x6e, 0x62, 0x55, 0x50, 0x4b,
+			0x3b, 0x3a, 0x49, 0x5c, 0x63, 0x69, 0x80, 0x92, 0x9b, 0x9c, 0xa8,
+			0xb3, 0xb7, 0xb2, 0xb1, 0xaf, 0xa8, 0xa1, 0x93, 0x87, 0x7d, 0x75,
+			0x6b, 0x5f, 0x55, 0x52, 0x47, 0x38, 0x3c, 0x50, 0x60, 0x63, 0x6c,
+			0x83, 0x96, 0x9a, 0x9d, 0xa9, 0xb4, 0xb6, 0xb1, 0xae, 0xad, 0xa8,
+			0x9d, 0x8d, 0x81, 0x7c, 0x73, 0x64, 0x59, 0x56, 0x53, 0x44, 0x36,
+			0x43, 0x5a, 0x63, 0x64, 0x73, 0x8e, 0x9c, 0x9b, 0x9e, 0xb0, 0xb9,
+			0xb4, 0xad, 0xad, 0xae, 0xa2, 0x92, 0x85, 0x7e, 0x75, 0x67, 0x5d,
+			0x5c, 0x59, 0x4b, 0x39, 0x3c, 0x55, 0x5f, 0x61, 0x6b, 0x86, 0x97,
+			0x96, 0x9a, 0xab, 0xb9, 0xb5, 0xac, 0xaf, 0xaf, 0xa5, 0x96, 0x8c,
+			0x88, 0x7b, 0x6c, 0x64, 0x62, 0x5e, 0x53, 0x47, 0x3c, 0x48, 0x57,
+			0x5e, 0x65, 0x74, 0x8a, 0x93, 0x97, 0x9e, 0xae, 0xb6, 0xb2, 0xb0,
+			0xb0, 0xac, 0x9d, 0x94, 0x8b, 0x82, 0x75, 0x6b, 0x68, 0x65, 0x5c,
+			0x55, 0x4c, 0x3f, 0x4a, 0x58, 0x62, 0x65, 0x72, 0x86, 0x91, 0x95,
+			0x9b, 0xac, 0xb2, 0xb0, 0xad, 0xaf, 0xa9, 0x9b, 0x92, 0x8b, 0x80,
+			0x73, 0x6e, 0x6b, 0x68, 0x5e, 0x59, 0x4f, 0x43, 0x4d, 0x5b, 0x62,
+			0x64, 0x72, 0x85, 0x90, 0x92, 0x9c, 0xad, 0xb3, 0xb1, 0xad, 0xb0,
+			0xaa, 0x9e, 0x93, 0x8c, 0x83, 0x74, 0x72, 0x6e, 0x6b, 0x64, 0x5f,
+			0x54, 0x42, 0x48, 0x58, 0x5f, 0x5d, 0x68, 0x7f, 0x8b, 0x8e, 0x97,
+			0xa9, 0xb4, 0xb1, 0xae, 0xaf, 0xae, 0xa2, 0x98, 0x90, 0x86, 0x7c,
+			0x74, 0x74, 0x6f, 0x6c, 0x6a, 0x63, 0x4f, 0x3d, 0x4a, 0x59, 0x58,
+			0x56, 0x68, 0x80, 0x86, 0x8b, 0x97, 0xb1, 0xb7, 0xb2, 0xb2, 0xb2,
+			0xae, 0xa1, 0x98, 0x8d, 0x83, 0x7c, 0x78, 0x74, 0x6f, 0x70, 0x6f,
+			0x62, 0x4d, 0x42, 0x50, 0x56, 0x51, 0x53, 0x66, 0x7e, 0x82, 0x88,
+			0x9d, 0xb3, 0xb9, 0xb6, 0xb7, 0xb8, 0xb2, 0xa4, 0x98, 0x8f, 0x86,
+			0x7f, 0x77, 0x72, 0x73, 0x75, 0x72, 0x6a, 0x5e, 0x54, 0x47, 0x49,
+			0x50, 0x53, 0x59, 0x62, 0x77, 0x82, 0x8f, 0x9c, 0xaf, 0xba, 0xba,
+			0xb8, 0xb6, 0xb0, 0xa4, 0x97, 0x8c, 0x83, 0x7e, 0x79, 0x73, 0x76,
+			0x77, 0x75, 0x70, 0x6a, 0x5d, 0x4f, 0x46, 0x50, 0x56, 0x58, 0x59,
+			0x6b, 0x83, 0x8a, 0x95, 0xa6, 0xbb, 0xbd, 0xb8, 0xb4, 0xb4, 0xac,
+			0x98, 0x8b, 0x86, 0x83, 0x77, 0x71, 0x76, 0x7b, 0x75, 0x71, 0x70,
+			0x71, 0x64, 0x51, 0x4a, 0x52, 0x58, 0x57, 0x5c, 0x6d, 0x84, 0x8a,
+			0x95, 0xa3, 0xb8, 0xba, 0xb3, 0xb5, 0xb4, 0xa8, 0x92, 0x8b, 0x87,
+			0x81, 0x75, 0x75, 0x79, 0x7a, 0x77, 0x77, 0x7b, 0x78, 0x6c, 0x60,
+			0x57, 0x50, 0x4e, 0x57, 0x5a, 0x63, 0x6a, 0x7c, 0x8c, 0x99, 0xa9,
+			0xb4, 0xbd, 0xba, 0xb8, 0xb1, 0xaa, 0x99, 0x8d, 0x83, 0x81, 0x7e,
+			0x77, 0x76, 0x79, 0x81, 0x7e, 0x7e, 0x7e, 0x7d, 0x72, 0x61, 0x54,
+			0x4b, 0x4b, 0x50, 0x50, 0x5a, 0x66, 0x79, 0x89, 0x96, 0xa7, 0xb4,
+			0xbd, 0xbc, 0xb9, 0xb2, 0xa8, 0x9c, 0x92, 0x86, 0x81, 0x7d, 0x7d,
+			0x7a, 0x7d, 0x83, 0x84, 0x84, 0x81, 0x82, 0x7c, 0x6f, 0x62, 0x54,
+			0x4b, 0x40, 0x40, 0x4d, 0x56, 0x62, 0x6f, 0x86, 0x97, 0xa5, 0xb0,
+			0xbb, 0xc1, 0xbd, 0xb6, 0xac, 0xa3, 0x96, 0x89, 0x81, 0x7c, 0x7e,
+			0x7d, 0x7f, 0x82, 0x89, 0x8a, 0x87, 0x86, 0x82, 0x7c, 0x6b, 0x60,
+			0x51, 0x4a, 0x3b, 0x37, 0x3a, 0x4e, 0x5a, 0x65, 0x78, 0x8e, 0xa7,
+			0xac, 0xb8, 0xc0, 0xc9, 0xc0, 0xb3, 0xab, 0xa3, 0x97, 0x87, 0x81,
+			0x7e, 0x7c, 0x77, 0x7b, 0x86, 0x8b, 0x8a, 0x88, 0x8a, 0x86, 0x7a,
+			0x70, 0x6a, 0x64, 0x57, 0x4c, 0x48, 0x47, 0x42, 0x40, 0x49, 0x63,
+			0x71, 0x80, 0x8c, 0xa4, 0xb6, 0xb8, 0xc1, 0xc6, 0xcf, 0xbf, 0xb1,
+			0xa8, 0xa0, 0x90, 0x79, 0x71, 0x6a, 0x63, 0x59, 0x5b, 0x64, 0x69,
+			0x6d, 0x74, 0x83, 0x8b, 0x8e, 0x8f, 0x93, 0x96, 0x91, 0x8e, 0x89,
+			0x88, 0x80, 0x79, 0x76, 0x72, 0x6d, 0x66, 0x67, 0x64, 0x5f, 0x57,
+			0x58, 0x54, 0x50, 0x4f, 0x5f, 0x72, 0x77, 0x80, 0x8f, 0xa6, 0xaa,
+			0xaf, 0xb9, 0xc3, 0xc0, 0xb2, 0xac, 0xa7, 0x9c, 0x86, 0x7a, 0x75,
+			0x6f, 0x65, 0x5f, 0x65, 0x6a, 0x6d, 0x6e, 0x79, 0x82, 0x85, 0x87,
+			0x8a, 0x90, 0x8c, 0x86, 0x80, 0x7f, 0x7a, 0x73, 0x72, 0x75, 0x77,
+			0x71, 0x73, 0x78, 0x7e, 0x7a, 0x79, 0x7d, 0x7c, 0x74, 0x69, 0x68,
+			0x61, 0x56, 0x4f, 0x58, 0x68, 0x6e, 0x70, 0x7e, 0x94, 0xa1, 0xa5,
+			0xae, 0xbd, 0xc2, 0xba, 0xb2, 0xae, 0xa6, 0x94, 0x84, 0x7c, 0x74,
+			0x69, 0x5e, 0x60, 0x65, 0x68, 0x6a, 0x72, 0x7d, 0x81, 0x82, 0x86,
+			0x8c, 0x8e, 0x87, 0x84, 0x83, 0x7f, 0x76, 0x6e, 0x6d, 0x6e, 0x6d,
+			0x68, 0x6c, 0x74, 0x7f, 0x81, 0x84, 0x8c, 0x94, 0x95, 0x8e, 0x90,
+			0x8f, 0x89, 0x79, 0x71, 0x6b, 0x63, 0x58, 0x4f, 0x4f, 0x4c, 0x52,
+			0x5a, 0x6d, 0x7b, 0x89, 0x99, 0xa7, 0xb7, 0xba, 0xc0, 0xbf, 0xbe,
+			0xb5, 0xa6, 0x9b, 0x8c, 0x7f, 0x6e, 0x66, 0x61, 0x5e, 0x5d, 0x5f,
+			0x69, 0x6f, 0x78, 0x7e, 0x88, 0x8e, 0x8f, 0x8f, 0x8d, 0x8c, 0x84,
+			0x7f, 0x78, 0x73, 0x6e, 0x67, 0x67, 0x67, 0x6b, 0x6c, 0x71, 0x79,
+			0x7f, 0x84, 0x88, 0x8d, 0x90, 0x91, 0x8e, 0x8d, 0x89, 0x89, 0x86,
+			0x81, 0x7f, 0x7b, 0x7d, 0x79, 0x7a, 0x79, 0x7a, 0x79, 0x76, 0x74,
+			0x71, 0x71, 0x6c, 0x68, 0x62, 0x68, 0x71, 0x77, 0x7e, 0x85, 0x95,
+			0x9d, 0xa1, 0xa6, 0xac, 0xb0, 0xa8, 0xa1, 0x99, 0x94, 0x88, 0x7c,
+			0x73, 0x6e, 0x6b, 0x65, 0x66, 0x6a, 0x70, 0x73, 0x77, 0x80, 0x86,
+			0x88, 0x87, 0x89, 0x89, 0x84, 0x7f, 0x7b, 0x79, 0x72, 0x6e, 0x6c,
+			0x6e, 0x6f, 0x6f, 0x72, 0x77, 0x7d, 0x7f, 0x83, 0x88, 0x8b, 0x8b,
+			0x8a, 0x8b, 0x8a, 0x86, 0x81, 0x7f, 0x7c, 0x7a, 0x77, 0x76, 0x78,
+			0x78, 0x7b, 0x7c, 0x80, 0x83, 0x85, 0x87, 0x8a, 0x8c, 0x8b, 0x89,
+			0x88, 0x87, 0x84, 0x81, 0x7e, 0x7e, 0x7c, 0x7b, 0x7b, 0x7c, 0x7c,
+			0x7d, 0x7d, 0x80, 0x81, 0x82, 0x82, 0x82, 0x84, 0x82, 0x81, 0x7f,
+			0x7f, 0x7e, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7f, 0x80,
+			0x89, 0x8f, 0x8d, 0x88, 0x85, 0x85, 0x7b, 0x73, 0x6d, 0x6d, 0x65,
+			0x5d, 0x5c, 0x66, 0x6f, 0x71, 0x7b, 0x86, 0x96, 0x99, 0x9d, 0xa2,
+			0xa6, 0xa4, 0x98, 0x93, 0x8e, 0x86, 0x78, 0x70, 0x6f, 0x6e, 0x6c,
+			0x6a, 0x71, 0x79, 0x7d, 0x80, 0x86, 0x8e, 0x8e, 0x8c, 0x8a, 0x8a,
+			0x86, 0x7e, 0x79, 0x76, 0x74, 0x6f, 0x6d, 0x6f, 0x73, 0x75, 0x76,
+			0x7c, 0x82, 0x86, 0x87, 0x89, 0x8c, 0x8c, 0x89, 0x86, 0x85, 0x82,
+			0x7e, 0x79, 0x78, 0x78, 0x77, 0x76, 0x77, 0x7b, 0x7e, 0x7f, 0x82,
+			0x85, 0x88, 0x87, 0x87, 0x87, 0x87, 0x84, 0x81, 0x7f, 0x7e, 0x7d,
+			0x7a, 0x7a, 0x7b, 0x7c, 0x7c, 0x7d, 0x80, 0x82, 0x83, 0x83, 0x84,
+			0x84, 0x83, 0x82, 0x80, 0x80, 0x7e, 0x7d, 0x7c, 0x7c, 0x7c, 0x7b,
+			0x7c, 0x7d, 0x7f, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x82, 0x82, 0x82,
+			0x81, 0x80, 0x7e, 0x7e, 0x7e, 0x7d, 0x7c, 0x7d, 0x7d, 0x7e, 0x7e,
+			0x7f, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80,
+			0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f,
+		},
+		{ // 5
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c,
+			0x7c, 0x7c, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x81, 0x81, 0x81, 0x82, 0x82, 0x83, 0x83, 0x83, 0x83,
+			0x83, 0x83, 0x83, 0x83, 0x82, 0x81, 0x80, 0x7f, 0x7e, 0x7c, 0x7b,
+			0x7a, 0x78, 0x78, 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, 0x78, 0x79,
+			0x7b, 0x7c, 0x7d, 0x7f, 0x80, 0x81, 0x83, 0x83, 0x84, 0x85, 0x85,
+			0x86, 0x86, 0x87, 0x88, 0x88, 0x89, 0x8a, 0x8a, 0x8a, 0x8a, 0x89,
+			0x87, 0x84, 0x81, 0x7d, 0x79, 0x75, 0x71, 0x6f, 0x6f, 0x6f, 0x6f,
+			0x6f, 0x70, 0x70, 0x71, 0x73, 0x75, 0x77, 0x79, 0x7b, 0x7d, 0x7f,
+			0x81, 0x83, 0x84, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8c, 0x8d, 0x8f,
+			0x90, 0x90, 0x91, 0x90, 0x8f, 0x8e, 0x8c, 0x89, 0x86, 0x83, 0x7f,
+			0x7c, 0x78, 0x75, 0x72, 0x6f, 0x6e, 0x6d, 0x6e, 0x6e, 0x6f, 0x6f,
+			0x6f, 0x6f, 0x6f, 0x6f, 0x70, 0x72, 0x74, 0x76, 0x79, 0x7b, 0x7e,
+			0x81, 0x83, 0x86, 0x88, 0x8a, 0x8d, 0x8f, 0x91, 0x93, 0x94, 0x95,
+			0x95, 0x94, 0x93, 0x91, 0x8f, 0x8c, 0x88, 0x85, 0x81, 0x7e, 0x7b,
+			0x78, 0x75, 0x73, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x71,
+			0x70, 0x6f, 0x6f, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x75, 0x77, 0x7a,
+			0x7c, 0x7f, 0x82, 0x84, 0x87, 0x8a, 0x8d, 0x90, 0x92, 0x95, 0x96,
+			0x97, 0x97, 0x97, 0x95, 0x93, 0x90, 0x8c, 0x89, 0x85, 0x80, 0x7d,
+			0x79, 0x76, 0x74, 0x73, 0x72, 0x73, 0x73, 0x73, 0x72, 0x71, 0x70,
+			0x6f, 0x6e, 0x6e, 0x6e, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x74, 0x76,
+			0x79, 0x7c, 0x7e, 0x81, 0x85, 0x88, 0x8b, 0x8f, 0x92, 0x95, 0x98,
+			0x99, 0x9a, 0x9a, 0x99, 0x97, 0x94, 0x90, 0x8c, 0x87, 0x83, 0x7e,
+			0x7a, 0x77, 0x75, 0x74, 0x73, 0x74, 0x74, 0x74, 0x73, 0x71, 0x70,
+			0x6f, 0x6e, 0x6e, 0x6e, 0x6e, 0x6e, 0x6e, 0x6f, 0x70, 0x71, 0x73,
+			0x75, 0x78, 0x7a, 0x7d, 0x80, 0x84, 0x87, 0x8b, 0x8e, 0x92, 0x96,
+			0x99, 0x9b, 0x9c, 0x9d, 0x9c, 0x9a, 0x97, 0x93, 0x8e, 0x89, 0x84,
+			0x7f, 0x7a, 0x77, 0x75, 0x75, 0x75, 0x75, 0x75, 0x74, 0x72, 0x70,
+			0x6f, 0x6e, 0x6e, 0x6e, 0x6e, 0x6d, 0x6d, 0x6d, 0x6d, 0x6e, 0x70,
+			0x71, 0x73, 0x75, 0x78, 0x7b, 0x7e, 0x81, 0x84, 0x88, 0x8c, 0x90,
+			0x94, 0x98, 0x9b, 0x9d, 0x9f, 0x9f, 0x9d, 0x9b, 0x97, 0x93, 0x8d,
+			0x87, 0x81, 0x7c, 0x78, 0x76, 0x76, 0x76, 0x76, 0x75, 0x74, 0x72,
+			0x70, 0x6f, 0x6f, 0x6f, 0x6e, 0x6e, 0x6d, 0x6c, 0x6c, 0x6c, 0x6c,
+			0x6d, 0x6e, 0x70, 0x73, 0x75, 0x78, 0x7b, 0x7e, 0x81, 0x84, 0x88,
+			0x8c, 0x90, 0x95, 0x99, 0x9c, 0x9f, 0xa0, 0xa1, 0x9f, 0x9d, 0x98,
+			0x93, 0x8c, 0x86, 0x80, 0x7b, 0x78, 0x78, 0x77, 0x77, 0x76, 0x74,
+			0x73, 0x71, 0x70, 0x70, 0x70, 0x6f, 0x6e, 0x6d, 0x6c, 0x6b, 0x6b,
+			0x6b, 0x6b, 0x6c, 0x6d, 0x6f, 0x71, 0x74, 0x77, 0x7a, 0x7d, 0x80,
+			0x84, 0x87, 0x8b, 0x8f, 0x94, 0x98, 0x9d, 0xa0, 0xa2, 0xa4, 0xa3,
+			0xa0, 0x9c, 0x96, 0x8f, 0x88, 0x81, 0x7d, 0x7a, 0x79, 0x78, 0x78,
+			0x76, 0x74, 0x72, 0x71, 0x70, 0x70, 0x6f, 0x6e, 0x6d, 0x6c, 0x6b,
+			0x6a, 0x69, 0x69, 0x69, 0x69, 0x6b, 0x6d, 0x6f, 0x72, 0x76, 0x79,
+			0x7c, 0x7f, 0x82, 0x85, 0x89, 0x8d, 0x92, 0x97, 0x9c, 0xa1, 0xa5,
+			0xa7, 0xa7, 0xa5, 0xa0, 0x9a, 0x93, 0x8c, 0x84, 0x7f, 0x7b, 0x7a,
+			0x7a, 0x78, 0x76, 0x73, 0x71, 0x70, 0x70, 0x70, 0x70, 0x6f, 0x6e,
+			0x6c, 0x6b, 0x69, 0x68, 0x67, 0x67, 0x67, 0x68, 0x6a, 0x6d, 0x70,
+			0x74, 0x78, 0x7a, 0x7e, 0x80, 0x83, 0x87, 0x8c, 0x90, 0x96, 0x9d,
+			0xa3, 0xa7, 0xaa, 0xaa, 0xa8, 0xa3, 0x9d, 0x95, 0x8d, 0x85, 0x7e,
+			0x7b, 0x7a, 0x79, 0x78, 0x76, 0x73, 0x71, 0x70, 0x71, 0x71, 0x71,
+			0x71, 0x70, 0x6e, 0x6c, 0x6a, 0x67, 0x66, 0x66, 0x66, 0x67, 0x69,
+			0x6b, 0x6f, 0x72, 0x75, 0x78, 0x7b, 0x7e, 0x81, 0x84, 0x89, 0x8f,
+			0x95, 0x9c, 0xa3, 0xa9, 0xac, 0xad, 0xac, 0xa7, 0xa0, 0x98, 0x8f,
+			0x86, 0x7f, 0x7b, 0x79, 0x78, 0x77, 0x75, 0x72, 0x70, 0x70, 0x70,
+			0x72, 0x73, 0x74, 0x73, 0x71, 0x6e, 0x6a, 0x67, 0x65, 0x64, 0x65,
+			0x66, 0x68, 0x6b, 0x6e, 0x71, 0x75, 0x78, 0x7a, 0x7d, 0x7f, 0x82,
+			0x86, 0x8c, 0x93, 0x9b, 0xa2, 0xa9, 0xad, 0xaf, 0xae, 0xa9, 0xa2,
+			0x9a, 0x91, 0x88, 0x80, 0x7b, 0x78, 0x77, 0x76, 0x74, 0x72, 0x70,
+			0x6f, 0x71, 0x73, 0x76, 0x78, 0x77, 0x75, 0x70, 0x6c, 0x68, 0x65,
+			0x64, 0x64, 0x64, 0x66, 0x68, 0x6b, 0x6e, 0x72, 0x75, 0x78, 0x7a,
+			0x7d, 0x80, 0x85, 0x8a, 0x92, 0x9a, 0xa3, 0xaa, 0xaf, 0xb1, 0xb0,
+			0xac, 0xa5, 0x9c, 0x92, 0x89, 0x81, 0x7b, 0x77, 0x75, 0x74, 0x73,
+			0x71, 0x70, 0x6f, 0x71, 0x74, 0x78, 0x7a, 0x7b, 0x78, 0x73, 0x6d,
+			0x68, 0x65, 0x64, 0x63, 0x64, 0x65, 0x68, 0x6b, 0x6e, 0x71, 0x73,
+			0x76, 0x79, 0x7b, 0x7f, 0x83, 0x89, 0x90, 0x99, 0xa2, 0xaa, 0xb0,
+			0xb3, 0xb2, 0xae, 0xa7, 0x9f, 0x95, 0x8c, 0x83, 0x7b, 0x76, 0x72,
+			0x70, 0x6f, 0x6e, 0x6e, 0x6f, 0x72, 0x76, 0x7a, 0x7d, 0x7f, 0x7d,
+			0x78, 0x71, 0x6b, 0x66, 0x64, 0x63, 0x63, 0x64, 0x66, 0x69, 0x6c,
+			0x6f, 0x72, 0x75, 0x78, 0x7b, 0x7e, 0x82, 0x87, 0x8e, 0x97, 0xa0,
+			0xa8, 0xae, 0xb2, 0xb2, 0xaf, 0xa9, 0xa2, 0x98, 0x8f, 0x85, 0x7d,
+			0x76, 0x71, 0x6e, 0x6c, 0x6b, 0x6b, 0x6e, 0x71, 0x76, 0x7b, 0x80,
+			0x82, 0x81, 0x7d, 0x76, 0x6d, 0x67, 0x63, 0x62, 0x63, 0x64, 0x65,
+			0x67, 0x69, 0x6d, 0x70, 0x74, 0x78, 0x7c, 0x7f, 0x83, 0x88, 0x8e,
+			0x95, 0x9d, 0xa5, 0xac, 0xb0, 0xb1, 0xb0, 0xab, 0xa3, 0x9a, 0x91,
+			0x87, 0x7e, 0x76, 0x71, 0x6c, 0x6a, 0x69, 0x6a, 0x6d, 0x71, 0x77,
+			0x7c, 0x81, 0x84, 0x84, 0x80, 0x79, 0x70, 0x68, 0x63, 0x61, 0x62,
+			0x64, 0x66, 0x68, 0x6a, 0x6d, 0x70, 0x74, 0x78, 0x7c, 0x80, 0x84,
+			0x88, 0x8e, 0x94, 0x9b, 0xa3, 0xa9, 0xae, 0xb0, 0xaf, 0xab, 0xa4,
+			0x9c, 0x92, 0x88, 0x7f, 0x76, 0x70, 0x6b, 0x68, 0x68, 0x69, 0x6c,
+			0x71, 0x77, 0x7e, 0x84, 0x87, 0x87, 0x83, 0x7c, 0x71, 0x68, 0x61,
+			0x5f, 0x60, 0x63, 0x65, 0x66, 0x68, 0x6b, 0x6f, 0x73, 0x78, 0x7d,
+			0x82, 0x86, 0x8b, 0x8f, 0x95, 0x9b, 0xa1, 0xa7, 0xac, 0xaf, 0xaf,
+			0xac, 0xa6, 0x9e, 0x95, 0x8a, 0x80, 0x77, 0x70, 0x6b, 0x67, 0x66,
+			0x67, 0x6b, 0x70, 0x76, 0x7d, 0x83, 0x88, 0x89, 0x86, 0x7f, 0x76,
+			0x6b, 0x63, 0x5d, 0x5d, 0x60, 0x63, 0x66, 0x69, 0x6b, 0x6e, 0x72,
+			0x77, 0x7c, 0x81, 0x86, 0x8a, 0x8e, 0x93, 0x98, 0x9e, 0xa3, 0xa8,
+			0xac, 0xad, 0xac, 0xa8, 0xa2, 0x99, 0x90, 0x85, 0x7c, 0x73, 0x6d,
+			0x69, 0x67, 0x67, 0x6a, 0x6e, 0x74, 0x7a, 0x81, 0x87, 0x8a, 0x89,
+			0x85, 0x7c, 0x72, 0x67, 0x5f, 0x5a, 0x5b, 0x5e, 0x63, 0x68, 0x6c,
+			0x70, 0x73, 0x77, 0x7a, 0x7e, 0x82, 0x86, 0x8b, 0x8f, 0x94, 0x9a,
+			0x9f, 0xa4, 0xa7, 0xaa, 0xab, 0xa9, 0xa5, 0x9f, 0x97, 0x8e, 0x84,
+			0x7b, 0x73, 0x6d, 0x69, 0x67, 0x68, 0x6b, 0x6f, 0x75, 0x7c, 0x82,
+			0x87, 0x89, 0x88, 0x83, 0x7b, 0x71, 0x67, 0x60, 0x5c, 0x5c, 0x5f,
+			0x63, 0x68, 0x6c, 0x70, 0x73, 0x77, 0x7c, 0x81, 0x86, 0x8a, 0x8d,
+			0x91, 0x94, 0x98, 0x9c, 0xa0, 0xa3, 0xa6, 0xa7, 0xa6, 0xa2, 0x9d,
+			0x95, 0x8c, 0x84, 0x7c, 0x74, 0x6e, 0x6b, 0x6a, 0x6b, 0x6e, 0x72,
+			0x77, 0x7d, 0x83, 0x87, 0x88, 0x85, 0x7f, 0x77, 0x6e, 0x66, 0x60,
+			0x5e, 0x60, 0x64, 0x68, 0x6c, 0x70, 0x72, 0x75, 0x78, 0x7c, 0x80,
+			0x85, 0x89, 0x8d, 0x90, 0x93, 0x98, 0x9c, 0x9f, 0xa3, 0xa5, 0xa6,
+			0xa5, 0xa1, 0x9b, 0x94, 0x8c, 0x83, 0x7a, 0x73, 0x6e, 0x6b, 0x6a,
+			0x6c, 0x6f, 0x73, 0x78, 0x7d, 0x82, 0x85, 0x86, 0x84, 0x7e, 0x77,
+			0x6f, 0x68, 0x63, 0x61, 0x62, 0x65, 0x69, 0x6c, 0x70, 0x73, 0x76,
+			0x7a, 0x7e, 0x83, 0x86, 0x8a, 0x8d, 0x90, 0x94, 0x97, 0x9b, 0x9e,
+			0xa1, 0xa3, 0xa3, 0xa1, 0x9d, 0x98, 0x91, 0x89, 0x81, 0x7a, 0x74,
+			0x6f, 0x6d, 0x6c, 0x6d, 0x70, 0x74, 0x78, 0x7d, 0x81, 0x83, 0x84,
+			0x82, 0x7f, 0x79, 0x72, 0x6b, 0x66, 0x63, 0x63, 0x66, 0x6a, 0x6e,
+			0x72, 0x76, 0x79, 0x7c, 0x7e, 0x81, 0x84, 0x88, 0x8b, 0x8f, 0x92,
+			0x96, 0x99, 0x9d, 0xa0, 0xa2, 0xa2, 0xa0, 0x9c, 0x97, 0x90, 0x89,
+			0x82, 0x7b, 0x75, 0x71, 0x6f, 0x6e, 0x6f, 0x71, 0x74, 0x78, 0x7b,
+			0x7f, 0x82, 0x83, 0x83, 0x80, 0x7c, 0x75, 0x6f, 0x69, 0x65, 0x64,
+			0x65, 0x68, 0x6d, 0x71, 0x75, 0x79, 0x7c, 0x7e, 0x80, 0x83, 0x86,
+			0x8a, 0x8e, 0x92, 0x96, 0x9a, 0x9d, 0xa0, 0xa1, 0xa0, 0x9e, 0x99,
+			0x94, 0x8e, 0x87, 0x81, 0x7b, 0x76, 0x73, 0x71, 0x70, 0x71, 0x72,
+			0x74, 0x77, 0x7a, 0x7d, 0x7f, 0x81, 0x82, 0x81, 0x7e, 0x79, 0x74,
+			0x6e, 0x6a, 0x67, 0x67, 0x69, 0x6d, 0x71, 0x75, 0x78, 0x7b, 0x7d,
+			0x7f, 0x81, 0x84, 0x88, 0x8c, 0x90, 0x95, 0x9a, 0x9d, 0xa0, 0xa0,
+			0x9f, 0x9c, 0x98, 0x92, 0x8c, 0x86, 0x80, 0x7b, 0x77, 0x74, 0x73,
+			0x72, 0x73, 0x74, 0x76, 0x78, 0x7a, 0x7c, 0x7e, 0x80, 0x80, 0x80,
+			0x7e, 0x7b, 0x76, 0x72, 0x6d, 0x6a, 0x6a, 0x6b, 0x6e, 0x71, 0x75,
+			0x78, 0x7b, 0x7d, 0x7f, 0x81, 0x84, 0x87, 0x8b, 0x8f, 0x94, 0x98,
+			0x9c, 0x9e, 0x9f, 0x9e, 0x9a, 0x96, 0x90, 0x8a, 0x84, 0x7e, 0x7a,
+			0x76, 0x75, 0x74, 0x74, 0x75, 0x76, 0x77, 0x79, 0x7a, 0x7c, 0x7d,
+			0x7e, 0x7f, 0x7e, 0x7d, 0x7b, 0x77, 0x74, 0x70, 0x6e, 0x6d, 0x6e,
+			0x70, 0x73, 0x76, 0x79, 0x7b, 0x7d, 0x7f, 0x80, 0x82, 0x85, 0x89,
+			0x8e, 0x94, 0x98, 0x9d, 0x9f, 0x9f, 0x9d, 0x98, 0x93, 0x8c, 0x86,
+			0x80, 0x7b, 0x78, 0x76, 0x75, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a,
+			0x7b, 0x7c, 0x7c, 0x7c, 0x7c, 0x7b, 0x7a, 0x78, 0x76, 0x73, 0x71,
+			0x70, 0x70, 0x71, 0x73, 0x76, 0x79, 0x7c, 0x7e, 0x80, 0x82, 0x84,
+			0x86, 0x89, 0x8c, 0x90, 0x94, 0x98, 0x9a, 0x9b, 0x9a, 0x97, 0x93,
+			0x8d, 0x87, 0x82, 0x7d, 0x79, 0x77, 0x76, 0x76, 0x77, 0x78, 0x7a,
+			0x7b, 0x7c, 0x7c, 0x7c, 0x7c, 0x7b, 0x7a, 0x79, 0x77, 0x76, 0x74,
+			0x73, 0x72, 0x72, 0x72, 0x74, 0x76, 0x78, 0x7b, 0x7d, 0x7f, 0x81,
+			0x83, 0x85, 0x88, 0x8b, 0x8f, 0x92, 0x95, 0x97, 0x98, 0x98, 0x95,
+			0x92, 0x8d, 0x88, 0x83, 0x7f, 0x7b, 0x79, 0x78, 0x77, 0x78, 0x79,
+			0x7a, 0x7b, 0x7c, 0x7c, 0x7c, 0x7c, 0x7b, 0x7a, 0x78, 0x76, 0x75,
+			0x73, 0x72, 0x72, 0x72, 0x73, 0x75, 0x77, 0x79, 0x7b, 0x7d, 0x7f,
+			0x81, 0x84, 0x87, 0x8a, 0x8d, 0x90, 0x94, 0x96, 0x97, 0x97, 0x96,
+			0x93, 0x90, 0x8b, 0x87, 0x82, 0x7f, 0x7c, 0x7a, 0x79, 0x79, 0x79,
+			0x7a, 0x7b, 0x7c, 0x7c, 0x7c, 0x7c, 0x7b, 0x7a, 0x78, 0x77, 0x75,
+			0x73, 0x72, 0x72, 0x72, 0x73, 0x74, 0x75, 0x77, 0x79, 0x7b, 0x7d,
+			0x80, 0x83, 0x86, 0x8a, 0x8d, 0x91, 0x94, 0x97, 0x98, 0x98, 0x97,
+			0x94, 0x91, 0x8c, 0x88, 0x84, 0x80, 0x7d, 0x7b, 0x7a, 0x79, 0x7a,
+			0x7a, 0x7b, 0x7b, 0x7c, 0x7c, 0x7c, 0x7b, 0x7a, 0x78, 0x77, 0x75,
+			0x73, 0x72, 0x71, 0x71, 0x72, 0x72, 0x74, 0x75, 0x77, 0x79, 0x7c,
+			0x7f, 0x82, 0x86, 0x8a, 0x8f, 0x93, 0x96, 0x99, 0x9a, 0x9a, 0x99,
+			0x96, 0x93, 0x8e, 0x89, 0x84, 0x81, 0x7d, 0x7b, 0x7a, 0x79, 0x79,
+			0x7a, 0x7b, 0x7b, 0x7c, 0x7c, 0x7c, 0x7b, 0x7a, 0x78, 0x76, 0x74,
+			0x72, 0x70, 0x70, 0x70, 0x70, 0x71, 0x72, 0x74, 0x75, 0x78, 0x7a,
+			0x7d, 0x81, 0x85, 0x8b, 0x90, 0x95, 0x9a, 0x9d, 0x9f, 0x9f, 0x9d,
+			0x99, 0x95, 0x8f, 0x89, 0x84, 0x7f, 0x7c, 0x79, 0x78, 0x78, 0x79,
+			0x7a, 0x7b, 0x7c, 0x7c, 0x7d, 0x7c, 0x7b, 0x79, 0x77, 0x74, 0x72,
+			0x6f, 0x6e, 0x6d, 0x6d, 0x6e, 0x6f, 0x71, 0x72, 0x74, 0x76, 0x78,
+			0x7a, 0x7e, 0x82, 0x88, 0x8e, 0x95, 0x9b, 0xa0, 0xa3, 0xa3, 0xa2,
+			0x9e, 0x9a, 0x94, 0x8d, 0x87, 0x81, 0x7c, 0x79, 0x77, 0x77, 0x78,
+			0x79, 0x7a, 0x7c, 0x7d, 0x7e, 0x7d, 0x7c, 0x7b, 0x78, 0x75, 0x72,
+			0x6f, 0x6c, 0x6b, 0x6b, 0x6c, 0x6d, 0x6f, 0x71, 0x73, 0x74, 0x75,
+			0x77, 0x7a, 0x7f, 0x85, 0x8c, 0x94, 0x9c, 0xa2, 0xa7, 0xa9, 0xa7,
+			0xa3, 0x9d, 0x97, 0x8f, 0x87, 0x81, 0x7c, 0x78, 0x76, 0x76, 0x77,
+			0x78, 0x7a, 0x7c, 0x7e, 0x7f, 0x7f, 0x7e, 0x7c, 0x79, 0x75, 0x70,
+			0x6c, 0x69, 0x67, 0x67, 0x68, 0x6b, 0x6e, 0x70, 0x71, 0x73, 0x74,
+			0x76, 0x7a, 0x80, 0x88, 0x90, 0x9a, 0xa2, 0xa9, 0xad, 0xad, 0xaa,
+			0xa4, 0x9c, 0x94, 0x8b, 0x83, 0x7c, 0x78, 0x75, 0x74, 0x75, 0x77,
+			0x79, 0x7c, 0x7f, 0x80, 0x81, 0x80, 0x7e, 0x7a, 0x75, 0x6f, 0x6a,
+			0x66, 0x63, 0x63, 0x65, 0x69, 0x6d, 0x71, 0x73, 0x74, 0x75, 0x76,
+			0x78, 0x7d, 0x84, 0x8e, 0x99, 0xa3, 0xab, 0xb1, 0xb3, 0xb0, 0xaa,
+			0xa1, 0x97, 0x8d, 0x84, 0x7c, 0x77, 0x74, 0x73, 0x74, 0x76, 0x79,
+			0x7d, 0x80, 0x82, 0x83, 0x82, 0x7f, 0x7b, 0x75, 0x6e, 0x67, 0x62,
+			0x5f, 0x5f, 0x62, 0x68, 0x6d, 0x71, 0x73, 0x74, 0x73, 0x74, 0x77,
+			0x7c, 0x84, 0x8f, 0x9b, 0xa6, 0xaf, 0xb5, 0xb6, 0xb2, 0xab, 0xa1,
+			0x96, 0x8b, 0x81, 0x7a, 0x75, 0x72, 0x72, 0x74, 0x77, 0x7b, 0x7f,
+			0x83, 0x85, 0x86, 0x85, 0x81, 0x7b, 0x72, 0x68, 0x5f, 0x59, 0x56,
+			0x58, 0x5e, 0x66, 0x6e, 0x72, 0x74, 0x73, 0x73, 0x74, 0x78, 0x80,
+			0x8b, 0x98, 0xa5, 0xb1, 0xb8, 0xbc, 0xba, 0xb3, 0xa8, 0x9b, 0x8f,
+			0x83, 0x7a, 0x74, 0x71, 0x70, 0x71, 0x74, 0x78, 0x7c, 0x81, 0x85,
+			0x89, 0x8b, 0x88, 0x83, 0x79, 0x6d, 0x60, 0x56, 0x50, 0x4f, 0x55,
+			0x5e, 0x69, 0x71, 0x74, 0x76, 0x75, 0x75, 0x76, 0x7c, 0x85, 0x93,
+			0xa2, 0xb0, 0xba, 0xc0, 0xc0, 0xb9, 0xaf, 0xa1, 0x94, 0x86, 0x7c,
+			0x75, 0x72, 0x70, 0x70, 0x72, 0x76, 0x7b, 0x80, 0x86, 0x8a, 0x8d,
+			0x8b, 0x86, 0x7c, 0x6e, 0x60, 0x53, 0x4b, 0x4a, 0x50, 0x5b, 0x66,
+			0x6f, 0x73, 0x76, 0x75, 0x75, 0x77, 0x7d, 0x86, 0x94, 0xa4, 0xb2,
+			0xbd, 0xc2, 0xc2, 0xba, 0xaf, 0xa1, 0x93, 0x85, 0x7b, 0x74, 0x70,
+			0x6f, 0x6f, 0x72, 0x75, 0x7a, 0x80, 0x87, 0x8c, 0x8f, 0x8e, 0x86,
+			0x7a, 0x6a, 0x5b, 0x4d, 0x46, 0x46, 0x4f, 0x5b, 0x67, 0x70, 0x75,
+			0x77, 0x76, 0x77, 0x7a, 0x82, 0x8d, 0x9c, 0xab, 0xb9, 0xc1, 0xc4,
+			0xc1, 0xb7, 0xab, 0x9a, 0x8c, 0x7e, 0x76, 0x70, 0x6e, 0x6e, 0x6f,
+			0x72, 0x76, 0x7c, 0x82, 0x8a, 0x8f, 0x91, 0x8e, 0x85, 0x75, 0x63,
+			0x52, 0x47, 0x44, 0x4a, 0x54, 0x5e, 0x67, 0x6d, 0x72, 0x73, 0x75,
+			0x79, 0x81, 0x8b, 0x9a, 0xa9, 0xb7, 0xc1, 0xc5, 0xc3, 0xba, 0xad,
+			0x9d, 0x8e, 0x80, 0x76, 0x70, 0x6d, 0x6d, 0x6e, 0x70, 0x74, 0x79,
+			0x82, 0x8b, 0x93, 0x97, 0x95, 0x8b, 0x7b, 0x67, 0x54, 0x47, 0x41,
+			0x45, 0x4e, 0x59, 0x63, 0x6a, 0x6d, 0x6f, 0x72, 0x77, 0x80, 0x8d,
+			0x9c, 0xac, 0xbb, 0xc4, 0xc7, 0xc3, 0xb8, 0xaa, 0x99, 0x89, 0x7d,
+			0x74, 0x70, 0x6d, 0x6d, 0x6f, 0x72, 0x77, 0x7e, 0x87, 0x8f, 0x95,
+			0x96, 0x91, 0x84, 0x72, 0x5e, 0x4c, 0x43, 0x43, 0x4a, 0x52, 0x5c,
+			0x63, 0x69, 0x6c, 0x71, 0x77, 0x82, 0x90, 0x9f, 0xaf, 0xbb, 0xc4,
+			0xc6, 0xc1, 0xb5, 0xa7, 0x96, 0x87, 0x7b, 0x74, 0x6f, 0x6e, 0x6e,
+			0x70, 0x74, 0x79, 0x80, 0x88, 0x90, 0x94, 0x93, 0x8c, 0x7e, 0x6b,
+			0x59, 0x4b, 0x43, 0x43, 0x49, 0x51, 0x5a, 0x61, 0x68, 0x70, 0x7a,
+			0x86, 0x95, 0xa4, 0xb3, 0xbf, 0xc6, 0xc7, 0xc1, 0xb5, 0xa5, 0x93,
+			0x83, 0x77, 0x6f, 0x6b, 0x6b, 0x6d, 0x70, 0x75, 0x7b, 0x82, 0x88,
+			0x8e, 0x91, 0x90, 0x89, 0x7c, 0x6c, 0x5b, 0x4e, 0x46, 0x45, 0x4a,
+			0x51, 0x59, 0x62, 0x6b, 0x76, 0x84, 0x93, 0xa2, 0xb0, 0xba, 0xc1,
+			0xc2, 0xbd, 0xb3, 0xa5, 0x96, 0x87, 0x7a, 0x71, 0x6c, 0x6b, 0x6d,
+			0x71, 0x75, 0x7b, 0x82, 0x87, 0x8c, 0x8d, 0x8b, 0x82, 0x77, 0x68,
+			0x5a, 0x4f, 0x4a, 0x4a, 0x4d, 0x54, 0x5c, 0x67, 0x74, 0x83, 0x92,
+			0xa2, 0xb0, 0xbb, 0xc0, 0xc0, 0xba, 0xb0, 0xa2, 0x93, 0x85, 0x79,
+			0x70, 0x6b, 0x69, 0x6a, 0x6e, 0x73, 0x7a, 0x80, 0x86, 0x8a, 0x8b,
+			0x89, 0x83, 0x78, 0x6b, 0x5e, 0x52, 0x4d, 0x4b, 0x4f, 0x56, 0x61,
+			0x6d, 0x7d, 0x8e, 0x9f, 0xaf, 0xb9, 0xbf, 0xbe, 0xb9, 0xae, 0xa2,
+			0x93, 0x86, 0x7a, 0x71, 0x6a, 0x67, 0x67, 0x69, 0x6e, 0x75, 0x7e,
+			0x85, 0x8b, 0x8d, 0x8b, 0x84, 0x7a, 0x6d, 0x60, 0x54, 0x4d, 0x4a,
+			0x4d, 0x57, 0x64, 0x76, 0x88, 0x9a, 0xa9, 0xb6, 0xbc, 0xbd, 0xb9,
+			0xb0, 0xa4, 0x96, 0x89, 0x7d, 0x73, 0x6b, 0x66, 0x64, 0x65, 0x69,
+			0x70, 0x79, 0x82, 0x8a, 0x8f, 0x8e, 0x89, 0x81, 0x75, 0x68, 0x5b,
+			0x51, 0x4c, 0x4b, 0x51, 0x5c, 0x6e, 0x80, 0x93, 0xa5, 0xb2, 0xbb,
+			0xbd, 0xbb, 0xb2, 0xa8, 0x9a, 0x8d, 0x7f, 0x72, 0x69, 0x61, 0x5e,
+			0x5e, 0x64, 0x6b, 0x76, 0x82, 0x8c, 0x93, 0x95, 0x94, 0x8c, 0x83,
+			0x76, 0x6a, 0x5f, 0x56, 0x50, 0x4d, 0x4e, 0x54, 0x5f, 0x6f, 0x81,
+			0x96, 0xa9, 0xb9, 0xc2, 0xc5, 0xc0, 0xb6, 0xa7, 0x96, 0x87, 0x79,
+			0x6e, 0x65, 0x60, 0x5d, 0x5c, 0x5f, 0x65, 0x6e, 0x7b, 0x8a, 0x98,
+			0xa2, 0xa8, 0xa6, 0x9d, 0x8f, 0x7d, 0x6c, 0x5d, 0x53, 0x4d, 0x4c,
+			0x4c, 0x4e, 0x50, 0x54, 0x5c, 0x69, 0x7d, 0x93, 0xab, 0xbe, 0xcc,
+			0xcf, 0xca, 0xbb, 0xa8, 0x93, 0x7f, 0x71, 0x67, 0x62, 0x60, 0x60,
+			0x61, 0x63, 0x67, 0x6d, 0x76, 0x82, 0x8f, 0x9a, 0xa2, 0xa4, 0xa0,
+			0x96, 0x88, 0x79, 0x6c, 0x63, 0x5f, 0x5f, 0x63, 0x69, 0x70, 0x78,
+			0x80, 0x87, 0x8e, 0x92, 0x95, 0x93, 0x90, 0x87, 0x7e, 0x72, 0x67,
+			0x5b, 0x53, 0x4f, 0x52, 0x5d, 0x6c, 0x80, 0x92, 0xa4, 0xaf, 0xb6,
+			0xb6, 0xb1, 0xaa, 0xa0, 0x97, 0x8c, 0x83, 0x78, 0x6f, 0x65, 0x5e,
+			0x5a, 0x59, 0x5e, 0x66, 0x73, 0x7f, 0x8c, 0x95, 0x9b, 0x9b, 0x98,
+			0x91, 0x89, 0x81, 0x79, 0x73, 0x6e, 0x6c, 0x69, 0x68, 0x68, 0x69,
+			0x6c, 0x71, 0x78, 0x80, 0x89, 0x90, 0x95, 0x96, 0x95, 0x91, 0x8b,
+			0x85, 0x7f, 0x7b, 0x77, 0x75, 0x73, 0x73, 0x73, 0x73, 0x75, 0x77,
+			0x7b, 0x80, 0x85, 0x8a, 0x8e, 0x90, 0x90, 0x8d, 0x89, 0x84, 0x7f,
+			0x7b, 0x78, 0x76, 0x75, 0x75, 0x76, 0x77, 0x78, 0x7a, 0x7d, 0x7f,
+			0x82, 0x85, 0x88, 0x89, 0x89, 0x88, 0x85, 0x81, 0x7d, 0x7a, 0x78,
+			0x77, 0x77, 0x78, 0x79, 0x7a, 0x7c, 0x7d, 0x7e, 0x80, 0x82, 0x83,
+			0x85, 0x85, 0x85, 0x85, 0x83, 0x81, 0x7e, 0x7c, 0x7a, 0x79, 0x79,
+			0x7a, 0x7b, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x81, 0x82, 0x83, 0x83,
+			0x83, 0x82, 0x84, 0x84, 0x87, 0x86, 0x84, 0x7e, 0x77, 0x6f, 0x68,
+			0x65, 0x65, 0x6b, 0x73, 0x7e, 0x87, 0x8f, 0x92, 0x94, 0x92, 0x90,
+			0x8e, 0x8b, 0x8a, 0x88, 0x85, 0x80, 0x7b, 0x73, 0x6e, 0x6a, 0x6a,
+			0x6e, 0x74, 0x7c, 0x84, 0x8a, 0x8d, 0x8e, 0x8b, 0x88, 0x85, 0x82,
+			0x80, 0x7d, 0x7c, 0x7a, 0x78, 0x75, 0x73, 0x72, 0x73, 0x76, 0x7a,
+			0x80, 0x85, 0x89, 0x8a, 0x8a, 0x88, 0x85, 0x82, 0x7f, 0x7e, 0x7d,
+			0x7d, 0x7c, 0x7c, 0x7b, 0x7a, 0x79, 0x79, 0x7a, 0x7d, 0x80, 0x83,
+			0x85, 0x86, 0x86, 0x85, 0x83, 0x80, 0x7f, 0x7d, 0x7c, 0x7c, 0x7c,
+			0x7d, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7e, 0x80, 0x82, 0x83, 0x84,
+			0x84, 0x83, 0x81, 0x7f, 0x7d, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x80, 0x81, 0x82, 0x82, 0x82, 0x81,
+			0x80, 0x7e, 0x7d, 0x7c, 0x7c, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x81, 0x81, 0x81, 0x80, 0x80, 0x7f,
+			0x7e, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+		},
+		{ // 6
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x81, 0x82, 0x81, 0x82,
+			0x81, 0x81, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7c, 0x7d, 0x7c, 0x7c,
+			0x7c, 0x7c, 0x7e, 0x7d, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x84, 0x84,
+			0x85, 0x84, 0x85, 0x82, 0x82, 0x7f, 0x7e, 0x7c, 0x7a, 0x79, 0x77,
+			0x77, 0x75, 0x77, 0x76, 0x7a, 0x7a, 0x7f, 0x81, 0x84, 0x87, 0x89,
+			0x8b, 0x8c, 0x8c, 0x8c, 0x8b, 0x88, 0x86, 0x81, 0x7e, 0x79, 0x76,
+			0x71, 0x71, 0x6b, 0x6d, 0x6d, 0x6e, 0x74, 0x74, 0x7f, 0x80, 0x87,
+			0x8c, 0x90, 0x95, 0x96, 0x97, 0x96, 0x95, 0x8f, 0x8a, 0x81, 0x7d,
+			0x76, 0x70, 0x6b, 0x65, 0x64, 0x63, 0x64, 0x69, 0x6d, 0x73, 0x7d,
+			0x83, 0x8c, 0x91, 0x98, 0x9c, 0x9e, 0x9e, 0x9d, 0x97, 0x90, 0x87,
+			0x80, 0x79, 0x71, 0x6a, 0x62, 0x61, 0x5a, 0x61, 0x60, 0x6b, 0x6e,
+			0x78, 0x82, 0x88, 0x92, 0x96, 0x9f, 0x9f, 0xa2, 0x9e, 0x9e, 0x96,
+			0x8f, 0x84, 0x7e, 0x73, 0x6d, 0x65, 0x61, 0x5d, 0x5b, 0x61, 0x62,
+			0x6d, 0x6e, 0x7e, 0x83, 0x8c, 0x92, 0x99, 0x9f, 0x9f, 0xa0, 0x9e,
+			0x9c, 0x92, 0x8c, 0x81, 0x7b, 0x70, 0x6c, 0x64, 0x62, 0x5b, 0x60,
+			0x62, 0x68, 0x6d, 0x73, 0x82, 0x83, 0x8f, 0x90, 0x9b, 0x9d, 0x9e,
+			0x9e, 0x9c, 0x98, 0x91, 0x88, 0x81, 0x78, 0x70, 0x6a, 0x65, 0x62,
+			0x5e, 0x65, 0x62, 0x6d, 0x6d, 0x79, 0x82, 0x84, 0x90, 0x90, 0x9b,
+			0x9b, 0x9c, 0x9d, 0x9a, 0x96, 0x8f, 0x84, 0x7f, 0x74, 0x71, 0x6b,
+			0x66, 0x63, 0x62, 0x64, 0x67, 0x6d, 0x6e, 0x7e, 0x7e, 0x88, 0x8d,
+			0x94, 0x9b, 0x99, 0x9d, 0x9c, 0x99, 0x93, 0x8a, 0x82, 0x7f, 0x75,
+			0x73, 0x6a, 0x66, 0x61, 0x66, 0x66, 0x68, 0x6d, 0x70, 0x7c, 0x7b,
+			0x87, 0x8b, 0x94, 0x97, 0x97, 0x9c, 0x9e, 0x9a, 0x96, 0x8e, 0x89,
+			0x82, 0x78, 0x74, 0x69, 0x65, 0x5f, 0x62, 0x61, 0x66, 0x67, 0x70,
+			0x78, 0x7b, 0x87, 0x8c, 0x95, 0x98, 0x9a, 0x9f, 0x9f, 0x9d, 0x98,
+			0x90, 0x8a, 0x80, 0x7a, 0x71, 0x69, 0x62, 0x60, 0x60, 0x60, 0x66,
+			0x67, 0x71, 0x79, 0x7e, 0x88, 0x8e, 0x96, 0x98, 0x9d, 0xa0, 0x9e,
+			0x9d, 0x95, 0x8f, 0x88, 0x80, 0x75, 0x70, 0x66, 0x62, 0x5f, 0x60,
+			0x63, 0x65, 0x6b, 0x72, 0x7b, 0x80, 0x8a, 0x8d, 0x98, 0x99, 0x9c,
+			0x9e, 0x9c, 0x9a, 0x93, 0x8e, 0x87, 0x7e, 0x76, 0x6f, 0x65, 0x62,
+			0x60, 0x61, 0x64, 0x67, 0x6c, 0x75, 0x79, 0x80, 0x8b, 0x8f, 0x98,
+			0x98, 0x9d, 0x9f, 0x9b, 0x9b, 0x93, 0x8d, 0x85, 0x7d, 0x75, 0x6e,
+			0x65, 0x64, 0x60, 0x5f, 0x63, 0x68, 0x6e, 0x77, 0x7c, 0x83, 0x8b,
+			0x8e, 0x97, 0x98, 0x9b, 0x9d, 0x9b, 0x9a, 0x92, 0x8c, 0x88, 0x7d,
+			0x75, 0x6e, 0x66, 0x64, 0x61, 0x60, 0x63, 0x66, 0x6b, 0x75, 0x78,
+			0x81, 0x8a, 0x8f, 0x97, 0x97, 0x9d, 0x9f, 0x9d, 0x9a, 0x93, 0x8d,
+			0x87, 0x7c, 0x76, 0x6e, 0x66, 0x65, 0x5f, 0x61, 0x61, 0x67, 0x6c,
+			0x74, 0x79, 0x83, 0x89, 0x8e, 0x96, 0x96, 0x9e, 0x9c, 0x9d, 0x99,
+			0x94, 0x8d, 0x86, 0x7e, 0x76, 0x6d, 0x67, 0x64, 0x60, 0x62, 0x62,
+			0x69, 0x6c, 0x75, 0x79, 0x80, 0x87, 0x8c, 0x94, 0x94, 0x9a, 0x9d,
+			0x9a, 0x9a, 0x97, 0x90, 0x8a, 0x81, 0x7b, 0x74, 0x69, 0x69, 0x63,
+			0x5e, 0x5d, 0x61, 0x63, 0x6c, 0x79, 0x81, 0x8e, 0x94, 0x9f, 0xa1,
+			0xa4, 0xa8, 0xa1, 0x9c, 0x8e, 0x84, 0x7a, 0x70, 0x66, 0x62, 0x5d,
+			0x4d, 0x57, 0x5f, 0x5b, 0x67, 0x82, 0x88, 0x8e, 0x9e, 0xa8, 0xa1,
+			0xa1, 0xa7, 0xa2, 0x92, 0x93, 0x8d, 0x7c, 0x79, 0x76, 0x6f, 0x64,
+			0x5e, 0x58, 0x4d, 0x5c, 0x61, 0x61, 0x80, 0x86, 0x93, 0x9b, 0xa6,
+			0xa4, 0xa0, 0xa3, 0xa2, 0x96, 0x92, 0x8f, 0x82, 0x7a, 0x77, 0x70,
+			0x68, 0x5f, 0x58, 0x4f, 0x51, 0x68, 0x59, 0x7f, 0x84, 0x91, 0x9d,
+			0xa1, 0xa9, 0x9d, 0xa1, 0x9b, 0x95, 0x8a, 0x8b, 0x83, 0x7b, 0x77,
+			0x74, 0x69, 0x65, 0x59, 0x51, 0x51, 0x67, 0x59, 0x78, 0x89, 0x88,
+			0x9f, 0x9f, 0xa8, 0x9b, 0xa3, 0x9b, 0x97, 0x91, 0x8c, 0x87, 0x7c,
+			0x79, 0x73, 0x69, 0x67, 0x5b, 0x53, 0x4d, 0x63, 0x58, 0x6e, 0x8c,
+			0x82, 0xa1, 0x9f, 0xa7, 0x9e, 0x9f, 0x9a, 0x94, 0x94, 0x88, 0x8a,
+			0x7f, 0x7b, 0x75, 0x6b, 0x6b, 0x5b, 0x58, 0x4a, 0x62, 0x5b, 0x65,
+			0x8d, 0x81, 0x9c, 0x9e, 0xa5, 0x9f, 0x9f, 0x9c, 0x94, 0x94, 0x8d,
+			0x87, 0x83, 0x7b, 0x7a, 0x6e, 0x6e, 0x66, 0x59, 0x52, 0x54, 0x66,
+			0x51, 0x82, 0x83, 0x89, 0xa4, 0xa0, 0xa5, 0x9f, 0xa5, 0x94, 0x94,
+			0x93, 0x86, 0x86, 0x7e, 0x79, 0x75, 0x6c, 0x6c, 0x5c, 0x59, 0x4c,
+			0x63, 0x5a, 0x65, 0x8d, 0x7c, 0x9a, 0xa0, 0x9f, 0x9f, 0xa2, 0x9d,
+			0x90, 0x97, 0x8d, 0x84, 0x86, 0x79, 0x77, 0x6f, 0x6d, 0x65, 0x58,
+			0x55, 0x4e, 0x68, 0x54, 0x7b, 0x8b, 0x82, 0xa3, 0x9d, 0xa2, 0x9d,
+			0xa1, 0x98, 0x92, 0x92, 0x8b, 0x84, 0x84, 0x79, 0x7c, 0x6e, 0x6d,
+			0x66, 0x56, 0x55, 0x4f, 0x67, 0x52, 0x7c, 0x83, 0x81, 0xa2, 0x9a,
+			0xa3, 0xa0, 0xa2, 0x99, 0x99, 0x93, 0x8d, 0x88, 0x83, 0x7a, 0x7a,
+			0x6e, 0x6a, 0x64, 0x56, 0x53, 0x54, 0x63, 0x56, 0x7d, 0x84, 0x84,
+			0xa0, 0x9e, 0xa4, 0x9f, 0xa2, 0x9a, 0x96, 0x93, 0x8b, 0x89, 0x83,
+			0x7b, 0x79, 0x6f, 0x68, 0x64, 0x59, 0x50, 0x52, 0x62, 0x59, 0x76,
+			0x89, 0x86, 0x9e, 0x9e, 0xa2, 0xa2, 0xa0, 0x9a, 0x97, 0x92, 0x8e,
+			0x8a, 0x83, 0x7f, 0x76, 0x76, 0x6d, 0x66, 0x5c, 0x5a, 0x4d, 0x5d,
+			0x5e, 0x62, 0x89, 0x81, 0x95, 0x9f, 0x9f, 0xa0, 0xa1, 0x9b, 0x97,
+			0x96, 0x8f, 0x8c, 0x84, 0x84, 0x78, 0x76, 0x74, 0x6b, 0x63, 0x5a,
+			0x54, 0x4d, 0x66, 0x57, 0x74, 0x8a, 0x85, 0xa1, 0x9d, 0xa5, 0x9e,
+			0xa1, 0x98, 0x98, 0x93, 0x8d, 0x88, 0x81, 0x81, 0x75, 0x76, 0x6e,
+			0x6d, 0x5d, 0x5a, 0x4f, 0x50, 0x66, 0x55, 0x81, 0x86, 0x8b, 0xa3,
+			0x9d, 0xa4, 0x9e, 0x9f, 0x9a, 0x98, 0x91, 0x8e, 0x86, 0x83, 0x7d,
+			0x78, 0x77, 0x6e, 0x6c, 0x63, 0x5a, 0x53, 0x4d, 0x66, 0x5a, 0x79,
+			0x8b, 0x85, 0xa0, 0x9d, 0x9f, 0x9e, 0xa0, 0x97, 0x98, 0x91, 0x90,
+			0x88, 0x82, 0x83, 0x77, 0x78, 0x70, 0x6e, 0x65, 0x5c, 0x55, 0x49,
+			0x64, 0x59, 0x6f, 0x8b, 0x84, 0x9e, 0x9b, 0xa3, 0xa0, 0x9e, 0x99,
+			0x99, 0x95, 0x8b, 0x8f, 0x82, 0x81, 0x7b, 0x77, 0x73, 0x6e, 0x6e,
+			0x60, 0x5e, 0x51, 0x4f, 0x67, 0x56, 0x7a, 0x8a, 0x89, 0xa2, 0xa1,
+			0xa3, 0x9c, 0xa0, 0x96, 0x96, 0x91, 0x8e, 0x8a, 0x83, 0x82, 0x79,
+			0x78, 0x6e, 0x6e, 0x68, 0x5f, 0x5d, 0x4c, 0x60, 0x5e, 0x61, 0x88,
+			0x80, 0x96, 0x9f, 0xa0, 0xa1, 0x9f, 0x9e, 0x92, 0x96, 0x8c, 0x8b,
+			0x85, 0x84, 0x81, 0x7a, 0x7a, 0x71, 0x6f, 0x67, 0x5f, 0x58, 0x4d,
+			0x60, 0x5e, 0x5e, 0x89, 0x85, 0x93, 0xa4, 0xa0, 0xa2, 0x9f, 0x9e,
+			0x94, 0x96, 0x8f, 0x89, 0x86, 0x80, 0x7f, 0x7b, 0x77, 0x75, 0x72,
+			0x6c, 0x5f, 0x5e, 0x4c, 0x5b, 0x64, 0x57, 0x82, 0x86, 0x8c, 0xa0,
+			0xa3, 0xa0, 0xa0, 0xa3, 0x91, 0x97, 0x90, 0x89, 0x8a, 0x81, 0x81,
+			0x7d, 0x79, 0x72, 0x72, 0x6e, 0x64, 0x5c, 0x53, 0x51, 0x63, 0x58,
+			0x73, 0x8c, 0x87, 0x9f, 0x9e, 0xa5, 0x9c, 0xa0, 0x97, 0x93, 0x95,
+			0x8b, 0x8e, 0x84, 0x86, 0x7e, 0x7d, 0x75, 0x73, 0x72, 0x68, 0x64,
+			0x59, 0x4e, 0x54, 0x62, 0x5b, 0x80, 0x8d, 0x8d, 0xa5, 0xa0, 0xa5,
+			0x9e, 0x9e, 0x96, 0x92, 0x91, 0x89, 0x8a, 0x7f, 0x83, 0x7b, 0x78,
+			0x76, 0x76, 0x72, 0x6a, 0x64, 0x58, 0x4b, 0x59, 0x60, 0x5e, 0x87,
+			0x8a, 0x96, 0xa5, 0xa5, 0xa1, 0x9a, 0x9d, 0x91, 0x93, 0x8d, 0x88,
+			0x85, 0x7e, 0x82, 0x78, 0x7d, 0x75, 0x78, 0x74, 0x6d, 0x66, 0x58,
+			0x4d, 0x57, 0x63, 0x5c, 0x82, 0x8d, 0x92, 0xa6, 0xa7, 0xa3, 0x9c,
+			0x9a, 0x92, 0x8d, 0x8a, 0x83, 0x8a, 0x7e, 0x82, 0x80, 0x7d, 0x7a,
+			0x78, 0x79, 0x6f, 0x6b, 0x5c, 0x52, 0x4b, 0x68, 0x58, 0x70, 0x93,
+			0x8b, 0xa2, 0xa2, 0xa6, 0x9a, 0x96, 0x96, 0x88, 0x8e, 0x86, 0x85,
+			0x83, 0x81, 0x85, 0x7d, 0x80, 0x79, 0x7d, 0x72, 0x72, 0x64, 0x5b,
+			0x4a, 0x51, 0x64, 0x54, 0x85, 0x92, 0x9c, 0xa7, 0xa8, 0xa8, 0x98,
+			0x95, 0x8a, 0x88, 0x85, 0x83, 0x85, 0x81, 0x84, 0x80, 0x81, 0x7e,
+			0x7c, 0x81, 0x74, 0x73, 0x60, 0x58, 0x45, 0x51, 0x64, 0x5c, 0x89,
+			0x92, 0x9b, 0xa4, 0xa7, 0xa8, 0x94, 0x93, 0x86, 0x88, 0x81, 0x84,
+			0x87, 0x84, 0x88, 0x82, 0x83, 0x7d, 0x7e, 0x80, 0x77, 0x72, 0x68,
+			0x59, 0x4c, 0x45, 0x5c, 0x5b, 0x7c, 0x97, 0x9f, 0xaa, 0xa5, 0xa8,
+			0x95, 0x90, 0x87, 0x7f, 0x83, 0x80, 0x81, 0x82, 0x88, 0x8a, 0x8a,
+			0x89, 0x83, 0x81, 0x79, 0x76, 0x6b, 0x5c, 0x54, 0x42, 0x4b, 0x66,
+			0x66, 0x8c, 0x9e, 0xa7, 0xa9, 0xa2, 0xa4, 0x8c, 0x8a, 0x7c, 0x7f,
+			0x7a, 0x7f, 0x85, 0x85, 0x8b, 0x8b, 0x92, 0x8c, 0x85, 0x84, 0x78,
+			0x72, 0x6b, 0x65, 0x56, 0x4d, 0x46, 0x58, 0x71, 0x78, 0x9d, 0xa4,
+			0xab, 0xa6, 0x9d, 0x8f, 0x82, 0x82, 0x7b, 0x7d, 0x84, 0x83, 0x89,
+			0x8e, 0x90, 0x95, 0x89, 0x85, 0x7d, 0x79, 0x71, 0x69, 0x64, 0x62,
+			0x59, 0x50, 0x45, 0x61, 0x76, 0x81, 0x9f, 0xa5, 0xad, 0x99, 0x98,
+			0x8e, 0x80, 0x7e, 0x7b, 0x81, 0x85, 0x8f, 0x8f, 0x96, 0x93, 0x90,
+			0x8d, 0x83, 0x7c, 0x78, 0x71, 0x67, 0x66, 0x66, 0x5f, 0x59, 0x53,
+			0x52, 0x6d, 0x7b, 0x92, 0x9c, 0xa4, 0xa5, 0x90, 0x91, 0x80, 0x80,
+			0x7d, 0x80, 0x89, 0x8e, 0x94, 0x93, 0x98, 0x8e, 0x8c, 0x81, 0x78,
+			0x74, 0x6e, 0x70, 0x6c, 0x6d, 0x6b, 0x6b, 0x62, 0x61, 0x50, 0x60,
+			0x72, 0x80, 0x99, 0x9a, 0xa9, 0x9b, 0x95, 0x88, 0x84, 0x85, 0x7f,
+			0x88, 0x8a, 0x93, 0x92, 0x94, 0x92, 0x89, 0x87, 0x79, 0x75, 0x70,
+			0x6e, 0x70, 0x72, 0x71, 0x6e, 0x68, 0x61, 0x59, 0x4e, 0x62, 0x73,
+			0x8e, 0x9a, 0xa3, 0xa8, 0x9b, 0x91, 0x84, 0x83, 0x80, 0x83, 0x88,
+			0x89, 0x94, 0x93, 0x94, 0x90, 0x88, 0x82, 0x79, 0x76, 0x6f, 0x71,
+			0x70, 0x75, 0x77, 0x71, 0x6d, 0x63, 0x60, 0x4f, 0x51, 0x62, 0x7d,
+			0x9c, 0xa1, 0xa9, 0xa2, 0x9c, 0x89, 0x80, 0x7e, 0x80, 0x87, 0x87,
+			0x91, 0x96, 0x97, 0x92, 0x8e, 0x86, 0x7e, 0x74, 0x73, 0x70, 0x71,
+			0x74, 0x76, 0x7a, 0x75, 0x6b, 0x63, 0x5c, 0x50, 0x4f, 0x63, 0x87,
+			0xa3, 0xa8, 0xa6, 0xa0, 0x96, 0x86, 0x76, 0x77, 0x80, 0x8d, 0x93,
+			0x91, 0x97, 0x97, 0x92, 0x86, 0x7c, 0x77, 0x74, 0x73, 0x73, 0x73,
+			0x78, 0x7d, 0x7a, 0x76, 0x69, 0x65, 0x5d, 0x55, 0x51, 0x60, 0x86,
+			0xa3, 0xac, 0xa2, 0x9a, 0x92, 0x82, 0x74, 0x71, 0x85, 0x96, 0x9c,
+			0x97, 0x8f, 0x96, 0x90, 0x86, 0x75, 0x73, 0x77, 0x7a, 0x7d, 0x75,
+			0x7a, 0x7a, 0x7d, 0x70, 0x61, 0x5f, 0x59, 0x52, 0x4e, 0x68, 0x97,
+			0xb6, 0xb5, 0x9c, 0x8d, 0x84, 0x7c, 0x6d, 0x6e, 0x8b, 0xa3, 0xa9,
+			0x95, 0x8a, 0x89, 0x8a, 0x80, 0x71, 0x71, 0x7b, 0x80, 0x7c, 0x76,
+			0x77, 0x7d, 0x7c, 0x72, 0x62, 0x60, 0x5a, 0x54, 0x4c, 0x65, 0x9b,
+			0xbd, 0xb9, 0x96, 0x86, 0x80, 0x7c, 0x70, 0x6f, 0x87, 0xa6, 0xaf,
+			0x9b, 0x86, 0x80, 0x87, 0x82, 0x76, 0x74, 0x7d, 0x87, 0x80, 0x75,
+			0x71, 0x77, 0x7f, 0x77, 0x66, 0x5d, 0x5d, 0x5c, 0x54, 0x55, 0x7d,
+			0xab, 0xc4, 0xac, 0x8a, 0x7b, 0x7a, 0x7a, 0x73, 0x7a, 0x91, 0xa9,
+			0xa5, 0x92, 0x7e, 0x7d, 0x81, 0x7c, 0x74, 0x76, 0x80, 0x83, 0x7b,
+			0x74, 0x77, 0x7f, 0x7d, 0x72, 0x60, 0x5a, 0x5c, 0x5c, 0x56, 0x60,
+			0x8c, 0xb9, 0xc4, 0xa4, 0x82, 0x71, 0x78, 0x7d, 0x7d, 0x86, 0x95,
+			0xa8, 0xa1, 0x8e, 0x7e, 0x76, 0x79, 0x74, 0x7a, 0x83, 0x8b, 0x85,
+			0x76, 0x71, 0x78, 0x80, 0x7a, 0x71, 0x66, 0x63, 0x5f, 0x5a, 0x59,
+			0x60, 0x85, 0xae, 0xc1, 0xab, 0x86, 0x70, 0x6f, 0x7a, 0x82, 0x8c,
+			0x90, 0x99, 0x98, 0x94, 0x85, 0x7d, 0x76, 0x79, 0x7c, 0x85, 0x8a,
+			0x88, 0x7f, 0x74, 0x75, 0x76, 0x79, 0x71, 0x6f, 0x66, 0x67, 0x62,
+			0x62, 0x5e, 0x61, 0x81, 0xa7, 0xbd, 0xab, 0x87, 0x71, 0x6f, 0x7a,
+			0x87, 0x8e, 0x93, 0x96, 0x96, 0x90, 0x89, 0x7f, 0x7e, 0x7c, 0x82,
+			0x87, 0x87, 0x87, 0x7f, 0x7d, 0x77, 0x77, 0x73, 0x72, 0x6c, 0x6a,
+			0x66, 0x6a, 0x65, 0x62, 0x57, 0x70, 0x9a, 0xbd, 0xbc, 0x93, 0x76,
+			0x62, 0x77, 0x81, 0x95, 0x8d, 0x94, 0x91, 0x95, 0x8d, 0x82, 0x7c,
+			0x7d, 0x88, 0x85, 0x85, 0x7b, 0x83, 0x80, 0x81, 0x78, 0x73, 0x6e,
+			0x70, 0x71, 0x70, 0x69, 0x68, 0x62, 0x61, 0x55, 0x74, 0x97, 0xc1,
+			0xbe, 0x98, 0x77, 0x61, 0x74, 0x80, 0x92, 0x8d, 0x94, 0x8f, 0x98,
+			0x90, 0x88, 0x7b, 0x77, 0x7b, 0x88, 0x8b, 0x88, 0x7c, 0x75, 0x7a,
+			0x7f, 0x83, 0x78, 0x71, 0x6e, 0x79, 0x75, 0x70, 0x65, 0x60, 0x5d,
+			0x58, 0x6f, 0x9c, 0xc2, 0xc4, 0x9d, 0x76, 0x60, 0x6b, 0x7d, 0x92,
+			0x90, 0x8f, 0x8e, 0x91, 0x93, 0x88, 0x7d, 0x75, 0x7a, 0x80, 0x88,
+			0x81, 0x7d, 0x77, 0x7e, 0x87, 0x88, 0x7e, 0x72, 0x6b, 0x6e, 0x75,
+			0x7c, 0x7a, 0x6f, 0x64, 0x5e, 0x60, 0x62, 0x82, 0xa2, 0xc3, 0xb9,
+			0x98, 0x73, 0x5e, 0x68, 0x7c, 0x91, 0x91, 0x93, 0x8e, 0x95, 0x90,
+			0x8b, 0x7b, 0x75, 0x73, 0x7f, 0x84, 0x85, 0x82, 0x7b, 0x7e, 0x7a,
+			0x82, 0x7f, 0x7f, 0x77, 0x76, 0x6f, 0x76, 0x74, 0x76, 0x6c, 0x68,
+			0x62, 0x61, 0x60, 0x75, 0x9d, 0xbd, 0xc3, 0xa1, 0x7a, 0x59, 0x5f,
+			0x74, 0x96, 0x9b, 0x9e, 0x93, 0x92, 0x8e, 0x88, 0x7c, 0x6f, 0x69,
+			0x72, 0x83, 0x8d, 0x90, 0x86, 0x81, 0x7b, 0x7f, 0x7b, 0x7a, 0x71,
+			0x78, 0x82, 0x90, 0x8f, 0x81, 0x70, 0x6b, 0x72, 0x80, 0x85, 0x7c,
+			0x73, 0x6c, 0x72, 0x72, 0x6f, 0x67, 0x63, 0x61, 0x63, 0x76, 0x96,
+			0xb6, 0xbe, 0xa8, 0x85, 0x65, 0x60, 0x71, 0x8a, 0x9b, 0x9a, 0x99,
+			0x92, 0x90, 0x87, 0x7d, 0x71, 0x6b, 0x71, 0x7f, 0x8c, 0x91, 0x8a,
+			0x80, 0x77, 0x76, 0x78, 0x76, 0x77, 0x77, 0x7d, 0x83, 0x8d, 0x90,
+			0x8c, 0x7d, 0x74, 0x70, 0x75, 0x7b, 0x80, 0x7e, 0x78, 0x74, 0x73,
+			0x70, 0x6a, 0x68, 0x67, 0x69, 0x65, 0x6e, 0x7d, 0xa1, 0xb8, 0xbe,
+			0x9f, 0x77, 0x5b, 0x5d, 0x78, 0x94, 0xa5, 0xa0, 0x97, 0x8c, 0x8c,
+			0x86, 0x80, 0x70, 0x6d, 0x6f, 0x81, 0x90, 0x94, 0x8d, 0x7e, 0x77,
+			0x75, 0x7c, 0x79, 0x78, 0x72, 0x76, 0x7e, 0x8b, 0x90, 0x8c, 0x7f,
+			0x77, 0x74, 0x77, 0x79, 0x79, 0x77, 0x76, 0x79, 0x7a, 0x78, 0x6d,
+			0x67, 0x62, 0x69, 0x6a, 0x68, 0x64, 0x77, 0x9c, 0xbe, 0xc6, 0xa7,
+			0x7e, 0x5b, 0x5d, 0x75, 0x96, 0xa6, 0xa3, 0x95, 0x8a, 0x86, 0x87,
+			0x84, 0x7b, 0x71, 0x6e, 0x77, 0x85, 0x92, 0x93, 0x8d, 0x7d, 0x74,
+			0x6f, 0x74, 0x78, 0x7d, 0x7a, 0x79, 0x76, 0x77, 0x76, 0x72, 0x6d,
+			0x68, 0x6b, 0x69, 0x69, 0x63, 0x79, 0x98, 0xbf, 0xc6, 0xb1, 0x84,
+			0x60, 0x5a, 0x6f, 0x92, 0xa5, 0xa8, 0x99, 0x8b, 0x83, 0x85, 0x85,
+			0x80, 0x75, 0x71, 0x75, 0x83, 0x8f, 0x93, 0x8a, 0x7d, 0x72, 0x6e,
+			0x73, 0x7a, 0x7e, 0x7b, 0x76, 0x72, 0x72, 0x71, 0x73, 0x70, 0x71,
+			0x6d, 0x6b, 0x63, 0x67, 0x80, 0xa4, 0xc4, 0xc1, 0xa6, 0x78, 0x5e,
+			0x5e, 0x7a, 0x99, 0xa7, 0xa2, 0x91, 0x86, 0x82, 0x86, 0x85, 0x80,
+			0x75, 0x72, 0x77, 0x85, 0x8f, 0x91, 0x86, 0x79, 0x70, 0x6f, 0x77,
+			0x7e, 0x81, 0x7b, 0x76, 0x71, 0x71, 0x71, 0x74, 0x72, 0x73, 0x6e,
+			0x69, 0x63, 0x6f, 0x8d, 0xb1, 0xc3, 0xb5, 0x95, 0x6d, 0x60, 0x66,
+			0x86, 0x9c, 0xa7, 0x9b, 0x8d, 0x82, 0x81, 0x84, 0x83, 0x7e, 0x76,
+			0x76, 0x7c, 0x89, 0x8d, 0x8a, 0x7c, 0x74, 0x6f, 0x75, 0x7a, 0x80,
+			0x7c, 0x77, 0x71, 0x71, 0x70, 0x72, 0x72, 0x73, 0x72, 0x6d, 0x67,
+			0x67, 0x7e, 0x9e, 0xc0, 0xc0, 0xac, 0x82, 0x68, 0x62, 0x77, 0x91,
+			0xa2, 0xa0, 0x92, 0x86, 0x80, 0x85, 0x85, 0x83, 0x7a, 0x77, 0x77,
+			0x82, 0x88, 0x8c, 0x85, 0x7c, 0x73, 0x72, 0x74, 0x79, 0x7b, 0x7b,
+			0x78, 0x76, 0x74, 0x74, 0x74, 0x73, 0x72, 0x71, 0x72, 0x6d, 0x6c,
+			0x71, 0x87, 0xa2, 0xba, 0xba, 0xa7, 0x86, 0x6f, 0x6b, 0x7a, 0x8f,
+			0x9d, 0x9d, 0x92, 0x88, 0x82, 0x84, 0x84, 0x83, 0x7e, 0x7d, 0x7f,
+			0x83, 0x84, 0x7f, 0x78, 0x71, 0x72, 0x77, 0x7f, 0x7f, 0x7b, 0x72,
+			0x6d, 0x6d, 0x71, 0x75, 0x76, 0x77, 0x72, 0x6d, 0x68, 0x71, 0x88,
+			0xa8, 0xbd, 0xb9, 0xa1, 0x80, 0x6d, 0x6c, 0x80, 0x94, 0xa0, 0x9a,
+			0x8f, 0x84, 0x81, 0x84, 0x85, 0x84, 0x7f, 0x7e, 0x7f, 0x83, 0x82,
+			0x7e, 0x76, 0x72, 0x73, 0x7a, 0x80, 0x81, 0x7b, 0x73, 0x6c, 0x6d,
+			0x72, 0x77, 0x78, 0x76, 0x73, 0x6f, 0x6e, 0x70, 0x7f, 0x97, 0xb0,
+			0xb8, 0xae, 0x94, 0x7c, 0x6f, 0x75, 0x86, 0x96, 0x9d, 0x98, 0x8d,
+			0x83, 0x80, 0x81, 0x83, 0x81, 0x7f, 0x7d, 0x7f, 0x81, 0x81, 0x7d,
+			0x77, 0x73, 0x74, 0x7a, 0x80, 0x80, 0x7a, 0x71, 0x6b, 0x6c, 0x72,
+			0x79, 0x7c, 0x7a, 0x76, 0x6e, 0x6a, 0x6d, 0x7e, 0x97, 0xae, 0xb7,
+			0xad, 0x96, 0x7d, 0x71, 0x76, 0x87, 0x97, 0x9d, 0x97, 0x8c, 0x82,
+			0x7e, 0x80, 0x82, 0x82, 0x7d, 0x7a, 0x7c, 0x82, 0x87, 0x87, 0x80,
+			0x76, 0x6f, 0x6f, 0x77, 0x7f, 0x83, 0x80, 0x76, 0x6d, 0x6a, 0x6e,
+			0x75, 0x7b, 0x7b, 0x79, 0x73, 0x6f, 0x6d, 0x72, 0x80, 0x94, 0xa9,
+			0xb1, 0xac, 0x99, 0x85, 0x77, 0x78, 0x83, 0x91, 0x98, 0x97, 0x8e,
+			0x85, 0x80, 0x7f, 0x81, 0x81, 0x7f, 0x7b, 0x7b, 0x7d, 0x82, 0x84,
+			0x84, 0x7e, 0x77, 0x71, 0x72, 0x77, 0x7d, 0x7f, 0x7d, 0x76, 0x70,
+			0x6f, 0x70, 0x75, 0x77, 0x79, 0x77, 0x76, 0x72, 0x71, 0x72, 0x7d,
+			0x8d, 0xa0, 0xac, 0xac, 0x9f, 0x8d, 0x7e, 0x78, 0x7e, 0x88, 0x93,
+			0x95, 0x92, 0x88, 0x82, 0x7f, 0x80, 0x81, 0x81, 0x7e, 0x7b, 0x7a,
+			0x7a, 0x7f, 0x83, 0x86, 0x83, 0x7d, 0x75, 0x72, 0x71, 0x77, 0x7c,
+			0x7f, 0x7d, 0x79, 0x74, 0x71, 0x72, 0x76, 0x79, 0x79, 0x77, 0x75,
+			0x74, 0x75, 0x78, 0x7b, 0x84, 0x8e, 0x9c, 0xa3, 0xa4, 0x99, 0x8c,
+			0x7f, 0x7b, 0x7e, 0x88, 0x90, 0x92, 0x8f, 0x87, 0x82, 0x7d, 0x7e,
+			0x7e, 0x81, 0x7f, 0x7e, 0x7a, 0x7a, 0x7b, 0x7f, 0x82, 0x83, 0x81,
+			0x7c, 0x78, 0x74, 0x76, 0x78, 0x7d, 0x7f, 0x7f, 0x7d, 0x7a, 0x78,
+			0x79, 0x7a, 0x7c, 0x7c, 0x7a, 0x77, 0x76, 0x77, 0x7a, 0x7d, 0x7e,
+			0x7f, 0x7f, 0x7e, 0x7f, 0x83, 0x8b, 0x93, 0x9b, 0x9b, 0x97, 0x8d,
+			0x84, 0x7f, 0x7f, 0x83, 0x88, 0x8a, 0x88, 0x85, 0x80, 0x7e, 0x7d,
+			0x7e, 0x7d, 0x7d, 0x7c, 0x7b, 0x7b, 0x7b, 0x7c, 0x7c, 0x7c, 0x7c,
+			0x7c, 0x7b, 0x7b, 0x7b, 0x7b, 0x7a, 0x7a, 0x7a, 0x7b, 0x7c, 0x7c,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x80, 0x81, 0x83,
+			0x83, 0x83, 0x84, 0x85, 0x88, 0x8c, 0x8f, 0x90, 0x8e, 0x89, 0x85,
+			0x82, 0x80, 0x81, 0x83, 0x84, 0x83, 0x82, 0x7f, 0x7e, 0x7c, 0x7b,
+			0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x79, 0x78, 0x76, 0x75, 0x75, 0x76,
+			0x78, 0x79, 0x7a, 0x79, 0x78, 0x79, 0x7e, 0x86, 0x90, 0x97, 0x99,
+			0x93, 0x8a, 0x82, 0x7f, 0x81, 0x87, 0x8c, 0x8e, 0x8b, 0x85, 0x81,
+			0x7f, 0x80, 0x82, 0x84, 0x81, 0x7e, 0x7a, 0x78, 0x79, 0x7c, 0x7f,
+			0x80, 0x7e, 0x7a, 0x77, 0x76, 0x77, 0x7a, 0x7d, 0x7e, 0x7d, 0x7b,
+			0x7a, 0x7a, 0x7c, 0x7e, 0x7f, 0x80, 0x7f, 0x7e, 0x7d, 0x7d, 0x7e,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x81, 0x80,
+			0x81, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x81, 0x81, 0x81,
+			0x81, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7e,
+			0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x81, 0x82, 0x82,
+			0x82, 0x82, 0x82, 0x82, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
+			0x81, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7d, 0x7c,
+			0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7d, 0x7c, 0x7c, 0x7b, 0x7b, 0x7c,
+			0x7e, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7f, 0x80, 0x81, 0x81,
+			0x81, 0x81, 0x81, 0x80, 0x81, 0x81, 0x82, 0x82, 0x83, 0x82, 0x81,
+			0x81, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c,
+			0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x83, 0x83,
+			0x82, 0x82, 0x82, 0x82, 0x83, 0x83, 0x83, 0x83, 0x82, 0x81, 0x81,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7e,
+			0x7e, 0x7d, 0x7d, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7d, 0x7d, 0x7d,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81,
+			0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+		},
+		{ // 7
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+			0x81, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7e, 0x80, 0x7e, 0x82, 0x7d,
+			0x85, 0x80, 0x7e, 0x82, 0x7f, 0x82, 0x80, 0x81, 0x82, 0x82, 0x7e,
+			0x81, 0x7e, 0x80, 0x80, 0x7e, 0x7c, 0x7f, 0x7f, 0x7d, 0x82, 0x7d,
+			0x81, 0x7e, 0x80, 0x7e, 0x7e, 0x7e, 0x7d, 0x81, 0x7d, 0x84, 0x7d,
+			0x80, 0x80, 0x7f, 0x7f, 0x80, 0x81, 0x7d, 0x82, 0x7d, 0x81, 0x7e,
+			0x7f, 0x80, 0x7f, 0x80, 0x82, 0x81, 0x82, 0x81, 0x84, 0x7e, 0x7f,
+			0x82, 0x7f, 0x80, 0x7f, 0x81, 0x7c, 0x81, 0x7d, 0x81, 0x7f, 0x7e,
+			0x83, 0x81, 0x7e, 0x81, 0x7b, 0x80, 0x7f, 0x81, 0x83, 0x80, 0x7f,
+			0x7c, 0x83, 0x7b, 0x82, 0x7d, 0x80, 0x7c, 0x81, 0x7f, 0x7f, 0x7e,
+			0x7f, 0x7f, 0x80, 0x82, 0x7d, 0x7f, 0x7f, 0x7d, 0x7c, 0x81, 0x7a,
+			0x81, 0x7e, 0x81, 0x7e, 0x80, 0x80, 0x80, 0x81, 0x81, 0x80, 0x80,
+			0x7b, 0x82, 0x7f, 0x7f, 0x83, 0x7e, 0x7f, 0x7f, 0x81, 0x7f, 0x80,
+			0x84, 0x80, 0x79, 0x82, 0x7c, 0x7d, 0x80, 0x83, 0x7a, 0x7e, 0x7f,
+			0x7d, 0x81, 0x80, 0x7e, 0x7f, 0x7e, 0x7e, 0x82, 0x81, 0x81, 0x7f,
+			0x81, 0x81, 0x80, 0x80, 0x84, 0x7c, 0x84, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x83, 0x83, 0x80, 0x81, 0x81, 0x7e, 0x80, 0x80, 0x79, 0x80,
+			0x7c, 0x7f, 0x81, 0x81, 0x7b, 0x7d, 0x7f, 0x7d, 0x80, 0x82, 0x80,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7b, 0x82, 0x7f, 0x7b, 0x83, 0x7a, 0x7f,
+			0x7f, 0x81, 0x7c, 0x83, 0x80, 0x80, 0x81, 0x85, 0x7f, 0x7d, 0x84,
+			0x7f, 0x7f, 0x80, 0x86, 0x79, 0x85, 0x7d, 0x83, 0x7e, 0x82, 0x80,
+			0x86, 0x81, 0x83, 0x81, 0x80, 0x7e, 0x82, 0x82, 0x7c, 0x84, 0x7e,
+			0x83, 0x7f, 0x87, 0x7d, 0x83, 0x82, 0x83, 0x7f, 0x86, 0x7e, 0x82,
+			0x7f, 0x84, 0x7e, 0x82, 0x80, 0x83, 0x84, 0x80, 0x84, 0x7e, 0x82,
+			0x7e, 0x85, 0x7c, 0x85, 0x7b, 0x7f, 0x80, 0x80, 0x7d, 0x84, 0x7e,
+			0x80, 0x7f, 0x80, 0x7e, 0x7c, 0x82, 0x7a, 0x82, 0x7a, 0x80, 0x7b,
+			0x7d, 0x7d, 0x7a, 0x84, 0x79, 0x7f, 0x7f, 0x7c, 0x7b, 0x82, 0x82,
+			0x7e, 0x85, 0x7d, 0x7f, 0x7f, 0x86, 0x7d, 0x86, 0x83, 0x7d, 0x7f,
+			0x85, 0x7a, 0x82, 0x83, 0x78, 0x83, 0x7f, 0x7c, 0x7f, 0x80, 0x77,
+			0x81, 0x7e, 0x7c, 0x7c, 0x7f, 0x75, 0x7f, 0x78, 0x7b, 0x7c, 0x79,
+			0x7b, 0x77, 0x81, 0x79, 0x81, 0x82, 0x7c, 0x7e, 0x81, 0x79, 0x86,
+			0x79, 0x82, 0x7b, 0x7b, 0x7c, 0x79, 0x84, 0x77, 0x85, 0x7e, 0x7e,
+			0x83, 0x80, 0x81, 0x83, 0x80, 0x83, 0x80, 0x7f, 0x81, 0x7b, 0x82,
+			0x7d, 0x81, 0x80, 0x7e, 0x82, 0x7a, 0x82, 0x7f, 0x80, 0x82, 0x7d,
+			0x82, 0x7a, 0x7e, 0x82, 0x79, 0x85, 0x7b, 0x7b, 0x81, 0x76, 0x86,
+			0x7a, 0x82, 0x7e, 0x7e, 0x7f, 0x7e, 0x84, 0x7e, 0x87, 0x7d, 0x85,
+			0x7e, 0x81, 0x84, 0x7c, 0x82, 0x7f, 0x7b, 0x80, 0x7d, 0x7e, 0x7c,
+			0x81, 0x7f, 0x7f, 0x84, 0x7b, 0x85, 0x78, 0x87, 0x7e, 0x82, 0x83,
+			0x7b, 0x82, 0x79, 0x82, 0x7f, 0x80, 0x7f, 0x82, 0x7a, 0x83, 0x81,
+			0x81, 0x86, 0x7e, 0x84, 0x7c, 0x82, 0x7e, 0x81, 0x7e, 0x7e, 0x81,
+			0x79, 0x84, 0x7b, 0x7f, 0x7c, 0x80, 0x7f, 0x7f, 0x84, 0x79, 0x85,
+			0x79, 0x80, 0x85, 0x79, 0x83, 0x7e, 0x78, 0x80, 0x82, 0x7d, 0x7e,
+			0x84, 0x79, 0x7c, 0x83, 0x7c, 0x7c, 0x7e, 0x80, 0x75, 0x87, 0x7d,
+			0x81, 0x7e, 0x84, 0x7b, 0x81, 0x84, 0x7a, 0x86, 0x79, 0x87, 0x7a,
+			0x87, 0x7f, 0x80, 0x7e, 0x84, 0x7d, 0x83, 0x82, 0x7b, 0x84, 0x7a,
+			0x83, 0x80, 0x80, 0x7d, 0x7f, 0x7a, 0x7e, 0x7d, 0x80, 0x7f, 0x82,
+			0x80, 0x7f, 0x81, 0x7f, 0x7b, 0x81, 0x7d, 0x7f, 0x82, 0x7e, 0x81,
+			0x7f, 0x82, 0x82, 0x81, 0x7f, 0x80, 0x78, 0x7c, 0x7d, 0x77, 0x81,
+			0x7c, 0x7e, 0x7f, 0x81, 0x7f, 0x80, 0x85, 0x7e, 0x8a, 0x80, 0x87,
+			0x83, 0x7a, 0x85, 0x7a, 0x80, 0x83, 0x7b, 0x7f, 0x7c, 0x80, 0x80,
+			0x85, 0x84, 0x84, 0x84, 0x7f, 0x81, 0x7c, 0x7c, 0x7b, 0x80, 0x7c,
+			0x7f, 0x88, 0x70, 0x88, 0x7b, 0x7b, 0x8a, 0x80, 0x81, 0x7e, 0x86,
+			0x71, 0x8b, 0x7f, 0x7b, 0x85, 0x7d, 0x72, 0x86, 0x74, 0x7d, 0x7e,
+			0x82, 0x7b, 0x83, 0x83, 0x73, 0x89, 0x75, 0x89, 0x7c, 0x8c, 0x80,
+			0x80, 0x83, 0x81, 0x7f, 0x86, 0x81, 0x7d, 0x7b, 0x80, 0x7a, 0x7d,
+			0x86, 0x80, 0x7e, 0x8a, 0x7e, 0x7d, 0x83, 0x7a, 0x80, 0x7c, 0x8b,
+			0x76, 0x85, 0x7f, 0x7b, 0x7f, 0x87, 0x7e, 0x82, 0x82, 0x7b, 0x7e,
+			0x81, 0x7c, 0x85, 0x7b, 0x7f, 0x81, 0x77, 0x7e, 0x81, 0x77, 0x80,
+			0x85, 0x7b, 0x84, 0x7e, 0x7f, 0x77, 0x84, 0x7c, 0x7d, 0x83, 0x7e,
+			0x7d, 0x83, 0x86, 0x84, 0x83, 0x8e, 0x78, 0x86, 0x82, 0x7a, 0x7e,
+			0x82, 0x74, 0x83, 0x7c, 0x79, 0x85, 0x75, 0x87, 0x79, 0x88, 0x81,
+			0x81, 0x83, 0x80, 0x7d, 0x88, 0x7c, 0x86, 0x7f, 0x7f, 0x83, 0x7d,
+			0x88, 0x7a, 0x85, 0x7b, 0x80, 0x7c, 0x7f, 0x7c, 0x7d, 0x7e, 0x7b,
+			0x84, 0x7a, 0x82, 0x7f, 0x77, 0x80, 0x7e, 0x73, 0x84, 0x78, 0x7a,
+			0x87, 0x7e, 0x87, 0x82, 0x88, 0x7e, 0x87, 0x83, 0x7f, 0x87, 0x7b,
+			0x86, 0x7b, 0x82, 0x85, 0x7a, 0x85, 0x80, 0x79, 0x82, 0x7e, 0x76,
+			0x86, 0x78, 0x81, 0x81, 0x80, 0x80, 0x81, 0x81, 0x7c, 0x88, 0x7a,
+			0x87, 0x7b, 0x82, 0x7d, 0x81, 0x81, 0x7f, 0x80, 0x7c, 0x80, 0x78,
+			0x81, 0x79, 0x7f, 0x7b, 0x84, 0x76, 0x87, 0x7d, 0x7b, 0x85, 0x7d,
+			0x82, 0x7f, 0x88, 0x75, 0x87, 0x80, 0x7a, 0x87, 0x81, 0x7c, 0x85,
+			0x7f, 0x7e, 0x84, 0x7e, 0x85, 0x7f, 0x83, 0x82, 0x81, 0x7e, 0x84,
+			0x7c, 0x7e, 0x83, 0x79, 0x81, 0x79, 0x83, 0x79, 0x84, 0x7e, 0x85,
+			0x79, 0x8b, 0x78, 0x7f, 0x87, 0x71, 0x8b, 0x73, 0x84, 0x7a, 0x80,
+			0x7b, 0x85, 0x77, 0x82, 0x81, 0x76, 0x81, 0x80, 0x76, 0x85, 0x81,
+			0x7a, 0x8d, 0x7d, 0x88, 0x86, 0x81, 0x87, 0x82, 0x7d, 0x83, 0x80,
+			0x76, 0x88, 0x7d, 0x75, 0x90, 0x76, 0x7f, 0x86, 0x7e, 0x75, 0x8d,
+			0x71, 0x82, 0x7f, 0x7c, 0x7e, 0x84, 0x7c, 0x83, 0x84, 0x79, 0x8a,
+			0x75, 0x85, 0x79, 0x84, 0x75, 0x8b, 0x73, 0x8a, 0x79, 0x88, 0x7b,
+			0x84, 0x80, 0x78, 0x87, 0x6f, 0x8a, 0x6e, 0x88, 0x76, 0x84, 0x7a,
+			0x89, 0x7a, 0x88, 0x80, 0x81, 0x84, 0x81, 0x83, 0x81, 0x85, 0x7d,
+			0x8c, 0x77, 0x8e, 0x77, 0x8b, 0x76, 0x8d, 0x71, 0x88, 0x79, 0x7c,
+			0x7e, 0x7c, 0x7d, 0x77, 0x88, 0x6f, 0x8b, 0x75, 0x86, 0x79, 0x8a,
+			0x75, 0x8d, 0x77, 0x88, 0x7a, 0x84, 0x7a, 0x82, 0x7a, 0x80, 0x7e,
+			0x7a, 0x89, 0x73, 0x8c, 0x79, 0x85, 0x7d, 0x88, 0x76, 0x8a, 0x78,
+			0x84, 0x77, 0x8c, 0x6f, 0x8f, 0x77, 0x82, 0x82, 0x80, 0x82, 0x7e,
+			0x88, 0x77, 0x8e, 0x76, 0x8b, 0x7a, 0x88, 0x78, 0x88, 0x77, 0x84,
+			0x7b, 0x7f, 0x7b, 0x82, 0x78, 0x82, 0x7e, 0x7e, 0x82, 0x7f, 0x80,
+			0x81, 0x7e, 0x80, 0x7e, 0x7e, 0x81, 0x78, 0x85, 0x76, 0x86, 0x76,
+			0x85, 0x78, 0x83, 0x7b, 0x80, 0x7e, 0x81, 0x7e, 0x82, 0x82, 0x7e,
+			0x89, 0x7d, 0x84, 0x86, 0x7d, 0x86, 0x82, 0x81, 0x81, 0x82, 0x82,
+			0x7e, 0x83, 0x80, 0x7c, 0x83, 0x7e, 0x7d, 0x82, 0x7d, 0x7d, 0x81,
+			0x7d, 0x7b, 0x81, 0x78, 0x81, 0x76, 0x83, 0x73, 0x86, 0x75, 0x82,
+			0x7d, 0x7e, 0x80, 0x7f, 0x7f, 0x81, 0x80, 0x7e, 0x84, 0x7b, 0x85,
+			0x7c, 0x84, 0x7b, 0x87, 0x7b, 0x89, 0x7f, 0x89, 0x80, 0x8c, 0x81,
+			0x85, 0x88, 0x7d, 0x86, 0x7e, 0x7c, 0x7c, 0x7a, 0x74, 0x79, 0x72,
+			0x73, 0x71, 0x71, 0x6f, 0x75, 0x71, 0x79, 0x79, 0x7c, 0x84, 0x83,
+			0x8d, 0x91, 0x95, 0x9c, 0x9f, 0xa0, 0xa3, 0xa2, 0x9c, 0x9c, 0x92,
+			0x8b, 0x83, 0x77, 0x6f, 0x66, 0x5b, 0x5a, 0x50, 0x4d, 0x4f, 0x4b,
+			0x50, 0x58, 0x59, 0x68, 0x72, 0x79, 0x8b, 0x92, 0x9b, 0xa9, 0xac,
+			0xb5, 0xb8, 0xba, 0xbb, 0xb7, 0xb3, 0xad, 0xa3, 0x9a, 0x91, 0x81,
+			0x7a, 0x6c, 0x62, 0x58, 0x55, 0x45, 0x4c, 0x3f, 0x41, 0x45, 0x41,
+			0x4e, 0x52, 0x5f, 0x6c, 0x78, 0x88, 0x92, 0x9f, 0xaa, 0xb3, 0xb6,
+			0xc1, 0xbc, 0xbe, 0xbb, 0xb2, 0xb0, 0xa2, 0x9d, 0x8e, 0x87, 0x79,
+			0x73, 0x65, 0x63, 0x54, 0x55, 0x49, 0x47, 0x40, 0x43, 0x3d, 0x47,
+			0x4f, 0x4f, 0x6a, 0x68, 0x82, 0x89, 0x9c, 0xa4, 0xb5, 0xb6, 0xc3,
+			0xc4, 0xc4, 0xc3, 0xbe, 0xb6, 0xad, 0xa5, 0x96, 0x8e, 0x7f, 0x77,
+			0x69, 0x63, 0x57, 0x53, 0x47, 0x44, 0x3c, 0x3b, 0x39, 0x3e, 0x47,
+			0x4c, 0x5f, 0x67, 0x79, 0x86, 0x96, 0xa3, 0xb0, 0xb9, 0xc2, 0xc5,
+			0xc7, 0xc6, 0xc1, 0xbb, 0xb0, 0xa9, 0x9a, 0x90, 0x83, 0x78, 0x6b,
+			0x64, 0x5a, 0x54, 0x4a, 0x44, 0x3d, 0x3a, 0x38, 0x3e, 0x44, 0x4c,
+			0x5b, 0x66, 0x73, 0x84, 0x91, 0xa0, 0xae, 0xb6, 0xc2, 0xc4, 0xca,
+			0xc5, 0xc6, 0xba, 0xb5, 0xa7, 0x9e, 0x90, 0x85, 0x7a, 0x6e, 0x67,
+			0x5c, 0x56, 0x4c, 0x46, 0x3c, 0x3e, 0x34, 0x40, 0x42, 0x48, 0x59,
+			0x61, 0x6f, 0x83, 0x8c, 0x9f, 0xae, 0xb6, 0xc3, 0xc7, 0xcb, 0xc9,
+			0xc8, 0xbc, 0xb6, 0xa9, 0x9e, 0x90, 0x86, 0x77, 0x6e, 0x63, 0x5c,
+			0x51, 0x4c, 0x42, 0x3c, 0x3b, 0x34, 0x40, 0x41, 0x4b, 0x5a, 0x65,
+			0x71, 0x87, 0x8e, 0xa4, 0xaf, 0xba, 0xc4, 0xc8, 0xcc, 0xc9, 0xc7,
+			0xbc, 0xb5, 0xa7, 0x9d, 0x8d, 0x83, 0x75, 0x6c, 0x61, 0x5b, 0x50,
+			0x4b, 0x42, 0x3c, 0x39, 0x35, 0x41, 0x3e, 0x4e, 0x58, 0x64, 0x73,
+			0x85, 0x8f, 0xa4, 0xaf, 0xbb, 0xc6, 0xc8, 0xcf, 0xc9, 0xc8, 0xbc,
+			0xb5, 0xa6, 0x9b, 0x8d, 0x82, 0x74, 0x6b, 0x5f, 0x59, 0x4f, 0x48,
+			0x41, 0x3b, 0x36, 0x36, 0x41, 0x3e, 0x53, 0x58, 0x67, 0x77, 0x86,
+			0x92, 0xa6, 0xb0, 0xbd, 0xc6, 0xc9, 0xce, 0xca, 0xc7, 0xbd, 0xb4,
+			0xa7, 0x9b, 0x8c, 0x84, 0x73, 0x6d, 0x5f, 0x5a, 0x4e, 0x4b, 0x3d,
+			0x3d, 0x32, 0x38, 0x40, 0x3b, 0x55, 0x56, 0x67, 0x77, 0x85, 0x91,
+			0xaa, 0xaf, 0xc0, 0xc8, 0xca, 0xcf, 0xcc, 0xc6, 0xbe, 0xb3, 0xa5,
+			0x99, 0x8c, 0x7f, 0x73, 0x69, 0x5d, 0x58, 0x4c, 0x47, 0x3d, 0x3b,
+			0x2f, 0x41, 0x3a, 0x46, 0x58, 0x59, 0x6f, 0x7b, 0x87, 0x9a, 0xab,
+			0xb2, 0xc4, 0xc4, 0xcc, 0xcb, 0xc9, 0xc3, 0xbb, 0xae, 0xa3, 0x94,
+			0x8a, 0x7a, 0x72, 0x64, 0x5c, 0x54, 0x49, 0x43, 0x3b, 0x36, 0x32,
+			0x42, 0x37, 0x50, 0x55, 0x5f, 0x73, 0x7e, 0x8a, 0xa1, 0xab, 0xb6,
+			0xc4, 0xc4, 0xcc, 0xc9, 0xc8, 0xc0, 0xb8, 0xa9, 0xa0, 0x90, 0x86,
+			0x77, 0x70, 0x60, 0x5c, 0x4f, 0x48, 0x3f, 0x3b, 0x33, 0x39, 0x41,
+			0x3c, 0x56, 0x55, 0x67, 0x76, 0x83, 0x90, 0xa8, 0xac, 0xbd, 0xc5,
+			0xc7, 0xce, 0xc9, 0xc7, 0xbd, 0xb4, 0xa5, 0x9b, 0x8c, 0x80, 0x74,
+			0x6a, 0x5e, 0x58, 0x4c, 0x45, 0x3f, 0x38, 0x36, 0x40, 0x3c, 0x4a,
+			0x56, 0x5b, 0x71, 0x7b, 0x8a, 0x9c, 0xa9, 0xb3, 0xc3, 0xc3, 0xcc,
+			0xcb, 0xc7, 0xc3, 0xb8, 0xad, 0xa0, 0x94, 0x86, 0x7a, 0x70, 0x63,
+			0x5b, 0x51, 0x48, 0x40, 0x3c, 0x33, 0x3b, 0x3d, 0x40, 0x52, 0x54,
+			0x67, 0x74, 0x82, 0x91, 0xa3, 0xab, 0xbb, 0xc2, 0xc6, 0xcc, 0xc8,
+			0xc6, 0xbd, 0xb4, 0xa8, 0x9b, 0x8e, 0x82, 0x75, 0x6c, 0x61, 0x57,
+			0x4f, 0x45, 0x3e, 0x39, 0x34, 0x3e, 0x3b, 0x48, 0x52, 0x59, 0x6d,
+			0x79, 0x87, 0x9b, 0xa7, 0xb3, 0xc0, 0xc3, 0xcb, 0xcb, 0xc8, 0xc4,
+			0xba, 0xae, 0xa4, 0x95, 0x8b, 0x7c, 0x72, 0x67, 0x5e, 0x54, 0x4c,
+			0x43, 0x3c, 0x38, 0x3a, 0x3f, 0x40, 0x50, 0x54, 0x62, 0x72, 0x7f,
+			0x90, 0xa1, 0xab, 0xba, 0xc1, 0xc5, 0xcb, 0xc8, 0xc6, 0xbe, 0xb3,
+			0xa8, 0x9c, 0x8e, 0x83, 0x75, 0x6b, 0x60, 0x57, 0x4d, 0x45, 0x3d,
+			0x38, 0x38, 0x3d, 0x3f, 0x49, 0x54, 0x5c, 0x6e, 0x7a, 0x8b, 0x9c,
+			0xa9, 0xb5, 0xc0, 0xc4, 0xc9, 0xca, 0xc5, 0xc2, 0xb5, 0xac, 0x9f,
+			0x93, 0x86, 0x7a, 0x6f, 0x65, 0x5a, 0x53, 0x49, 0x40, 0x3d, 0x36,
+			0x3f, 0x3d, 0x46, 0x51, 0x57, 0x67, 0x75, 0x83, 0x96, 0xa3, 0xb0,
+			0xbc, 0xc2, 0xc7, 0xca, 0xc7, 0xc3, 0xbc, 0xaf, 0xa5, 0x97, 0x8a,
+			0x7f, 0x72, 0x68, 0x5f, 0x53, 0x4c, 0x43, 0x3c, 0x38, 0x3b, 0x3e,
+			0x42, 0x4f, 0x55, 0x62, 0x71, 0x7d, 0x8f, 0x9d, 0xab, 0xb6, 0xc1,
+			0xc3, 0xc9, 0xc7, 0xc4, 0xbf, 0xb1, 0xa9, 0x9c, 0x8e, 0x83, 0x78,
+			0x6b, 0x64, 0x58, 0x51, 0x47, 0x40, 0x3a, 0x39, 0x3e, 0x3f, 0x49,
+			0x53, 0x5a, 0x6d, 0x78, 0x88, 0x99, 0xa6, 0xb2, 0xbe, 0xc2, 0xc8,
+			0xc9, 0xc3, 0xc4, 0xb2, 0xae, 0x9e, 0x91, 0x86, 0x79, 0x6d, 0x67,
+			0x58, 0x51, 0x4a, 0x3d, 0x3d, 0x38, 0x3c, 0x40, 0x48, 0x51, 0x5e,
+			0x68, 0x7a, 0x87, 0x96, 0xa5, 0xb2, 0xbb, 0xc4, 0xc6, 0xc8, 0xc6,
+			0xc0, 0xb7, 0xab, 0xa0, 0x92, 0x87, 0x79, 0x6f, 0x65, 0x5b, 0x51,
+			0x4a, 0x40, 0x3c, 0x3a, 0x3d, 0x41, 0x49, 0x53, 0x5c, 0x6d, 0x78,
+			0x88, 0x98, 0xa3, 0xb2, 0xbc, 0xc1, 0xc8, 0xc6, 0xc4, 0xc1, 0xb3,
+			0xae, 0x9e, 0x93, 0x88, 0x79, 0x6e, 0x66, 0x58, 0x52, 0x49, 0x3f,
+			0x3d, 0x38, 0x3d, 0x41, 0x49, 0x53, 0x5d, 0x6c, 0x7a, 0x88, 0x98,
+			0xa6, 0xb2, 0xbc, 0xc4, 0xc4, 0xca, 0xc2, 0xc1, 0xb6, 0xab, 0xa0,
+			0x91, 0x86, 0x79, 0x6d, 0x63, 0x5a, 0x4e, 0x49, 0x3d, 0x3b, 0x3a,
+			0x3d, 0x42, 0x4d, 0x54, 0x61, 0x70, 0x7b, 0x8e, 0x9b, 0xa9, 0xb7,
+			0xbe, 0xc6, 0xc8, 0xc7, 0xc6, 0xbc, 0xb5, 0xa9, 0x9b, 0x8f, 0x82,
+			0x74, 0x6b, 0x60, 0x56, 0x4d, 0x43, 0x3d, 0x39, 0x3a, 0x40, 0x43,
+			0x4f, 0x57, 0x63, 0x73, 0x80, 0x90, 0x9f, 0xac, 0xb8, 0xc1, 0xc6,
+			0xc7, 0xc6, 0xc2, 0xb8, 0xb0, 0xa1, 0x95, 0x89, 0x7b, 0x71, 0x66,
+			0x5c, 0x53, 0x49, 0x41, 0x3b, 0x3a, 0x3d, 0x40, 0x49, 0x53, 0x5d,
+			0x6c, 0x7a, 0x88, 0x98, 0xa5, 0xb4, 0xbc, 0xc3, 0xc8, 0xc6, 0xc5,
+			0xbe, 0xb2, 0xa9, 0x99, 0x8d, 0x82, 0x75, 0x6c, 0x61, 0x56, 0x4e,
+			0x44, 0x3d, 0x3b, 0x3b, 0x40, 0x45, 0x4f, 0x57, 0x66, 0x74, 0x82,
+			0x93, 0xa0, 0xae, 0xb9, 0xc0, 0xc7, 0xc7, 0xc5, 0xc2, 0xb5, 0xae,
+			0x9e, 0x91, 0x87, 0x78, 0x6f, 0x67, 0x58, 0x53, 0x48, 0x40, 0x3e,
+			0x3b, 0x40, 0x44, 0x4c, 0x56, 0x60, 0x6f, 0x7d, 0x8d, 0x9b, 0xa9,
+			0xb4, 0xbc, 0xc4, 0xc4, 0xc6, 0xc2, 0xb8, 0xb0, 0xa2, 0x94, 0x8a,
+			0x7b, 0x73, 0x66, 0x5d, 0x53, 0x4a, 0x43, 0x3d, 0x3d, 0x41, 0x44,
+			0x4e, 0x57, 0x60, 0x71, 0x7d, 0x8d, 0x9c, 0xa9, 0xb4, 0xbd, 0xc1,
+			0xc7, 0xc1, 0xc1, 0xb7, 0xab, 0xa3, 0x91, 0x88, 0x7c, 0x6f, 0x68,
+			0x5d, 0x53, 0x4e, 0x43, 0x40, 0x3f, 0x41, 0x47, 0x4f, 0x58, 0x63,
+			0x70, 0x7e, 0x8d, 0x9b, 0xa8, 0xb4, 0xbb, 0xc2, 0xc4, 0xc2, 0xbf,
+			0xb8, 0xab, 0xa3, 0x92, 0x88, 0x7d, 0x71, 0x6a, 0x5f, 0x56, 0x4e,
+			0x47, 0x3f, 0x40, 0x3f, 0x46, 0x4b, 0x56, 0x5e, 0x6c, 0x7a, 0x89,
+			0x98, 0xa4, 0xb2, 0xb7, 0xc0, 0xc2, 0xc2, 0xbe, 0xbb, 0xae, 0xa7,
+			0x98, 0x8c, 0x83, 0x76, 0x6e, 0x65, 0x5b, 0x53, 0x4c, 0x41, 0x43,
+			0x3f, 0x45, 0x4a, 0x50, 0x5c, 0x64, 0x75, 0x80, 0x92, 0x9c, 0xab,
+			0xb2, 0xba, 0xc0, 0xbf, 0xc0, 0xbc, 0xb2, 0xa9, 0x9f, 0x90, 0x89,
+			0x7a, 0x72, 0x68, 0x5f, 0x56, 0x50, 0x46, 0x43, 0x44, 0x41, 0x4d,
+			0x4c, 0x5a, 0x61, 0x6f, 0x7c, 0x8b, 0x98, 0xa4, 0xb0, 0xb5, 0xbf,
+			0xbe, 0xbf, 0xbb, 0xb5, 0xaa, 0xa2, 0x93, 0x8a, 0x7d, 0x73, 0x6b,
+			0x61, 0x5a, 0x53, 0x4c, 0x44, 0x48, 0x41, 0x4d, 0x4e, 0x57, 0x61,
+			0x6a, 0x7a, 0x85, 0x95, 0x9e, 0xad, 0xaf, 0xbc, 0xba, 0xbe, 0xb9,
+			0xb4, 0xad, 0xa1, 0x98, 0x8a, 0x82, 0x74, 0x6f, 0x62, 0x5f, 0x53,
+			0x51, 0x45, 0x4a, 0x43, 0x4b, 0x51, 0x53, 0x64, 0x65, 0x7b, 0x80,
+			0x93, 0x9a, 0xaa, 0xad, 0xb8, 0xb9, 0xb9, 0xbb, 0xb1, 0xaf, 0xa0,
+			0x9a, 0x8b, 0x84, 0x76, 0x72, 0x64, 0x62, 0x57, 0x53, 0x4b, 0x49,
+			0x4a, 0x48, 0x56, 0x52, 0x65, 0x66, 0x77, 0x80, 0x8e, 0x98, 0xa5,
+			0xac, 0xb4, 0xb9, 0xb7, 0xbc, 0xb1, 0xb1, 0xa2, 0x9e, 0x8d, 0x87,
+			0x79, 0x73, 0x68, 0x63, 0x58, 0x56, 0x4d, 0x4a, 0x4e, 0x47, 0x58,
+			0x52, 0x63, 0x66, 0x74, 0x7c, 0x8d, 0x91, 0xa3, 0xa7, 0xaf, 0xb6,
+			0xb3, 0xb8, 0xaf, 0xaf, 0xa1, 0x9d, 0x8c, 0x89, 0x78, 0x76, 0x69,
+			0x65, 0x5a, 0x58, 0x4f, 0x4e, 0x4f, 0x4a, 0x58, 0x54, 0x64, 0x68,
+			0x75, 0x7d, 0x8d, 0x91, 0xa3, 0xa4, 0xaf, 0xb2, 0xb2, 0xb7, 0xad,
+			0xae, 0xa0, 0x9b, 0x8d, 0x87, 0x79, 0x76, 0x68, 0x66, 0x5a, 0x58,
+			0x51, 0x4f, 0x52, 0x4d, 0x5b, 0x57, 0x65, 0x6b, 0x74, 0x7f, 0x8c,
+			0x91, 0xa1, 0xa3, 0xad, 0xb0, 0xb1, 0xb1, 0xad, 0xaa, 0x9f, 0x9b,
+			0x8c, 0x87, 0x7a, 0x74, 0x6a, 0x66, 0x5a, 0x5b, 0x51, 0x53, 0x53,
+			0x50, 0x5c, 0x5a, 0x66, 0x6e, 0x75, 0x81, 0x8c, 0x92, 0xa1, 0xa3,
+			0xab, 0xad, 0xb0, 0xab, 0xac, 0xa4, 0x9b, 0x98, 0x88, 0x85, 0x78,
+			0x72, 0x6a, 0x64, 0x5c, 0x5c, 0x53, 0x57, 0x55, 0x55, 0x60, 0x5d,
+			0x6a, 0x71, 0x77, 0x84, 0x8d, 0x92, 0xa0, 0xa2, 0xa7, 0xad, 0xa9,
+			0xaa, 0xa8, 0x9e, 0x9c, 0x91, 0x88, 0x84, 0x76, 0x73, 0x6b, 0x62,
+			0x61, 0x5a, 0x56, 0x5b, 0x54, 0x5c, 0x61, 0x60, 0x70, 0x72, 0x7b,
+			0x87, 0x8c, 0x95, 0x9f, 0x9f, 0xa7, 0xa9, 0xa5, 0xa9, 0xa0, 0x9c,
+			0x97, 0x8c, 0x86, 0x80, 0x75, 0x73, 0x68, 0x65, 0x61, 0x5b, 0x5a,
+			0x5b, 0x5a, 0x5f, 0x65, 0x66, 0x74, 0x74, 0x80, 0x87, 0x8e, 0x96,
+			0x9d, 0x9e, 0xa6, 0xa3, 0xa4, 0xa4, 0x9c, 0x9b, 0x92, 0x8b, 0x85,
+			0x7e, 0x75, 0x74, 0x68, 0x68, 0x60, 0x60, 0x5d, 0x5f, 0x5d, 0x64,
+			0x66, 0x6b, 0x74, 0x77, 0x81, 0x86, 0x8f, 0x93, 0x9b, 0x9b, 0xa3,
+			0x9f, 0xa3, 0x9f, 0x9b, 0x98, 0x90, 0x8a, 0x84, 0x7d, 0x77, 0x72,
+			0x6b, 0x69, 0x62, 0x62, 0x5f, 0x61, 0x61, 0x65, 0x69, 0x6d, 0x74,
+			0x7a, 0x7f, 0x88, 0x8c, 0x92, 0x98, 0x9a, 0x9e, 0x9e, 0x9f, 0x9c,
+			0x9a, 0x94, 0x90, 0x89, 0x84, 0x7d, 0x78, 0x72, 0x6e, 0x69, 0x66,
+			0x65, 0x62, 0x64, 0x65, 0x67, 0x6c, 0x6f, 0x74, 0x7c, 0x7e, 0x88,
+			0x8b, 0x90, 0x95, 0x98, 0x9a, 0x9d, 0x9b, 0x9a, 0x98, 0x92, 0x8f,
+			0x89, 0x84, 0x7e, 0x78, 0x73, 0x70, 0x69, 0x69, 0x65, 0x65, 0x66,
+			0x67, 0x69, 0x6d, 0x71, 0x76, 0x7c, 0x80, 0x86, 0x8b, 0x8f, 0x93,
+			0x96, 0x97, 0x9a, 0x98, 0x97, 0x95, 0x91, 0x8d, 0x89, 0x83, 0x7f,
+			0x79, 0x75, 0x71, 0x6d, 0x6b, 0x69, 0x68, 0x69, 0x69, 0x6b, 0x70,
+			0x71, 0x77, 0x7b, 0x80, 0x85, 0x8a, 0x8e, 0x92, 0x94, 0x96, 0x97,
+			0x96, 0x95, 0x92, 0x8f, 0x8a, 0x86, 0x81, 0x7d, 0x78, 0x74, 0x70,
+			0x6e, 0x6c, 0x6b, 0x6b, 0x6b, 0x6d, 0x70, 0x72, 0x77, 0x7a, 0x7f,
+			0x84, 0x88, 0x8c, 0x8f, 0x92, 0x94, 0x94, 0x94, 0x93, 0x91, 0x8e,
+			0x8b, 0x86, 0x82, 0x7e, 0x7a, 0x77, 0x73, 0x71, 0x6f, 0x6f, 0x6d,
+			0x6e, 0x6f, 0x71, 0x73, 0x76, 0x78, 0x7c, 0x7f, 0x82, 0x86, 0x88,
+			0x8b, 0x8d, 0x8f, 0x8f, 0x90, 0x8f, 0x8e, 0x8c, 0x89, 0x87, 0x83,
+			0x80, 0x7d, 0x7a, 0x77, 0x76, 0x73, 0x73, 0x72, 0x72, 0x73, 0x74,
+			0x75, 0x78, 0x7a, 0x7c, 0x7f, 0x81, 0x84, 0x85, 0x88, 0x89, 0x8b,
+			0x8c, 0x8c, 0x8c, 0x8a, 0x89, 0x87, 0x85, 0x82, 0x80, 0x7e, 0x7c,
+			0x7a, 0x78, 0x77, 0x76, 0x76, 0x76, 0x76, 0x77, 0x79, 0x7a, 0x7c,
+			0x7d, 0x7f, 0x81, 0x82, 0x83, 0x85, 0x85, 0x86, 0x86, 0x86, 0x86,
+			0x86, 0x85, 0x84, 0x83, 0x81, 0x81, 0x7f, 0x7e, 0x7d, 0x7c, 0x7c,
+			0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7c, 0x7d, 0x7d, 0x7e, 0x7f, 0x7f,
+			0x81, 0x81, 0x82, 0x82, 0x83, 0x83, 0x83, 0x83, 0x83, 0x82, 0x82,
+			0x81, 0x81, 0x80, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80,
+		},
+		{ // 8
+			0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+			0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x80, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7e,
+			0x80, 0x80, 0x7f, 0x81, 0x80, 0x80, 0x81, 0x81, 0x80, 0x81, 0x81,
+			0x81, 0x81, 0x82, 0x83, 0x91, 0x9c, 0x7a, 0x74, 0x82, 0x82, 0x97,
+			0x94, 0x83, 0x74, 0x6d, 0x72, 0x7c, 0x80, 0x7a, 0x71, 0x6d, 0x6a,
+			0x69, 0x72, 0x79, 0x7f, 0x82, 0x82, 0x7e, 0x7f, 0x82, 0x83, 0x82,
+			0x84, 0x81, 0x83, 0x86, 0x86, 0x89, 0x89, 0x8a, 0x8a, 0x88, 0x85,
+			0x80, 0x7b, 0x78, 0x71, 0x71, 0x6e, 0x6f, 0x70, 0x70, 0x71, 0x75,
+			0x78, 0x78, 0x7d, 0x8a, 0xa1, 0xa7, 0xa7, 0x9a, 0x92, 0x8e, 0x91,
+			0x95, 0x97, 0x94, 0x8b, 0x80, 0x71, 0x6a, 0x60, 0x5d, 0x59, 0x58,
+			0x54, 0x56, 0x58, 0x6c, 0x83, 0xa0, 0xb8, 0xa7, 0x8f, 0x72, 0x6b,
+			0x78, 0x88, 0x9b, 0xad, 0xa9, 0x98, 0x85, 0x79, 0x76, 0x78, 0x7e,
+			0x81, 0x81, 0x77, 0x6e, 0x66, 0x62, 0x64, 0x60, 0x5c, 0x5a, 0x6e,
+			0x7e, 0xa0, 0xb2, 0xa1, 0x91, 0x6f, 0x69, 0x78, 0x89, 0xa2, 0xaa,
+			0xa9, 0x9d, 0x8c, 0x7c, 0x70, 0x77, 0x84, 0x90, 0x89, 0x7e, 0x6e,
+			0x66, 0x5c, 0x5f, 0x62, 0x65, 0x5a, 0x66, 0x79, 0x90, 0xbf, 0xa9,
+			0x95, 0x72, 0x5e, 0x73, 0x85, 0x9c, 0xb1, 0xa8, 0xa3, 0x8a, 0x7a,
+			0x73, 0x71, 0x84, 0x8a, 0x8e, 0x7f, 0x72, 0x69, 0x61, 0x62, 0x66,
+			0x60, 0x62, 0x4e, 0x66, 0x7e, 0x9f, 0xc8, 0xa3, 0x89, 0x68, 0x5c,
+			0x77, 0x89, 0xa5, 0xb6, 0xa8, 0x9b, 0x7d, 0x74, 0x77, 0x7a, 0x8b,
+			0x8c, 0x88, 0x77, 0x6f, 0x68, 0x69, 0x6e, 0x69, 0x62, 0x5b, 0x4b,
+			0x67, 0x7f, 0xa0, 0xc7, 0xa2, 0x86, 0x60, 0x56, 0x7a, 0x90, 0xac,
+			0xb5, 0xa4, 0x93, 0x76, 0x74, 0x7b, 0x80, 0x8e, 0x8d, 0x87, 0x75,
+			0x6a, 0x6c, 0x70, 0x71, 0x6c, 0x5d, 0x5a, 0x4c, 0x63, 0x85, 0xa0,
+			0xc6, 0xa9, 0x81, 0x5f, 0x57, 0x79, 0x98, 0xaf, 0xb4, 0x9f, 0x88,
+			0x6f, 0x72, 0x80, 0x89, 0x92, 0x8a, 0x80, 0x6c, 0x69, 0x6b, 0x74,
+			0x79, 0x72, 0x5e, 0x52, 0x44, 0x60, 0x88, 0xa0, 0xc9, 0xab, 0x84,
+			0x5c, 0x51, 0x79, 0x9b, 0xb4, 0xb7, 0xa0, 0x86, 0x6f, 0x70, 0x82,
+			0x8b, 0x92, 0x87, 0x7e, 0x6b, 0x68, 0x72, 0x79, 0x7d, 0x71, 0x5c,
+			0x53, 0x4b, 0x5b, 0x8a, 0x9a, 0xc5, 0xb3, 0x80, 0x62, 0x4c, 0x74,
+			0x9b, 0xb2, 0xb4, 0x9d, 0x85, 0x71, 0x71, 0x89, 0x90, 0x95, 0x88,
+			0x78, 0x6d, 0x6a, 0x76, 0x7c, 0x7e, 0x72, 0x5e, 0x52, 0x52, 0x55,
+			0x7f, 0x92, 0xb9, 0xc1, 0x89, 0x67, 0x4a, 0x6b, 0x9b, 0xb1, 0xb6,
+			0x9f, 0x86, 0x76, 0x73, 0x88, 0x8f, 0x95, 0x88, 0x74, 0x6c, 0x68,
+			0x79, 0x7d, 0x7e, 0x6f, 0x5c, 0x54, 0x4f, 0x52, 0x78, 0x91, 0xaf,
+			0xc6, 0x92, 0x6c, 0x4f, 0x60, 0x94, 0xaf, 0xb9, 0xa2, 0x86, 0x75,
+			0x73, 0x89, 0x95, 0x94, 0x89, 0x75, 0x6e, 0x6a, 0x7a, 0x82, 0x81,
+			0x71, 0x5a, 0x51, 0x53, 0x56, 0x6c, 0x8a, 0x9e, 0xc6, 0xa1, 0x71,
+			0x54, 0x54, 0x8d, 0xad, 0xb8, 0xa6, 0x88, 0x79, 0x73, 0x84, 0x96,
+			0x94, 0x8d, 0x73, 0x6d, 0x6a, 0x77, 0x80, 0x80, 0x79, 0x63, 0x50,
+			0x4b, 0x52, 0x65, 0x8d, 0x96, 0xbe, 0xae, 0x77, 0x5a, 0x4c, 0x81,
+			0xac, 0xba, 0xad, 0x8a, 0x79, 0x73, 0x83, 0x9b, 0x94, 0x8d, 0x77,
+			0x6e, 0x6e, 0x75, 0x84, 0x80, 0x78, 0x60, 0x56, 0x57, 0x5b, 0x57,
+			0x7a, 0x8e, 0xb1, 0xc0, 0x83, 0x66, 0x4d, 0x71, 0xa0, 0xaf, 0xb1,
+			0x95, 0x7c, 0x74, 0x7a, 0x93, 0x97, 0x8f, 0x7e, 0x6d, 0x71, 0x71,
+			0x84, 0x7f, 0x78, 0x66, 0x59, 0x53, 0x59, 0x59, 0x76, 0x8c, 0xa1,
+			0xc5, 0x91, 0x6e, 0x53, 0x65, 0x9b, 0xaf, 0xb2, 0x9c, 0x81, 0x7a,
+			0x7a, 0x90, 0x99, 0x8f, 0x82, 0x6e, 0x71, 0x71, 0x82, 0x83, 0x79,
+			0x6a, 0x58, 0x57, 0x5d, 0x59, 0x68, 0x84, 0x95, 0xbf, 0xa4, 0x75,
+			0x5a, 0x5a, 0x8d, 0xaa, 0xb1, 0xa2, 0x88, 0x7b, 0x79, 0x89, 0x9b,
+			0x94, 0x87, 0x73, 0x72, 0x72, 0x7c, 0x86, 0x7b, 0x6f, 0x5a, 0x5b,
+			0x5d, 0x5b, 0x60, 0x7d, 0x8d, 0xba, 0xb0, 0x7e, 0x63, 0x52, 0x83,
+			0xa3, 0xb5, 0xa8, 0x8d, 0x7c, 0x76, 0x85, 0x9a, 0x97, 0x8c, 0x75,
+			0x6f, 0x71, 0x76, 0x88, 0x7e, 0x73, 0x5d, 0x5a, 0x58, 0x5c, 0x58,
+			0x74, 0x89, 0xaa, 0xbb, 0x87, 0x6a, 0x50, 0x75, 0x9d, 0xb0, 0xab,
+			0x90, 0x81, 0x77, 0x81, 0x9a, 0x99, 0x8d, 0x76, 0x6f, 0x76, 0x79,
+			0x84, 0x7c, 0x70, 0x5c, 0x5a, 0x5d, 0x5f, 0x5d, 0x7a, 0x86, 0xb4,
+			0xb5, 0x80, 0x63, 0x4e, 0x80, 0xa3, 0xb3, 0xa7, 0x8d, 0x7f, 0x78,
+			0x87, 0x9b, 0x9a, 0x8b, 0x72, 0x70, 0x73, 0x7f, 0x82, 0x79, 0x6c,
+			0x5e, 0x5c, 0x5b, 0x5a, 0x5b, 0x82, 0x91, 0xbb, 0xa6, 0x72, 0x5e,
+			0x59, 0x8a, 0xa8, 0xb1, 0xa1, 0x87, 0x7a, 0x7a, 0x8e, 0x9d, 0x94,
+			0x84, 0x6f, 0x73, 0x77, 0x86, 0x7f, 0x77, 0x64, 0x5a, 0x5d, 0x63,
+			0x5d, 0x61, 0x7f, 0x99, 0xc1, 0x99, 0x72, 0x56, 0x69, 0x96, 0xa9,
+			0xad, 0x97, 0x85, 0x7a, 0x81, 0x92, 0x9e, 0x92, 0x7b, 0x6c, 0x74,
+			0x7d, 0x89, 0x83, 0x75, 0x5f, 0x5a, 0x5a, 0x65, 0x5b, 0x6c, 0x88,
+			0xa1, 0xbf, 0x88, 0x69, 0x53, 0x74, 0x9d, 0xac, 0xa8, 0x8e, 0x81,
+			0x7a, 0x83, 0x97, 0x9c, 0x8d, 0x76, 0x6c, 0x75, 0x7f, 0x88, 0x7b,
+			0x70, 0x5f, 0x5e, 0x5d, 0x62, 0x59, 0x72, 0x88, 0xae, 0xb9, 0x85,
+			0x64, 0x53, 0x7f, 0xa1, 0xb1, 0xa5, 0x8d, 0x7f, 0x78, 0x86, 0x99,
+			0x9a, 0x89, 0x70, 0x6d, 0x77, 0x85, 0x85, 0x78, 0x6c, 0x5f, 0x5f,
+			0x5c, 0x5d, 0x5b, 0x7f, 0x91, 0xb4, 0xa6, 0x76, 0x61, 0x5b, 0x8c,
+			0xa3, 0xae, 0x9b, 0x86, 0x7d, 0x7b, 0x8d, 0x9c, 0x98, 0x81, 0x6c,
+			0x6f, 0x7a, 0x87, 0x82, 0x76, 0x63, 0x5b, 0x5d, 0x64, 0x5d, 0x62,
+			0x80, 0x92, 0xbe, 0x98, 0x77, 0x5a, 0x67, 0x96, 0xa7, 0xae, 0x96,
+			0x86, 0x7c, 0x7e, 0x90, 0x9d, 0x93, 0x7e, 0x6e, 0x74, 0x7c, 0x87,
+			0x7e, 0x77, 0x67, 0x5e, 0x58, 0x5f, 0x59, 0x6a, 0x89, 0x9f, 0xbb,
+			0x8d, 0x6c, 0x55, 0x71, 0x9e, 0xaf, 0xaa, 0x8f, 0x80, 0x7a, 0x85,
+			0x95, 0x9b, 0x8f, 0x77, 0x6d, 0x73, 0x7e, 0x85, 0x7c, 0x73, 0x62,
+			0x60, 0x5c, 0x62, 0x58, 0x6b, 0x83, 0x9e, 0xb9, 0x8c, 0x6c, 0x56,
+			0x75, 0x9d, 0xad, 0xa6, 0x8d, 0x82, 0x7c, 0x84, 0x95, 0x9a, 0x8e,
+			0x79, 0x6f, 0x74, 0x7f, 0x86, 0x7b, 0x6e, 0x62, 0x61, 0x60, 0x65,
+			0x55, 0x6a, 0x85, 0xa0, 0xb9, 0x89, 0x6c, 0x5a, 0x77, 0x9f, 0xab,
+			0xa6, 0x8e, 0x83, 0x7b, 0x87, 0x95, 0x9c, 0x8d, 0x77, 0x71, 0x76,
+			0x81, 0x84, 0x7b, 0x6f, 0x61, 0x63, 0x60, 0x65, 0x57, 0x65, 0x81,
+			0x9e, 0xbb, 0x8e, 0x6f, 0x57, 0x73, 0x9b, 0xac, 0xab, 0x8e, 0x84,
+			0x7a, 0x86, 0x94, 0x9b, 0x8e, 0x78, 0x70, 0x76, 0x83, 0x86, 0x7b,
+			0x6c, 0x60, 0x63, 0x61, 0x65, 0x58, 0x64, 0x82, 0x9c, 0xba, 0x8d,
+			0x70, 0x5b, 0x74, 0x9b, 0xa7, 0xa8, 0x8f, 0x87, 0x7c, 0x85, 0x94,
+			0x9a, 0x8f, 0x77, 0x70, 0x75, 0x80, 0x85, 0x78, 0x6e, 0x64, 0x65,
+			0x61, 0x63, 0x56, 0x63, 0x80, 0x98, 0xb6, 0x91, 0x75, 0x5b, 0x71,
+			0x96, 0xa9, 0xab, 0x92, 0x86, 0x7b, 0x85, 0x93, 0x9c, 0x90, 0x79,
+			0x70, 0x76, 0x7f, 0x83, 0x79, 0x70, 0x65, 0x62, 0x5f, 0x62, 0x5c,
+			0x62, 0x7c, 0x92, 0xb4, 0x95, 0x76, 0x5d, 0x6f, 0x96, 0xa8, 0xab,
+			0x92, 0x88, 0x7d, 0x86, 0x92, 0x9b, 0x91, 0x7b, 0x70, 0x74, 0x7f,
+			0x84, 0x7b, 0x6f, 0x64, 0x64, 0x60, 0x64, 0x5b, 0x65, 0x7f, 0x91,
+			0xb2, 0x92, 0x78, 0x60, 0x71, 0x97, 0xa8, 0xaa, 0x91, 0x86, 0x7d,
+			0x89, 0x94, 0x9a, 0x8c, 0x79, 0x72, 0x76, 0x7f, 0x80, 0x78, 0x6d,
+			0x63, 0x65, 0x61, 0x64, 0x59, 0x67, 0x7f, 0x97, 0xaf, 0x8e, 0x77,
+			0x61, 0x79, 0x98, 0xa9, 0xa7, 0x90, 0x87, 0x80, 0x8b, 0x95, 0x97,
+			0x8a, 0x78, 0x74, 0x79, 0x81, 0x7f, 0x75, 0x6b, 0x62, 0x64, 0x60,
+			0x65, 0x59, 0x6f, 0x80, 0x9d, 0xab, 0x85, 0x72, 0x5f, 0x83, 0x9b,
+			0xa9, 0x9e, 0x8c, 0x85, 0x81, 0x8e, 0x95, 0x97, 0x85, 0x75, 0x73,
+			0x7b, 0x82, 0x7d, 0x72, 0x69, 0x64, 0x64, 0x63, 0x62, 0x5d, 0x76,
+			0x7f, 0xa2, 0x9e, 0x85, 0x70, 0x66, 0x89, 0x9c, 0xa9, 0x98, 0x8b,
+			0x82, 0x85, 0x8f, 0x97, 0x95, 0x82, 0x74, 0x75, 0x7b, 0x82, 0x79,
+			0x6f, 0x66, 0x66, 0x61, 0x64, 0x5b, 0x67, 0x7c, 0x88, 0xa5, 0x8e,
+			0x81, 0x68, 0x76, 0x91, 0xa2, 0xa5, 0x92, 0x8a, 0x83, 0x8b, 0x93,
+			0x99, 0x8e, 0x7c, 0x75, 0x79, 0x81, 0x80, 0x75, 0x6c, 0x66, 0x66,
+			0x62, 0x62, 0x5b, 0x72, 0x7d, 0x98, 0x9f, 0x84, 0x75, 0x67, 0x85,
+			0x98, 0xa4, 0x9a, 0x8d, 0x88, 0x86, 0x90, 0x96, 0x94, 0x85, 0x77,
+			0x76, 0x7a, 0x81, 0x7b, 0x76, 0x68, 0x63, 0x5f, 0x63, 0x61, 0x6a,
+			0x79, 0x87, 0xa0, 0x8d, 0x7d, 0x69, 0x78, 0x91, 0xa0, 0x9d, 0x8e,
+			0x89, 0x87, 0x8e, 0x95, 0x95, 0x8b, 0x7c, 0x76, 0x79, 0x7f, 0x7e,
+			0x75, 0x6b, 0x67, 0x61, 0x61, 0x60, 0x65, 0x7a, 0x7f, 0x9c, 0x8f,
+			0x85, 0x70, 0x73, 0x8c, 0x9a, 0xa2, 0x91, 0x8a, 0x84, 0x8c, 0x93,
+			0x96, 0x8e, 0x7f, 0x77, 0x77, 0x7d, 0x7e, 0x79, 0x6f, 0x69, 0x63,
+			0x60, 0x63, 0x64, 0x79, 0x7c, 0x96, 0x92, 0x84, 0x74, 0x70, 0x8a,
+			0x99, 0xa4, 0x94, 0x8d, 0x85, 0x8b, 0x93, 0x93, 0x8f, 0x80, 0x79,
+			0x78, 0x7c, 0x7c, 0x79, 0x6e, 0x65, 0x62, 0x64, 0x69, 0x67, 0x75,
+			0x7b, 0x94, 0x93, 0x84, 0x74, 0x74, 0x8a, 0x97, 0x9e, 0x92, 0x8d,
+			0x88, 0x8a, 0x90, 0x92, 0x8c, 0x81, 0x79, 0x79, 0x7d, 0x7a, 0x77,
+			0x6f, 0x67, 0x61, 0x63, 0x64, 0x6d, 0x76, 0x7d, 0x93, 0x8d, 0x84,
+			0x71, 0x77, 0x8b, 0x99, 0x9d, 0x93, 0x8c, 0x89, 0x8b, 0x90, 0x94,
+			0x8a, 0x81, 0x7a, 0x7a, 0x7d, 0x7a, 0x76, 0x6e, 0x67, 0x60, 0x64,
+			0x64, 0x6f, 0x79, 0x82, 0x93, 0x86, 0x80, 0x72, 0x7f, 0x8e, 0x9a,
+			0x98, 0x90, 0x8c, 0x89, 0x90, 0x90, 0x93, 0x87, 0x80, 0x7a, 0x7c,
+			0x7f, 0x7a, 0x74, 0x6c, 0x69, 0x64, 0x65, 0x66, 0x71, 0x7b, 0x85,
+			0x8f, 0x85, 0x7c, 0x76, 0x80, 0x91, 0x9a, 0x98, 0x8f, 0x8a, 0x8a,
+			0x91, 0x91, 0x8d, 0x83, 0x7f, 0x7c, 0x7d, 0x7d, 0x78, 0x71, 0x69,
+			0x69, 0x66, 0x69, 0x68, 0x77, 0x7d, 0x89, 0x89, 0x80, 0x79, 0x78,
+			0x89, 0x91, 0x97, 0x90, 0x8f, 0x8b, 0x8e, 0x8f, 0x8f, 0x8a, 0x84,
+			0x82, 0x7f, 0x80, 0x78, 0x75, 0x6e, 0x6e, 0x69, 0x69, 0x66, 0x6a,
+			0x77, 0x7e, 0x88, 0x80, 0x7d, 0x78, 0x7e, 0x8a, 0x91, 0x95, 0x8f,
+			0x8c, 0x8c, 0x93, 0x93, 0x8f, 0x86, 0x86, 0x84, 0x82, 0x7e, 0x77,
+			0x75, 0x71, 0x70, 0x69, 0x66, 0x65, 0x6f, 0x79, 0x80, 0x83, 0x7c,
+			0x79, 0x77, 0x83, 0x8b, 0x8f, 0x90, 0x8d, 0x8d, 0x8e, 0x93, 0x90,
+			0x8b, 0x88, 0x88, 0x85, 0x81, 0x7b, 0x77, 0x74, 0x71, 0x6d, 0x69,
+			0x69, 0x6a, 0x74, 0x79, 0x80, 0x7f, 0x7c, 0x79, 0x7b, 0x87, 0x8d,
+			0x91, 0x8d, 0x8d, 0x8c, 0x92, 0x94, 0x8f, 0x8b, 0x87, 0x89, 0x85,
+			0x80, 0x78, 0x76, 0x75, 0x72, 0x6a, 0x69, 0x6c, 0x70, 0x75, 0x76,
+			0x7d, 0x7c, 0x7b, 0x78, 0x7e, 0x88, 0x8f, 0x90, 0x8c, 0x8c, 0x8f,
+			0x94, 0x91, 0x8c, 0x89, 0x89, 0x87, 0x82, 0x7d, 0x78, 0x75, 0x72,
+			0x6e, 0x6b, 0x6e, 0x6f, 0x73, 0x75, 0x78, 0x7d, 0x7b, 0x7c, 0x7b,
+			0x83, 0x8a, 0x90, 0x8e, 0x8c, 0x8f, 0x92, 0x91, 0x8a, 0x8a, 0x8a,
+			0x8a, 0x82, 0x7c, 0x79, 0x77, 0x74, 0x6e, 0x6b, 0x6f, 0x73, 0x72,
+			0x72, 0x72, 0x7a, 0x7d, 0x7e, 0x7b, 0x7f, 0x86, 0x8c, 0x8f, 0x8d,
+			0x8e, 0x91, 0x93, 0x8c, 0x8a, 0x8a, 0x8b, 0x86, 0x80, 0x7b, 0x7a,
+			0x77, 0x73, 0x6d, 0x6e, 0x72, 0x72, 0x72, 0x73, 0x77, 0x7b, 0x7d,
+			0x7b, 0x7d, 0x83, 0x8b, 0x8b, 0x8c, 0x8e, 0x90, 0x8e, 0x8b, 0x8c,
+			0x8d, 0x8b, 0x84, 0x81, 0x7d, 0x7c, 0x76, 0x74, 0x70, 0x72, 0x73,
+			0x72, 0x6f, 0x70, 0x75, 0x7d, 0x81, 0x7d, 0x7b, 0x7f, 0x88, 0x8c,
+			0x8f, 0x8c, 0x8c, 0x8c, 0x8e, 0x8c, 0x8a, 0x86, 0x85, 0x83, 0x80,
+			0x7b, 0x76, 0x75, 0x74, 0x74, 0x72, 0x72, 0x70, 0x73, 0x76, 0x7c,
+			0x7f, 0x7e, 0x7d, 0x81, 0x87, 0x8b, 0x8c, 0x8b, 0x8a, 0x8b, 0x8c,
+			0x8a, 0x88, 0x85, 0x83, 0x80, 0x7d, 0x7c, 0x79, 0x76, 0x73, 0x72,
+			0x72, 0x72, 0x75, 0x79, 0x7e, 0x7e, 0x7c, 0x7c, 0x82, 0x87, 0x8a,
+			0x88, 0x88, 0x8b, 0x8c, 0x8b, 0x88, 0x87, 0x87, 0x85, 0x81, 0x7e,
+			0x7d, 0x7b, 0x78, 0x75, 0x74, 0x74, 0x74, 0x74, 0x77, 0x7b, 0x7c,
+			0x7c, 0x7c, 0x80, 0x83, 0x85, 0x87, 0x89, 0x89, 0x8a, 0x89, 0x88,
+			0x88, 0x88, 0x84, 0x81, 0x7f, 0x7f, 0x7e, 0x7b, 0x78, 0x76, 0x76,
+			0x77, 0x77, 0x77, 0x79, 0x7a, 0x7b, 0x7d, 0x80, 0x80, 0x82, 0x84,
+			0x87, 0x87, 0x88, 0x87, 0x87, 0x88, 0x87, 0x85, 0x82, 0x81, 0x80,
+			0x80, 0x7e, 0x7b, 0x79, 0x79, 0x79, 0x78, 0x78, 0x79, 0x7b, 0x7c,
+			0x7c, 0x7c, 0x7e, 0x81, 0x83, 0x83, 0x84, 0x85, 0x86, 0x86, 0x86,
+			0x85, 0x85, 0x84, 0x82, 0x80, 0x80, 0x80, 0x7f, 0x7c, 0x7a, 0x7a,
+			0x7b, 0x7b, 0x7a, 0x7a, 0x7b, 0x7d, 0x7d, 0x7d, 0x7f, 0x81, 0x82,
+			0x82, 0x83, 0x84, 0x85, 0x85, 0x84, 0x83, 0x84, 0x84, 0x82, 0x80,
+			0x7f, 0x80, 0x80, 0x7e, 0x7c, 0x7b, 0x7c, 0x7c, 0x7c, 0x7b, 0x7c,
+			0x7d, 0x7d, 0x7d, 0x7e, 0x80, 0x81, 0x81, 0x81, 0x82, 0x83, 0x84,
+			0x83, 0x82, 0x82, 0x82, 0x82, 0x81, 0x80, 0x80, 0x7f, 0x7e, 0x7d,
+			0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x7f,
+			0x80, 0x80, 0x81, 0x81, 0x81, 0x82, 0x82, 0x82, 0x81, 0x81, 0x81,
+			0x81, 0x81, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x81, 0x81,
+			0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+		},
+		{ // 9
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80,
+			0x81, 0x81, 0x81, 0x81, 0x82, 0x82, 0x82, 0x82, 0x82, 0x81, 0x81,
+			0x81, 0x80, 0x7f, 0x7f, 0x7e, 0x7d, 0x7d, 0x7c, 0x7c, 0x7b, 0x7b,
+			0x7b, 0x7b, 0x7c, 0x7c, 0x7d, 0x7d, 0x7e, 0x7f, 0x7f, 0x80, 0x81,
+			0x82, 0x82, 0x83, 0x83, 0x83, 0x83, 0x83, 0x83, 0x82, 0x82, 0x81,
+			0x80, 0x7f, 0x7e, 0x7e, 0x7d, 0x7d, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c,
+			0x7c, 0x7d, 0x7e, 0x7e, 0x7f, 0x80, 0x80, 0x81, 0x81, 0x82, 0x82,
+			0x82, 0x82, 0x82, 0x82, 0x82, 0x81, 0x81, 0x80, 0x80, 0x7f, 0x7f,
+			0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e,
+			0x7e, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7e,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+			0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x7f,
+			0x80, 0x80, 0x80, 0x81, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x81,
+			0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x80, 0x7f, 0x7f, 0x7f, 0x7d,
+			0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7d, 0x7e, 0x7e, 0x7f, 0x80,
+			0x7f, 0x81, 0x7d, 0x7f, 0x7e, 0x7f, 0x81, 0x80, 0x81, 0x80, 0x80,
+			0x7f, 0x80, 0x82, 0x81, 0x82, 0x82, 0x80, 0x81, 0x7f, 0x81, 0x7f,
+			0x82, 0x7f, 0x80, 0x7f, 0x7c, 0x7e, 0x7e, 0x7e, 0x7d, 0x7e, 0x7c,
+			0x7c, 0x7c, 0x7d, 0x7b, 0x80, 0x7c, 0x7e, 0x7d, 0x7e, 0x7c, 0x7f,
+			0x7f, 0x7f, 0x81, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x82, 0x80, 0x80,
+			0x80, 0x81, 0x7e, 0x81, 0x80, 0x7f, 0x80, 0x80, 0x7e, 0x7f, 0x80,
+			0x7e, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x80, 0x81,
+			0x80, 0x81, 0x80, 0x81, 0x80, 0x80, 0x81, 0x80, 0x7f, 0x82, 0x7e,
+			0x80, 0x80, 0x7e, 0x80, 0x7e, 0x80, 0x7d, 0x80, 0x7d, 0x80, 0x7e,
+			0x80, 0x7d, 0x81, 0x7e, 0x7d, 0x81, 0x7c, 0x80, 0x7f, 0x7e, 0x80,
+			0x7d, 0x81, 0x7e, 0x7d, 0x82, 0x7b, 0x81, 0x7f, 0x7f, 0x7d, 0x83,
+			0x7e, 0x7d, 0x85, 0x7b, 0x82, 0x81, 0x7f, 0x7f, 0x81, 0x82, 0x7a,
+			0x87, 0x7c, 0x82, 0x80, 0x82, 0x7d, 0x80, 0x85, 0x76, 0x8a, 0x79,
+			0x83, 0x7d, 0x81, 0x80, 0x7a, 0x87, 0x78, 0x80, 0x83, 0x7a, 0x7f,
+			0x82, 0x7b, 0x7d, 0x83, 0x7c, 0x7b, 0x86, 0x78, 0x7f, 0x81, 0x7d,
+			0x7b, 0x83, 0x7c, 0x7c, 0x83, 0x7d, 0x7c, 0x83, 0x7e, 0x7c, 0x84,
+			0x7b, 0x82, 0x7e, 0x83, 0x7c, 0x84, 0x7e, 0x82, 0x7e, 0x82, 0x82,
+			0x7b, 0x87, 0x7c, 0x80, 0x82, 0x7f, 0x7e, 0x84, 0x7e, 0x7f, 0x80,
+			0x83, 0x79, 0x84, 0x80, 0x79, 0x86, 0x7c, 0x7d, 0x83, 0x7d, 0x7d,
+			0x80, 0x80, 0x79, 0x84, 0x7b, 0x7e, 0x80, 0x7c, 0x7f, 0x7e, 0x80,
+			0x7b, 0x82, 0x7b, 0x81, 0x7d, 0x81, 0x7c, 0x81, 0x7c, 0x7f, 0x81,
+			0x7c, 0x80, 0x82, 0x7b, 0x83, 0x7e, 0x7e, 0x82, 0x7c, 0x83, 0x7c,
+			0x85, 0x7a, 0x85, 0x7e, 0x81, 0x81, 0x81, 0x82, 0x7d, 0x86, 0x7a,
+			0x85, 0x7f, 0x80, 0x84, 0x7b, 0x83, 0x7e, 0x7e, 0x81, 0x7b, 0x82,
+			0x7c, 0x7f, 0x7f, 0x7b, 0x81, 0x79, 0x84, 0x78, 0x84, 0x7a, 0x7e,
+			0x80, 0x7a, 0x84, 0x7a, 0x84, 0x7d, 0x7c, 0x81, 0x7c, 0x7c, 0x82,
+			0x7b, 0x82, 0x7b, 0x84, 0x78, 0x86, 0x79, 0x82, 0x81, 0x7f, 0x80,
+			0x7f, 0x86, 0x75, 0x8c, 0x7b, 0x81, 0x84, 0x7d, 0x81, 0x81, 0x7b,
+			0x83, 0x7d, 0x82, 0x7d, 0x83, 0x82, 0x7c, 0x84, 0x7e, 0x80, 0x82,
+			0x7b, 0x89, 0x78, 0x83, 0x7f, 0x7e, 0x80, 0x7b, 0x87, 0x75, 0x88,
+			0x75, 0x82, 0x7d, 0x7c, 0x80, 0x82, 0x7e, 0x7f, 0x84, 0x7b, 0x81,
+			0x7f, 0x80, 0x7f, 0x81, 0x80, 0x7b, 0x86, 0x76, 0x85, 0x7b, 0x7f,
+			0x83, 0x77, 0x84, 0x7a, 0x80, 0x7a, 0x88, 0x78, 0x88, 0x7c, 0x86,
+			0x7c, 0x84, 0x80, 0x83, 0x82, 0x7f, 0x88, 0x7a, 0x8a, 0x7c, 0x85,
+			0x80, 0x84, 0x78, 0x88, 0x7a, 0x7e, 0x84, 0x7b, 0x81, 0x7c, 0x80,
+			0x7c, 0x7c, 0x80, 0x7b, 0x80, 0x7a, 0x7f, 0x7c, 0x7c, 0x84, 0x7b,
+			0x85, 0x7f, 0x81, 0x7c, 0x85, 0x7a, 0x86, 0x7f, 0x82, 0x82, 0x7f,
+			0x81, 0x7f, 0x80, 0x7e, 0x84, 0x7b, 0x81, 0x7f, 0x7a, 0x80, 0x80,
+			0x7a, 0x88, 0x7a, 0x7f, 0x81, 0x7a, 0x7c, 0x82, 0x78, 0x80, 0x7f,
+			0x7a, 0x7f, 0x7a, 0x7c, 0x81, 0x75, 0x80, 0x82, 0x73, 0x82, 0x7d,
+			0x7a, 0x7d, 0x84, 0x77, 0x84, 0x7a, 0x7e, 0x81, 0x7a, 0x7c, 0x84,
+			0x7a, 0x80, 0x86, 0x7a, 0x84, 0x82, 0x7b, 0x84, 0x82, 0x78, 0x8a,
+			0x78, 0x7e, 0x85, 0x76, 0x82, 0x80, 0x7c, 0x7f, 0x85, 0x76, 0x82,
+			0x83, 0x73, 0x8d, 0x7a, 0x7d, 0x89, 0x76, 0x81, 0x7d, 0x7e, 0x7c,
+			0x7d, 0x83, 0x76, 0x85, 0x75, 0x89, 0x77, 0x81, 0x88, 0x76, 0x87,
+			0x7d, 0x80, 0x7f, 0x85, 0x7a, 0x84, 0x84, 0x72, 0x89, 0x7f, 0x6f,
+			0x8e, 0x73, 0x7a, 0x82, 0x79, 0x78, 0x87, 0x76, 0x80, 0x86, 0x77,
+			0x85, 0x82, 0x7c, 0x86, 0x81, 0x7b, 0x8c, 0x74, 0x89, 0x7b, 0x81,
+			0x81, 0x7d, 0x81, 0x7c, 0x84, 0x75, 0x8b, 0x7b, 0x7c, 0x8b, 0x7c,
+			0x7e, 0x87, 0x80, 0x7c, 0x8b, 0x78, 0x84, 0x80, 0x78, 0x84, 0x73,
+			0x83, 0x73, 0x80, 0x76, 0x7b, 0x78, 0x79, 0x80, 0x75, 0x87, 0x78,
+			0x83, 0x7c, 0x85, 0x77, 0x87, 0x7a, 0x80, 0x81, 0x7e, 0x7f, 0x7f,
+			0x82, 0x7b, 0x8b, 0x76, 0x8e, 0x7c, 0x83, 0x84, 0x82, 0x7e, 0x85,
+			0x7e, 0x7c, 0x85, 0x77, 0x83, 0x7d, 0x80, 0x7a, 0x87, 0x77, 0x86,
+			0x7f, 0x7c, 0x89, 0x73, 0x8c, 0x74, 0x84, 0x7e, 0x7a, 0x85, 0x76,
+			0x88, 0x76, 0x88, 0x7b, 0x81, 0x86, 0x79, 0x89, 0x7d, 0x82, 0x80,
+			0x84, 0x7a, 0x81, 0x81, 0x74, 0x84, 0x77, 0x79, 0x7c, 0x77, 0x77,
+			0x78, 0x77, 0x76, 0x77, 0x77, 0x78, 0x76, 0x79, 0x7c, 0x77, 0x82,
+			0x82, 0x80, 0x8e, 0x88, 0x91, 0x91, 0x97, 0x98, 0x98, 0xa0, 0x98,
+			0x9b, 0x9a, 0x93, 0x8f, 0x8b, 0x80, 0x7c, 0x72, 0x6e, 0x62, 0x5f,
+			0x5b, 0x50, 0x57, 0x4c, 0x54, 0x51, 0x56, 0x58, 0x60, 0x66, 0x6e,
+			0x7c, 0x7d, 0x94, 0x91, 0xa3, 0xa8, 0xae, 0xb9, 0xb6, 0xbe, 0xb8,
+			0xb7, 0xb1, 0xab, 0x9e, 0x98, 0x90, 0x80, 0x80, 0x71, 0x70, 0x69,
+			0x66, 0x64, 0x5c, 0x5f, 0x57, 0x56, 0x4f, 0x54, 0x47, 0x4e, 0x4d,
+			0x49, 0x55, 0x58, 0x62, 0x6d, 0x84, 0x87, 0xa2, 0xaa, 0xb4, 0xc3,
+			0xc3, 0xc9, 0xc4, 0xc3, 0xb4, 0xb0, 0x9e, 0x97, 0x88, 0x7c, 0x7a,
+			0x6d, 0x6d, 0x6e, 0x6b, 0x6c, 0x74, 0x6c, 0x72, 0x6d, 0x68, 0x66,
+			0x5d, 0x59, 0x55, 0x4e, 0x48, 0x4f, 0x47, 0x52, 0x63, 0x60, 0x82,
+			0x86, 0x98, 0xaf, 0xaf, 0xc5, 0xc4, 0xc8, 0xc8, 0xbf, 0xb4, 0xa9,
+			0x99, 0x89, 0x82, 0x70, 0x6f, 0x67, 0x66, 0x65, 0x6f, 0x70, 0x72,
+			0x86, 0x71, 0x87, 0x7b, 0x73, 0x77, 0x65, 0x61, 0x5a, 0x50, 0x46,
+			0x4b, 0x44, 0x4a, 0x61, 0x61, 0x77, 0x94, 0x8d, 0xb4, 0xb7, 0xbd,
+			0xce, 0xc5, 0xc4, 0xbf, 0xb3, 0xa1, 0x9e, 0x83, 0x80, 0x76, 0x66,
+			0x6a, 0x62, 0x64, 0x6e, 0x71, 0x7e, 0x83, 0x86, 0x89, 0x82, 0x80,
+			0x76, 0x6e, 0x66, 0x5e, 0x51, 0x50, 0x47, 0x3d, 0x49, 0x48, 0x4e,
+			0x6d, 0x73, 0x84, 0xa4, 0xa4, 0xb9, 0xc4, 0xc4, 0xc8, 0xc7, 0xbb,
+			0xb6, 0xa6, 0x97, 0x8b, 0x7a, 0x72, 0x6c, 0x66, 0x66, 0x69, 0x69,
+			0x75, 0x7a, 0x81, 0x8c, 0x8b, 0x8c, 0x90, 0x81, 0x7f, 0x74, 0x67,
+			0x63, 0x57, 0x52, 0x4c, 0x49, 0x43, 0x47, 0x4e, 0x52, 0x61, 0x7f,
+			0x78, 0x9f, 0xae, 0xa6, 0xc9, 0xbc, 0xbf, 0xc3, 0xb8, 0xad, 0xa8,
+			0x97, 0x89, 0x82, 0x73, 0x71, 0x6b, 0x69, 0x71, 0x71, 0x77, 0x80,
+			0x82, 0x89, 0x8f, 0x8e, 0x8d, 0x8b, 0x7d, 0x76, 0x6f, 0x5e, 0x5d,
+			0x55, 0x53, 0x51, 0x4b, 0x52, 0x4d, 0x4e, 0x63, 0x56, 0x75, 0x89,
+			0x75, 0xb1, 0xa1, 0xad, 0xc7, 0xb5, 0xc1, 0xbc, 0xb5, 0xa5, 0xa5,
+			0x90, 0x82, 0x82, 0x6f, 0x72, 0x70, 0x70, 0x75, 0x78, 0x7f, 0x85,
+			0x87, 0x8c, 0x8f, 0x8b, 0x88, 0x87, 0x79, 0x75, 0x6e, 0x63, 0x62,
+			0x5e, 0x5b, 0x5e, 0x5d, 0x59, 0x5e, 0x58, 0x54, 0x5c, 0x59, 0x64,
+			0x89, 0x74, 0x9b, 0xb0, 0x99, 0xc4, 0xb8, 0xb7, 0xc0, 0xae, 0xa5,
+			0x9f, 0x93, 0x81, 0x7e, 0x77, 0x6c, 0x72, 0x71, 0x76, 0x7c, 0x81,
+			0x88, 0x8b, 0x8d, 0x8a, 0x85, 0x83, 0x79, 0x76, 0x74, 0x71, 0x6b,
+			0x69, 0x6c, 0x67, 0x6c, 0x65, 0x68, 0x66, 0x63, 0x5e, 0x57, 0x5a,
+			0x5c, 0x4f, 0x7d, 0x7a, 0x81, 0xb7, 0x9e, 0xb8, 0xc3, 0xbc, 0xbe,
+			0xb5, 0xab, 0x97, 0x91, 0x7d, 0x70, 0x76, 0x6a, 0x6e, 0x77, 0x7a,
+			0x84, 0x86, 0x8e, 0x90, 0x8d, 0x8e, 0x83, 0x79, 0x74, 0x6e, 0x69,
+			0x6f, 0x6c, 0x71, 0x77, 0x71, 0x79, 0x74, 0x71, 0x71, 0x65, 0x66,
+			0x54, 0x5a, 0x4a, 0x50, 0x59, 0x5d, 0x92, 0x7a, 0xb0, 0xbb, 0xad,
+			0xca, 0xb7, 0xbb, 0xae, 0x9f, 0x93, 0x7e, 0x7e, 0x6e, 0x6f, 0x78,
+			0x78, 0x85, 0x89, 0x91, 0x93, 0x91, 0x92, 0x8a, 0x82, 0x79, 0x71,
+			0x69, 0x64, 0x6c, 0x6b, 0x78, 0x7a, 0x80, 0x7f, 0x7f, 0x7d, 0x73,
+			0x6e, 0x62, 0x5a, 0x5b, 0x50, 0x51, 0x49, 0x50, 0x64, 0x6f, 0x9c,
+			0x97, 0xbc, 0xc3, 0xb6, 0xc2, 0xab, 0xa6, 0x99, 0x8a, 0x83, 0x74,
+			0x7c, 0x79, 0x7a, 0x89, 0x87, 0x92, 0x93, 0x93, 0x8d, 0x85, 0x80,
+			0x78, 0x71, 0x71, 0x69, 0x6c, 0x6f, 0x75, 0x7b, 0x80, 0x89, 0x82,
+			0x80, 0x7d, 0x73, 0x6c, 0x6b, 0x64, 0x60, 0x57, 0x64, 0x5b, 0x61,
+			0x5f, 0x5b, 0x6a, 0x7b, 0x9e, 0x96, 0xb3, 0xb3, 0xae, 0xaf, 0xa0,
+			0x9d, 0x8e, 0x8c, 0x88, 0x82, 0x8a, 0x87, 0x8c, 0x8d, 0x8c, 0x8e,
+			0x86, 0x8b, 0x80, 0x7c, 0x7c, 0x74, 0x74, 0x73, 0x78, 0x79, 0x76,
+			0x7c, 0x7e, 0x80, 0x7e, 0x77, 0x78, 0x73, 0x6e, 0x69, 0x68, 0x6b,
+			0x6a, 0x6e, 0x67, 0x66, 0x66, 0x65, 0x5a, 0x53, 0x65, 0x8b, 0x96,
+			0x9a, 0xb7, 0xb5, 0xaf, 0xa4, 0xa3, 0x98, 0x89, 0x89, 0x88, 0x85,
+			0x84, 0x8b, 0x91, 0x8f, 0x90, 0x8b, 0x86, 0x85, 0x7b, 0x79, 0x76,
+			0x78, 0x77, 0x79, 0x78, 0x7c, 0x7e, 0x7d, 0x7a, 0x7b, 0x75, 0x76,
+			0x70, 0x6f, 0x72, 0x70, 0x71, 0x71, 0x73, 0x6f, 0x6f, 0x68, 0x63,
+			0x62, 0x61, 0x5f, 0x5d, 0x57, 0x92, 0xa1, 0xa6, 0xb8, 0xb9, 0xbc,
+			0x97, 0x97, 0x90, 0x88, 0x81, 0x82, 0x91, 0x89, 0x92, 0x93, 0x94,
+			0x96, 0x85, 0x86, 0x7a, 0x74, 0x73, 0x71, 0x74, 0x77, 0x7e, 0x7d,
+			0x80, 0x7d, 0x7c, 0x78, 0x70, 0x7a, 0x79, 0x7a, 0x76, 0x75, 0x78,
+			0x73, 0x73, 0x70, 0x70, 0x6b, 0x65, 0x5f, 0x5f, 0x61, 0x5a, 0x55,
+			0x5e, 0x8a, 0xae, 0xa8, 0xaf, 0xb3, 0xb2, 0x98, 0x82, 0x86, 0x82,
+			0x89, 0x85, 0x92, 0x9a, 0x98, 0x98, 0x91, 0x90, 0x84, 0x79, 0x73,
+			0x73, 0x78, 0x79, 0x7d, 0x81, 0x83, 0x80, 0x7b, 0x77, 0x72, 0x73,
+			0x73, 0x7b, 0x79, 0x7d, 0x83, 0x81, 0x84, 0x7a, 0x7c, 0x75, 0x71,
+			0x70, 0x6d, 0x70, 0x6f, 0x6a, 0x69, 0x6b, 0x6e, 0x6f, 0x6c, 0x66,
+			0x6e, 0x81, 0x91, 0xa5, 0xa8, 0xab, 0xa5, 0x9b, 0x91, 0x88, 0x8a,
+			0x8a, 0x8e, 0x8f, 0x92, 0x94, 0x8f, 0x8a, 0x84, 0x82, 0x7b, 0x74,
+			0x77, 0x7b, 0x7f, 0x7e, 0x7f, 0x7e, 0x7c, 0x78, 0x77, 0x74, 0x76,
+			0x77, 0x81, 0x87, 0x88, 0x82, 0x77, 0x75, 0x6f, 0x70, 0x6c, 0x6f,
+			0x71, 0x6f, 0x66, 0x62, 0x66, 0x6a, 0x64, 0x5a, 0x60, 0x74, 0xa3,
+			0xb4, 0xb1, 0xa4, 0x9f, 0x9d, 0x85, 0x79, 0x7b, 0x90, 0x9a, 0x99,
+			0x93, 0x96, 0x98, 0x90, 0x83, 0x77, 0x77, 0x79, 0x79, 0x79, 0x7c,
+			0x82, 0x82, 0x7c, 0x79, 0x76, 0x75, 0x74, 0x76, 0x76, 0x7a, 0x7c,
+			0x7f, 0x82, 0x7f, 0x84, 0x7f, 0x82, 0x81, 0x7e, 0x7b, 0x71, 0x75,
+			0x74, 0x7a, 0x78, 0x74, 0x77, 0x71, 0x6e, 0x65, 0x66, 0x6b, 0x6e,
+			0x6f, 0x6e, 0x7c, 0x90, 0xa8, 0xb1, 0xaa, 0x9d, 0x8f, 0x89, 0x83,
+			0x82, 0x88, 0x92, 0x99, 0x99, 0x92, 0x8c, 0x85, 0x80, 0x7d, 0x7b,
+			0x7c, 0x7b, 0x7e, 0x7f, 0x7f, 0x7c, 0x7a, 0x79, 0x79, 0x77, 0x74,
+			0x76, 0x78, 0x7c, 0x7b, 0x7c, 0x81, 0x86, 0x88, 0x82, 0x7c, 0x75,
+			0x73, 0x70, 0x72, 0x77, 0x79, 0x79, 0x71, 0x6e, 0x68, 0x69, 0x6b,
+			0x69, 0x64, 0x60, 0x75, 0x9a, 0xb8, 0xba, 0xa5, 0x8f, 0x86, 0x83,
+			0x7f, 0x7d, 0x85, 0x95, 0xa1, 0x9f, 0x93, 0x88, 0x84, 0x83, 0x7d,
+			0x77, 0x76, 0x7d, 0x83, 0x83, 0x7f, 0x7c, 0x7b, 0x7c, 0x7a, 0x76,
+			0x73, 0x74, 0x7b, 0x7d, 0x7c, 0x77, 0x77, 0x79, 0x7a, 0x7a, 0x79,
+			0x7b, 0x7d, 0x83, 0x87, 0x8c, 0x8a, 0x84, 0x7c, 0x74, 0x73, 0x74,
+			0x7b, 0x7e, 0x7f, 0x7c, 0x76, 0x6f, 0x69, 0x6a, 0x6f, 0x72, 0x72,
+			0x6e, 0x75, 0x87, 0xa5, 0xb4, 0xac, 0x95, 0x7e, 0x7c, 0x7d, 0x84,
+			0x83, 0x8a, 0x94, 0x9b, 0x99, 0x8b, 0x7f, 0x76, 0x79, 0x7b, 0x7c,
+			0x7c, 0x7c, 0x80, 0x82, 0x81, 0x7c, 0x78, 0x77, 0x78, 0x79, 0x78,
+			0x77, 0x78, 0x79, 0x7d, 0x7d, 0x7b, 0x7a, 0x7d, 0x80, 0x80, 0x7c,
+			0x7c, 0x7e, 0x81, 0x82, 0x83, 0x8b, 0x8e, 0x8c, 0x7a, 0x6f, 0x6c,
+			0x7a, 0x86, 0x89, 0x84, 0x7c, 0x7b, 0x77, 0x75, 0x6d, 0x6c, 0x6e,
+			0x76, 0x78, 0x72, 0x69, 0x6f, 0x8d, 0xae, 0xbc, 0xa6, 0x85, 0x6f,
+			0x73, 0x82, 0x89, 0x8a, 0x86, 0x8d, 0x94, 0x95, 0x8a, 0x7a, 0x75,
+			0x76, 0x7e, 0x7f, 0x7c, 0x7a, 0x7a, 0x7f, 0x82, 0x81, 0x7c, 0x76,
+			0x76, 0x79, 0x7c, 0x7a, 0x78, 0x78, 0x7b, 0x7f, 0x80, 0x7f, 0x7b,
+			0x7a, 0x7c, 0x7e, 0x7f, 0x7f, 0x80, 0x81, 0x82, 0x82, 0x80, 0x7f,
+			0x7f, 0x81, 0x81, 0x80, 0x7f, 0x80, 0x83, 0x83, 0x83, 0x82, 0x81,
+			0x82, 0x82, 0x83, 0x81, 0x81, 0x80, 0x85, 0x8a, 0x8a, 0x89, 0x82,
+			0x7e, 0x76, 0x76, 0x75, 0x7a, 0x7e, 0x7f, 0x7e, 0x79, 0x75, 0x70,
+			0x6f, 0x6e, 0x6f, 0x71, 0x75, 0x76, 0x75, 0x71, 0x78, 0x87, 0x9d,
+			0xa7, 0xa1, 0x8f, 0x7a, 0x74, 0x79, 0x85, 0x8c, 0x8c, 0x8a, 0x8a,
+			0x8d, 0x8b, 0x85, 0x7a, 0x74, 0x74, 0x7a, 0x81, 0x83, 0x83, 0x80,
+			0x7f, 0x7f, 0x7e, 0x7b, 0x76, 0x71, 0x74, 0x79, 0x7f, 0x81, 0x7f,
+			0x7d, 0x7a, 0x7a, 0x7c, 0x7c, 0x7d, 0x7b, 0x7d, 0x7f, 0x82, 0x83,
+			0x81, 0x7f, 0x7d, 0x7e, 0x80, 0x82, 0x81, 0x7f, 0x7e, 0x80, 0x82,
+			0x84, 0x82, 0x81, 0x7f, 0x7f, 0x7f, 0x82, 0x80, 0x81, 0x7e, 0x81,
+			0x80, 0x81, 0x7e, 0x83, 0x80, 0x83, 0x7f, 0x87, 0x93, 0x94, 0x92,
+			0x76, 0x6e, 0x64, 0x77, 0x7f, 0x89, 0x82, 0x78, 0x6e, 0x66, 0x6d,
+			0x6c, 0x73, 0x71, 0x70, 0x6e, 0x69, 0x76, 0x8c, 0xa8, 0xb7, 0xa8,
+			0x8f, 0x6f, 0x69, 0x6e, 0x86, 0x93, 0x99, 0x91, 0x88, 0x88, 0x87,
+			0x89, 0x7e, 0x76, 0x6d, 0x70, 0x79, 0x85, 0x8b, 0x87, 0x80, 0x79,
+			0x79, 0x7a, 0x7a, 0x75, 0x72, 0x73, 0x7a, 0x82, 0x86, 0x84, 0x7d,
+			0x77, 0x76, 0x78, 0x7c, 0x7e, 0x7d, 0x7d, 0x7d, 0x80, 0x83, 0x84,
+			0x81, 0x7e, 0x7b, 0x7c, 0x7f, 0x81, 0x81, 0x80, 0x7e, 0x7e, 0x7f,
+			0x81, 0x82, 0x81, 0x81, 0x80, 0x81, 0x80, 0x82, 0x82, 0x82, 0x82,
+			0x80, 0x81, 0x81, 0x82, 0x82, 0x81, 0x7f, 0x7e, 0x7f, 0x80, 0x82,
+			0x82, 0x80, 0x7f, 0x7e, 0x7f, 0x80, 0x81, 0x80, 0x7e, 0x7e, 0x7f,
+			0x84, 0x86, 0x89, 0x86, 0x81, 0x7b, 0x78, 0x7b, 0x7d, 0x82, 0x81,
+			0x80, 0x7b, 0x79, 0x76, 0x75, 0x76, 0x75, 0x76, 0x75, 0x76, 0x75,
+			0x77, 0x76, 0x76, 0x74, 0x74, 0x79, 0x84, 0x95, 0xa2, 0xa8, 0x9c,
+			0x8c, 0x78, 0x72, 0x75, 0x82, 0x8e, 0x92, 0x8f, 0x88, 0x85, 0x83,
+			0x83, 0x80, 0x7c, 0x76, 0x73, 0x74, 0x7a, 0x81, 0x86, 0x84, 0x80,
+			0x79, 0x75, 0x74, 0x76, 0x79, 0x7b, 0x7c, 0x7c, 0x7e, 0x7f, 0x81,
+			0x7f, 0x7e, 0x7d, 0x7d, 0x7d, 0x7f, 0x80, 0x82, 0x81, 0x81, 0x7f,
+			0x80, 0x81, 0x81, 0x82, 0x81, 0x86, 0x87, 0x8b, 0x84, 0x7f, 0x77,
+			0x76, 0x78, 0x7d, 0x84, 0x84, 0x82, 0x7a, 0x77, 0x74, 0x77, 0x79,
+			0x79, 0x78, 0x76, 0x76, 0x76, 0x79, 0x78, 0x76, 0x72, 0x72, 0x7d,
+			0x8f, 0xa4, 0xab, 0xa6, 0x91, 0x7c, 0x6f, 0x70, 0x7c, 0x89, 0x92,
+			0x8f, 0x88, 0x7f, 0x7d, 0x7f, 0x83, 0x81, 0x7c, 0x75, 0x72, 0x74,
+			0x7b, 0x83, 0x87, 0x86, 0x80, 0x79, 0x75, 0x75, 0x78, 0x7d, 0x7f,
+			0x80, 0x7e, 0x7e, 0x7f, 0x80, 0x82, 0x81, 0x80, 0x7c, 0x7f, 0x82,
+			0x88, 0x89, 0x86, 0x80, 0x79, 0x78, 0x79, 0x80, 0x83, 0x85, 0x80,
+			0x7b, 0x76, 0x76, 0x77, 0x79, 0x7a, 0x78, 0x76, 0x73, 0x73, 0x76,
+			0x77, 0x78, 0x74, 0x76, 0x80, 0x93, 0xa7, 0xaf, 0xaa, 0x94, 0x7e,
+			0x6d, 0x6e, 0x78, 0x88, 0x93, 0x93, 0x8c, 0x82, 0x7e, 0x7d, 0x80,
+			0x81, 0x7e, 0x79, 0x72, 0x72, 0x75, 0x7e, 0x85, 0x88, 0x84, 0x7d,
+			0x77, 0x75, 0x76, 0x7a, 0x7d, 0x80, 0x80, 0x7f, 0x7e, 0x7d, 0x80,
+			0x81, 0x88, 0x89, 0x8c, 0x85, 0x7f, 0x76, 0x72, 0x76, 0x7b, 0x85,
+			0x86, 0x87, 0x7c, 0x77, 0x71, 0x71, 0x73, 0x73, 0x76, 0x73, 0x76,
+			0x72, 0x72, 0x6f, 0x75, 0x84, 0x98, 0xad, 0xb2, 0xac, 0x94, 0x7f,
+			0x6d, 0x6d, 0x7a, 0x88, 0x94, 0x94, 0x8f, 0x84, 0x80, 0x7e, 0x81,
+			0x82, 0x7f, 0x79, 0x72, 0x70, 0x74, 0x7d, 0x85, 0x89, 0x86, 0x80,
+			0x77, 0x73, 0x74, 0x78, 0x7e, 0x81, 0x84, 0x84, 0x86, 0x85, 0x84,
+			0x80, 0x7c, 0x78, 0x77, 0x7a, 0x7d, 0x81, 0x82, 0x81, 0x7d, 0x7a,
+			0x77, 0x75, 0x74, 0x72, 0x71, 0x72, 0x72, 0x76, 0x75, 0x74, 0x70,
+			0x77, 0x85, 0x9d, 0xb0, 0xb7, 0xaf, 0x96, 0x7f, 0x6c, 0x6d, 0x75,
+			0x86, 0x91, 0x96, 0x92, 0x89, 0x84, 0x80, 0x80, 0x7f, 0x7d, 0x78,
+			0x74, 0x70, 0x73, 0x78, 0x80, 0x86, 0x87, 0x85, 0x7f, 0x7b, 0x78,
+			0x7b, 0x7d, 0x81, 0x82, 0x80, 0x7d, 0x7a, 0x7b, 0x7c, 0x7f, 0x7f,
+			0x7e, 0x7b, 0x78, 0x74, 0x72, 0x72, 0x71, 0x73, 0x74, 0x76, 0x76,
+			0x73, 0x70, 0x6f, 0x7a, 0x8d, 0xa8, 0xb9, 0xbe, 0xae, 0x94, 0x7a,
+			0x69, 0x6b, 0x76, 0x88, 0x93, 0x96, 0x8f, 0x87, 0x7f, 0x7c, 0x7d,
+			0x7e, 0x7e, 0x7b, 0x76, 0x72, 0x73, 0x78, 0x80, 0x89, 0x8f, 0x8f,
+			0x88, 0x7d, 0x72, 0x6c, 0x6d, 0x74, 0x7e, 0x84, 0x86, 0x80, 0x79,
+			0x72, 0x6e, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x6d, 0x6c, 0x6c, 0x78,
+			0x8c, 0xa9, 0xbe, 0xc6, 0xb9, 0x9d, 0x81, 0x6b, 0x69, 0x71, 0x83,
+			0x90, 0x98, 0x95, 0x8f, 0x87, 0x82, 0x7f, 0x7e, 0x7c, 0x79, 0x75,
+			0x73, 0x77, 0x7e, 0x88, 0x8c, 0x8c, 0x84, 0x79, 0x6f, 0x6b, 0x6d,
+			0x72, 0x78, 0x79, 0x77, 0x71, 0x6d, 0x6a, 0x6c, 0x6e, 0x6f, 0x6b,
+			0x67, 0x6b, 0x7d, 0x9c, 0xbb, 0xcd, 0xc8, 0xb1, 0x8f, 0x74, 0x68,
+			0x6d, 0x7b, 0x89, 0x93, 0x93, 0x8f, 0x8b, 0x89, 0x88, 0x87, 0x83,
+			0x7d, 0x77, 0x72, 0x73, 0x79, 0x82, 0x88, 0x89, 0x84, 0x7c, 0x75,
+			0x70, 0x71, 0x72, 0x74, 0x73, 0x71, 0x6d, 0x6a, 0x6a, 0x6b, 0x6c,
+			0x69, 0x66, 0x69, 0x77, 0x91, 0xaf, 0xc6, 0xca, 0xb9, 0x9c, 0x7e,
+			0x6e, 0x6d, 0x79, 0x85, 0x8e, 0x90, 0x8d, 0x8a, 0x8a, 0x8d, 0x8e,
+			0x8a, 0x82, 0x79, 0x71, 0x6f, 0x70, 0x7a, 0x82, 0x8c, 0x8c, 0x89,
+			0x7d, 0x72, 0x6c, 0x68, 0x6d, 0x6e, 0x74, 0x71, 0x70, 0x69, 0x67,
+			0x65, 0x64, 0x63, 0x66, 0x73, 0x8a, 0xa9, 0xc0, 0xca, 0xbe, 0xa7,
+			0x89, 0x76, 0x6e, 0x75, 0x7f, 0x8a, 0x8d, 0x8c, 0x89, 0x89, 0x8e,
+			0x91, 0x91, 0x8a, 0x7f, 0x73, 0x6d, 0x6d, 0x77, 0x80, 0x8a, 0x89,
+			0x87, 0x7b, 0x74, 0x6e, 0x6f, 0x70, 0x71, 0x71, 0x6c, 0x6a, 0x64,
+			0x65, 0x61, 0x63, 0x60, 0x69, 0x78, 0x96, 0xb3, 0xc9, 0xcc, 0xba,
+			0x9f, 0x80, 0x72, 0x70, 0x7c, 0x86, 0x8d, 0x8b, 0x86, 0x83, 0x85,
+			0x8d, 0x93, 0x96, 0x8d, 0x82, 0x72, 0x6c, 0x6a, 0x75, 0x80, 0x8a,
+			0x8c, 0x86, 0x7d, 0x71, 0x6f, 0x6c, 0x73, 0x72, 0x74, 0x6d, 0x68,
+			0x63, 0x61, 0x61, 0x61, 0x62, 0x66, 0x78, 0x92, 0xb1, 0xc7, 0xcd,
+			0xbe, 0xa4, 0x86, 0x74, 0x70, 0x79, 0x85, 0x8d, 0x8c, 0x87, 0x81,
+			0x81, 0x87, 0x90, 0x95, 0x92, 0x87, 0x79, 0x6e, 0x6d, 0x74, 0x7f,
+			0x88, 0x88, 0x82, 0x77, 0x6f, 0x6d, 0x72, 0x78, 0x7b, 0x78, 0x6f,
+			0x65, 0x5f, 0x5d, 0x5f, 0x61, 0x61, 0x65, 0x71, 0x8b, 0xa8, 0xc3,
+			0xce, 0xc5, 0xad, 0x8e, 0x79, 0x70, 0x77, 0x82, 0x8d, 0x8f, 0x8a,
+			0x82, 0x7e, 0x82, 0x8a, 0x92, 0x93, 0x8c, 0x80, 0x74, 0x6f, 0x73,
+			0x7d, 0x87, 0x8b, 0x85, 0x79, 0x6d, 0x67, 0x6a, 0x73, 0x7a, 0x7b,
+			0x73, 0x69, 0x5f, 0x5b, 0x5b, 0x5e, 0x61, 0x65, 0x72, 0x85, 0xa4,
+			0xbb, 0xcc, 0xc7, 0xb6, 0x9b, 0x84, 0x78, 0x77, 0x80, 0x88, 0x8e,
+			0x8c, 0x87, 0x81, 0x82, 0x85, 0x8b, 0x8c, 0x8a, 0x83, 0x7a, 0x73,
+			0x70, 0x77, 0x82, 0x8e, 0x91, 0x87, 0x76, 0x63, 0x5e, 0x61, 0x71,
+			0x7a, 0x7f, 0x76, 0x69, 0x5d, 0x56, 0x5a, 0x5d, 0x66, 0x6b, 0x79,
+			0x87, 0xa0, 0xb5, 0xc4, 0xc4, 0xb7, 0xa2, 0x8a, 0x7e, 0x79, 0x81,
+			0x87, 0x8e, 0x8d, 0x8a, 0x85, 0x82, 0x84, 0x86, 0x88, 0x86, 0x82,
+			0x7b, 0x76, 0x73, 0x78, 0x81, 0x8c, 0x90, 0x87, 0x78, 0x65, 0x5e,
+			0x5d, 0x6a, 0x73, 0x79, 0x73, 0x69, 0x5e, 0x58, 0x5b, 0x60, 0x6a,
+			0x70, 0x7c, 0x88, 0x9d, 0xae, 0xbc, 0xbe, 0xb5, 0xa4, 0x91, 0x86,
+			0x81, 0x85, 0x89, 0x8e, 0x8d, 0x8a, 0x87, 0x85, 0x84, 0x85, 0x85,
+			0x83, 0x80, 0x7a, 0x78, 0x75, 0x79, 0x80, 0x88, 0x8c, 0x86, 0x7b,
+			0x6c, 0x64, 0x61, 0x67, 0x6e, 0x73, 0x6e, 0x66, 0x5d, 0x5a, 0x5d,
+			0x64, 0x6d, 0x74, 0x79, 0x83, 0x91, 0xa4, 0xb3, 0xbb, 0xb8, 0xab,
+			0x9a, 0x8b, 0x85, 0x85, 0x8a, 0x8c, 0x8e, 0x8a, 0x88, 0x85, 0x85,
+			0x85, 0x85, 0x84, 0x80, 0x7d, 0x78, 0x77, 0x75, 0x7c, 0x81, 0x88,
+			0x87, 0x82, 0x76, 0x6a, 0x64, 0x63, 0x69, 0x6b, 0x6e, 0x66, 0x61,
+			0x5b, 0x5d, 0x62, 0x6c, 0x75, 0x7b, 0x83, 0x8c, 0x9a, 0xa8, 0xb2,
+			0xb4, 0xad, 0xa0, 0x92, 0x8a, 0x87, 0x89, 0x8d, 0x8d, 0x8c, 0x88,
+			0x85, 0x84, 0x85, 0x86, 0x85, 0x82, 0x7e, 0x79, 0x77, 0x76, 0x79,
+			0x7d, 0x81, 0x83, 0x83, 0x7e, 0x77, 0x6f, 0x6a, 0x68, 0x6a, 0x6b,
+			0x6a, 0x65, 0x60, 0x5d, 0x60, 0x65, 0x6d, 0x74, 0x7b, 0x7e, 0x86,
+			0x90, 0x9d, 0xaa, 0xaf, 0xae, 0xa2, 0x98, 0x8c, 0x89, 0x89, 0x8d,
+			0x8e, 0x8d, 0x88, 0x84, 0x83, 0x84, 0x86, 0x87, 0x86, 0x80, 0x7d,
+			0x78, 0x78, 0x78, 0x7b, 0x7c, 0x7d, 0x7c, 0x7b, 0x7a, 0x78, 0x76,
+			0x73, 0x71, 0x6d, 0x6c, 0x6a, 0x69, 0x68, 0x66, 0x66, 0x67, 0x6a,
+			0x6e, 0x73, 0x7a, 0x81, 0x8a, 0x93, 0x9e, 0xa5, 0xa7, 0xa4, 0x9d,
+			0x96, 0x8e, 0x8c, 0x8a, 0x8c, 0x8a, 0x88, 0x85, 0x83, 0x82, 0x83,
+			0x85, 0x85, 0x85, 0x82, 0x7f, 0x7b, 0x7a, 0x78, 0x78, 0x78, 0x77,
+			0x77, 0x77, 0x77, 0x78, 0x77, 0x77, 0x76, 0x75, 0x74, 0x73, 0x72,
+			0x72, 0x72, 0x71, 0x72, 0x72, 0x73, 0x74, 0x76, 0x78, 0x7b, 0x7d,
+			0x80, 0x82, 0x88, 0x8f, 0x97, 0x9e, 0xa0, 0x9f, 0x99, 0x93, 0x8d,
+			0x8b, 0x8a, 0x8a, 0x89, 0x86, 0x82, 0x7e, 0x7d, 0x7e, 0x80, 0x81,
+			0x81, 0x7f, 0x7c, 0x79, 0x78, 0x77, 0x77, 0x77, 0x76, 0x75, 0x74,
+			0x74, 0x75, 0x76, 0x76, 0x76, 0x75, 0x74, 0x74, 0x74, 0x74, 0x75,
+			0x76, 0x77, 0x78, 0x7b, 0x7e, 0x80, 0x82, 0x84, 0x86, 0x8b, 0x90,
+			0x95, 0x97, 0x97, 0x93, 0x8e, 0x8a, 0x88, 0x87, 0x87, 0x88, 0x86,
+			0x84, 0x80, 0x7e, 0x7c, 0x7d, 0x7d, 0x7e, 0x7e, 0x7d, 0x7b, 0x79,
+			0x79, 0x78, 0x79, 0x78, 0x78, 0x77, 0x76, 0x76, 0x76, 0x77, 0x78,
+			0x79, 0x79, 0x79, 0x78, 0x78, 0x79, 0x7a, 0x7b, 0x7d, 0x7f, 0x80,
+			0x81, 0x82, 0x82, 0x83, 0x85, 0x87, 0x89, 0x8c, 0x8d, 0x8d, 0x8d,
+			0x8c, 0x8a, 0x89, 0x88, 0x86, 0x85, 0x84, 0x83, 0x81, 0x80, 0x7f,
+			0x7e, 0x7c, 0x7b, 0x7b, 0x7a, 0x79, 0x78, 0x76, 0x75, 0x73, 0x71,
+			0x70, 0x6f, 0x70, 0x72, 0x74, 0x76, 0x78, 0x7a, 0x7c, 0x7f, 0x81,
+			0x84, 0x88, 0x8c, 0x8f, 0x91, 0x91, 0x8f, 0x8c, 0x89, 0x87, 0x85,
+			0x85, 0x84, 0x83, 0x81, 0x7f, 0x7d, 0x7c, 0x7d, 0x7d, 0x7e, 0x7e,
+			0x7e, 0x7d, 0x7c, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b, 0x7b,
+			0x7b, 0x7c, 0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81,
+			0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
+			0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x80, 0x80, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+			0x7f, 0x7f, 0x7f,
+		},
+	},
+}
+
+var beepSound = []byte{
+	0x80, 0x80, 0x81, 0x81, 0x7f, 0x7e, 0x7e, 0x80, 0x7e, 0x79, 0x76,
+	0x78, 0x81, 0x8c, 0x8f, 0x88, 0x7d, 0x78, 0x7b, 0x80, 0x7d, 0x73,
+	0x6c, 0x73, 0x88, 0x9b, 0x9d, 0x8c, 0x76, 0x6d, 0x74, 0x7e, 0x7c,
+	0x70, 0x68, 0x75, 0x8f, 0xa4, 0xa2, 0x89, 0x6f, 0x66, 0x70, 0x7d,
+	0x7e, 0x74, 0x6e, 0x7b, 0x93, 0xa5, 0x9f, 0x84, 0x6a, 0x62, 0x6e,
+	0x7e, 0x81, 0x79, 0x73, 0x7e, 0x95, 0xa4, 0x9a, 0x7e, 0x64, 0x5f,
+	0x6e, 0x81, 0x86, 0x7e, 0x78, 0x82, 0x96, 0xa1, 0x95, 0x78, 0x5f,
+	0x5d, 0x70, 0x84, 0x8a, 0x83, 0x7c, 0x84, 0x94, 0x9d, 0x8f, 0x72,
+	0x5c, 0x5c, 0x72, 0x89, 0x90, 0x87, 0x7f, 0x84, 0x92, 0x98, 0x89,
+	0x6d, 0x59, 0x5e, 0x77, 0x8f, 0x95, 0x8a, 0x80, 0x82, 0x8e, 0x93,
+	0x84, 0x6a, 0x58, 0x61, 0x7c, 0x94, 0x9a, 0x8d, 0x80, 0x80, 0x8a,
+	0x8d, 0x7f, 0x67, 0x5a, 0x65, 0x82, 0x9a, 0x9d, 0x8e, 0x7d, 0x7c,
+	0x84, 0x88, 0x7b, 0x66, 0x5c, 0x6a, 0x88, 0x9f, 0x9f, 0x8d, 0x7b,
+	0x77, 0x7f, 0x84, 0x79, 0x67, 0x60, 0x70, 0x8e, 0xa3, 0xa0, 0x8a,
+	0x76, 0x72, 0x7b, 0x81, 0x78, 0x69, 0x65, 0x76, 0x93, 0xa5, 0x9f,
+	0x86, 0x70, 0x6c, 0x77, 0x7f, 0x79, 0x6c, 0x6a, 0x7c, 0x97, 0xa7,
+	0x9d, 0x81, 0x6b, 0x68, 0x74, 0x7f, 0x7c, 0x71, 0x70, 0x81, 0x9a,
+	0xa6, 0x99, 0x7c, 0x65, 0x64, 0x73, 0x81, 0x80, 0x76, 0x75, 0x84,
+	0x9b, 0xa4, 0x94, 0x76, 0x60, 0x61, 0x74, 0x84, 0x84, 0x7b, 0x79,
+	0x87, 0x9a, 0xa0, 0x8e, 0x70, 0x5c, 0x61, 0x76, 0x88, 0x89, 0x80,
+	0x7d, 0x88, 0x98, 0x9c, 0x88, 0x6a, 0x59, 0x61, 0x79, 0x8d, 0x8e,
+	0x84, 0x7e, 0x88, 0x95, 0x96, 0x82, 0x66, 0x58, 0x63, 0x7e, 0x93,
+	0x93, 0x87, 0x7f, 0x86, 0x91, 0x91, 0x7d, 0x63, 0x58, 0x67, 0x84,
+	0x98, 0x97, 0x89, 0x7e, 0x82, 0x8c, 0x8b, 0x78, 0x61, 0x5a, 0x6c,
+	0x8a, 0x9e, 0x9a, 0x88, 0x7c, 0x7e, 0x87, 0x86, 0x76, 0x61, 0x5d,
+	0x71, 0x8f, 0xa2, 0x9c, 0x87, 0x78, 0x79, 0x82, 0x82, 0x74, 0x63,
+	0x62, 0x77, 0x95, 0xa5, 0x9b, 0x84, 0x73, 0x73, 0x7d, 0x80, 0x74,
+	0x66, 0x67, 0x7d, 0x9a, 0xa7, 0x9a, 0x80, 0x6d, 0x6e, 0x7b, 0x7f,
+	0x76, 0x6a, 0x6c, 0x83, 0x9d, 0xa7, 0x96, 0x7a, 0x68, 0x6b, 0x78,
+	0x80, 0x79, 0x6f, 0x72, 0x88, 0x9f, 0xa5, 0x92, 0x74, 0x62, 0x67,
+	0x78, 0x82, 0x7d, 0x74, 0x77, 0x8a, 0x9f, 0xa2, 0x8c, 0x6e, 0x5e,
+	0x66, 0x79, 0x86, 0x82, 0x79, 0x7c, 0x8d, 0x9e, 0x9e, 0x86, 0x68,
+	0x5b, 0x66, 0x7c, 0x8a, 0x87, 0x7e, 0x7e, 0x8d, 0x9c, 0x98, 0x80,
+	0x63, 0x59, 0x67, 0x80, 0x8f, 0x8c, 0x81, 0x80, 0x8c, 0x98, 0x93,
+	0x7b, 0x60, 0x58, 0x6a, 0x85, 0x94, 0x91, 0x84, 0x80, 0x89, 0x93,
+	0x8d, 0x76, 0x5d, 0x5a, 0x6e, 0x8b, 0x9a, 0x94, 0x84, 0x7e, 0x85,
+	0x8e, 0x88, 0x72, 0x5d, 0x5c, 0x73, 0x91, 0x9f, 0x96, 0x84, 0x7b,
+	0x80, 0x88, 0x83, 0x70, 0x5e, 0x61, 0x79, 0x97, 0xa2, 0x97, 0x81,
+	0x77, 0x7b, 0x84, 0x80, 0x6f, 0x60, 0x66, 0x80, 0x9c, 0xa4, 0x95,
+	0x7d, 0x71, 0x76, 0x80, 0x7e, 0x70, 0x64, 0x6b, 0x86, 0xa0, 0xa5,
+	0x93, 0x79, 0x6c, 0x72, 0x7d, 0x7e, 0x72, 0x68, 0x71, 0x8a, 0xa2,
+	0xa4, 0x8f, 0x73, 0x67, 0x6e, 0x7c, 0x7f, 0x76, 0x6e, 0x77, 0x8e,
+	0xa3, 0xa2, 0x89, 0x6d, 0x62, 0x6c, 0x7c, 0x82, 0x7b, 0x73, 0x7b,
+	0x91, 0xa3, 0x9e, 0x84, 0x67, 0x5e, 0x6b, 0x7e, 0x86, 0x80, 0x78,
+	0x7f, 0x92, 0xa0, 0x99, 0x7d, 0x62, 0x5c, 0x6b, 0x81, 0x8b, 0x84,
+	0x7c, 0x81, 0x92, 0x9d, 0x93, 0x78, 0x5e, 0x5a, 0x6e, 0x86, 0x90,
+	0x89, 0x80, 0x82, 0x90, 0x98, 0x8e, 0x72, 0x5b, 0x5b, 0x72, 0x8c,
+	0x95, 0x8d, 0x81, 0x81, 0x8d, 0x93, 0x88, 0x6e, 0x5a, 0x5d, 0x76,
+	0x91, 0x9a, 0x8f, 0x81, 0x7e, 0x88, 0x8e, 0x83, 0x6b, 0x5a, 0x61,
+	0x7c, 0x97, 0x9e, 0x91, 0x80, 0x7b, 0x83, 0x89, 0x7e, 0x6a, 0x5c,
+	0x66, 0x82, 0x9b, 0x9f, 0x8f, 0x7d, 0x78, 0x7e, 0x83, 0x7d, 0x70,
+	0x6a, 0x72, 0x85, 0x93, 0x93, 0x88, 0x7c, 0x79, 0x7d, 0x80, 0x7d,
+	0x78, 0x77, 0x7b, 0x83, 0x87, 0x86, 0x81, 0x7e, 0x7d, 0x7e, 0x7f,
+	0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+	0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80,
+	0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+	0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80,
+	0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+	0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+	0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+	0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+	0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+	0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80,
+	0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+	0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+	0x7f, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f,
+	0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f,
+	0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+	0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+	0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80,
+	0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+	0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f,
+	0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f,
+	0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+	0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
+	0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+	0x7f, 0x80, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+	0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80,
+	0x7f, 0x80, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f,
+	0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80,
+	0x7f, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x80, 0x80,
+	0x7f, 0x80, 0x7f, 0x7f, 0x80,
+}

+ 117 - 0
dchest/captcha/store.go

@@ -0,0 +1,117 @@
+// Copyright 2011 Dmitry Chestnykh. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package captcha
+
+import (
+	"container/list"
+	"sync"
+	"time"
+)
+
+// An object implementing Store interface can be registered with SetCustomStore
+// function to handle storage and retrieval of captcha ids and solutions for
+// them, replacing the default memory store.
+//
+// It is the responsibility of an object to delete expired and used captchas
+// when necessary (for example, the default memory store collects them in Set
+// method after the certain amount of captchas has been stored.)
+type Store interface {
+	// Set sets the digits for the captcha id.
+	Set(id string, digits []byte)
+
+	// Get returns stored digits for the captcha id. Clear indicates
+	// whether the captcha must be deleted from the store.
+	Get(id string, clear bool) (digits []byte)
+}
+
+// expValue stores timestamp and id of captchas. It is used in the list inside
+// memoryStore for indexing generated captchas by timestamp to enable garbage
+// collection of expired captchas.
+type idByTimeValue struct {
+	timestamp time.Time
+	id        string
+}
+
+// memoryStore is an internal store for captcha ids and their values.
+type memoryStore struct {
+	sync.RWMutex
+	digitsById map[string][]byte
+	idByTime   *list.List
+	// Number of items stored since last collection.
+	numStored int
+	// Number of saved items that triggers collection.
+	collectNum int
+	// Expiration time of captchas.
+	expiration time.Duration
+}
+
+// NewMemoryStore returns a new standard memory store for captchas with the
+// given collection threshold and expiration time (duration). The returned
+// store must be registered with SetCustomStore to replace the default one.
+func NewMemoryStore(collectNum int, expiration time.Duration) Store {
+	s := new(memoryStore)
+	s.digitsById = make(map[string][]byte)
+	s.idByTime = list.New()
+	s.collectNum = collectNum
+	s.expiration = expiration
+	return s
+}
+
+func (s *memoryStore) Set(id string, digits []byte) {
+	s.Lock()
+	s.digitsById[id] = digits
+	s.idByTime.PushBack(idByTimeValue{time.Now(), id})
+	s.numStored++
+	if s.numStored <= s.collectNum {
+		s.Unlock()
+		return
+	}
+	s.Unlock()
+	go s.collect()
+}
+
+func (s *memoryStore) Get(id string, clear bool) (digits []byte) {
+	if !clear {
+		// When we don't need to clear captcha, acquire read lock.
+		s.RLock()
+		defer s.RUnlock()
+	} else {
+		s.Lock()
+		defer s.Unlock()
+	}
+	digits, ok := s.digitsById[id]
+	if !ok {
+		return
+	}
+	if clear {
+		delete(s.digitsById, id)
+		// XXX(dchest) Index (s.idByTime) will be cleaned when
+		// collecting expired captchas.  Can't clean it here, because
+		// we don't store reference to expValue in the map.
+		// Maybe store it?
+	}
+	return
+}
+
+func (s *memoryStore) collect() {
+	now := time.Now()
+	s.Lock()
+	defer s.Unlock()
+	s.numStored = 0
+	for e := s.idByTime.Front(); e != nil; {
+		ev, ok := e.Value.(idByTimeValue)
+		if !ok {
+			return
+		}
+		if ev.timestamp.Add(s.expiration).Before(now) {
+			delete(s.digitsById, ev.id)
+			next := e.Next()
+			s.idByTime.Remove(e)
+			e = next
+		} else {
+			return
+		}
+	}
+}

+ 79 - 0
dchest/captcha/store_test.go

@@ -0,0 +1,79 @@
+// Copyright 2011 Dmitry Chestnykh. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package captcha
+
+import (
+	"bytes"
+	"testing"
+)
+
+func TestSetGet(t *testing.T) {
+	s := NewMemoryStore(CollectNum, Expiration)
+	id := "captcha id"
+	d := RandomDigits(10)
+	s.Set(id, d)
+	d2 := s.Get(id, false)
+	if d2 == nil || !bytes.Equal(d, d2) {
+		t.Errorf("saved %v, getDigits returned got %v", d, d2)
+	}
+}
+
+func TestGetClear(t *testing.T) {
+	s := NewMemoryStore(CollectNum, Expiration)
+	id := "captcha id"
+	d := RandomDigits(10)
+	s.Set(id, d)
+	d2 := s.Get(id, true)
+	if d2 == nil || !bytes.Equal(d, d2) {
+		t.Errorf("saved %v, getDigitsClear returned got %v", d, d2)
+	}
+	d2 = s.Get(id, false)
+	if d2 != nil {
+		t.Errorf("getDigitClear didn't clear (%q=%v)", id, d2)
+	}
+}
+
+func TestCollect(t *testing.T) {
+	//TODO(dchest): can't test automatic collection when saving, because
+	//it's currently launched in a different goroutine.
+	s := NewMemoryStore(10, -1)
+	// create 10 ids
+	ids := make([]string, 10)
+	d := RandomDigits(10)
+	for i := range ids {
+		ids[i] = randomId()
+		s.Set(ids[i], d)
+	}
+	s.(*memoryStore).collect()
+	// Must be already collected
+	nc := 0
+	for i := range ids {
+		d2 := s.Get(ids[i], false)
+		if d2 != nil {
+			t.Errorf("%d: not collected", i)
+			nc++
+		}
+	}
+	if nc > 0 {
+		t.Errorf("= not collected %d out of %d captchas", nc, len(ids))
+	}
+}
+
+func BenchmarkSetCollect(b *testing.B) {
+	b.StopTimer()
+	d := RandomDigits(10)
+	s := NewMemoryStore(9999, -1)
+	ids := make([]string, 1000)
+	for i := range ids {
+		ids[i] = randomId()
+	}
+	b.StartTimer()
+	for i := 0; i < b.N; i++ {
+		for j := 0; j < 1000; j++ {
+			s.Set(ids[j], d)
+		}
+		s.(*memoryStore).collect()
+	}
+}

+ 414 - 0
es/es.go

@@ -0,0 +1,414 @@
+package es
+
+import (
+	"crypto/rand"
+	"encoding/json"
+	"fmt"
+	"io/ioutil"
+	"log"
+	"math/big"
+	"net/http"
+	"reflect"
+	"regexp"
+	"runtime"
+	"strconv"
+	"strings"
+	"unicode"
+
+	esV7 "github.com/olivere/elastic/v7"
+)
+
+const (
+	SIZE            = 30
+	FilterQuery     = `{"query": {"filtered": {"filter": {"bool": {"must": [%s]}},%s}}`
+	QStr            = `{"query":{"bool":{"must":[$and],"must_not":[],"should":[$or],"minimum_should_match":1}}}`
+	NgramStr        = `{"query":{"bool":{"must":[%s],"should":[%s],"minimum_should_match":1}}}`
+	NgramMust       = `{"bool":{"must":[%s]}}`
+	NgramMustAndNot = `{"bool":{"must":[%s],"must_not":[%s]}}`
+	minq            = `{"multi_match": {"query": "%s","type": "phrase", "fields": [%s]}}`
+	HL              = `"highlight": {"pre_tags": [""],"post_tags": [""],"fields": {%s}}`
+	highlightStr    = `%s: {"fragment_size": %d,"number_of_fragments": 1}`
+
+	FilterQuery_New  = `{"query":{"bool":{"must": [%s%s%s],"should":[]}}}`
+	MatchQueryString = `{"match": {%s: { "query":"%s", "operator": "and"}}}`
+	HL_New           = `"highlight": {"pre_tags": ["<HL>"],"post_tags": ["<HL>"],"fields": {%s}}`
+
+	//数据查询高亮标记2019-07-10
+	HL_MP = `"highlight": {"pre_tags": ["<HL>"],"post_tags": ["</HL>"],"fields": {%s}}`
+
+	ik_highlightStr = `%s: {"fragment_size": %d,"number_of_fragments": 1,"require_field_match": true}`
+	IK_pre_tags     = `<font class=\"es-highlight\">`
+	IK_post_tags    = `</font>`
+	HL_IK           = `"highlight": {"pre_tags": ["` + IK_pre_tags + `"],"post_tags": ["` + IK_post_tags + `"],"fields": {%s}}`
+)
+
+type Es interface {
+	Init()
+	Save(index, itype string, obj interface{}) bool
+	GetBySearchType(index, searchType, query string) (int64, *[]map[string]interface{})
+	Get(index, itype, query string) *[]map[string]interface{}
+	GetOA(index, itype, query string) (*[]map[string]interface{}, int)
+	GetNoLimit(index, itype, query string) *[]map[string]interface{}
+	GetPage(index, itype, query, order, field string, start, limit int) *[]map[string]interface{}
+	GetOAPage(index, itype, query, order, field string, start, limit int) (*[]map[string]interface{}, int)
+	GetByIdField(index, itype, id, fields string) *map[string]interface{}
+	GetById(index, itype string, ids ...string) *[]map[string]interface{}
+	Update(index, itype, id string, updateStr string) bool
+	BulkUpdate(index, itype string, ids []string, updateStr string)
+	NewBulkUpdate(index string, params ...[]string) bool
+	DelById(index, itype, id string) bool
+	UpdateNewDoc(index, itype string, obj ...interface{}) bool
+	BulkSave(index, itype string, obj *[]map[string]interface{}, isDelBefore bool)
+	Count(index, itype string, query interface{}) int64
+	GetNgramQuery(query interface{}, mustquery, findfields string) (qstr string)
+	GetNgramQuery_New(querystring, querymust interface{}, must, findfields string) (qstring string)
+	GetByNgram(index, itype string, query interface{}, mustquery, findfields, order, fields string, start, limit int) *[]map[string]interface{}
+	GetByNgramOther(index, itype string, query interface{}, mustquery, findfields, order, fields string, start, limit int, highlight bool, filtermode bool, count int) *[]map[string]interface{}
+	GetByNgramAll(index, itype string, query interface{}, mustquery, findfields, order, fields string, start, limit int, highlight bool, filtermode bool) *[]map[string]interface{}
+	GetByNgramAll_New(index, itype string, querystring, querymust interface{}, mustquery, findfields, order, fields string, start, limit int, highlight bool, filtermode bool) *[]map[string]interface{}
+	GetResForJY(index, itype string, keys []KeyConfig, allquery, findfields, SortQuery, fields string, start, limit int) *[]map[string]interface{}
+	GetAllByNgram(index, itype, qstr, findfields, order, fields string, start, limit, count int, highlight bool) *[]map[string]interface{}
+	GetAllByNgram_MP(index, itype, qstr, findfields, order, fields string, start, limit, count int, highlight bool) *[]map[string]interface{}
+	GetAllByIk(index, itype, qstr, findfields, order, fields string, start, limit, count int, highlight bool) *[]map[string]interface{}
+	GetResForJYView(index, itype string, keys []KeyConfig, allquery, findfields, SortQuery, fields string, start, limit int) *[]map[string]interface{}
+	GetWithCount(index, itype, countQuery, allQuery string) (int64, *[]map[string]interface{})
+	GetAggs(index, itype, query string) (aggs esV7.Aggregations, count int64, res []map[string]interface{})
+	Analyze(text, index, analyzer string) (res string)
+	analyzeResp(text, analyzer, u string) (*http.Request, error)
+}
+
+var (
+	SR        = strings.Replace
+	VarEs     Es
+	filterReg = regexp.MustCompile(`,\s*"should"\s*:\s*\[\s*\]\s*,\s*"minimum_should_match"\s*:\s*1`)
+)
+
+type KeyConfig struct {
+	Keys      []string `json:"key"`
+	NotKeys   []string `json:"notkey"`
+	InfoTypes []string `json:"infotype"`
+	Areas     []string `json:"area"`
+}
+
+func MakeQuery(query, order, fileds string, start, limit int) string {
+	res := AnalyQuery(query, "", QStr)
+	if len(res) > 10 {
+		if strings.Contains(res, "###剑鱼###") {
+			res = strings.ReplaceAll(res, "###剑鱼###", "\\\"")
+		}
+		res = SR(SR(SR(SR(res, ",$and", "", -1), "$and", "", -1), ",$or", "", -1), "$or", "", -1)
+		if len(fileds) > 0 {
+			//"_source":["account_number","balance"]
+			res = res[:len(res)-1] + `,"_source":[` + fileds + "]}"
+		}
+		//{"name":-1,"age":1}
+		if len(order) > 0 {
+			res = res[:len(res)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", "},{", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			res = res[:len(res)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		return strings.ReplaceAll(res, `,"should":[],"minimum_should_match":1`, "")
+	}
+	return ""
+}
+
+//{"name":"aaa"}
+func AnalyQuery(query interface{}, parent string, result string) string {
+	m := make(map[string]interface{})
+	if q1, ok := query.(string); ok {
+		json.Unmarshal([]byte(q1), &m)
+	} else if q2, ok2 := query.(map[string]interface{}); ok2 {
+		m = q2
+	}
+	if len(parent) == 0 {
+		for k, v := range m {
+			if k == "$and" || k == "$or" {
+				temps := ""
+				if map1, ok := v.([]interface{}); ok {
+					for i := 0; i < len(map1); i++ {
+						temps += "," + AnalyQuery(map1[i], k, "")
+					}
+				}
+				if len(temps) > 0 {
+					temps = temps[1:]
+				}
+				result = SR(result, k, temps+","+k, 1)
+			} else {
+				switch reflect.TypeOf(v).String() {
+				case "string":
+					if strings.Index(k, "TERM_") == 0 {
+						result = SR(result, "$and", `{"term":{"`+SR(k, "TERM_", "", 1)+`":"`+fmt.Sprintf("%v", v)+`"}},$and`, 1)
+					} else {
+						result = SR(result, "$and", `{"query_string":{"default_field":"`+k+`","query":"`+fmt.Sprintf("%v", v)+`"}},$and`, 1)
+					}
+				case "int", "int8", "int32", "int64", "float32", "float64":
+					if strings.Index(k, "TERM_") == 0 {
+						result = SR(result, "$and", `{"term":{"`+SR(k, "TERM_", "", 1)+`":`+fmt.Sprintf("%v", v)+`}},$and`, 1)
+					} else {
+						result = SR(result, "$and", `{"query_string":{"default_field":"`+k+`","query":`+fmt.Sprintf("%v", v)+`}},$and`, 1)
+					}
+				default:
+					result = SR(result, "$and", AnalyQuery(v, k, "")+",$and", 1)
+				}
+			}
+		}
+		return result
+	} else {
+		for k, v := range m {
+			if k == "$in" {
+				s := ""
+				if map1, ok := v.([]interface{}); ok {
+					for i := 0; i < len(map1); i++ {
+						s += "," + `"` + fmt.Sprintf("%v", map1[i]) + `"`
+					}
+				}
+				if len(s) > 0 {
+					s = s[1:]
+				}
+				return `{"terms":{"` + parent + `":[` + s + `]}}`
+			} else if strings.Contains(k, "$lt") || strings.Contains(k, "$gt") {
+				return `{"range":{"` + parent + `":{"` + SR(k, "$", "", 1) + `":` + fmt.Sprintf("%v", v) + `}}}`
+			} else {
+				switch reflect.TypeOf(v).String() {
+				case "string":
+					if strings.Index(k, "TERM_") == 0 {
+						return `{"term":{"` + SR(k, "TERM_", "", 1) + `":"` + fmt.Sprintf("%v", v) + `"}}`
+					} else {
+						return `{"query_string":{"default_field":"` + k + `","query":"` + fmt.Sprintf("%v", v) + `"}}`
+					}
+				case "int", "int8", "int32", "int64", "float32", "float64":
+					if strings.Index(k, "TERM_") == 0 {
+						return `{"term":{"` + SR(k, "TERM_", "", 1) + `":` + fmt.Sprintf("%v", v) + `}}`
+					} else {
+						return `{"query_string":{"default_field":"` + k + `","query":` + fmt.Sprintf("%v", v) + `}}`
+					}
+				default:
+					return AnalyQuery(v, k, result)
+				}
+			}
+		}
+	}
+	return result
+}
+
+func ReplaceYH(src string) (rpl string) {
+	return strings.Replace(src, `"`, `\"`, -1)
+}
+
+//obj(string,M)转M,查询用到
+func objToMap(obj interface{}) *map[string]interface{} {
+	data := make(map[string]interface{})
+	if s, ok := obj.(string); ok {
+		json.Unmarshal([]byte(strings.Replace(s, "'", "\"", -1)), &data)
+	} else if s1, ok1 := obj.(map[string]interface{}); ok1 {
+		data = s1
+	} else if s1, ok1 := obj.(*map[string]interface{}); ok1 {
+		return s1
+	} else {
+		data = nil
+	}
+	return &data
+}
+
+//对象数组转成string数组
+func objArrToStringArr(old []interface{}) []string {
+	if old != nil {
+		new := make([]string, len(old))
+		for i, v := range old {
+			new[i], _ = v.(string)
+		}
+		return new
+	} else {
+		return nil
+	}
+}
+
+//出错拦截
+func catch() {
+	if r := recover(); r != nil {
+		log.Println(r)
+		for skip := 0; ; skip++ {
+			_, file, line, ok := runtime.Caller(skip)
+			if !ok {
+				break
+			}
+			go log.Printf("%v,%v\n", file, line)
+		}
+	}
+}
+
+func bsonIdToSId(_id interface{}) string {
+	v := fmt.Sprintf("%v", _id)
+	v = strings.TrimPrefix(v, `ObjectID("`)
+	v = strings.TrimSuffix(v, `")`)
+	return v
+}
+
+type analyze struct {
+}
+
+func (a *analyze) do(text, index, analyzer, address string, e Es) string {
+	var addrs []string
+	for _, s := range strings.Split(address, ",") {
+		addrs = append(addrs, s)
+	}
+	i, _ := rand.Int(rand.Reader, big.NewInt(int64(len(addrs)))) //随机
+	res, err := a.post(text, analyzer, addrs[int(i.Int64())]+"/"+index+"/_analyze", e)
+	if err != nil {
+		for _, v := range addrs {
+			res, err = a.post(text, analyzer, v+"/"+index+"/_analyze", e)
+			if err == nil {
+				return res
+			}
+		}
+	}
+	return res
+}
+
+func (a *analyze) post(text, analyzer, url string, e Es) (string, error) {
+	req, err := e.analyzeResp(text, analyzer, url)
+	if err != nil {
+		log.Println("es分词req出错:", err)
+		return "", err
+	}
+	resp, err := http.DefaultClient.Do(req)
+	if err != nil {
+		log.Println("es分词do出错:", err)
+		return "", err
+	}
+	result, err := ioutil.ReadAll(resp.Body)
+	if err != nil {
+		log.Println("es分词read出错:", err)
+		return "", err
+	}
+	defer resp.Body.Close()
+	var resmap map[string]interface{}
+	json.Unmarshal(result, &resmap)
+	res := ""
+	if resmap != nil && resmap["tokens"] != nil {
+		tokens, _ := resmap["tokens"].([]interface{})
+		for _, ov := range tokens {
+			v, _ := ov.(map[string]interface{})
+			token, _ := v["token"].(string)
+			if len([]rune(token)) == 1 && !unicode.Is(unicode.Scripts["Han"], []rune(token)[0]) { //(P260保留单个汉字)
+				continue
+			}
+			if res != "" {
+				res += "+"
+			}
+			res += token
+		}
+	}
+	return res, nil
+}
+
+func NewEs(version, address string, size int, userName, password string) Es {
+	var es Es
+	if version == "v1" {
+		es = &EsV1{
+			Address: address,
+			Size:    size,
+		}
+	} else {
+		es = &EsV7{
+			Address:  address,
+			Size:     size,
+			UserName: userName,
+			Password: password,
+		}
+	}
+	es.Init()
+	VarEs = es
+	return es
+}
+func Save(index, itype string, obj interface{}) bool {
+	return VarEs.Save(index, itype, obj)
+}
+func GetBySearchType(index, searchType, query string) (int64, *[]map[string]interface{}) {
+	return VarEs.GetBySearchType(index, searchType, query)
+}
+func Get(index, itype, query string) *[]map[string]interface{} {
+	return VarEs.Get(index, itype, query)
+}
+func GetOA(index, itype, query string) (*[]map[string]interface{}, int) {
+	return VarEs.GetOA(index, itype, query)
+}
+func GetNoLimit(index, itype, query string) *[]map[string]interface{} {
+	return VarEs.GetNoLimit(index, itype, query)
+}
+func GetPage(index, itype, query, order, field string, start, limit int) *[]map[string]interface{} {
+	return VarEs.GetPage(index, itype, query, order, field, start, limit)
+}
+func GetOAPage(index, itype, query, order, field string, start, limit int) (*[]map[string]interface{}, int) {
+	return VarEs.GetOAPage(index, itype, query, order, field, start, limit)
+}
+func GetByIdField(index, itype, id, fields string) *map[string]interface{} {
+	return VarEs.GetByIdField(index, itype, id, fields)
+}
+func GetById(index, itype string, ids ...string) *[]map[string]interface{} {
+	return VarEs.GetById(index, itype, ids...)
+}
+func Update(index, itype, id string, updateStr string) bool {
+	return VarEs.Update(index, itype, id, updateStr)
+}
+func BulkUpdate(index, itype string, ids []string, updateStr string) {
+	VarEs.BulkUpdate(index, itype, ids, updateStr)
+}
+func NewBulkUpdate(index string, params ...[]string) bool {
+	return VarEs.NewBulkUpdate(index, params...)
+}
+func DelById(index, itype, id string) bool {
+	return VarEs.DelById(index, itype, id)
+}
+func UpdateNewDoc(index, itype string, obj ...interface{}) bool {
+	return VarEs.UpdateNewDoc(index, itype, obj...)
+}
+func BulkSave(index, itype string, obj *[]map[string]interface{}, isDelBefore bool) {
+	VarEs.BulkSave(index, itype, obj, isDelBefore)
+}
+func Count(index, itype string, query interface{}) int64 {
+	return VarEs.Count(index, itype, query)
+}
+func GetNgramQuery(query interface{}, mustquery, findfields string) (qstr string) {
+	return VarEs.GetNgramQuery(query, mustquery, findfields)
+}
+func GetNgramQuery_New(querystring, querymust interface{}, must, findfields string) (qstring string) {
+	return VarEs.GetNgramQuery_New(querystring, querymust, must, findfields)
+}
+func GetByNgram(index, itype string, query interface{}, mustquery, findfields, order, fields string, start, limit int) *[]map[string]interface{} {
+	return VarEs.GetByNgram(index, itype, query, mustquery, findfields, order, fields, start, limit)
+}
+func GetByNgramOther(index, itype string, query interface{}, mustquery, findfields, order, fields string, start, limit int, highlight bool, filtermode bool, count int) *[]map[string]interface{} {
+	return VarEs.GetByNgramOther(index, itype, query, mustquery, findfields, order, fields, start, limit, highlight, filtermode, count)
+}
+func GetByNgramAll(index, itype string, query interface{}, mustquery, findfields, order, fields string, start, limit int, highlight bool, filtermode bool) *[]map[string]interface{} {
+	return VarEs.GetByNgramAll(index, itype, query, mustquery, findfields, order, fields, start, limit, highlight, filtermode)
+}
+func GetByNgramAll_New(index, itype string, querystring, querymust interface{}, mustquery, findfields, order, fields string, start, limit int, highlight bool, filtermode bool) *[]map[string]interface{} {
+	return VarEs.GetByNgramAll_New(index, itype, querystring, querymust, mustquery, findfields, order, fields, start, limit, highlight, filtermode)
+}
+func GetResForJY(index, itype string, keys []KeyConfig, allquery, findfields, SortQuery, fields string, start, limit int) *[]map[string]interface{} {
+	return VarEs.GetResForJY(index, itype, keys, allquery, findfields, SortQuery, fields, start, limit)
+}
+func GetAllByNgram(index, itype, qstr, findfields, order, fields string, start, limit, count int, highlight bool) *[]map[string]interface{} {
+	return VarEs.GetAllByNgram(index, itype, qstr, findfields, order, fields, start, limit, count, highlight)
+}
+func GetAllByNgram_MP(index, itype, qstr, findfields, order, fields string, start, limit, count int, highlight bool) *[]map[string]interface{} {
+	return VarEs.GetAllByNgram_MP(index, itype, qstr, findfields, order, fields, start, limit, count, highlight)
+}
+func GetAllByIk(index, itype, qstr, findfields, order, fields string, start, limit, count int, highlight bool) *[]map[string]interface{} {
+	return VarEs.GetAllByIk(index, itype, qstr, findfields, order, fields, start, limit, count, highlight)
+}
+func GetResForJYView(index, itype string, keys []KeyConfig, allquery, findfields, SortQuery, fields string, start, limit int) *[]map[string]interface{} {
+	return VarEs.GetResForJYView(index, itype, keys, allquery, findfields, SortQuery, fields, start, limit)
+}
+func GetWithCount(index, itype, countQuery, allQuery string) (int64, *[]map[string]interface{}) {
+	return VarEs.GetWithCount(index, itype, countQuery, allQuery)
+}
+func GetAggs(index, itype, query string) (aggs esV7.Aggregations, count int64, res []map[string]interface{}) {
+	return VarEs.GetAggs(index, itype, query)
+}
+func Analyze(text, index, analyzer string) (res string) {
+	return VarEs.Analyze(text, index, analyzer)
+}

+ 89 - 0
es/es_test.go

@@ -0,0 +1,89 @@
+package es
+
+import (
+	"log"
+	"testing"
+)
+
+type AggregationsBucket struct {
+	Key       string `json:"key"`
+	Doc_count int    `json:"doc_count"`
+	Count     struct {
+		Value float64 `json:value`
+	} `json:"count"`
+}
+
+func TestGet(t *testing.T) {
+	q := `{
+  "query": {
+    "bool": {
+      "must": [
+        {
+          "bool": {
+            "should": [
+              {
+                "terms": {
+                  "subtype": [
+                    "拟建"
+                  ]
+                }
+              },
+              {
+                "terms": {
+                  "toptype": [
+                    "预告",
+                    "招标",
+                    "结果",
+                    "其它"
+                  ]
+                }
+              }
+            ]
+          }
+        }
+      ],
+      "must_not": []
+    }
+  },
+  "_source": [
+    "_id",
+    "title",
+    "publishtime",
+    "toptype",
+    "subtype",
+    "type",
+    "area",
+    "dataweight",
+    "city",
+    "s_subscopeclass",
+    "bidamount",
+    "budget",
+    "buyerclass",
+    "spidercode",
+    "site",
+    "filetext",
+    "isValidFile"
+  ],
+  "sort": [
+    {
+      "dataweight": "desc"
+    },
+    {
+      "publishtime": "desc"
+    }
+  ],
+  "from": 1,
+  "size": 50
+}`
+	NewEs("v7", "http://192.168.3.241:9205,http://192.168.3.149:9200", 2, "", "")
+	//NewEs("v1", "http://192.168.3.206:9800", 2, "", "")
+	count, _ := GetWithCount("bidding", "bidding", "", q)
+	log.Println(count)
+}
+
+func TestAnalyze(t *testing.T) {
+	NewEs("v7", "http://192.168.3.241:9205,http://192.168.3.149:9200", 2, "", "")
+	//NewEs("v1", "http://192.168.3.206:9800", 2, "", "")
+	res := Analyze("软件中国", "bidding", "ik_smart")
+	log.Println(res)
+}

+ 1190 - 0
es/esv1.go

@@ -0,0 +1,1190 @@
+package es
+
+import (
+	"encoding/json"
+	"fmt"
+	"log"
+	"net/http"
+	"net/url"
+	"runtime"
+	"strconv"
+	"strings"
+	"sync"
+	"time"
+
+	es "app.yhyue.com/moapp/esv1/gopkg.in/olivere/elastic.v1"
+	esV7 "github.com/olivere/elastic/v7"
+)
+
+type EsV1 struct {
+	Address      string
+	Size         int
+	lastTime     int64
+	lastTimeLock *sync.Mutex
+	pool         chan *es.Client
+}
+
+//n倍的池
+func (e *EsV1) Init() {
+	if e.Size <= 0 {
+		e.Size = SIZE
+	}
+	e.pool = make(chan *es.Client, 3*e.Size)
+	e.lastTimeLock = &sync.Mutex{}
+	for i := 0; i < e.Size; i++ {
+		client, _ := e.newClient()
+		e.pool <- client
+	}
+}
+
+func (e *EsV1) newClient() (*es.Client, error) {
+	return es.NewClient(es.SetURL(strings.Split(e.Address, ",")...), es.SetMaxRetries(2), es.SetSniff(false))
+}
+
+//关闭连接
+func (e *EsV1) DestoryEsConn(client *es.Client) {
+	select {
+	case e.pool <- client:
+		break
+	case <-time.After(time.Second * 1):
+		if client != nil {
+			client.Stop()
+		}
+		client = nil
+	}
+}
+
+//获取连接
+func (e *EsV1) GetEsConn() *es.Client {
+	select {
+	case c := <-e.pool:
+		if c == nil || !c.IsRunning() {
+			log.Println("new esclient.", len(e.pool))
+			client, err := e.newClient()
+			if err == nil && client.IsRunning() {
+				return client
+			}
+		}
+		return c
+	case <-time.After(time.Second * 4):
+		//超时
+		e.lastTimeLock.Lock()
+		defer e.lastTimeLock.Unlock()
+		//12秒后允许创建链接
+		c := time.Now().Unix() - e.lastTime
+		if c > 12 {
+			e.lastTime = time.Now().Unix()
+			log.Println("add client..", len(e.pool))
+			c, _ := e.newClient()
+			go func() {
+				for i := 0; i < 2; i++ {
+					client, _ := e.newClient()
+					e.pool <- client
+				}
+			}()
+			return c
+		}
+		return nil
+	}
+}
+
+//保存对象
+func (e *EsV1) Save(index, itype string, obj interface{}) bool {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	defer func() {
+		if r := recover(); r != nil {
+			log.Println("[E]", r)
+			for skip := 1; ; skip++ {
+				_, file, line, ok := runtime.Caller(skip)
+				if !ok {
+					break
+				}
+				go log.Printf("%v,%v\n", file, line)
+			}
+		}
+	}()
+	_, err := client.Index().Index(index).Type(itype).BodyJson(objToMap(obj)).Do()
+	if err != nil {
+		log.Println("保存到ES出错", err.Error(), obj)
+		return false
+	} else {
+		return true
+	}
+
+}
+
+//通用查询
+//{"query": {"bool":{"must":[{"query_string":{"default_field":"name","query":"*"}}]}}}
+//{"query":{"bool":{"must":{"match":{"content":{"query":"fulltextsearch","operator":"and"}}},"should":[{"match":{"content":{"query":"Elasticsearch","boost":3}}},{"match":{"content":{"query":"Lucene","boost":2}}}]}}}
+//prefix
+//{"query":{"match":{"title":{"query":"brownfox","operator":"and"}}}} //默认为or
+//{"query":{"multi_match":{"query":"PolandStreetW1V","type":"most_fields","fields":["*_street","city^2","country","postcode"]}}}
+//{"query":{"wildcard":{"postcode":"W?F*HW"}}}
+//{"query":{"regexp":{"postcode":"W[0-9].+"}}}
+//{"query":{"filtered":{"filter":{"range":{"price":{"gte":10000}}}}},"aggs":{"single_avg_price":{"avg":{"field":"price"}}}}
+//{"query":{"match":{"make":"ford"}},"aggs":{"colors":{"terms":{"field":"color"}}}}//查fork有几种颜色
+//过滤器不会计算相关度的得分,所以它们在计算上更快一些
+//{"query":{"filtered":{"query":{"match_all":{}},"filter":{"range":{"balance":{"gte":20000,"lte":30000}}}}}}
+//{"query":{"match_all":{}},"from":10,"size":10,"_source":["account_number","balance"],"sort":{"balance":{"order":"desc"}}}
+//{"query":{"match_phrase":{"address":"milllane"}}}和match不同会去匹配整个短语,相当于must[]
+func (e *EsV1) GetBySearchType(index, searchType, query string) (int64, *[]map[string]interface{}) {
+	return 0, nil
+}
+func (e *EsV1) Get(index, itype, query string) *[]map[string]interface{} {
+	//log.Println("query  -- ", query)
+	client := e.GetEsConn()
+	defer func() {
+		go e.DestoryEsConn(client)
+	}()
+	var res []map[string]interface{}
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		searchResult, err := client.Search().Index(index).Type(itype).Source(query).Do()
+		if err != nil {
+			log.Println("从ES查询出错", err.Error())
+			return nil
+		}
+
+		if searchResult.Hits != nil {
+			resNum := len(searchResult.Hits.Hits)
+			if resNum <= 5000 {
+				res = make([]map[string]interface{}, resNum)
+				for i, hit := range searchResult.Hits.Hits {
+					//d := json.NewDecoder(bytes.NewBuffer(*hit.Source))
+					//d.UseNumber()
+					//d.Decode(&res[i])
+					parseErr := json.Unmarshal(*hit.Source, &res[i])
+					if parseErr == nil && hit.Highlight != nil && res[i] != nil {
+						res[i]["highlight"] = map[string][]string(hit.Highlight)
+					}
+				}
+			} else {
+				log.Println("查询结果太多,查询到:", resNum, "条")
+			}
+
+		}
+	}
+	return &res
+}
+func (e *EsV1) GetOA(index, itype, query string) (*[]map[string]interface{}, int) {
+	//log.Println("query  -- ", query)
+	client := e.GetEsConn()
+	defer func() {
+		go e.DestoryEsConn(client)
+	}()
+	var res []map[string]interface{}
+	var resNum int
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		searchResult, err := client.Search().Index(index).Type(itype).Source(query).Do()
+		if err != nil {
+			log.Println("从ES查询出错", err.Error())
+			return nil, 0
+		}
+
+		if searchResult.Hits != nil {
+			resNum = len(searchResult.Hits.Hits)
+			if resNum <= 5000 {
+				res = make([]map[string]interface{}, resNum)
+				for i, hit := range searchResult.Hits.Hits {
+					//d := json.NewDecoder(bytes.NewBuffer(*hit.Source))
+					//d.UseNumber()
+					//d.Decode(&res[i])
+					parseErr := json.Unmarshal(*hit.Source, &res[i])
+					if parseErr == nil && hit.Highlight != nil && res[i] != nil {
+						res[i]["highlight"] = map[string][]string(hit.Highlight)
+					}
+				}
+			} else {
+				log.Println("查询结果太多,查询到:", resNum, "条")
+			}
+
+		}
+	}
+	return &res, resNum
+}
+
+func (e *EsV1) GetNoLimit(index, itype, query string) *[]map[string]interface{} {
+	//log.Println("query  -- ", query)
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	var res []map[string]interface{}
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		searchResult, err := client.Search().Index(index).Type(itype).Source(query).Do()
+		if err != nil {
+			log.Println("从ES查询出错", err.Error())
+			return nil
+		}
+
+		if searchResult.Hits != nil {
+			resNum := len(searchResult.Hits.Hits)
+			res = make([]map[string]interface{}, resNum)
+			for i, hit := range searchResult.Hits.Hits {
+				json.Unmarshal(*hit.Source, &res[i])
+			}
+		}
+	}
+	return &res
+}
+
+//分页查询
+//{"name":"张三","$and":[{"age":{"$gt":10}},{"age":{"$lte":20}}]}
+//fields直接是 `"_id","title"`
+func (e *EsV1) GetPage(index, itype, query, order, field string, start, limit int) *[]map[string]interface{} {
+	return e.Get(index, itype, MakeQuery(query, order, field, start, limit))
+}
+
+//openapi
+func (e *EsV1) GetOAPage(index, itype, query, order, field string, start, limit int) (*[]map[string]interface{}, int) {
+	return e.GetOA(index, itype, MakeQuery(query, order, field, start, limit))
+}
+
+func (e *EsV1) GetByIdField(index, itype, id, fields string) *map[string]interface{} {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		query := `{"query":{"term":{"_id":"` + id + `"}}`
+		if len(fields) > 0 {
+			query = query + `,"_source":[` + fields + `]`
+		}
+		query = query + "}"
+		searchResult, err := client.Search().Index(index).Type(itype).Source(query).Do()
+		if err != nil {
+			log.Println("从ES查询出错", err.Error())
+			return nil
+		}
+		var res map[string]interface{}
+		if searchResult.Hits != nil {
+			resNum := len(searchResult.Hits.Hits)
+			if resNum == 1 {
+				res = make(map[string]interface{})
+				for _, hit := range searchResult.Hits.Hits {
+					json.Unmarshal(*hit.Source, &res)
+				}
+				return &res
+			}
+		}
+	}
+	return nil
+}
+
+//根据id来查询文档
+func (e *EsV1) GetById(index, itype string, ids ...string) *[]map[string]interface{} {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	var res []map[string]interface{}
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		query := es.NewIdsQuery().Ids(ids...)
+		searchResult, err := client.Search().Index(index).Type(itype).Query(&query).Do()
+		if err != nil {
+			log.Println("从ES查询出错", err.Error())
+			return nil
+		}
+
+		if searchResult.Hits != nil {
+			resNum := len(searchResult.Hits.Hits)
+			if resNum <= 5000 {
+				res = make([]map[string]interface{}, resNum)
+				for i, hit := range searchResult.Hits.Hits {
+					json.Unmarshal(*hit.Source, &res[i])
+				}
+			} else {
+				log.Println("查询结果太多,查询到:", resNum, "条")
+			}
+
+		}
+	}
+	return &res
+}
+
+//删除某个索引,根据查询
+func (e *EsV1) Del(index, itype string, query interface{}) bool {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	b := false
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		var err error
+		if qs, ok := query.(string); ok {
+			temp := es.BoolQuery{
+				QueryStrings: qs,
+			}
+			_, err = client.DeleteByQuery().Index(index).Type(itype).Query(temp).Do()
+		} else if qi, ok2 := query.(es.Query); ok2 {
+			_, err = client.DeleteByQuery().Index(index).Type(itype).Query(qi).Do()
+		}
+		if err != nil {
+			log.Println("删除索引出错:", err.Error())
+		} else {
+			b = true
+		}
+	}
+	return b
+}
+
+//根据语句更新对象
+func (e *EsV1) Update(index, itype, id string, updateStr string) bool {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	b := false
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		var err error
+		_, err = client.Update().Index(index).Type(itype).Id(id).Script(updateStr).ScriptLang("groovy").Do()
+		if err != nil {
+			log.Println("更新检索出错:", err.Error())
+		} else {
+			b = true
+		}
+	}
+	return b
+}
+
+func (e *EsV1) BulkUpdate(index, itype string, ids []string, updateStr string) {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		for _, id := range ids {
+			_, err := client.Update().Index(index).Type(itype).Id(id).Script(updateStr).ScriptLang("groovy").Do()
+			if err != nil {
+				log.Println("更新检索出错:", err.Error())
+			}
+		}
+	}
+}
+
+func (e *EsV1) NewBulkUpdate(index string, params ...[]string) bool {
+	return false
+}
+
+//根据id删除索引对象
+func (e *EsV1) DelById(index, itype, id string) bool {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	b := false
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		var err error
+		_, err = client.Delete().Index(index).Type(itype).Id(id).Do()
+		if err != nil {
+			log.Println("更新检索出错:", err.Error())
+		} else {
+			b = true
+		}
+	}
+	return b
+}
+
+//先删除后增
+func (e *EsV1) UpdateNewDoc(index, itype string, obj ...interface{}) bool {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	b := false
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		var err error
+		for _, v := range obj {
+			tempObj := objToMap(v)
+			id := fmt.Sprintf("%v", (*tempObj)["_id"])
+			client.Delete().Index(index).Type(itype).Id(id).Do()
+			_, err = client.Index().Index(index).Type(itype).BodyJson(tempObj).Do()
+			if err != nil {
+				log.Println("保存到ES出错", err.Error())
+			} else {
+				b = true
+			}
+		}
+
+	}
+	return b
+}
+
+func (e *EsV1) BulkSave(index, itype string, obj *[]map[string]interface{}, isDelBefore bool) {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		req := client.Bulk()
+		for _, v := range *obj {
+			if isDelBefore {
+				req = req.Add(es.NewBulkDeleteRequest().Index(index).Type(itype).Id(fmt.Sprintf("%v", v["_id"])))
+			}
+			req = req.Add(es.NewBulkIndexRequest().Index(index).Type(itype).Doc(v))
+		}
+		_, err := req.Do()
+		if err != nil {
+			log.Println("批量保存到ES出错", err.Error())
+		}
+	}
+}
+
+func (e *EsV1) Count(index, itype string, query interface{}) int64 {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		var qq es.Query
+		if qs, ok := query.(string); ok {
+			temp := es.BoolQuery{
+				QueryStrings: qs,
+			}
+			qq = temp
+		} else if qi, ok2 := query.(es.Query); ok2 {
+			qq = qi
+		}
+		n, err := client.Count(index).Type(itype).Query(qq).Do()
+		if err != nil {
+			log.Println("统计出错", err.Error())
+		}
+
+		return n
+	}
+	return 0
+}
+
+//ngram精确查询
+/*
+{
+  "query": {
+    "bool": {
+      "should": [
+        {
+	"bool":{
+	  "must":[
+	  {     "multi_match": {
+            "query": "智能",
+            "type": "phrase",
+            "fields": [
+              "title"
+            ],
+           "analyzer": "my_ngram"
+          }
+        },{
+          "multi_match": {
+            "query": "机器",
+            "type": "phrase",
+            "fields": [
+              "title"
+            ],
+           "analyzer": "my_ngram"
+          }
+        },{
+          "multi_match": {
+            "query": "2016",
+            "type": "phrase",
+            "fields": [
+              "title"
+            ],
+           "analyzer": "my_ngram"
+          }
+	  }
+	  ]
+	}
+        },
+
+{
+	"bool":{
+	  "must":[
+	  {          "multi_match": {
+            "query": "河南",
+            "type": "phrase",
+            "fields": [
+              "title"
+            ],
+           "analyzer": "my_ngram"
+          }
+        },{
+          "multi_match": {
+            "query": "工商",
+            "type": "phrase",
+            "fields": [
+              "title"
+            ],
+           "analyzer": "my_ngram"
+          }
+        },{
+          "multi_match": {
+            "query": "2016",
+            "type": "phrase",
+            "fields": [
+              "title"
+            ],
+           "analyzer": "my_ngram"
+          }
+	  }
+	  ]
+	}
+        }
+      ],"minimum_should_match": 1
+    }
+  },
+  "_source": [
+    "_id",
+    "title"
+  ],
+  "from": 0,
+  "size": 10,
+  "sort": [{
+      "publishtime": "desc"
+    }]
+}
+
+*/
+//"2016+智能+办公,"河南+工商"
+//["2016+智能+办公","河南+工商"]
+//QStr = `{"query":{"bool":{should":[$or],"minimum_should_match" : 1}}}`
+//{"bool":{"must":[]}}
+//{"multi_match": {"query": "$word","type": "phrase", "fields": [$field],"analyzer": "my_ngram"}}
+//"highlight": {"pre_tags": [""],"post_tags": [""],"fields": {"detail": {"fragment_size": 1,"number_of_fragments": 1},"title": {"fragment_size": 1,"number_of_fragments": 1}}}
+
+//替换了"号
+func (e *EsV1) GetNgramQuery(query interface{}, mustquery, findfields string) (qstr string) {
+	var words []string
+	if q, ok := query.(string); ok {
+		if q != "" {
+			words = strings.Split(q, ",")
+		}
+	} else if q, ok := query.([]string); ok {
+		words = q
+	} else if q, ok := query.([]interface{}); ok {
+		words = objArrToStringArr(q)
+	}
+	if words != nil {
+		new_minq := fmt.Sprintf(minq, "%s", findfields)
+		musts := []string{}
+		for _, qs_words := range words {
+			qws := strings.Split(qs_words, "+")
+			mq := []string{}
+			for _, qs_word := range qws {
+				mq = append(mq, fmt.Sprintf(new_minq, ReplaceYH(qs_word)))
+			}
+			musts = append(musts, fmt.Sprintf(NgramMust, strings.Join(mq, ",")))
+		}
+		qstr = fmt.Sprintf(NgramStr, mustquery, strings.Join(musts, ","))
+		//log.Println("ngram-query", qstr)
+	} else {
+		qstr = fmt.Sprintf(NgramStr, mustquery, "")
+	}
+	return
+}
+
+func (e *EsV1) GetNgramQuery_New(querystring, querymust interface{}, must, findfields string) (qstring string) {
+	querymust_string := ""
+	var wordsMust []string
+	if q, ok := querymust.(string); ok {
+		if q != "" {
+			wordsMust = strings.Split(q, ",")
+		}
+	} else if q, ok := querymust.([]string); ok {
+		wordsMust = q
+	} else if q, ok := querymust.([]interface{}); ok {
+		wordsMust = objArrToStringArr(q)
+	}
+	if wordsMust != nil {
+		new_minq := fmt.Sprintf(minq, "%s", findfields)
+		musts := []string{}
+		for _, qs_wordsMust := range wordsMust {
+			qws := strings.Split(qs_wordsMust, "+")
+			mq := []string{}
+			for _, qs_word := range qws {
+				mq = append(mq, fmt.Sprintf(new_minq, qs_word))
+			}
+			musts = append(musts, fmt.Sprintf(NgramMust, strings.Join(mq, ",")))
+		}
+		querymust_string = strings.Join(musts, ",")
+	}
+	//log.Println("must", must, querymust_string)
+
+	//querystring---------------------------------------------
+	query_string := ""
+	var querysShold []string
+	if q, ok := querystring.(string); ok {
+		if q != "" {
+			querysShold = strings.Split(q, ",")
+		}
+	} else if q, ok := querystring.([]string); ok {
+		querysShold = q
+	} else if q, ok := querystring.([]interface{}); ok {
+		querysShold = objArrToStringArr(q)
+	}
+	if querysShold != nil {
+		for k, name := range strings.Split(findfields, ",") {
+			for _, qs_querysShold := range querysShold {
+				if k > 0 {
+					query_string = query_string + "," + fmt.Sprintf(MatchQueryString, fmt.Sprint(name), qs_querysShold)
+				} else {
+					query_string = query_string + fmt.Sprintf(MatchQueryString, fmt.Sprint(name), qs_querysShold)
+				}
+			}
+		}
+	}
+	//log.Println("querystring", query_string)
+	if querymust_string == "" {
+		qstring = fmt.Sprintf(FilterQuery_New, must, query_string, querymust_string)
+	} else {
+		qstring = fmt.Sprintf(FilterQuery_New, must, query_string, ","+querymust_string)
+	}
+	return
+}
+func (e *EsV1) GetByNgram(index, itype string, query interface{}, mustquery, findfields, order, fields string, start, limit int) *[]map[string]interface{} {
+	return e.GetByNgramAll(index, itype, query, mustquery, findfields, order, fields, start, limit, false, false)
+}
+
+//增加高亮、过滤查询、高亮截取字数
+func (e *EsV1) GetByNgramOther(index, itype string, query interface{}, mustquery, findfields, order, fields string, start, limit int, highlight bool, filtermode bool, count int) *[]map[string]interface{} {
+	defer catch()
+	qstr := ""
+	if mustquery != "" && filtermode {
+		qstr = e.GetNgramQuery(query, "", findfields)
+		qstr = fmt.Sprintf(FilterQuery, mustquery, qstr[1:])
+	} else {
+		qstr = e.GetNgramQuery(query, mustquery, findfields)
+	}
+	if qstr != "" {
+		if highlight {
+			ws := []string{}
+			for _, w := range strings.Split(findfields, ",") {
+				ws = append(ws, fmt.Sprintf(highlightStr, w, count))
+			}
+			qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL, strings.Join(ws, ",")) + `}`
+		}
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(order) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", "},{", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//log.Println("ngram-find", qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//增加高亮、过滤查询
+//替换了"号
+func (e *EsV1) GetByNgramAll(index, itype string, query interface{}, mustquery, findfields, order, fields string, start, limit int, highlight bool, filtermode bool) *[]map[string]interface{} {
+	defer catch()
+	qstr := ""
+	if mustquery != "" && filtermode {
+		qstr = e.GetNgramQuery(query, "", findfields)
+		qstr = fmt.Sprintf(FilterQuery, mustquery, qstr[1:])
+	} else {
+		qstr = e.GetNgramQuery(query, mustquery, findfields)
+	}
+	if qstr != "" {
+		if highlight {
+			ws := []string{}
+			for _, w := range strings.Split(findfields, ",") {
+				ws = append(ws, fmt.Sprintf(highlightStr, w, 1))
+			}
+			qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL, strings.Join(ws, ",")) + `}`
+		}
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if strings.HasPrefix(order, "CUSTOM_") {
+			qstr = qstr[:len(qstr)-1] + `,` + strings.TrimLeft(order, "CUSTOM_") + `}`
+		} else if len(order) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", "},{", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//log.Println("ngram-find", qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//增加高亮、过滤查询
+func (e *EsV1) GetByNgramAll_New(index, itype string, querystring, querymust interface{}, mustquery, findfields, order, fields string, start, limit int, highlight bool, filtermode bool) *[]map[string]interface{} {
+	defer catch()
+	qstr := ""
+	if filtermode {
+		qstr = e.GetNgramQuery_New(querystring, querymust, mustquery, findfields)
+	} else {
+		qstr = e.GetNgramQuery_New(querystring, "", mustquery, findfields)
+	}
+	if qstr != "" {
+		if highlight {
+			ws := []string{}
+			for _, w := range strings.Split(findfields, ",") {
+				ws = append(ws, w+`:{"force_source": true}`)
+			}
+			qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL_New, strings.Join(ws, ",")) + `}`
+		}
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(order) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", ",", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//log.Println("ngram-find", order, qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//替换了"号
+func (e *EsV1) GetResForJY(index, itype string, keys []KeyConfig, allquery, findfields, SortQuery, fields string, start, limit int) *[]map[string]interface{} {
+	if len(keys) > 0 {
+		qstr := ""
+		new_minq := fmt.Sprintf(minq, "%s", findfields)
+		not_new_minq := fmt.Sprintf(minq, "%s", findfields) //排除词只查询标题
+		musts := []string{}
+		for _, qs_words := range keys {
+			mq := []string{}
+			notmq := []string{}
+			for _, qs_word := range qs_words.Keys {
+				mq = append(mq, fmt.Sprintf(new_minq, ReplaceYH(qs_word)))
+				/*
+					qs := AnalyzerWord("bidding", qs_word)
+					for _, qw := range qs {
+						mq = append(mq, fmt.Sprintf(new_minq, ReplaceYH(qw)))
+					}
+				*/
+			}
+			for _, qs_word := range qs_words.NotKeys {
+				notmq = append(notmq, fmt.Sprintf(not_new_minq, ReplaceYH(qs_word)))
+			}
+			if len(qs_words.Areas) > 0 {
+				mq = append(mq, fmt.Sprintf(`{"terms":{"area":["%s"]}}`, strings.Join(qs_words.Areas, `","`)))
+			}
+			if len(qs_words.InfoTypes) > 0 {
+				mq = append(mq, fmt.Sprintf(`{"terms":{"toptype":["%s"]}}`, strings.Join(qs_words.InfoTypes, `","`)))
+			}
+			musts = append(musts, fmt.Sprintf(NgramMustAndNot, strings.Join(mq, ","), strings.Join(notmq, ",")))
+		}
+		qstr = fmt.Sprintf(NgramStr, "", strings.Join(musts, ","))
+
+		qstr = fmt.Sprintf(FilterQuery, allquery, qstr[1:])
+		ws := []string{}
+		for _, w := range strings.Split(findfields, ",") {
+			ws = append(ws, fmt.Sprintf(highlightStr, w, 1))
+		}
+		qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL, strings.Join(ws, ",")) + `}`
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(SortQuery) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":` + SortQuery + `}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//log.Println("jy-ngram-find", qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//
+func (e *EsV1) GetAllByNgram(index, itype, qstr, findfields, order, fields string, start, limit, count int, highlight bool) *[]map[string]interface{} {
+	if qstr != "" {
+		if highlight {
+			ws := []string{}
+			for _, w := range strings.Split(findfields, ",") {
+				ws = append(ws, fmt.Sprintf(highlightStr, w, count))
+			}
+			qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL, strings.Join(ws, ",")) + `}`
+		}
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(order) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", "},{", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//log.Println("GetAllByNgram:", qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//数据标记2019-07-10
+func (e *EsV1) GetAllByNgram_MP(index, itype, qstr, findfields, order, fields string, start, limit, count int, highlight bool) *[]map[string]interface{} {
+	if qstr != "" {
+		if highlight {
+			ws := []string{}
+			for _, w := range strings.Split(findfields, ",") {
+				ws = append(ws, fmt.Sprintf(highlightStr, w, count))
+			}
+			qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL_MP, strings.Join(ws, ",")) + `}`
+		}
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(order) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", "},{", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//		log.Println("GetAllByNgram:", qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//ik 分词
+func (e *EsV1) GetAllByIk(index, itype, qstr, findfields, order, fields string, start, limit, count int, highlight bool) *[]map[string]interface{} {
+	if qstr != "" {
+		if highlight {
+			ws := []string{}
+			for _, w := range strings.Split(findfields, ",") {
+				ws = append(ws, fmt.Sprintf(ik_highlightStr, w, count))
+			}
+			qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL_IK, strings.Join(ws, ",")) + `}`
+		}
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(order) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", "},{", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//log.Println("GetAllByNgram:", qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//分词
+func (e *EsV1) AnalyzerWord(index, word string) (result []string) {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	result = []string{}
+	p := url.Values{}
+	p["text"] = []string{word}
+	p["analyzer"] = []string{"ik"}
+	by, err := client.PerformRequest("GET", "/"+index+"/_analyze", p, nil)
+	if err != nil {
+		log.Println("AnalyzerWord Error:", err)
+		return
+	}
+	b, err := by.Body.MarshalJSON()
+	if err != nil {
+		log.Println("AnalyzerWord MarshalJSON Error:", err)
+		return
+	}
+	var res map[string][]map[string]interface{}
+	err = json.Unmarshal(b, &res)
+	if err != nil {
+		log.Println("AnalyzerWord Unmarshal Error:", err)
+		return
+	}
+	if res == nil {
+		return
+	}
+	for _, v := range res["tokens"] {
+		token, _ := v["token"].(string)
+		if token != "" {
+			result = append(result, token)
+		}
+	}
+	return
+}
+
+func (e *EsV1) GetResForJYView(index, itype string, keys []KeyConfig, allquery, findfields, SortQuery, fields string, start, limit int) *[]map[string]interface{} {
+	if len(keys) > 0 {
+		qstr := ""
+		new_minq := fmt.Sprintf(minq, "%s", findfields)
+		not_new_minq := fmt.Sprintf(minq, "%s", findfields) //排除词只查询标题
+		musts := []string{}
+		for _, qs_words := range keys {
+			mq := []string{}
+			notmq := []string{}
+			for _, qs_word := range qs_words.Keys {
+				mq = append(mq, fmt.Sprintf(new_minq, ReplaceYH(qs_word)))
+			}
+			for _, qs_word := range qs_words.NotKeys {
+				notmq = append(notmq, fmt.Sprintf(not_new_minq, ReplaceYH(qs_word)))
+			}
+			if len(qs_words.Areas) > 0 {
+				mq = append(mq, fmt.Sprintf(`{"terms":{"area":["%s"]}}`, strings.Join(qs_words.Areas, `","`)))
+			}
+			if len(qs_words.InfoTypes) > 0 {
+				mq = append(mq, fmt.Sprintf(`{"terms":{"toptype":["%s"]}}`, strings.Join(qs_words.InfoTypes, `","`)))
+			}
+			musts = append(musts, fmt.Sprintf(NgramMustAndNot, strings.Join(mq, ","), strings.Join(notmq, ",")))
+		}
+		qstr = fmt.Sprintf(NgramStr, "", strings.Join(musts, ","))
+
+		qstr = fmt.Sprintf(FilterQuery, allquery, qstr[1:])
+		ws := []string{}
+		for _, w := range strings.Split(findfields, ",") {
+			ws = append(ws, fmt.Sprintf(highlightStr, w, 1))
+		}
+		qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL, strings.Join(ws, ",")) + `}`
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(SortQuery) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":` + SortQuery + `}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//返回count 和 res
+func (e *EsV1) GetWithCount(index, itype, countQuery, allQuery string) (int64, *[]map[string]interface{}) {
+	client := e.GetEsConn()
+	defer func() {
+		go e.DestoryEsConn(client)
+	}()
+	var res []map[string]interface{}
+	var count int64 = 0
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		searchResult, err := client.Search().Index(index).Type(itype).Source(allQuery).Do()
+		if err != nil {
+			log.Println("从ES查询出错", err.Error())
+			return count, nil
+		}
+
+		if searchResult.Hits != nil {
+			resNum := len(searchResult.Hits.Hits)
+			count = searchResult.Hits.TotalHits
+			if resNum <= 5000 {
+				res = make([]map[string]interface{}, resNum)
+				for i, hit := range searchResult.Hits.Hits {
+					//d := json.NewDecoder(bytes.NewBuffer(*hit.Source))
+					//d.UseNumber()
+					//d.Decode(&res[i])
+					parseErr := json.Unmarshal(*hit.Source, &res[i])
+					if parseErr == nil && hit.Highlight != nil && res[i] != nil {
+						res[i]["highlight"] = map[string][]string(hit.Highlight)
+					}
+				}
+			} else {
+				log.Println("查询结果太多,查询到:", resNum, "条")
+			}
+
+		}
+	}
+	return count, &res
+}
+
+//GetAggs 聚合查询
+func (e *EsV1) GetAggs(index, itype, query string) (aggs esV7.Aggregations, count int64, res []map[string]interface{}) {
+	defer catch()
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	if client != nil {
+		searchResult, err := client.Search().Index(index).Type(itype).Source(query).Do()
+		if err != nil {
+			log.Println("从ES查询出错", err.Error())
+		}
+		if searchResult.Aggregations != nil {
+			aggs = esV7.Aggregations{}
+			for k, v := range searchResult.Aggregations {
+				aggs[k] = *v
+			}
+		}
+		if searchResult.Hits != nil {
+			count = searchResult.Hits.TotalHits
+			resNum := len(searchResult.Hits.Hits)
+			if resNum <= 5000 {
+				res = make([]map[string]interface{}, resNum)
+				for i, hit := range searchResult.Hits.Hits {
+					parseErr := json.Unmarshal(*hit.Source, &res[i])
+					if parseErr == nil && hit.Highlight != nil && res[i] != nil {
+						res[i]["highlight"] = map[string][]string(hit.Highlight)
+					}
+					if hit.Source != nil && res[i] != nil {
+						data := map[string]interface{}{}
+						dataByte, _ := hit.Source.MarshalJSON()
+						json.Unmarshal(dataByte, &data)
+						res[i]["source"] = data
+					}
+				}
+			} else {
+				log.Println("查询结果太多,查询到:", resNum, "条")
+			}
+		}
+	}
+	return
+}
+
+func (e *EsV1) Analyze(text, index, analyzer string) (res string) {
+	return (&analyze{}).do(text, index, analyzer, e.Address, e)
+}
+
+func (e *EsV1) analyzeResp(text, analyzer, u string) (*http.Request, error) {
+	up, _ := url.Parse(u)
+	query := up.Query()
+	query.Add("text", text)
+	query.Add("analyzer", analyzer)
+	up.RawQuery = query.Encode()
+	return http.NewRequest("GET", up.String(), nil)
+}

+ 992 - 0
es/esv7.go

@@ -0,0 +1,992 @@
+package es
+
+import (
+	"context"
+	"encoding/json"
+	"fmt"
+	"log"
+	"net/http"
+	"runtime"
+	"strconv"
+	"strings"
+	"sync"
+	"time"
+
+	es "github.com/olivere/elastic/v7"
+)
+
+type EsV7 struct {
+	Address      string
+	UserName     string
+	Password     string
+	Size         int
+	pool         chan *es.Client
+	lastTime     int64
+	lastTimeLock *sync.Mutex
+}
+
+//初始化es,带有用户名密码认证
+func (e *EsV7) Init() {
+	if e.Size <= 0 {
+		e.Size = SIZE
+	}
+	e.pool = make(chan *es.Client, 3*e.Size)
+	e.lastTimeLock = &sync.Mutex{}
+	for i := 0; i < e.Size; i++ {
+		client, _ := e.newClient()
+		e.pool <- client
+	}
+}
+func (e *EsV7) newClient() (*es.Client, error) {
+	opt := []es.ClientOptionFunc{es.SetURL(strings.Split(e.Address, ",")...), es.SetMaxRetries(2), es.SetSniff(false)}
+	if e.UserName != "" && e.Password != "" {
+		opt = append(opt, es.SetBasicAuth(e.UserName, e.Password))
+	}
+	return es.NewClient(opt...)
+}
+
+//关闭连接
+func (e *EsV7) DestoryEsConn(client *es.Client) {
+	select {
+	case e.pool <- client:
+		break
+	case <-time.After(time.Second * 1):
+		if client != nil {
+			client.Stop()
+		}
+		client = nil
+	}
+}
+
+//获取连接
+func (e *EsV7) GetEsConn() *es.Client {
+	select {
+	case c := <-e.pool:
+		if c == nil || !c.IsRunning() {
+			log.Println("new esclient.", len(e.pool))
+			client, err := e.newClient()
+			if err == nil && client.IsRunning() {
+				return client
+			}
+		}
+		return c
+	case <-time.After(time.Second * 4):
+		//超时
+		e.lastTimeLock.Lock()
+		defer e.lastTimeLock.Unlock()
+		//12秒后允许创建链接
+		c := time.Now().Unix() - e.lastTime
+		if c > 12 {
+			e.lastTime = time.Now().Unix()
+			log.Println("add client..", len(e.pool))
+			c, _ := e.newClient()
+			go func() {
+				for i := 0; i < 2; i++ {
+					client, _ := e.newClient()
+					e.pool <- client
+				}
+			}()
+			return c
+		}
+		return nil
+	}
+}
+
+//保存对象
+func (e *EsV7) Save(index, itype string, obj interface{}) bool {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	defer func() {
+		if r := recover(); r != nil {
+			log.Println("[E]", r)
+			for skip := 1; ; skip++ {
+				_, file, line, ok := runtime.Caller(skip)
+				if !ok {
+					break
+				}
+				go log.Printf("%v,%v\n", file, line)
+			}
+		}
+	}()
+	data := objToMap(obj)
+	_id := bsonIdToSId((*data)["_id"])
+	(*data)["id"] = _id
+	delete((*data), "_id")
+	_, err := client.Index().Index(index).Id(_id).BodyJson(data).Do(context.TODO())
+	if err != nil {
+		log.Println("保存到ES出错", err.Error(), obj)
+		return false
+	} else {
+		return true
+	}
+
+}
+
+//通用查询
+//{"query": {"bool":{"must":[{"query_string":{"default_field":"name","query":"*"}}]}}}
+//{"query":{"bool":{"must":{"match":{"content":{"query":"fulltextsearch","operator":"and"}}},"should":[{"match":{"content":{"query":"Elasticsearch","boost":3}}},{"match":{"content":{"query":"Lucene","boost":2}}}]}}}
+//prefix
+//{"query":{"match":{"title":{"query":"brownfox","operator":"and"}}}} //默认为or
+//{"query":{"multi_match":{"query":"PolandStreetW1V","type":"most_fields","fields":["*_street","city^2","country","postcode"]}}}
+//{"query":{"wildcard":{"postcode":"W?F*HW"}}}
+//{"query":{"regexp":{"postcode":"W[0-9].+"}}}
+//{"query":{"filtered":{"filter":{"range":{"price":{"gte":10000}}}}},"aggs":{"single_avg_price":{"avg":{"field":"price"}}}}
+//{"query":{"match":{"make":"ford"}},"aggs":{"colors":{"terms":{"field":"color"}}}}//查fork有几种颜色
+//过滤器不会计算相关度的得分,所以它们在计算上更快一些
+//{"query":{"filtered":{"query":{"match_all":{}},"filter":{"range":{"balance":{"gte":20000,"lte":30000}}}}}}
+//{"query":{"match_all":{}},"from":10,"size":10,"_source":["account_number","balance"],"sort":{"balance":{"order":"desc"}}}
+//{"query":{"match_phrase":{"address":"milllane"}}}和match不同会去匹配整个短语,相当于must[]
+func (e *EsV7) GetBySearchType(index, searchType, query string) (int64, *[]map[string]interface{}) {
+	t, _, l := e.get(index, "", searchType, query, true, true)
+	return t, l
+}
+func (e *EsV7) Get(index, itype, query string) *[]map[string]interface{} {
+	_, _, r := e.get(index, itype, "", query, true, true)
+	return r
+}
+func (e *EsV7) get(index, itype, searchType, query string, isLimit, isHighlight bool) (int64, int, *[]map[string]interface{}) {
+	query = filterReg.ReplaceAllString(query, "")
+	//log.Println("query  -- ", query)
+	client := e.GetEsConn()
+	defer func() {
+		go e.DestoryEsConn(client)
+	}()
+	var res []map[string]interface{}
+	var total int64
+	var resNum int
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		ss := client.Search().Index(index).Source(query)
+		if searchType != "" {
+			ss.SearchType(searchType)
+		}
+		searchResult, err := ss.Do(context.TODO())
+		if err != nil {
+			log.Println("从ES查询出错", err.Error())
+			return total, resNum, nil
+		}
+		total = searchResult.TotalHits()
+		if searchResult.Hits != nil {
+			resNum = len(searchResult.Hits.Hits)
+			if isLimit && resNum <= 5000 {
+				res = make([]map[string]interface{}, resNum)
+				for i, hit := range searchResult.Hits.Hits {
+					//d := json.NewDecoder(bytes.NewBuffer(*hit.Source))
+					//d.UseNumber()
+					//d.Decode(&res[i])
+					parseErr := json.Unmarshal(hit.Source, &res[i])
+					if res[i] != nil {
+						res[i]["_id"] = hit.Id
+					}
+					if isHighlight && parseErr == nil && hit.Highlight != nil && res[i] != nil {
+						res[i]["highlight"] = map[string][]string(hit.Highlight)
+					}
+				}
+			} else {
+				log.Println("查询结果太多,查询到:", resNum, "条")
+			}
+
+		}
+	}
+	return total, resNum, &res
+}
+func (e *EsV7) GetOA(index, itype, query string) (*[]map[string]interface{}, int) {
+	_, n, l := e.get(index, itype, "", query, true, true)
+	return l, n
+}
+
+func (e *EsV7) GetNoLimit(index, itype, query string) *[]map[string]interface{} {
+	_, _, l := e.get(index, itype, "", query, false, false)
+	return l
+}
+
+//分页查询
+//{"name":"张三","$and":[{"age":{"$gt":10}},{"age":{"$lte":20}}]}
+//fields直接是 `"_id","title"`
+func (e *EsV7) GetPage(index, itype, query, order, field string, start, limit int) *[]map[string]interface{} {
+	return e.Get(index, itype, MakeQuery(query, order, field, start, limit))
+}
+
+//openapi
+func (e *EsV7) GetOAPage(index, itype, query, order, field string, start, limit int) (*[]map[string]interface{}, int) {
+	return e.GetOA(index, itype, MakeQuery(query, order, field, start, limit))
+}
+
+func (e *EsV7) GetByIdField(index, itype, id, fields string) *map[string]interface{} {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		query := `{"query":{"term":{"_id":"` + id + `"}}`
+		if len(fields) > 0 {
+			query = query + `,"_source":[` + fields + `]`
+		}
+		query = query + "}"
+		searchResult, err := client.Search().Index(index).Source(query).Do(context.TODO())
+		if err != nil {
+			log.Println("从ES查询出错", err.Error())
+			return nil
+		}
+		var res map[string]interface{}
+		if searchResult.Hits != nil {
+			resNum := len(searchResult.Hits.Hits)
+			if resNum == 1 {
+				res = make(map[string]interface{})
+				for _, hit := range searchResult.Hits.Hits {
+					json.Unmarshal(hit.Source, &res)
+					if res != nil {
+						res["_id"] = hit.Id
+					}
+				}
+				return &res
+			}
+		}
+	}
+	return nil
+}
+
+//根据id来查询文档
+func (e *EsV7) GetById(index, itype string, ids ...string) *[]map[string]interface{} {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	var res []map[string]interface{}
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		query := es.NewIdsQuery().Ids(ids...)
+		searchResult, err := client.Search().Index(index).Query(query).Do(context.TODO())
+		if err != nil {
+			log.Println("从ES查询出错", err.Error())
+			return nil
+		}
+
+		if searchResult.Hits != nil {
+			resNum := len(searchResult.Hits.Hits)
+			if resNum <= 5000 {
+				res = make([]map[string]interface{}, resNum)
+				for i, hit := range searchResult.Hits.Hits {
+					json.Unmarshal(hit.Source, &res[i])
+					if res[i] != nil {
+						res[i]["_id"] = hit.Id
+					}
+				}
+			} else {
+				log.Println("查询结果太多,查询到:", resNum, "条")
+			}
+
+		}
+	}
+	return &res
+}
+
+//根据语句更新对象
+func (e *EsV7) Update(index, itype, id string, updateStr string) bool {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	b := false
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		var err error
+		_, err = client.Update().Index(index).Id(id).Script(es.NewScript(updateStr)).Do(context.TODO())
+		if err != nil {
+			log.Println("更新检索出错:", err.Error())
+		} else {
+			b = true
+		}
+	}
+	return b
+}
+
+func (e *EsV7) BulkUpdate(index, itype string, ids []string, updateStr string) {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		for _, id := range ids {
+			_, err := client.Update().Index(index).Id(id).Script(es.NewScript(updateStr)).Do(context.TODO())
+			if err != nil {
+				log.Println("更新检索出错:", err.Error())
+			}
+		}
+	}
+}
+
+func (e *EsV7) NewBulkUpdate(index string, params ...[]string) bool {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		bulk := client.Bulk()
+		for _, param := range params {
+			req := es.NewBulkUpdateRequest().Index(index).Id(param[0]).RetryOnConflict(3).Script(es.NewScript(param[1]))
+			bulk.Add(req)
+		}
+		_, err := bulk.Refresh("wait_for").Do(context.TODO())
+		if err != nil {
+			log.Println("批量更新检索出错:", err.Error())
+			return false
+		}
+		return true
+	}
+	return false
+}
+
+//根据id删除索引对象
+func (e *EsV7) DelById(index, itype, id string) bool {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	b := false
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		var err error
+		_, err = client.Delete().Index(index).Id(id).Do(context.TODO())
+		if err != nil {
+			log.Println("更新检索出错:", err.Error())
+		} else {
+			b = true
+		}
+	}
+	return b
+}
+
+//先删除后增
+func (e *EsV7) UpdateNewDoc(index, itype string, obj ...interface{}) bool {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	b := false
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		var err error
+		for _, v := range obj {
+			tempObj := objToMap(v)
+			if tempObj == nil || len(*tempObj) == 0 {
+				continue
+			}
+			id := bsonIdToSId((*tempObj)["_id"])
+			(*tempObj)["id"] = id
+			delete(*tempObj, "_id")
+			if id != "" {
+				client.Delete().Index(index).Id(id).Do(context.TODO())
+			}
+			_, err = client.Index().Index(index).Id(id).BodyJson(tempObj).Do(context.TODO())
+			if err != nil {
+				log.Println("保存到ES出错", err.Error())
+			} else {
+				b = true
+			}
+		}
+
+	}
+	return b
+}
+
+func (e *EsV7) BulkSave(index, itype string, obj *[]map[string]interface{}, isDelBefore bool) {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		req := client.Bulk()
+		for _, v := range *obj {
+			if v == nil || len(v) == 0 {
+				continue
+			}
+			_id := bsonIdToSId(v["_id"])
+			v["id"] = _id
+			delete(v, "_id")
+			if isDelBefore && _id != "" {
+				req = req.Add(es.NewBulkDeleteRequest().Index(index).Id(_id))
+			}
+			req = req.Add(es.NewBulkIndexRequest().Index(index).Id(_id).Doc(v))
+		}
+		_, err := req.Do(context.TODO())
+		if err != nil {
+			log.Println("批量保存到ES出错", err.Error())
+		}
+	}
+}
+
+func (e *EsV7) Count(index, itype string, query interface{}) int64 {
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	if client != nil {
+		defer func() {
+			if r := recover(); r != nil {
+				log.Println("[E]", r)
+				for skip := 1; ; skip++ {
+					_, file, line, ok := runtime.Caller(skip)
+					if !ok {
+						break
+					}
+					go log.Printf("%v,%v\n", file, line)
+				}
+			}
+		}()
+		var n int64
+		var err error
+		if qs, ok := query.(string); ok {
+			n, err = client.Count(index).BodyString(qs).Do(context.TODO())
+		} else if qi, ok2 := query.(es.Query); ok2 {
+			n, err = client.Count(index).Query(qi).Do(context.TODO())
+		}
+		if err != nil {
+			log.Println("统计出错", err.Error())
+		}
+
+		return n
+	}
+	return 0
+}
+
+//替换了"号
+func (e *EsV7) GetNgramQuery(query interface{}, mustquery, findfields string) (qstr string) {
+	var words []string
+	if q, ok := query.(string); ok {
+		if q != "" {
+			words = strings.Split(q, ",")
+		}
+	} else if q, ok := query.([]string); ok {
+		words = q
+	} else if q, ok := query.([]interface{}); ok {
+		words = objArrToStringArr(q)
+	}
+	if words != nil {
+		new_minq := fmt.Sprintf(minq, "%s", findfields)
+		musts := []string{}
+		for _, qs_words := range words {
+			qws := strings.Split(qs_words, "+")
+			mq := []string{}
+			for _, qs_word := range qws {
+				mq = append(mq, fmt.Sprintf(new_minq, ReplaceYH(qs_word)))
+			}
+			musts = append(musts, fmt.Sprintf(NgramMust, strings.Join(mq, ",")))
+		}
+		qstr = fmt.Sprintf(NgramStr, mustquery, strings.Join(musts, ","))
+		//log.Println("ngram-query", qstr)
+	} else {
+		qstr = fmt.Sprintf(NgramStr, mustquery, "")
+	}
+	return
+}
+
+func (e *EsV7) GetNgramQuery_New(querystring, querymust interface{}, must, findfields string) (qstring string) {
+	querymust_string := ""
+	var wordsMust []string
+	if q, ok := querymust.(string); ok {
+		if q != "" {
+			wordsMust = strings.Split(q, ",")
+		}
+	} else if q, ok := querymust.([]string); ok {
+		wordsMust = q
+	} else if q, ok := querymust.([]interface{}); ok {
+		wordsMust = objArrToStringArr(q)
+	}
+	if wordsMust != nil {
+		new_minq := fmt.Sprintf(minq, "%s", findfields)
+		musts := []string{}
+		for _, qs_wordsMust := range wordsMust {
+			qws := strings.Split(qs_wordsMust, "+")
+			mq := []string{}
+			for _, qs_word := range qws {
+				mq = append(mq, fmt.Sprintf(new_minq, qs_word))
+			}
+			musts = append(musts, fmt.Sprintf(NgramMust, strings.Join(mq, ",")))
+		}
+		querymust_string = strings.Join(musts, ",")
+	}
+	//log.Println("must", must, querymust_string)
+
+	//querystring---------------------------------------------
+	query_string := ""
+	var querysShold []string
+	if q, ok := querystring.(string); ok {
+		if q != "" {
+			querysShold = strings.Split(q, ",")
+		}
+	} else if q, ok := querystring.([]string); ok {
+		querysShold = q
+	} else if q, ok := querystring.([]interface{}); ok {
+		querysShold = objArrToStringArr(q)
+	}
+	if querysShold != nil {
+		for k, name := range strings.Split(findfields, ",") {
+			for _, qs_querysShold := range querysShold {
+				if k > 0 {
+					query_string = query_string + "," + fmt.Sprintf(MatchQueryString, fmt.Sprint(name), qs_querysShold)
+				} else {
+					query_string = query_string + fmt.Sprintf(MatchQueryString, fmt.Sprint(name), qs_querysShold)
+				}
+			}
+		}
+	}
+	//log.Println("querystring", query_string)
+	if querymust_string == "" {
+		qstring = fmt.Sprintf(FilterQuery_New, must, query_string, querymust_string)
+	} else {
+		qstring = fmt.Sprintf(FilterQuery_New, must, query_string, ","+querymust_string)
+	}
+	return
+}
+func (e *EsV7) GetByNgram(index, itype string, query interface{}, mustquery, findfields, order, fields string, start, limit int) *[]map[string]interface{} {
+	return e.GetByNgramAll(index, itype, query, mustquery, findfields, order, fields, start, limit, false, false)
+}
+
+//增加高亮、过滤查询、高亮截取字数
+func (e *EsV7) GetByNgramOther(index, itype string, query interface{}, mustquery, findfields, order, fields string, start, limit int, highlight bool, filtermode bool, count int) *[]map[string]interface{} {
+	defer catch()
+	qstr := e.GetNgramQuery(query, mustquery, findfields)
+	if qstr != "" {
+		if highlight {
+			ws := []string{}
+			for _, w := range strings.Split(findfields, ",") {
+				ws = append(ws, fmt.Sprintf(highlightStr, w, count))
+			}
+			qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL, strings.Join(ws, ",")) + `}`
+		}
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(order) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", "},{", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//log.Println("ngram-find", qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//增加高亮、过滤查询
+//替换了"号
+func (e *EsV7) GetByNgramAll(index, itype string, query interface{}, mustquery, findfields, order, fields string, start, limit int, highlight bool, filtermode bool) *[]map[string]interface{} {
+	defer catch()
+	qstr := e.GetNgramQuery(query, mustquery, findfields)
+	if qstr != "" {
+		if highlight {
+			ws := []string{}
+			for _, w := range strings.Split(findfields, ",") {
+				ws = append(ws, fmt.Sprintf(highlightStr, w, 1))
+			}
+			qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL, strings.Join(ws, ",")) + `}`
+		}
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if strings.HasPrefix(order, "CUSTOM_") {
+			qstr = qstr[:len(qstr)-1] + `,` + strings.TrimLeft(order, "CUSTOM_") + `}`
+		} else if len(order) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", "},{", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//log.Println("ngram-find", qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//增加高亮、过滤查询
+func (e *EsV7) GetByNgramAll_New(index, itype string, querystring, querymust interface{}, mustquery, findfields, order, fields string, start, limit int, highlight bool, filtermode bool) *[]map[string]interface{} {
+	defer catch()
+	qstr := ""
+	if filtermode {
+		qstr = e.GetNgramQuery_New(querystring, querymust, mustquery, findfields)
+	} else {
+		qstr = e.GetNgramQuery_New(querystring, "", mustquery, findfields)
+	}
+	if qstr != "" {
+		if highlight {
+			ws := []string{}
+			for _, w := range strings.Split(findfields, ",") {
+				ws = append(ws, w+`:{"force_source": true}`)
+			}
+			qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL_New, strings.Join(ws, ",")) + `}`
+		}
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(order) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", ",", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//log.Println("ngram-find", order, qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//替换了"号
+func (e *EsV7) GetResForJY(index, itype string, keys []KeyConfig, allquery, findfields, SortQuery, fields string, start, limit int) *[]map[string]interface{} {
+	if len(keys) > 0 {
+		qstr := ""
+		new_minq := fmt.Sprintf(minq, "%s", findfields)
+		not_new_minq := fmt.Sprintf(minq, "%s", findfields) //排除词只查询标题
+		musts := []string{}
+		for _, qs_words := range keys {
+			mq := []string{}
+			notmq := []string{}
+			for _, qs_word := range qs_words.Keys {
+				mq = append(mq, fmt.Sprintf(new_minq, ReplaceYH(qs_word)))
+				/*
+					qs := AnalyzerWord("bidding", qs_word)
+					for _, qw := range qs {
+						mq = append(mq, fmt.Sprintf(new_minq, ReplaceYH(qw)))
+					}
+				*/
+			}
+			for _, qs_word := range qs_words.NotKeys {
+				notmq = append(notmq, fmt.Sprintf(not_new_minq, ReplaceYH(qs_word)))
+			}
+			if len(qs_words.Areas) > 0 {
+				mq = append(mq, fmt.Sprintf(`{"terms":{"area":["%s"]}}`, strings.Join(qs_words.Areas, `","`)))
+			}
+			if len(qs_words.InfoTypes) > 0 {
+				mq = append(mq, fmt.Sprintf(`{"terms":{"toptype":["%s"]}}`, strings.Join(qs_words.InfoTypes, `","`)))
+			}
+			musts = append(musts, fmt.Sprintf(NgramMustAndNot, strings.Join(mq, ","), strings.Join(notmq, ",")))
+		}
+		qstr = fmt.Sprintf(NgramStr, allquery, strings.Join(musts, ","))
+		ws := []string{}
+		for _, w := range strings.Split(findfields, ",") {
+			ws = append(ws, fmt.Sprintf(highlightStr, w, 1))
+		}
+		qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL, strings.Join(ws, ",")) + `}`
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(SortQuery) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":` + SortQuery + `}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//log.Println("jy-ngram-find", qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//
+func (e *EsV7) GetAllByNgram(index, itype, qstr, findfields, order, fields string, start, limit, count int, highlight bool) *[]map[string]interface{} {
+	if qstr != "" {
+		if highlight {
+			ws := []string{}
+			for _, w := range strings.Split(findfields, ",") {
+				ws = append(ws, fmt.Sprintf(highlightStr, w, count))
+			}
+			qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL, strings.Join(ws, ",")) + `}`
+		}
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(order) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", "},{", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		log.Println("GetAllByNgram:", qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//数据标记2019-07-10
+func (e *EsV7) GetAllByNgram_MP(index, itype, qstr, findfields, order, fields string, start, limit, count int, highlight bool) *[]map[string]interface{} {
+	if qstr != "" {
+		if highlight {
+			ws := []string{}
+			for _, w := range strings.Split(findfields, ",") {
+				ws = append(ws, fmt.Sprintf(highlightStr, w, count))
+			}
+			qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL_MP, strings.Join(ws, ",")) + `}`
+		}
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(order) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", "},{", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//		log.Println("GetAllByNgram:", qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//ik 分词
+func (e *EsV7) GetAllByIk(index, itype, qstr, findfields, order, fields string, start, limit, count int, highlight bool) *[]map[string]interface{} {
+	if qstr != "" {
+		if highlight {
+			ws := []string{}
+			for _, w := range strings.Split(findfields, ",") {
+				ws = append(ws, fmt.Sprintf(ik_highlightStr, w, count))
+			}
+			qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL_IK, strings.Join(ws, ",")) + `}`
+		}
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(order) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":[` + SR(SR(SR(SR(order, ",", "},{", -1), " ", "", -1), ":-1", `:"desc"`, -1), ":1", `:"asc"`, -1) + `]}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		//log.Println("GetAllByNgram:", qstr)
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+func (e *EsV7) GetResForJYView(index, itype string, keys []KeyConfig, allquery, findfields, SortQuery, fields string, start, limit int) *[]map[string]interface{} {
+	if len(keys) > 0 {
+		qstr := ""
+		new_minq := fmt.Sprintf(minq, "%s", findfields)
+		not_new_minq := fmt.Sprintf(minq, "%s", findfields) //排除词只查询标题
+		musts := []string{}
+		for _, qs_words := range keys {
+			mq := []string{}
+			notmq := []string{}
+			for _, qs_word := range qs_words.Keys {
+				mq = append(mq, fmt.Sprintf(new_minq, ReplaceYH(qs_word)))
+			}
+			for _, qs_word := range qs_words.NotKeys {
+				notmq = append(notmq, fmt.Sprintf(not_new_minq, ReplaceYH(qs_word)))
+			}
+			if len(qs_words.Areas) > 0 {
+				mq = append(mq, fmt.Sprintf(`{"terms":{"area":["%s"]}}`, strings.Join(qs_words.Areas, `","`)))
+			}
+			if len(qs_words.InfoTypes) > 0 {
+				mq = append(mq, fmt.Sprintf(`{"terms":{"toptype":["%s"]}}`, strings.Join(qs_words.InfoTypes, `","`)))
+			}
+			musts = append(musts, fmt.Sprintf(NgramMustAndNot, strings.Join(mq, ","), strings.Join(notmq, ",")))
+		}
+		qstr = fmt.Sprintf(NgramStr, allquery, strings.Join(musts, ","))
+		ws := []string{}
+		for _, w := range strings.Split(findfields, ",") {
+			ws = append(ws, fmt.Sprintf(highlightStr, w, 1))
+		}
+		qstr = qstr[:len(qstr)-1] + `,` + fmt.Sprintf(HL, strings.Join(ws, ",")) + `}`
+		if len(fields) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"_source":[` + fields + "]}"
+		}
+		if len(SortQuery) > 0 {
+			qstr = qstr[:len(qstr)-1] + `,"sort":` + SortQuery + `}`
+		}
+		if start > -1 {
+			qstr = qstr[:len(qstr)-1] + `,"from":` + strconv.Itoa(start) + `,"size":` + strconv.Itoa(limit) + "}"
+		}
+		return e.Get(index, itype, qstr)
+	} else {
+		return nil
+	}
+}
+
+//返回count 和 res
+func (e *EsV7) GetWithCount(index, itype, countQuery, allQuery string) (int64, *[]map[string]interface{}) {
+	defer catch()
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	var res []map[string]interface{}
+	var count int64
+	if client != nil {
+		allQuery = strings.TrimPrefix(strings.TrimSpace(allQuery), "{")
+		allQuery = `{"track_total_hits": true,` + allQuery
+		searchResult, err := client.Search().Index(index).Source(allQuery).Do(context.TODO())
+		if err != nil {
+			log.Println("从ES查询出错", err.Error())
+			return count, nil
+		}
+		count = searchResult.TotalHits()
+		if searchResult.Hits != nil {
+			resNum := len(searchResult.Hits.Hits)
+			if resNum <= 5000 {
+				res = make([]map[string]interface{}, resNum)
+				for i, hit := range searchResult.Hits.Hits {
+					//d := json.NewDecoder(bytes.NewBuffer(*hit.Source))
+					//d.UseNumber()
+					//d.Decode(&res[i])
+					parseErr := json.Unmarshal(hit.Source, &res[i])
+					if res[i] != nil {
+						res[i]["_id"] = hit.Id
+					}
+					if parseErr == nil && hit.Highlight != nil && res[i] != nil {
+						res[i]["highlight"] = map[string][]string(hit.Highlight)
+					}
+				}
+			} else {
+				log.Println("查询结果太多,查询到:", resNum, "条")
+			}
+		}
+	}
+	return count, &res
+}
+
+//GetAggs 聚合查询
+func (e *EsV7) GetAggs(index, itype, query string) (aggs es.Aggregations, count int64, res []map[string]interface{}) {
+	defer catch()
+	client := e.GetEsConn()
+	defer e.DestoryEsConn(client)
+	if client != nil {
+		searchResult, err := client.Search().Index(index).Source(query).Do(context.TODO())
+		if err != nil {
+			log.Println("从ES查询出错", err.Error())
+		}
+		count = searchResult.TotalHits()
+		if searchResult.Aggregations != nil {
+			aggs = searchResult.Aggregations
+		}
+		if searchResult.Hits != nil {
+			resNum := len(searchResult.Hits.Hits)
+			if resNum <= 5000 {
+				res = make([]map[string]interface{}, resNum)
+				for i, hit := range searchResult.Hits.Hits {
+					parseErr := json.Unmarshal(hit.Source, &res[i])
+					if res[i] != nil {
+						res[i]["_id"] = hit.Id
+					}
+					if parseErr == nil && hit.Highlight != nil && res[i] != nil {
+						res[i]["highlight"] = map[string][]string(hit.Highlight)
+					}
+					if hit.Source != nil && res[i] != nil {
+						data := map[string]interface{}{}
+						dataByte, _ := hit.Source.MarshalJSON()
+						json.Unmarshal(dataByte, &data)
+						res[i]["source"] = data
+					}
+				}
+			} else {
+				log.Println("查询结果太多,查询到:", resNum, "条")
+			}
+		}
+	}
+	return
+}
+
+func (e *EsV7) Analyze(text, index, analyzer string) (res string) {
+	return (&analyze{}).do(text, index, analyzer, e.Address, e)
+}
+
+func (e *EsV7) analyzeResp(text, analyzer, u string) (*http.Request, error) {
+	req, err := http.NewRequest("POST", u, strings.NewReader(fmt.Sprintf(`{"analyzer":"%s","text":"%s"}`, analyzer, text)))
+	if err != nil {
+		return req, err
+	}
+	if e.UserName != "" && e.Password != "" {
+		req.SetBasicAuth(e.UserName, e.Password)
+	}
+	req.Header.Set("Content-Type", "application/json")
+	return req, err
+}

+ 4 - 4
esv1/elasticutil.go

@@ -191,7 +191,7 @@ func Get(index, itype, query string) *[]map[string]interface{} {
 
 
 		if searchResult.Hits != nil {
 		if searchResult.Hits != nil {
 			resNum := len(searchResult.Hits.Hits)
 			resNum := len(searchResult.Hits.Hits)
-			if resNum < 5000 {
+			if resNum <= 5000 {
 				res = make([]map[string]interface{}, resNum)
 				res = make([]map[string]interface{}, resNum)
 				for i, hit := range searchResult.Hits.Hits {
 				for i, hit := range searchResult.Hits.Hits {
 					//d := json.NewDecoder(bytes.NewBuffer(*hit.Source))
 					//d := json.NewDecoder(bytes.NewBuffer(*hit.Source))
@@ -244,7 +244,7 @@ func GetNew(index, itype, query string) (*[]map[string]interface{}, int64) {
 		if searchResult.Hits != nil {
 		if searchResult.Hits != nil {
 			count = searchResult.Hits.TotalHits
 			count = searchResult.Hits.TotalHits
 			resNum := len(searchResult.Hits.Hits)
 			resNum := len(searchResult.Hits.Hits)
-			if resNum < 5000 {
+			if resNum > 5000 {
 				log.Println("查询结果太多,查询到:", resNum, "条")
 				log.Println("查询结果太多,查询到:", resNum, "条")
 			} else {
 			} else {
 				res = make([]map[string]interface{}, resNum)
 				res = make([]map[string]interface{}, resNum)
@@ -290,7 +290,7 @@ func GetOA(index, itype, query string) (*[]map[string]interface{}, int) {
 
 
 		if searchResult.Hits != nil {
 		if searchResult.Hits != nil {
 			resNum = len(searchResult.Hits.Hits)
 			resNum = len(searchResult.Hits.Hits)
-			if resNum < 5000 {
+			if resNum <= 5000 {
 				res = make([]map[string]interface{}, resNum)
 				res = make([]map[string]interface{}, resNum)
 				for i, hit := range searchResult.Hits.Hits {
 				for i, hit := range searchResult.Hits.Hits {
 					//d := json.NewDecoder(bytes.NewBuffer(*hit.Source))
 					//d := json.NewDecoder(bytes.NewBuffer(*hit.Source))
@@ -528,7 +528,7 @@ func GetById(index, itype string, ids ...string) *[]map[string]interface{} {
 
 
 		if searchResult.Hits != nil {
 		if searchResult.Hits != nil {
 			resNum := len(searchResult.Hits.Hits)
 			resNum := len(searchResult.Hits.Hits)
-			if resNum < 5000 {
+			if resNum <= 5000 {
 				res = make([]map[string]interface{}, resNum)
 				res = make([]map[string]interface{}, resNum)
 				for i, hit := range searchResult.Hits.Hits {
 				for i, hit := range searchResult.Hits.Hits {
 					json.Unmarshal(*hit.Source, &res[i])
 					json.Unmarshal(*hit.Source, &res[i])

+ 25 - 7
etcd/etcd.go

@@ -4,6 +4,7 @@ import (
 	"context"
 	"context"
 	"fmt"
 	"fmt"
 	"log"
 	"log"
+	"math/rand"
 	"os"
 	"os"
 	"os/signal"
 	"os/signal"
 	"syscall"
 	"syscall"
@@ -28,8 +29,8 @@ func NewEtcd(endpoints ...string) *etcd {
  * @param key 服务的key
  * @param key 服务的key
  * @param value
  * @param value
  */
  */
-func (e *etcd) Register(key, value string) error {
-	return e.register(key, value)
+func (e *etcd) Register(kvs ...string) error {
+	return e.register(kvs...)
 }
 }
 
 
 /*
 /*
@@ -42,18 +43,35 @@ func (e *etcd) RegisterIpPort(key, port string) error {
 	return e.register(key, fmt.Sprintf("%s:%s", iputil.InternalIp(), port))
 	return e.register(key, fmt.Sprintf("%s:%s", iputil.InternalIp(), port))
 }
 }
 
 
-func (e *etcd) register(key, value string) error {
-	stop, err := NewPublisher(e.endpoints, key, value).Register()
-	if err != nil {
-		return err
+func (e *etcd) register(kvs ...string) error {
+	stops := []chan struct{}{}
+	var err error
+	for i := 0; i < len(kvs); i += 2 {
+		stop, e := NewPublisher(e.endpoints, kvs[i], kvs[i+1]).Register()
+		if err != nil {
+			err = e
+			break
+		}
+		stops = append(stops, stop)
 	}
 	}
 	quit := make(chan os.Signal, 1)
 	quit := make(chan os.Signal, 1)
 	signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM)
 	signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM)
 	<-quit
 	<-quit
-	stop <- struct{}{}
+	for _, stop := range stops {
+		stop <- struct{}{}
+	}
 	return nil
 	return nil
 }
 }
 
 
+func (e *etcd) GetOne(key string) string {
+	list, err := e.Get(key)
+	if err != nil || list == nil || len(list) == 0 {
+		return ""
+	}
+	rander := rand.New(rand.NewSource(time.Now().UnixNano()))
+	return list[rander.Intn(len(list))]
+}
+
 func (e *etcd) Get(key string) ([]string, error) {
 func (e *etcd) Get(key string) ([]string, error) {
 	client, err := getClient(e.endpoints)
 	client, err := getClient(e.endpoints)
 	if err != nil {
 	if err != nil {

+ 4 - 3
go-xweb/httpsession/memorystore.go

@@ -44,13 +44,14 @@ func (node *sessionNode) Set(key string, v interface{}) {
 	node.lock.Unlock()
 	node.lock.Unlock()
 }
 }
 
 
-func (node *sessionNode) SetMultiple(m map[string]interface{}) {
+func (node *sessionNode) SetMultiple(m map[string]interface{}) error {
 	node.lock.Lock()
 	node.lock.Lock()
 	for k, v := range m {
 	for k, v := range m {
 		node.kvs[k] = v
 		node.kvs[k] = v
 	}
 	}
 	node.last = time.Now()
 	node.last = time.Now()
 	node.lock.Unlock()
 	node.lock.Unlock()
+	return nil
 }
 }
 
 
 func (node *sessionNode) Del(keys ...string) {
 func (node *sessionNode) Del(keys ...string) {
@@ -162,7 +163,7 @@ func (store *MemoryStore) Set(id Id, key string, value interface{}) {
 	node.Set(key, value)
 	node.Set(key, value)
 }
 }
 
 
-func (store *MemoryStore) SetMultiple(id Id, m map[string]interface{}) {
+func (store *MemoryStore) SetMultiple(id Id, m map[string]interface{}) error {
 	store.lock.RLock()
 	store.lock.RLock()
 	node, ok := store.nodes[id]
 	node, ok := store.nodes[id]
 	store.lock.RUnlock()
 	store.lock.RUnlock()
@@ -175,7 +176,7 @@ func (store *MemoryStore) SetMultiple(id Id, m map[string]interface{}) {
 		store.nodes[id] = node
 		store.nodes[id] = node
 		store.lock.Unlock()
 		store.lock.Unlock()
 	}
 	}
-	node.SetMultiple(m)
+	return node.SetMultiple(m)
 }
 }
 
 
 func (store *MemoryStore) newNode() *sessionNode {
 func (store *MemoryStore) newNode() *sessionNode {

+ 9 - 4
go-xweb/httpsession/redissessionstore.go

@@ -61,7 +61,7 @@ func (store *redisStore) Set(id Id, key string, value interface{}) {
 }
 }
 
 
 //同时设置多个值
 //同时设置多个值
-func (store *redisStore) SetMultiple(id Id, m map[string]interface{}) {
+func (store *redisStore) SetMultiple(id Id, m map[string]interface{}) error {
 	lock(id).Lock()
 	lock(id).Lock()
 	defer lock(id).Unlock()
 	defer lock(id).Unlock()
 	var userdata map[string]interface{}
 	var userdata map[string]interface{}
@@ -69,7 +69,9 @@ func (store *redisStore) SetMultiple(id Id, m map[string]interface{}) {
 	if err != nil {
 	if err != nil {
 		userdata = make(map[string]interface{})
 		userdata = make(map[string]interface{})
 	} else {
 	} else {
-		json.Unmarshal(*bs, &userdata)
+		if err = json.Unmarshal(*bs, &userdata); err != nil {
+			return err
+		}
 	}
 	}
 	for k, v := range m {
 	for k, v := range m {
 		userdata[k] = v
 		userdata[k] = v
@@ -78,8 +80,11 @@ func (store *redisStore) SetMultiple(id Id, m map[string]interface{}) {
 	if RedisNotLoginKey != "" && userdata[RedisNotLoginKey] == nil {
 	if RedisNotLoginKey != "" && userdata[RedisNotLoginKey] == nil {
 		timeout = RedisNotLoginExpire
 		timeout = RedisNotLoginExpire
 	}
 	}
-	putdata, _ := json.Marshal(userdata)
-	redis.PutBytes("session", string(id), &putdata, timeout)
+	putdata, err := json.Marshal(userdata)
+	if err != nil {
+		return err
+	}
+	return redis.PutBytes("session", string(id), &putdata, timeout)
 }
 }
 
 
 func (store *redisStore) Add(id Id) {
 func (store *redisStore) Add(id Id) {

+ 2 - 2
go-xweb/httpsession/session.go

@@ -31,8 +31,8 @@ func (session *Session) Set(key string, value interface{}) {
 	session.manager.store.Set(session.id, key, value)
 	session.manager.store.Set(session.id, key, value)
 }
 }
 
 
-func (session *Session) SetMultiple(m map[string]interface{}) {
-	session.manager.store.SetMultiple(session.id, m)
+func (session *Session) SetMultiple(m map[string]interface{}) error {
+	return session.manager.store.SetMultiple(session.id, m)
 }
 }
 
 
 func (session *Session) Del(keys ...string) bool {
 func (session *Session) Del(keys ...string) bool {

+ 1 - 1
go-xweb/httpsession/store.go

@@ -8,7 +8,7 @@ type Store interface {
 	Get(id Id, key string) interface{}
 	Get(id Id, key string) interface{}
 	GetMultiple(id Id) map[string]interface{}
 	GetMultiple(id Id) map[string]interface{}
 	Set(id Id, key string, value interface{})
 	Set(id Id, key string, value interface{})
-	SetMultiple(id Id, m map[string]interface{})
+	SetMultiple(id Id, m map[string]interface{}) error
 	Del(id Id, keys ...string) bool
 	Del(id Id, keys ...string) bool
 	Clear(id Id) bool
 	Clear(id Id) bool
 	Add(id Id)
 	Add(id Id)

+ 0 - 1
go.mod

@@ -5,7 +5,6 @@ go 1.13
 require (
 require (
 	app.yhyue.com/moapp/esv1 v0.0.0-20220414031211-3da4123e648d
 	app.yhyue.com/moapp/esv1 v0.0.0-20220414031211-3da4123e648d
 	github.com/coscms/tagfast v0.0.0-20150925144250-2b69b2496250
 	github.com/coscms/tagfast v0.0.0-20150925144250-2b69b2496250
-	github.com/dchest/captcha v0.0.0-20200903113550-03f5f0333e1f
 	github.com/donnie4w/go-logger v0.0.0-20170827050443-4740c51383f4
 	github.com/donnie4w/go-logger v0.0.0-20170827050443-4740c51383f4
 	github.com/fsnotify/fsnotify v1.4.9
 	github.com/fsnotify/fsnotify v1.4.9
 	github.com/garyburd/redigo v1.6.2
 	github.com/garyburd/redigo v1.6.2

+ 0 - 2
go.sum

@@ -93,8 +93,6 @@ github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ3
 github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
 github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
 github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
-github.com/dchest/captcha v0.0.0-20200903113550-03f5f0333e1f h1:q/DpyjJjZs94bziQ7YkBmIlpqbVP7yw179rnzoNVX1M=
-github.com/dchest/captcha v0.0.0-20200903113550-03f5f0333e1f/go.mod h1:QGrK8vMWWHQYQ3QU9bw9Y9OPNfxccGzfb41qjvVeXtY=
 github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc=
 github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc=
 github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE=
 github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE=
 github.com/donnie4w/go-logger v0.0.0-20170827050443-4740c51383f4 h1:T9PR91sjTtrA1HmZB4G+M7OLCelch0f6rIEY7Mm1T4U=
 github.com/donnie4w/go-logger v0.0.0-20170827050443-4740c51383f4 h1:T9PR91sjTtrA1HmZB4G+M7OLCelch0f6rIEY7Mm1T4U=

+ 653 - 0
logger/logger.go

@@ -0,0 +1,653 @@
+package logger
+
+import (
+	"bytes"
+	"errors"
+	"fmt"
+	"io"
+	"log"
+	"os"
+	"regexp"
+	"runtime/debug"
+	"sort"
+	"strings"
+	"sync"
+	"sync/atomic"
+	"time"
+)
+
+/***
+author:donnie email donnie4w@gmail.com
+在控制台打印:直接调用 Debug(***) Info(***) Warn(***) Error(***) Fatal(***)
+可以设置打印格式:SetFormat(FORMAT_SHORTFILENAME|FORMAT_DATE|FORMAT_TIME)
+	无其他格式,只打印日志内容
+	FORMAT_NANO
+	长文件名及行数
+	FORMAT_LONGFILENAME
+	短文件名及行数
+	FORMAT_SHORTFILENAME
+	精确到日期
+	FORMAT_DATE
+	精确到秒
+	FORMAT_TIME
+	精确到微秒
+	FORMAT_MICROSECNDS
+	—————————————————————————————————————————————————————————————————————
+    写日志文件可以获取实例
+    全局实例可以直接调用log := logging.GetStaticLogger()
+    获取新实例可以调用log := logging.NewLogger()
+	1. 按日期分割日志文件
+    	log.SetRollingDaily("d://foldTest", "log.txt")
+	2. 按文件大小分割日志文件
+	log.SetRollingFile("d://foldTest", "log.txt", 300, MB)
+	log.SetConsole(false)控制台不打日志,默认值true
+    日志级别
+***/
+
+const (
+	_VER string = "1.0.1"
+)
+
+type _LEVEL int8
+type _UNIT int64
+type _MODE_TIME uint8
+type _ROLLTYPE int //dailyRolling ,rollingFile
+type _FORMAT int
+
+const _DATEFORMAT_DAY = "20060102"
+const _DATEFORMAT_HOUR = "2006010215"
+const _DATEFORMAT_MONTH = "200601"
+
+var static_mu *sync.Mutex = new(sync.Mutex)
+
+var static_lo *_logger = NewLogger()
+
+const (
+	_        = iota
+	KB _UNIT = 1 << (iota * 10)
+	MB
+	GB
+	TB
+)
+
+const (
+	MODE_HOUR  _MODE_TIME = 1
+	MODE_DAY   _MODE_TIME = 2
+	MODE_MONTH _MODE_TIME = 3
+)
+
+const (
+	/*无其他格式,只打印日志内容*/
+	FORMAT_NANO _FORMAT = 0
+	/*长文件名及行数*/
+	FORMAT_LONGFILENAME = _FORMAT(log.Llongfile)
+	/*短文件名及行数*/
+	FORMAT_SHORTFILENAME = _FORMAT(log.Lshortfile)
+	/*日期时间精确到天*/
+	FORMAT_DATE = _FORMAT(log.Ldate)
+	/*时间精确到秒*/
+	FORMAT_TIME = _FORMAT(log.Ltime)
+	/*时间精确到微秒*/
+	FORMAT_MICROSECNDS = _FORMAT(log.Lmicroseconds)
+)
+
+const (
+	/*日志级别:ALL 最低级别*/
+	LEVEL_ALL _LEVEL = iota
+	/*日志级别:DEBUG 小于INFO*/
+	LEVEL_DEBUG
+	/*日志级别:INFO 小于 WARN*/
+	LEVEL_INFO
+	/*日志级别:WARN 小于 ERROR*/
+	LEVEL_WARN
+	/*日志级别:ERROR 小于 FATAL*/
+	LEVEL_ERROR
+	/*日志级别:FATAL 小于 OFF*/
+	LEVEL_FATAL
+	/*日志级别:off 不打印任何日志*/
+	LEVEL_OFF
+)
+
+const (
+	_DAYLY _ROLLTYPE = iota
+	_ROLLFILE
+)
+
+var default_format _FORMAT = FORMAT_SHORTFILENAME | FORMAT_DATE | FORMAT_TIME
+var default_level = LEVEL_ALL
+
+/*设置打印格式*/
+func SetFormat(format _FORMAT) {
+	default_format = format
+	static_lo.SetFormat(format)
+
+}
+
+/*设置控制台日志级别,默认ALL*/
+func SetLevel(level _LEVEL) {
+	default_level = level
+	static_lo.SetLevel(level)
+}
+
+func SetConsole(on bool) {
+	static_lo.SetConsole(on)
+}
+
+/*获得全局Logger对象*/
+func GetStaticLogger() *_logger {
+	return _staticLogger()
+}
+
+func SetRollingFile(fileDir, fileName string, maxFileSize int64, unit _UNIT) (err error) {
+	return SetRollingFileLoop(fileDir, fileName, maxFileSize, unit, 0)
+}
+
+func SetRollingDaily(fileDir, fileName string) (err error) {
+	return SetRollingByTime(fileDir, fileName, MODE_DAY)
+}
+
+func SetRollingFileLoop(fileDir, fileName string, maxFileSize int64, unit _UNIT, maxFileNum int) (err error) {
+	return static_lo.SetRollingFileLoop(fileDir, fileName, maxFileSize, unit, maxFileNum)
+}
+
+func SetRollingByTime(fileDir, fileName string, mode _MODE_TIME) (err error) {
+	return static_lo.SetRollingByTime(fileDir, fileName, mode)
+}
+
+func _staticLogger() *_logger {
+	return static_lo
+}
+
+func Debug(v ...interface{}) {
+	_print(default_format, LEVEL_DEBUG, default_level, 2, v...)
+}
+func Info(v ...interface{}) {
+	_print(default_format, LEVEL_INFO, default_level, 2, v...)
+}
+func Warn(v ...interface{}) {
+	_print(default_format, LEVEL_WARN, default_level, 2, v...)
+}
+func Error(v ...interface{}) {
+	_print(default_format, LEVEL_ERROR, default_level, 2, v...)
+}
+func Fatal(v ...interface{}) {
+	_print(default_format, LEVEL_FATAL, default_level, 2, v...)
+}
+
+func _print(_format _FORMAT, level, _default_level _LEVEL, calldepth int, v ...interface{}) {
+	if level < _default_level {
+		return
+	}
+	_staticLogger().println(level, k1(calldepth), v...)
+}
+
+func __print(_format _FORMAT, level, _default_level _LEVEL, calldepth int, v ...interface{}) {
+	_console(formatV(v...), getlevelname(level, default_format), _format, k1(calldepth))
+}
+
+func getlevelname(level _LEVEL, format _FORMAT) (levelname string) {
+	if format == FORMAT_NANO {
+		return
+	}
+	switch level {
+	case LEVEL_ALL:
+		levelname = "[ALL]"
+	case LEVEL_DEBUG:
+		levelname = "[DEBUG]"
+	case LEVEL_INFO:
+		levelname = "[INFO]"
+	case LEVEL_WARN:
+		levelname = "[WARN]"
+	case LEVEL_ERROR:
+		levelname = "[ERROR]"
+	case LEVEL_FATAL:
+		levelname = "[FATAL]"
+	default:
+	}
+	return
+}
+
+/*————————————————————————————————————————————————————————————————————————————*/
+type _logger struct {
+	_level      _LEVEL
+	_format     _FORMAT
+	_rwLock     *sync.RWMutex
+	_safe       bool
+	_fileDir    string
+	_fileName   string
+	_maxSize    int64
+	_unit       _UNIT
+	_rolltype   _ROLLTYPE
+	_mode       _MODE_TIME
+	_fileObj    *fileObj
+	_maxFileNum int
+	_isConsole  bool
+}
+
+func NewLogger() (log *_logger) {
+	log = &_logger{_level: LEVEL_DEBUG, _rolltype: _DAYLY, _rwLock: new(sync.RWMutex), _format: FORMAT_SHORTFILENAME | FORMAT_DATE | FORMAT_TIME, _isConsole: true}
+	log.newfileObj()
+	return
+}
+
+//控制台日志是否打开
+func (this *_logger) SetConsole(_isConsole bool) {
+	this._isConsole = _isConsole
+}
+func (this *_logger) Debug(v ...interface{}) {
+	this.println(LEVEL_DEBUG, 2, v...)
+}
+func (this *_logger) Info(v ...interface{}) {
+	this.println(LEVEL_INFO, 2, v...)
+}
+func (this *_logger) Warn(v ...interface{}) {
+	this.println(LEVEL_WARN, 2, v...)
+}
+func (this *_logger) Error(v ...interface{}) {
+	this.println(LEVEL_ERROR, 2, v...)
+}
+func (this *_logger) Fatal(v ...interface{}) {
+	this.println(LEVEL_FATAL, 2, v...)
+}
+func (this *_logger) SetFormat(format _FORMAT) {
+	this._format = format
+}
+func (this *_logger) SetLevel(level _LEVEL) {
+	this._level = level
+}
+
+/*按日志文件大小分割日志文件
+fileDir 日志文件夹路径
+fileName 日志文件名
+maxFileSize  日志文件大小最大值
+unit    日志文件大小单位
+*/
+func (this *_logger) SetRollingFile(fileDir, fileName string, maxFileSize int64, unit _UNIT) (err error) {
+	return this.SetRollingFileLoop(fileDir, fileName, maxFileSize, unit, 0)
+}
+
+/*按日志文件大小分割日志文件,指定保留的最大日志文件数
+fileDir 日志文件夹路径
+fileName 日志文件名
+maxFileSize  日志文件大小最大值
+unit    	日志文件大小单位
+maxFileNum  留的日志文件数
+*/
+func (this *_logger) SetRollingFileLoop(fileDir, fileName string, maxFileSize int64, unit _UNIT, maxFileNum int) (err error) {
+	if fileDir == "" {
+		fileDir, _ = os.Getwd()
+	}
+	if maxFileNum > 0 {
+		maxFileNum--
+	}
+	this._fileDir, this._fileName, this._maxSize, this._maxFileNum, this._unit = fileDir, fileName, maxFileSize, maxFileNum, unit
+	this._rolltype = _ROLLFILE
+	if this._fileObj != nil {
+		this._fileObj.close()
+	}
+	this.newfileObj()
+	err = this._fileObj.openFileHandler()
+	return
+}
+
+/*按日期分割日志文件
+fileDir 日志文件夹路径
+fileName 日志文件名
+*/
+func (this *_logger) SetRollingDaily(fileDir, fileName string) (err error) {
+	return this.SetRollingByTime(fileDir, fileName, MODE_DAY)
+}
+
+/*指定按 小时,天,月 分割日志文件
+fileDir 日志文件夹路径
+fileName 日志文件名
+mode   指定 小时,天,月
+*/
+func (this *_logger) SetRollingByTime(fileDir, fileName string, mode _MODE_TIME) (err error) {
+	if fileDir == "" {
+		fileDir, _ = os.Getwd()
+	}
+	this._fileDir, this._fileName, this._mode = fileDir, fileName, mode
+	this._rolltype = _DAYLY
+	if this._fileObj != nil {
+		this._fileObj.close()
+	}
+	this.newfileObj()
+	err = this._fileObj.openFileHandler()
+	return
+}
+
+func (this *_logger) newfileObj() {
+	this._fileObj = new(fileObj)
+	this._fileObj._fileDir, this._fileObj._fileName, this._fileObj._maxSize, this._fileObj._rolltype, this._fileObj._unit, this._fileObj._maxFileNum, this._fileObj._mode = this._fileDir, this._fileName, this._maxSize, this._rolltype, this._unit, this._maxFileNum, this._mode
+}
+
+func (this *_logger) backUp() (err, openFileErr error) {
+	this._rwLock.Lock()
+	defer this._rwLock.Unlock()
+	if !this._fileObj.isMustBackUp() {
+		return
+	}
+	err = this._fileObj.close()
+	if err != nil {
+		__print(this._format, LEVEL_ERROR, LEVEL_ERROR, 1, err.Error())
+		return
+	}
+	err = this._fileObj.rename()
+	if err != nil {
+		__print(this._format, LEVEL_ERROR, LEVEL_ERROR, 1, err.Error())
+		return
+	}
+	openFileErr = this._fileObj.openFileHandler()
+	if openFileErr != nil {
+		__print(this._format, LEVEL_ERROR, LEVEL_ERROR, 1, openFileErr.Error())
+	}
+	return
+}
+
+func (this *_logger) println(_level _LEVEL, calldepth int, v ...interface{}) {
+	if this._level > _level {
+		return
+	}
+	if this._fileObj._isFileWell {
+		var openFileErr error
+		if this._fileObj.isMustBackUp() {
+			_, openFileErr = this.backUp()
+		}
+		if openFileErr == nil {
+			func() {
+				this._rwLock.RLock()
+				defer this._rwLock.RUnlock()
+				buf := getOutBuffer(formatV(v...), getlevelname(_level, this._format), this._format, k1(calldepth)+1)
+				this._fileObj.write2file(buf.Bytes())
+			}()
+		}
+	}
+	if this._isConsole {
+		__print(this._format, _level, this._level, k1(calldepth), v...)
+	}
+}
+
+/*————————————————————————————————————————————————————————————————————————————*/
+type fileObj struct {
+	_fileDir     string
+	_fileName    string
+	_maxSize     int64
+	_fileSize    int64
+	_unit        _UNIT
+	_fileHandler *os.File
+	_rolltype    _ROLLTYPE
+	_tomorSecond int64
+	_isFileWell  bool
+	_maxFileNum  int
+	_mode        _MODE_TIME
+}
+
+func (this *fileObj) openFileHandler() (e error) {
+	if this._fileDir == "" || this._fileName == "" {
+		e = errors.New("log filePath is null or error")
+		return
+	}
+	e = mkdirDir(this._fileDir)
+	if e != nil {
+		this._isFileWell = false
+		return
+	}
+	fname := fmt.Sprint(this._fileDir, "/", this._fileName)
+	this._fileHandler, e = os.OpenFile(fname, os.O_WRONLY|os.O_APPEND|os.O_CREATE, 0666)
+	if e != nil {
+		__print(default_format, LEVEL_ERROR, LEVEL_ERROR, 1, e.Error())
+		this._isFileWell = false
+		return
+	}
+	this._isFileWell = true
+	this._tomorSecond = tomorSecond(this._mode)
+	fs, err := this._fileHandler.Stat()
+	if err == nil {
+		this._fileSize = fs.Size()
+	} else {
+		e = err
+	}
+	return
+}
+
+func (this *fileObj) addFileSize(size int64) {
+	atomic.AddInt64(&this._fileSize, size)
+}
+
+func (this *fileObj) write2file(bs []byte) (e error) {
+	defer catchError()
+	if bs != nil {
+		this.addFileSize(int64(len(bs)))
+		_write2file(this._fileHandler, bs)
+	}
+	return
+}
+
+func (this *fileObj) isMustBackUp() bool {
+	switch this._rolltype {
+	case _DAYLY:
+		if time.Now().Unix() >= this._tomorSecond {
+			return true
+		}
+	case _ROLLFILE:
+		return this._fileSize > 0 && this._fileSize >= this._maxSize*int64(this._unit)
+	}
+	return false
+}
+
+func (this *fileObj) rename() (err error) {
+	bckupfilename := ""
+	if this._rolltype == _DAYLY {
+		bckupfilename = getBackupDayliFileName(this._fileDir, this._fileName, this._mode)
+	} else {
+		bckupfilename, err = getBackupRollFileName(this._fileDir, this._fileName)
+	}
+	if bckupfilename != "" && err == nil {
+		oldPath := fmt.Sprint(this._fileDir, "/", this._fileName)
+		newPath := fmt.Sprint(this._fileDir, "/", bckupfilename)
+		err = os.Rename(oldPath, newPath)
+		if err == nil && this._rolltype == _ROLLFILE && this._maxFileNum > 0 {
+			go _rmOverCountFile(this._fileDir, bckupfilename, this._maxFileNum)
+		}
+	}
+	return
+}
+
+func (this *fileObj) close() (err error) {
+	defer catchError()
+	if this._fileHandler != nil {
+		err = this._fileHandler.Close()
+	}
+	return
+}
+
+func tomorSecond(mode _MODE_TIME) int64 {
+	now := time.Now()
+	switch mode {
+	case MODE_DAY:
+		return time.Date(now.Year(), now.Month(), now.Day()+1, 0, 0, 0, 0, now.Location()).Unix()
+	case MODE_HOUR:
+		return time.Date(now.Year(), now.Month(), now.Day(), now.Hour()+1, 0, 0, 0, now.Location()).Unix()
+	case MODE_MONTH:
+		return time.Date(now.Year(), now.Month()+1, 0, 0, 0, 0, 0, now.Location()).AddDate(0, 0, 1).Unix()
+	default:
+		return time.Date(now.Year(), now.Month(), now.Day()+1, 0, 0, 0, 0, now.Location()).Unix()
+	}
+}
+
+func _yestStr(mode _MODE_TIME) string {
+	now := time.Now()
+	switch mode {
+	case MODE_DAY:
+		return now.AddDate(0, 0, -1).Format(_DATEFORMAT_DAY)
+	case MODE_HOUR:
+		return now.Add(-1 * time.Hour).Format(_DATEFORMAT_HOUR)
+	case MODE_MONTH:
+		return now.AddDate(0, -1, 0).Format(_DATEFORMAT_MONTH)
+	default:
+		return now.AddDate(0, 0, -1).Format(_DATEFORMAT_DAY)
+	}
+}
+
+/*————————————————————————————————————————————————————————————————————————————*/
+func getBackupDayliFileName(dir, filename string, mode _MODE_TIME) (bckupfilename string) {
+	timeStr := _yestStr(mode)
+	index := strings.LastIndex(filename, ".")
+	if index <= 0 {
+		index = len(filename)
+	}
+	fname := filename[:index]
+	suffix := filename[index:]
+	bckupfilename = fmt.Sprint(fname, "_", timeStr, suffix)
+	if isFileExist(fmt.Sprint(dir, "/", bckupfilename)) {
+		bckupfilename = _getBackupfilename(1, dir, fmt.Sprint(fname, "_", timeStr), suffix)
+	}
+	return
+}
+
+func _getDirList(dir string) ([]os.DirEntry, error) {
+	f, err := os.Open(dir)
+	if err != nil {
+		return nil, err
+	}
+	defer f.Close()
+	return f.ReadDir(-1)
+}
+
+func getBackupRollFileName(dir, filename string) (bckupfilename string, er error) {
+	list, err := _getDirList(dir)
+	if err != nil {
+		er = err
+		return
+	}
+	index := strings.LastIndex(filename, ".")
+	if index <= 0 {
+		index = len(filename)
+	}
+	fname := filename[:index]
+	suffix := filename[index:]
+	length := len(list)
+	bckupfilename = _getBackupfilename(length, dir, fname, suffix)
+	return
+}
+
+func _getBackupfilename(count int, dir, filename, suffix string) (bckupfilename string) {
+	bckupfilename = fmt.Sprint(filename, "_", count, suffix)
+	if isFileExist(fmt.Sprint(dir, "/", bckupfilename)) {
+		return _getBackupfilename(count+1, dir, filename, suffix)
+	}
+	return
+}
+
+func _write2file(f *os.File, bs []byte) (e error) {
+	_, e = f.Write(bs)
+	return
+}
+
+func _console(s string, levelname string, flag _FORMAT, calldepth int) {
+	buf := getOutBuffer(s, levelname, flag, k1(calldepth))
+	fmt.Print(&buf)
+}
+
+func outwriter(out io.Writer, prefix string, flag _FORMAT, calldepth int, s string) {
+	l := log.New(out, prefix, int(flag))
+	l.Output(k1(calldepth), s)
+}
+
+func k1(calldepth int) int {
+	return calldepth + 1
+}
+
+func getOutBuffer(s string, levelname string, flag _FORMAT, calldepth int) (buf bytes.Buffer) {
+	outwriter(&buf, levelname, flag, k1(calldepth), s)
+	return
+}
+
+func mkdirDir(dir string) (e error) {
+	_, er := os.Stat(dir)
+	b := er == nil || os.IsExist(er)
+	if !b {
+		if err := os.MkdirAll(dir, 0666); err != nil {
+			if os.IsPermission(err) {
+				e = err
+			}
+		}
+	}
+	return
+}
+
+func isFileExist(path string) bool {
+	_, err := os.Stat(path)
+	return err == nil || os.IsExist(err)
+}
+
+func catchError() {
+	if err := recover(); err != nil {
+		Fatal(string(debug.Stack()))
+	}
+}
+
+func _rmOverCountFile(dir, backupfileName string, maxFileNum int) {
+	static_mu.Lock()
+	defer static_mu.Unlock()
+	f, err := os.Open(dir)
+	if err != nil {
+		return
+	}
+	dirs, _ := f.ReadDir(-1)
+	f.Close()
+	if len(dirs) <= maxFileNum {
+		return
+	}
+	sort.Slice(dirs, func(i, j int) bool {
+		f1, _ := dirs[i].Info()
+		f2, _ := dirs[j].Info()
+		return f1.ModTime().Unix() > f2.ModTime().Unix()
+	})
+	index := strings.LastIndex(backupfileName, "_")
+	indexSuffix := strings.LastIndex(backupfileName, ".")
+	if indexSuffix == 0 {
+		indexSuffix = len(backupfileName)
+	}
+	prefixname := backupfileName[:index+1]
+	suffix := backupfileName[indexSuffix:]
+	suffixlen := len(suffix)
+	rmfiles := make([]string, 0)
+	i := 0
+	for _, f := range dirs {
+		if len(f.Name()) > len(prefixname) && f.Name()[:len(prefixname)] == prefixname && _matchString("^[0-9]+$", f.Name()[len(prefixname):len(f.Name())-suffixlen]) {
+			finfo, err := f.Info()
+			if err == nil && !finfo.IsDir() {
+				i++
+				if i > maxFileNum {
+					rmfiles = append(rmfiles, fmt.Sprint(dir, "/", f.Name()))
+				}
+			}
+		}
+	}
+	if len(rmfiles) > 0 {
+		for _, k := range rmfiles {
+			os.Remove(k)
+		}
+	}
+}
+
+func _matchString(pattern string, s string) bool {
+	b, err := regexp.MatchString(pattern, s)
+	if err != nil {
+		b = false
+	}
+	return b
+}
+
+func formatV(v ...interface{}) string {
+	s := strings.Builder{}
+	for _, vv := range v {
+		if s.Len() > 0 {
+			s.WriteString(" ")
+		}
+		s.WriteString(fmt.Sprint(vv))
+	}
+	return s.String()
+}

+ 102 - 0
mapping/bidcode.go

@@ -0,0 +1,102 @@
+package mapping
+
+import (
+	"log"
+
+	util "app.yhyue.com/moapp/jybase/common"
+	"app.yhyue.com/moapp/jybase/mysql"
+)
+
+var BidCodeMapping = &bidCodeMapping{}
+
+type bidCodeMapping struct {
+	Area          map[string]string            //省
+	City          map[string]string            //市
+	District      map[string]map[string]string //市-区
+	Toptype       map[string]string            //一级信息类型
+	Subtype       map[string]string            //二级信息类型
+	Buyerclass    map[string]string            //采购单位行业
+	Subscopeclass map[string]string            //信息行业
+}
+
+func (b *bidCodeMapping) Init(Mysql *mysql.Mysql) {
+	b.Buyerclass = map[string]string{}
+	codeBuyerclass := Mysql.SelectBySql("select code,name from global_common_data.code_buyerclass where level=1")
+	if codeBuyerclass != nil && len(*codeBuyerclass) > 0 {
+		for _, v := range *codeBuyerclass {
+			code, _ := v["code"].(string)
+			name, _ := v["name"].(string)
+			b.Buyerclass[name] = code
+		}
+	}
+	if len(b.Buyerclass) == 0 {
+		log.Fatalln("PushMapping Buyerclass Init Error")
+	}
+	//
+	b.Toptype = map[string]string{}
+	b.Subtype = map[string]string{}
+	codeBidTopSubtype := Mysql.SelectBySql("select code,name,level from global_common_data.code_bidtopsubtype")
+	if codeBidTopSubtype != nil && len(*codeBidTopSubtype) > 0 {
+		for _, v := range *codeBidTopSubtype {
+			code, _ := v["code"].(string)
+			name, _ := v["name"].(string)
+			level := util.IntAll(v["level"])
+			if level == 1 {
+				b.Toptype[name] = code
+			} else if level == 2 {
+				b.Subtype[name] = code
+			}
+		}
+	}
+	if len(b.Toptype) == 0 {
+		log.Fatalln("PushMapping Toptype Init Error")
+	}
+	if len(b.Subtype) == 0 {
+		log.Fatalln("PushMapping Subtype Init Error")
+	}
+	//
+	b.Subscopeclass = map[string]string{}
+	codeBidScope := Mysql.SelectBySql("SELECT b.code,CONCAT(a.name,'_',b.name) as name FROM global_common_data.code_bidscope a INNER JOIN global_common_data.code_bidscope b ON (a.level=1 AND b.level=2 AND a.code=b.pcode)")
+	if codeBidScope != nil && len(*codeBidScope) > 0 {
+		for _, v := range *codeBidScope {
+			code, _ := v["code"].(string)
+			name, _ := v["name"].(string)
+			b.Subscopeclass[name] = code
+		}
+	}
+	if len(b.Subscopeclass) == 0 {
+		log.Fatalln("PushMapping Subscopeclass Init Error")
+	}
+	//
+	b.Area = map[string]string{}
+	b.City = map[string]string{}
+	b.District = map[string]map[string]string{}
+	codeArea := Mysql.SelectBySql("select code,area,city,district from global_common_data.code_area")
+	if codeArea != nil && len(*codeArea) > 0 {
+		for _, v := range *codeArea {
+			code, _ := v["code"].(string)
+			area, _ := v["area"].(string)
+			city, _ := v["city"].(string)
+			district, _ := v["district"].(string)
+			if area != "" && city == "" && district == "" {
+				b.Area[area] = code
+			} else if area != "" && city != "" && district == "" {
+				b.City[city] = code
+			} else if area != "" && city != "" && district != "" {
+				if b.District[city] == nil {
+					b.District[city] = map[string]string{}
+				}
+				b.District[city][district] = code
+			}
+		}
+	}
+	if len(b.Area) == 0 {
+		log.Fatalln("BidCodeMapping Area Init Error")
+	}
+	if len(b.City) == 0 {
+		log.Fatalln("BidCodeMapping City Init Error")
+	}
+	if len(b.District) == 0 {
+		log.Fatalln("BidCodeMapping District Init Error")
+	}
+}

+ 28 - 0
mapping/bidcode_test.go

@@ -0,0 +1,28 @@
+package mapping
+
+import (
+	"log"
+	"testing"
+
+	. "app.yhyue.com/moapp/jybase/mysql"
+)
+
+func TestInit(t *testing.T) {
+	m := &Mysql{
+		Address:      "192.168.3.14:4000",
+		UserName:     "root",
+		PassWord:     "=PDT49#80Z!RVv52_z",
+		DBName:       "push",
+		MaxOpenConns: 2,
+		MaxIdleConns: 2,
+	}
+	m.Init()
+	BidCodeMapping.Init(m)
+	log.Println(BidCodeMapping.Area)
+	log.Println(BidCodeMapping.City)
+	log.Println(BidCodeMapping.District)
+	log.Println(BidCodeMapping.Buyerclass)
+	log.Println(BidCodeMapping.Toptype)
+	log.Println(BidCodeMapping.Subtype)
+	log.Println(BidCodeMapping.Subscopeclass)
+}

BIN
procimg/main.jpg


BIN
procimg/new.jpg


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 12 - 0
procimg/procimg.go


+ 26 - 0
procimg/procimg_test.go

@@ -0,0 +1,26 @@
+package procimg
+
+import (
+	"image/jpeg"
+	"log"
+	"os"
+	"testing"
+)
+
+func TestProcImg(t *testing.T) {
+	//图片,网上随便找了一张
+	img_file, err := os.Open("main.jpg")
+	if err != nil {
+		log.Fatalln(err)
+	}
+	defer img_file.Close()
+	img, err := jpeg.Decode(img_file)
+	if err != nil {
+		log.Fatalln(err)
+	}
+	m := WaterMark(img, BgImg, 0.5)
+	imgw, err := os.Create("./new.jpg")
+	jpeg.Encode(imgw, m, &jpeg.Options{75})
+	defer imgw.Close()
+	log.Println("添加水印图片结束请查看")
+}

Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно