Browse Source

Initial import.

Yawning Angel 8 months ago
commit
631437e59a
15 changed files with 6421 additions and 0 deletions
  1. 2 0
      .gitignore
  2. 122 0
      LICENSE
  3. 7 0
      README.md
  4. 24 0
      burn_safe.go
  5. 46 0
      burn_test.go
  6. 29 0
      burn_unsafe.go
  7. 46 0
      hwaccel.go
  8. 174 0
      hwaccel_amd64.go
  9. 297 0
      hwaccel_amd64.s
  10. 14 0
      hwaccel_ref.go
  11. 173 0
      morus.go
  12. 4970 0
      morus_1280_256_kat_test.go
  13. 325 0
      morus_ref.go
  14. 181 0
      morus_test.go
  15. 11 0
      unsafe_linkname.s

+ 2 - 0
.gitignore

@@ -0,0 +1,2 @@
+*.swp
+*~

+ 122 - 0
LICENSE

@@ -0,0 +1,122 @@
+Creative Commons Legal Code
+
+CC0 1.0 Universal
+
+    CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
+    LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
+    ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
+    INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
+    REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
+    PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
+    THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
+    HEREUNDER.
+
+Statement of Purpose
+
+The laws of most jurisdictions throughout the world automatically confer
+exclusive Copyright and Related Rights (defined below) upon the creator
+and subsequent owner(s) (each and all, an "owner") of an original work of
+authorship and/or a database (each, a "Work").
+
+Certain owners wish to permanently relinquish those rights to a Work for
+the purpose of contributing to a commons of creative, cultural and
+scientific works ("Commons") that the public can reliably and without fear
+of later claims of infringement build upon, modify, incorporate in other
+works, reuse and redistribute as freely as possible in any form whatsoever
+and for any purposes, including without limitation commercial purposes.
+These owners may contribute to the Commons to promote the ideal of a free
+culture and the further production of creative, cultural and scientific
+works, or to gain reputation or greater distribution for their Work in
+part through the use and efforts of others.
+
+For these and/or other purposes and motivations, and without any
+expectation of additional consideration or compensation, the person
+associating CC0 with a Work (the "Affirmer"), to the extent that he or she
+is an owner of Copyright and Related Rights in the Work, voluntarily
+elects to apply CC0 to the Work and publicly distribute the Work under its
+terms, with knowledge of his or her Copyright and Related Rights in the
+Work and the meaning and intended legal effect of CC0 on those rights.
+
+1. Copyright and Related Rights. A Work made available under CC0 may be
+protected by copyright and related or neighboring rights ("Copyright and
+Related Rights"). Copyright and Related Rights include, but are not
+limited to, the following:
+
+  i. the right to reproduce, adapt, distribute, perform, display,
+     communicate, and translate a Work;
+ ii. moral rights retained by the original author(s) and/or performer(s);
+iii. publicity and privacy rights pertaining to a person's image or
+     likeness depicted in a Work;
+ iv. rights protecting against unfair competition in regards to a Work,
+     subject to the limitations in paragraph 4(a), below;
+  v. rights protecting the extraction, dissemination, use and reuse of data
+     in a Work;
+ vi. database rights (such as those arising under Directive 96/9/EC of the
+     European Parliament and of the Council of 11 March 1996 on the legal
+     protection of databases, and under any national implementation
+     thereof, including any amended or successor version of such
+     directive); and
+vii. other similar, equivalent or corresponding rights throughout the
+     world based on applicable law or treaty, and any national
+     implementations thereof.
+
+2. Waiver. To the greatest extent permitted by, but not in contravention
+of, applicable law, Affirmer hereby overtly, fully, permanently,
+irrevocably and unconditionally waives, abandons, and surrenders all of
+Affirmer's Copyright and Related Rights and associated claims and causes
+of action, whether now known or unknown (including existing as well as
+future claims and causes of action), in the Work (i) in all territories
+worldwide, (ii) for the maximum duration provided by applicable law or
+treaty (including future time extensions), (iii) in any current or future
+medium and for any number of copies, and (iv) for any purpose whatsoever,
+including without limitation commercial, advertising or promotional
+purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
+member of the public at large and to the detriment of Affirmer's heirs and
+successors, fully intending that such Waiver shall not be subject to
+revocation, rescission, cancellation, termination, or any other legal or
+equitable action to disrupt the quiet enjoyment of the Work by the public
+as contemplated by Affirmer's express Statement of Purpose.
+
+3. Public License Fallback. Should any part of the Waiver for any reason
+be judged legally invalid or ineffective under applicable law, then the
+Waiver shall be preserved to the maximum extent permitted taking into
+account Affirmer's express Statement of Purpose. In addition, to the
+extent the Waiver is so judged Affirmer hereby grants to each affected
+person a royalty-free, non transferable, non sublicensable, non exclusive,
+irrevocable and unconditional license to exercise Affirmer's Copyright and
+Related Rights in the Work (i) in all territories worldwide, (ii) for the
+maximum duration provided by applicable law or treaty (including future
+time extensions), (iii) in any current or future medium and for any number
+of copies, and (iv) for any purpose whatsoever, including without
+limitation commercial, advertising or promotional purposes (the
+"License"). The License shall be deemed effective as of the date CC0 was
+applied by Affirmer to the Work. Should any part of the License for any
+reason be judged legally invalid or ineffective under applicable law, such
+partial invalidity or ineffectiveness shall not invalidate the remainder
+of the License, and in such case Affirmer hereby affirms that he or she
+will not (i) exercise any of his or her remaining Copyright and Related
+Rights in the Work or (ii) assert any associated claims and causes of
+action with respect to the Work, in either case contrary to Affirmer's
+express Statement of Purpose.
+
+4. Limitations and Disclaimers.
+
+ a. No trademark or patent rights held by Affirmer are waived, abandoned,
+    surrendered, licensed or otherwise affected by this document.
+ b. Affirmer offers the Work as-is and makes no representations or
+    warranties of any kind concerning the Work, express, implied,
+    statutory or otherwise, including without limitation warranties of
+    title, merchantability, fitness for a particular purpose, non
+    infringement, or the absence of latent or other defects, accuracy, or
+    the present or absence of errors, whether or not discoverable, all to
+    the greatest extent permissible under applicable law.
+ c. Affirmer disclaims responsibility for clearing rights of other persons
+    that may apply to the Work or any use thereof, including without
+    limitation any person's Copyright and Related Rights in the Work.
+    Further, Affirmer disclaims responsibility for obtaining any necessary
+    consents, permissions or other rights required for any use of the
+    Work.
+ d. Affirmer understands and acknowledges that Creative Commons is not a
+    party to this document and has no duty or obligation with respect to
+    this CC0 or use of the Work.
+

+ 7 - 0
README.md

@@ -0,0 +1,7 @@
+### MORUS - MORUS-1280-256 Authenticated Cipher
+#### Yawning Angel (yawning at schwanenlied dot me)
+
+This package implements the MORUS-1280-256 Authenticated Cipher.
+
+This implementation is derived from the reference implementation by
+Hongjun Wu and Tao Huang.

+ 24 - 0
burn_safe.go

@@ -0,0 +1,24 @@
+// burn_safe.go - burn (unsafe not available)
+//
+// To the extent possible under law, Yawning Angel has waived all copyright
+// and related or neighboring rights to the software, using the Creative
+// Commons "CC0" public domain dedication. See LICENSE or
+// <http://creativecommons.org/publicdomain/zero/1.0/> for full details.
+
+// +build noasm appengine
+
+package morus
+
+import "unsafe"
+
+func burnBytes(b []byte) {
+	for i := range b {
+		b[i] = 0
+	}
+}
+
+func burnUint64s(b []uint64) {
+	for i := range b {
+		b[i] = 0
+	}
+}

+ 46 - 0
burn_test.go

@@ -0,0 +1,46 @@
+// burn_test.go - burn tests
+//
+// To the extent possible under law, Yawning Angel has waived all copyright
+// and related or neighboring rights to the software, using the Creative
+// Commons "CC0" public domain dedication. See LICENSE or
+// <http://creativecommons.org/publicdomain/zero/1.0/> for full details.
+
+package morus
+
+import (
+	"crypto/rand"
+	"encoding/binary"
+	"testing"
+
+	"github.com/stretchr/testify/require"
+)
+
+// While it seems somewhat silly to test memset, the unsafe implementation
+// uses trickery to reach into the runtime library, so it's worth exercising.
+
+func TestBurnBytes(t *testing.T) {
+	require := require.New(t)
+
+	var buf [1024]byte
+	require.Zero(buf, "buf: Before random read")
+	_, err := rand.Read(buf[:])
+	require.NoError(err, "rand.Read()")
+	require.NotZero(buf, "buf: After random read")
+
+	burnBytes(buf[:])
+	require.Zero(buf, "buf: After burnBytes()")
+}
+
+func TestBurnUint64s(t *testing.T) {
+	require := require.New(t)
+
+	var buf [1024]uint64
+	require.Zero(buf, "buf: Before random read")
+
+	err := binary.Read(rand.Reader, binary.LittleEndian, &buf)
+	require.NoError(err, "binary.Read(rand.Reader)")
+	require.NotZero(buf, "buf: After random read")
+
+	burnUint64s(buf[:])
+	require.Zero(buf, "buf: After burnUint64s()")
+}

+ 29 - 0
burn_unsafe.go

@@ -0,0 +1,29 @@
+// burn_unsafe.go - burn (unsafe available)
+//
+// To the extent possible under law, Yawning Angel has waived all copyright
+// and related or neighboring rights to the software, using the Creative
+// Commons "CC0" public domain dedication. See LICENSE or
+// <http://creativecommons.org/publicdomain/zero/1.0/> for full details.
+
+// +build !noasm,!appengine
+
+package morus
+
+import "unsafe"
+
+//go:noescape
+//go:linkname memclrNoHeapPointers runtime.memclrNoHeapPointers
+func memclrNoHeapPointers(ptr unsafe.Pointer, n uintptr)
+
+// Note: The compiler in theory always optimizes the "safe" variant of this
+// which uses a naive for loop to the unsafe equivalent, but there's no reason
+// to trust it.
+
+func burnBytes(b []byte) {
+	memclrNoHeapPointers(unsafe.Pointer(&b[0]), uintptr(len(b)))
+}
+
+func burnUint64s(b []uint64) {
+	l := len(b) * 8
+	memclrNoHeapPointers(unsafe.Pointer(&b[0]), uintptr(l))
+}

+ 46 - 0
hwaccel.go

@@ -0,0 +1,46 @@
+// hwaccel.go - Hardware acceleration hooks
+//
+// To the extent possible under law, Yawning Angel has waived all copyright
+// and related or neighboring rights to the software, using the Creative
+// Commons "CC0" public domain dedication. See LICENSE or
+// <http://creativecommons.org/publicdomain/zero/1.0/> for full details.
+
+package morus
+
+var (
+	isHardwareAccelerated = false
+	hardwareAccelImpl     = implReference
+
+	implReference = &hwaccelImpl{
+		name:          "Reference",
+		initFn:        initRef,
+		absorbDataFn:  absorbDataRef,
+		encryptDataFn: encryptDataRef,
+		decryptDataFn: decryptDataRef,
+		finalizeFn:    finalizeRef,
+	}
+)
+
+type hwaccelImpl struct {
+	name          string
+	initFn        func(*state, []byte, []byte)
+	absorbDataFn  func(*state, []byte)
+	encryptDataFn func(*state, []byte, []byte)
+	decryptDataFn func(*state, []byte, []byte)
+	finalizeFn    func(*state, uint64, uint64, []byte)
+}
+
+func forceDisableHardwareAcceleration() {
+	isHardwareAccelerated = false
+	hardwareAccelImpl = implReference
+}
+
+// IsHardwareAccelerated returns true iff the MORUS implementation will use
+// hardware acceleration (eg: AVX2).
+func IsHardwareAccelerated() bool {
+	return isHardwareAccelerated
+}
+
+func init() {
+	initHardwareAcceleration()
+}

+ 174 - 0
hwaccel_amd64.go

@@ -0,0 +1,174 @@
+// hwaccel_amd64.go - AMD64 optimized routines
+//
+// To the extent possible under law, Yawning Angel has waived all copyright
+// and related or neighboring rights to the software, using the Creative
+// Commons "CC0" public domain dedication. See LICENSE or
+// <http://creativecommons.org/publicdomain/zero/1.0/> for full details.
+
+// +build amd64,!gccgo,!noasm,go1.10
+
+package morus
+
+import "math"
+
+//go:noescape
+func cpuidAmd64(cpuidParams *uint32)
+
+//go:noescape
+func xgetbv0Amd64(xcrVec *uint32)
+
+//go:noescape
+func initAVX2(s *uint64, key, iv *byte, initConsts *uint64)
+
+//go:noescape
+func absorbBlocksAVX2(s *uint64, in *byte, blocks uint64)
+
+//go:noescape
+func encryptBlocksAVX2(s *uint64, out, in *byte, blocks uint64)
+
+//go:noescape
+func decryptBlocksAVX2(s *uint64, out, in *byte, blocks uint64)
+
+//go:noescape
+func decryptLastBlockAVX2(s *uint64, out, in *byte, mask *uint64)
+
+//go:noescape
+func finalizeAVX2(s *uint64, tag *byte, lastBlock *uint64)
+
+func supportsAVX2() bool {
+	// https://software.intel.com/en-us/articles/how-to-detect-new-instruction-support-in-the-4th-generation-intel-core-processor-family
+	const (
+		osXsaveBit = 1 << 27
+		avx2Bit    = 1 << 5
+	)
+
+	// Check to see if CPUID actually supports the leaf that indicates AVX2.
+	// CPUID.(EAX=0H, ECX=0H) >= 7
+	regs := [4]uint32{0x00}
+	cpuidAmd64(&regs[0])
+	if regs[0] < 7 {
+		return false
+	}
+
+	// Check to see if the OS knows how to save/restore XMM/YMM state.
+	// CPUID.(EAX=01H, ECX=0H):ECX.OSXSAVE[bit 27]==1
+	regs = [4]uint32{0x01}
+	cpuidAmd64(&regs[0])
+	if regs[2]&osXsaveBit == 0 {
+		return false
+	}
+	xcrRegs := [2]uint32{}
+	xgetbv0Amd64(&xcrRegs[0])
+	if xcrRegs[0]&6 != 6 {
+		return false
+	}
+
+	// Check for AVX2 support.
+	// CPUID.(EAX=07H, ECX=0H):EBX.AVX2[bit 5]==1
+	regs = [4]uint32{0x07}
+	cpuidAmd64(&regs[0])
+	return regs[1]&avx2Bit != 0
+}
+
+func initYMM(s *state, key, iv []byte) {
+	initAVX2(&s.s[0], &key[0], &iv[0], &initializationConstants[0])
+}
+
+func absorbDataYMM(s *state, in []byte) {
+	inLen, off := len(in), 0
+	if inLen == 0 {
+		return
+	}
+
+	if inBlocks := inLen / blockSize; inBlocks > 0 {
+		absorbBlocksAVX2(&s.s[0], &in[0], uint64(inBlocks))
+		off += inBlocks * blockSize
+	}
+	in = in[off:]
+
+	if len(in) > 0 {
+		var tmp [blockSize]byte
+		copy(tmp[:], in)
+		absorbBlocksAVX2(&s.s[0], &tmp[0], 1)
+	}
+}
+
+func encryptDataYMM(s *state, out, in []byte) {
+	inLen, off := len(in), 0
+	if inLen == 0 {
+		return
+	}
+
+	if inBlocks := inLen / blockSize; inBlocks > 0 {
+		encryptBlocksAVX2(&s.s[0], &out[0], &in[0], uint64(inBlocks))
+		off += inBlocks * blockSize
+	}
+	out, in = out[off:], in[off:]
+
+	if len(in) > 0 {
+		var tmp [blockSize]byte
+		copy(tmp[:], in)
+		encryptBlocksAVX2(&s.s[0], &tmp[0], &tmp[0], 1)
+		copy(out, tmp[:])
+	}
+}
+
+func decryptPartialBlockYMM(s *state, out, in []byte) {
+	// Yeah this is kind of crap, and doesn't gain much over the naive
+	// (or reference) implementation.
+	var mask [4]uint64
+	subMask := (uint64(1) << uint((len(in)*8)&63)) - 1
+	switch len(in) / 8 {
+	case 0:
+		mask[0] = subMask
+	case 1:
+		mask[0], mask[1] = math.MaxUint64, subMask
+	case 2:
+		mask[0], mask[1], mask[2] = math.MaxUint64, math.MaxUint64, subMask
+	case 3:
+		mask[0], mask[1], mask[2], mask[3] = math.MaxUint64, math.MaxUint64, math.MaxUint64, subMask
+	}
+
+	var tmp [blockSize]byte
+	copy(tmp[:], in)
+	decryptLastBlockAVX2(&s.s[0], &tmp[0], &tmp[0], &mask[0])
+	copy(out, tmp[:])
+}
+
+func decryptDataYMM(s *state, out, in []byte) {
+	inLen, off := len(in), 0
+	if inLen == 0 {
+		return
+	}
+
+	if inBlocks := inLen / blockSize; inBlocks > 0 {
+		decryptBlocksAVX2(&s.s[0], &out[0], &in[0], uint64(inBlocks))
+		off += inBlocks * blockSize
+	}
+	out, in = out[off:], in[off:]
+
+	if len(in) > 0 {
+		decryptPartialBlockYMM(s, out, in)
+	}
+}
+
+func finalizeYMM(s *state, msgLen, adLen uint64, tag []byte) {
+	var lastBlock = [4]uint64{adLen << 3, msgLen << 3, 0, 0}
+	finalizeAVX2(&s.s[0], &tag[0], &lastBlock[0])
+}
+
+var implAVX2 = &hwaccelImpl{
+	name:          "AVX2",
+	initFn:        initYMM,
+	absorbDataFn:  absorbDataYMM,
+	encryptDataFn: encryptDataYMM,
+	decryptDataFn: decryptDataYMM,
+	finalizeFn:    finalizeYMM,
+}
+
+func initHardwareAcceleration() {
+	if supportsAVX2() {
+		isHardwareAccelerated = true
+		hardwareAccelImpl = implAVX2
+	}
+}

+ 297 - 0
hwaccel_amd64.s

@@ -0,0 +1,297 @@
+// +build !noasm,go1.10
+// hwaccel_amd64.s - AMD64 optimized routines
+//
+// To the extent possible under law, Yawning Angel has waived all copyright
+// and related or neighboring rights to the software, using the Creative
+// Commons "CC0" public domain dedication. See LICENSE or
+// <http://creativecommons.org/publicdomain/zero/1.0/> for full details.
+
+#include "textflag.h"
+
+// func cpuidAmd64(cpuidParams *uint32)
+TEXT ·cpuidAmd64(SB), NOSPLIT, $0-8
+	MOVQ cpuidParams+0(FP), R15
+	MOVL 0(R15), AX
+	MOVL 8(R15), CX
+	CPUID
+	MOVL AX, 0(R15)
+	MOVL BX, 4(R15)
+	MOVL CX, 8(R15)
+	MOVL DX, 12(R15)
+	RET
+
+// func xgetbv0Amd64(xcrVec *uint32)
+TEXT ·xgetbv0Amd64(SB), NOSPLIT, $0-8
+	MOVQ xcrVec+0(FP), BX
+	XORL CX, CX
+	XGETBV
+	MOVL AX, 0(BX)
+	MOVL DX, 4(BX)
+	RET
+
+DATA ·init_ones<>+0x00(SB)/8, $0xffffffffffffffff
+DATA ·init_ones<>+0x08(SB)/8, $0xffffffffffffffff
+DATA ·init_ones<>+0x10(SB)/8, $0xffffffffffffffff
+DATA ·init_ones<>+0x18(SB)/8, $0xffffffffffffffff
+GLOBL ·init_ones<>(SB), (NOPTR+RODATA), $32
+
+// TODO: Think about instruction scheduling.
+#define STATE_UPDATE(S0, S1, S2, S3, S4, M0, T0, T1) \
+	VPXOR  S0, S3, S0    \
+	VPAND  S1, S2, T0    \
+	VPXOR  S0, T0, S0    \
+	VPSLLQ $13, S0, T0   \
+	VPSRLQ $51, S0, T1   \
+	VPOR   T0, T1, S0    \
+	VPERMQ $-109, S3, S3 \
+	                     \
+	VPXOR  S1, M0, S1    \
+	VPXOR  S1, S4, S1    \
+	VPAND  S2, S3, T0    \
+	VPXOR  S1, T0, S1    \
+	VPSLLQ $46, S1, T0   \
+	VPSRLQ $18, S1, T1   \
+	VPOR   T0, T1, S1    \
+	VPERMQ $78, S4, S4   \
+	                     \
+	VPXOR  S2, M0, S2    \
+	VPXOR  S2, S0, S2    \
+	VPAND  S3, S4, T0    \
+	VPXOR  S2, T0, S2    \
+	VPSLLQ $38, S2, T0   \
+	VPSRLQ $26, S2, T1   \
+	VPOR   T0, T1, S2    \
+	VPERMQ $57, S0, S0   \
+	                     \
+	VPXOR  S3, M0, S3    \
+	VPXOR  S3, S1, S3    \
+	VPAND  S4, S0, T0    \
+	VPXOR  S3, T0, S3    \
+	VPSLLQ $7, S3, T0    \
+	VPSRLQ $57, S3, T1   \
+	VPOR   T0, T1, S3    \
+	VPERMQ $78, S1, S1   \
+	                     \
+	VPXOR  S4, M0, S4    \
+	VPXOR  S4, S2, S4    \
+	VPAND  S0, S1, T0    \
+	VPXOR  S4, T0, S4    \
+	VPSLLQ $4, S4, T0    \
+	VPSRLQ $60, S4, T1   \
+	VPOR   T0, T1, S4    \
+	VPERMQ $-109, S2, S2
+
+// func initAVX2(s *uint64, key, iv *byte, initConsts *uint64)
+TEXT ·initAVX2(SB), NOSPLIT, $0-32
+	MOVQ s+0(FP), R8
+	MOVQ key+8(FP), R9
+	MOVQ iv+16(FP), R10
+	MOVQ initConsts+24(FP), R11
+
+	VPXOR   Y0, Y0, Y0
+	MOVOU   (R10), X0
+	VMOVDQU (R9), Y1
+	VMOVDQU ·init_ones<>(SB), Y2
+	VPXOR   Y3, Y3, Y3
+	VMOVDQU (R11), Y4
+
+	VPXOR   Y5, Y5, Y5
+	VMOVDQA Y1, Y6
+
+	MOVQ $16, AX
+
+initloop:
+	STATE_UPDATE(Y0, Y1, Y2, Y3, Y4, Y5, Y14, Y15)
+
+	SUBQ $1, AX
+	JNZ  initloop
+
+	VPXOR Y6, Y1, Y1
+
+	VMOVDQU Y0, (R8)
+	VMOVDQU Y1, 32(R8)
+	VMOVDQU Y2, 64(R8)
+	VMOVDQU Y3, 96(R8)
+	VMOVDQU Y4, 128(R8)
+
+	VZEROUPPER
+	RET
+
+// func absorbBlocksAVX2(s *uint64, in *byte, blocks uint64)
+TEXT ·absorbBlocksAVX2(SB), NOSPLIT, $0-24
+	MOVQ s+0(FP), R8
+	MOVQ in+8(FP), R10
+	MOVQ blocks+16(FP), R11
+
+	VMOVDQU (R8), Y0
+	VMOVDQU 32(R8), Y1
+	VMOVDQU 64(R8), Y2
+	VMOVDQU 96(R8), Y3
+	VMOVDQU 128(R8), Y4
+
+loopblocks:
+	VMOVDQU (R10), Y5
+	STATE_UPDATE(Y0, Y1, Y2, Y3, Y4, Y5, Y14, Y15)
+
+	ADDQ $32, R10
+
+	SUBQ $1, R11
+	JNZ  loopblocks
+
+	VMOVDQU Y0, (R8)
+	VMOVDQU Y1, 32(R8)
+	VMOVDQU Y2, 64(R8)
+	VMOVDQU Y3, 96(R8)
+	VMOVDQU Y4, 128(R8)
+
+	VZEROUPPER
+	RET
+
+// func encryptBlocksAVX2(s *uint64, out, in *byte, blocks uint64)
+TEXT ·encryptBlocksAVX2(SB), NOSPLIT, $0-32
+	MOVQ s+0(FP), R8
+	MOVQ out+8(FP), R9
+	MOVQ in+16(FP), R10
+	MOVQ blocks+24(FP), R11
+
+	VMOVDQU (R8), Y0
+	VMOVDQU 32(R8), Y1
+	VMOVDQU 64(R8), Y2
+	VMOVDQU 96(R8), Y3
+	VMOVDQU 128(R8), Y4
+
+loopblocks:
+	VMOVDQU (R10), Y5
+
+	VPERMQ  $57, Y1, Y6
+	VPXOR   Y0, Y6, Y6
+	VPAND   Y2, Y3, Y7
+	VPXOR   Y6, Y7, Y6
+	VPXOR   Y5, Y6, Y6
+	VMOVDQU Y6, (R9)
+
+	STATE_UPDATE(Y0, Y1, Y2, Y3, Y4, Y5, Y14, Y15)
+
+	ADDQ $32, R9
+	ADDQ $32, R10
+
+	SUBQ $1, R11
+	JNZ  loopblocks
+
+	VMOVDQU Y0, (R8)
+	VMOVDQU Y1, 32(R8)
+	VMOVDQU Y2, 64(R8)
+	VMOVDQU Y3, 96(R8)
+	VMOVDQU Y4, 128(R8)
+
+	VZEROUPPER
+	RET
+
+// func decryptBlocksAVX2(s *uint64, out, in *byte, blocks uint64)
+TEXT ·decryptBlocksAVX2(SB), NOSPLIT, $0-32
+	MOVQ s+0(FP), R8
+	MOVQ out+8(FP), R9
+	MOVQ in+16(FP), R10
+	MOVQ blocks+24(FP), R11
+
+	VMOVDQU (R8), Y0
+	VMOVDQU 32(R8), Y1
+	VMOVDQU 64(R8), Y2
+	VMOVDQU 96(R8), Y3
+	VMOVDQU 128(R8), Y4
+
+loopblocks:
+	VMOVDQU (R10), Y5
+
+	VPERMQ  $57, Y1, Y6
+	VPXOR   Y0, Y6, Y6
+	VPAND   Y2, Y3, Y7
+	VPXOR   Y6, Y7, Y6
+	VPXOR   Y5, Y6, Y5
+	VMOVDQU Y5, (R9)
+
+	STATE_UPDATE(Y0, Y1, Y2, Y3, Y4, Y5, Y14, Y15)
+
+	ADDQ $32, R9
+	ADDQ $32, R10
+
+	SUBQ $1, R11
+	JNZ  loopblocks
+
+	VMOVDQU Y0, (R8)
+	VMOVDQU Y1, 32(R8)
+	VMOVDQU Y2, 64(R8)
+	VMOVDQU Y3, 96(R8)
+	VMOVDQU Y4, 128(R8)
+
+	VZEROUPPER
+	RET
+
+// func decryptLastBlockAVX2(s *uint64, out, in *byte, mask *uint64)
+TEXT ·decryptLastBlockAVX2(SB), NOSPLIT, $0-32
+	MOVQ s+0(FP), R8
+	MOVQ out+8(FP), R9
+	MOVQ in+16(FP), R10
+	MOVQ mask+24(FP), R11
+
+	VMOVDQU (R8), Y0
+	VMOVDQU 32(R8), Y1
+	VMOVDQU 64(R8), Y2
+	VMOVDQU 96(R8), Y3
+	VMOVDQU 128(R8), Y4
+
+	VMOVDQU (R10), Y5
+
+	VPERMQ $57, Y1, Y6
+	VPXOR  Y0, Y6, Y6
+	VPAND  Y2, Y3, Y7
+	VPXOR  Y6, Y7, Y6
+	VPXOR  Y5, Y6, Y5
+
+	VMOVDQU (R11), Y6
+	VPAND   Y5, Y6, Y5
+	VMOVDQU Y5, (R9)
+
+	STATE_UPDATE(Y0, Y1, Y2, Y3, Y4, Y5, Y14, Y15)
+
+	VMOVDQU Y0, (R8)
+	VMOVDQU Y1, 32(R8)
+	VMOVDQU Y2, 64(R8)
+	VMOVDQU Y3, 96(R8)
+	VMOVDQU Y4, 128(R8)
+
+	VZEROUPPER
+	RET
+
+// func finalizeAVX2(s *uint64, tag *byte, lastBlock *uint64)
+TEXT ·finalizeAVX2(SB), NOSPLIT, $0-24
+	MOVQ s+0(FP), R8
+	MOVQ tag+8(FP), R9
+	MOVQ lastBlock+16(FP), R10
+
+	VMOVDQU (R8), Y0
+	VMOVDQU 32(R8), Y1
+	VMOVDQU 64(R8), Y2
+	VMOVDQU 96(R8), Y3
+	VMOVDQU 128(R8), Y4
+
+	VPXOR Y4, Y0, Y4
+
+	VMOVDQU (R10), Y5
+	MOVQ    $10, AX
+
+finalloop:
+	STATE_UPDATE(Y0, Y1, Y2, Y3, Y4, Y5, Y14, Y15)
+
+	SUBQ $1, AX
+	JNZ  finalloop
+
+	VPERMQ $57, Y1, Y6
+	VPXOR  Y0, Y6, Y6
+	VPAND  Y2, Y3, Y7
+	VPXOR  Y6, Y7, Y5
+
+	MOVOU X5, (R9)
+
+	VZEROUPPER
+	RET

+ 14 - 0
hwaccel_ref.go

@@ -0,0 +1,14 @@
+// hwaccel_ref.go - Unaccelerated stubs
+//
+// To the extent possible under law, Yawning Angel has waived all copyright
+// and related or neighboring rights to the software, using the Creative
+// Commons "CC0" public domain dedication. See LICENSE or
+// <http://creativecommons.org/publicdomain/zero/1.0/> for full details.
+
+// +build !amd64 gccgo noasm !go1.10
+
+package morus
+
+func initHardwareAcceleration() {
+	forceDisableHardwareAcceleration()
+}

+ 173 - 0
morus.go

@@ -0,0 +1,173 @@
+// morus.go - High-level interface
+//
+// To the extent possible under law, Yawning Angel has waived all copyright
+// and related or neighboring rights to the software, using the Creative
+// Commons "CC0" public domain dedication. See LICENSE or
+// <http://creativecommons.org/publicdomain/zero/1.0/> for full details.
+
+// Package morus implements the MORUS-1280-256 Authenticated Cipher.
+//
+// This implementation is derived from the reference implementation by
+// Hongjun Wu and Tao Huang.
+package morus
+
+import (
+	"crypto/subtle"
+	"errors"
+)
+
+const (
+	// KeySize is the size of a key in bytes.
+	KeySize = 32
+
+	// NonceSize is the size of a nonce in bytes.
+	NonceSize = 16
+
+	// TagSize is the size of an authentication tag in bytes.
+	TagSize = 16
+
+	// Version is the version of the MORUS specification implemented.
+	Version = "2.0"
+)
+
+var (
+	// ErrInvalidKeySize is the error thrown via a panic when a key is an
+	// invalid size.
+	ErrInvalidKeySize = errors.New("morus: invalid key size")
+
+	// ErrInvalidNonceSize is the error thrown via a panic when a nonce is
+	// an invalid size.
+	ErrInvalidNonceSize = errors.New("morus: invalid nonce size")
+
+	// ErrOpen is the error returned when the message authentication fails
+	// during an Open call.
+	ErrOpen = errors.New("morus: message authentication failed")
+)
+
+// AEAD is a MORUS instance, implementing crypto/cipher.AEAD.
+type AEAD struct {
+	key []byte
+}
+
+// NonceSize returns the size of the nonce that must be passed to Seal and
+// Open.
+func (ae *AEAD) NonceSize() int {
+	return NonceSize
+}
+
+// Overhead returns the maximum difference between the lengths of a plaintext
+// and its ciphertext.
+func (ae *AEAD) Overhead() int {
+	return TagSize
+}
+
+// Seal encrypts and authenticates plaintext, authenticates the
+// additional data and appends the result to dst, returning the updated
+// slice. The nonce must be NonceSize() bytes long and unique for all
+// time, for a given key.
+//
+// The plaintext and dst must overlap exactly or not at all. To reuse
+// plaintext's storage for the encrypted output, use plaintext[:0] as dst.
+func (ae *AEAD) Seal(dst, nonce, plaintext, additionalData []byte) []byte {
+	if len(nonce) != NonceSize {
+		panic(ErrInvalidNonceSize)
+	}
+	dst = aeadEncrypt(dst, plaintext, additionalData, nonce, ae.key)
+	return dst
+}
+
+// Open decrypts and authenticates ciphertext, authenticates the
+// additional data and, if successful, appends the resulting plaintext
+// to dst, returning the updated slice. The nonce must be NonceSize()
+// bytes long and both it and the additional data must match the
+// value passed to Seal.
+//
+// The ciphertext and dst must overlap exactly or not at all. To reuse
+// ciphertext's storage for the decrypted output, use ciphertext[:0] as dst.
+//
+// Even if the function fails, the contents of dst, up to its capacity,
+// may be overwritten.
+func (ae *AEAD) Open(dst, nonce, ciphertext, additionalData []byte) ([]byte, error) {
+	var err error
+	var ok bool
+
+	if len(nonce) != NonceSize {
+		panic(ErrInvalidNonceSize)
+	}
+	dst, ok = aeadDecrypt(dst, ciphertext, additionalData, nonce, ae.key)
+	if !ok {
+		err = ErrOpen
+	}
+	return dst, err
+}
+
+// Reset securely purges stored sensitive data from the AEAD instance.
+func (ae *AEAD) Reset() {
+	burnBytes(ae.key)
+}
+
+// New returns a new keyed MORUS-1280-256 instance.
+func New(key []byte) *AEAD {
+	if len(key) != KeySize {
+		panic(ErrInvalidKeySize)
+	}
+	return &AEAD{key: append([]byte{}, key...)}
+}
+
+func aeadEncrypt(c, m, a, nonce, key []byte) []byte {
+	var s state
+	mLen := len(m)
+
+	ret, out := sliceForAppend(c, mLen+TagSize)
+
+	hardwareAccelImpl.initFn(&s, key, nonce)
+	hardwareAccelImpl.absorbDataFn(&s, a)
+	hardwareAccelImpl.encryptDataFn(&s, out, m)
+	hardwareAccelImpl.finalizeFn(&s, uint64(mLen), uint64(len(a)), out[mLen:])
+
+	burnUint64s(s.s[:])
+
+	return ret
+}
+
+func aeadDecrypt(m, c, a, nonce, key []byte) ([]byte, bool) {
+	var s state
+	var tag [TagSize]byte
+	cLen := len(c)
+
+	if cLen < TagSize {
+		return nil, false
+	}
+
+	mLen := cLen - TagSize
+	ret, out := sliceForAppend(m, mLen)
+
+	hardwareAccelImpl.initFn(&s, key, nonce)
+	hardwareAccelImpl.absorbDataFn(&s, a)
+	hardwareAccelImpl.decryptDataFn(&s, out, c[:mLen])
+	hardwareAccelImpl.finalizeFn(&s, uint64(mLen), uint64(len(a)), tag[:])
+
+	srcTag := c[mLen:]
+	ok := subtle.ConstantTimeCompare(srcTag, tag[:]) == 1
+	if !ok && mLen > 0 {
+		// Burn decrypted plaintext on auth failure.
+		burnBytes(out[:mLen])
+		ret = nil
+	}
+
+	burnUint64s(s.s[:])
+
+	return ret, ok
+}
+
+// Shamelessly stolen from the Go runtime library.
+func sliceForAppend(in []byte, n int) (head, tail []byte) {
+	if total := len(in) + n; cap(in) >= total {
+		head = in[:total]
+	} else {
+		head = make([]byte, total)
+		copy(head, in)
+	}
+	tail = head[len(in):]
+	return
+}

+ 4970 - 0
morus_1280_256_kat_test.go

@@ -0,0 +1,4970 @@
+// morus_1280_256_kat_test.go - MORUS-1280-256 Known Answer Test results
+//
+// To the extent possible under law, Yawning Angel has waived all copyright
+// and related or neighboring rights to the software, using the Creative
+// Commons "CC0" public domain dedication. See LICENSE or
+// <http://creativecommons.org/publicdomain/zero/1.0/> for full details.
+
+package morus
+
+var kat1280256 = []byte{
+	0xE4, 0x21, 0xF5, 0xB9, 0xC5, 0x0B, 0x14, 0x91,
+	0x35, 0x25, 0xB7, 0x9A, 0x9D, 0xD3, 0xE7, 0x64,
+
+	0xCB, 0x9F, 0x09, 0xCD, 0x60, 0x47, 0xDF, 0x82,
+	0x69, 0xAE, 0xC3, 0xAD, 0xAD, 0xC1, 0xDB, 0xE9,
+	0xBA,
+
+	0xCB, 0x60, 0x1B, 0x42, 0x64, 0x7B, 0xAD, 0x26,
+	0xD4, 0x7A, 0xF0, 0x05, 0x1D, 0x84, 0x56, 0x37,
+	0x7E, 0x70,
+
+	0xCB, 0x66, 0x90, 0x37, 0xF2, 0xB5, 0x5C, 0x9A,
+	0xBC, 0xC5, 0xB7, 0x16, 0xF3, 0x20, 0x8A, 0x9A,
+	0xFA, 0x22, 0x34,
+
+	0xCB, 0x66, 0x83, 0xC9, 0xE3, 0x1B, 0x81, 0x9B,
+	0x88, 0xBA, 0x9D, 0x73, 0xC1, 0x94, 0xB7, 0xF2,
+	0x89, 0x52, 0xB7, 0x99,
+
+	0xCB, 0x66, 0x43, 0xCB, 0xCF, 0x7F, 0x6F, 0x82,
+	0x7A, 0x3D, 0x1A, 0xC6, 0xD2, 0x45, 0x2A, 0x1C,
+	0x80, 0xCC, 0x59, 0x12, 0xFB,
+
+	0xCB, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x80, 0x97,
+	0x1F, 0x86, 0xAE, 0xF7, 0x8C, 0xFE, 0x2D, 0x76,
+	0x6C, 0x14, 0x44, 0xD7, 0x0A, 0x6C,
+
+	0xCB, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x57,
+	0x22, 0xB5, 0x1E, 0xC3, 0xB9, 0xD9, 0x2D, 0xDB,
+	0xE2, 0x28, 0xE4, 0x20, 0x42, 0x8F, 0xE8,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0x42, 0x39, 0xA9, 0x7D, 0x96, 0x96, 0x15, 0x51,
+	0x1C, 0x92, 0x29, 0x8A, 0x88, 0x98, 0x0B, 0x0C,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0x70, 0xCB, 0xB0, 0x7B, 0xAA, 0x92, 0x9A, 0xA0,
+	0x82, 0xFE, 0x56, 0x61, 0x05, 0x01, 0x3F, 0xE5,
+	0x16,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0x78, 0xC4, 0xDC, 0x6C, 0x22, 0x1E, 0xFB, 0xDE,
+	0x14, 0x98, 0x89, 0xAE, 0x47, 0xB9, 0x97, 0x50,
+	0x67, 0x68,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xD8, 0xC4, 0x72, 0x65, 0xCA, 0xE0, 0xA6, 0xCE,
+	0xE6, 0xEA, 0x12, 0x46, 0x58, 0x07, 0x8B, 0x3F,
+	0xE5, 0xE9, 0x6B,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xD8, 0x44, 0x7A, 0x9D, 0x74, 0xB6, 0x8B, 0xC8,
+	0xE5, 0x09, 0x1F, 0x3C, 0x10, 0x9B, 0xEF, 0xB8,
+	0xB4, 0xF6, 0x71, 0x39,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xD8, 0x44, 0xFA, 0x8D, 0x0B, 0x70, 0x3B, 0xC4,
+	0xFE, 0xA7, 0x2C, 0xA2, 0xD4, 0x31, 0x2B, 0xA9,
+	0x68, 0xBD, 0xBD, 0xC3, 0x4C,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xD8, 0x44, 0xFA, 0x8D, 0x02, 0x1C, 0xDD, 0x65,
+	0x89, 0x42, 0xEC, 0x58, 0xBA, 0x9A, 0xE2, 0x42,
+	0xF2, 0xDC, 0xA9, 0xAA, 0x3E, 0x43,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xD8, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xFC, 0xE5,
+	0x1E, 0xF3, 0xDD, 0xBA, 0xF3, 0x5F, 0xFC, 0x70,
+	0xA5, 0x1D, 0x24, 0xDD, 0xA3, 0x04, 0x5E,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xFE, 0x02, 0xDA, 0x51, 0x35, 0xA8, 0xD4, 0xFE,
+	0xEB, 0x79, 0xC1, 0x47, 0xC6, 0x58, 0x2B, 0xCF,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xFA, 0x90, 0x5A, 0xE3, 0xEC, 0xB7, 0xC9, 0xC5,
+	0x2A, 0x25, 0x06, 0xFF, 0x0E, 0x6E, 0x77, 0x50,
+	0xFD,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xF3, 0x20, 0x5E, 0x51, 0x56, 0x66, 0x7A, 0x65,
+	0x2D, 0x4A, 0x76, 0x48, 0x46, 0xA8, 0x92, 0xAB,
+	0x6A, 0x57,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xD3, 0x21, 0x7A, 0xFB, 0xD6, 0xC8, 0x03, 0xE0,
+	0x4B, 0xB8, 0x33, 0x13, 0x19, 0xE8, 0x95, 0xEE,
+	0xAD, 0x53, 0x25,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xD3, 0xE1, 0x7B, 0xF3, 0x25, 0xE4, 0xE8, 0xB6,
+	0x1F, 0xEE, 0x52, 0x19, 0x1E, 0x7F, 0xC7, 0x39,
+	0x41, 0x31, 0x5B, 0xC1,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xD3, 0xE1, 0xBB, 0xE3, 0x18, 0x02, 0x02, 0x4E,
+	0x65, 0x0E, 0xD2, 0x21, 0xC8, 0x96, 0x9B, 0x51,
+	0xEF, 0x3F, 0x4D, 0x23, 0xF0,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xD3, 0xE1, 0xBB, 0xE3, 0x1A, 0x35, 0x06, 0x03,
+	0xE7, 0x52, 0xBF, 0x72, 0x7D, 0x61, 0xEA, 0x50,
+	0x92, 0x8B, 0x0F, 0x89, 0xF8, 0x2A,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xD3, 0xE1, 0xBB, 0xE3, 0x3A, 0x37, 0x44, 0x20,
+	0x88, 0xC8, 0xEB, 0xFA, 0xF0, 0x41, 0x35, 0xBE,
+	0xD2, 0xC8, 0x30, 0x16, 0xEE, 0xE0, 0x1E,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0xEF, 0x8C, 0x0A,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xBA, 0xE1, 0xBB, 0xE3, 0x3A, 0x37, 0x5C, 0x59,
+	0x8B, 0xF6, 0x08, 0xC9, 0xAD, 0xD7, 0x46, 0x6A,
+	0xE0, 0x42, 0x53, 0x80, 0x3C, 0x40, 0xD2, 0x8E,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0x0B, 0xA8, 0x0A,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xBA, 0xE1, 0xBB, 0xE3, 0x3A, 0x37, 0x5C, 0x59,
+	0xAD, 0x90, 0x33, 0xF6, 0x3A, 0x84, 0x1A, 0xDD,
+	0x39, 0x43, 0xD1, 0xB0, 0x7D, 0xA2, 0x26, 0x4C,
+	0x20,
+
+	0x8B, 0x66, 0x43, 0xCB, 0xC7, 0x0B, 0xAD, 0x1F,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xBA, 0xE1, 0xBB, 0xE3, 0x3A, 0x37, 0x5C, 0x59,
+	0xA7, 0xE4, 0x41, 0x56, 0x65, 0xFD, 0xDB, 0xCD,
+	0xAB, 0xB7, 0xD1, 0xED, 0xCB, 0x5E, 0x89, 0x7D,
+	0xDF, 0x0A,
+
+	0x8E, 0x66, 0x43, 0xCB, 0xC7, 0x0B, 0xAD, 0x5E,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xBA, 0xE1, 0xBB, 0xE3, 0x3A, 0x37, 0x5C, 0x59,
+	0x27, 0xE6, 0x50, 0xA1, 0xD3, 0x9A, 0x50, 0x8B,
+	0x97, 0x21, 0x9A, 0xF7, 0x5E, 0x8A, 0x11, 0x56,
+	0x53, 0xE3, 0x61,
+
+	0x2B, 0x53, 0x43, 0xCB, 0xC7, 0x0B, 0xAD, 0xDE,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xBA, 0xE1, 0xBB, 0xE3, 0x3A, 0x37, 0x5C, 0x59,
+	0x27, 0x66, 0x52, 0x57, 0x5D, 0xBA, 0x18, 0x31,
+	0x11, 0x35, 0xB9, 0xAA, 0xA8, 0xB9, 0x6F, 0xA5,
+	0x30, 0x20, 0x40, 0xB6,
+
+	0xAB, 0x97, 0x66, 0xCB, 0xC7, 0x0B, 0xAD, 0xDE,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xBA, 0xE1, 0xBB, 0xE3, 0x3A, 0x37, 0x5C, 0x59,
+	0x27, 0x66, 0xF2, 0x45, 0x2B, 0x35, 0xE9, 0x59,
+	0xEB, 0xBB, 0xDB, 0xB6, 0x19, 0x0A, 0x53, 0xC8,
+	0xA1, 0xA9, 0x22, 0x87, 0xEA,
+
+	0xAB, 0x97, 0x62, 0xDD, 0xC7, 0x0B, 0xAD, 0xDE,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xBA, 0xE1, 0xBB, 0xE3, 0x3A, 0x37, 0x5C, 0x59,
+	0x27, 0x66, 0xF2, 0x45, 0x2B, 0x9D, 0x13, 0x10,
+	0x15, 0x7B, 0xAE, 0x21, 0x6A, 0x93, 0x93, 0x41,
+	0xA7, 0xB6, 0xB0, 0xC5, 0x6F, 0x8F,
+
+	0xAB, 0x97, 0x62, 0x99, 0xC1, 0x0B, 0xAD, 0xDE,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xBA, 0xE1, 0xBB, 0xE3, 0x3A, 0x37, 0x5C, 0x59,
+	0x27, 0x66, 0xF2, 0x45, 0x0B, 0x9D, 0xE5, 0x01,
+	0x63, 0x56, 0x29, 0x50, 0xCF, 0x75, 0x76, 0x94,
+	0x90, 0x1F, 0x49, 0xA2, 0x33, 0x54, 0x9C,
+
+	0xAB, 0x97, 0x62, 0x19, 0x71, 0x3D, 0xAD, 0xDE,
+	0xF9, 0x44, 0xFA, 0x8D, 0x22, 0x1D, 0xE4, 0x6A,
+	0xBA, 0xE1, 0xBB, 0xE3, 0x3A, 0x37, 0x5C, 0x59,
+	0x6A, 0x66, 0xF2, 0x45, 0x0B, 0xDD, 0xFD, 0xCD,
+	0x29, 0x7B, 0x51, 0xF0, 0xB9, 0x25, 0xBA, 0xC1,
+	0x25, 0x92, 0x14, 0x74, 0xF1, 0x02, 0x08, 0xB6,
+
+	0xB7, 0x27, 0x04, 0x9E, 0x11, 0x4B, 0xF4, 0xD2,
+	0x5A, 0x22, 0x42, 0x5B, 0x3D, 0x5D, 0x2E, 0x5E,
+	0xA4, 0x58, 0x7B, 0xC0, 0x87, 0x9A, 0x67, 0x8C,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0xBA, 0x71, 0x8B, 0x65, 0xC1, 0x5D, 0xE4, 0x0A,
+	0x4E, 0x5A, 0x0C, 0xFF, 0x2E, 0xDF, 0x17, 0xBA,
+	0x1C,
+
+	0xB5, 0x27, 0x00, 0x9E, 0x11, 0x4B, 0xF4, 0x52,
+	0x5A, 0x22, 0x42, 0x5B, 0x3D, 0x5D, 0x2C, 0x49,
+	0xA4, 0x58, 0x7B, 0xC0, 0x87, 0x9A, 0x67, 0x8C,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0xA0, 0xAD, 0xE1, 0xCA, 0xD0, 0x59, 0x9A, 0x42,
+	0xF4, 0x88, 0xB0, 0x81, 0xA2, 0x65, 0xD9, 0x8F,
+	0xAE, 0xE1,
+
+	0x15, 0x25, 0x00, 0x9E, 0x11, 0x4B, 0xF4, 0x52,
+	0x5D, 0x22, 0x42, 0x5B, 0x3D, 0x5D, 0x2C, 0x0A,
+	0xA4, 0x58, 0x7B, 0xC0, 0x87, 0x9A, 0x67, 0x8C,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x80, 0xB7, 0x8C, 0x44, 0x0D, 0x68, 0xF3, 0xD3,
+	0x98, 0x5C, 0x38, 0xDA, 0x3F, 0x94, 0xF9, 0xE2,
+	0x9C, 0x19, 0xE1,
+
+	0x15, 0xA5, 0x01, 0x9E, 0x7A, 0x4B, 0xF4, 0x52,
+	0xFC, 0x15, 0x42, 0x5B, 0x3D, 0x5D, 0x2C, 0x8A,
+	0xA4, 0x58, 0x7B, 0xC0, 0x87, 0x9A, 0x67, 0x8C,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x80, 0x77, 0x86, 0x0B, 0xE5, 0x8D, 0xF5, 0x16,
+	0xB7, 0xAA, 0xF1, 0xD7, 0x43, 0x7C, 0x0C, 0xBA,
+	0x78, 0x97, 0x5D, 0x25,
+
+	0x15, 0xA5, 0x41, 0x8F, 0xFA, 0x45, 0xF4, 0x52,
+	0xBC, 0xF6, 0x65, 0x5B, 0x3D, 0x5D, 0x2C, 0x8A,
+	0xA4, 0x58, 0x7B, 0xC0, 0x87, 0x9A, 0x67, 0x8C,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x8D, 0x77, 0xAE, 0x0F, 0x7A, 0x24, 0x35, 0x8A,
+	0x6F, 0xEB, 0xCB, 0x9C, 0x2A, 0xF7, 0x8D, 0x32,
+	0x86, 0xE8, 0x2D, 0xEC, 0x90,
+
+	0x15, 0xA5, 0x41, 0x8F, 0xF2, 0x45, 0xF4, 0x52,
+	0xBC, 0xF6, 0x65, 0x43, 0x3D, 0x5D, 0x2C, 0x8A,
+	0xA4, 0x58, 0x7B, 0xC0, 0x87, 0x9A, 0x67, 0x8C,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x8D, 0x67, 0xAE, 0x0F, 0x39, 0xF2, 0x1E, 0xA1,
+	0x37, 0x7F, 0x6F, 0x8A, 0xDE, 0x71, 0x80, 0x08,
+	0xA1, 0x0F, 0xA1, 0x81, 0x1E, 0x8A,
+
+	0x15, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xF4, 0x42,
+	0xBC, 0xF6, 0x25, 0x0B, 0x35, 0x5D, 0x2C, 0x8A,
+	0xA4, 0x58, 0x7B, 0xC0, 0x87, 0x9A, 0x67, 0x8C,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x8D, 0x67, 0xAE, 0x0F, 0x39, 0xF2, 0x30, 0x13,
+	0x96, 0xE9, 0x57, 0x64, 0xEF, 0xAC, 0x94, 0x89,
+	0xCF, 0xD7, 0x4B, 0x02, 0x34, 0x32, 0x0B,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xBC, 0xF6, 0x25, 0x8B, 0x85, 0x65, 0x2C, 0x8A,
+	0xA4, 0x58, 0x7B, 0xC0, 0x87, 0x9A, 0x67, 0x8C,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x8D, 0x67, 0xAE, 0x1E, 0x39, 0xF2, 0xF3, 0xF3,
+	0xA2, 0x2C, 0xBE, 0xB5, 0xE6, 0x4B, 0x55, 0x2A,
+	0xB4, 0xA5, 0xAE, 0x3A, 0x17, 0x35, 0xD2, 0x74,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xBC, 0xE6, 0x25, 0x8B, 0x85, 0x65, 0x4C, 0x9E,
+	0xA4, 0x58, 0x7B, 0xC0, 0xC7, 0x7A, 0x4F, 0x8C,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x01, 0x25, 0x1E, 0x34, 0x93, 0xF3, 0xF3, 0xF3,
+	0xBB, 0x4F, 0xB1, 0x9C, 0x3B, 0x55, 0x68, 0x7D,
+	0x47, 0x5D, 0x53, 0x86, 0x01, 0x06, 0x9D, 0x5C,
+	0xF2,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xB8, 0xE6, 0x05, 0x8B, 0x85, 0x65, 0x4C, 0x1E,
+	0xA4, 0x58, 0x7B, 0xC0, 0xC7, 0x7A, 0x46, 0x95,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x01, 0xB5, 0x17, 0x54, 0xD5, 0xD5, 0xE3, 0xF3,
+	0x3A, 0xE4, 0x74, 0x8D, 0xF7, 0x64, 0x8C, 0x4B,
+	0x1E, 0xF5, 0x9C, 0x55, 0x76, 0xD8, 0xCA, 0x38,
+	0xA9, 0x56,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xB8, 0xE6, 0x05, 0x99, 0x85, 0x65, 0x4C, 0x1E,
+	0xAD, 0x58, 0x7B, 0xC0, 0xC7, 0x7A, 0x06, 0xD5,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x01, 0xB5, 0x83, 0x54, 0xA5, 0x87, 0xCC, 0xE3,
+	0x1A, 0xE7, 0xBF, 0xEA, 0x6D, 0xB3, 0x2E, 0xE2,
+	0x73, 0x8A, 0xDF, 0xFE, 0xE8, 0x1C, 0xF9, 0xAB,
+	0x1E, 0xF4, 0x0C,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xB8, 0xE6, 0x01, 0x99, 0x96, 0x65, 0x4C, 0x1E,
+	0x2C, 0x61, 0x7B, 0xC0, 0xC7, 0x7A, 0x06, 0x55,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x09, 0xB4, 0x83, 0xCC, 0x2E, 0xA7, 0xA2, 0x89,
+	0x1A, 0xF7, 0xB4, 0xD6, 0xBF, 0x68, 0x04, 0x16,
+	0x46, 0x16, 0x8C, 0xAC, 0x1C, 0x6D, 0xB0, 0x73,
+	0x05, 0x8F, 0xD4, 0xA5,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xB8, 0xE6, 0x61, 0x89, 0x96, 0x75, 0x4C, 0x1E,
+	0x6C, 0x80, 0x52, 0xC0, 0xC7, 0x7A, 0x06, 0x55,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0xAC, 0xB9, 0x83, 0xCC, 0xB2, 0xA5, 0xD7, 0xFB,
+	0x1B, 0xF7, 0xB4, 0x90, 0xF6, 0x46, 0x6D, 0xE0,
+	0xF3, 0xF5, 0x79, 0x48, 0xB8, 0x29, 0xAD, 0x20,
+	0x87, 0x3A, 0x2D, 0xD0, 0xB7,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xB8, 0xE6, 0x61, 0x89, 0x97, 0x75, 0x78, 0x1E,
+	0x6C, 0x80, 0x52, 0xDA, 0xC7, 0x7A, 0x06, 0x55,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x2A, 0xD6, 0x83, 0xCC, 0xB2, 0x05, 0x96, 0x53,
+	0x1B, 0xF7, 0xB4, 0xD0, 0x56, 0x7B, 0xA8, 0xB5,
+	0x48, 0x34, 0xDB, 0xC9, 0xD5, 0x0F, 0x00, 0x08,
+	0xA0, 0x8C, 0x02, 0xD6, 0x17, 0xC7,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xB8, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xF8, 0x0A,
+	0x6C, 0x80, 0x12, 0x9A, 0xCD, 0x7A, 0x06, 0x55,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x93, 0x44, 0xC8, 0xEC, 0xB2, 0x05, 0x32, 0x13,
+	0x1B, 0x77, 0xA4, 0xD0, 0x56, 0x69, 0xCA, 0x47,
+	0xD6, 0xFC, 0x87, 0xB6, 0xBD, 0xA9, 0x9C, 0x3B,
+	0x75, 0x5C, 0xC1, 0x02, 0xCB, 0x82, 0xF5,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x6C, 0x80, 0x12, 0x1A, 0x7D, 0x40, 0x06, 0x55,
+	0x6B, 0x81, 0x80, 0xD8, 0x29, 0xDA, 0x2F, 0x6F,
+	0x90, 0xED, 0x66, 0xCC, 0x9A, 0x05, 0x32, 0xBB,
+	0x1B, 0x77, 0xA4, 0xB4, 0x56, 0x39, 0xEB, 0x45,
+	0x9B, 0xB3, 0x37, 0xED, 0xDE, 0x02, 0x8D, 0xF5,
+	0x41, 0x4C, 0x35, 0x75, 0xBC, 0xF1, 0x60, 0xD4,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0xEC, 0x85, 0x12, 0x1A, 0x7D, 0x40, 0x26, 0x41,
+	0x6B, 0x81, 0x80, 0xD8, 0xA9, 0x30, 0x05, 0x6F,
+	0x90, 0xC5, 0xFF, 0xD6, 0x57, 0x15, 0x62, 0xBA,
+	0xB7, 0x35, 0x16, 0x0E, 0x73, 0x19, 0xEB, 0x45,
+	0x90, 0xDB, 0xC6, 0x02, 0x44, 0x98, 0xB7, 0xFB,
+	0x76, 0xB2, 0xDE, 0xBB, 0x44, 0x7F, 0x9F, 0x7F,
+	0xF1,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0xE5, 0x85, 0x10, 0x1A, 0x7D, 0x40, 0x26, 0xC1,
+	0x6B, 0x81, 0x80, 0xD8, 0xA9, 0x30, 0x04, 0x74,
+	0x98, 0xC5, 0xBF, 0x11, 0x75, 0x15, 0x62, 0xFE,
+	0xB7, 0x85, 0x57, 0xCE, 0x95, 0xDF, 0xEB, 0x45,
+	0xD0, 0x04, 0xFE, 0xA2, 0xAE, 0x55, 0x51, 0x06,
+	0x2A, 0x9B, 0x30, 0xA7, 0x1E, 0xE5, 0x40, 0xEB,
+	0x64, 0x89,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x45, 0x80, 0x10, 0x08, 0x7D, 0x40, 0x26, 0xC1,
+	0x60, 0x81, 0x80, 0xD8, 0xA9, 0x30, 0x04, 0x3D,
+	0x5C, 0xC0, 0xBF, 0x41, 0x35, 0x37, 0x22, 0xDF,
+	0xB7, 0x85, 0xE3, 0xCE, 0x45, 0x0D, 0xE9, 0x55,
+	0xB8, 0xEF, 0xA7, 0x09, 0xFD, 0xFB, 0x92, 0xE9,
+	0x3C, 0x95, 0x74, 0x4F, 0x0F, 0x5E, 0x3B, 0x49,
+	0x2F, 0x39, 0x9D,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x45, 0x00, 0x19, 0x08, 0x7B, 0x40, 0x26, 0xC1,
+	0xF3, 0xBA, 0x80, 0xD8, 0xA9, 0x30, 0x04, 0x3D,
+	0x9E, 0xC4, 0xBE, 0x41, 0xD5, 0x35, 0x08, 0xCB,
+	0xB6, 0x85, 0xE3, 0x76, 0xC2, 0x8D, 0x27, 0x06,
+	0xB8, 0xAF, 0xF3, 0x07, 0xEF, 0xBA, 0xFA, 0x59,
+	0xF1, 0x71, 0xE8, 0xB8, 0xB7, 0xD7, 0x18, 0x83,
+	0xF3, 0x56, 0x47, 0x47,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x45, 0x00, 0x59, 0x19, 0xFB, 0x03, 0x26, 0xC1,
+	0x73, 0x5B, 0xAB, 0xD8, 0xA9, 0x30, 0x04, 0x3D,
+	0x82, 0x96, 0x1A, 0x45, 0xD5, 0x55, 0xDB, 0x83,
+	0x18, 0x85, 0xE1, 0x76, 0x7E, 0x8F, 0xDF, 0xB4,
+	0xFF, 0xAF, 0xBB, 0x16, 0x9C, 0xA1, 0x43, 0x61,
+	0x8E, 0xA4, 0x02, 0xEC, 0xF0, 0x61, 0xF4, 0xCA,
+	0x66, 0xB5, 0xF9, 0x37, 0x37,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x45, 0x00, 0x59, 0x19, 0xF5, 0x03, 0x16, 0xC1,
+	0x73, 0x5B, 0xA3, 0xC4, 0xA9, 0x30, 0x04, 0x3D,
+	0x80, 0x96, 0x1B, 0x41, 0xDB, 0x55, 0xDB, 0x87,
+	0x9F, 0xC2, 0xA1, 0x77, 0x7E, 0x4F, 0xFE, 0xE4,
+	0xFF, 0x87, 0xBB, 0x16, 0x1F, 0xC3, 0xEB, 0x67,
+	0x1F, 0x9F, 0x6A, 0x4B, 0xE1, 0xC1, 0xAA, 0x68,
+	0x7E, 0x77, 0x15, 0x1E, 0x62, 0xF4,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x45, 0x00, 0x59, 0x19, 0xF5, 0x01, 0x16, 0xD1,
+	0x73, 0x5B, 0xE3, 0x88, 0xA5, 0x30, 0x04, 0x3D,
+	0x83, 0x9D, 0x9B, 0x61, 0xFF, 0x55, 0xDB, 0x87,
+	0x8F, 0xD1, 0xF0, 0x77, 0x7E, 0x4F, 0x3A, 0xE4,
+	0xFF, 0x07, 0xAB, 0x16, 0x17, 0xC3, 0x83, 0xE2,
+	0x34, 0x7E, 0x09, 0x19, 0x1E, 0x5E, 0xDA, 0x88,
+	0x84, 0x4E, 0x61, 0x38, 0x2F, 0x11, 0x7E,
+
+	0x35, 0xA5, 0x41, 0x8F, 0xD2, 0x41, 0xFC, 0x42,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x2C, 0x00, 0x59, 0x19, 0xF5, 0x41, 0x00, 0xD1,
+	0x73, 0x5B, 0xE3, 0x88, 0x35, 0x0C, 0x04, 0x3D,
+	0xA3, 0xB7, 0x10, 0xF4, 0xF9, 0x51, 0xD0, 0x87,
+	0x2C, 0xF1, 0xDF, 0x5F, 0x7E, 0x4F, 0x3A, 0x2C,
+	0xFF, 0x07, 0xAB, 0x2E, 0x17, 0xC3, 0x25, 0xDF,
+	0xE8, 0x5C, 0x19, 0xF3, 0xCB, 0xBD, 0x32, 0xC0,
+	0x79, 0xBD, 0x35, 0x88, 0x78, 0x72, 0x99, 0x68,
+
+	0x35, 0xA5, 0x41, 0x8F, 0x92, 0xA1, 0xD0, 0x42,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x2C, 0x00, 0x59, 0x19, 0xF5, 0x41, 0x00, 0xD1,
+	0xF3, 0x52, 0xE3, 0x88, 0x35, 0x0C, 0x64, 0x3D,
+	0xE5, 0xF5, 0x14, 0x57, 0xF8, 0xF0, 0x1E, 0xF9,
+	0x2C, 0xE1, 0xFC, 0x55, 0x7E, 0x2A, 0x1A, 0x2D,
+	0x33, 0x65, 0x9B, 0x1D, 0x38, 0x07, 0x25, 0xDF,
+	0x95, 0x66, 0xA6, 0xCA, 0x38, 0xB1, 0xBA, 0x6F,
+	0xAA, 0x49, 0x37, 0x24, 0xA5, 0x96, 0x01, 0x1C,
+	0xA6,
+
+	0x35, 0xA5, 0x41, 0x8F, 0x92, 0xA1, 0xC5, 0x5F,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x2C, 0x00, 0x59, 0x19, 0xF5, 0x41, 0x00, 0xD1,
+	0xFF, 0x52, 0xD1, 0x88, 0x35, 0x0C, 0x64, 0xBD,
+	0xB4, 0xB4, 0x14, 0x47, 0xAC, 0xF0, 0x6A, 0x29,
+	0x2C, 0xE1, 0xBC, 0x13, 0x7F, 0x2A, 0x1A, 0x23,
+	0x33, 0xB5, 0x9A, 0x39, 0xFF, 0xC4, 0x75, 0xDE,
+	0x34, 0xE9, 0x8B, 0x28, 0xD4, 0x45, 0xA7, 0x9C,
+	0xDF, 0x89, 0x31, 0x2A, 0x7D, 0xEC, 0xD7, 0x82,
+	0x2C, 0x95,
+
+	0x38, 0xA5, 0x41, 0x8F, 0x92, 0xA1, 0x85, 0x12,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x2C, 0x00, 0x59, 0x19, 0xF5, 0x41, 0x00, 0xD1,
+	0x5F, 0x56, 0xD1, 0x9A, 0x35, 0x0C, 0x64, 0xBD,
+	0x60, 0xC8, 0x15, 0x47, 0xAD, 0x64, 0x6B, 0xD8,
+	0x2C, 0xE5, 0xBC, 0x9B, 0x2D, 0x29, 0x93, 0x83,
+	0x33, 0xB5, 0x4E, 0x71, 0xAA, 0x9F, 0x74, 0xDE,
+	0x34, 0xC1, 0x0E, 0xBA, 0xF8, 0x53, 0xC7, 0xED,
+	0x87, 0x73, 0x7E, 0x9B, 0x85, 0x00, 0xDB, 0xCF,
+	0xA8, 0xB1, 0x8E,
+
+	0xA0, 0x98, 0x41, 0x8F, 0x92, 0xA1, 0x85, 0x12,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x2C, 0x00, 0x59, 0x19, 0xF5, 0x41, 0x00, 0xD1,
+	0x5F, 0x56, 0xC7, 0x9A, 0x05, 0x0C, 0x64, 0xBD,
+	0x44, 0x10, 0xD6, 0x45, 0xAC, 0x51, 0x0D, 0xDF,
+	0x68, 0x0D, 0xB3, 0x9B, 0x0D, 0x48, 0x3C, 0x15,
+	0x33, 0xB5, 0x4E, 0xA9, 0x69, 0xB9, 0x0B, 0xE3,
+	0x34, 0x71, 0x55, 0x76, 0xEF, 0x65, 0xF3, 0x4E,
+	0x59, 0xFF, 0xBB, 0x4B, 0xF1, 0xB0, 0x17, 0x61,
+	0x6C, 0xFA, 0x15, 0x10,
+
+	0xE0, 0x5D, 0x6C, 0x8F, 0x92, 0xA1, 0x85, 0x12,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x2C, 0x00, 0x59, 0x19, 0xF5, 0x41, 0x00, 0xD1,
+	0x5F, 0x56, 0xA7, 0x88, 0x85, 0x1E, 0x64, 0xBD,
+	0x45, 0xB6, 0x08, 0xE7, 0xAB, 0xD1, 0x20, 0x5A,
+	0x5D, 0x37, 0x37, 0x9F, 0x0D, 0x38, 0x1B, 0x1C,
+	0xAB, 0xBD, 0x4E, 0xA9, 0xB5, 0xB1, 0x7B, 0x88,
+	0x2E, 0x71, 0x7D, 0x7F, 0x34, 0xF0, 0xBA, 0x69,
+	0xEA, 0x75, 0x59, 0x47, 0x94, 0x38, 0x03, 0xC7,
+	0x5F, 0x43, 0x06, 0x37, 0x31,
+
+	0xE0, 0x5D, 0x68, 0x91, 0x92, 0xA1, 0x85, 0x12,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x2C, 0x00, 0x59, 0x19, 0xF5, 0x41, 0x00, 0xD1,
+	0x5F, 0x56, 0xA7, 0x88, 0x81, 0x1E, 0x5C, 0xBD,
+	0xBD, 0xB6, 0x68, 0x06, 0x2A, 0x56, 0x20, 0x46,
+	0x3E, 0xF7, 0x3E, 0x13, 0x08, 0x38, 0xDB, 0x1B,
+	0x2C, 0xEB, 0x0E, 0xA9, 0xB5, 0x51, 0x7A, 0x08,
+	0x2E, 0x59, 0x7D, 0xFF, 0xB4, 0x67, 0x40, 0x4E,
+	0xC8, 0x2E, 0xBA, 0x15, 0x20, 0xA9, 0x20, 0xEC,
+	0x79, 0x13, 0x6F, 0x51, 0x21, 0x35,
+
+	0xE0, 0x5D, 0x68, 0xDD, 0x9C, 0xA1, 0x85, 0x12,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x2C, 0x00, 0x59, 0x19, 0xF5, 0x41, 0x00, 0xD1,
+	0x5F, 0x56, 0xA7, 0x88, 0xA1, 0x18, 0xDC, 0xBD,
+	0xBF, 0xAF, 0x68, 0x53, 0xCE, 0x22, 0x01, 0x06,
+	0x3E, 0xD7, 0xBE, 0x02, 0x68, 0x3D, 0xDB, 0x9B,
+	0xBC, 0x78, 0x2D, 0x8D, 0xB5, 0x51, 0x9E, 0x1A,
+	0x2E, 0xD9, 0x61, 0xFF, 0x34, 0x77, 0xA5, 0x72,
+	0x5B, 0xA4, 0xE3, 0xC3, 0x7A, 0xE9, 0x99, 0xCC,
+	0x92, 0x95, 0x20, 0x2B, 0xA6, 0x41, 0x53,
+
+	0xE0, 0x5D, 0x68, 0xDD, 0x3C, 0x9F, 0x85, 0x12,
+	0xBD, 0xE6, 0x61, 0x89, 0x97, 0x71, 0xE5, 0x0A,
+	0x2C, 0x00, 0x59, 0x19, 0xF5, 0x41, 0x00, 0xD1,
+	0x73, 0x56, 0xA7, 0x88, 0xA1, 0x18, 0xC6, 0xBD,
+	0x3F, 0x9F, 0x92, 0x53, 0x0C, 0xC8, 0x8A, 0x00,
+	0x1E, 0xD1, 0xBF, 0x97, 0x0D, 0x48, 0xCC, 0x9B,
+	0xBB, 0xD9, 0x82, 0xDE, 0xB5, 0x51, 0x9E, 0xF2,
+	0x2E, 0xD9, 0x61, 0xA3, 0x34, 0xF7, 0xE5, 0x66,
+	0x8F, 0x15, 0x52, 0xCC, 0xB5, 0xF5, 0xB5, 0x3B,
+	0x15, 0xCC, 0xE0, 0xAE, 0x6A, 0x8D, 0x03, 0x6E,
+
+	0xC3, 0xCE, 0x1B, 0x96, 0x85, 0x9D, 0xAF, 0x5A,
+	0x4F, 0x71, 0x73, 0x24, 0x0F, 0x8F, 0x18, 0xFF,
+	0xB4, 0xA3, 0x59, 0xB0, 0xEC, 0xD8, 0x16, 0xCA,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0xFE, 0xB1, 0xFA, 0x38, 0x39, 0x19, 0xAA, 0x7B,
+	0x11, 0x51, 0xC4, 0x32, 0x83, 0x19, 0x96, 0x23,
+	0x7D, 0xB5, 0x38, 0x2F, 0x23, 0x2D, 0xD0, 0x30,
+	0xCC, 0x28, 0x66, 0x31, 0x0D, 0x99, 0x40, 0x67,
+	0xE7, 0xCF, 0x43, 0xAE, 0xBF, 0xEE, 0xA5, 0x2E,
+	0xA3, 0xE5, 0x19, 0xE6, 0x03, 0x69, 0x5F, 0x03,
+	0x14,
+
+	0xC0, 0xCE, 0x17, 0x96, 0x85, 0x9D, 0xAF, 0xDA,
+	0x4F, 0x71, 0x73, 0x24, 0x0F, 0x8F, 0x11, 0xE0,
+	0xB4, 0xA3, 0x59, 0xB0, 0xEC, 0xD8, 0x16, 0xCA,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0xE6, 0xB1, 0xFA, 0x38, 0x39, 0x3F, 0xAA, 0xFB,
+	0x60, 0x52, 0xC4, 0x37, 0xFF, 0x19, 0xEE, 0xD3,
+	0x7F, 0xB5, 0x78, 0x29, 0x21, 0x8C, 0xC9, 0x22,
+	0xCC, 0xD8, 0x37, 0xF9, 0xCA, 0x6A, 0x20, 0x67,
+	0x7C, 0xB5, 0xF0, 0x3C, 0x09, 0x1D, 0x28, 0x2B,
+	0x00, 0x91, 0x65, 0x0D, 0x25, 0x85, 0xE1, 0x8A,
+	0x67, 0x5A,
+
+	0xC0, 0xCF, 0x17, 0x84, 0x85, 0x9D, 0xAF, 0xDA,
+	0x40, 0x71, 0x73, 0x24, 0x0F, 0x8F, 0x11, 0xA8,
+	0xB4, 0xA3, 0x59, 0xB0, 0xEC, 0xD8, 0x16, 0xCA,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0x4E, 0xAC, 0xFA, 0x38, 0x39, 0x3F, 0xA8, 0xFB,
+	0x94, 0xDE, 0xC0, 0x77, 0xF3, 0x20, 0xEE, 0xF7,
+	0xB5, 0xB1, 0x78, 0x59, 0x20, 0x8C, 0x21, 0x01,
+	0xCC, 0xD8, 0xC3, 0xFB, 0x1A, 0x39, 0x7E, 0xA7,
+	0xD4, 0x36, 0x37, 0x4C, 0xE4, 0xF3, 0x8E, 0xB8,
+	0x62, 0x86, 0xBA, 0x59, 0xD4, 0x95, 0xEE, 0x91,
+	0x0C, 0x49, 0x80,
+
+	0xC0, 0xCF, 0x1B, 0x84, 0xE9, 0x9D, 0xAF, 0xDA,
+	0xDA, 0x4E, 0x73, 0x24, 0x0F, 0x8F, 0x11, 0x28,
+	0xB4, 0xA3, 0x59, 0xB0, 0xEC, 0xD8, 0x16, 0xCA,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0x4E, 0x4C, 0x27, 0x39, 0x39, 0x3F, 0xA8, 0x9C,
+	0xC6, 0x27, 0x73, 0x31, 0xF3, 0x37, 0x90, 0xF6,
+	0xF7, 0x69, 0x6C, 0x59, 0xF0, 0x4D, 0x0A, 0x01,
+	0xDC, 0xD8, 0xC3, 0x03, 0x0D, 0xDD, 0xD1, 0x82,
+	0x2B, 0xA4, 0xBB, 0xD9, 0x5C, 0x2F, 0x8B, 0xE0,
+	0x60, 0x5E, 0x70, 0x62, 0xA2, 0x4E, 0xBC, 0x82,
+	0x75, 0xE1, 0xB8, 0xCE,
+
+	0xC0, 0xCF, 0x1B, 0x96, 0x69, 0xD3, 0xAF, 0xDA,
+	0xDA, 0xAC, 0x5C, 0x24, 0x0F, 0x8F, 0x11, 0x28,
+	0xB4, 0xA3, 0x59, 0xB0, 0xEC, 0xD8, 0x16, 0xCA,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0x54, 0x4C, 0xE7, 0x39, 0x39, 0x3F, 0xA8, 0x1C,
+	0xC6, 0xA9, 0x8D, 0xFF, 0xB8, 0x37, 0x91, 0xC8,
+	0x1F, 0xAD, 0x7C, 0x58, 0xF0, 0xC5, 0x91, 0x12,
+	0x28, 0xD8, 0xC3, 0x03, 0xF1, 0xDD, 0x0D, 0x19,
+	0x60, 0x3E, 0x18, 0x9D, 0x32, 0xBB, 0x8E, 0x47,
+	0x4A, 0x64, 0xAB, 0xD2, 0x57, 0x9E, 0xD6, 0x56,
+	0xBA, 0x08, 0x3E, 0x57, 0x7C,
+
+	0xC0, 0xCF, 0x1B, 0x96, 0x69, 0xD3, 0xAF, 0xDA,
+	0xDA, 0xAC, 0x5C, 0x04, 0x0F, 0x8F, 0x11, 0x28,
+	0xB4, 0xA3, 0x59, 0xB0, 0xEC, 0xD8, 0x16, 0xCA,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0x54, 0x4C, 0xE7, 0x39, 0x39, 0x3F, 0xA8, 0x1C,
+	0x46, 0xA9, 0x8D, 0xFD, 0xBA, 0x35, 0x91, 0xE8,
+	0x17, 0xAD, 0x78, 0x58, 0xE1, 0xC5, 0x91, 0x1A,
+	0x20, 0xD0, 0xC3, 0x03, 0xF1, 0xDD, 0x0F, 0x99,
+	0xE1, 0x2A, 0x9D, 0x9D, 0x4E, 0xEF, 0x7F, 0x39,
+	0x9C, 0x67, 0x55, 0x22, 0xE4, 0x8B, 0xE7, 0x37,
+	0xAC, 0xCE, 0xD0, 0x7F, 0xE3, 0x3A,
+
+	0xC0, 0xCF, 0x1B, 0x96, 0x49, 0xDB, 0x2F, 0xFA,
+	0xDA, 0xAC, 0x1C, 0x44, 0x1F, 0x8F, 0x11, 0x28,
+	0xB4, 0xA3, 0x59, 0xB0, 0xEC, 0xD8, 0x16, 0xCA,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0x54, 0xCC, 0xE7, 0x39, 0x39, 0x3D, 0xA8, 0x1C,
+	0x56, 0xE8, 0x8D, 0xBC, 0xBE, 0x24, 0x90, 0xE8,
+	0x13, 0xAD, 0x70, 0x7A, 0xE3, 0xC5, 0x91, 0x0A,
+	0x30, 0xC4, 0x86, 0x03, 0xF1, 0xDD, 0x0B, 0x9A,
+	0x21, 0x0A, 0xBF, 0x95, 0x0E, 0xAD, 0x44, 0xD2,
+	0xC0, 0x52, 0x2D, 0x96, 0x20, 0x22, 0x35, 0x01,
+	0x7A, 0x29, 0x34, 0xCE, 0xE3, 0x7B, 0x53,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xDA, 0xAC, 0x1C, 0x44, 0x9F, 0x8F, 0x11, 0x28,
+	0xB4, 0xA3, 0x59, 0xB0, 0xEC, 0xD8, 0x16, 0xCA,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0x54, 0xCC, 0xE7, 0x38, 0x39, 0x2D, 0xA8, 0x1C,
+	0x56, 0xE8, 0x9F, 0xBC, 0xBC, 0x2C, 0x90, 0xE8,
+	0x13, 0x8D, 0x70, 0x6A, 0xE2, 0xC5, 0x91, 0x0A,
+	0x30, 0xE4, 0xB6, 0x01, 0xF1, 0xDD, 0x0B, 0x92,
+	0x25, 0x0B, 0xAF, 0x91, 0x0C, 0x9D, 0x44, 0x0F,
+	0x33, 0x64, 0xE5, 0xF9, 0x1F, 0xDD, 0xE8, 0xEF,
+	0xAE, 0xCC, 0x11, 0xAD, 0x29, 0x18, 0x22, 0xB4,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xDA, 0xCC, 0x1C, 0x44, 0x9F, 0x8F, 0x51, 0x30,
+	0xB4, 0xA3, 0x59, 0xB0, 0x2C, 0x38, 0x26, 0xCA,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0x58, 0xC9, 0xD7, 0x14, 0x70, 0x24, 0xAA, 0x1C,
+	0x54, 0xE8, 0x9F, 0xBC, 0xFC, 0x2C, 0x80, 0xE8,
+	0x1D, 0xCD, 0x40, 0xA1, 0xE2, 0x44, 0x9D, 0x09,
+	0x30, 0xDC, 0xAA, 0x11, 0xE9, 0xFB, 0x2B, 0x92,
+	0x04, 0x93, 0xCC, 0x96, 0x7B, 0x37, 0xAA, 0x35,
+	0x9A, 0x08, 0x37, 0x7C, 0x23, 0xC0, 0x33, 0xA8,
+	0x4E, 0x09, 0x79, 0x3A, 0x06, 0x19, 0xDA, 0x05,
+	0xFE,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xDA, 0xCC, 0x5E, 0x44, 0x9F, 0x8F, 0x51, 0xB0,
+	0xB4, 0xA3, 0x59, 0xB0, 0x2C, 0x38, 0x06, 0xEB,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0x58, 0xD9, 0xDD, 0xD4, 0x38, 0xA8, 0xAA, 0x1C,
+	0x4C, 0xE9, 0x9F, 0xBC, 0xFC, 0x2C, 0x80, 0xC8,
+	0x1F, 0xCF, 0x40, 0x81, 0xE6, 0x44, 0x19, 0x19,
+	0x20, 0xDC, 0xAA, 0x51, 0xE1, 0xDB, 0xEF, 0x12,
+	0x97, 0x9F, 0x56, 0x96, 0x7B, 0x3B, 0xE2, 0x68,
+	0xDE, 0xA0, 0xFA, 0x05, 0xF3, 0x6B, 0xB1, 0xA6,
+	0x15, 0xC0, 0x6F, 0xDA, 0x72, 0x7F, 0x31, 0x52,
+	0x22, 0x73,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFA, 0xCC, 0x5E, 0x46, 0x9F, 0x8F, 0x51, 0xB0,
+	0xA5, 0xA3, 0x59, 0xB0, 0x2C, 0x38, 0x46, 0xBB,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0x58, 0xD9, 0xC9, 0xD5, 0x28, 0xFC, 0x6A, 0x1C,
+	0x6C, 0xE9, 0x9F, 0xBC, 0xFC, 0x2C, 0x80, 0xC8,
+	0x0B, 0x8E, 0x46, 0x81, 0xF7, 0x09, 0x19, 0x48,
+	0xA2, 0xDC, 0xAA, 0x69, 0xF5, 0xDB, 0xC7, 0xB2,
+	0xC3, 0xDC, 0xC4, 0xA6, 0xDA, 0xB5, 0xEF, 0x7B,
+	0xD0, 0x2C, 0x66, 0x42, 0x4E, 0x5A, 0xDB, 0x9D,
+	0x06, 0x73, 0xBC, 0x19, 0xE0, 0xF9, 0xB9, 0x34,
+	0xD5, 0x0E, 0x68,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFA, 0x8C, 0x5E, 0x46, 0x9C, 0x8F, 0x51, 0xB0,
+	0x24, 0xA2, 0x59, 0xB0, 0x2C, 0x38, 0x46, 0x3B,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0x58, 0xD9, 0xC9, 0xCD, 0x28, 0x9C, 0x0A, 0x10,
+	0x6C, 0xC9, 0x8B, 0xBC, 0xFC, 0x2C, 0x80, 0xC8,
+	0x09, 0x96, 0x1E, 0x91, 0x77, 0x09, 0x1B, 0x48,
+	0xA0, 0xD4, 0xAA, 0x69, 0xF5, 0xDB, 0xC7, 0xA2,
+	0x33, 0x10, 0xF5, 0xA2, 0xC7, 0xB5, 0xAA, 0x5D,
+	0xB0, 0x4C, 0x6E, 0x64, 0xFE, 0xFB, 0x5F, 0x7F,
+	0x54, 0x52, 0x8A, 0x10, 0x1C, 0xAD, 0x5F, 0xAF,
+	0x4D, 0x46, 0x2C, 0x60,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFA, 0x8C, 0x3E, 0x46, 0x9C, 0x8F, 0x51, 0xB0,
+	0x24, 0x63, 0x68, 0xB0, 0x2C, 0x38, 0x46, 0x3B,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0xDD, 0xD9, 0xC9, 0xCD, 0x34, 0x9B, 0xFA, 0x7C,
+	0x6E, 0xC9, 0xAB, 0xA6, 0xFC, 0x2C, 0x80, 0x48,
+	0x0B, 0xDC, 0x01, 0x9E, 0x77, 0x8B, 0x2A, 0x8D,
+	0x8A, 0xF2, 0x0E, 0x79, 0xF5, 0x9B, 0x87, 0x06,
+	0xFD, 0x6E, 0x30, 0xE4, 0x44, 0x1F, 0x98, 0xB3,
+	0x70, 0x0E, 0xC6, 0x5B, 0xEE, 0x91, 0x13, 0x98,
+	0xAF, 0x9E, 0x29, 0xB2, 0x7B, 0x53, 0xCB, 0x53,
+	0xCD, 0x4C, 0x90, 0x0F, 0xA3,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFA, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x11, 0xB0,
+	0x24, 0x63, 0x4A, 0x92, 0x2C, 0x38, 0x46, 0x3B,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0x55, 0xD9, 0xC9, 0xCD, 0x34, 0xBB, 0xF8, 0xF5,
+	0x6E, 0xC9, 0xAB, 0xE6, 0xF8, 0x2D, 0x80, 0x48,
+	0xC3, 0xDC, 0x89, 0xBE, 0xB5, 0xA9, 0x2A, 0x8F,
+	0x82, 0xF7, 0x0E, 0x68, 0xE4, 0x9B, 0x47, 0x8E,
+	0xF9, 0xDA, 0xBB, 0xAE, 0xCE, 0x99, 0xDB, 0x92,
+	0x77, 0x0F, 0x49, 0x5B, 0xE2, 0xA7, 0x63, 0x0E,
+	0x2A, 0x62, 0x79, 0x61, 0x15, 0x9E, 0xC3, 0xE3,
+	0xA3, 0x73, 0x35, 0x1D, 0x54, 0xB7,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFA, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x11, 0xB0,
+	0x24, 0x63, 0x0A, 0xC2, 0x3E, 0x38, 0x46, 0x3B,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0xC5, 0x4D, 0xD5, 0xED, 0x34, 0xBB, 0xDC, 0x66,
+	0x6E, 0xC9, 0x8F, 0xE6, 0xB8, 0x2F, 0x80, 0x48,
+	0xD1, 0x9D, 0x8B, 0xB6, 0x91, 0x40, 0x0E, 0xCF,
+	0x96, 0xE3, 0x0E, 0x68, 0xC5, 0x9B, 0x47, 0x5E,
+	0x90, 0xE2, 0x7A, 0xBE, 0x07, 0x13, 0x91, 0x70,
+	0x92, 0x4C, 0xD4, 0x1B, 0x8E, 0xB5, 0x20, 0x5E,
+	0x25, 0x04, 0x9F, 0x0D, 0xA9, 0x15, 0x81, 0xDC,
+	0x89, 0x10, 0x2D, 0xE7, 0x77, 0x61, 0x77,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x24, 0x63, 0x0A, 0xC2, 0xBE, 0x3A, 0x46, 0x3B,
+	0x83, 0xCA, 0x02, 0xEE, 0x0F, 0xAC, 0x77, 0xB2,
+	0xC5, 0xED, 0x75, 0xE5, 0x34, 0xBB, 0xDC, 0x4E,
+	0x6E, 0xC9, 0x8F, 0xE7, 0xB8, 0x6F, 0x90, 0x48,
+	0x51, 0x9D, 0xC9, 0xB6, 0xB3, 0x68, 0x66, 0xCF,
+	0x16, 0x63, 0x4E, 0x78, 0xC5, 0xDB, 0x47, 0x5E,
+	0xAC, 0xA0, 0x19, 0x30, 0xAB, 0x02, 0x83, 0x70,
+	0x8D, 0x0A, 0x9E, 0x0A, 0xC5, 0xD5, 0xA5, 0x32,
+	0x38, 0x48, 0xB0, 0x4E, 0x95, 0xF5, 0xD1, 0xC1,
+	0x24, 0x1F, 0x53, 0xE3, 0x95, 0xBD, 0x7A, 0x90,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x24, 0x46, 0x0A, 0xC2, 0xBE, 0x3A, 0x26, 0x3B,
+	0x83, 0xCA, 0x02, 0xEE, 0x8F, 0x4C, 0x45, 0xB2,
+	0xC5, 0x45, 0xCD, 0xEF, 0x3C, 0xB8, 0x96, 0x4F,
+	0x42, 0xC8, 0x3F, 0x0B, 0xF9, 0x67, 0x92, 0x48,
+	0x52, 0x9D, 0xC9, 0x36, 0xD7, 0x68, 0x6E, 0xCB,
+	0x1D, 0xE3, 0x6C, 0xF8, 0xC5, 0x9B, 0x6B, 0x7D,
+	0x12, 0x43, 0x7C, 0xE4, 0x5E, 0xAC, 0x33, 0xE0,
+	0x22, 0x02, 0x22, 0x8F, 0x6E, 0xE9, 0x65, 0x04,
+	0xF2, 0xEB, 0xD0, 0x5E, 0xB0, 0x31, 0xBF, 0x28,
+	0xC2, 0x02, 0x91, 0xA4, 0xC8, 0xBD, 0x11, 0x92,
+	0xC2,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x35, 0x46, 0x0E, 0xC2, 0xBE, 0x3A, 0x26, 0xBB,
+	0x83, 0xCA, 0x02, 0xEE, 0x8F, 0x4C, 0x45, 0x91,
+	0xC4, 0x45, 0x0D, 0xEF, 0x3C, 0xD8, 0x90, 0x4F,
+	0x42, 0xF8, 0x2D, 0xCB, 0x71, 0x63, 0x92, 0x48,
+	0x46, 0x9D, 0xC9, 0x36, 0xD7, 0x6C, 0x6E, 0xEB,
+	0x3F, 0xE7, 0x6C, 0xDA, 0x49, 0x9B, 0xEB, 0x4F,
+	0x12, 0x11, 0xDD, 0x85, 0x1F, 0xCB, 0x7A, 0x80,
+	0xF1, 0xAE, 0x70, 0x57, 0xCE, 0x3D, 0x29, 0x16,
+	0x28, 0x7E, 0xA7, 0x55, 0x6F, 0xFC, 0x80, 0x20,
+	0x80, 0x48, 0xDD, 0xC0, 0x95, 0xBB, 0xDF, 0xF2,
+	0x3B, 0xD4,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x15, 0x47, 0x0E, 0xC4, 0xBE, 0x3A, 0x26, 0xBB,
+	0x90, 0xCA, 0x02, 0xEE, 0x8F, 0x4C, 0x45, 0xD1,
+	0x4E, 0x44, 0x0D, 0x2F, 0xFA, 0xD0, 0x70, 0x6D,
+	0x42, 0xF8, 0x19, 0xDA, 0xA1, 0xB7, 0xD9, 0x48,
+	0x4E, 0x0D, 0xC9, 0x36, 0xD7, 0xEC, 0x6A, 0xEB,
+	0x0A, 0xBA, 0x4D, 0x9A, 0x59, 0xD6, 0xEB, 0x07,
+	0xB7, 0x35, 0x2F, 0xCC, 0x73, 0x50, 0x43, 0x5B,
+	0x35, 0x75, 0xDA, 0xC6, 0x25, 0xA1, 0xB4, 0xC5,
+	0x10, 0xDC, 0xB0, 0x11, 0x93, 0x27, 0x35, 0x26,
+	0x07, 0x96, 0x51, 0x8D, 0xEC, 0x8A, 0x1B, 0x05,
+	0xE3, 0x82, 0x40,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x15, 0x47, 0x0F, 0xC4, 0xB8, 0x3A, 0x26, 0xBB,
+	0x10, 0xC9, 0x02, 0xEE, 0x8F, 0x4C, 0x45, 0xD1,
+	0x4C, 0x8C, 0x0C, 0x2F, 0xFA, 0xD0, 0x30, 0x4D,
+	0x52, 0xF8, 0x19, 0xE2, 0xB5, 0x5F, 0x39, 0x4E,
+	0x4E, 0x3D, 0xCD, 0x36, 0xD7, 0xEC, 0x6A, 0xE9,
+	0x3A, 0x82, 0x6D, 0x9A, 0x59, 0xD7, 0xE5, 0x07,
+	0xF0, 0xD9, 0xAD, 0x7A, 0x52, 0x8C, 0xC3, 0x19,
+	0x1D, 0xE9, 0xD9, 0xF0, 0x10, 0xC1, 0x7F, 0x89,
+	0x00, 0x8C, 0x87, 0x83, 0x7F, 0x88, 0x9E, 0x87,
+	0x72, 0xB8, 0xFE, 0x59, 0xA1, 0x43, 0x78, 0xD4,
+	0x98, 0x15, 0xDA, 0x0E,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x15, 0x47, 0x2F, 0xCD, 0x38, 0x7A, 0x26, 0xBB,
+	0x50, 0x1A, 0x31, 0xEE, 0x8F, 0x4C, 0x45, 0xD1,
+	0x7E, 0x0C, 0x2C, 0x2E, 0xFA, 0x10, 0xF0, 0x63,
+	0x54, 0xF8, 0x19, 0xE2, 0x89, 0x4E, 0xCE, 0xAA,
+	0x09, 0x3D, 0xB5, 0xBE, 0xD7, 0xEC, 0x6A, 0x69,
+	0x3A, 0x4B, 0x51, 0xC9, 0x5B, 0x97, 0xC7, 0xC0,
+	0xBB, 0xAF, 0x4E, 0x1E, 0x5F, 0xCE, 0xDD, 0x92,
+	0xAE, 0xF7, 0x56, 0xC8, 0x81, 0x44, 0x64, 0x1B,
+	0x4B, 0x00, 0x95, 0x1D, 0xE4, 0xC2, 0xB7, 0x62,
+	0xF1, 0x12, 0x51, 0x10, 0xED, 0xA7, 0x68, 0x7F,
+	0xDB, 0xDC, 0xC9, 0x20, 0xB9,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x15, 0x47, 0x2F, 0xCD, 0x3A, 0x7A, 0x6E, 0xBB,
+	0x50, 0x1A, 0x15, 0xCA, 0x8F, 0x4C, 0x45, 0xD1,
+	0x7E, 0x08, 0x28, 0x2C, 0xEB, 0x10, 0x70, 0x6F,
+	0x5D, 0xF5, 0x19, 0xE0, 0x89, 0x0E, 0xCC, 0xAA,
+	0x09, 0x35, 0xB5, 0xBE, 0xF7, 0xEC, 0x6A, 0x69,
+	0xAA, 0x4B, 0x11, 0x89, 0x59, 0x90, 0xC5, 0xC0,
+	0x9E, 0xC5, 0xCD, 0x1E, 0x5B, 0xE8, 0xDF, 0xFA,
+	0x0A, 0x22, 0x1F, 0xE0, 0xB7, 0xCB, 0x24, 0x3B,
+	0x0A, 0x84, 0xC0, 0xBD, 0xC8, 0x75, 0xE2, 0x9C,
+	0xF7, 0xD4, 0xD4, 0x23, 0xFD, 0x44, 0x7A, 0x3C,
+	0x37, 0xDC, 0x32, 0x4A, 0x90, 0x47,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x15, 0x47, 0x2F, 0xCD, 0x1A, 0x7A, 0xEE, 0xBB,
+	0x50, 0x1A, 0x15, 0x9E, 0x9B, 0x4C, 0x45, 0xD1,
+	0x6F, 0x29, 0x20, 0x2C, 0x69, 0x10, 0x70, 0x7F,
+	0x1D, 0xE0, 0x1E, 0xE0, 0x89, 0x0E, 0x88, 0x2B,
+	0x09, 0xB5, 0x95, 0xBE, 0x77, 0x6E, 0x6A, 0x69,
+	0xBA, 0x12, 0x11, 0x99, 0x1D, 0x5D, 0xC0, 0xC0,
+	0xBF, 0xF5, 0xE6, 0xED, 0xFD, 0xCA, 0xC1, 0xF2,
+	0xC4, 0x26, 0x1B, 0x16, 0x32, 0xCD, 0x0D, 0x5E,
+	0x9A, 0x0C, 0x40, 0x2C, 0x78, 0x93, 0x2E, 0xDB,
+	0xA7, 0x75, 0xC2, 0x62, 0x5E, 0x84, 0xB6, 0x97,
+	0xA1, 0xDF, 0x6C, 0x97, 0x74, 0x0C, 0x48,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x49, 0x9B, 0x2F, 0xFA,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x1C, 0x47, 0x2F, 0xCD, 0x1A, 0x3A, 0xEC, 0xBB,
+	0x50, 0x1A, 0x15, 0x9E, 0x1F, 0x48, 0x45, 0xD1,
+	0x6F, 0x29, 0x20, 0x3C, 0x29, 0x50, 0x72, 0x7F,
+	0x1D, 0xC2, 0x2F, 0xE5, 0x89, 0x0E, 0x88, 0x63,
+	0x09, 0xB5, 0x95, 0xB7, 0x77, 0xEE, 0x6E, 0x69,
+	0x3A, 0x16, 0x03, 0x99, 0x1F, 0x15, 0x50, 0xC0,
+	0x7F, 0x7A, 0xAE, 0xD0, 0x24, 0xEA, 0x01, 0xD2,
+	0xC8, 0x22, 0x0D, 0x27, 0xB6, 0x46, 0x61, 0x67,
+	0xAD, 0x03, 0xC2, 0x98, 0x71, 0xA2, 0xA4, 0xA8,
+	0x8C, 0xD7, 0x0C, 0x98, 0xA4, 0x74, 0x56, 0x3B,
+	0xFD, 0x81, 0x25, 0x20, 0x74, 0xCE, 0x67, 0x7D,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x09, 0x6F, 0x1B, 0xFA,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x1C, 0x47, 0x2F, 0xCD, 0x1A, 0x3A, 0xEC, 0xBB,
+	0xD0, 0x32, 0x15, 0x9E, 0x1F, 0x48, 0x05, 0xC3,
+	0x66, 0xE9, 0x24, 0xFF, 0x2D, 0x94, 0x3E, 0x34,
+	0x1D, 0xC2, 0x07, 0xEB, 0x19, 0x04, 0x4E, 0x6B,
+	0x45, 0x16, 0xA4, 0x8A, 0x6C, 0xEE, 0x6C, 0x69,
+	0x3B, 0x16, 0x03, 0x99, 0x1E, 0x15, 0xC8, 0xC2,
+	0xEA, 0xFE, 0xD1, 0x71, 0x87, 0xE1, 0x57, 0x97,
+	0x76, 0xBB, 0xF0, 0xA5, 0x4F, 0x96, 0x77, 0x82,
+	0x7D, 0x2F, 0x13, 0xB6, 0x36, 0xBB, 0x09, 0xDF,
+	0xCA, 0x49, 0xE5, 0x47, 0xF0, 0xA1, 0xE1, 0x43,
+	0xDA, 0xCD, 0x58, 0x25, 0xB4, 0x13, 0x27, 0x61,
+	0x2D,
+
+	0xC1, 0xCF, 0x1B, 0x96, 0x09, 0x6F, 0x3B, 0xDF,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x1C, 0x47, 0x2F, 0xCD, 0x1A, 0x3A, 0xEC, 0xBB,
+	0xC2, 0x32, 0x55, 0x9E, 0x1F, 0x48, 0x05, 0xC3,
+	0x64, 0xE3, 0x24, 0xDE, 0xB9, 0x90, 0x6E, 0x64,
+	0x1F, 0xC2, 0x47, 0xEB, 0xB1, 0x84, 0x4A, 0x6B,
+	0x45, 0x46, 0x86, 0xDB, 0x25, 0xE7, 0x6C, 0x6B,
+	0x1B, 0x16, 0x03, 0x99, 0x1E, 0x17, 0xC8, 0x42,
+	0xAA, 0x9C, 0x91, 0x62, 0x47, 0x33, 0x67, 0x66,
+	0x36, 0x50, 0x51, 0x5F, 0x4A, 0xF6, 0xE8, 0x12,
+	0x5C, 0x7F, 0x7B, 0x46, 0x34, 0x2E, 0xD8, 0x43,
+	0xEF, 0x92, 0x2E, 0x15, 0x44, 0x4B, 0xF7, 0xD2,
+	0xD6, 0x92, 0xDF, 0xDB, 0xC3, 0x89, 0xA4, 0x32,
+	0x0D, 0xF0,
+
+	0xD4, 0xCF, 0x1B, 0x96, 0x09, 0x6F, 0x7B, 0x9F,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x1C, 0x47, 0x2F, 0xCD, 0x1A, 0x3A, 0xEC, 0xBB,
+	0x62, 0x38, 0x55, 0x9C, 0x1F, 0x48, 0x05, 0xC3,
+	0x30, 0x3E, 0x20, 0xDE, 0xBC, 0x85, 0x6E, 0x24,
+	0x97, 0xCA, 0x47, 0x7B, 0xA4, 0x80, 0x48, 0x49,
+	0x45, 0x46, 0xD2, 0xDA, 0x65, 0xBA, 0x0B, 0x6B,
+	0xB3, 0x6C, 0x03, 0x99, 0x1E, 0x17, 0xEA, 0x42,
+	0xC1, 0x98, 0xAA, 0xBF, 0x12, 0x71, 0x8E, 0x18,
+	0x10, 0xD2, 0x78, 0x54, 0x2B, 0xBE, 0x2B, 0xE9,
+	0x5D, 0x3D, 0x3E, 0xB4, 0x7C, 0x55, 0x7E, 0xFA,
+	0xE1, 0xB8, 0xA4, 0x44, 0x40, 0xED, 0x14, 0xB5,
+	0xFE, 0xB6, 0x18, 0x8D, 0x69, 0xB0, 0x83, 0xC2,
+	0x6A, 0xFA, 0x18,
+
+	0x50, 0xCA, 0x1B, 0x96, 0x09, 0x6F, 0x7B, 0x9F,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x1C, 0x47, 0x2F, 0xCD, 0x1A, 0x3A, 0xEC, 0xBB,
+	0x62, 0xB8, 0x55, 0x9C, 0x1C, 0x48, 0x05, 0xC3,
+	0x30, 0x66, 0xE8, 0xDE, 0x3C, 0x80, 0x68, 0x24,
+	0x17, 0xEE, 0x45, 0x7B, 0xC4, 0xA1, 0xC9, 0x79,
+	0x45, 0x46, 0xD2, 0x82, 0x65, 0xD8, 0x4A, 0x7E,
+	0xB3, 0xEC, 0x47, 0x99, 0x1E, 0x17, 0xEA, 0x40,
+	0x26, 0xC9, 0x22, 0xB8, 0x62, 0x6C, 0xE3, 0x10,
+	0x51, 0xD0, 0xB2, 0x99, 0x49, 0x6F, 0xDA, 0xEB,
+	0x39, 0x8B, 0x5B, 0xF9, 0x48, 0xD1, 0x2F, 0x4E,
+	0xC3, 0xB8, 0x8E, 0x8D, 0xE4, 0x07, 0x5A, 0x1A,
+	0xAB, 0xC1, 0x0A, 0xC2, 0xBB, 0x83, 0x28, 0x09,
+	0xDB, 0x64, 0x89, 0xDC,
+
+	0x10, 0x3E, 0x2E, 0x96, 0x09, 0x6F, 0x7B, 0x9F,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x1C, 0x47, 0x2F, 0xCD, 0x1A, 0x3A, 0xEC, 0xBB,
+	0x62, 0xB8, 0x15, 0x8E, 0x9C, 0x48, 0x05, 0xC3,
+	0x34, 0xF0, 0xB4, 0xE5, 0x3A, 0x80, 0x7D, 0xF3,
+	0x03, 0xCE, 0xC5, 0x69, 0xC4, 0xD1, 0xD6, 0x74,
+	0x0E, 0x57, 0xD3, 0x82, 0x39, 0xD5, 0x38, 0xBB,
+	0x92, 0xEC, 0x77, 0x9D, 0x1F, 0x17, 0xEA, 0x40,
+	0x21, 0x76, 0x44, 0xF0, 0x3B, 0x2B, 0xE4, 0x18,
+	0xFD, 0x6E, 0x17, 0xB2, 0xCA, 0x25, 0xCB, 0x6D,
+	0x27, 0xC7, 0xAA, 0x2C, 0x81, 0x6A, 0x75, 0xF8,
+	0x6F, 0xEB, 0x0E, 0x2B, 0x6A, 0xC3, 0x7C, 0xF8,
+	0x26, 0x4D, 0xD7, 0xC1, 0x5F, 0xA0, 0x0B, 0xD4,
+	0x53, 0xF3, 0x05, 0xE8, 0x97,
+
+	0x10, 0x3E, 0x0E, 0xB0, 0x09, 0x6F, 0x7B, 0x9F,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x1C, 0x47, 0x2F, 0xCD, 0x1A, 0x3A, 0xEC, 0xBB,
+	0x62, 0xB8, 0x15, 0x8E, 0x9F, 0x48, 0x41, 0xC3,
+	0x24, 0xF0, 0xBC, 0x85, 0x38, 0x80, 0x7D, 0xD3,
+	0x02, 0xCB, 0xCD, 0x6B, 0xD7, 0xD1, 0x56, 0x7D,
+	0x87, 0xD6, 0xD3, 0x80, 0x39, 0xB5, 0x1A, 0x33,
+	0x92, 0xA0, 0x77, 0xDD, 0x1B, 0x15, 0xEA, 0x40,
+	0x50, 0xB4, 0x7C, 0x72, 0x92, 0x6D, 0xA5, 0xFF,
+	0xFF, 0xDE, 0xC6, 0xF3, 0xCA, 0x11, 0xBB, 0xB4,
+	0xF3, 0x04, 0x2A, 0x2F, 0xC5, 0xCA, 0x67, 0xB9,
+	0x32, 0x22, 0xD7, 0x2B, 0x6A, 0xB9, 0xEA, 0x3C,
+	0x11, 0x85, 0x4F, 0x12, 0x33, 0xF2, 0xA3, 0xB6,
+	0x73, 0x12, 0x4A, 0xD5, 0x2B, 0x61,
+
+	0x10, 0x3E, 0x0E, 0xF6, 0x1F, 0x6F, 0x7B, 0x9F,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x1C, 0x47, 0x2F, 0xCD, 0x1A, 0x3A, 0xEC, 0xBB,
+	0x62, 0xB8, 0x15, 0x8E, 0x9F, 0x48, 0x41, 0xC7,
+	0x30, 0xA1, 0xBC, 0x90, 0x5C, 0xC1, 0x7E, 0x93,
+	0x05, 0xCA, 0x4D, 0x69, 0xF6, 0xD8, 0x56, 0xFD,
+	0x17, 0xCB, 0x1D, 0x80, 0x39, 0xB5, 0x7E, 0x02,
+	0x92, 0xA0, 0x73, 0xDD, 0xDB, 0x17, 0xEA, 0x40,
+	0xA4, 0xAD, 0xAC, 0xB1, 0xDC, 0x69, 0x9B, 0x7A,
+	0x86, 0xEE, 0x0A, 0x62, 0x10, 0x53, 0x09, 0x65,
+	0xB7, 0xF5, 0x77, 0x71, 0x0C, 0xC2, 0x2A, 0x3B,
+	0x87, 0xEC, 0xA5, 0xD1, 0xEA, 0xD5, 0x7A, 0xBD,
+	0xEF, 0xA5, 0x62, 0x2C, 0x63, 0xD5, 0x50, 0x06,
+	0x6B, 0xB8, 0xDB, 0x37, 0xAA, 0xC3, 0x6D,
+
+	0x10, 0x3E, 0x0E, 0x76, 0x9D, 0x69, 0x7B, 0x9F,
+	0xFE, 0x8C, 0x3E, 0x46, 0x8D, 0x8F, 0x10, 0xB0,
+	0x1C, 0x47, 0x2F, 0xCD, 0x1A, 0x3A, 0xEC, 0xBB,
+	0x6B, 0xB8, 0x15, 0x8E, 0x9F, 0x48, 0x42, 0xC7,
+	0xB0, 0xA5, 0xA6, 0x90, 0x56, 0xA9, 0xFE, 0x93,
+	0x45, 0xCB, 0x4C, 0xF9, 0xB6, 0xD9, 0x57, 0xFD,
+	0x17, 0x7B, 0xFC, 0xA3, 0x39, 0xB5, 0x7E, 0x6A,
+	0x92, 0xA0, 0x73, 0xD8, 0xDB, 0x47, 0xCA, 0x40,
+	0xDB, 0x6F, 0xBE, 0xD0, 0x3F, 0x51, 0x9F, 0x36,
+	0x97, 0xE2, 0x8D, 0xD8, 0x56, 0x3F, 0x09, 0xF6,
+	0xB7, 0x67, 0x8F, 0xE0, 0x0D, 0xA1, 0x4C, 0xD0,
+	0xF4, 0xDC, 0xF1, 0xD1, 0xFC, 0x41, 0x69, 0xC7,
+	0x6B, 0xF7, 0x06, 0xC9, 0x6F, 0x9F, 0x73, 0x1A,
+	0x03, 0xC6, 0x22, 0x62, 0x7E, 0xF3, 0xFB, 0xE2,
+
+	0xDB, 0xD5, 0x5D, 0x65, 0x5C, 0xD8, 0x76, 0x40,
+	0x36, 0x5A, 0x87, 0xCC, 0xA2, 0xA6, 0x95, 0xAC,
+	0x39, 0x2E, 0x70, 0x4D, 0xA9, 0x36, 0x1C, 0x77,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0x77, 0xFA, 0x36, 0x44, 0x89, 0x73, 0x83, 0x7A,
+	0x49, 0x42, 0x61, 0x36, 0x3C, 0x03, 0x62, 0x31,
+	0x24, 0xFA, 0x25, 0x58, 0x01, 0x2B, 0x26, 0x1B,
+	0xF0, 0x2F, 0x4C, 0x5C, 0xBA, 0xCF, 0x5D, 0x77,
+	0x3C, 0x9C, 0xA6, 0x29, 0xB8, 0xC8, 0x8A, 0xD7,
+	0xB1, 0xDB, 0xEE, 0x72, 0x4E, 0x88, 0x91, 0x2B,
+	0x6F, 0x04, 0x12, 0xF5, 0x83, 0xC3, 0x84, 0x0B,
+	0xF2, 0x9D, 0x5A, 0xE2, 0xDA, 0x32, 0xC8, 0x92,
+	0x05, 0xCA, 0x39, 0x25, 0x3C, 0x7C, 0x4F, 0x56,
+	0xC1, 0xA0, 0xED, 0xF4, 0x43, 0xCD, 0x11, 0x55,
+	0x4B,
+
+	0xDB, 0xD5, 0x53, 0x65, 0x5C, 0xD8, 0x76, 0xC0,
+	0x36, 0x5A, 0x87, 0xCC, 0xA2, 0xA6, 0xB2, 0x8B,
+	0x39, 0x2E, 0x70, 0x4D, 0xA9, 0x36, 0x1C, 0x77,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0x6B, 0xF9, 0x36, 0x44, 0x89, 0x35, 0x83, 0x7A,
+	0xDB, 0x46, 0x61, 0x16, 0x24, 0x03, 0xDA, 0x43,
+	0x36, 0xFA, 0x65, 0x1D, 0x28, 0x4F, 0xA0, 0x3B,
+	0xF0, 0x5F, 0x4E, 0x04, 0x73, 0xF6, 0x5C, 0x77,
+	0x60, 0xE9, 0x12, 0xBE, 0x51, 0x20, 0x3B, 0x17,
+	0xE9, 0xE5, 0x4D, 0x77, 0xBF, 0xCB, 0xC0, 0x87,
+	0x6F, 0xE2, 0x10, 0x3D, 0xC4, 0x78, 0x7E, 0x26,
+	0xCF, 0x50, 0x1D, 0xAE, 0x61, 0x87, 0x27, 0xDA,
+	0x9B, 0x0F, 0x55, 0x90, 0x7F, 0x69, 0x32, 0x9B,
+	0x08, 0x45, 0x1B, 0x56, 0x47, 0xCB, 0x1E, 0xA6,
+	0xAE, 0x19,
+
+	0xDB, 0xD5, 0x53, 0x6F, 0x5C, 0xD8, 0x76, 0xC0,
+	0x21, 0x5A, 0x87, 0xCC, 0xA2, 0xA6, 0xF2, 0xDC,
+	0x39, 0x2E, 0x70, 0x4D, 0xA9, 0x36, 0x1C, 0x77,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0xE3, 0x9D, 0x36, 0x44, 0x89, 0xB5, 0x89, 0x7A,
+	0xAE, 0x03, 0x74, 0x56, 0x26, 0xEF, 0xD8, 0x4B,
+	0x16, 0xFB, 0x65, 0x0D, 0x6D, 0x48, 0x0A, 0x39,
+	0xF0, 0x5F, 0x3A, 0x87, 0xA3, 0x63, 0x4E, 0x77,
+	0xF1, 0xAC, 0x05, 0x54, 0xEA, 0x32, 0xC9, 0x47,
+	0x65, 0xA6, 0x6E, 0x46, 0xB8, 0x18, 0xD1, 0xED,
+	0xC3, 0x62, 0x6E, 0x1E, 0xCF, 0x56, 0x90, 0xFC,
+	0x19, 0x65, 0xB5, 0x8C, 0x1F, 0x6C, 0x13, 0x1B,
+	0x54, 0x37, 0x59, 0xDE, 0x97, 0x48, 0x7F, 0xA0,
+	0xC9, 0x3E, 0x37, 0x76, 0x31, 0x6A, 0xB9, 0x6E,
+	0x07, 0x71, 0xD2,
+
+	0xDB, 0xD5, 0x50, 0x6F, 0x57, 0xD8, 0x76, 0xC0,
+	0xA0, 0x5D, 0x87, 0xCC, 0xA2, 0xA6, 0xF2, 0x5C,
+	0x39, 0x2E, 0x70, 0x4D, 0xA9, 0x36, 0x1C, 0x77,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0xE3, 0x0D, 0x1A, 0x44, 0x89, 0xB5, 0x89, 0x79,
+	0xBE, 0x7B, 0x94, 0x16, 0xA6, 0xEB, 0xC6, 0x4B,
+	0x16, 0xB5, 0x66, 0x0D, 0x8D, 0x68, 0x9F, 0xF9,
+	0xE0, 0x5F, 0x3A, 0xFF, 0xB3, 0x8F, 0xAF, 0x44,
+	0x4F, 0xA4, 0x23, 0x7E, 0xFA, 0xB6, 0x1D, 0x80,
+	0x92, 0x91, 0xFB, 0xDE, 0x83, 0x71, 0xD3, 0x9D,
+	0xD2, 0x33, 0xE0, 0x45, 0x72, 0xD9, 0x06, 0x82,
+	0x09, 0x96, 0x32, 0x86, 0x16, 0xC4, 0x74, 0x97,
+	0x9F, 0xF0, 0x19, 0xEA, 0x8E, 0x85, 0x8B, 0x44,
+	0x40, 0x8B, 0xB0, 0x12, 0x81, 0xDC, 0x39, 0x2C,
+	0x0B, 0x97, 0xD1, 0x0C,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0x95, 0x76, 0xC0,
+	0xA0, 0x8E, 0xB0, 0xCC, 0xA2, 0xA6, 0xF2, 0x5C,
+	0x39, 0x2E, 0x70, 0x4D, 0xA9, 0x36, 0x1C, 0x77,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0xAD, 0x0D, 0xF2, 0xC0, 0x8B, 0xB5, 0x89, 0x79,
+	0xBE, 0x8F, 0xE8, 0xD9, 0xAF, 0x2B, 0xF0, 0x94,
+	0xE3, 0x18, 0x6E, 0x16, 0x8D, 0x68, 0x6B, 0xF1,
+	0x3C, 0x57, 0x3B, 0xFF, 0xCF, 0x84, 0xDB, 0xF9,
+	0xB8, 0x67, 0x27, 0x64, 0x35, 0x6D, 0xBC, 0xF3,
+	0xE1, 0xD5, 0xD9, 0xDB, 0x15, 0x89, 0x85, 0xD8,
+	0xB9, 0x1C, 0xF3, 0xA4, 0x29, 0x73, 0x6B, 0x55,
+	0x67, 0xEE, 0xEA, 0x89, 0xFC, 0x6B, 0xA5, 0x77,
+	0x55, 0x7A, 0xEE, 0x5F, 0x23, 0x7A, 0x7C, 0x77,
+	0x88, 0xC0, 0xA3, 0x9C, 0x0E, 0x68, 0xE0, 0x95,
+	0x85, 0x17, 0xA0, 0xD0, 0x4E,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0x95, 0x26, 0xC0,
+	0xA0, 0x8E, 0xB0, 0xE4, 0xA2, 0xA6, 0xF2, 0x5C,
+	0x39, 0x2E, 0x70, 0x4D, 0xA9, 0x36, 0x1C, 0x77,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0xAD, 0x5D, 0xF2, 0xC0, 0xCB, 0xB5, 0x89, 0x79,
+	0x1E, 0x8E, 0xC8, 0x59, 0x2D, 0xA0, 0xF0, 0x94,
+	0xE9, 0x1C, 0x6F, 0x16, 0x88, 0x68, 0x6B, 0xF1,
+	0x36, 0x3C, 0xBB, 0xFF, 0xCF, 0x04, 0xD9, 0xF9,
+	0xBD, 0x22, 0x82, 0x64, 0x39, 0xFF, 0xFE, 0xAE,
+	0x68, 0x83, 0xC7, 0x53, 0x17, 0x09, 0x51, 0x43,
+	0x9D, 0xAC, 0x10, 0xEC, 0x39, 0x63, 0x7E, 0x15,
+	0xEC, 0x44, 0xA8, 0x8F, 0x56, 0x6F, 0xE5, 0x65,
+	0x14, 0x42, 0x99, 0x77, 0x24, 0x0A, 0x32, 0x8F,
+	0x88, 0x0E, 0xE9, 0xE1, 0x87, 0xC3, 0xC4, 0xFE,
+	0xEC, 0x04, 0xFB, 0xDD, 0x67, 0xDD,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0x99, 0x26, 0xF0,
+	0xA0, 0x8E, 0xB0, 0xB4, 0xBA, 0xA6, 0xF2, 0x5C,
+	0x39, 0x2E, 0x70, 0x4D, 0xA9, 0x36, 0x1C, 0x77,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0xAD, 0x5D, 0xD2, 0xC0, 0xC3, 0xF5, 0x89, 0x79,
+	0x0E, 0xEF, 0xC8, 0x7C, 0xA8, 0x3D, 0xF0, 0x94,
+	0xEE, 0x12, 0xEF, 0x35, 0xC4, 0x64, 0x6B, 0xF1,
+	0x26, 0x2A, 0xDC, 0xFF, 0xCF, 0x04, 0x5D, 0xB8,
+	0x5F, 0x04, 0xC5, 0x07, 0xBB, 0x52, 0xA8, 0x34,
+	0xF0, 0xA5, 0x96, 0x18, 0x52, 0x1B, 0x79, 0x4F,
+	0xA9, 0x1C, 0x8D, 0xE4, 0x79, 0x03, 0x0A, 0xD0,
+	0xAE, 0x84, 0x8D, 0x5D, 0x38, 0x42, 0x25, 0x9F,
+	0x54, 0x16, 0x79, 0x85, 0x48, 0x4C, 0x89, 0x27,
+	0xC2, 0x18, 0x40, 0xD0, 0xCE, 0x9E, 0x50, 0x40,
+	0x63, 0x4B, 0x35, 0xF7, 0xA8, 0x8F, 0x2D,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xA0, 0x8E, 0xB0, 0x34, 0x32, 0xAE, 0xF2, 0x5C,
+	0x39, 0x2E, 0x70, 0x4D, 0xA9, 0x36, 0x1C, 0x77,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0xAD, 0x5D, 0xD2, 0xC0, 0xC3, 0xF5, 0x89, 0x79,
+	0x0E, 0xEF, 0xE8, 0x7D, 0xA0, 0xB5, 0xD8, 0x94,
+	0xCE, 0x31, 0xED, 0x24, 0xC5, 0x60, 0x6F, 0xF1,
+	0x26, 0x08, 0xFE, 0xDF, 0xCF, 0x04, 0x5D, 0x30,
+	0xDA, 0x42, 0xC7, 0x06, 0x98, 0x53, 0x71, 0xBC,
+	0xF4, 0xAC, 0x3A, 0xAA, 0xF4, 0x09, 0x6A, 0x4D,
+	0xA9, 0x8D, 0xCD, 0xE8, 0x68, 0x33, 0x9B, 0xDC,
+	0x26, 0x8D, 0xAF, 0x7F, 0x96, 0x4E, 0x07, 0xF3,
+	0xAD, 0x49, 0xD9, 0xF1, 0xA3, 0x35, 0x5B, 0xDE,
+	0xB1, 0x52, 0x1F, 0xE1, 0xA4, 0xA9, 0xF7, 0xDD,
+	0x27, 0x19, 0xF3, 0x35, 0x7C, 0x28, 0x78, 0x5A,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0x20, 0xBF, 0xB0, 0x34, 0x32, 0xAE, 0xD2, 0x48,
+	0x39, 0x2E, 0x70, 0x4D, 0xA9, 0xD6, 0x24, 0x77,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0x21, 0x1A, 0xE2, 0xFE, 0xCF, 0x75, 0x89, 0x79,
+	0x0F, 0xEF, 0xE8, 0xFD, 0xC1, 0xB5, 0xC8, 0x12,
+	0xC8, 0xF1, 0xC5, 0xC7, 0xC0, 0xE2, 0xE2, 0x72,
+	0x26, 0x38, 0xF2, 0xDD, 0xDB, 0x22, 0xD9, 0x31,
+	0x14, 0x84, 0x85, 0x0C, 0x65, 0xAC, 0xBE, 0xE8,
+	0xE9, 0x25, 0x3B, 0xB2, 0x73, 0xAF, 0x9A, 0xA2,
+	0x2C, 0x99, 0x57, 0x63, 0x28, 0xFB, 0x4A, 0xC9,
+	0x94, 0x79, 0xB1, 0xE6, 0x8E, 0xF3, 0x0F, 0x37,
+	0x7E, 0xF7, 0xBD, 0xC4, 0x82, 0x11, 0x96, 0x7E,
+	0x9A, 0x2C, 0xF5, 0xD6, 0x47, 0xE7, 0x4F, 0x1B,
+	0x52, 0x51, 0x68, 0x00, 0xE9, 0x38, 0x11, 0xAB,
+	0xC3,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0x34, 0xBF, 0xA0, 0x34, 0x32, 0xAE, 0xD2, 0xC8,
+	0x39, 0x2E, 0x70, 0x4D, 0xA9, 0xD6, 0x2D, 0x5E,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0x21, 0x8A, 0xE0, 0xBA, 0xA5, 0x7F, 0x89, 0x79,
+	0x1F, 0xEE, 0xE8, 0xFD, 0xC1, 0xE7, 0xC8, 0x32,
+	0x6A, 0xF1, 0xC5, 0xE7, 0x64, 0xE2, 0x66, 0xE2,
+	0x26, 0x38, 0xB2, 0x95, 0xD3, 0x23, 0xD9, 0x71,
+	0xFD, 0xD4, 0x45, 0x3E, 0x32, 0x50, 0x3C, 0x77,
+	0xE1, 0x34, 0x2B, 0x3F, 0x12, 0xBE, 0x9F, 0x22,
+	0x3C, 0xF1, 0xFF, 0x42, 0x7A, 0x5F, 0xCB, 0x4C,
+	0x93, 0xCC, 0x14, 0x10, 0x2B, 0x6B, 0x84, 0x66,
+	0x1A, 0xA7, 0x69, 0xBC, 0x20, 0xCE, 0x92, 0x47,
+	0x2C, 0x06, 0xD6, 0x10, 0xF4, 0x6E, 0xC5, 0xC1,
+	0xBF, 0xB2, 0x34, 0x9E, 0x2F, 0xE0, 0xEB, 0x1D,
+	0x4D, 0x80,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xB4, 0xB3, 0xA0, 0x26, 0x32, 0xAE, 0xD2, 0xC8,
+	0x20, 0x2E, 0x70, 0x4D, 0xA9, 0xD6, 0x2D, 0x1F,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0x21, 0x8A, 0x74, 0xBB, 0x94, 0x29, 0xE2, 0xF9,
+	0x3F, 0xEE, 0xE8, 0xFD, 0xC1, 0xE7, 0xFA, 0x32,
+	0xFE, 0x94, 0xC6, 0xA7, 0x65, 0x87, 0x66, 0xE2,
+	0x28, 0x38, 0xB2, 0x95, 0x95, 0x23, 0xF9, 0x61,
+	0x76, 0x4C, 0x8B, 0x0C, 0x66, 0x1C, 0x98, 0x18,
+	0xC8, 0x00, 0x7F, 0x23, 0x92, 0xA8, 0x9F, 0x26,
+	0x0F, 0x93, 0x42, 0x0E, 0xE7, 0x26, 0x8E, 0x16,
+	0xDB, 0xA7, 0x81, 0xCE, 0xF1, 0x6E, 0xFA, 0x44,
+	0x45, 0x73, 0x44, 0xE5, 0x98, 0xC8, 0x13, 0x2B,
+	0xDA, 0xE0, 0x5D, 0x0E, 0x79, 0xF6, 0xA6, 0x95,
+	0x28, 0xEA, 0x2F, 0x9D, 0x7E, 0x0D, 0x5D, 0xF1,
+	0x72, 0x86, 0xA8,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xB4, 0xB3, 0xA0, 0x26, 0x33, 0xAE, 0xD2, 0xC8,
+	0xA1, 0x27, 0x70, 0x4D, 0xA9, 0xD6, 0x2D, 0x9F,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0xA1, 0x8A, 0x74, 0x23, 0x94, 0x49, 0x90, 0xB4,
+	0x3F, 0xCE, 0xE9, 0xFD, 0xC1, 0xE7, 0xFA, 0x31,
+	0xCE, 0x0C, 0x66, 0xA6, 0x65, 0x86, 0x40, 0xE2,
+	0x6A, 0xB8, 0xB2, 0x95, 0x85, 0x61, 0xF9, 0x51,
+	0x98, 0xC2, 0x02, 0xA9, 0x25, 0x11, 0xC2, 0x9E,
+	0xEC, 0x20, 0x3B, 0x38, 0xFD, 0x7E, 0xAD, 0x02,
+	0x6A, 0x9D, 0xF2, 0x2D, 0xBB, 0x54, 0xD4, 0x30,
+	0xF9, 0x31, 0x05, 0xCB, 0x5D, 0x70, 0x6B, 0x20,
+	0x7B, 0xCE, 0x25, 0xC6, 0x9E, 0x38, 0xF4, 0x5D,
+	0x3D, 0x6F, 0x43, 0x6B, 0x3F, 0x1C, 0xF2, 0x92,
+	0xCB, 0xAE, 0x73, 0x4B, 0xC1, 0x35, 0x74, 0xAA,
+	0xC9, 0x60, 0xFF, 0x1F,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xB4, 0xB3, 0x80, 0x3A, 0x33, 0xCE, 0xD2, 0xC8,
+	0xA1, 0xD7, 0x49, 0x4D, 0xA9, 0xD6, 0x2D, 0x9F,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0x05, 0x0B, 0x74, 0x23, 0x08, 0x4A, 0xE0, 0xC2,
+	0x2C, 0xCE, 0xD1, 0x36, 0xC0, 0xE7, 0xFA, 0xB1,
+	0xCE, 0x28, 0xFB, 0x29, 0x62, 0x06, 0x41, 0x01,
+	0x46, 0xCA, 0xDE, 0x91, 0x85, 0x61, 0xF9, 0x9D,
+	0xA3, 0x97, 0xD4, 0x3C, 0x71, 0xAB, 0x0A, 0x20,
+	0xC3, 0xB4, 0x7E, 0x19, 0xC5, 0x7B, 0x5E, 0x92,
+	0xDC, 0xE7, 0xFC, 0x75, 0xD3, 0xA6, 0xC8, 0x84,
+	0x88, 0x86, 0xDE, 0x48, 0x7E, 0x09, 0x13, 0x90,
+	0x78, 0xB0, 0x0F, 0x77, 0xB5, 0xEA, 0xE7, 0x85,
+	0x04, 0xAD, 0x07, 0x02, 0xFC, 0x2E, 0x53, 0xA4,
+	0xBF, 0x71, 0xAD, 0x65, 0xFA, 0x3C, 0x73, 0xB4,
+	0x85, 0x0A, 0x9F, 0xDF, 0xB6,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xB4, 0xB3, 0x80, 0x3A, 0x36, 0xCE, 0xC6, 0xC8,
+	0xA1, 0xD7, 0x6B, 0x67, 0xA9, 0xD6, 0x2D, 0x9F,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0x8F, 0x65, 0x74, 0x23, 0x08, 0xEA, 0xF2, 0xC3,
+	0x2C, 0x9E, 0xD1, 0x36, 0xC5, 0xE7, 0xFA, 0xB1,
+	0x46, 0x28, 0x5B, 0x89, 0x60, 0x07, 0x41, 0x0B,
+	0x4E, 0xCB, 0xDA, 0x80, 0x95, 0x61, 0x79, 0x98,
+	0x73, 0x36, 0x44, 0x1E, 0xFB, 0x2D, 0x78, 0x66,
+	0xC2, 0xF1, 0xFB, 0x50, 0x90, 0x59, 0x60, 0xA3,
+	0xCE, 0xE1, 0xCB, 0xF7, 0x91, 0x66, 0xEC, 0x85,
+	0xDE, 0x62, 0x55, 0x51, 0x7E, 0x2F, 0x13, 0xC6,
+	0x5B, 0x53, 0xD9, 0x76, 0xF9, 0x22, 0x35, 0x97,
+	0x75, 0xF6, 0x6A, 0xB6, 0x5B, 0xCC, 0x15, 0x9D,
+	0x9A, 0xF3, 0x59, 0x76, 0x23, 0xAE, 0x24, 0x08,
+	0xC0, 0xA7, 0xC0, 0xC8, 0xB7, 0x25,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xB4, 0xB3, 0x80, 0x3A, 0x16, 0xC6, 0xC6, 0xFC,
+	0xA1, 0xD7, 0x6B, 0x2D, 0xB3, 0xD6, 0x2D, 0x9F,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0x3E, 0xF3, 0x78, 0xA7, 0x09, 0xEA, 0x56, 0xC2,
+	0x2C, 0x1E, 0xD5, 0x36, 0x8D, 0xA4, 0xFA, 0xB1,
+	0x54, 0x41, 0x5A, 0x68, 0xC4, 0x66, 0x40, 0x0B,
+	0xC9, 0xCF, 0x92, 0x87, 0xC9, 0x68, 0x79, 0x18,
+	0x3B, 0xFE, 0xFD, 0xDE, 0xBD, 0x76, 0xDA, 0xD4,
+	0x40, 0x99, 0xFB, 0x3A, 0xD0, 0x6A, 0x0C, 0x46,
+	0x5B, 0x6F, 0x6A, 0x77, 0x5A, 0x62, 0xE7, 0xDC,
+	0xD2, 0xE0, 0x83, 0x28, 0x35, 0x7F, 0x0F, 0x6A,
+	0x31, 0xA6, 0x0C, 0xCC, 0x0B, 0x26, 0x6D, 0xFE,
+	0xB4, 0x38, 0x66, 0x55, 0xE1, 0x57, 0xBB, 0x13,
+	0xB2, 0x34, 0xD1, 0x53, 0x78, 0x57, 0xF3, 0xE7,
+	0xD4, 0xEE, 0xAD, 0x56, 0x65, 0xDA, 0x03,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0xA1, 0xD7, 0x6B, 0xAD, 0x31, 0xDC, 0x2D, 0x9F,
+	0x31, 0x86, 0x60, 0x0F, 0x63, 0x3D, 0xFC, 0x13,
+	0x3A, 0x53, 0xCA, 0x89, 0x29, 0xEA, 0x56, 0x6A,
+	0x2C, 0x1E, 0xD5, 0x23, 0x8D, 0xA4, 0xFE, 0xB1,
+	0x54, 0x49, 0x60, 0x69, 0xCE, 0xCE, 0x78, 0x01,
+	0x29, 0x6D, 0x90, 0xD7, 0xDC, 0x69, 0x79, 0x18,
+	0xB5, 0x6B, 0xBD, 0xDD, 0x0C, 0xF9, 0xB9, 0x96,
+	0x8B, 0x98, 0xE8, 0x82, 0x9F, 0xBB, 0x4C, 0x6E,
+	0xD5, 0x25, 0x9B, 0xFF, 0xFC, 0xEB, 0xE5, 0x83,
+	0xD2, 0x74, 0x87, 0x07, 0x7C, 0x3B, 0xCB, 0x74,
+	0xC9, 0x22, 0xF4, 0xFE, 0x10, 0x1D, 0xEB, 0xBE,
+	0xA3, 0x59, 0x7C, 0x50, 0x73, 0xF2, 0xBB, 0xBB,
+	0x52, 0xED, 0x9C, 0x51, 0x94, 0x6F, 0xFB, 0xA4,
+	0xB8, 0xF8, 0x4F, 0x19, 0x44, 0x32, 0x9A, 0xC7,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x21, 0xE2, 0x6B, 0xAD, 0x31, 0xDC, 0x6D, 0x9B,
+	0x31, 0x86, 0x60, 0x0F, 0xE3, 0xE5, 0xC6, 0x13,
+	0x3A, 0xC3, 0x46, 0x01, 0x7A, 0xED, 0x8E, 0x7B,
+	0x80, 0x1D, 0x27, 0x95, 0xEA, 0xAC, 0xFE, 0xB1,
+	0x54, 0x49, 0x60, 0xE9, 0x8A, 0xCE, 0x78, 0x85,
+	0xA9, 0xED, 0xB0, 0x3C, 0xD8, 0x2A, 0xD5, 0x63,
+	0x0F, 0x8A, 0x92, 0x87, 0x93, 0x73, 0x1E, 0x47,
+	0x46, 0xC5, 0x36, 0x15, 0xDE, 0xAD, 0x2F, 0x9D,
+	0x61, 0x94, 0xCA, 0xFA, 0xDD, 0x26, 0x01, 0x8B,
+	0xB9, 0x7B, 0xBE, 0xF8, 0xAC, 0x97, 0xF0, 0xF2,
+	0x1B, 0x9D, 0x66, 0xB9, 0xCD, 0x46, 0xC8, 0x9B,
+	0x77, 0xAA, 0xFC, 0xE3, 0x8E, 0xFE, 0xA4, 0xAD,
+	0xD9, 0x35, 0xB8, 0x34, 0x61, 0x78, 0x5C, 0x19,
+	0x1F, 0xE3, 0xF1, 0x7F, 0xD2, 0x65, 0x3B, 0xEE,
+	0x55,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x21, 0xE2, 0x29, 0xAD, 0x31, 0xDC, 0x6D, 0x9B,
+	0x31, 0x86, 0x60, 0x0F, 0xE3, 0xE5, 0xED, 0x38,
+	0x3B, 0xC3, 0xC6, 0x41, 0x50, 0xE9, 0x89, 0xFF,
+	0x80, 0xAD, 0x65, 0x58, 0x20, 0xB6, 0xDE, 0xB1,
+	0x41, 0x49, 0x60, 0xE9, 0x8A, 0xCC, 0x78, 0x85,
+	0xCB, 0xE8, 0xB0, 0x15, 0x50, 0x2A, 0x65, 0xD3,
+	0x8F, 0x83, 0x93, 0x92, 0xF2, 0x7E, 0xAA, 0xDC,
+	0x50, 0x1B, 0x47, 0x32, 0x67, 0x8D, 0x37, 0x6F,
+	0x9B, 0xE5, 0xFF, 0xBF, 0xB6, 0x43, 0xA3, 0x0B,
+	0xCD, 0xC8, 0x9D, 0xAB, 0x04, 0x50, 0xAC, 0x93,
+	0xBD, 0xC2, 0x47, 0x48, 0xAB, 0x2A, 0xC2, 0x14,
+	0xDC, 0x47, 0x0D, 0xD2, 0xD9, 0x75, 0xAF, 0x8B,
+	0x27, 0x20, 0x89, 0x93, 0xE0, 0x77, 0x0B, 0x6E,
+	0xDC, 0x67, 0x43, 0xE1, 0x19, 0xF8, 0xC1, 0x72,
+	0x9C, 0xDB,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x81, 0xEF, 0x29, 0xBF, 0x31, 0xDC, 0x6D, 0x9B,
+	0x2A, 0x86, 0x60, 0x0F, 0xE3, 0xE5, 0xED, 0x69,
+	0x22, 0xC6, 0xC6, 0xD9, 0xC4, 0x9F, 0x49, 0xFF,
+	0x81, 0xAD, 0xD1, 0x59, 0xD1, 0x68, 0x9A, 0xB5,
+	0x01, 0x50, 0x60, 0xE9, 0x8A, 0xCC, 0x5C, 0x85,
+	0x7F, 0x55, 0xB5, 0x15, 0x4B, 0x07, 0x65, 0xF7,
+	0x6B, 0x83, 0x01, 0x8E, 0x80, 0xE6, 0x50, 0x89,
+	0x67, 0x82, 0x3E, 0x4E, 0x6E, 0x08, 0x11, 0x68,
+	0x33, 0xC1, 0x10, 0x00, 0x18, 0xC9, 0xEC, 0xF3,
+	0x9C, 0x14, 0xAE, 0x52, 0x05, 0xAD, 0xBD, 0xD1,
+	0x5A, 0x9B, 0xEA, 0x57, 0x9B, 0x75, 0xC9, 0x10,
+	0x88, 0x13, 0x64, 0x65, 0xB9, 0xD5, 0x53, 0x14,
+	0xEA, 0xAE, 0x0A, 0x1E, 0x65, 0x4E, 0x2F, 0x4E,
+	0x19, 0x60, 0x31, 0x64, 0x8A, 0x9E, 0x48, 0x99,
+	0x5A, 0xE1, 0x20,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x81, 0x6F, 0x29, 0xBF, 0x30, 0xDC, 0x6D, 0x9B,
+	0xA0, 0x8D, 0x60, 0x0F, 0xE3, 0xE5, 0xED, 0xE9,
+	0x37, 0x43, 0xC6, 0xD9, 0xE4, 0x9D, 0x49, 0x9E,
+	0x81, 0xAD, 0xD1, 0xE1, 0xC9, 0x8E, 0x78, 0x9C,
+	0x01, 0x60, 0x60, 0xE9, 0x8A, 0xCC, 0x5C, 0x82,
+	0x7B, 0xED, 0x85, 0x15, 0x4B, 0x07, 0x4B, 0xF7,
+	0x83, 0x94, 0x80, 0x09, 0xF6, 0xF0, 0x44, 0x69,
+	0x9B, 0xAB, 0x05, 0xB4, 0x88, 0x21, 0xEA, 0xF7,
+	0x26, 0x52, 0x8C, 0x0A, 0xDD, 0x1A, 0x9E, 0x96,
+	0x57, 0x8A, 0x18, 0x98, 0x5D, 0xDD, 0xAF, 0x21,
+	0x2B, 0x5D, 0x6B, 0xC3, 0x5C, 0x6E, 0x6B, 0x93,
+	0x07, 0x09, 0x3A, 0x10, 0xFE, 0x6D, 0xDD, 0x93,
+	0x68, 0x72, 0x0A, 0x1A, 0xE4, 0xFE, 0xE7, 0x6D,
+	0x90, 0x8A, 0x46, 0x2C, 0x2C, 0xEF, 0x90, 0xC5,
+	0xBE, 0x51, 0xFC, 0xBF,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x81, 0x6F, 0x49, 0xAE, 0xB0, 0xCA, 0x6D, 0x9B,
+	0xE0, 0x7D, 0x5B, 0x0F, 0xE3, 0xE5, 0xED, 0xE9,
+	0x04, 0xC6, 0x02, 0xD8, 0xE4, 0x2D, 0xCB, 0xB0,
+	0xA7, 0xAD, 0xD3, 0xE1, 0x75, 0x8D, 0xA1, 0x62,
+	0x13, 0x60, 0x10, 0x7B, 0x8A, 0xCC, 0x5C, 0x02,
+	0x7B, 0xC1, 0x38, 0x52, 0x74, 0x47, 0x73, 0x58,
+	0x51, 0x42, 0xC9, 0x09, 0xC0, 0x73, 0x6C, 0xBA,
+	0x97, 0xC4, 0x0B, 0x55, 0xFC, 0xEC, 0x48, 0xD3,
+	0xFE, 0x08, 0x3D, 0xDC, 0x31, 0xED, 0xA0, 0xBE,
+	0x46, 0xD8, 0x79, 0xFF, 0xCF, 0x53, 0x8D, 0xDC,
+	0x6E, 0x3F, 0xC6, 0xCA, 0xA0, 0x30, 0x6C, 0x36,
+	0xB4, 0x69, 0x42, 0xD1, 0x7A, 0xD5, 0x4D, 0x21,
+	0xBD, 0x54, 0x11, 0xA1, 0xC6, 0xAE, 0xB7, 0xF1,
+	0xFF, 0x97, 0x71, 0x25, 0x97, 0x97, 0xFF, 0x0A,
+	0xE8, 0x9C, 0x44, 0x96, 0x37,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x81, 0x6F, 0x49, 0xAE, 0xB0, 0xCA, 0x2D, 0x9B,
+	0xE0, 0x7D, 0x5F, 0x23, 0xE3, 0xE5, 0xED, 0xE9,
+	0x04, 0xC6, 0x17, 0xDC, 0xE6, 0x2D, 0x4B, 0xB9,
+	0xAC, 0xD6, 0xD3, 0xE3, 0x75, 0x4D, 0xA3, 0x63,
+	0x13, 0x78, 0x10, 0x7B, 0x8E, 0xCD, 0x5C, 0x02,
+	0xEB, 0xC1, 0xE8, 0x92, 0xB6, 0x46, 0x73, 0x5C,
+	0x40, 0x6A, 0x50, 0x58, 0x90, 0x4F, 0x4C, 0xBE,
+	0xF7, 0xE7, 0x81, 0xD1, 0x6F, 0x7C, 0xC2, 0x97,
+	0xFB, 0xAD, 0xBC, 0x1D, 0x45, 0xDD, 0xFC, 0xB9,
+	0x16, 0x49, 0x6C, 0x49, 0x8C, 0x93, 0xB7, 0x7E,
+	0xAD, 0x68, 0x31, 0x7D, 0x2C, 0x9C, 0x97, 0x92,
+	0xCD, 0x8A, 0x47, 0x1B, 0x16, 0x3A, 0x39, 0x0C,
+	0x5D, 0xF4, 0x1E, 0x94, 0x11, 0x4F, 0x68, 0x6C,
+	0x97, 0xB3, 0xEB, 0x57, 0x6D, 0x0E, 0xB9, 0xD3,
+	0xB7, 0x6A, 0xD4, 0xA4, 0x8A, 0x3A,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x81, 0x6F, 0x49, 0xAE, 0x90, 0xC4, 0x2D, 0xBB,
+	0xE0, 0x7D, 0x1F, 0x7F, 0xFF, 0xE5, 0xED, 0xE9,
+	0x07, 0xC7, 0x96, 0xDD, 0x86, 0x2F, 0x4B, 0xA9,
+	0xBD, 0xC1, 0xD6, 0xA7, 0x74, 0x4D, 0x67, 0xE0,
+	0x13, 0xF8, 0x20, 0x7B, 0x06, 0xEC, 0x5C, 0x02,
+	0xEB, 0x30, 0xE8, 0x23, 0x72, 0x07, 0x73, 0x1C,
+	0x2A, 0x52, 0x6B, 0x58, 0xC0, 0x0D, 0x70, 0xB6,
+	0x67, 0x9F, 0xF2, 0xEB, 0x5C, 0xE6, 0x31, 0x91,
+	0x20, 0x6C, 0xBF, 0x0D, 0x6C, 0x7E, 0xB9, 0x27,
+	0x4A, 0xEF, 0x6F, 0x4F, 0x7F, 0x2D, 0x06, 0x3C,
+	0xD1, 0x09, 0x0E, 0xC9, 0xCB, 0x47, 0xE0, 0xE2,
+	0x08, 0x1C, 0xEC, 0x76, 0xE0, 0x51, 0x17, 0x11,
+	0xAD, 0xC5, 0x78, 0xB9, 0xB3, 0x28, 0xB7, 0x98,
+	0x95, 0xE6, 0x04, 0x4C, 0x8C, 0xE1, 0x65, 0xFF,
+	0x7C, 0x4D, 0x73, 0x6F, 0x8C, 0x85, 0x18,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0xD9, 0x26, 0xF0,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x89, 0x6F, 0x49, 0xAE, 0x90, 0xC4, 0x2D, 0xBB,
+	0xE0, 0x7D, 0x1F, 0x7F, 0x7F, 0xE9, 0xED, 0xE9,
+	0x17, 0xE6, 0x97, 0x4D, 0xC7, 0x6F, 0x4D, 0xA9,
+	0xFD, 0xE1, 0xF5, 0xD5, 0x74, 0x4D, 0x67, 0x28,
+	0x13, 0xF8, 0x20, 0x6A, 0x06, 0x7C, 0x78, 0x02,
+	0xEB, 0x38, 0x5A, 0x23, 0x60, 0xCF, 0x5B, 0xDD,
+	0x39, 0xEB, 0x7D, 0xE9, 0xB9, 0x0B, 0xFC, 0x3A,
+	0xA6, 0x4F, 0xF5, 0xD8, 0x45, 0x95, 0x95, 0xC4,
+	0xC9, 0x3C, 0x3C, 0x88, 0x45, 0x6E, 0xB9, 0x6D,
+	0x02, 0xA2, 0xC1, 0x9D, 0x3A, 0x14, 0x85, 0xFB,
+	0xEC, 0x9B, 0x30, 0xD1, 0x77, 0xE4, 0x98, 0x44,
+	0xE2, 0x51, 0xE1, 0xB5, 0x4F, 0x27, 0xD9, 0x4C,
+	0x4E, 0x03, 0x38, 0x9C, 0x2C, 0x39, 0x8B, 0xB7,
+	0x99, 0xA1, 0xC8, 0x9B, 0xAB, 0xD3, 0xAC, 0x0D,
+	0xFD, 0xD1, 0xEE, 0xB6, 0x71, 0xAA, 0x39, 0xFC,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0x3D, 0x1A, 0xF0,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x89, 0x6F, 0x49, 0xAE, 0x90, 0xC4, 0x2D, 0xBB,
+	0x60, 0x0D, 0x1F, 0x7F, 0x7F, 0xE9, 0xCD, 0xE5,
+	0x5B, 0x26, 0x87, 0x2E, 0xC6, 0x85, 0x81, 0x22,
+	0xFD, 0x61, 0xD4, 0xD0, 0xFC, 0x4A, 0xB3, 0x29,
+	0xDF, 0x7B, 0x71, 0x55, 0x7C, 0x70, 0x78, 0x02,
+	0xEB, 0x38, 0x5A, 0xA3, 0x68, 0xCF, 0x53, 0x1F,
+	0x78, 0x49, 0x70, 0x7E, 0xEF, 0x60, 0x0C, 0x21,
+	0x0A, 0xF3, 0x74, 0x75, 0x6B, 0x56, 0xF5, 0x95,
+	0xBE, 0x55, 0xDA, 0xD3, 0xAB, 0xA1, 0xA7, 0x39,
+	0x20, 0xB0, 0xD4, 0x61, 0xF2, 0x7E, 0x2F, 0x9C,
+	0x66, 0x12, 0xA1, 0x85, 0x5E, 0x26, 0xBE, 0xD1,
+	0x45, 0x89, 0xE3, 0xAA, 0x4F, 0x6B, 0x6A, 0x74,
+	0x19, 0x3C, 0x25, 0xDB, 0x5F, 0x54, 0xCA, 0x95,
+	0xC3, 0x89, 0x1F, 0x20, 0x9B, 0xA4, 0x96, 0x24,
+	0xA7, 0x12, 0x30, 0xC0, 0x03, 0x36, 0xD4, 0x6B,
+	0x20,
+
+	0xDB, 0xD5, 0x70, 0x65, 0x57, 0x3D, 0x3B, 0xDD,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x89, 0x6F, 0x49, 0xAE, 0x90, 0xC4, 0x2D, 0xBB,
+	0x74, 0x0D, 0x5D, 0x7F, 0x7F, 0xE9, 0xCD, 0xE5,
+	0x69, 0x6A, 0x87, 0x26, 0x52, 0x84, 0x21, 0xF2,
+	0xFA, 0x61, 0x54, 0x93, 0xD6, 0x6A, 0xEE, 0xAD,
+	0xDF, 0xAB, 0x33, 0x14, 0x17, 0xC3, 0x79, 0x02,
+	0xEB, 0x39, 0x5A, 0xA3, 0x68, 0xDD, 0x53, 0x3F,
+	0xE8, 0x14, 0x90, 0x78, 0x4B, 0xC3, 0x15, 0xEC,
+	0x87, 0x8C, 0xDA, 0x0A, 0xE3, 0x72, 0x58, 0x9E,
+	0xCF, 0x29, 0xBE, 0xF7, 0x6B, 0x05, 0xA7, 0xA2,
+	0x57, 0xA0, 0x7D, 0x7C, 0x50, 0x41, 0xD3, 0x28,
+	0xBF, 0x5D, 0x50, 0xC9, 0x2F, 0x58, 0x5A, 0x21,
+	0x59, 0xBD, 0x5D, 0x59, 0x4A, 0x37, 0x6E, 0xD3,
+	0x3B, 0x31, 0x97, 0xE2, 0xFA, 0x59, 0x2A, 0xB1,
+	0xDC, 0x3E, 0xB5, 0xF0, 0x18, 0x18, 0x81, 0x6A,
+	0x78, 0x8B, 0x89, 0x6F, 0x9D, 0x39, 0x57, 0x35,
+	0xBB, 0xEE,
+
+	0xC6, 0xD5, 0x70, 0x65, 0x57, 0x3D, 0x7B, 0x90,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x89, 0x6F, 0x49, 0xAE, 0x90, 0xC4, 0x2D, 0xBB,
+	0xD4, 0x0D, 0x5D, 0x7F, 0x7F, 0xE9, 0xCD, 0xE5,
+	0xBD, 0x7B, 0x84, 0x26, 0x57, 0xF8, 0x21, 0xF2,
+	0x78, 0x63, 0x54, 0xD3, 0x87, 0x68, 0xC7, 0xAD,
+	0xDF, 0xAB, 0xE7, 0x35, 0x06, 0x94, 0x6E, 0x46,
+	0x4B, 0xB2, 0x5A, 0xA3, 0x68, 0x5D, 0x63, 0x3F,
+	0x0D, 0x49, 0x8D, 0xA8, 0x06, 0x3A, 0x48, 0x80,
+	0x0C, 0xE4, 0x2D, 0x8B, 0xEA, 0x5F, 0xC6, 0xD1,
+	0x0B, 0xD1, 0x18, 0xE8, 0x2D, 0xED, 0xC6, 0xBD,
+	0x8E, 0x30, 0x3B, 0xA8, 0xD6, 0x68, 0x71, 0x8D,
+	0xBB, 0xB0, 0xFC, 0xDE, 0x9F, 0x94, 0xE8, 0xD0,
+	0x79, 0x69, 0xCD, 0x4F, 0x17, 0x72, 0x52, 0x09,
+	0x68, 0x19, 0x0B, 0xA1, 0xC5, 0x8B, 0xE9, 0x66,
+	0xB9, 0xB8, 0x8B, 0x05, 0x82, 0xE1, 0x6D, 0xF7,
+	0x1C, 0x0C, 0xF1, 0x83, 0x66, 0x0E, 0xC1, 0xCD,
+	0x1E, 0xEE, 0xEB,
+
+	0x4B, 0xD8, 0x70, 0x65, 0x57, 0x3D, 0x7B, 0x10,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x89, 0x6F, 0x49, 0xAE, 0x90, 0xC4, 0x2D, 0xBB,
+	0xD4, 0x4D, 0x5F, 0x7F, 0x7D, 0xE9, 0xCD, 0xE5,
+	0xAF, 0xA3, 0xA4, 0xAD, 0x57, 0xF4, 0x17, 0xF3,
+	0xF9, 0x81, 0x56, 0xD3, 0x67, 0x68, 0xC5, 0xAC,
+	0xDF, 0xAB, 0xE7, 0xED, 0x4A, 0xF0, 0x1D, 0x23,
+	0x4B, 0xB2, 0x36, 0xA3, 0x68, 0x5D, 0x63, 0x2F,
+	0x69, 0x52, 0xDF, 0xF3, 0x0E, 0x2F, 0xC8, 0x20,
+	0x38, 0x87, 0xA9, 0x1D, 0xC4, 0xEF, 0xC5, 0xAB,
+	0xE6, 0x26, 0xA6, 0x28, 0xD7, 0xCD, 0xFF, 0x66,
+	0xE2, 0x00, 0x02, 0xE7, 0x24, 0xD6, 0xD8, 0xB2,
+	0x63, 0x40, 0xE4, 0xE0, 0x35, 0x5B, 0x5D, 0xF8,
+	0x43, 0x44, 0x1C, 0x2B, 0x12, 0xC6, 0xE1, 0xF7,
+	0xD3, 0x9E, 0x27, 0xB3, 0x8E, 0x40, 0x42, 0x6A,
+	0x88, 0x1B, 0x0E, 0xF6, 0xA2, 0xCA, 0x9B, 0xA6,
+	0x2F, 0x6F, 0xE8, 0x79, 0xA2, 0x18, 0xAB, 0xFC,
+	0xCC, 0x03, 0x36, 0x26,
+
+	0x8B, 0x39, 0x4D, 0x65, 0x57, 0x3D, 0x7B, 0x10,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x89, 0x6F, 0x49, 0xAE, 0x90, 0xC4, 0x2D, 0xBB,
+	0xD4, 0x4D, 0x1F, 0x7F, 0x7D, 0xE2, 0xCD, 0xE5,
+	0xAF, 0x76, 0x79, 0xB6, 0x53, 0xF4, 0x3B, 0x2C,
+	0xF1, 0x07, 0xB6, 0xCB, 0x67, 0x70, 0x9E, 0x28,
+	0x56, 0xA6, 0xE6, 0xED, 0x96, 0xB3, 0x7C, 0x5C,
+	0x29, 0xB2, 0x26, 0x41, 0x68, 0x5D, 0x63, 0xAF,
+	0x8E, 0x2A, 0xEB, 0xAB, 0x46, 0xB7, 0xC7, 0x87,
+	0xC7, 0x9B, 0x8F, 0xFF, 0xC6, 0xDD, 0xD0, 0x1C,
+	0xD2, 0x47, 0x2D, 0xD1, 0x3D, 0xC8, 0xE6, 0xED,
+	0x50, 0xC8, 0x2C, 0xED, 0x6B, 0x1C, 0x58, 0x61,
+	0xAE, 0x41, 0x13, 0xB3, 0x51, 0x2A, 0x83, 0xCA,
+	0x53, 0x48, 0x41, 0x06, 0x16, 0x97, 0x1F, 0xE2,
+	0x75, 0xA9, 0x69, 0x69, 0xFE, 0xA3, 0x54, 0x53,
+	0xEF, 0x1F, 0x74, 0x03, 0x87, 0xFC, 0x0B, 0xB1,
+	0x10, 0x2B, 0x07, 0x8E, 0x3E, 0xB1, 0x39, 0xC6,
+	0x80, 0x1A, 0x63, 0xF0, 0x88,
+
+	0x8B, 0x39, 0x67, 0x4B, 0x57, 0x3D, 0x7B, 0x10,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x89, 0x6F, 0x49, 0xAE, 0x90, 0xC4, 0x2D, 0xBB,
+	0xD4, 0x4D, 0x1F, 0x7F, 0x7B, 0xE2, 0xC5, 0xE5,
+	0x17, 0x73, 0xA9, 0x56, 0x51, 0xFF, 0x3B, 0x00,
+	0xAB, 0xC3, 0xB3, 0xCF, 0x62, 0x70, 0x5E, 0xA2,
+	0xDD, 0xA9, 0xC6, 0xED, 0x96, 0x53, 0x5E, 0x74,
+	0x29, 0xEA, 0x26, 0x01, 0xE9, 0x5D, 0x63, 0xAF,
+	0xBE, 0x2D, 0x74, 0x1A, 0x59, 0xC1, 0xB7, 0x01,
+	0x48, 0x2C, 0xC6, 0xF8, 0xC7, 0xCA, 0x82, 0xAC,
+	0x47, 0xF5, 0xC9, 0x1B, 0x91, 0xE6, 0x0F, 0x88,
+	0xD4, 0x50, 0x81, 0xDC, 0xB3, 0x9D, 0x7C, 0x08,
+	0x61, 0xD6, 0x4E, 0xB3, 0xD3, 0x84, 0x90, 0x9C,
+	0xEE, 0xE5, 0xC1, 0xC2, 0x56, 0x66, 0x98, 0x16,
+	0xBD, 0x83, 0x1B, 0x2C, 0x17, 0x51, 0x77, 0x6A,
+	0x32, 0x87, 0x46, 0xF8, 0x70, 0x38, 0xE1, 0x2B,
+	0x00, 0x57, 0x39, 0x8E, 0x9E, 0xD6, 0x9B, 0x8B,
+	0x00, 0x4A, 0x40, 0x99, 0xAA, 0x1C,
+
+	0x8B, 0x39, 0x67, 0x19, 0x49, 0x3D, 0x7B, 0x10,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x89, 0x6F, 0x49, 0xAE, 0x90, 0xC4, 0x2D, 0xBB,
+	0xD4, 0x4D, 0x1F, 0x7F, 0x7B, 0xED, 0x45, 0xE9,
+	0x0B, 0x42, 0xA8, 0x4E, 0xB5, 0x0A, 0x79, 0x40,
+	0xBC, 0xEF, 0xFB, 0xCD, 0xA2, 0x78, 0x5E, 0x2A,
+	0x4D, 0x7E, 0xA0, 0x8D, 0x97, 0x53, 0xBA, 0xF5,
+	0x29, 0x6A, 0x1A, 0x01, 0x61, 0x4F, 0x62, 0xAF,
+	0xE0, 0x11, 0x25, 0x5C, 0xA7, 0x55, 0x87, 0xF1,
+	0xF5, 0xAB, 0xF2, 0xD2, 0x41, 0xA1, 0x4D, 0x59,
+	0xE3, 0x55, 0xB2, 0xBC, 0xEE, 0x78, 0x4A, 0x4D,
+	0x8D, 0x65, 0x92, 0x36, 0x11, 0x0B, 0xE0, 0x09,
+	0xAC, 0x1C, 0x27, 0x2F, 0xC2, 0x04, 0x90, 0x2B,
+	0xA9, 0x47, 0xD1, 0x75, 0x06, 0x6A, 0x9F, 0x6D,
+	0x54, 0xE3, 0x91, 0x48, 0x5F, 0x69, 0x86, 0x6E,
+	0x5F, 0x50, 0x56, 0x28, 0xAF, 0x3B, 0x43, 0x69,
+	0xCD, 0x09, 0x72, 0x5E, 0x44, 0xE9, 0x56, 0x05,
+	0xD2, 0xB5, 0x59, 0xBF, 0x3A, 0xAD, 0x1A,
+
+	0x8B, 0x39, 0x67, 0x99, 0xC3, 0x33, 0x7B, 0x10,
+	0xA0, 0xB3, 0x80, 0x3A, 0x16, 0x86, 0xC3, 0xFC,
+	0x89, 0x6F, 0x49, 0xAE, 0x90, 0xC4, 0x2D, 0xBB,
+	0xC8, 0x4D, 0x1F, 0x7F, 0x7B, 0xED, 0x45, 0xE9,
+	0x0B, 0x4C, 0xC2, 0x4F, 0x57, 0xE2, 0xB1, 0x41,
+	0x2C, 0x6C, 0xBC, 0x9D, 0xB3, 0x18, 0x5C, 0x2A,
+	0x6D, 0xD4, 0x93, 0xFF, 0xB7, 0x53, 0xBA, 0x1D,
+	0x29, 0x6A, 0x1A, 0x11, 0x61, 0x5F, 0xD3, 0xAF,
+	0xFD, 0x11, 0xBF, 0x48, 0xB5, 0x6C, 0x8C, 0x9C,
+	0x63, 0xB1, 0x7B, 0x00, 0xD7, 0x89, 0x88, 0x06,
+	0x37, 0x1B, 0xCD, 0xC2, 0xD6, 0xDD, 0x06, 0x48,
+	0xE9, 0x46, 0x5A, 0xAB, 0x28, 0x22, 0x79, 0x7F,
+	0x08, 0x01, 0x23, 0x36, 0xC0, 0xB3, 0x6C, 0x59,
+	0xB3, 0xA1, 0x1F, 0xA6, 0x7F, 0x00, 0x75, 0xA4,
+	0xC8, 0x82, 0x32, 0xCA, 0x80, 0xF7, 0x5E, 0x76,
+	0xD4, 0xAB, 0xC4, 0x8B, 0xD5, 0xC0, 0xEF, 0x8F,
+	0x2D, 0x2F, 0xED, 0xC7, 0x70, 0x0E, 0x82, 0xAD,
+	0xD2, 0x8E, 0x2A, 0x9D, 0x5E, 0x3B, 0xB2, 0x1B,
+
+	0xB0, 0x3C, 0x60, 0x0F, 0x5B, 0x27, 0xC2, 0x0A,
+	0x8B, 0xDD, 0x33, 0x2C, 0x21, 0x7C, 0x8E, 0x4A,
+	0x6A, 0xA3, 0x47, 0x11, 0xA7, 0xFA, 0xCF, 0xA8,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x74, 0xCC, 0x9D, 0x1D, 0x48, 0x64, 0xB9, 0x50,
+	0x9E, 0xB5, 0x7A, 0x77, 0x10, 0x12, 0xAA, 0x41,
+	0xDC, 0x00, 0x33, 0x48, 0x5D, 0xB0, 0xCA, 0xCB,
+	0x8A, 0x80, 0x98, 0xD6, 0xAC, 0x33, 0x55, 0x43,
+	0x6B, 0x54, 0x58, 0xA7, 0x3E, 0x0C, 0x87, 0x53,
+	0x2E, 0xC5, 0x50, 0x55, 0xDC, 0x87, 0x84, 0x74,
+	0x86, 0xD7, 0x92, 0xCA, 0x4E, 0x14, 0xE7, 0x6D,
+	0xC2, 0x98, 0xFA, 0x47, 0x5C, 0x91, 0xA6, 0xBF,
+	0x56, 0x99, 0x5D, 0x4C, 0x10, 0x90, 0x6D, 0xDD,
+	0x97, 0xBA, 0x32, 0xA1, 0x2E, 0x71, 0xDE, 0xD7,
+	0x8E, 0x0A, 0x89, 0x0B, 0xFF, 0x21, 0x67, 0x23,
+	0xD2, 0xCD, 0xB7, 0xDD, 0x4E, 0x71, 0xE3, 0xAD,
+	0x4B, 0xA2, 0x4A, 0x4A, 0xBF, 0x31, 0xCB, 0x79,
+	0xF5, 0x44, 0x30, 0xDB, 0x06, 0x4A, 0xEA, 0x06,
+	0x0D,
+
+	0xB4, 0x3C, 0x72, 0x0F, 0x5B, 0x27, 0xC2, 0x8A,
+	0x8B, 0xDD, 0x33, 0x2C, 0x21, 0x7C, 0x8F, 0x65,
+	0x6A, 0xA3, 0x47, 0x11, 0xA7, 0xFA, 0xCF, 0xA8,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x75, 0xCD, 0x9D, 0x1D, 0x48, 0x6A, 0xB9, 0x70,
+	0xEC, 0xFD, 0x7A, 0x76, 0x4C, 0x17, 0x86, 0xB1,
+	0xDB, 0x00, 0x93, 0x83, 0x16, 0x14, 0xCB, 0xC2,
+	0x8A, 0x70, 0xBA, 0x92, 0xA7, 0xA5, 0xD5, 0x43,
+	0x66, 0x89, 0x2C, 0x8E, 0x57, 0x47, 0x3E, 0x94,
+	0xB4, 0xC8, 0x95, 0x42, 0x30, 0x0F, 0x2D, 0xC7,
+	0x06, 0xB8, 0xCB, 0x15, 0x5F, 0x93, 0x8E, 0x19,
+	0x3C, 0xFF, 0x08, 0x8C, 0xF5, 0x6E, 0x14, 0xFC,
+	0x07, 0x7E, 0x3A, 0xD4, 0x94, 0x6D, 0xFC, 0x93,
+	0x8D, 0xC1, 0xD9, 0xAF, 0x4C, 0xDE, 0xC5, 0x93,
+	0xCB, 0x62, 0xDC, 0xC9, 0x11, 0x07, 0xAE, 0xC9,
+	0x30, 0xBF, 0xC8, 0x6F, 0xE7, 0x6E, 0x5A, 0xB3,
+	0x86, 0x36, 0x0B, 0xB6, 0xCC, 0x34, 0x8D, 0xCC,
+	0xD9, 0x53, 0x3F, 0x8D, 0x10, 0xFC, 0x3E, 0xA4,
+	0xFC, 0xCB,
+
+	0x34, 0x33, 0x72, 0x15, 0x5B, 0x27, 0xC2, 0x8A,
+	0x94, 0xDD, 0x33, 0x2C, 0x21, 0x7C, 0x8F, 0x33,
+	0x6A, 0xA3, 0x47, 0x11, 0xA7, 0xFA, 0xCF, 0xA8,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x55, 0xC6, 0x9D, 0x1D, 0x48, 0xEA, 0xAD, 0x70,
+	0x18, 0x88, 0x58, 0x76, 0x5C, 0x62, 0x84, 0xB9,
+	0xDD, 0x03, 0x93, 0xD3, 0x47, 0x12, 0x4B, 0xC9,
+	0x8B, 0x70, 0x4E, 0x91, 0x06, 0x7A, 0xC5, 0x43,
+	0x1E, 0x97, 0x78, 0x7C, 0x7B, 0xA1, 0xF7, 0x39,
+	0x0E, 0x4D, 0x8E, 0x4D, 0xEF, 0xA9, 0x2F, 0x0D,
+	0x40, 0xFC, 0x58, 0x9D, 0xA1, 0x31, 0xE6, 0x5C,
+	0x25, 0xBC, 0x17, 0xF2, 0x3C, 0x67, 0xC9, 0x34,
+	0xBB, 0xEF, 0x85, 0xA1, 0xE8, 0x21, 0x02, 0x32,
+	0x48, 0x56, 0xED, 0xF8, 0xDD, 0xE1, 0x65, 0xC7,
+	0x4F, 0xDF, 0x0D, 0x39, 0x84, 0x7A, 0x5F, 0x8F,
+	0x72, 0x8D, 0x07, 0xCD, 0x96, 0x3B, 0x3C, 0xFB,
+	0x03, 0x49, 0x9A, 0x87, 0xA6, 0x94, 0x52, 0xFF,
+	0x34, 0x50, 0x3E, 0x52, 0x4E, 0x2A, 0x6B, 0x58,
+	0x0E, 0x11, 0x5E,
+
+	0x34, 0xB3, 0x70, 0x15, 0x52, 0x27, 0xC2, 0x8A,
+	0x17, 0xD2, 0x33, 0x2C, 0x21, 0x7C, 0x8F, 0xB3,
+	0x6A, 0xA3, 0x47, 0x11, 0xA7, 0xFA, 0xCF, 0xA8,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x55, 0x96, 0x89, 0x1D, 0x48, 0xEA, 0xAD, 0x6A,
+	0xA8, 0x70, 0x28, 0x77, 0xDC, 0x6B, 0x16, 0xB9,
+	0x1E, 0x73, 0x92, 0xD3, 0x57, 0x12, 0x0A, 0x49,
+	0x8B, 0x70, 0x4E, 0x69, 0x06, 0x8A, 0x26, 0x7A,
+	0xC8, 0xC2, 0x69, 0xB8, 0x11, 0xF3, 0xBB, 0xF5,
+	0xC4, 0x86, 0xBF, 0xA4, 0x36, 0x1A, 0xDB, 0xA8,
+	0x20, 0x57, 0xD8, 0x52, 0x9C, 0xAC, 0xF7, 0x49,
+	0xCD, 0x11, 0x1C, 0x5A, 0xEA, 0x7E, 0x8E, 0x11,
+	0x8D, 0x24, 0xDB, 0xD2, 0x48, 0x8A, 0x9E, 0x3B,
+	0x1B, 0xC6, 0x0B, 0xD7, 0xE9, 0xFF, 0xB4, 0xA9,
+	0x81, 0xBD, 0x80, 0xDF, 0x54, 0x14, 0x46, 0x46,
+	0x21, 0x89, 0x35, 0x83, 0xBE, 0x18, 0xB3, 0x4B,
+	0x3B, 0xEB, 0x6B, 0xE0, 0x5E, 0xED, 0x28, 0x18,
+	0xE6, 0xC5, 0x39, 0xFD, 0x9A, 0x4D, 0xAB, 0x6C,
+	0xA3, 0xD5, 0x76, 0x45,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x52, 0x63, 0xC2, 0x8A,
+	0xD7, 0x39, 0x0C, 0x2C, 0x21, 0x7C, 0x8F, 0xB3,
+	0x6A, 0xA3, 0x47, 0x11, 0xA7, 0xFA, 0xCF, 0xA8,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x50, 0x96, 0xF9, 0x59, 0x49, 0xEA, 0xAD, 0x6A,
+	0xA8, 0x8C, 0xD4, 0xA0, 0x3E, 0x2B, 0x10, 0x6E,
+	0x7E, 0x44, 0x52, 0xD5, 0x57, 0x3A, 0x78, 0x4D,
+	0xC0, 0x38, 0x4D, 0x69, 0xFA, 0xAD, 0x57, 0x8D,
+	0x26, 0xA6, 0xF3, 0xE6, 0xC5, 0xAE, 0x2A, 0x14,
+	0x07, 0x16, 0x3F, 0x4D, 0x2C, 0x53, 0x25, 0x5E,
+	0x14, 0xE8, 0xF1, 0xBE, 0x1F, 0x1B, 0xED, 0xFD,
+	0x58, 0xCB, 0xF5, 0x14, 0x4B, 0x50, 0x02, 0x2A,
+	0x2C, 0xBB, 0x1E, 0x84, 0x3B, 0x5E, 0x99, 0xA1,
+	0xE1, 0x1B, 0x75, 0x30, 0x1A, 0xF4, 0x6A, 0x03,
+	0xFA, 0xE5, 0x83, 0x58, 0xB7, 0x90, 0x38, 0xE5,
+	0x9E, 0xB7, 0xDB, 0xCA, 0xD1, 0xB0, 0xC0, 0x30,
+	0x57, 0x85, 0xAB, 0x49, 0x27, 0x81, 0xB2, 0xFC,
+	0x6A, 0xE6, 0x5E, 0x32, 0xC6, 0x22, 0x74, 0x7D,
+	0x1C, 0xFB, 0x79, 0xBE, 0xDF,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x5A, 0x63, 0xA2, 0x8A,
+	0xD7, 0x39, 0x0C, 0x1C, 0x21, 0x7C, 0x8F, 0xB3,
+	0x6A, 0xA3, 0x47, 0x11, 0xA7, 0xFA, 0xCF, 0xA8,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x50, 0x96, 0xF9, 0x59, 0xCD, 0xEA, 0xAD, 0x6A,
+	0x68, 0x88, 0xD4, 0xA0, 0x3D, 0x2A, 0x10, 0x4E,
+	0x72, 0x44, 0x76, 0x4D, 0x47, 0x3A, 0x78, 0x45,
+	0xCC, 0x74, 0x4D, 0x69, 0xFA, 0xAD, 0x54, 0x8D,
+	0x8E, 0x00, 0xF7, 0xE6, 0x4D, 0xAF, 0x85, 0x05,
+	0x47, 0x4D, 0x13, 0x89, 0x28, 0xA2, 0x3C, 0x45,
+	0x0C, 0x99, 0xB1, 0x76, 0x1B, 0xA3, 0xE7, 0x8B,
+	0x7D, 0x04, 0x65, 0x19, 0x7D, 0xC0, 0x92, 0x20,
+	0xE7, 0x84, 0xA7, 0xE1, 0x5D, 0xDF, 0xE0, 0x7F,
+	0xA2, 0x0F, 0xBD, 0xDF, 0x88, 0xCB, 0xEF, 0x33,
+	0x66, 0x01, 0x32, 0x74, 0x71, 0xDE, 0xF9, 0x1B,
+	0xB3, 0x00, 0x68, 0x09, 0xEE, 0x41, 0x1C, 0x36,
+	0x1F, 0x8A, 0x66, 0x4B, 0xBE, 0xA7, 0xB1, 0x50,
+	0x10, 0x61, 0xE6, 0x59, 0xB5, 0x47, 0xBD, 0x21,
+	0x48, 0xF5, 0x8D, 0xB3, 0xC4, 0xE8,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x63, 0x22, 0xCA,
+	0xD7, 0x39, 0x0C, 0x5C, 0x01, 0x7C, 0x8F, 0xB3,
+	0x6A, 0xA3, 0x47, 0x11, 0xA7, 0xFA, 0xCF, 0xA8,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x50, 0x96, 0xF9, 0x59, 0xC5, 0xE8, 0xAC, 0x6A,
+	0x68, 0x09, 0xD4, 0x24, 0x3B, 0x28, 0x16, 0x0E,
+	0x6A, 0x4C, 0x7A, 0x4D, 0x45, 0x3A, 0x78, 0x45,
+	0xDC, 0x6C, 0x45, 0x6C, 0xFA, 0xAD, 0x50, 0x8F,
+	0xCE, 0x09, 0xF7, 0x66, 0xB5, 0xE5, 0xB1, 0x65,
+	0x55, 0x42, 0x19, 0x19, 0xF9, 0xA2, 0xBD, 0x61,
+	0x59, 0x01, 0x77, 0xB6, 0x5F, 0xE7, 0xF7, 0x61,
+	0x08, 0xA1, 0xEC, 0x09, 0x3D, 0x60, 0xDF, 0x62,
+	0xC7, 0xD6, 0x61, 0xC2, 0x2A, 0x01, 0x29, 0xDC,
+	0xF7, 0x7B, 0x2F, 0xAA, 0x9B, 0x6F, 0x6F, 0x5F,
+	0xE3, 0x70, 0xF4, 0x45, 0xC3, 0x1D, 0x48, 0x09,
+	0xEA, 0x24, 0x11, 0x34, 0x1E, 0xD3, 0x97, 0x27,
+	0x55, 0xC3, 0x83, 0x11, 0xD1, 0xA4, 0x71, 0x48,
+	0x81, 0xAC, 0xAF, 0xB3, 0xF8, 0xEE, 0xE8, 0x6D,
+	0x61, 0x4F, 0xC7, 0xDE, 0xCA, 0xC3, 0xB8,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xD7, 0x39, 0x0C, 0x5C, 0x81, 0x6C, 0x8F, 0xB3,
+	0x6A, 0xA3, 0x47, 0x11, 0xA7, 0xFA, 0xCF, 0xA8,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x50, 0x96, 0xF9, 0x79, 0xC5, 0xF8, 0xAA, 0x6A,
+	0xE8, 0x09, 0x86, 0x24, 0x7B, 0x20, 0x0F, 0x04,
+	0x6A, 0x6C, 0xFE, 0x4F, 0x45, 0x3E, 0x78, 0x45,
+	0xDD, 0x0C, 0x61, 0xAE, 0xFA, 0xAD, 0x50, 0x87,
+	0x9D, 0x8A, 0x6B, 0xE5, 0xBF, 0x94, 0x1D, 0xFD,
+	0x49, 0x43, 0xD2, 0x11, 0x45, 0xD1, 0x3C, 0x56,
+	0x0D, 0xA2, 0x27, 0x1E, 0xEE, 0x78, 0x37, 0xF9,
+	0xA0, 0x31, 0xAE, 0x2B, 0x15, 0xF4, 0xDC, 0x20,
+	0x3C, 0xA1, 0xBF, 0x32, 0xFE, 0x37, 0x17, 0xDF,
+	0x8F, 0x13, 0xA1, 0x8F, 0x16, 0xBE, 0x70, 0x87,
+	0xAA, 0xD5, 0xC1, 0xB6, 0x09, 0x4D, 0xCC, 0x6D,
+	0x7F, 0xC7, 0x3C, 0x66, 0x8D, 0xF8, 0x97, 0x0D,
+	0xF9, 0xFC, 0x37, 0xF9, 0xA0, 0x7C, 0x9C, 0x49,
+	0xC8, 0x86, 0xD5, 0x9E, 0xBE, 0x15, 0xAA, 0x3E,
+	0x61, 0x21, 0xEF, 0xCF, 0x14, 0xD4, 0xCE, 0xEB,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0x57, 0x38, 0x0C, 0x5C, 0x81, 0x6C, 0xCF, 0xB3,
+	0x6A, 0xA3, 0x47, 0x11, 0xA7, 0x3A, 0xCF, 0xA8,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x5C, 0x96, 0xC8, 0x49, 0xC1, 0xF8, 0xAA, 0x6A,
+	0xE8, 0x09, 0x86, 0xA4, 0x7A, 0x20, 0x0F, 0x06,
+	0x6A, 0x2C, 0xFE, 0x4C, 0x45, 0x3A, 0x74, 0x51,
+	0xDD, 0x04, 0x51, 0xAE, 0xF2, 0xAD, 0x70, 0x87,
+	0xB1, 0x8E, 0x71, 0xD5, 0xA4, 0xAA, 0xC9, 0xE1,
+	0x85, 0x45, 0x92, 0x01, 0x4F, 0xF2, 0xE4, 0x35,
+	0x4E, 0xA8, 0x23, 0x13, 0xCE, 0x48, 0xB5, 0xF9,
+	0xB8, 0xB5, 0x69, 0x43, 0x91, 0x7D, 0xCF, 0xA0,
+	0xBE, 0xA6, 0xCB, 0x2E, 0x22, 0x8E, 0x78, 0x49,
+	0xFA, 0xE9, 0x0F, 0x20, 0xB9, 0x35, 0xAF, 0x95,
+	0x9B, 0x24, 0x0E, 0x0E, 0x24, 0xCB, 0x71, 0x71,
+	0x54, 0x5E, 0x13, 0xC0, 0x7B, 0xD9, 0x65, 0xAD,
+	0xDF, 0xE8, 0xA5, 0xFE, 0x4A, 0xEB, 0x5D, 0xF8,
+	0x86, 0x53, 0xEA, 0x48, 0xE9, 0x71, 0xC3, 0x2E,
+	0x65, 0xFB, 0x5C, 0x86, 0x2F, 0xF2, 0xB6, 0x1B,
+	0xCA,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0x5F, 0x38, 0x6C, 0x5C, 0x81, 0x6C, 0xCF, 0x33,
+	0x6A, 0xA3, 0x47, 0x11, 0xA7, 0x3A, 0xDF, 0x99,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x5C, 0x86, 0xCB, 0x8D, 0x8D, 0x38, 0xAA, 0x68,
+	0xE4, 0x09, 0x86, 0xA4, 0x7A, 0x62, 0x0F, 0x06,
+	0x59, 0x2C, 0xFE, 0x4C, 0x81, 0x3C, 0xB0, 0x41,
+	0xCD, 0x04, 0x51, 0xEE, 0xFE, 0x89, 0xF2, 0x07,
+	0xC6, 0x3A, 0x82, 0xF7, 0xC0, 0x2E, 0x3D, 0xA4,
+	0x62, 0x59, 0x04, 0x3B, 0x1F, 0xFC, 0x21, 0x3F,
+	0x42, 0xF8, 0x11, 0x00, 0x5A, 0x5C, 0x29, 0x52,
+	0x3C, 0x04, 0xF8, 0x3D, 0x31, 0x7F, 0xC8, 0x24,
+	0xA9, 0xBE, 0xDE, 0x72, 0xA0, 0x57, 0x6B, 0x41,
+	0x1F, 0x59, 0x41, 0x0A, 0x8F, 0xA8, 0x48, 0x65,
+	0x96, 0x54, 0xEE, 0x2C, 0x70, 0xB8, 0x0C, 0x65,
+	0x45, 0xDD, 0x05, 0x6B, 0xC4, 0xCD, 0x27, 0x70,
+	0xAD, 0x8C, 0xAE, 0x21, 0xE4, 0x12, 0xB7, 0x5D,
+	0x80, 0xD6, 0x96, 0x29, 0xB2, 0x68, 0x8E, 0xD3,
+	0x62, 0xEC, 0x98, 0xAB, 0xA2, 0xA9, 0x95, 0x02,
+	0xA4, 0x42,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x6C, 0x5C, 0x81, 0x6C, 0xCF, 0x33,
+	0x4B, 0xA3, 0x47, 0x11, 0xA7, 0x3A, 0xDF, 0xD9,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x5C, 0x86, 0xDF, 0x8D, 0x5D, 0x60, 0xA1, 0x6D,
+	0xC4, 0x09, 0x86, 0xA4, 0x7A, 0x62, 0x0F, 0x06,
+	0x4D, 0x72, 0xFC, 0x4E, 0x80, 0xB9, 0xB4, 0x54,
+	0xE7, 0x04, 0x51, 0xEE, 0xE6, 0x89, 0x56, 0x21,
+	0x3E, 0x4B, 0xCD, 0x62, 0xC2, 0x4E, 0x34, 0x75,
+	0xD0, 0x47, 0xE0, 0x33, 0x24, 0xB4, 0x27, 0x95,
+	0x16, 0x9A, 0x11, 0x00, 0x0D, 0x5F, 0xEB, 0x03,
+	0x28, 0x44, 0xD2, 0x3E, 0xA2, 0x4E, 0x01, 0x0D,
+	0x2F, 0xCF, 0x1C, 0x02, 0xF1, 0xA9, 0xFB, 0xEF,
+	0xA9, 0x18, 0x81, 0x0D, 0xAA, 0xD2, 0x9C, 0xE3,
+	0x9A, 0xA6, 0x7E, 0xCB, 0xBA, 0x0F, 0x96, 0x66,
+	0xF6, 0x31, 0xEB, 0x94, 0x53, 0x9E, 0x53, 0x50,
+	0xB2, 0x2C, 0x75, 0x51, 0x76, 0xFE, 0x72, 0x13,
+	0x61, 0xD3, 0xCC, 0xC2, 0x3D, 0xF4, 0x45, 0x66,
+	0x6A, 0x90, 0xF7, 0x56, 0xFA, 0x8C, 0x3B, 0x27,
+	0x78, 0x48, 0x65,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x64, 0x5C, 0xA0, 0x6C, 0xCF, 0x33,
+	0xCA, 0xB2, 0x47, 0x11, 0xA7, 0x3A, 0xDF, 0xD9,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x4C, 0x86, 0xDF, 0x95, 0x5C, 0x00, 0xC5, 0x29,
+	0xC4, 0x29, 0x96, 0xA4, 0x7A, 0x62, 0x0F, 0x24,
+	0x45, 0x6B, 0xFD, 0x4E, 0x00, 0xA9, 0xB2, 0x54,
+	0xE5, 0xCC, 0x59, 0xEE, 0xC6, 0xCF, 0x5A, 0x31,
+	0x53, 0xF7, 0xE5, 0x6A, 0x42, 0x1F, 0xD2, 0x12,
+	0x9F, 0x73, 0xC5, 0x6B, 0x16, 0xBF, 0x4F, 0x64,
+	0x72, 0xB8, 0x95, 0x3A, 0x45, 0x4E, 0xD2, 0xC2,
+	0x2F, 0x50, 0x32, 0xAE, 0x32, 0x6D, 0x40, 0x01,
+	0xAF, 0x57, 0x8D, 0x72, 0xC6, 0xE1, 0xE6, 0x1F,
+	0x23, 0xD3, 0x9B, 0x6E, 0xFA, 0xA2, 0xD5, 0x47,
+	0xDA, 0x5C, 0x9B, 0xEE, 0x49, 0x93, 0x91, 0xF6,
+	0x67, 0x3F, 0xBE, 0x99, 0x1B, 0xBB, 0xE2, 0xE6,
+	0x57, 0x19, 0x58, 0xC3, 0xDD, 0x3A, 0x3A, 0x31,
+	0x34, 0xB1, 0x13, 0x5A, 0x97, 0x40, 0x9D, 0x6F,
+	0xA0, 0x2E, 0xFE, 0xDF, 0x4E, 0xE6, 0x5E, 0xD0,
+	0x35, 0x93, 0x2A, 0x70,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x04, 0x5C, 0x20, 0x6F, 0xCF, 0x33,
+	0xCA, 0x72, 0x46, 0x11, 0xA7, 0x3A, 0xDF, 0xD9,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x4A, 0x86, 0xDF, 0x95, 0x40, 0x04, 0xB4, 0x51,
+	0xC4, 0x29, 0xA6, 0xB0, 0x7A, 0x62, 0x0F, 0xA4,
+	0x45, 0x6E, 0xE1, 0x4E, 0x08, 0xA9, 0xB3, 0x4F,
+	0xCD, 0x8D, 0x59, 0xEE, 0xC6, 0xD7, 0x6A, 0x21,
+	0x1E, 0x13, 0x36, 0x27, 0x40, 0x0C, 0x67, 0x0D,
+	0x12, 0x60, 0x1D, 0x48, 0xD3, 0xB6, 0x56, 0x5C,
+	0x10, 0x69, 0xF3, 0xC3, 0x66, 0x40, 0x8A, 0xF3,
+	0x2C, 0x27, 0x56, 0xEE, 0x30, 0xFF, 0x81, 0x05,
+	0x7A, 0x01, 0x73, 0x0F, 0x89, 0x85, 0xFC, 0xA0,
+	0x2C, 0xCF, 0x50, 0x82, 0x2A, 0x13, 0xC7, 0xDF,
+	0x68, 0xDE, 0x6E, 0xB6, 0x02, 0xCD, 0x5A, 0x0B,
+	0xBB, 0xBC, 0x0D, 0xEE, 0x34, 0x36, 0xDC, 0x83,
+	0x0A, 0xD1, 0x3D, 0x49, 0xC9, 0x98, 0xB8, 0x32,
+	0xC6, 0xA1, 0xE6, 0xA3, 0x42, 0x9C, 0xD4, 0xA4,
+	0x57, 0x17, 0x44, 0xAB, 0x30, 0xE0, 0x5C, 0x32,
+	0x24, 0x08, 0x36, 0x95, 0x0D,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x04, 0x5C, 0x31, 0x6F, 0x8B, 0x33,
+	0xCA, 0x72, 0x56, 0x23, 0xA7, 0x3A, 0xDF, 0xD9,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0xC6, 0x8A, 0xFE, 0x95, 0x40, 0x24, 0xB7, 0xD1,
+	0xC4, 0x6D, 0xA6, 0xB0, 0xEA, 0x62, 0x0F, 0xA4,
+	0x8D, 0x6E, 0x41, 0x6E, 0x6B, 0xAE, 0xB3, 0x5F,
+	0xCD, 0xCD, 0x59, 0xEE, 0xC7, 0xD7, 0x6A, 0x23,
+	0x63, 0x9B, 0x06, 0x08, 0xD5, 0xA7, 0x55, 0x53,
+	0xD2, 0x73, 0x18, 0x40, 0xD3, 0xA2, 0x5A, 0x84,
+	0xF6, 0xEB, 0xA2, 0x0B, 0x06, 0x20, 0xEB, 0xD2,
+	0x34, 0xF2, 0x3F, 0x2C, 0x36, 0x95, 0x99, 0x5B,
+	0xA0, 0x3E, 0xCA, 0xB6, 0x64, 0x2D, 0x0C, 0x9F,
+	0xEF, 0x1F, 0x91, 0xC2, 0x63, 0xA0, 0xC6, 0x46,
+	0xA6, 0x02, 0x02, 0xDA, 0x59, 0x17, 0x4E, 0x3E,
+	0xE8, 0x54, 0xE7, 0x94, 0xA2, 0x6C, 0xF0, 0x91,
+	0x15, 0xC8, 0xAC, 0xF0, 0xCF, 0x26, 0xEB, 0x56,
+	0x92, 0x48, 0x0B, 0xA5, 0x04, 0xA7, 0xC4, 0x23,
+	0x16, 0xB7, 0xD2, 0x42, 0x29, 0x4E, 0xE0, 0x40,
+	0x84, 0xFB, 0xBD, 0x4D, 0x49, 0xBC,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x04, 0x5C, 0x11, 0x7E, 0x8B, 0x37,
+	0xCA, 0x72, 0x16, 0x61, 0x85, 0x3A, 0xDF, 0xD9,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x57, 0x1A, 0xFA, 0x91, 0x40, 0x24, 0x93, 0xD3,
+	0xC4, 0x6D, 0xA6, 0xB0, 0xE2, 0x60, 0x0F, 0xA4,
+	0x8F, 0xA7, 0x41, 0xE6, 0x4D, 0x90, 0xB9, 0x5F,
+	0x45, 0xCD, 0x10, 0xCA, 0xC7, 0xD6, 0x6A, 0x33,
+	0x2A, 0xF4, 0x97, 0x88, 0x9B, 0x82, 0x48, 0x2B,
+	0x5C, 0x02, 0x5C, 0x4B, 0x23, 0x65, 0xBA, 0x46,
+	0xF0, 0x55, 0x61, 0x32, 0x8D, 0x24, 0x08, 0xAE,
+	0x34, 0xF4, 0x8D, 0x08, 0xF4, 0xB5, 0xE3, 0xD7,
+	0xBF, 0x63, 0x6F, 0xAF, 0x8E, 0xE2, 0x4D, 0x14,
+	0x18, 0xFE, 0x88, 0x87, 0xF6, 0x68, 0x85, 0xF6,
+	0xE1, 0xF0, 0x7B, 0xF5, 0xF9, 0xC8, 0x32, 0x33,
+	0x4C, 0x8C, 0x0C, 0x4C, 0xB1, 0xE1, 0x86, 0x10,
+	0x2D, 0x71, 0x6A, 0xC6, 0x0B, 0x8C, 0xCF, 0x37,
+	0x6A, 0x7E, 0x38, 0xC7, 0xCB, 0x7B, 0x0C, 0xD9,
+	0xCD, 0x3B, 0x5C, 0x56, 0xA6, 0x3E, 0x87, 0xB7,
+	0x4B, 0xC5, 0xED, 0x02, 0x61, 0xDC, 0x6C,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x04, 0x5C, 0x11, 0x7E, 0x82, 0x37,
+	0xCA, 0x72, 0x16, 0xE1, 0x05, 0x28, 0xDF, 0xD9,
+	0x9A, 0x6B, 0x19, 0x72, 0x58, 0xB6, 0x85, 0xAA,
+	0x46, 0xF8, 0x4E, 0xD5, 0x40, 0x25, 0x93, 0xFB,
+	0xC4, 0x6D, 0xA6, 0x94, 0xE2, 0x20, 0x8B, 0xA4,
+	0x8F, 0xA5, 0x0B, 0xE4, 0x47, 0xB8, 0xB0, 0x5A,
+	0x75, 0xC9, 0x14, 0xCA, 0xC7, 0x92, 0x6B, 0x33,
+	0x8F, 0x3F, 0x65, 0xC2, 0xBA, 0x2C, 0xFD, 0xAD,
+	0x68, 0x2E, 0x28, 0xBA, 0x67, 0xA7, 0x8A, 0x45,
+	0x95, 0x45, 0x94, 0x93, 0x02, 0x6F, 0x81, 0xFF,
+	0x69, 0x5A, 0x8D, 0x65, 0x9A, 0xBD, 0x03, 0x55,
+	0x72, 0xE0, 0x6C, 0xDD, 0x70, 0xFC, 0x7B, 0x7B,
+	0xB0, 0x65, 0x10, 0x4B, 0x04, 0xCA, 0xDB, 0x63,
+	0xEC, 0xC6, 0x36, 0x86, 0x7F, 0xC2, 0x63, 0x74,
+	0x25, 0x6C, 0xE9, 0x5F, 0x57, 0xD8, 0x5D, 0xCE,
+	0x39, 0xAD, 0x34, 0x30, 0x02, 0x42, 0xA0, 0xC2,
+	0x7C, 0x72, 0x77, 0xB7, 0x38, 0x32, 0x88, 0x68,
+	0x06, 0x52, 0xFC, 0x1B, 0x06, 0x5A, 0x04, 0x94,
+	0x21, 0x4F, 0xAD, 0x39, 0xD0, 0x66, 0x70, 0xC7,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x04, 0x5C, 0x11, 0x7E, 0x82, 0x37,
+	0xCA, 0x73, 0x16, 0xE1, 0x05, 0x28, 0xDF, 0xD8,
+	0x9A, 0x6B, 0x19, 0x72, 0xD8, 0x74, 0x87, 0xAA,
+	0x46, 0x10, 0xCE, 0xD3, 0x50, 0x21, 0xB5, 0xFA,
+	0xE8, 0x69, 0x16, 0x3C, 0xEB, 0x24, 0x8B, 0xA4,
+	0x8F, 0xA5, 0x0B, 0xE4, 0x46, 0xB8, 0xE8, 0x46,
+	0x75, 0x09, 0x14, 0xC0, 0xC7, 0x90, 0x47, 0x2B,
+	0x93, 0x07, 0x00, 0x13, 0x09, 0x62, 0x77, 0x2C,
+	0xA8, 0x89, 0x54, 0x3B, 0x7C, 0x35, 0x1E, 0xBC,
+	0x25, 0xC3, 0x46, 0xEF, 0xA9, 0x23, 0xFB, 0xEB,
+	0x4B, 0x26, 0xAD, 0x02, 0x4E, 0x0C, 0x88, 0x55,
+	0x6A, 0xA1, 0x70, 0x4F, 0x4E, 0xD8, 0xF3, 0x1B,
+	0x61, 0x4D, 0x28, 0x86, 0xD0, 0xB7, 0x31, 0x43,
+	0x2A, 0x57, 0x32, 0x04, 0xA3, 0x2A, 0x18, 0x1E,
+	0x9C, 0x06, 0xE8, 0x32, 0x59, 0xC3, 0x06, 0x0C,
+	0x75, 0xB3, 0x06, 0x55, 0xF3, 0xAF, 0x7B, 0x8A,
+	0x9A, 0xA1, 0xEC, 0x0B, 0x5F, 0xFD, 0x00, 0x6E,
+	0xB3, 0xF8, 0x3D, 0x82, 0x55, 0xA4, 0xA8, 0x9E,
+	0x58, 0x49, 0xAD, 0xBE, 0x53, 0x6C, 0xE2, 0xB8,
+	0x91,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x04, 0x5C, 0x11, 0x7E, 0x82, 0x37,
+	0xD3, 0x73, 0x32, 0xE1, 0x05, 0x28, 0xDF, 0x58,
+	0x9A, 0x6B, 0x19, 0x72, 0xD8, 0x74, 0x85, 0x99,
+	0x46, 0x10, 0x2E, 0xDF, 0x4C, 0x21, 0xF1, 0xF2,
+	0xE8, 0x59, 0x05, 0xFC, 0x07, 0xAE, 0xAA, 0xA5,
+	0x95, 0xA5, 0x0B, 0xE4, 0x46, 0xBC, 0xE8, 0x26,
+	0x16, 0x03, 0x14, 0xF2, 0x8B, 0x94, 0x0B, 0x1B,
+	0xB2, 0x14, 0xC4, 0x75, 0x13, 0x0F, 0x71, 0xC8,
+	0x2C, 0x45, 0x13, 0x5A, 0xD9, 0xC7, 0xC0, 0x5B,
+	0x63, 0xEB, 0x39, 0xAC, 0x86, 0x64, 0x2D, 0xEB,
+	0x57, 0x31, 0x15, 0x47, 0x28, 0xCF, 0xDC, 0x85,
+	0xEB, 0x42, 0x33, 0x95, 0x94, 0x96, 0xEE, 0xCB,
+	0xAC, 0xF7, 0x23, 0x1B, 0xC7, 0x77, 0xF9, 0xBC,
+	0xB6, 0xB1, 0xF3, 0xE6, 0xDE, 0x22, 0xD4, 0xFE,
+	0xBD, 0xD8, 0xCC, 0x88, 0xF0, 0x57, 0xAA, 0x6A,
+	0x4C, 0xA4, 0x2D, 0xC5, 0xC8, 0x7E, 0x32, 0x65,
+	0xA3, 0x0A, 0x98, 0xB5, 0xED, 0xE1, 0xF1, 0x18,
+	0x08, 0xCA, 0xA2, 0x89, 0xFC, 0xCE, 0x40, 0xF1,
+	0x93, 0xB4, 0x15, 0xD7, 0xD7, 0xDB, 0x87, 0x3B,
+	0xBD, 0x93,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x04, 0x5C, 0x11, 0x7E, 0x82, 0x37,
+	0xD3, 0x72, 0xB2, 0xE3, 0x05, 0x28, 0xDF, 0x58,
+	0xB9, 0x6B, 0x19, 0x72, 0xD8, 0x74, 0xC5, 0xDA,
+	0xE5, 0x00, 0x2E, 0x5F, 0x98, 0x21, 0x99, 0xF2,
+	0xE8, 0x59, 0x31, 0xE6, 0xD7, 0x36, 0xA6, 0xA5,
+	0xFD, 0xA7, 0x0B, 0xE4, 0x46, 0xBC, 0xA8, 0x26,
+	0x22, 0x89, 0x14, 0xF2, 0x8A, 0x1D, 0x0B, 0x1E,
+	0x9B, 0x52, 0xF6, 0x89, 0x7F, 0x8C, 0x2C, 0x20,
+	0xE1, 0x03, 0x67, 0x4F, 0xD3, 0xA1, 0x6D, 0xA8,
+	0x61, 0xB8, 0xC6, 0x1D, 0x12, 0x05, 0x49, 0x97,
+	0x13, 0x75, 0x56, 0x13, 0x39, 0xDD, 0xFE, 0x46,
+	0xA5, 0x34, 0x13, 0x50, 0xA3, 0x38, 0x6E, 0xF0,
+	0x6C, 0x9D, 0xA8, 0x92, 0x8A, 0xEA, 0x0D, 0x1E,
+	0x3D, 0x34, 0x45, 0xD4, 0x96, 0xCE, 0xEC, 0xF6,
+	0xB5, 0x0E, 0xCC, 0x20, 0x9E, 0x8E, 0x77, 0xF1,
+	0x8D, 0x0B, 0xB1, 0xFD, 0x17, 0x3D, 0x09, 0x22,
+	0x0A, 0xB5, 0x89, 0x56, 0x5F, 0x5A, 0xC1, 0xF4,
+	0x10, 0xB5, 0x83, 0x82, 0x62, 0x2C, 0xD9, 0x86,
+	0xF0, 0xDE, 0x39, 0x9D, 0xD4, 0x76, 0xF5, 0x34,
+	0x22, 0x96, 0x94,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x04, 0x5C, 0x11, 0x7E, 0x82, 0x37,
+	0xD3, 0x32, 0xBA, 0xE3, 0x20, 0x28, 0xDF, 0x58,
+	0x2A, 0x78, 0x19, 0x72, 0xD8, 0x74, 0xC5, 0x5A,
+	0xA5, 0x4C, 0x2E, 0x5F, 0x88, 0x85, 0xC5, 0xB2,
+	0xF0, 0x59, 0x31, 0xDE, 0xD6, 0xD6, 0x52, 0xAD,
+	0xFD, 0xC7, 0xBF, 0xE4, 0x46, 0xBC, 0xA8, 0x22,
+	0x6E, 0xB1, 0x05, 0xC6, 0x8A, 0x1D, 0x01, 0x1C,
+	0xD5, 0x54, 0x77, 0xD4, 0x7A, 0xA2, 0x5F, 0x31,
+	0x9F, 0x15, 0x99, 0xDD, 0x98, 0x11, 0xBF, 0xE9,
+	0x2B, 0x6C, 0xC2, 0xB5, 0x31, 0x0C, 0x18, 0x1A,
+	0x19, 0x5B, 0xDE, 0x81, 0x49, 0xF6, 0x99, 0x46,
+	0xE8, 0x9D, 0xAE, 0xDC, 0xDA, 0x0D, 0x96, 0x15,
+	0x62, 0x45, 0x47, 0xD2, 0xD5, 0x1C, 0xA3, 0x6A,
+	0x64, 0xB9, 0xBE, 0x89, 0xB5, 0x45, 0xDC, 0x57,
+	0x00, 0xDA, 0x0B, 0xE4, 0xD4, 0x5C, 0x28, 0x21,
+	0xB7, 0xE2, 0xA5, 0xC8, 0x78, 0x6A, 0xF6, 0xA4,
+	0x0A, 0x74, 0x42, 0x69, 0x82, 0x3B, 0x70, 0x69,
+	0x74, 0xF1, 0x12, 0x62, 0xEB, 0x1D, 0x4F, 0x67,
+	0xAF, 0x2B, 0xA5, 0xE7, 0x94, 0x72, 0x00, 0x36,
+	0x94, 0x6C, 0xA5, 0x8E,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x04, 0x5C, 0x11, 0x7E, 0x82, 0x37,
+	0xD3, 0x32, 0x1A, 0xE2, 0x20, 0x28, 0xDF, 0x58,
+	0x6A, 0xBB, 0x1A, 0x72, 0xD8, 0x74, 0xC5, 0x5A,
+	0xC5, 0xCB, 0x9A, 0x5E, 0x88, 0x65, 0xC5, 0xE2,
+	0xEE, 0x59, 0x31, 0xDE, 0xEA, 0xC2, 0xAF, 0x7D,
+	0xFF, 0xC7, 0x8F, 0xE6, 0x46, 0xBC, 0xA8, 0xA2,
+	0x6E, 0xB3, 0x39, 0xA2, 0x8A, 0x1D, 0x00, 0x11,
+	0x60, 0x54, 0x57, 0x31, 0x78, 0x72, 0xFB, 0x58,
+	0xB0, 0x36, 0x28, 0x7C, 0x9A, 0x2A, 0xFB, 0x12,
+	0x54, 0xFA, 0xEA, 0xD6, 0x2B, 0x56, 0x19, 0x10,
+	0x19, 0xE1, 0xB2, 0xA0, 0x5D, 0x45, 0x9B, 0xEA,
+	0x4F, 0xD9, 0x23, 0x54, 0x1F, 0xDA, 0x44, 0x50,
+	0x9F, 0x97, 0x87, 0xB5, 0x4B, 0x2B, 0x09, 0x18,
+	0x5D, 0x07, 0x7E, 0x10, 0xDA, 0x75, 0xB8, 0x8C,
+	0xAE, 0x75, 0x32, 0xA8, 0x95, 0xCF, 0x3E, 0x17,
+	0x2B, 0x8A, 0xAA, 0xAE, 0x9B, 0x0D, 0x8B, 0x79,
+	0x8E, 0xBD, 0x0B, 0x9B, 0x18, 0x87, 0x80, 0x4E,
+	0xC5, 0x29, 0x4C, 0xA7, 0xA4, 0xF4, 0x19, 0x90,
+	0xCB, 0xB5, 0x79, 0x15, 0x26, 0x67, 0x39, 0x30,
+	0xF3, 0x9B, 0xDB, 0x3D, 0x29,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x04, 0x5C, 0x11, 0x7E, 0x82, 0x37,
+	0xD3, 0x32, 0x1A, 0xE2, 0x30, 0x28, 0xDF, 0x58,
+	0x6A, 0xBB, 0x3E, 0x46, 0xD8, 0x74, 0xC5, 0x5A,
+	0xC0, 0xCB, 0xFC, 0x5C, 0x80, 0x65, 0x45, 0xE9,
+	0x63, 0x00, 0x31, 0xDF, 0xEA, 0x82, 0xAC, 0x6D,
+	0xFF, 0x87, 0x8F, 0xE6, 0xE4, 0xBC, 0xA8, 0xA2,
+	0xAE, 0xB3, 0x39, 0xE2, 0x89, 0x1D, 0x01, 0x15,
+	0xCA, 0xF4, 0x03, 0x49, 0x78, 0x42, 0x5A, 0x50,
+	0x93, 0xFE, 0x2E, 0x2B, 0xEC, 0x91, 0x9B, 0x52,
+	0x83, 0xF4, 0x37, 0x7E, 0xA4, 0x1B, 0x04, 0x69,
+	0xAC, 0xEE, 0xBF, 0x5D, 0x50, 0x51, 0x99, 0xFD,
+	0xA6, 0xAD, 0xD1, 0x55, 0x0B, 0xC9, 0x65, 0x5C,
+	0xAB, 0x12, 0x3F, 0x65, 0xB0, 0x7C, 0xA6, 0xD4,
+	0xFB, 0xAA, 0x45, 0xDC, 0xFE, 0x02, 0xCB, 0x30,
+	0x7A, 0xEB, 0xDB, 0xF8, 0xDF, 0x55, 0x42, 0x3B,
+	0x59, 0x8E, 0x07, 0x07, 0x4A, 0x64, 0x06, 0x28,
+	0xF4, 0xCF, 0x8A, 0xDC, 0x2D, 0xC6, 0xD0, 0xB4,
+	0x3A, 0x8E, 0x77, 0x7F, 0xFF, 0x58, 0x07, 0x81,
+	0x76, 0x9D, 0x2A, 0xA6, 0xE4, 0xD6, 0xD9, 0xA7,
+	0x1B, 0x41, 0x01, 0xBE, 0x98, 0xA9,
+
+	0x34, 0xB3, 0x70, 0x0E, 0x7A, 0x23, 0x2A, 0xCA,
+	0xDF, 0x28, 0x04, 0x5C, 0x11, 0x7E, 0x82, 0x37,
+	0xD3, 0x32, 0x1A, 0xE2, 0x10, 0x38, 0xDF, 0x58,
+	0x6A, 0xBB, 0x7E, 0x26, 0xFC, 0x74, 0xC5, 0x5A,
+	0xD1, 0xEA, 0xFD, 0x54, 0xA0, 0x75, 0x45, 0xF9,
+	0x63, 0x99, 0xA8, 0xDE, 0xEA, 0x82, 0xE8, 0x4F,
+	0xFF, 0x87, 0xCF, 0xE6, 0x64, 0xB8, 0xA8, 0xA2,
+	0xAA, 0xB2, 0x39, 0x72, 0xCD, 0x1B, 0x04, 0x15,
+	0xA4, 0x6E, 0x36, 0xD8, 0x48, 0x22, 0x5C, 0xE2,
+	0x90, 0x1F, 0xC6, 0x22, 0x67, 0xFA, 0x4F, 0x52,
+	0xA5, 0x7D, 0xFF, 0xA8, 0x24, 0x3B, 0x44, 0xC3,
+	0x8F, 0xAC, 0x9E, 0x22, 0xC9, 0x98, 0x99, 0xE9,
+	0xFF, 0x0B, 0x31, 0x8F, 0x41, 0xEE, 0x6F, 0x9C,
+	0x35, 0x2D, 0xD5, 0x77, 0xEC, 0x2D, 0x37, 0x65,
+	0xF6, 0xDC, 0xD5, 0x75, 0x51, 0xCE, 0x1D, 0xF7,
+	0x0C, 0x23, 0xE6, 0xCF, 0x71, 0xF9, 0x24, 0x30,
+	0x21, 0xD1, 0x11, 0xF3, 0xE9, 0xDA, 0x54, 0x7E,
+	0xEA, 0x58, 0x76, 0xD3, 0x95, 0xBC, 0x88, 0xCA,
+	0x69, 0x00, 0x74, 0x19, 0x5A, 0x3A, 0xBE, 0x48,