pure golang decoder

PiperOrigin-RevId: 770675149
diff --git a/go/BUILD.bazel b/go/BUILD.bazel
index 72a5317..baa2f7e 100644
--- a/go/BUILD.bazel
+++ b/go/BUILD.bazel
@@ -1,2 +1,3 @@
 # Description:
+#   brotli is a pure Go implementation of Brotli decoder.
 #   cbrotli is a CGo wrapper for Brotli, a generic-purpose lossless compression algorithm.
diff --git a/go/brotli/BUILD.bazel b/go/brotli/BUILD.bazel
new file mode 100644
index 0000000..8083211
--- /dev/null
+++ b/go/brotli/BUILD.bazel
@@ -0,0 +1,30 @@
+load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
+
+package(default_visibility = ["//visibility:public"])
+
+licenses(["notice"])  # MIT
+
+go_library(
+    name = "brotli",
+    srcs = [
+        "decode.go",
+        "reader.go",
+    ],
+)
+
+go_test(
+    name = "brotli_test",
+    size = "small",
+    srcs = ["brotli_test.go"],
+    deps = [
+        ":brotli",
+        "//cbrotli",
+    ],
+)
+
+go_test(
+    name = "synth_test",
+    size = "small",
+    srcs = ["synth_test.go"],
+    deps = [":brotli"],
+)
diff --git a/go/brotli/brotli_test.go b/go/brotli/brotli_test.go
new file mode 100644
index 0000000..d53344d
--- /dev/null
+++ b/go/brotli/brotli_test.go
@@ -0,0 +1,174 @@
+// Copyright 2025 Google Inc. All Rights Reserved.
+//
+// Distributed under MIT license.
+// See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+
+package brotli_test
+
+import (
+	"bytes"
+	"fmt"
+	"io"
+	"math/rand"
+	"testing"
+
+	"google3/third_party/brotli/go/brotli/brotli"
+	"github.com/google/brotli/go/cbrotli"
+)
+
+func TestReader(t *testing.T) {
+	content := bytes.Repeat([]byte("hello world!"), 10000)
+	encoded, _ := cbrotli.Encode(content, cbrotli.WriterOptions{Quality: 5})
+	r := brotli.NewReader(bytes.NewReader(encoded))
+	var decodedOutput bytes.Buffer
+	n, err := io.Copy(&decodedOutput, r)
+	if err != nil {
+		t.Fatalf("Copy(): n=%v, err=%v", n, err)
+	}
+	if err := r.Close(); err != nil {
+		t.Errorf("Close(): %v", err)
+	}
+	if got := decodedOutput.Bytes(); !bytes.Equal(got, content) {
+		t.Errorf(""+
+			"Reader output:\n"+
+			"%q\n"+
+			"want:\n"+
+			"<%d bytes>",
+			got, len(content))
+	}
+	buf := make([]byte, 4)
+	if _, err := r.Read(buf); err == nil {
+		t.Errorf("Read-after-Close expected to return error")
+	}
+}
+
+func TestDecode(t *testing.T) {
+	content := bytes.Repeat([]byte("hello world!"), 10000)
+	encoded, _ := cbrotli.Encode(content, cbrotli.WriterOptions{Quality: 5})
+	decoded, err := brotli.Decode(encoded)
+	if err != nil {
+		t.Errorf("Decode: %v", err)
+	}
+	if !bytes.Equal(decoded, content) {
+		t.Errorf(""+
+			"Decode content:\n"+
+			"%q\n"+
+			"want:\n"+
+			"<%d bytes>",
+			decoded, len(content))
+	}
+}
+
+func TestDecodeFuzz(t *testing.T) {
+	// Test that the decoder terminates with corrupted input.
+	content := bytes.Repeat([]byte("hello world!"), 100)
+	src := rand.NewSource(0)
+	encoded, err := cbrotli.Encode(content, cbrotli.WriterOptions{Quality: 5})
+	if err != nil {
+		t.Fatalf("Encode(<%d bytes>, _) = _, %s", len(content), err)
+	}
+	if len(encoded) == 0 {
+		t.Fatalf("Encode(<%d bytes>, _) produced empty output", len(content))
+	}
+	for i := 0; i < 100; i++ {
+		enc := append([]byte{}, encoded...)
+		for j := 0; j < 5; j++ {
+			enc[int(src.Int63())%len(enc)] = byte(src.Int63() % 256)
+		}
+		brotli.Decode(enc)
+	}
+}
+
+func TestDecodeTrailingData(t *testing.T) {
+	content := bytes.Repeat([]byte("hello world!"), 100)
+	encoded, _ := cbrotli.Encode(content, cbrotli.WriterOptions{Quality: 5})
+	_, err := brotli.Decode(append(encoded, 0))
+	if err == nil {
+		t.Errorf("Expected 'excessive input' error")
+	}
+}
+
+func TestEncodeDecode(t *testing.T) {
+	for _, test := range []struct {
+		data    []byte
+		repeats int
+	}{
+		{nil, 0},
+		{[]byte("A"), 1},
+		{[]byte("<html><body><H1>Hello world</H1></body></html>"), 10},
+		{[]byte("<html><body><H1>Hello world</H1></body></html>"), 1000},
+	} {
+		t.Logf("case %q x %d", test.data, test.repeats)
+		input := bytes.Repeat(test.data, test.repeats)
+		encoded, err := cbrotli.Encode(input, cbrotli.WriterOptions{Quality: 5})
+		if err != nil {
+			t.Errorf("Encode: %v", err)
+		}
+		// Inputs are compressible, but may be too small to compress.
+		if maxSize := len(input)/2 + 20; len(encoded) >= maxSize {
+			t.Errorf(""+
+				"Encode returned %d bytes, want <%d\n"+
+				"Encoded=%q",
+				len(encoded), maxSize, encoded)
+		}
+		decoded, err := brotli.Decode(encoded)
+		if err != nil {
+			t.Errorf("Decode: %v", err)
+		}
+		if !bytes.Equal(decoded, input) {
+			var want string
+			if len(input) > 320 {
+				want = fmt.Sprintf("<%d bytes>", len(input))
+			} else {
+				want = fmt.Sprintf("%q", input)
+			}
+			t.Errorf(""+
+				"Decode content:\n"+
+				"%q\n"+
+				"want:\n"+
+				"%s",
+				decoded, want)
+		}
+	}
+}
+
+func TestEncodeDecodeWithDictionary(t *testing.T) {
+	q := 5
+	l := 4096
+
+	input := make([]byte, l)
+	for i := 0; i < l; i++ {
+		input[i] = byte(i*7 + i*i*5)
+	}
+	// use dictionary same as input
+	pd := cbrotli.NewPreparedDictionary(input, cbrotli.DtRaw, q)
+	defer pd.Close()
+
+	encoded, err := cbrotli.Encode(input, cbrotli.WriterOptions{Quality: q, Dictionary: pd})
+	if err != nil {
+		t.Errorf("Encode: %v", err)
+	}
+	limit := 20
+	if len(encoded) > limit {
+		t.Errorf("Output length exceeds expectations: %d > %d", len(encoded), limit)
+	}
+
+	decoded, err := brotli.DecodeWithRawDictionary(encoded, input)
+	if err != nil {
+		t.Errorf("Decode: %v", err)
+	}
+	if !bytes.Equal(decoded, input) {
+		var want string
+		if len(input) > 320 {
+			want = fmt.Sprintf("<%d bytes>", len(input))
+		} else {
+			want = fmt.Sprintf("%q", input)
+		}
+		t.Errorf(""+
+			"Decode content:\n"+
+			"%q\n"+
+			"want:\n"+
+			"%s",
+			decoded, want)
+	}
+}
diff --git a/go/brotli/decode.go b/go/brotli/decode.go
new file mode 100644
index 0000000..d45fdfb
--- /dev/null
+++ b/go/brotli/decode.go
@@ -0,0 +1,2117 @@
+// Copyright 2025 Google Inc. All Rights Reserved.
+//
+// Distributed under MIT license.
+// See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+
+// Package brotli implements the Brotli decompression algorithm.
+package brotli
+
+import (
+	"io"
+	"strconv"
+	"unicode/utf8"
+	"unsafe"
+)
+
+func shr32(a int32, b int32) int32 {
+	return int32(uint32(a) >> uint(b))
+}
+
+func shr64(a int64, b int32) int64 {
+	return int64(uint64(a) >> uint(b))
+}
+
+func copyBytes(dst []int8, target int32, src []int8, start int32, end int32) {
+	copy(dst[target:], src[start:end])
+}
+
+func copyBytesWithin(bytes []int8, target int32, start int32, end int32) {
+	copy(bytes[target:], bytes[start:end])
+}
+
+func toUtf8Runes(src string) []int32 {
+	n := utf8.RuneCountInString(src)
+	result := make([]int32, n)
+	i := 0
+	for _, rune := range src {
+		result[i] = int32(rune)
+		i++
+	}
+	return result
+}
+
+type _InputStream = io.Reader
+
+func readInput(s *_State, dst []int8, offset int32, length int32) int32 {
+	if s.input == nil {
+		return -1
+	}
+	// []int8 and []byte are actually the same
+	buf := unsafe.Slice((*byte)(unsafe.Pointer(&dst[offset])), length)
+	read, err := (*s.input).Read(buf)
+	if err != nil && err != io.EOF {
+		return -14 // BROTLI_ERROR_READ_FAILED
+	}
+	return int32(read)
+}
+
+// GENERATED CODE BEGIN
+
+var maxHuffmanTableSize = [...]int32{256, 402, 436, 468, 500, 534, 566, 598, 630, 662, 694, 726, 758, 790, 822, 854, 886, 920, 952, 984, 1016, 1048, 1080}
+var codeLengthCodeOrder = [...]int32{1, 2, 3, 4, 0, 5, 17, 6, 16, 7, 8, 9, 10, 11, 12, 13, 14, 15}
+var distanceShortCodeIndexOffset = [...]int32{0, 3, 2, 1, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3}
+var distanceShortCodeValueOffset = [...]int32{0, 0, 0, 0, -1, 1, -2, 2, -3, 3, -1, 1, -2, 2, -3, 3}
+var fixedTable = [...]int32{0x020000, 0x020004, 0x020003, 0x030002, 0x020000, 0x020004, 0x020003, 0x040001, 0x020000, 0x020004, 0x020003, 0x030002, 0x020000, 0x020004, 0x020003, 0x040005}
+var blockLengthOffset = [...]int32{1, 5, 9, 13, 17, 25, 33, 41, 49, 65, 81, 97, 113, 145, 177, 209, 241, 305, 369, 497, 753, 1265, 2289, 4337, 8433, 16625}
+var blockLengthNBits = [...]int32{2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 7, 8, 9, 10, 11, 12, 13, 24}
+var insertLengthNBits = [...]int16{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03, 0x04, 0x04, 0x05, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0C, 0x0E, 0x18}
+var copyLengthNBits = [...]int16{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03, 0x04, 0x04, 0x05, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x18}
+var cmdLookup = make([]int16, 2816)
+
+func log2floor(i int32) int32 {
+	var result int32 = -1
+	var step int32 = 16
+	var v int32 = i
+	for step > 0 {
+		var next int32 = v >> uint(step)
+		if next != 0 {
+			result += step
+			v = next
+		}
+		step = step >> 1
+	}
+	return result + v
+}
+
+func calculateDistanceAlphabetSize(npostfix int32, ndirect int32, maxndistbits int32) int32 {
+	return 16 + ndirect + 2*(maxndistbits<<uint(npostfix))
+}
+
+func calculateDistanceAlphabetLimit(s *_State, maxDistance int32, npostfix int32, ndirect int32) int32 {
+	if maxDistance < ndirect+(2<<uint(npostfix)) {
+		return makeError(s, -23)
+	}
+	var offset int32 = ((maxDistance - ndirect) >> uint(npostfix)) + 4
+	var ndistbits int32 = log2floor(offset) - 1
+	var group int32 = ((ndistbits - 1) << 1) | ((offset >> uint(ndistbits)) & 1)
+	return ((group - 1) << uint(npostfix)) + (1 << uint(npostfix)) + ndirect + 16
+}
+
+func unpackCommandLookupTable(cmdLookup []int16) {
+	var i int32
+	var cmdCode int32
+	var insertLengthOffsets []int32 = make([]int32, 24)
+	var copyLengthOffsets []int32 = make([]int32, 24)
+	copyLengthOffsets[0] = 2
+	for i = 0; i < 23; i++ {
+		insertLengthOffsets[i+1] = insertLengthOffsets[i] + (1 << uint(int32(insertLengthNBits[i])))
+		copyLengthOffsets[i+1] = copyLengthOffsets[i] + (1 << uint(int32(copyLengthNBits[i])))
+	}
+	for cmdCode = 0; cmdCode < 704; cmdCode++ {
+		var rangeIdx int32 = cmdCode >> 6
+		var distanceContextOffset int32 = -4
+		if rangeIdx >= 2 {
+			rangeIdx -= 2
+			distanceContextOffset = 0
+		}
+		var insertCode int32 = (((0x29850 >> uint((rangeIdx * 2))) & 0x3) << 3) | ((cmdCode >> 3) & 7)
+		var copyCode int32 = (((0x26244 >> uint((rangeIdx * 2))) & 0x3) << 3) | (cmdCode & 7)
+		var copyLengthOffset int32 = copyLengthOffsets[copyCode]
+		var distanceContext int32 = distanceContextOffset + min(copyLengthOffset, 5) - 2
+		var index int32 = cmdCode * 4
+		cmdLookup[index] = int16(int32(insertLengthNBits[insertCode]) | (int32(copyLengthNBits[copyCode]) << 8))
+		cmdLookup[index+1] = int16(insertLengthOffsets[insertCode])
+		cmdLookup[index+2] = int16(copyLengthOffsets[copyCode])
+		cmdLookup[index+3] = int16(distanceContext)
+	}
+}
+
+func decodeWindowBits(s *_State) int32 {
+	var largeWindowEnabled int32 = s.isLargeWindow
+	s.isLargeWindow = 0
+	if s.bitOffset >= 32 {
+		s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+		s.halfOffset++
+		s.bitOffset -= 32
+	}
+	if readFewBits(s, 1) == 0 {
+		return 16
+	}
+	var n int32 = readFewBits(s, 3)
+	if n != 0 {
+		return 17 + n
+	}
+	n = readFewBits(s, 3)
+	if n != 0 {
+		if n == 1 {
+			if largeWindowEnabled == 0 {
+				return -1
+			}
+			s.isLargeWindow = 1
+			if readFewBits(s, 1) == 1 {
+				return -1
+			}
+			n = readFewBits(s, 6)
+			if n < 10 || n > 30 {
+				return -1
+			}
+			return n
+		}
+		return 8 + n
+	}
+	return 17
+}
+
+func enableEagerOutput(s *_State) int32 {
+	if s.runningState != 1 {
+		return makeError(s, -24)
+	}
+	s.isEager = 1
+	return 0
+}
+
+func enableLargeWindow(s *_State) int32 {
+	if s.runningState != 1 {
+		return makeError(s, -24)
+	}
+	s.isLargeWindow = 1
+	return 0
+}
+
+func attachDictionaryChunk(s *_State, data []int8) int32 {
+	if s.runningState != 1 {
+		return makeError(s, -24)
+	}
+	if s.cdNumChunks == 0 {
+		s.cdChunks = make([][]int8, 16)
+		s.cdChunkOffsets = make([]int32, 16)
+		s.cdBlockBits = -1
+	}
+	if s.cdNumChunks == 15 {
+		return makeError(s, -27)
+	}
+	s.cdChunks[s.cdNumChunks] = data
+	s.cdNumChunks++
+	s.cdTotalSize += int32(len(data))
+	s.cdChunkOffsets[s.cdNumChunks] = s.cdTotalSize
+	return 0
+}
+
+func initState(s *_State) int32 {
+	if s.runningState != 0 {
+		return makeError(s, -26)
+	}
+	s.blockTrees = make([]int32, 3091)
+	s.blockTrees[0] = 7
+	s.distRbIdx = 3
+	var result int32 = calculateDistanceAlphabetLimit(s, 0x7FFFFFFC, 3, 120)
+	if result < 0 {
+		return result
+	}
+	var maxDistanceAlphabetLimit int32 = result
+	s.distExtraBits = make([]int8, maxDistanceAlphabetLimit)
+	s.distOffset = make([]int32, maxDistanceAlphabetLimit)
+	result = initBitReader(s)
+	if result < 0 {
+		return result
+	}
+	s.runningState = 1
+	return 0
+}
+
+func close(s *_State) int32 {
+	if s.runningState == 0 {
+		return makeError(s, -25)
+	}
+	if s.runningState > 0 {
+		s.runningState = 11
+	}
+	return 0
+}
+
+func decodeVarLenUnsignedByte(s *_State) int32 {
+	if s.bitOffset >= 32 {
+		s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+		s.halfOffset++
+		s.bitOffset -= 32
+	}
+	if readFewBits(s, 1) != 0 {
+		var n int32 = readFewBits(s, 3)
+		if n == 0 {
+			return 1
+		}
+		return readFewBits(s, n) + (1 << uint(n))
+	}
+	return 0
+}
+
+func decodeMetaBlockLength(s *_State) int32 {
+	var i int32
+	if s.bitOffset >= 32 {
+		s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+		s.halfOffset++
+		s.bitOffset -= 32
+	}
+	s.inputEnd = readFewBits(s, 1)
+	s.metaBlockLength = 0
+	s.isUncompressed = 0
+	s.isMetadata = 0
+	if (s.inputEnd != 0) && readFewBits(s, 1) != 0 {
+		return 0
+	}
+	var sizeNibbles int32 = readFewBits(s, 2) + 4
+	if sizeNibbles == 7 {
+		s.isMetadata = 1
+		if readFewBits(s, 1) != 0 {
+			return makeError(s, -6)
+		}
+		var sizeBytes int32 = readFewBits(s, 2)
+		if sizeBytes == 0 {
+			return 0
+		}
+		for i = 0; i < sizeBytes; i++ {
+			if s.bitOffset >= 32 {
+				s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+				s.halfOffset++
+				s.bitOffset -= 32
+			}
+			var bits int32 = readFewBits(s, 8)
+			if bits == 0 && i+1 == sizeBytes && sizeBytes > 1 {
+				return makeError(s, -8)
+			}
+			s.metaBlockLength += bits << uint((i * 8))
+		}
+	} else {
+		for i = 0; i < sizeNibbles; i++ {
+			if s.bitOffset >= 32 {
+				s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+				s.halfOffset++
+				s.bitOffset -= 32
+			}
+			var bits int32 = readFewBits(s, 4)
+			if bits == 0 && i+1 == sizeNibbles && sizeNibbles > 4 {
+				return makeError(s, -8)
+			}
+			s.metaBlockLength += bits << uint((i * 4))
+		}
+	}
+	s.metaBlockLength++
+	if s.inputEnd == 0 {
+		s.isUncompressed = readFewBits(s, 1)
+	}
+	return 0
+}
+
+func readSymbol(tableGroup []int32, tableIdx int32, s *_State) int32 {
+	var offset int32 = tableGroup[tableIdx]
+	var v int32 = int32(shr64(s.accumulator64, s.bitOffset))
+	offset += v & 0xFF
+	var bits int32 = tableGroup[offset] >> 16
+	var sym int32 = tableGroup[offset] & 0xFFFF
+	if bits <= 8 {
+		s.bitOffset += bits
+		return sym
+	}
+	offset += sym
+	var mask int32 = (1 << uint(bits)) - 1
+	offset += shr32(v&mask, 8)
+	s.bitOffset += (tableGroup[offset] >> 16) + 8
+	return tableGroup[offset] & 0xFFFF
+}
+
+func readBlockLength(tableGroup []int32, tableIdx int32, s *_State) int32 {
+	if s.bitOffset >= 32 {
+		s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+		s.halfOffset++
+		s.bitOffset -= 32
+	}
+	var code int32 = readSymbol(tableGroup, tableIdx, s)
+	var n int32 = blockLengthNBits[code]
+	if s.bitOffset >= 32 {
+		s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+		s.halfOffset++
+		s.bitOffset -= 32
+	}
+	return blockLengthOffset[code] + readFewBits(s, n)
+}
+
+func moveToFront(v []int32, index int32) {
+	var i int32 = index
+	var value int32 = v[i]
+	for i > 0 {
+		v[i] = v[i-1]
+		i--
+	}
+	v[0] = value
+}
+
+func inverseMoveToFrontTransform(v []int8, vLen int32) {
+	var i int32
+	var mtf []int32 = make([]int32, 256)
+	for i = 0; i < 256; i++ {
+		mtf[i] = i
+	}
+	for i = 0; i < vLen; i++ {
+		var index int32 = int32(v[i]) & 0xFF
+		v[i] = int8(mtf[index])
+		if index != 0 {
+			moveToFront(mtf, index)
+		}
+	}
+}
+
+func readHuffmanCodeLengths(codeLengthCodeLengths []int32, numSymbols int32, codeLengths []int32, s *_State) int32 {
+	var i int32
+	var fiwz int32
+	var symbol int32 = 0
+	var prevCodeLen int32 = 8
+	var repeat int32 = 0
+	var repeatCodeLen int32 = 0
+	var space int32 = 32768
+	var table []int32 = make([]int32, 33)
+	var tableIdx int32 = int32(len(table)) - 1
+	buildHuffmanTable(table, tableIdx, 5, codeLengthCodeLengths, 18)
+	for symbol < numSymbols && space > 0 {
+		if s.halfOffset > 1015 {
+			var result int32 = readMoreInput(s)
+			if result < 0 {
+				return result
+			}
+		}
+		if s.bitOffset >= 32 {
+			s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+			s.halfOffset++
+			s.bitOffset -= 32
+		}
+		var p int32 = (int32(shr64(s.accumulator64, s.bitOffset))) & 31
+		s.bitOffset += table[p] >> 16
+		var codeLen int32 = table[p] & 0xFFFF
+		if codeLen < 16 {
+			repeat = 0
+			codeLengths[symbol] = codeLen
+			symbol++
+			if codeLen != 0 {
+				prevCodeLen = codeLen
+				space -= 32768 >> uint(codeLen)
+			}
+		} else {
+			var extraBits int32 = codeLen - 14
+			var newLen int32 = 0
+			if codeLen == 16 {
+				newLen = prevCodeLen
+			}
+			if repeatCodeLen != newLen {
+				repeat = 0
+				repeatCodeLen = newLen
+			}
+			var oldRepeat int32 = repeat
+			if repeat > 0 {
+				repeat -= 2
+				repeat = repeat << uint(extraBits)
+			}
+			if s.bitOffset >= 32 {
+				s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+				s.halfOffset++
+				s.bitOffset -= 32
+			}
+			repeat += readFewBits(s, extraBits) + 3
+			var repeatDelta int32 = repeat - oldRepeat
+			if symbol+repeatDelta > numSymbols {
+				return makeError(s, -2)
+			}
+			for i = 0; i < repeatDelta; i++ {
+				codeLengths[symbol] = repeatCodeLen
+				symbol++
+			}
+			if repeatCodeLen != 0 {
+				space -= repeatDelta << uint((15 - repeatCodeLen))
+			}
+		}
+	}
+	if space != 0 {
+		return makeError(s, -18)
+	}
+	for fiwz = symbol; fiwz < numSymbols; fiwz++ {
+		codeLengths[fiwz] = 0
+	}
+	return 0
+}
+
+func checkDupes(s *_State, symbols []int32, length int32) int32 {
+	var i int32
+	var j int32
+	for i = 0; i < length-1; i++ {
+		for j = i + 1; j < length; j++ {
+			if symbols[i] == symbols[j] {
+				return makeError(s, -7)
+			}
+		}
+	}
+	return 0
+}
+
+func readSimpleHuffmanCode(alphabetSizeMax int32, alphabetSizeLimit int32, tableGroup []int32, tableIdx int32, s *_State) int32 {
+	var i int32
+	var codeLengths []int32 = make([]int32, alphabetSizeLimit)
+	var symbols []int32 = make([]int32, 4)
+	var maxBits int32 = 1 + log2floor(alphabetSizeMax-1)
+	var numSymbols int32 = readFewBits(s, 2) + 1
+	for i = 0; i < numSymbols; i++ {
+		if s.bitOffset >= 32 {
+			s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+			s.halfOffset++
+			s.bitOffset -= 32
+		}
+		var symbol int32 = readFewBits(s, maxBits)
+		if symbol >= alphabetSizeLimit {
+			return makeError(s, -15)
+		}
+		symbols[i] = symbol
+	}
+	var result int32 = checkDupes(s, symbols, numSymbols)
+	if result < 0 {
+		return result
+	}
+	var histogramID int32 = numSymbols
+	if numSymbols == 4 {
+		histogramID += readFewBits(s, 1)
+	}
+	switch histogramID {
+	case 1:
+		codeLengths[symbols[0]] = 1
+		break
+	case 2:
+		codeLengths[symbols[0]] = 1
+		codeLengths[symbols[1]] = 1
+		break
+	case 3:
+		codeLengths[symbols[0]] = 1
+		codeLengths[symbols[1]] = 2
+		codeLengths[symbols[2]] = 2
+		break
+	case 4:
+		codeLengths[symbols[0]] = 2
+		codeLengths[symbols[1]] = 2
+		codeLengths[symbols[2]] = 2
+		codeLengths[symbols[3]] = 2
+		break
+	case 5:
+		codeLengths[symbols[0]] = 1
+		codeLengths[symbols[1]] = 2
+		codeLengths[symbols[2]] = 3
+		codeLengths[symbols[3]] = 3
+		break
+	default:
+		break
+	}
+	return buildHuffmanTable(tableGroup, tableIdx, 8, codeLengths, alphabetSizeLimit)
+}
+
+func readComplexHuffmanCode(alphabetSizeLimit int32, skip int32, tableGroup []int32, tableIdx int32, s *_State) int32 {
+	var i int32
+	var codeLengths []int32 = make([]int32, alphabetSizeLimit)
+	var codeLengthCodeLengths []int32 = make([]int32, 18)
+	var space int32 = 32
+	var numCodes int32 = 0
+	for i = skip; i < 18; i++ {
+		var codeLenIdx int32 = codeLengthCodeOrder[i]
+		if s.bitOffset >= 32 {
+			s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+			s.halfOffset++
+			s.bitOffset -= 32
+		}
+		var p int32 = (int32(shr64(s.accumulator64, s.bitOffset))) & 15
+		s.bitOffset += fixedTable[p] >> 16
+		var v int32 = fixedTable[p] & 0xFFFF
+		codeLengthCodeLengths[codeLenIdx] = v
+		if v != 0 {
+			space -= 32 >> uint(v)
+			numCodes++
+			if space <= 0 {
+				break
+			}
+		}
+	}
+	if space != 0 && numCodes != 1 {
+		return makeError(s, -4)
+	}
+	var result int32 = readHuffmanCodeLengths(codeLengthCodeLengths, alphabetSizeLimit, codeLengths, s)
+	if result < 0 {
+		return result
+	}
+	return buildHuffmanTable(tableGroup, tableIdx, 8, codeLengths, alphabetSizeLimit)
+}
+
+func readHuffmanCode(alphabetSizeMax int32, alphabetSizeLimit int32, tableGroup []int32, tableIdx int32, s *_State) int32 {
+	if s.halfOffset > 1015 {
+		var result int32 = readMoreInput(s)
+		if result < 0 {
+			return result
+		}
+	}
+	if s.bitOffset >= 32 {
+		s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+		s.halfOffset++
+		s.bitOffset -= 32
+	}
+	var simpleCodeOrSkip int32 = readFewBits(s, 2)
+	if simpleCodeOrSkip == 1 {
+		return readSimpleHuffmanCode(alphabetSizeMax, alphabetSizeLimit, tableGroup, tableIdx, s)
+	}
+	return readComplexHuffmanCode(alphabetSizeLimit, simpleCodeOrSkip, tableGroup, tableIdx, s)
+}
+
+func decodeContextMap(contextMapSize int32, contextMap []int8, s *_State) int32 {
+	var fbwz int32
+	var result int32
+	if s.halfOffset > 1015 {
+		result = readMoreInput(s)
+		if result < 0 {
+			return result
+		}
+	}
+	var numTrees int32 = decodeVarLenUnsignedByte(s) + 1
+	if numTrees == 1 {
+		for fbwz = 0; fbwz < contextMapSize; fbwz++ {
+			contextMap[fbwz] = 0
+		}
+		return numTrees
+	}
+	if s.bitOffset >= 32 {
+		s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+		s.halfOffset++
+		s.bitOffset -= 32
+	}
+	var useRleForZeros int32 = readFewBits(s, 1)
+	var maxRunLengthPrefix int32 = 0
+	if useRleForZeros != 0 {
+		maxRunLengthPrefix = readFewBits(s, 4) + 1
+	}
+	var alphabetSize int32 = numTrees + maxRunLengthPrefix
+	var tableSize int32 = maxHuffmanTableSize[(alphabetSize+31)>>5]
+	var table []int32 = make([]int32, tableSize+1)
+	var tableIdx int32 = int32(len(table)) - 1
+	result = readHuffmanCode(alphabetSize, alphabetSize, table, tableIdx, s)
+	if result < 0 {
+		return result
+	}
+	var i int32 = 0
+	for i < contextMapSize {
+		if s.halfOffset > 1015 {
+			result = readMoreInput(s)
+			if result < 0 {
+				return result
+			}
+		}
+		if s.bitOffset >= 32 {
+			s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+			s.halfOffset++
+			s.bitOffset -= 32
+		}
+		var code int32 = readSymbol(table, tableIdx, s)
+		if code == 0 {
+			contextMap[i] = 0
+			i++
+		} else if code <= maxRunLengthPrefix {
+			if s.bitOffset >= 32 {
+				s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+				s.halfOffset++
+				s.bitOffset -= 32
+			}
+			var reps int32 = (1 << uint(code)) + readFewBits(s, code)
+			for reps != 0 {
+				if i >= contextMapSize {
+					return makeError(s, -3)
+				}
+				contextMap[i] = 0
+				i++
+				reps--
+			}
+		} else {
+			contextMap[i] = int8(code - maxRunLengthPrefix)
+			i++
+		}
+	}
+	if s.bitOffset >= 32 {
+		s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+		s.halfOffset++
+		s.bitOffset -= 32
+	}
+	if readFewBits(s, 1) == 1 {
+		inverseMoveToFrontTransform(contextMap, contextMapSize)
+	}
+	return numTrees
+}
+
+func decodeBlockTypeAndLength(s *_State, treeType int32, numBlockTypes int32) int32 {
+	var ringBuffers []int32 = s.rings
+	var offset int32 = 4 + treeType*2
+	if s.bitOffset >= 32 {
+		s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+		s.halfOffset++
+		s.bitOffset -= 32
+	}
+	var blockType int32 = readSymbol(s.blockTrees, 2*treeType, s)
+	var result int32 = readBlockLength(s.blockTrees, 2*treeType+1, s)
+	if blockType == 1 {
+		blockType = ringBuffers[offset+1] + 1
+	} else if blockType == 0 {
+		blockType = ringBuffers[offset]
+	} else {
+		blockType -= 2
+	}
+	if blockType >= numBlockTypes {
+		blockType -= numBlockTypes
+	}
+	ringBuffers[offset] = ringBuffers[offset+1]
+	ringBuffers[offset+1] = blockType
+	return result
+}
+
+func decodeLiteralBlockSwitch(s *_State) {
+	s.literalBlockLength = decodeBlockTypeAndLength(s, 0, s.numLiteralBlockTypes)
+	var literalBlockType int32 = s.rings[5]
+	s.contextMapSlice = literalBlockType << 6
+	s.literalTreeIdx = int32(s.contextMap[s.contextMapSlice]) & 0xFF
+	var contextMode int32 = int32(s.contextModes[literalBlockType])
+	s.contextLookupOffset1 = contextMode << 9
+	s.contextLookupOffset2 = s.contextLookupOffset1 + 256
+}
+
+func decodeCommandBlockSwitch(s *_State) {
+	s.commandBlockLength = decodeBlockTypeAndLength(s, 1, s.numCommandBlockTypes)
+	s.commandTreeIdx = s.rings[7]
+}
+
+func decodeDistanceBlockSwitch(s *_State) {
+	s.distanceBlockLength = decodeBlockTypeAndLength(s, 2, s.numDistanceBlockTypes)
+	s.distContextMapSlice = s.rings[9] << 2
+}
+
+func maybeReallocateRingBuffer(s *_State) {
+	var newSize int32 = s.maxRingBufferSize
+	if newSize > s.expectedTotalSize {
+		var minimalNewSize int32 = s.expectedTotalSize
+		for (newSize >> 1) > minimalNewSize {
+			newSize = newSize >> 1
+		}
+		if (s.inputEnd == 0) && newSize < 16384 && s.maxRingBufferSize >= 16384 {
+			newSize = 16384
+		}
+	}
+	if newSize <= s.ringBufferSize {
+		return
+	}
+	var ringBufferSizeWithSlack int32 = newSize + 37
+	var newBuffer []int8 = make([]int8, ringBufferSizeWithSlack)
+	var oldBuffer []int8 = s.ringBuffer
+	if int32(len(oldBuffer)) != 0 {
+		copyBytes(newBuffer, 0, oldBuffer, 0, s.ringBufferSize)
+	}
+	s.ringBuffer = newBuffer
+	s.ringBufferSize = newSize
+}
+
+func readNextMetablockHeader(s *_State) int32 {
+	if s.inputEnd != 0 {
+		s.nextRunningState = 10
+		s.runningState = 12
+		return 0
+	}
+	s.literalTreeGroup = make([]int32, 0)
+	s.commandTreeGroup = make([]int32, 0)
+	s.distanceTreeGroup = make([]int32, 0)
+	var result int32
+	if s.halfOffset > 1015 {
+		result = readMoreInput(s)
+		if result < 0 {
+			return result
+		}
+	}
+	result = decodeMetaBlockLength(s)
+	if result < 0 {
+		return result
+	}
+	if (s.metaBlockLength == 0) && (s.isMetadata == 0) {
+		return 0
+	}
+	if (s.isUncompressed != 0) || (s.isMetadata != 0) {
+		result = jumpToByteBoundary(s)
+		if result < 0 {
+			return result
+		}
+		if s.isMetadata == 0 {
+			s.runningState = 6
+		} else {
+			s.runningState = 5
+		}
+	} else {
+		s.runningState = 3
+	}
+	if s.isMetadata != 0 {
+		return 0
+	}
+	s.expectedTotalSize += s.metaBlockLength
+	if s.expectedTotalSize > 1<<30 {
+		s.expectedTotalSize = 1 << 30
+	}
+	if s.ringBufferSize < s.maxRingBufferSize {
+		maybeReallocateRingBuffer(s)
+	}
+	return 0
+}
+
+func readMetablockPartition(s *_State, treeType int32, numBlockTypes int32) int32 {
+	var offset int32 = s.blockTrees[2*treeType]
+	if numBlockTypes <= 1 {
+		s.blockTrees[2*treeType+1] = offset
+		s.blockTrees[2*treeType+2] = offset
+		return 1 << 28
+	}
+	var blockTypeAlphabetSize int32 = numBlockTypes + 2
+	var result int32 = readHuffmanCode(blockTypeAlphabetSize, blockTypeAlphabetSize, s.blockTrees, 2*treeType, s)
+	if result < 0 {
+		return result
+	}
+	offset += result
+	s.blockTrees[2*treeType+1] = offset
+	var blockLengthAlphabetSize int32 = 26
+	result = readHuffmanCode(blockLengthAlphabetSize, blockLengthAlphabetSize, s.blockTrees, 2*treeType+1, s)
+	if result < 0 {
+		return result
+	}
+	offset += result
+	s.blockTrees[2*treeType+2] = offset
+	return readBlockLength(s.blockTrees, 2*treeType+1, s)
+}
+
+func calculateDistanceLut(s *_State, alphabetSizeLimit int32) {
+	var j int32
+	var distExtraBits []int8 = s.distExtraBits
+	var distOffset []int32 = s.distOffset
+	var npostfix int32 = s.distancePostfixBits
+	var ndirect int32 = s.numDirectDistanceCodes
+	var postfix int32 = 1 << uint(npostfix)
+	var bits int32 = 1
+	var half int32 = 0
+	var i int32 = 16
+	for j = 0; j < ndirect; j++ {
+		distExtraBits[i] = 0
+		distOffset[i] = j + 1
+		i++
+	}
+	for i < alphabetSizeLimit {
+		var base int32 = ndirect + ((((2 + half) << uint(bits)) - 4) << uint(npostfix)) + 1
+		for j = 0; j < postfix; j++ {
+			distExtraBits[i] = int8(bits)
+			distOffset[i] = base + j
+			i++
+		}
+		bits = bits + half
+		half = half ^ 1
+	}
+}
+
+func readMetablockHuffmanCodesAndContextMaps(s *_State) int32 {
+	var j int32
+	s.numLiteralBlockTypes = decodeVarLenUnsignedByte(s) + 1
+	var result int32 = readMetablockPartition(s, 0, s.numLiteralBlockTypes)
+	if result < 0 {
+		return result
+	}
+	s.literalBlockLength = result
+	s.numCommandBlockTypes = decodeVarLenUnsignedByte(s) + 1
+	result = readMetablockPartition(s, 1, s.numCommandBlockTypes)
+	if result < 0 {
+		return result
+	}
+	s.commandBlockLength = result
+	s.numDistanceBlockTypes = decodeVarLenUnsignedByte(s) + 1
+	result = readMetablockPartition(s, 2, s.numDistanceBlockTypes)
+	if result < 0 {
+		return result
+	}
+	s.distanceBlockLength = result
+	if s.halfOffset > 1015 {
+		result = readMoreInput(s)
+		if result < 0 {
+			return result
+		}
+	}
+	if s.bitOffset >= 32 {
+		s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+		s.halfOffset++
+		s.bitOffset -= 32
+	}
+	s.distancePostfixBits = readFewBits(s, 2)
+	s.numDirectDistanceCodes = readFewBits(s, 4) << uint(s.distancePostfixBits)
+	s.contextModes = make([]int8, s.numLiteralBlockTypes)
+	var i int32 = 0
+	for i < s.numLiteralBlockTypes {
+		var limit int32 = min(i+96, s.numLiteralBlockTypes)
+		for i < limit {
+			if s.bitOffset >= 32 {
+				s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+				s.halfOffset++
+				s.bitOffset -= 32
+			}
+			s.contextModes[i] = int8(readFewBits(s, 2))
+			i++
+		}
+		if s.halfOffset > 1015 {
+			result = readMoreInput(s)
+			if result < 0 {
+				return result
+			}
+		}
+	}
+	var contextMapLength int32 = s.numLiteralBlockTypes << 6
+	s.contextMap = make([]int8, contextMapLength)
+	result = decodeContextMap(contextMapLength, s.contextMap, s)
+	if result < 0 {
+		return result
+	}
+	var numLiteralTrees int32 = result
+	s.trivialLiteralContext = 1
+	for j = 0; j < contextMapLength; j++ {
+		if int32(s.contextMap[j]) != j>>6 {
+			s.trivialLiteralContext = 0
+			break
+		}
+	}
+	s.distContextMap = make([]int8, s.numDistanceBlockTypes<<2)
+	result = decodeContextMap(s.numDistanceBlockTypes<<2, s.distContextMap, s)
+	if result < 0 {
+		return result
+	}
+	var numDistTrees int32 = result
+	s.literalTreeGroup = make([]int32, huffmanTreeGroupAllocSize(256, numLiteralTrees))
+	result = decodeHuffmanTreeGroup(256, 256, numLiteralTrees, s, s.literalTreeGroup)
+	if result < 0 {
+		return result
+	}
+	s.commandTreeGroup = make([]int32, huffmanTreeGroupAllocSize(704, s.numCommandBlockTypes))
+	result = decodeHuffmanTreeGroup(704, 704, s.numCommandBlockTypes, s, s.commandTreeGroup)
+	if result < 0 {
+		return result
+	}
+	var distanceAlphabetSizeMax int32 = calculateDistanceAlphabetSize(s.distancePostfixBits, s.numDirectDistanceCodes, 24)
+	var distanceAlphabetSizeLimit int32 = distanceAlphabetSizeMax
+	if s.isLargeWindow == 1 {
+		distanceAlphabetSizeMax = calculateDistanceAlphabetSize(s.distancePostfixBits, s.numDirectDistanceCodes, 62)
+		result = calculateDistanceAlphabetLimit(s, 0x7FFFFFFC, s.distancePostfixBits, s.numDirectDistanceCodes)
+		if result < 0 {
+			return result
+		}
+		distanceAlphabetSizeLimit = result
+	}
+	s.distanceTreeGroup = make([]int32, huffmanTreeGroupAllocSize(distanceAlphabetSizeLimit, numDistTrees))
+	result = decodeHuffmanTreeGroup(distanceAlphabetSizeMax, distanceAlphabetSizeLimit, numDistTrees, s, s.distanceTreeGroup)
+	if result < 0 {
+		return result
+	}
+	calculateDistanceLut(s, distanceAlphabetSizeLimit)
+	s.contextMapSlice = 0
+	s.distContextMapSlice = 0
+	s.contextLookupOffset1 = int32(s.contextModes[0]) * 512
+	s.contextLookupOffset2 = s.contextLookupOffset1 + 256
+	s.literalTreeIdx = 0
+	s.commandTreeIdx = 0
+	s.rings[4] = 1
+	s.rings[5] = 0
+	s.rings[6] = 1
+	s.rings[7] = 0
+	s.rings[8] = 1
+	s.rings[9] = 0
+	return 0
+}
+
+func copyUncompressedData(s *_State) int32 {
+	var ringBuffer []int8 = s.ringBuffer
+	var result int32
+	if s.metaBlockLength <= 0 {
+		result = reload(s)
+		if result < 0 {
+			return result
+		}
+		s.runningState = 2
+		return 0
+	}
+	var chunkLength int32 = min(s.ringBufferSize-s.pos, s.metaBlockLength)
+	result = copyRawBytes(s, ringBuffer, s.pos, chunkLength)
+	if result < 0 {
+		return result
+	}
+	s.metaBlockLength -= chunkLength
+	s.pos += chunkLength
+	if s.pos == s.ringBufferSize {
+		s.nextRunningState = 6
+		s.runningState = 12
+		return 0
+	}
+	result = reload(s)
+	if result < 0 {
+		return result
+	}
+	s.runningState = 2
+	return 0
+}
+
+func writeRingBuffer(s *_State) int32 {
+	var toWrite int32 = min(s.outputLength-s.outputUsed, s.ringBufferBytesReady-s.ringBufferBytesWritten)
+	if toWrite != 0 {
+		copyBytes(s.output, s.outputOffset+s.outputUsed, s.ringBuffer, s.ringBufferBytesWritten, s.ringBufferBytesWritten+toWrite)
+		s.outputUsed += toWrite
+		s.ringBufferBytesWritten += toWrite
+	}
+	if s.outputUsed < s.outputLength {
+		return 0
+	}
+	return 2
+}
+
+func huffmanTreeGroupAllocSize(alphabetSizeLimit int32, n int32) int32 {
+	var maxTableSize int32 = maxHuffmanTableSize[(alphabetSizeLimit+31)>>5]
+	return n + n*maxTableSize
+}
+
+func decodeHuffmanTreeGroup(alphabetSizeMax int32, alphabetSizeLimit int32, n int32, s *_State, group []int32) int32 {
+	var i int32
+	var next int32 = n
+	for i = 0; i < n; i++ {
+		group[i] = next
+		var result int32 = readHuffmanCode(alphabetSizeMax, alphabetSizeLimit, group, i, s)
+		if result < 0 {
+			return result
+		}
+		next += result
+	}
+	return 0
+}
+
+func calculateFence(s *_State) int32 {
+	var result int32 = s.ringBufferSize
+	if s.isEager != 0 {
+		result = min(result, s.ringBufferBytesWritten+s.outputLength-s.outputUsed)
+	}
+	return result
+}
+
+func doUseDictionary(s *_State, fence int32) int32 {
+	if s.distance > 0x7FFFFFFC {
+		return makeError(s, -9)
+	}
+	var address int32 = s.distance - s.maxDistance - 1 - s.cdTotalSize
+	if address < 0 {
+		var result int32 = initializeCompoundDictionaryCopy(s, -address-1, s.copyLength)
+		if result < 0 {
+			return result
+		}
+		s.runningState = 14
+	} else {
+		var dictionaryData []int8 = data
+		var wordLength int32 = s.copyLength
+		if wordLength > 31 {
+			return makeError(s, -9)
+		}
+		var shift int32 = sizeBits[wordLength]
+		if shift == 0 {
+			return makeError(s, -9)
+		}
+		var offset int32 = offsets[wordLength]
+		var mask int32 = (1 << uint(shift)) - 1
+		var wordIdx int32 = address & mask
+		var transformIdx int32 = address >> uint(shift)
+		offset += wordIdx * wordLength
+		var transforms *_Transforms = rfcTransforms
+		if transformIdx >= transforms.numTransforms {
+			return makeError(s, -9)
+		}
+		var len int32 = transformDictionaryWord(s.ringBuffer, s.pos, dictionaryData, offset, wordLength, transforms, transformIdx)
+		s.pos += len
+		s.metaBlockLength -= len
+		if s.pos >= fence {
+			s.nextRunningState = 4
+			s.runningState = 12
+			return 0
+		}
+		s.runningState = 4
+	}
+	return 0
+}
+
+func initializeCompoundDictionary(s *_State) {
+	s.cdBlockMap = make([]int8, 256)
+	var blockBits int32 = 8
+	for ((s.cdTotalSize - 1) >> uint(blockBits)) != 0 {
+		blockBits++
+	}
+	blockBits -= 8
+	s.cdBlockBits = blockBits
+	var cursor int32 = 0
+	var index int32 = 0
+	for cursor < s.cdTotalSize {
+		for s.cdChunkOffsets[index+1] < cursor {
+			index++
+		}
+		s.cdBlockMap[cursor>>uint(blockBits)] = int8(index)
+		cursor += 1 << uint(blockBits)
+	}
+}
+
+func initializeCompoundDictionaryCopy(s *_State, address int32, length int32) int32 {
+	if s.cdBlockBits == -1 {
+		initializeCompoundDictionary(s)
+	}
+	var index int32 = int32(s.cdBlockMap[address>>uint(s.cdBlockBits)])
+	for address >= s.cdChunkOffsets[index+1] {
+		index++
+	}
+	if s.cdTotalSize > address+length {
+		return makeError(s, -9)
+	}
+	s.distRbIdx = (s.distRbIdx + 1) & 0x3
+	s.rings[s.distRbIdx] = s.distance
+	s.metaBlockLength -= length
+	s.cdBrIndex = index
+	s.cdBrOffset = address - s.cdChunkOffsets[index]
+	s.cdBrLength = length
+	s.cdBrCopied = 0
+	return 0
+}
+
+func copyFromCompoundDictionary(s *_State, fence int32) int32 {
+	var pos int32 = s.pos
+	var origPos int32 = pos
+	for s.cdBrLength != s.cdBrCopied {
+		var space int32 = fence - pos
+		var chunkLength int32 = s.cdChunkOffsets[s.cdBrIndex+1] - s.cdChunkOffsets[s.cdBrIndex]
+		var remChunkLength int32 = chunkLength - s.cdBrOffset
+		var length int32 = s.cdBrLength - s.cdBrCopied
+		if length > remChunkLength {
+			length = remChunkLength
+		}
+		if length > space {
+			length = space
+		}
+		copyBytes(s.ringBuffer, pos, s.cdChunks[s.cdBrIndex], s.cdBrOffset, s.cdBrOffset+length)
+		pos += length
+		s.cdBrOffset += length
+		s.cdBrCopied += length
+		if length == remChunkLength {
+			s.cdBrIndex++
+			s.cdBrOffset = 0
+		}
+		if pos >= fence {
+			break
+		}
+	}
+	return pos - origPos
+}
+
+func decompress(s *_State) int32 {
+	var k int32
+	var result int32
+	if s.runningState == 0 {
+		return makeError(s, -25)
+	}
+	if s.runningState < 0 {
+		return makeError(s, -28)
+	}
+	if s.runningState == 11 {
+		return makeError(s, -22)
+	}
+	if s.runningState == 1 {
+		var windowBits int32 = decodeWindowBits(s)
+		if windowBits == -1 {
+			return makeError(s, -11)
+		}
+		s.maxRingBufferSize = 1 << uint(windowBits)
+		s.maxBackwardDistance = s.maxRingBufferSize - 16
+		s.runningState = 2
+	}
+	var fence int32 = calculateFence(s)
+	var ringBufferMask int32 = s.ringBufferSize - 1
+	var ringBuffer []int8 = s.ringBuffer
+	for s.runningState != 10 {
+		switch s.runningState {
+		case 2:
+			if s.metaBlockLength < 0 {
+				return makeError(s, -10)
+			}
+			result = readNextMetablockHeader(s)
+			if result < 0 {
+				return result
+			}
+			fence = calculateFence(s)
+			ringBufferMask = s.ringBufferSize - 1
+			ringBuffer = s.ringBuffer
+			continue
+		case 3:
+			result = readMetablockHuffmanCodesAndContextMaps(s)
+			if result < 0 {
+				return result
+			}
+			s.runningState = 4
+			continue
+		case 4:
+			if s.metaBlockLength <= 0 {
+				s.runningState = 2
+				continue
+			}
+			if s.halfOffset > 1015 {
+				result = readMoreInput(s)
+				if result < 0 {
+					return result
+				}
+			}
+			if s.commandBlockLength == 0 {
+				decodeCommandBlockSwitch(s)
+			}
+			s.commandBlockLength--
+			if s.bitOffset >= 32 {
+				s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+				s.halfOffset++
+				s.bitOffset -= 32
+			}
+			var cmdCode int32 = readSymbol(s.commandTreeGroup, s.commandTreeIdx, s) << 2
+			var insertAndCopyExtraBits int32 = int32(cmdLookup[cmdCode])
+			var insertLengthOffset int32 = int32(cmdLookup[cmdCode+1])
+			var copyLengthOffset int32 = int32(cmdLookup[cmdCode+2])
+			s.distanceCode = int32(cmdLookup[cmdCode+3])
+			if s.bitOffset >= 32 {
+				s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+				s.halfOffset++
+				s.bitOffset -= 32
+			}
+			var insertLengthExtraBits int32 = insertAndCopyExtraBits & 0xFF
+			s.insertLength = insertLengthOffset + readFewBits(s, insertLengthExtraBits)
+			if s.bitOffset >= 32 {
+				s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+				s.halfOffset++
+				s.bitOffset -= 32
+			}
+			var copyLengthExtraBits int32 = insertAndCopyExtraBits >> 8
+			s.copyLength = copyLengthOffset + readFewBits(s, copyLengthExtraBits)
+			s.j = 0
+			s.runningState = 7
+			continue
+		case 7:
+			if s.trivialLiteralContext != 0 {
+				for s.j < s.insertLength {
+					if s.halfOffset > 1015 {
+						result = readMoreInput(s)
+						if result < 0 {
+							return result
+						}
+					}
+					if s.literalBlockLength == 0 {
+						decodeLiteralBlockSwitch(s)
+					}
+					s.literalBlockLength--
+					if s.bitOffset >= 32 {
+						s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+						s.halfOffset++
+						s.bitOffset -= 32
+					}
+					ringBuffer[s.pos] = int8(readSymbol(s.literalTreeGroup, s.literalTreeIdx, s))
+					s.pos++
+					s.j++
+					if s.pos >= fence {
+						s.nextRunningState = 7
+						s.runningState = 12
+						break
+					}
+				}
+			} else {
+				var prevByte1 int32 = int32(ringBuffer[(s.pos-1)&ringBufferMask]) & 0xFF
+				var prevByte2 int32 = int32(ringBuffer[(s.pos-2)&ringBufferMask]) & 0xFF
+				for s.j < s.insertLength {
+					if s.halfOffset > 1015 {
+						result = readMoreInput(s)
+						if result < 0 {
+							return result
+						}
+					}
+					if s.literalBlockLength == 0 {
+						decodeLiteralBlockSwitch(s)
+					}
+					var literalContext int32 = lookup[s.contextLookupOffset1+prevByte1] | lookup[s.contextLookupOffset2+prevByte2]
+					var literalTreeIdx int32 = int32(s.contextMap[s.contextMapSlice+literalContext]) & 0xFF
+					s.literalBlockLength--
+					prevByte2 = prevByte1
+					if s.bitOffset >= 32 {
+						s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+						s.halfOffset++
+						s.bitOffset -= 32
+					}
+					prevByte1 = readSymbol(s.literalTreeGroup, literalTreeIdx, s)
+					ringBuffer[s.pos] = int8(prevByte1)
+					s.pos++
+					s.j++
+					if s.pos >= fence {
+						s.nextRunningState = 7
+						s.runningState = 12
+						break
+					}
+				}
+			}
+			if s.runningState != 7 {
+				continue
+			}
+			s.metaBlockLength -= s.insertLength
+			if s.metaBlockLength <= 0 {
+				s.runningState = 4
+				continue
+			}
+			var distanceCode int32 = s.distanceCode
+			if distanceCode < 0 {
+				s.distance = s.rings[s.distRbIdx]
+			} else {
+				if s.halfOffset > 1015 {
+					result = readMoreInput(s)
+					if result < 0 {
+						return result
+					}
+				}
+				if s.distanceBlockLength == 0 {
+					decodeDistanceBlockSwitch(s)
+				}
+				s.distanceBlockLength--
+				if s.bitOffset >= 32 {
+					s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+					s.halfOffset++
+					s.bitOffset -= 32
+				}
+				var distTreeIdx int32 = int32(s.distContextMap[s.distContextMapSlice+distanceCode]) & 0xFF
+				distanceCode = readSymbol(s.distanceTreeGroup, distTreeIdx, s)
+				if distanceCode < 16 {
+					var index int32 = (s.distRbIdx + distanceShortCodeIndexOffset[distanceCode]) & 0x3
+					s.distance = s.rings[index] + distanceShortCodeValueOffset[distanceCode]
+					if s.distance < 0 {
+						return makeError(s, -12)
+					}
+				} else {
+					var extraBits int32 = int32(s.distExtraBits[distanceCode])
+					var bits int32
+					if s.bitOffset+extraBits <= 64 {
+						bits = readFewBits(s, extraBits)
+					} else {
+						if s.bitOffset >= 32 {
+							s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+							s.halfOffset++
+							s.bitOffset -= 32
+						}
+						bits = readFewBits(s, extraBits)
+					}
+					s.distance = s.distOffset[distanceCode] + (bits << uint(s.distancePostfixBits))
+				}
+			}
+			if s.maxDistance != s.maxBackwardDistance && s.pos < s.maxBackwardDistance {
+				s.maxDistance = s.pos
+			} else {
+				s.maxDistance = s.maxBackwardDistance
+			}
+			if s.distance > s.maxDistance {
+				s.runningState = 9
+				continue
+			}
+			if distanceCode > 0 {
+				s.distRbIdx = (s.distRbIdx + 1) & 0x3
+				s.rings[s.distRbIdx] = s.distance
+			}
+			if s.copyLength > s.metaBlockLength {
+				return makeError(s, -9)
+			}
+			s.j = 0
+			s.runningState = 8
+			continue
+		case 8:
+			var src int32 = (s.pos - s.distance) & ringBufferMask
+			var dst int32 = s.pos
+			var copyLength int32 = s.copyLength - s.j
+			var srcEnd int32 = src + copyLength
+			var dstEnd int32 = dst + copyLength
+			if (srcEnd < ringBufferMask) && (dstEnd < ringBufferMask) {
+				if copyLength < 12 || (srcEnd > dst && dstEnd > src) {
+					var numQuads int32 = (copyLength + 3) >> 2
+					for k = 0; k < numQuads; k++ {
+						ringBuffer[dst] = ringBuffer[src]
+						src++
+						dst++
+						ringBuffer[dst] = ringBuffer[src]
+						src++
+						dst++
+						ringBuffer[dst] = ringBuffer[src]
+						src++
+						dst++
+						ringBuffer[dst] = ringBuffer[src]
+						src++
+						dst++
+					}
+				} else {
+					copyBytesWithin(ringBuffer, dst, src, srcEnd)
+				}
+				s.j += copyLength
+				s.metaBlockLength -= copyLength
+				s.pos += copyLength
+			} else {
+				for s.j < s.copyLength {
+					ringBuffer[s.pos] = ringBuffer[(s.pos-s.distance)&ringBufferMask]
+					s.metaBlockLength--
+					s.pos++
+					s.j++
+					if s.pos >= fence {
+						s.nextRunningState = 8
+						s.runningState = 12
+						break
+					}
+				}
+			}
+			if s.runningState == 8 {
+				s.runningState = 4
+			}
+			continue
+		case 9:
+			result = doUseDictionary(s, fence)
+			if result < 0 {
+				return result
+			}
+			continue
+		case 14:
+			s.pos += copyFromCompoundDictionary(s, fence)
+			if s.pos >= fence {
+				s.nextRunningState = 14
+				s.runningState = 12
+				return 2
+			}
+			s.runningState = 4
+			continue
+		case 5:
+			for s.metaBlockLength > 0 {
+				if s.halfOffset > 1015 {
+					result = readMoreInput(s)
+					if result < 0 {
+						return result
+					}
+				}
+				if s.bitOffset >= 32 {
+					s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+					s.halfOffset++
+					s.bitOffset -= 32
+				}
+				readFewBits(s, 8)
+				s.metaBlockLength--
+			}
+			s.runningState = 2
+			continue
+		case 6:
+			result = copyUncompressedData(s)
+			if result < 0 {
+				return result
+			}
+			continue
+		case 12:
+			s.ringBufferBytesReady = min(s.pos, s.ringBufferSize)
+			s.runningState = 13
+			continue
+		case 13:
+			result = writeRingBuffer(s)
+			if result != 0 {
+				return result
+			}
+			if s.pos >= s.maxBackwardDistance {
+				s.maxDistance = s.maxBackwardDistance
+			}
+			if s.pos >= s.ringBufferSize {
+				if s.pos > s.ringBufferSize {
+					copyBytesWithin(ringBuffer, 0, s.ringBufferSize, s.pos)
+				}
+				s.pos = s.pos & ringBufferMask
+				s.ringBufferBytesWritten = 0
+			}
+			s.runningState = s.nextRunningState
+			continue
+		default:
+			return makeError(s, -28)
+		}
+	}
+	if s.runningState != 10 {
+		return makeError(s, -29)
+	}
+	if s.metaBlockLength < 0 {
+		return makeError(s, -10)
+	}
+	result = jumpToByteBoundary(s)
+	if result != 0 {
+		return result
+	}
+	result = checkHealth(s, 1)
+	if result != 0 {
+		return result
+	}
+	return 1
+}
+
+func init() {
+	unpackCommandLookupTable(cmdLookup)
+}
+
+type _Transforms struct {
+	numTransforms       int32
+	triplets            []int32
+	prefixSuffixStorage []int8
+	prefixSuffixHeads   []int32
+	params              []int16
+}
+
+func makeTransforms(numTransforms int32, prefixSuffixLen int32, prefixSuffixCount int32) *_Transforms {
+	this := &_Transforms{}
+	this.numTransforms = numTransforms
+	this.triplets = make([]int32, numTransforms*3)
+	this.params = make([]int16, numTransforms)
+	this.prefixSuffixStorage = make([]int8, prefixSuffixLen)
+	this.prefixSuffixHeads = make([]int32, prefixSuffixCount+1)
+	return this
+}
+
+var rfcTransforms = makeTransforms(121, 167, 50)
+
+func unpackTransforms(prefixSuffix []int8, prefixSuffixHeads []int32, transforms []int32, prefixSuffixSrc string, transformsSrc string) {
+	var i int32
+	var prefixSuffixBytes []int32 = toUtf8Runes(prefixSuffixSrc)
+	var n int32 = int32(len(prefixSuffixBytes))
+	var index int32 = 1
+	var j int32 = 0
+	for i = 0; i < n; i++ {
+		var c int32 = prefixSuffixBytes[i]
+		if c == 35 {
+			prefixSuffixHeads[index] = j
+			index++
+		} else {
+			prefixSuffix[j] = int8(c)
+			j++
+		}
+	}
+	for i = 0; i < 363; i++ {
+		transforms[i] = int32(transformsSrc[i]) - 32
+	}
+}
+
+func transformDictionaryWord(dst []int8, dstOffset int32, src []int8, srcOffset int32, wordLen int32, transforms *_Transforms, transformIndex int32) int32 {
+	var offset int32 = dstOffset
+	var triplets []int32 = transforms.triplets
+	var prefixSuffixStorage []int8 = transforms.prefixSuffixStorage
+	var prefixSuffixHeads []int32 = transforms.prefixSuffixHeads
+	var transformOffset int32 = 3 * transformIndex
+	var prefixIdx int32 = triplets[transformOffset]
+	var transformType int32 = triplets[transformOffset+1]
+	var suffixIdx int32 = triplets[transformOffset+2]
+	var prefix int32 = prefixSuffixHeads[prefixIdx]
+	var prefixEnd int32 = prefixSuffixHeads[prefixIdx+1]
+	var suffix int32 = prefixSuffixHeads[suffixIdx]
+	var suffixEnd int32 = prefixSuffixHeads[suffixIdx+1]
+	var omitFirst int32 = transformType - 11
+	var omitLast int32 = transformType
+	if omitFirst < 1 || omitFirst > 9 {
+		omitFirst = 0
+	}
+	if omitLast < 1 || omitLast > 9 {
+		omitLast = 0
+	}
+	for prefix != prefixEnd {
+		dst[offset] = prefixSuffixStorage[prefix]
+		prefix++
+		offset++
+	}
+	var len int32 = wordLen
+	if omitFirst > len {
+		omitFirst = len
+	}
+	var dictOffset int32 = srcOffset + omitFirst
+	len -= omitFirst
+	len -= omitLast
+	var i int32 = len
+	for i > 0 {
+		dst[offset] = src[dictOffset]
+		dictOffset++
+		offset++
+		i--
+	}
+	if transformType == 10 || transformType == 11 {
+		var uppercaseOffset int32 = offset - len
+		if transformType == 10 {
+			len = 1
+		}
+		for len > 0 {
+			var c0 int32 = int32(dst[uppercaseOffset]) & 0xFF
+			if c0 < 0xC0 {
+				if c0 >= 97 && c0 <= 122 {
+					dst[uppercaseOffset] = int8(int32(dst[uppercaseOffset]) ^ 32)
+				}
+				uppercaseOffset += 1
+				len -= 1
+			} else if c0 < 0xE0 {
+				dst[uppercaseOffset+1] = int8(int32(dst[uppercaseOffset+1]) ^ 32)
+				uppercaseOffset += 2
+				len -= 2
+			} else {
+				dst[uppercaseOffset+2] = int8(int32(dst[uppercaseOffset+2]) ^ 5)
+				uppercaseOffset += 3
+				len -= 3
+			}
+		}
+	} else if transformType == 21 || transformType == 22 {
+		var shiftOffset int32 = offset - len
+		var param int32 = int32(transforms.params[transformIndex])
+		var scalar int32 = (param & 0x7FFF) + (0x1000000 - (param & 0x8000))
+		for len > 0 {
+			var step int32 = 1
+			var c0 int32 = int32(dst[shiftOffset]) & 0xFF
+			if c0 < 0x80 {
+				scalar += c0
+				dst[shiftOffset] = int8(scalar & 0x7F)
+			} else if c0 < 0xC0 {
+			} else if c0 < 0xE0 {
+				if len >= 2 {
+					var c1 int32 = int32(dst[shiftOffset+1])
+					scalar += (c1 & 0x3F) | ((c0 & 0x1F) << 6)
+					dst[shiftOffset] = int8(0xC0 | ((scalar >> 6) & 0x1F))
+					dst[shiftOffset+1] = int8((c1 & 0xC0) | (scalar & 0x3F))
+					step = 2
+				} else {
+					step = len
+				}
+			} else if c0 < 0xF0 {
+				if len >= 3 {
+					var c1 int32 = int32(dst[shiftOffset+1])
+					var c2 int32 = int32(dst[shiftOffset+2])
+					scalar += (c2 & 0x3F) | ((c1 & 0x3F) << 6) | ((c0 & 0x0F) << 12)
+					dst[shiftOffset] = int8(0xE0 | ((scalar >> 12) & 0x0F))
+					dst[shiftOffset+1] = int8((c1 & 0xC0) | ((scalar >> 6) & 0x3F))
+					dst[shiftOffset+2] = int8((c2 & 0xC0) | (scalar & 0x3F))
+					step = 3
+				} else {
+					step = len
+				}
+			} else if c0 < 0xF8 {
+				if len >= 4 {
+					var c1 int32 = int32(dst[shiftOffset+1])
+					var c2 int32 = int32(dst[shiftOffset+2])
+					var c3 int32 = int32(dst[shiftOffset+3])
+					scalar += (c3 & 0x3F) | ((c2 & 0x3F) << 6) | ((c1 & 0x3F) << 12) | ((c0 & 0x07) << 18)
+					dst[shiftOffset] = int8(0xF0 | ((scalar >> 18) & 0x07))
+					dst[shiftOffset+1] = int8((c1 & 0xC0) | ((scalar >> 12) & 0x3F))
+					dst[shiftOffset+2] = int8((c2 & 0xC0) | ((scalar >> 6) & 0x3F))
+					dst[shiftOffset+3] = int8((c3 & 0xC0) | (scalar & 0x3F))
+					step = 4
+				} else {
+					step = len
+				}
+			}
+			shiftOffset += step
+			len -= step
+			if transformType == 21 {
+				len = 0
+			}
+		}
+	}
+	for suffix != suffixEnd {
+		dst[offset] = prefixSuffixStorage[suffix]
+		suffix++
+		offset++
+	}
+	return offset - dstOffset
+}
+
+func init() {
+	unpackTransforms(rfcTransforms.prefixSuffixStorage, rfcTransforms.prefixSuffixHeads, rfcTransforms.triplets, "# #s #, #e #.# the #.com/#\u00C2\u00A0# of # and # in # to #\"#\">#\n#]# for # a # that #. # with #'# from # by #. The # on # as # is #ing #\n\t#:#ed #(# at #ly #=\"# of the #. This #,# not #er #al #='#ful #ive #less #est #ize #ous #", "     !! ! ,  *!  &!  \" !  ) *   * -  ! # !  #!*!  +  ,$ !  -  %  .  / #   0  1 .  \"   2  3!*   4%  ! # /   5  6  7  8 0  1 &   $   9 +   :  ;  < '  !=  >  ?! 4  @ 4  2  &   A *# (   B  C& ) %  ) !*# *-% A +! *.  D! %'  & E *6  F  G% ! *A *%  H! D  I!+!  J!+   K +- *4! A  L!*4  M  N +6  O!*% +.! K *G  P +%(  ! G *D +D  Q +# *K!*G!+D!+# +G +A +4!+% +K!+4!*D!+K!*K")
+}
+func getNextKey(key int32, len int32) int32 {
+	var step int32 = 1 << uint((len - 1))
+	for (key & step) != 0 {
+		step = step >> 1
+	}
+	return (key & (step - 1)) + step
+}
+
+func replicateValue(table []int32, offset int32, step int32, end int32, item int32) {
+	var pos int32 = end
+	for pos > 0 {
+		pos -= step
+		table[offset+pos] = item
+	}
+}
+
+func nextTableBitSize(count []int32, len int32, rootBits int32) int32 {
+	var bits int32 = len
+	var left int32 = 1 << uint((bits - rootBits))
+	for bits < 15 {
+		left -= count[bits]
+		if left <= 0 {
+			break
+		}
+		bits++
+		left = left << 1
+	}
+	return bits - rootBits
+}
+
+func buildHuffmanTable(tableGroup []int32, tableIdx int32, rootBits int32, codeLengths []int32, codeLengthsSize int32) int32 {
+	var sym int32
+	var len int32
+	var k int32
+	var tableOffset int32 = tableGroup[tableIdx]
+	var sorted []int32 = make([]int32, codeLengthsSize)
+	var count []int32 = make([]int32, 16)
+	var offset []int32 = make([]int32, 16)
+	for sym = 0; sym < codeLengthsSize; sym++ {
+		count[codeLengths[sym]]++
+	}
+	offset[1] = 0
+	for len = 1; len < 15; len++ {
+		offset[len+1] = offset[len] + count[len]
+	}
+	for sym = 0; sym < codeLengthsSize; sym++ {
+		if codeLengths[sym] != 0 {
+			sorted[offset[codeLengths[sym]]] = sym
+			offset[codeLengths[sym]]++
+		}
+	}
+	var tableBits int32 = rootBits
+	var tableSize int32 = 1 << uint(tableBits)
+	var totalSize int32 = tableSize
+	if offset[15] == 1 {
+		for k = 0; k < totalSize; k++ {
+			tableGroup[tableOffset+k] = sorted[0]
+		}
+		return totalSize
+	}
+	var key int32 = 0
+	var symbol int32 = 0
+	var step int32 = 1
+	for len = 1; len <= rootBits; len++ {
+		step = step << 1
+		for count[len] > 0 {
+			replicateValue(tableGroup, tableOffset+key, step, tableSize, len<<16|sorted[symbol])
+			symbol++
+			key = getNextKey(key, len)
+			count[len]--
+		}
+	}
+	var mask int32 = totalSize - 1
+	var low int32 = -1
+	var currentOffset int32 = tableOffset
+	step = 1
+	for len = rootBits + 1; len <= 15; len++ {
+		step = step << 1
+		for count[len] > 0 {
+			if (key & mask) != low {
+				currentOffset += tableSize
+				tableBits = nextTableBitSize(count, len, rootBits)
+				tableSize = 1 << uint(tableBits)
+				totalSize += tableSize
+				low = key & mask
+				tableGroup[tableOffset+low] = (tableBits+rootBits)<<16 | (currentOffset - tableOffset - low)
+			}
+			replicateValue(tableGroup, currentOffset+(key>>uint(rootBits)), step, tableSize, (len-rootBits)<<16|sorted[symbol])
+			symbol++
+			key = getNextKey(key, len)
+			count[len]--
+		}
+	}
+	return totalSize
+}
+
+func readMoreInput(s *_State) int32 {
+	if s.endOfStreamReached != 0 {
+		if halfAvailable(s) >= -2 {
+			return 0
+		}
+		return makeError(s, -16)
+	}
+	var readOffset int32 = s.halfOffset << 2
+	var bytesInBuffer int32 = 4096 - readOffset
+	copyBytesWithin(s.byteBuffer, 0, readOffset, 4096)
+	s.halfOffset = 0
+	for bytesInBuffer < 4096 {
+		var spaceLeft int32 = 4096 - bytesInBuffer
+		var len int32 = readInput(s, s.byteBuffer, bytesInBuffer, spaceLeft)
+		if len < -1 {
+			return len
+		}
+		if len <= 0 {
+			s.endOfStreamReached = 1
+			s.tailBytes = bytesInBuffer
+			bytesInBuffer += 3
+			break
+		}
+		bytesInBuffer += len
+	}
+	bytesToNibbles(s, bytesInBuffer)
+	return 0
+}
+
+func checkHealth(s *_State, endOfStream int32) int32 {
+	if s.endOfStreamReached == 0 {
+		return 0
+	}
+	var byteOffset int32 = (s.halfOffset << 2) + ((s.bitOffset + 7) >> 3) - 8
+	if byteOffset > s.tailBytes {
+		return makeError(s, -13)
+	}
+	if (endOfStream != 0) && (byteOffset != s.tailBytes) {
+		return makeError(s, -17)
+	}
+	return 0
+}
+
+func readFewBits(s *_State, n int32) int32 {
+	var v int32 = (int32(shr64(s.accumulator64, s.bitOffset))) & ((1 << uint(n)) - 1)
+	s.bitOffset += n
+	return v
+}
+
+func readManyBits(s *_State, n int32) int32 {
+	var low int32 = readFewBits(s, 16)
+	s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+	s.halfOffset++
+	s.bitOffset -= 32
+	return low | (readFewBits(s, n-16) << 16)
+}
+
+func initBitReader(s *_State) int32 {
+	s.byteBuffer = make([]int8, 4160)
+	s.accumulator64 = 0
+	s.intBuffer = make([]int32, 1040)
+	s.bitOffset = 64
+	s.halfOffset = 1024
+	s.endOfStreamReached = 0
+	return prepare(s)
+}
+
+func prepare(s *_State) int32 {
+	if s.halfOffset > 1015 {
+		var result int32 = readMoreInput(s)
+		if result != 0 {
+			return result
+		}
+	}
+	var health int32 = checkHealth(s, 0)
+	if health != 0 {
+		return health
+	}
+	s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+	s.halfOffset++
+	s.bitOffset -= 32
+	s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+	s.halfOffset++
+	s.bitOffset -= 32
+	return 0
+}
+
+func reload(s *_State) int32 {
+	if s.bitOffset == 64 {
+		return prepare(s)
+	}
+	return 0
+}
+
+func jumpToByteBoundary(s *_State) int32 {
+	var padding int32 = (64 - s.bitOffset) & 7
+	if padding != 0 {
+		var paddingBits int32 = readFewBits(s, padding)
+		if paddingBits != 0 {
+			return makeError(s, -5)
+		}
+	}
+	return 0
+}
+
+func halfAvailable(s *_State) int32 {
+	var limit int32 = 1024
+	if s.endOfStreamReached != 0 {
+		limit = (s.tailBytes + 3) >> 2
+	}
+	return limit - s.halfOffset
+}
+
+func copyRawBytes(s *_State, data []int8, offset int32, length int32) int32 {
+	var pos int32 = offset
+	var len int32 = length
+	if (s.bitOffset & 7) != 0 {
+		return makeError(s, -30)
+	}
+	for (s.bitOffset != 64) && (len != 0) {
+		data[pos] = int8(int32(shr64(s.accumulator64, s.bitOffset)))
+		pos++
+		s.bitOffset += 8
+		len--
+	}
+	if len == 0 {
+		return 0
+	}
+	var copyNibbles int32 = min(halfAvailable(s), len>>2)
+	if copyNibbles > 0 {
+		var readOffset int32 = s.halfOffset << 2
+		var delta int32 = copyNibbles << 2
+		copyBytes(data, pos, s.byteBuffer, readOffset, readOffset+delta)
+		pos += delta
+		len -= delta
+		s.halfOffset += copyNibbles
+	}
+	if len == 0 {
+		return 0
+	}
+	if halfAvailable(s) > 0 {
+		if s.bitOffset >= 32 {
+			s.accumulator64 = (int64(s.intBuffer[s.halfOffset]) << 32) | shr64(s.accumulator64, 32)
+			s.halfOffset++
+			s.bitOffset -= 32
+		}
+		for len != 0 {
+			data[pos] = int8(int32(shr64(s.accumulator64, s.bitOffset)))
+			pos++
+			s.bitOffset += 8
+			len--
+		}
+		return checkHealth(s, 0)
+	}
+	for len > 0 {
+		var chunkLen int32 = readInput(s, data, pos, len)
+		if len < -1 {
+			return len
+		}
+		if chunkLen <= 0 {
+			return makeError(s, -16)
+		}
+		pos += chunkLen
+		len -= chunkLen
+	}
+	return 0
+}
+
+func bytesToNibbles(s *_State, byteLen int32) {
+	var i int32
+	var byteBuffer []int8 = s.byteBuffer
+	var halfLen int32 = byteLen >> 2
+	var intBuffer []int32 = s.intBuffer
+	for i = 0; i < halfLen; i++ {
+		intBuffer[i] = (int32(byteBuffer[i*4]) & 0xFF) | ((int32(byteBuffer[(i*4)+1]) & 0xFF) << 8) | ((int32(byteBuffer[(i*4)+2]) & 0xFF) << 16) | ((int32(byteBuffer[(i*4)+3]) & 0xFF) << 24)
+	}
+}
+
+var lookup = make([]int32, 2048)
+
+func unpackLookupTable(lookup []int32, utfMap string, utfRle string) {
+	var i int32
+	var k int32
+	for i = 0; i < 256; i++ {
+		lookup[i] = i & 0x3F
+		lookup[512+i] = i >> 2
+		lookup[1792+i] = 2 + (i >> 6)
+	}
+	for i = 0; i < 128; i++ {
+		lookup[1024+i] = 4 * (int32(utfMap[i]) - 32)
+	}
+	for i = 0; i < 64; i++ {
+		lookup[1152+i] = i & 1
+		lookup[1216+i] = 2 + (i & 1)
+	}
+	var offset int32 = 1280
+	for k = 0; k < 19; k++ {
+		var value int32 = k & 3
+		var rep int32 = int32(utfRle[k]) - 32
+		for i = 0; i < rep; i++ {
+			lookup[offset] = value
+			offset++
+		}
+	}
+	for i = 0; i < 16; i++ {
+		lookup[1792+i] = 1
+		lookup[2032+i] = 6
+	}
+	lookup[1792] = 0
+	lookup[2047] = 7
+	for i = 0; i < 256; i++ {
+		lookup[1536+i] = lookup[1792+i] << 3
+	}
+}
+
+func init() {
+	unpackLookupTable(lookup, "         !!  !                  \"#$##%#$&'##(#)#++++++++++((&*'##,---,---,-----,-----,-----&#'###.///.///./////./////./////&#'# ", "A/*  ':  & : $  \u0081 @")
+}
+
+type _State struct {
+	ringBuffer             []int8
+	contextModes           []int8
+	contextMap             []int8
+	distContextMap         []int8
+	distExtraBits          []int8
+	output                 []int8
+	byteBuffer             []int8
+	shortBuffer            []int16
+	intBuffer              []int32
+	rings                  []int32
+	blockTrees             []int32
+	literalTreeGroup       []int32
+	commandTreeGroup       []int32
+	distanceTreeGroup      []int32
+	distOffset             []int32
+	accumulator64          int64
+	runningState           int32
+	nextRunningState       int32
+	accumulator32          int32
+	bitOffset              int32
+	halfOffset             int32
+	tailBytes              int32
+	endOfStreamReached     int32
+	metaBlockLength        int32
+	inputEnd               int32
+	isUncompressed         int32
+	isMetadata             int32
+	literalBlockLength     int32
+	numLiteralBlockTypes   int32
+	commandBlockLength     int32
+	numCommandBlockTypes   int32
+	distanceBlockLength    int32
+	numDistanceBlockTypes  int32
+	pos                    int32
+	maxDistance            int32
+	distRbIdx              int32
+	trivialLiteralContext  int32
+	literalTreeIdx         int32
+	commandTreeIdx         int32
+	j                      int32
+	insertLength           int32
+	contextMapSlice        int32
+	distContextMapSlice    int32
+	contextLookupOffset1   int32
+	contextLookupOffset2   int32
+	distanceCode           int32
+	numDirectDistanceCodes int32
+	distancePostfixBits    int32
+	distance               int32
+	copyLength             int32
+	maxBackwardDistance    int32
+	maxRingBufferSize      int32
+	ringBufferSize         int32
+	expectedTotalSize      int32
+	outputOffset           int32
+	outputLength           int32
+	outputUsed             int32
+	ringBufferBytesWritten int32
+	ringBufferBytesReady   int32
+	isEager                int32
+	isLargeWindow          int32
+	cdNumChunks            int32
+	cdTotalSize            int32
+	cdBrIndex              int32
+	cdBrOffset             int32
+	cdBrLength             int32
+	cdBrCopied             int32
+	cdChunks               [][]int8
+	cdChunkOffsets         []int32
+	cdBlockBits            int32
+	cdBlockMap             []int8
+	input                  *_InputStream
+}
+
+func makeState() *_State {
+	this := &_State{}
+	this.input = nil
+	this.ringBuffer = make([]int8, 0)
+	this.rings = make([]int32, 10)
+	this.rings[0] = 16
+	this.rings[1] = 15
+	this.rings[2] = 11
+	this.rings[3] = 4
+	return this
+}
+
+var data = make([]int8, 0)
+var offsets = make([]int32, 32)
+var sizeBits = make([]int32, 32)
+
+func setData(newData []int8, newSizeBits []int32) {
+	var i int32
+	var dictionaryOffsets []int32 = offsets
+	var dictionarySizeBits []int32 = sizeBits
+	for i = 0; i < int32(len(newSizeBits)); i++ {
+		dictionarySizeBits[i] = newSizeBits[i]
+	}
+	var pos int32 = 0
+	for i = 0; i < int32(len(newSizeBits)); i++ {
+		dictionaryOffsets[i] = pos
+		var bits int32 = dictionarySizeBits[i]
+		if bits != 0 {
+			pos += i << uint((bits & 31))
+		}
+	}
+	for i = int32(len(newSizeBits)); i < 32; i++ {
+		dictionaryOffsets[i] = pos
+	}
+	data = newData
+}
+
+func unpackDictionaryData(dictionary []int8, data0 string, data1 string, skipFlip string, sizeBits []int32, sizeBitsData string) {
+	var i int32
+	var j int32
+	var dict []int8 = toUsASCIIBytes(data0 + data1)
+	var skipFlipRunes []int32 = toUtf8Runes(skipFlip)
+	var offset int32 = 0
+	var n int32 = int32(len(skipFlipRunes)) >> 1
+	for i = 0; i < n; i++ {
+		var skip int32 = skipFlipRunes[2*i] - 36
+		var flip int32 = skipFlipRunes[2*i+1] - 36
+		for j = 0; j < skip; j++ {
+			dict[offset] = int8(int32(dict[offset]) ^ 3)
+			offset++
+		}
+		for j = 0; j < flip; j++ {
+			dict[offset] = int8(int32(dict[offset]) ^ 236)
+			offset++
+		}
+	}
+	for i = 0; i < (int32(len(sizeBitsData))); i++ {
+		sizeBits[i] = int32(sizeBitsData[i]) - 65
+	}
+	copyBytes(dictionary, 0, dict, 0, int32(len(dict)))
+}
+
+func init() {
+	var dictionaryData []int8 = make([]int8, 122784)
+	var dictionarySizeBits []int32 = make([]int32, 25)
+	unpackDictionaryData(dictionaryData, "wjnfgltmojefofewab`h`lgfgbwbpkltlmozpjwf`jwzlsfmivpwojhfeqfftlqhwf{wzfbqlufqalgzolufelqnallhsobzojufojmfkfosklnfpjgfnlqftlqgolmdwkfnujftejmgsbdfgbzpevookfbgwfqnfb`kbqfbeqlnwqvfnbqhbaofvslmkjdkgbwfobmgmftpfufmmf{w`bpfalwkslpwvpfgnbgfkbmgkfqftkbwmbnfOjmhaoldpjyfabpfkfognbhfnbjmvpfq$*#(klogfmgptjwkMftpqfbgtfqfpjdmwbhfkbufdbnfpffm`boosbwktfoosovpnfmvejonsbqwiljmwkjpojpwdllgmffgtbzptfpwilapnjmgboploldlqj`kvpfpobpwwfbnbqnzellghjmdtjoofbpwtbqgafpwejqfSbdfhmltbtbz-smdnlufwkbmolbgdjufpfoemlwfnv`keffgnbmzql`hj`lmlm`follhkjgfgjfgKlnfqvofklpwbib{jmel`ovaobtpofppkboeplnfpv`kylmf233&lmfp`bqfWjnfqb`faovfelvqtffheb`fklsfdbufkbqgolpwtkfmsbqhhfswsbpppkjsqllnKWNOsobmWzsfglmfpbufhffseobdojmhplogejufwllhqbwfwltmivnswkvpgbqh`bqgejofefbqpwbzhjoowkbweboobvwlfufq-`lnwbohpklsulwfgffsnlgfqfpwwvqmalqmabmgefooqlpfvqo+phjmqlof`lnfb`wpbdfpnffwdlog-isdjwfnubqzefowwkfmpfmggqlsUjft`lsz2-3!?,b=pwlsfopfojfpwlvqsb`h-djesbpw`pp<dqbznfbm%dw8qjgfpklwobwfpbjgqlbgubq#effoilkmqj`hslqwebpw$VB.gfbg?,a=sllqajoowzsfV-P-tllgnvpw1s{8JmelqbmhtjgftbmwtbooofbgX3^8sbvotbufpvqf'+$ tbjwnbppbqnpdlfpdbjmobmdsbjg\"..#ol`hvmjwqllwtbohejqntjef{no!plmdwfpw13s{hjmgqltpwlloelmwnbjopbefpwbqnbsp`lqfqbjmeoltabazpsbmpbzp7s{85s{8bqwpellwqfbotjhjkfbwpwfswqjslqd,obhftfbhwlogElqn`bpwebmpabmhufqzqvmpivozwbph2s{8dlbodqftpoltfgdfjg>!pfwp6s{8-ip<73s{je#+pllmpfbwmlmfwvafyfqlpfmwqffgeb`wjmwldjewkbqn2;s{`bnfkjooalogyllnuljgfbpzqjmdejoosfbhjmjw`lpw0s{8ib`hwbdpajwpqloofgjwhmftmfbq?\"..dqltIPLMgvwzMbnfpbofzlv#olwpsbjmibyy`logfzfpejpkttt-qjphwbapsqfu23s{qjpf16s{Aovfgjmd033/abooelqgfbqmtjogal{-ebjqob`hufqpsbjqivmfwf`kje+\"sj`hfujo'+! tbqnolqgglfpsvoo/333jgfbgqbtkvdfpslwevmgavqmkqfe`foohfzpwj`hklvqolppevfo21s{pvjwgfboQPP!bdfgdqfzDFW!fbpfbjnpdjqobjgp;s{8mbuzdqjgwjsp :::tbqpobgz`bqp*8#~sks<kfoowbootklnyk9\t),\x0E\t#233kboo-\t\tB4s{8svpk`kbw3s{8`qft),?,kbpk46s{eobwqbqf#%%#wfoo`bnslmwlobjgnjppphjswfmwejmfnbofdfwpsolw733/\x0E\t\x0E\t`lloeffw-sks?aq=fqj`nlpwdvjgafoogfp`kbjqnbwkbwln,jnd% ;1ov`h`fmw3338wjmzdlmfkwnopfoogqvdEQFFmlgfmj`h<jg>olpfmvooubpwtjmgQPP#tfbqqfozaffmpbnfgvhfmbpb`bsftjpkdvoeW109kjwppolwdbwfhj`haovqwkfz26s{$$*8*8!=npjftjmpajqgplqwafwbpffhW2;9lqgpwqffnboo53s{ebqn\x0ElupalzpX3^-$*8!SLPWafbqhjgp*8~~nbqzwfmg+VH*rvbgyk9\n.pjy....sqls$*8\x0EojewW2:9uj`fbmgzgfaw=QPPsllomf`haoltW259gllqfuboW249ofwpebjolqbosloomlub`lopdfmf#\x0Elxplewqlnfwjooqlpp?k0=slvqebgfsjmh?wq=njmj*\u007F\"+njmfyk9\x04abqpkfbq33*8njoh#..=jqlmeqfggjphtfmwpljosvwp,ip,klozW119JPAMW139bgbnpffp?k1=iplm$/#$`lmwW129#QPPollsbpjbnllm?,s=plvoOJMFelqw`bqwW279?k2=;3s{\"..?:s{8W379njhf975Ymj`fjm`kZlqhqj`fyk9\b$**8svqfnbdfsbqbwlmfalmg904Y\\le\\$^*8333/yk9\x0Bwbmhzbqgaltoavpk965YIbub03s{\t\u007F~\t&@0&907YifeeF[SJ`bpkujpbdloepmltyk9\x05rvfq-`pppj`hnfbwnjm-ajmggfookjqfsj`pqfmw905YKWWS.132elwltloeFMG#{al{967YALGZgj`h8\t~\tf{jw906Yubqpafbw$~*8gjfw:::8bmmf~~?,Xj^-Obmdhn.^tjqfwlzpbggppfbobof{8\t\n~f`klmjmf-lqd336*wlmziftppbmgofdpqlle333*#133tjmfdfbqgldpallwdbqz`vwpwzofwfnswjlm-{no`l`hdbmd'+$-63s{Sk-Gnjp`bobmolbmgfphnjofqzbmvmj{gjp`*8~\tgvpw`ojs*-\t\t43s{.133GUGp4^=?wbsfgfnlj((*tbdffvqlskjolswpklofEBRpbpjm.15WobapsfwpVQO#avoh`llh8~\x0E\tKFBGX3^*baaqivbm+2:;ofpkwtjm?,j=plmzdvzpev`hsjsf\u007F.\t\"331*mgltX2^8X^8\tOld#pbow\x0E\t\n\nabmdwqjnabwk*x\x0E\t33s{\t~*8hl9\x00effpbg=\x0Ep9,,#X^8wloosovd+*x\tx\x0E\t#-ip$133sgvboalbw-ISD*8\t~rvlw*8\t\t$*8\t\x0E\t~\x0E1327132613251324132;132:13131312131113101317131613151314131;131:130313021301130013071306130513041320132113221323133:133;133413351336133713301331133213332:::2::;2::42::52::62::72::02::12::22::32:;:2:;;2:;42:;52:;62:;72:;02:;12:;22:;32:4:2:4;2:442:452:462:472:402:412:422:432:5:2:5;2:542:552:562:572:502:512:522:532:6:2:6;2:642:652:662:672:602:612:622:632333231720:73333::::`lnln/Mpfpwffpwbsfqlwlglkb`f`bgbb/]lajfmg/Abbp/Aujgb`bpllwqlelqlplollwqb`vbogjilpjgldqbmwjslwfnbgfafbodlrv/Efpwlmbgbwqfpsl`l`bpbabilwlgbpjmlbdvbsvfpvmlpbmwfgj`fovjpfoobnbzlylmbbnlqsjpllaqb`oj`foolgjlpklqb`bpj<[<\\<Q<\\<R<P=l<\\=l=o=n<\\<Q<Y<S<R<R=n<T<[<Q<R<X<R=n<R<Z<Y<R<Q<T=i<q<\\<Y<Y<]=g<P=g<~=g=m<R<^=g<^<R<q<R<R<]<s<R<W<T<Q<T<L<H<q<Y<p=g=n=g<r<Q<T<P<X<\\<{<\\<x<\\<q=o<r<]=n<Y<t<[<Y<U<Q=o<P<P<N=g=o<Z5m5f4O5j5i4K5i4U5o5h4O5d4]4C5f4K5m5e5k5d5h5i5h5o4K5d5h5k4D4_4K5h4I5j5k5f4O5f5n4C5k5h4G5i4D5k5h5d5h5f4D5h4K5f4D5o4X5f4K5i4O5i5j4F4D5f5h5j4A4D5k5i5i4X5d4Xejqpwujgflojdkwtlqognfgjbtkjwf`olpfaob`hqjdkwpnbooallhpsob`fnvpj`ejfoglqgfqsljmwubovfofufowbaofalbqgklvpfdqlvstlqhpzfbqppwbwfwlgbztbwfqpwbqwpwzofgfbwksltfqsklmfmjdkwfqqlqjmsvwbalvwwfqnpwjwofwllopfufmwol`bowjnfpobqdftlqgpdbnfppklqwpsb`fel`vp`ofbqnlgfoaol`hdvjgfqbgjlpkbqftlnfmbdbjmnlmfzjnbdfmbnfpzlvmdojmfpobwfq`lolqdqffmeqlmw%bns8tbw`kelq`fsqj`fqvofpafdjmbewfqujpjwjppvfbqfbpafoltjmgf{wlwboklvqpobafosqjmwsqfppavjowojmhppsffgpwvgzwqbgfelvmgpfmpfvmgfqpkltmelqnpqbmdfbggfgpwjoonlufgwbhfmbalufeobpkej{fglewfmlwkfqujftp`kf`hofdboqjufqjwfnprvj`hpkbsfkvnbmf{jpwdljmdnlujfwkjqgabpj`sfb`fpwbdftjgwkoldjmjgfbptqlwfsbdfpvpfqpgqjufpwlqfaqfbhplvwkulj`fpjwfpnlmwktkfqfavjogtkj`kfbqwkelqvnwkqffpslqwsbqwz@oj`holtfqojufp`obppobzfqfmwqzpwlqzvpbdfplvmg`lvqwzlvq#ajqwkslsvswzsfpbssozJnbdfafjmdvssfqmlwfpfufqzpkltpnfbmpf{wqbnbw`kwqb`hhmltmfbqozafdbmpvsfqsbsfqmlqwkofbqmdjufmmbnfgfmgfgWfqnpsbqwpDqlvsaqbmgvpjmdtlnbmebopfqfbgzbvgjlwbhfptkjof-`ln,ojufg`bpfpgbjoz`kjogdqfbwivgdfwklpfvmjwpmfufqaqlbg`lbpw`lufqbssofejofp`z`ofp`fmfsobmp`oj`htqjwfrvffmsjf`ffnbjoeqbnflogfqsklwlojnjw`b`kf`jujop`boffmwfqwkfnfwkfqfwlv`kalvmgqlzbobphfgtklofpjm`fpwl`h#mbnfebjwkkfbqwfnswzleefqp`lsfltmfgnjdkwboavnwkjmhaollgbqqbznbilqwqvpw`bmlmvmjlm`lvmwubojgpwlmfPwzofOldjmkbsszl``vqofew9eqfpkrvjwfejonpdqbgfmffgpvqabmejdkwabpjpklufqbvwl8qlvwf-kwnonj{fgejmboZlvq#pojgfwlsj`aqltmbolmfgqbtmpsojwqfb`kQjdkwgbwfpnbq`krvlwfdllgpOjmhpglvawbpzm`wkvnaboolt`kjfezlvwkmlufo23s{8pfqufvmwjokbmgp@kf`hPsb`frvfqzibnfpfrvbowtj`f3/333Pwbqwsbmfoplmdpqlvmgfjdkwpkjewtlqwkslpwpofbgptffhpbuljgwkfpfnjofpsobmfpnbqwboskbsobmwnbqhpqbwfpsobzp`objnpbofpwf{wppwbqptqlmd?,k0=wkjmd-lqd,nvowjkfbqgSltfqpwbmgwlhfmplojg+wkjpaqjmdpkjsppwbeewqjfg`boopevoozeb`wpbdfmwWkjp#,,..=bgnjmfdzswFufmw26s{8Fnbjowqvf!`qlpppsfmwaoldpal{!=mlwfgofbuf`kjmbpjyfpdvfpw?,k7=qlalwkfbuzwqvf/pfufmdqbmg`qjnfpjdmpbtbqfgbm`fskbpf=?\"..fm\\VP% 0:8133s{\\mbnfobwjmfmilzbib{-bwjlmpnjwkV-P-#klogpsfwfqjmgjbmbu!=`kbjmp`lqf`lnfpgljmdsqjlqPkbqf2::3pqlnbmojpwpibsbmeboopwqjboltmfqbdqff?,k1=bavpfbofqwlsfqb!.,,T`bqgpkjoopwfbnpSklwlwqvwk`ofbm-sks<pbjmwnfwboolvjpnfbmwsqlleaqjfeqlt!=dfmqfwqv`hollhpUbovfEqbnf-mfw,..=\t?wqz#x\tubq#nbhfp`lpwpsobjmbgvowrvfpwwqbjmobalqkfosp`bvpfnbdj`nlwlqwkfjq163s{ofbpwpwfsp@lvmw`lvogdobpppjgfpevmgpklwfobtbqgnlvwknlufpsbqjpdjufpgvw`kwf{bpeqvjwmvoo/\u007F\u007FX^8wls!=\t?\"..SLPW!l`fbm?aq,=eollqpsfbhgfswk#pjyfabmhp`bw`k`kbqw13s{8bojdmgfboptlvog63s{8vqo>!sbqhpnlvpfNlpw#---?,bnlmdaqbjmalgz#mlmf8abpfg`bqqzgqbewqfefqsbdf\\klnf-nfwfqgfobzgqfbnsqlufiljmw?,wq=gqvdp?\"..#bsqjojgfboboofmf{b`welqwk`lgfpoldj`Ujft#pffnpaobmhslqwp#+133pbufg\\ojmhdlbopdqbmwdqffhklnfpqjmdpqbwfg03s{8tklpfsbqpf+*8!#Aol`hojmv{ilmfpsj{fo$*8!=*8je+.ofewgbujgklqpfEl`vpqbjpfal{fpWqb`hfnfmw?,fn=abq!=-pq`>wltfqbow>!`baofkfmqz17s{8pfwvsjwbozpkbqsnjmlqwbpwftbmwpwkjp-qfpfwtkffodjqop,`pp,233&8`ovappwveeajaofulwfp#2333hlqfb~*8\x0E\tabmgprvfvf>#x~8;3s{8`hjmdx\x0E\t\n\nbkfbg`ol`hjqjpkojhf#qbwjlpwbwpElqn!zbkll*X3^8Balvwejmgp?,k2=gfavdwbphpVQO#>`foop~*+*821s{8sqjnfwfoopwvqmp3{533-isd!psbjmafb`kwb{fpnj`qlbmdfo..=?,djewppwfuf.ojmhalgz-~*8\t\nnlvmw#+2::EBR?,qldfqeqbmh@obpp1;s{8effgp?k2=?p`lwwwfpwp11s{8gqjmh*#\u007F\u007F#oftjppkboo 30:8#elq#olufgtbpwf33s{8ib9\x0Fnpjnlm?elmwqfsoznffwpvmwfq`kfbswjdkwAqbmg*#\">#gqfpp`ojspqllnplmhfznlajonbjm-Mbnf#sobwfevmmzwqffp`ln,!2-isdtnlgfsbqbnPWBQWofew#jggfm/#132*8\t~\telqn-ujqvp`kbjqwqbmptlqpwSbdfpjwjlmsbw`k?\"..\tl.`b`ejqnpwlvqp/333#bpjbmj((*xbglaf$*X3^jg>23alwk8nfmv#-1-nj-smd!hfujm`lb`k@kjogaqv`f1-isdVQO*(-isd\u007Fpvjwfpoj`fkbqqz213!#ptffwwq=\x0E\tmbnf>gjfdlsbdf#ptjpp..=\t\t eee8!=Old-`ln!wqfbwpkffw*#%%#27s{8poffsmwfmwejofgib9\x0Fojg>!`Mbnf!tlqpfpklwp.al{.gfowb\t%ow8afbqp97;Y?gbwb.qvqbo?,b=#psfmgabhfqpklsp>#!!8sks!=`wjlm20s{8aqjbmkfoolpjyf>l>&1E#iljmnbzaf?jnd#jnd!=/#eipjnd!#!*X3^NWlsAWzsf!mftozGbmph`yf`kwqbjohmltp?,k6=ebr!=yk.`m23*8\t.2!*8wzsf>aovfpwqvozgbujp-ip$8=\x0E\t?\"pwffo#zlv#k1=\x0E\telqn#ifpvp233&#nfmv-\x0E\t\n\x0E\ttbofpqjphpvnfmwggjmda.ojhwfb`kdje!#ufdbpgbmphffpwjpkrjspvlnjplaqfgfpgffmwqfwlglpsvfgfb/]lpfpw/Mwjfmfkbpwblwqlpsbqwfglmgfmvfulkb`fqelqnbnjpnlnfilqnvmglbrv/Ag/Abpp/_olbzvgbef`kbwlgbpwbmwlnfmlpgbwlplwqbppjwjlnv`klbklqbovdbqnbzlqfpwlpklqbpwfmfqbmwfpelwlpfpwbpsb/Apmvfubpbovgelqlpnfgjlrvjfmnfpfpslgfq`kjofpfq/Muf`fpgf`jqilp/Efpwbqufmwbdqvslkf`klfoolpwfmdlbnjdl`lpbpmjufodfmwfnjpnbbjqfpivojlwfnbpkb`jbebulqivmjlojaqfsvmwlavfmlbvwlqbaqjoavfmbwf{wlnbqylpbafqojpwbovfdl`/_nlfmfqlivfdlsfq/Vkbafqfpwlzmvm`bnvifqubolqevfqbojaqldvpwbjdvboulwlp`bplpdv/Absvfglplnlpbujplvpwfggfafmml`kfavp`bebowbfvqlppfqjfgj`kl`vqpl`obuf`bpbpof/_msobylobqdllaqbpujpwbbslzlivmwlwqbwbujpwl`qfbq`bnslkfnlp`jm`l`bqdlsjplplqgfmkb`fm/Mqfbgjp`lsfgql`fq`bsvfgbsbsfonfmlq/Vwjo`obqlilqdf`boofslmfqwbqgfmbgjfnbq`bpjdvffoobppjdol`l`kfnlwlpnbgqf`obpfqfpwlmj/]lrvfgbsbpbqabm`lkjilpujbifsbaol/Epwfujfmfqfjmlgfibqelmgl`bmbomlqwfofwqb`bvpbwlnbqnbmlpovmfpbvwlpujoobufmglsfpbqwjslpwfmdbnbq`loofubsbgqfvmjglubnlpylmbpbnalpabmgbnbqjbbavplnv`kbpvajqqjlibujujqdqbgl`kj`bboo/Ailufmgj`kbfpwbmwbofppbojqpvfolsfplpejmfpoobnbavp`l/Epwboofdbmfdqlsobybkvnlqsbdbqivmwbglaofjpobpalopbab/]lkbaobov`kb/mqfbgj`fmivdbqmlwbpuboofboo/M`bqdbglolqbabilfpw/Edvpwlnfmwfnbqjlejqnb`lpwlej`kbsobwbkldbqbqwfpofzfpbrvfonvpflabpfpsl`lpnjwbg`jfol`kj`lnjfgldbmbqpbmwlfwbsbgfafpsobzbqfgfppjfwf`lqwf`lqfbgvgbpgfpflujfilgfpfbbdvbp%rvlw8glnbjm`lnnlmpwbwvpfufmwpnbpwfqpzpwfnb`wjlmabmmfqqfnlufp`qloovsgbwfdolabonfgjvnejowfqmvnafq`kbmdfqfpvowsvaoj`p`qffm`kllpfmlqnbowqbufojppvfpplvq`fwbqdfwpsqjmdnlgvofnlajofptjw`ksklwlpalqgfqqfdjlmjwpfoepl`jbob`wjuf`lovnmqf`lqgelooltwjwof=fjwkfqofmdwkebnjozeqjfmgobzlvwbvwklq`qfbwfqfujftpvnnfqpfqufqsobzfgsobzfqf{sbmgsloj`zelqnbwglvaofsljmwppfqjfpsfqplmojujmdgfpjdmnlmwkpelq`fpvmjrvftfjdkwsflsoffmfqdzmbwvqfpfbq`kejdvqfkbujmd`vpwlnleepfwofwwfqtjmgltpvanjwqfmgfqdqlvspvsolbgkfbowknfwklgujgflpp`klloevwvqfpkbgltgfabwfubovfpLaif`wlwkfqpqjdkwpofbdvf`kqlnfpjnsofmlwj`fpkbqfgfmgjmdpfbplmqfslqwlmojmfprvbqfavwwlmjnbdfpfmbaofnlujmdobwfpwtjmwfqEqbm`fsfqjlgpwqlmdqfsfbwOlmglmgfwbjoelqnfggfnbmgpf`vqfsbppfgwlddofsob`fpgfuj`fpwbwj``jwjfppwqfbnzfooltbwwb`hpwqffweojdkwkjggfmjmel!=lsfmfgvpfevouboofz`bvpfpofbgfqpf`qfwpf`lmggbnbdfpslqwpf{`fswqbwjmdpjdmfgwkjmdpfeef`wejfogppwbwfpleej`fujpvbofgjwlqulovnfQfslqwnvpfvnnlujfpsbqfmwb``fppnlpwoznlwkfq!#jg>!nbqhfwdqlvmg`kbm`fpvqufzafelqfpznalonlnfmwpsff`knlwjlmjmpjgfnbwwfq@fmwfqlaif`wf{jpwpnjggofFvqlsfdqltwkofdb`znbmmfqfmlvdk`bqffqbmptfqlqjdjmslqwbo`ojfmwpfof`wqbmgln`olpfgwlsj`p`lnjmdebwkfqlswjlmpjnsozqbjpfgfp`bsf`klpfm`kvq`kgfejmfqfbplm`lqmfqlvwsvwnfnlqzjeqbnfsloj`fnlgfopMvnafqgvqjmdleefqppwzofphjoofgojpwfg`boofgpjoufqnbqdjmgfofwfafwwfqaqltpfojnjwpDolabopjmdoftjgdfw`fmwfqavgdfwmltqbs`qfgjw`objnpfmdjmfpbefwz`klj`fpsjqjw.pwzofpsqfbgnbhjmdmffgfgqvppjbsofbpff{wfmwP`qjswaqlhfmbooltp`kbqdfgjujgfeb`wlqnfnafq.abpfgwkflqz`lmejdbqlvmgtlqhfgkfosfg@kvq`kjnsb`wpklvogbotbzpoldl!#alwwlnojpw!=*xubq#sqfej{lqbmdfKfbgfq-svpk+`lvsofdbqgfmaqjgdfobvm`kQfujftwbhjmdujpjlmojwwofgbwjmdAvwwlmafbvwzwkfnfpelqdlwPfbq`kbm`klqbonlpwolbgfg@kbmdfqfwvqmpwqjmdqfolbgNlajofjm`lnfpvssozPlvq`flqgfqpujftfg%maps8`lvqpfBalvw#jpobmg?kwno#`llhjfmbnf>!bnbylmnlgfqmbguj`fjm?,b=9#Wkf#gjboldklvpfpAFDJM#Nf{j`lpwbqwp`fmwqfkfjdkwbggjmdJpobmgbppfwpFnsjqfP`kllofeelqwgjqf`wmfbqoznbmvboPfof`w-\t\tLmfiljmfgnfmv!=SkjojsbtbqgpkbmgofjnslqwLeej`fqfdbqgphjoopmbwjlmPslqwpgfdqfftffhoz#+f-d-afkjmggl`wlqolddfgvmjwfg?,a=?,afdjmpsobmwpbppjpwbqwjpwjppvfg033s{\u007F`bmbgbbdfm`zp`kfnfqfnbjmAqbyjopbnsofoldl!=afzlmg.p`bofb``fswpfqufgnbqjmfEllwfq`bnfqb?,k2=\t\\elqn!ofbufppwqfpp!#,=\x0E\t-dje!#lmolbgolbgfqL{elqgpjpwfqpvqujuojpwfmefnbofGfpjdmpjyf>!bssfbowf{w!=ofufopwkbmhpkjdkfqelq`fgbmjnbobmzlmfBeqj`bbdqffgqf`fmwSflsof?aq#,=tlmgfqsqj`fpwvqmfg\u007F\u007F#x~8nbjm!=jmojmfpvmgbztqbs!=ebjofg`fmpvpnjmvwfafb`lmrvlwfp263s{\u007Ffpwbwfqfnlwffnbjo!ojmhfgqjdkw8pjdmboelqnbo2-kwnopjdmvssqjm`feolbw9-smd!#elqvn-B``fppsbsfqpplvmgpf{wfmgKfjdkwpojgfqVWE.;!%bns8#Afelqf-#TjwkpwvgjlltmfqpnbmbdfsqlejwiRvfqzbmmvbosbqbnpalvdkwebnlvpdlldofolmdfqj((*#xjpqbfopbzjmdgf`jgfklnf!=kfbgfqfmpvqfaqbm`ksjf`fpaol`h8pwbwfgwls!=?qb`jmdqfpjyf..%dw8sb`jwzpf{vboavqfbv-isd!#23/333lawbjmwjwofpbnlvmw/#Jm`-`lnfgznfmv!#ozqj`pwlgbz-jmgffg`lvmwz\\oldl-EbnjozollhfgNbqhfwopf#jeSobzfqwvqhfz*8ubq#elqfpwdjujmdfqqlqpGlnbjm~fopfxjmpfqwAold?,ellwfqoldjm-ebpwfqbdfmwp?algz#23s{#3sqbdnbeqjgbzivmjlqgloobqsob`fg`lufqpsovdjm6/333#sbdf!=alpwlm-wfpw+bubwbqwfpwfg\\`lvmwelqvnpp`kfnbjmgf{/ejoofgpkbqfpqfbgfqbofqw+bssfbqPvanjwojmf!=algz!=\t)#WkfWklvdkpffjmdifqpfzMftp?,ufqjezf{sfqwjmivqztjgwk>@llhjfPWBQW#b`qlpp\\jnbdfwkqfbgmbwjufsl`hfwal{!=\tPzpwfn#Gbujg`bm`fqwbaofpsqlufgBsqjo#qfboozgqjufqjwfn!=nlqf!=albqgp`lolqp`bnsvpejqpw#\u007F\u007F#X^8nfgjb-dvjwbqejmjpktjgwk9pkltfgLwkfq#-sks!#bppvnfobzfqptjoplmpwlqfpqfojfeptfgfm@vpwlnfbpjoz#zlvq#Pwqjmd\t\tTkjowbzolq`ofbq9qfplqweqfm`kwklvdk!*#(#!?algz=avzjmdaqbmgpNfnafqmbnf!=lssjmdpf`wlq6s{8!=upsb`fslpwfqnbilq#`leeffnbqwjmnbwvqfkbssfm?,mbu=hbmpbpojmh!=Jnbdfp>ebopftkjof#kpsb`f3%bns8#\t\tJm##sltfqSlophj.`lolqilqgbmAlwwlnPwbqw#.`lvmw1-kwnomftp!=32-isdLmojmf.qjdkwnjoofqpfmjlqJPAM#33/333#dvjgfpubovf*f`wjlmqfsbjq-{no!##qjdkwp-kwno.aol`hqfdF{s9klufqtjwkjmujqdjmsklmfp?,wq=\x0Evpjmd#\t\nubq#=$*8\t\n?,wg=\t?,wq=\tabkbpbaqbpjodbofdlnbdzbqslophjpqsphj4]4C5d\bTA\nzk\x0BBl\bQ\u007F\x0BUm\x05Gx\bSM\nmC\bTA\twQ\nd}\bW@\bTl\bTF\ti@\tcT\x0BBM\x0B|j\x04BV\tqw\tcC\bWI\npa\tfM\n{Z\x05{X\bTF\bVV\bVK\t\u007Fm\x04kF\t[]\bPm\bTv\nsI\x0Bpg\t[I\bQp\x04mx\x0B_W\n^M\npe\x0BQ}\x0BGu\nel\npe\x04Ch\x04BV\bTA\tSo\nzk\x0BGL\x0BxD\nd[\x05Jz\x05MY\bQp\x04li\nfl\npC\x05{B\x05Nt\x0BwT\ti_\bTg\x04QQ\n|p\x0BXN\bQS\x0BxD\x04QC\bWZ\tpD\x0BVS\bTW\x05Nt\x04Yh\nzu\x04Kj\x05N}\twr\tHa\n_D\tj`\x0BQ}\x0BWp\nxZ\x04{c\tji\tBU\nbD\x04a|\tTn\tpV\nZd\nmC\x0BEV\x05{X\tc}\tTo\bWl\bUd\tIQ\tcg\x0Bxs\nXW\twR\x0Bek\tc}\t]y\tJn\nrp\neg\npV\nz\\\x05{W\npl\nz\\\nzU\tPc\t`{\bV@\nc|\bRw\ti_\bVb\nwX\tHv\x04Su\bTF\x0B_W\x0BWs\x0BsI\x05m\u007F\nTT\ndc\tUS\t}f\tiZ\bWz\tc}\x04MD\tBe\tiD\x0B@@\bTl\bPv\t}t\x04Sw\x04M`\x0BnU\tkW\x0Bed\nqo\x0BxY\tA|\bTz\x0By`\x04BR\x04BM\tia\x04XU\nyu\x04n^\tfL\tiI\nXW\tfD\bWz\bW@\tyj\t\u007Fm\tav\tBN\x0Bb\\\tpD\bTf\nY[\tJn\bQy\t[^\x0BWc\x0Byu\x04Dl\x04CJ\x0BWj\x0BHR\t`V\x0BuW\tQy\np@\x0BGu\x05pl\x04Jm\bW[\nLP\nxC\n`m\twQ\x05ui\x05\u007FR\nbI\twQ\tBZ\tWV\x04BR\npg\tcg\x05ti\x04CW\n_y\tRg\bQa\x0BQB\x0BWc\nYb\x05le\ngE\x04Su\nL[\tQ\u007F\tea\tdj\x0B]W\nb~\x04M`\twL\bTV\bVH\nt\u007F\npl\t|b\x05s_\bU|\bTa\x04oQ\x05lv\x04Sk\x04M`\bTv\x0BK}\nfl\tcC\x04oQ\x04BR\tHk\t|d\bQp\tHK\tBZ\x0BHR\bPv\x0BLx\x0BEZ\bT\u007F\bTv\tiD\x05oD\x05MU\x0BwB\x04Su\x05k`\x04St\ntC\tPl\tKg\noi\tjY\x0BxY\x04h}\nzk\bWZ\t\u007Fm\x0Be`\tTB\tfE\nzk\t`z\x04Yh\nV|\tHK\tAJ\tAJ\bUL\tp\\\tql\nYc\x04Kd\nfy\x04Yh\t[I\x0BDg\x04Jm\n]n\nlb\bUd\n{Z\tlu\tfs\x04oQ\bTW\x04Jm\x0BwB\tea\x04Yh\x04BC\tsb\tTn\nzU\n_y\x0BxY\tQ]\ngw\x04mt\tO\\\ntb\bWW\bQy\tmI\tV[\ny\\\naB\x0BRb\twQ\n]Q\x04QJ\bWg\x0BWa\bQj\ntC\bVH\nYm\x0Bxs\bVK\nel\bWI\x0BxY\x04Cq\ntR\x0BHV\bTl\bVw\tay\bQa\bVV\t}t\tdj\nr|\tp\\\twR\n{i\nTT\t[I\ti[\tAJ\x0Bxs\x0B_W\td{\x0BQ}\tcg\tTz\tA|\tCj\x0BLm\x05N}\x05m\u007F\nbK\tdZ\tp\\\t`V\tsV\np@\tiD\twQ\x0BQ}\bTf\x05ka\x04Jm\x0B@@\bV`\tzp\n@N\x04Sw\tiI\tcg\noi\x04Su\bVw\x04lo\x04Cy\tc}\x0Bb\\\tsU\x04BA\bWI\bTf\nxS\tVp\nd|\bTV\x0BbC\tNo\x05Ju\nTC\t|`\n{Z\tD]\bU|\tc}\x05lm\bTl\tBv\tPl\tc}\bQp\t\u007Fm\nLk\tkj\n@N\x04Sb\x04KO\tj_\tp\\\nzU\bTl\bTg\bWI\tcf\x04XO\bWW\ndz\x04li\tBN\nd[\bWO\x04MD\x0BKC\tdj\tI_\bVV\ny\\\x0BLm\x05xl\txB\tkV\x0Bb\\\x0BJW\x0BVS\tVx\x0BxD\td{\x04MD\bTa\t|`\x0BPz\x04R}\x0BWs\x04BM\nsI\x04CN\bTa\x04Jm\npe\ti_\npV\nrh\tRd\tHv\n~A\nxR\x0BWh\x0BWk\nxS\x0BAz\x0BwX\nbI\x04oQ\tfw\nqI\nV|\nun\x05z\u007F\x0Bpg\td\\\x0BoA\x05{D\ti_\x05xB\bT\u007F\t`V\x05qr\tTT\x04g]\x04CA\x0BuR\tVJ\tT`\npw\x0BRb\tI_\nCx\x04Ro\x0BsI\x04Cj\x04Kh\tBv\tWV\x04BB\x05oD\x05{D\nhc\x04Km\x0B^R\tQE\n{I\np@\nc|\x05Gt\tc}\x04Dl\nzU\x05qN\tsV\x05k}\tHh\x0B|j\nqo\x05u|\tQ]\x0Bek\x05\u007FZ\x04M`\x04St\npe\tdj\bVG\x0BeE\t\u007Fm\x0BWc\x04|I\n[W\tfL\bT\u007F\tBZ\x04Su\x0BKa\x04Cq\x05Nt\x04Y[\nqI\bTv\tfM\ti@\t}f\x04B\\\tQy\x0BBl\bWg\x04XD\x05kc\x0Bx[\bVV\tQ]\t\u007Fa\tPy\x0BxD\nfI\t}f\x05oD\tdj\tSG\x05ls\t~D\x04CN\n{Z\t\\v\n_D\nhc\x0Bx_\x04C[\tAJ\nLM\tVx\x04CI\tbj\tc^\tcF\ntC\x04Sx\twr\x04XA\bU\\\t|a\x0BK\\\bTV\bVj\nd|\tfs\x04CX\ntb\bRw\tVx\tAE\tA|\bT\u007F\x05Nt\x0BDg\tVc\bTl\x04d@\npo\t\u007FM\tcF\npe\tiZ\tBo\bSq\nfH\x04l`\bTx\bWf\tHE\x0BF{\tcO\tfD\nlm\x0BfZ\nlm\x0BeU\tdG\x04BH\bTV\tSi\x05MW\nwX\nz\\\t\\c\x04CX\nd}\tl}\bQp\bTV\tF~\bQ\u007F\t`i\ng@\x05nO\bUd\bTl\nL[\twQ\tji\ntC\t|J\nLU\naB\x0BxY\x04Kj\tAJ\x05uN\ti[\npe\x04Sk\x0BDg\x0Bx]\bVb\bVV\nea\tkV\nqI\bTa\x04Sk\nAO\tpD\ntb\nts\nyi\bVg\ti_\x0B_W\nLk\x05Nt\tyj\tfM\x04R\u007F\tiI\bTl\x0BwX\tsV\x0BMl\nyu\tAJ\bVj\x04KO\tWV\x0BA}\x0BW\u007F\nrp\tiD\x0B|o\x05lv\x0BsI\x04BM\td~\tCU\bVb\x04eV\npC\x0BwT\tj`\tc}\x0Bxs\x0Bps\x0Bvh\tWV\x0BGg\x0BAe\x0BVK\x0B]W\trg\x0BWc\x05F`\tBr\x0Bb\\\tdZ\bQp\nqI\x04kF\nLk\x0BAR\bWI\bTg\tbs\tdw\n{L\n_y\tiZ\bTA\tlg\bVV\bTl\tdk\n`k\ta{\ti_\x05{A\x05wj\twN\x0B@@\bTe\ti_\n_D\twL\nAH\x0BiK\x0Bek\n[]\tp_\tyj\bTv\tUS\t[r\n{I\nps\x05Gt\x0BVK\npl\x04S}\x0BWP\t|d\x04MD\x0BHV\bT\u007F\x04R}\x04M`\bTV\bVH\x05lv\x04Ch\bW[\x04Ke\tR{\x0B^R\tab\tBZ\tVA\tB`\nd|\nhs\x04Ke\tBe\x04Oi\tR{\td\\\x05nB\bWZ\tdZ\tVJ\x05Os\t\u007Fm\x04uQ\x0BhZ\x04Q@\x04QQ\nfI\bW[\x04B\\\x04li\nzU\nMd\x04M`\nxS\bVV\n\\}\x0BxD\t\u007Fm\bTp\x04IS\nc|\tkV\x05i~\tV{\x0BhZ\t|b\bWt\n@R\x0BoA\x0BnU\bWI\tea\tB`\tiD\tc}\tTz\x04BR\x0BQB\x05Nj\tCP\t[I\bTv\t`W\x05uN\x0Bpg\x0Bpg\x0BWc\tiT\tbs\twL\tU_\tc\\\t|h\x0BKa\tNr\tfL\nq|\nzu\nz\\\tNr\bUg\t|b\x04m`\bTv\nyd\nrp\bWf\tUX\x04BV\nzk\nd}\twQ\t}f\x04Ce\x0Bed\bTW\bSB\nxU\tcn\bTb\ne\u007F\ta\\\tSG\bU|\npV\nN\\\x04Kn\x0BnU\tAt\tpD\x0B^R\x0BIr\x04b[\tR{\tdE\x0BxD\x0BWK\x0BWA\bQL\bW@\x04Su\bUd\nDM\tPc\x04CA\x04Dl\x04oQ\tHs\x05wi\x04ub\n\u007Fa\bQp\x05Ob\nLP\bTl\x04Y[\x0BK}\tAJ\bQ\u007F\x04n^\x0BsA\bSM\nqM\bWZ\n^W\x0Bz{\x04S|\tfD\bVK\bTv\bPv\x04BB\tCP\x04dF\tid\x0Bxs\x04mx\x0Bws\tcC\ntC\tyc\x05M`\x0BW\u007F\nrh\bQp\x0BxD\x04\\o\nsI\x04_k\nzu\x04kF\tfD\x04Xs\x04XO\tjp\bTv\x04BS\x05{B\tBr\nzQ\nbI\tc{\x04BD\x04BV\x05nO\bTF\tca\x05Jd\tfL\tPV\tI_\nlK\x04`o\twX\npa\tgu\bP}\x05{^\bWf\n{I\tBN\npa\x04Kl\x0Bpg\tcn\tfL\x0Bvh\x04Cq\bTl\x0BnU\bSq\x04Cm\twR\bUJ\npe\nyd\nYg\x04Cy\x0BKW\tfD\nea\x04oQ\tj_\tBv\x04nM\x0BID\bTa\nzA\x05pl\n]n\bTa\tR{\tfr\n_y\bUg\x05{X\x05kk\x0BxD\x04|I\x05xl\nfy\x04Ce\x0BwB\nLk\x0Bd]\noi\n}h\tQ]\npe\bVw\x04Hk\x04OQ\nzk\tAJ\npV\bPv\ny\\\tA{\x04Oi\bSB\x04XA\x0BeE\tjp\nq}\tiD\x05qN\x0B^R\t\u007Fm\tiZ\tBr\bVg\noi\n\\X\tU_\nc|\x0BHV\bTf\tTn\x04\\N\x04\\N\nuB\x05lv\nyu\tTd\bTf\bPL\x0B]W\tdG\nA`\nw^\ngI\npe\tdw\nz\\\x05ia\bWZ\tcF\x04Jm\n{Z\bWO\x04_k\x04Df\x04RR\td\\\bVV\x0Bxs\x04BN\x05ti\x04lm\tTd\t]y\x0BHV\tSo\x0B|j\x04XX\tA|\x0BZ^\x0BGu\bTW\x05M`\x04kF\x0BhZ\x0BVK\tdG\x0BBl\tay\nxU\x05qE\x05nO\bVw\nqI\x04CX\ne\u007F\tPl\bWO\x0BLm\tdL\x05uH\x04Cm\tdT\x04fn\x0BwB\x05ka\x0BnU\n@M\nyT\tHv\t\\}\x04Kh\td~\x04Yh\x05k}\neR\td\\\bWI\t|b\tHK\tiD\bTW\x05MY\npl\bQ_\twr\x0BAx\tHE\bTg\bSq\x05vp\x0Bb\\\bWO\nOl\nsI\nfy\x0BID\t\\c\n{Z\n^~\npe\nAO\tTT\x0Bxv\x04k_\bWO\x0B|j\x0BwB\tQy\ti@\tPl\tHa\tdZ\x05k}\x04ra\tUT\x0BJc\x0Bed\np@\tQN\nd|\tkj\tHk\x04M`\noi\twr\td\\\nlq\no_\nlb\nL[\tac\x04BB\x04BH\x04Cm\npl\tIQ\bVK\x0Bxs\n`e\x0BiK\npa\x04Oi\tUS\bTp\tfD\nPG\x05kk\x04XA\nz\\\neg\x0BWh\twR\x05qN\nqS\tcn\x04lo\nxS\n^W\tBU\nt\u007F\tHE\tp\\\tfF\tfw\bVV\bW@\tak\x0BVK\x05ls\tVJ\bVV\x0BeE\x04\\o\nyX\nYm\x04M`\x05lL\nd|\nzk\tA{\x05sE\twQ\x04XT\nt\u007F\tPl\t]y\x0BwT\x05{p\x04MD\x0Bb\\\tQ]\x04Kj\tJn\nAH\x0BRb\tBU\tHK\t\\c\nfI\x05m\u007F\nqM\n@R\tSo\noi\x04BT\tHv\n_y\x04Kh\tBZ\t]i\bUJ\tV{\x04Sr\nbI\x0BGg\ta_\bTR\nfI\nfl\t[K\tII\x04S|\x0BuW\tiI\bWI\nqI\x0B|j\x04BV\bVg\bWZ\x04kF\x0Bx]\bTA\tab\tfr\ti@\tJd\tJd\x0Bps\nAO\bTa\x05xu\tiD\nzk\t|d\t|`\bW[\tlP\tdG\bVV\x0Bw}\x0BqO\ti[\bQ\u007F\bTz\x0BVF\twN\x05ts\tdw\bTv\neS\ngi\tNr\x05yS\npe\bVV\bSq\n`m\tyj\tBZ\x0BWX\bSB\tc\\\nUR\t[J\tc_\x04nM\bWQ\x0BAx\nMd\tBr\x05ui\x0BxY\bSM\x0BWc\x0B|j\x0Bxs\t}Q\tBO\bPL\bWW\tfM\nAO\tPc\x0BeU\x04e^\bTg\nqI\tac\bPv\tcF\x04oQ\tQ\u007F\x0BhZ\x05ka\nz\\\tiK\tBU\n`k\tCP\x04S|\x04M`\n{I\tS{\x04_O\tBZ\x04Zi\x04Sk\tps\tp\\\nYu\n]s\nxC\bWt\nbD\tkV\x0BGu\x05yS\nqA\t[r\neK\x04M`\tdZ\x05lL\bUg\bTl\nbD\tUS\x0Bb\\\tpV\ncc\x04S\\\tct\t`z\bPL\x0BWs\nA`\neg\bSq\x05uE\x04CR\x0BDg\t`W\x0Bz{\x0BWc\x04Sk\x04Sk\tbW\bUg\tea\nxZ\tiI\tUX\tVJ\nqn\tS{\x0BRb\bTQ\npl\x05Gt\x0BuW\x05uj\npF\nqI\tfL\t[I\tia\x04XO\nyu\x0BDg\x0Bed\tq{\x04VG\bQ\u007F\x05ka\tVj\tkV\txB\nd|\np@\tQN\tPc\tps\x04]j\tkV\toU\bTp\nzU\x05nB\x0BB]\ta{\bV@\n]n\x04m`\tcz\tR{\x04m`\bQa\x0BwT\bSM\x05MY\x05qN\tdj\x05~s\x0BQ}\x05MY\x0BMB\tBv\twR\bRg\x0BQ}\tql\x0BKC\nrm\x05xu\x04CC\x0BwB\x0Bvh\tBq\x04Xq\npV\ti_\x05Ob\x05uE\nbd\nqo\x0B{i\nC~\tBL\x0BeE\x05uH\bVj\x04Ey\x04Gz\x0BzR\x0B{i\tcf\n{Z\n]n\x04XA\x0BGu\x0BnU\thS\x0BGI\nCc\tHE\bTA\tHB\x04BH\x04Cj\nCc\bTF\tHE\nXI\tA{\bQ\u007F\tc\\\x0BmO\x0BWX\nfH\np@\x05MY\bTF\nlK\tBt\nzU\tTT\x04Km\x0BwT\npV\ndt\x0ByI\tVx\tQ\u007F\tRg\tTd\nzU\bRS\nLM\twA\x04nM\tTn\ndS\t]g\nLc\x0BwB\t}t\t[I\tCP\x04kX\x0BFm\x0BhZ\x05m\u007F\ti[\np@\x0BQ}\x0BW\u007F\t|d\nMO\nMd\tf_\tfD\tcJ\tHz\x0BRb\tio\tPy\x04Y[\nxU\tct\x0B@@\tww\bPv\x04BM\x04FF\ntb\x05v|\x0BKm\tBq\tBq\x04Kh\x04`o\nZd\x04XU\ti]\t|`\tSt\x04B\\\bQ\u007F\x0B_W\tTJ\nqI\t|a\tA{\x0BuP\x04MD\tPl\nxR\tfL\x0Bws\tc{\td\\\bV`\neg\tHK\x05kc\nd|\bVV\ny\\\x05kc\ti]\bVG\t`V\tss\tI_\tAE\tbs\tdu\nel\tpD\x0BW\u007F\nqs\x05lv\bSM\x04Zi\x0BVK\x05ia\x0BQB\tQ\u007F\n{Z\bPt\x0BKl\nlK\nhs\ndS\bVK\x05mf\nd^\tkV\tcO\nc|\bVH\t\\]\bTv\bSq\tmI\x0BDg\tVJ\tcn\ny\\\bVg\bTv\nyX\bTF\t]]\bTp\noi\nhs\x0BeU\nBf\tdj\x05Mr\n|p\t\\g\t]r\bVb\x05{D\nd[\x04XN\tfM\tO\\\x05s_\tcf\tiZ\x04XN\x0BWc\tqv\n`m\tU^\x05oD\nd|\x0BGg\tdE\x0Bwf\x04lo\x04u}\nd|\x05oQ\t`i\x04Oi\x0BxD\ndZ\nCx\x04Yw\nzk\ntb\ngw\tyj\tB`\nyX\x0Bps\ntC\x0BpP\x0Bqw\bPu\bPX\tDm\npw\x05Nj\tss\taG\x0Bxs\bPt\noL\x04Gz\tOk\ti@\ti]\x04eC\tIQ\tii\tdj\x0B@J\t|d\x05uh\bWZ\x0BeU\x0BnU\bTa\tcC\x04g]\nzk\x04Yh\bVK\nLU\np@\ntb\ntR\tCj\x0BNP\ti@\bP{\n\\}\n{c\nwX\tfL\bVG\tc{\t|`\tAJ\t|C\tfD\x05ln\t|d\tbs\nqI\x05{B\x0BAx\np@\nzk\x0BRb\x05Os\x0BWS\x04e^\x0BD_\tBv\x0BWd\bVb\x0Bxs\x0BeE\bRw\n]n\n|p\x0Bg|\tfw\x05kc\bTI\x05ka\n\\T\x04Sp\tju\x0Bps\npe\x05u|\x0BGr\bVe\tCU\x04]M\x04XU\x0BxD\bTa\tIQ\x0BWq\tCU\tam\tdj\bSo\x04Sw\x0BnU\x04Ch\tQ]\x05s_\bPt\tfS\bTa\t\\}\n@O\x04Yc\tUZ\bTx\npe\x0BnU\nzU\t|}\tiD\nz\\\bSM\x0BxD\x04BR\nzQ\tQN\x04]M\x04Yh\nLP\x0BFm\x0BLX\x05vc\x0Bql\x05ka\tHK\bVb\ntC\nCy\bTv\nuV\x04oQ\t`z\t[I\tB`\x0BRb\tyj\tsb\x0BWs\bTl\tkV\x0Bed\ne\u007F\x05lL\x0BxN\t\u007Fm\nJn\tjY\x0BxD\bVb\bSq\x0Byu\twL\x0BXL\bTA\tpg\tAt\tnD\x04XX\twR\npl\nhw\x05yS\nps\tcO\bW[\x0B|j\x04XN\tsV\tp\\\tBe\nb~\nAJ\n]e\x05k`\x05qN\tdw\tWV\tHE\x0BEV\x05Jz\tid\tB`\tzh\x05E]\tfD\bTg\x05qN\bTa\tja\x04Cv\bSM\nhc\bUe\x05t_\tie\x04g]\twQ\nPn\bVB\tjw\bVg\x0BbE\tBZ\x0BRH\bP{\tjp\n\\}\ta_\tcC\t|a\x0BD]\tBZ\ti[\tfD\x0BxW\no_\td\\\n_D\ntb\t\\c\tAJ\nlK\x04oQ\x04lo\x0BLx\x0BM@\bWZ\x04Kn\x0Bpg\nTi\nIv\n|r\x0B@}\x05Jz\x05Lm\x05Wh\x05k}\x05ln\x0BxD\n]s\x04gc\x0Bps\tBr\bTW\x0BBM\x05tZ\nBY\x04DW\tjf\x0BSW\x04C}\nqo\tdE\tmv\tIQ\bPP\bUb\x05lv\x04BC\nzQ\t[I\x0Bgl\nig\bUs\x04BT\x0BbC\bSq\tsU\tiW\nJn\tSY\tHK\trg\npV\x0BID\x0B|j\x04KO\t`S\t|a`vbmglfmujbqnbgqjgavp`bqjmj`jlwjfnslslqrvf`vfmwbfpwbglsvfgfmivfdlp`lmwqbfpw/Mmmlnaqfwjfmfmsfqejonbmfqbbnjdlp`jvgbg`fmwqlbvmrvfsvfgfpgfmwqlsqjnfqsqf`jlpfd/Vmavfmlpuloufqsvmwlppfnbmbkba/Abbdlpwlmvfulpvmjglp`bqolpfrvjslmj/]lpnv`klpbodvmb`lqqfljnbdfmsbqwjqbqqjabnbq/Abklnaqffnsoflufqgbg`bnajlnv`kbpevfqlmsbpbglo/Amfbsbqf`fmvfubp`vqplpfpwbabrvjfqlojaqlp`vbmwlb``fplnjdvfoubqjlp`vbwqlwjfmfpdqvslppfq/Mmfvqlsbnfgjlpeqfmwfb`fq`bgfn/Mplefqwb`l`kfpnlgfoljwbojbofwqbpbod/Vm`lnsqb`vbofpf{jpwf`vfqslpjfmglsqfmpboofdbqujbifpgjmfqlnvq`jbslgq/Msvfpwlgjbqjlsvfaolrvjfqfnbmvfosqlsjl`qjpjp`jfqwlpfdvqlnvfqwfevfmwf`fqqbqdqbmgffef`wlsbqwfpnfgjgbsqlsjbleqf`fwjfqqbf.nbjoubqjbpelqnbpevwvqllaifwlpfdvjqqjfpdlmlqnbpnjpnlp/Vmj`l`bnjmlpjwjlpqby/_mgfajglsqvfabwlofglwfm/Abifp/Vpfpsfql`l`jmblqjdfmwjfmgb`jfmwl`/Mgjykbaobqpfq/Abobwjmbevfqybfpwjoldvfqqbfmwqbq/E{jwlo/_sfybdfmgbu/Agflfujwbqsbdjmbnfwqlpibujfqsbgqfpe/M`jo`bafyb/Mqfbppbojgbfmu/Alibs/_mbavplpajfmfpwf{wlpoofubqsvfgbmevfqwf`ln/Vm`obpfpkvnbmlwfmjglajoablvmjgbgfpw/Mpfgjwbq`qfbgl<X<W=c=k=n<R<V<\\<V<T<W<T=a=n<R<^=m<Y<Y<_<R<S=l<T=n<\\<V<Y=e<Y=o<Z<Y<v<\\<V<]<Y<[<]=g<W<R<Q<T<~=m<Y<S<R<X<A=n<R=n<R<P=k<Y<P<Q<Y=n<W<Y=n=l<\\<[<R<Q<\\<_<X<Y<P<Q<Y<x<W=c<s=l<T<Q<\\=m<Q<T=i=n<Y<P<V=n<R<_<R<X<^<R=n=n<\\<P<M<D<|<P<\\=c<K=n<R<^<\\=m<^<\\<P<Y<P=o<N<\\<V<X<^<\\<Q<\\<P=a=n<T=a=n=o<~<\\<P=n<Y=i<S=l<R=n=o=n<Q<\\<X<X<Q=c<~<R=n=n=l<T<Q<Y<U<~<\\=m<Q<T<P=m<\\<P=n<R=n=l=o<]<r<Q<T<P<T=l<Q<Y<Y<r<r<r<W<T=j=a=n<\\<r<Q<\\<Q<Y<P<X<R<P<P<R<U<X<^<Y<R<Q<R=m=o<X\x0CHy\x0CIk\x0CHU\x0CId\x0CHy\x0CIl\x0CHT\x0CIk\x0CHy\x0CHR\x0CHy\x0CIg\x0CHx\x0CH\\\x0CHF\x0CH\\\x0CHD\x0CIk\x0CHc\x0CHy\x0CHy\x0CHS\x0CHA\x0CIl\x0CHk\x0CHT\x0CHy\x0CH\\\x0CHH\x0CIg\x0CHU\x0CIg\x0CHj\x0CHF\x0CHU\x0CIl\x0CHC\x0CHU\x0CHC\x0CHR\x0CHH\x0CHy\x0CHI\x0CHRibdqbm\x0CHj\x0CHp\x0CHp\x0CIg\x0CHi\x0CH@\x0CHJ\x0CIg\x0CH{\x0CHd\x0CHp\x0CHR\x0CH{\x0CHc\x0CHU\x0CHB\x0CHk\x0CHD\x0CHY\x0CHU\x0CHC\x0CIk\x0CHI\x0CIk\x0CHI\x0CIl\x0CHt\x0CH\\\x0CHp\x0CH@\x0CHJ\x0CIl\x0CHy\x0CHd\x0CHp\x0CIl\x0CHY\x0CIk\x0CHD\x0CHd\x0CHD\x0CHc\x0CHU\x0CH\\\x0CHe\x0CHT\x0CHB\x0CIk\x0CHy\x0CHB\x0CHY\x0CIg\x0CH^\x0CIk\x0CHT\x0CH@\x0CHB\x0CHd\x0CHJ\x0CIk\x0CH\u007F\x0CH\\\x0CHj\x0CHB\x0CH@\x0CHT\x0CHA\x0CH\\\x0CH@\x0CHD\x0CHv\x0CH^\x0CHB\x0CHD\x0CHj\x0CH{\x0CHT\x0CIl\x0CH^\x0CIl4U5h5e4I5h5e5k4\\4K4N4B4]4U4C4C4K5h5e5k4\\5k4Y5d4]4V5f4]5o4K5j5d5h4K4D5f5j4U4]4Z4\\5h5o5k5j4K5f5d5i5n4K5h4U5h5f4K5j4K5h5o5j4A4F5e5n4D5h5d4A4E4K4B4]5m5n4[4U4D4C4]5o5j4I4\\4K5o5i4K4K4A4C4I5h4K5m5f5k4D4U4Z5o5f5m4D4A4G5d5i5j5d5k5d4O5j4K4@4C4K5h5k4K4_5h5i4U5j4C5h5f4_4U4D4]4Y5h5e5i5j4\\4D5k4K4O5j5k5i4G5h5o5j4F4K5h4K4A5f4G5i4Y4]4X4]4A4A5d5h5d5m5f4K4\\4K5h5o5h5i4]4E4K5j4F4K5h5m4O4D5d4B4K4Y4O5j4F4K5j5k4K5h5f4U4Z5d5d5n4C4K4D5j4B5f4]4D5j4F5h5o5i4X4K4M5d5k5f4K4D5d5n4Y4Y5d5i4K4]5n5i4O4A4C5j4A5j4U4C5i4]4O5f4K4A4E5o4F4D4C5d5j5f4@4D5i5j5k4F4A4F4@5k4E4_5j4E5f4F5i5o4]4E4V4^4E5j5m4_4D5f4F5h5h5k5h5j4K4F5h5o5n5h4D5h5i4K4U5j5k4O5d5h4X5f4M5j5d4]4O5i4K5m5f5o4D5o5h4\\4K4F4]4F4D4D4O5j5k5i4_4K5j5o4D5f4U5m5n4C4A4_5j5h5k5i4X4U4]4O5k5h4X5k4]5n4[4]4[5h4Dsqlejofpfquj`fgfebvowkjnpfoegfwbjop`lmwfmwpvsslqwpwbqwfgnfppbdfpv``fppebpkjlm?wjwof=`lvmwqzb``lvmw`qfbwfgpwlqjfpqfpvowpqvmmjmdsql`fpptqjwjmdlaif`wpujpjaoftfo`lnfbqwj`ofvmhmltmmfwtlqh`lnsbmzgzmbnj`aqltpfqsqjub`zsqlaofnPfquj`fqfpsf`wgjpsobzqfrvfpwqfpfquftfapjwfkjpwlqzeqjfmgplswjlmptlqhjmdufqpjlmnjoojlm`kbmmfotjmglt-bggqfppujpjwfgtfbwkfq`lqqf`wsqlgv`wfgjqf`welqtbqgzlv#`bmqfnlufgpvaif`w`lmwqlobq`kjuf`vqqfmwqfbgjmdojaqbqzojnjwfgnbmbdfqevqwkfqpvnnbqznb`kjmfnjmvwfpsqjubwf`lmwf{wsqldqbnpl`jfwzmvnafqptqjwwfmfmbaofgwqjddfqplvq`fpolbgjmdfofnfmwsbqwmfqejmboozsfqef`wnfbmjmdpzpwfnphffsjmd`vowvqf%rvlw8/ilvqmbosqlif`wpvqeb`fp%rvlw8f{sjqfpqfujftpabobm`fFmdojpk@lmwfmwwkqlvdkSofbpf#lsjmjlm`lmwb`wbufqbdfsqjnbqzujoobdfPsbmjpkdboofqzgf`ojmfnffwjmdnjppjlmslsvobqrvbojwznfbpvqfdfmfqbopsf`jfppfppjlmpf`wjlmtqjwfqp`lvmwfqjmjwjboqfslqwpejdvqfpnfnafqpklogjmdgjpsvwffbqojfqf{sqfppgjdjwbosj`wvqfBmlwkfqnbqqjfgwqbeej`ofbgjmd`kbmdfg`fmwqbouj`wlqzjnbdfp,qfbplmppwvgjfpefbwvqfojpwjmdnvpw#afp`kllopUfqpjlmvpvboozfsjplgfsobzjmddqltjmdlaujlvplufqobzsqfpfmwb`wjlmp?,vo=\x0E\ttqbssfqboqfbgz`fqwbjmqfbojwzpwlqbdfbmlwkfqgfphwlsleefqfgsbwwfqmvmvpvboGjdjwbo`bsjwboTfapjwfebjovqf`lmmf`wqfgv`fgBmgqljggf`bgfpqfdvobq#%bns8#bmjnbopqfofbpfBvwlnbwdfwwjmdnfwklgpmlwkjmdSlsvobq`bswjlmofwwfqp`bswvqfp`jfm`foj`fmpf`kbmdfpFmdobmg>2%bns8Kjpwlqz#>#mft#@fmwqbovsgbwfgPsf`jboMfwtlqhqfrvjqf`lnnfmwtbqmjmd@loofdfwlloabqqfnbjmpaf`bvpffof`wfgGfvwp`kejmbm`ftlqhfqprvj`hozafwtffmf{b`wozpfwwjmdgjpfbpfPl`jfwztfbslmpf{kjajw%ow8\"..@lmwqlo`obppfp`lufqfglvwojmfbwwb`hpgfuj`fp+tjmgltsvqslpfwjwof>!Nlajof#hjoojmdpkltjmdJwbojbmgqlssfgkfbujozfeef`wp.2$^*8\t`lmejqn@vqqfmwbgubm`fpkbqjmdlsfmjmdgqbtjmdajoojlmlqgfqfgDfqnbmzqfobwfg?,elqn=jm`ovgftkfwkfqgfejmfgP`jfm`f`bwboldBqwj`ofavwwlmpobqdfpwvmjelqnilvqmfzpjgfabq@kj`bdlklojgbzDfmfqbosbppbdf/%rvlw8bmjnbwfeffojmdbqqjufgsbppjmdmbwvqboqlvdkoz-\t\tWkf#avw#mlwgfmpjwzAqjwbjm@kjmfpfob`h#lewqjavwfJqfobmg!#gbwb.eb`wlqpqf`fjufwkbw#jpOjaqbqzkvpabmgjm#eb`wbeebjqp@kbqofpqbgj`boaqlvdkwejmgjmdobmgjmd9obmd>!qfwvqm#ofbgfqpsobmmfgsqfnjvnsb`hbdfBnfqj`bFgjwjlm^%rvlw8Nfppbdfmffg#wlubovf>!`lnsof{ollhjmdpwbwjlmafojfufpnboofq.nlajofqf`lqgptbmw#wlhjmg#leEjqfel{zlv#bqfpjnjobqpwvgjfgnb{jnvnkfbgjmdqbsjgoz`ojnbwfhjmdglnfnfqdfgbnlvmwpelvmgfgsjlmffqelqnvobgzmbpwzklt#wl#Pvsslqwqfufmvff`lmlnzQfpvowpaqlwkfqplogjfqobqdfoz`boojmd-%rvlw8B``lvmwFgtbqg#pfdnfmwQlafqw#feelqwpSb`jej`ofbqmfgvs#tjwkkfjdkw9tf#kbufBmdfofpmbwjlmp\\pfbq`kbssojfgb`rvjqfnbppjufdqbmwfg9#ebopfwqfbwfgajddfpwafmfejwgqjujmdPwvgjfpnjmjnvnsfqkbspnlqmjmdpfoojmdjp#vpfgqfufqpfubqjbmw#qlof>!njppjmdb`kjfufsqlnlwfpwvgfmwplnflmff{wqfnfqfpwlqfalwwln9fuloufgboo#wkfpjwfnbsfmdojpktbz#wl##Bvdvpwpznalop@lnsbmznbwwfqpnvpj`bobdbjmpwpfqujmd~*+*8\x0E\tsbznfmwwqlvaof`lm`fsw`lnsbqfsbqfmwpsobzfqpqfdjlmpnlmjwlq#$$Wkf#tjmmjmdf{solqfbgbswfgDboofqzsqlgv`fbajojwzfmkbm`f`bqffqp*-#Wkf#`loof`wPfbq`k#bm`jfmwf{jpwfgellwfq#kbmgofqsqjmwfg`lmplofFbpwfqmf{slqwptjmgltp@kbmmfojoofdbomfvwqbopvddfpw\\kfbgfqpjdmjmd-kwno!=pfwwofgtfpwfqm`bvpjmd.tfahjw`objnfgIvpwj`f`kbswfquj`wjnpWklnbp#nlyjoobsqlnjpfsbqwjfpfgjwjlmlvwpjgf9ebopf/kvmgqfgLoznsj`\\avwwlmbvwklqpqfb`kfg`kqlmj`gfnbmgppf`lmgpsqlwf`wbglswfgsqfsbqfmfjwkfqdqfbwozdqfbwfqlufqboojnsqluf`lnnbmgpsf`jbopfbq`k-tlqpkjsevmgjmdwklvdkwkjdkfpwjmpwfbgvwjojwzrvbqwfq@vowvqfwfpwjmd`ofbqozf{slpfgAqltpfqojafqbo~#`bw`kSqlif`wf{bnsofkjgf+*8EolqjgbbmptfqpbooltfgFnsfqlqgfefmpfpfqjlvpeqffglnPfufqbo.avwwlmEvqwkfqlvw#le#\">#mvoowqbjmfgGfmnbqhuljg+3*,boo-ipsqfufmwQfrvfpwPwfskfm\t\tTkfm#lapfquf?,k1=\x0E\tNlgfqm#sqlujgf!#bow>!alqgfqp-\t\tElq#\t\tNbmz#bqwjpwpsltfqfgsfqelqnej`wjlmwzsf#lenfgj`bowj`hfwplsslpfg@lvm`jotjwmfppivpwj`fDflqdf#Afodjvn---?,b=wtjwwfqmlwbaoztbjwjmdtbqebqf#Lwkfq#qbmhjmdskqbpfpnfmwjlmpvqujufp`klobq?,s=\x0E\t#@lvmwqzjdmlqfgolpp#leivpw#bpDflqdjbpwqbmdf?kfbg=?pwlssfg2$^*8\x0E\tjpobmgpmlwbaofalqgfq9ojpw#le`bqqjfg233/333?,k0=\t#pfufqboaf`lnfppfof`w#tfggjmd33-kwnonlmbq`klee#wkfwfb`kfqkjdkoz#ajloldzojef#lelq#fufmqjpf#le%qbrvl8sovplmfkvmwjmd+wklvdkGlvdobpiljmjmd`jq`ofpElq#wkfBm`jfmwUjfwmbnufkj`ofpv`k#bp`qzpwboubovf#>Tjmgltpfmilzfgb#pnboobppvnfg?b#jg>!elqfjdm#Boo#qjklt#wkfGjpsobzqfwjqfgkltfufqkjggfm8abwwofppffhjmd`bajmfwtbp#mlwollh#bw`lmgv`wdfw#wkfIbmvbqzkbssfmpwvqmjmdb9klufqLmojmf#Eqfm`k#ob`hjmdwzsj`bof{wqb`wfmfnjfpfufm#jedfmfqbwgf`jgfgbqf#mlw,pfbq`kafojfep.jnbdf9ol`bwfgpwbwj`-oldjm!=`lmufqwujlofmwfmwfqfgejqpw!=`jq`vjwEjmobmg`kfnjpwpkf#tbp23s{8!=bp#pv`kgjujgfg?,psbm=tjoo#afojmf#leb#dqfbwnzpwfqz,jmgf{-eboojmdgvf#wl#qbjotbz`loofdfnlmpwfqgfp`fmwjw#tjwkmv`ofbqIftjpk#sqlwfpwAqjwjpkeoltfqpsqfgj`wqfelqnpavwwlm#tkl#tbpof`wvqfjmpwbmwpvj`jgfdfmfqj`sfqjlgpnbqhfwpPl`jbo#ejpkjmd`lnajmfdqbskj`tjmmfqp?aq#,=?az#wkf#MbwvqboSqjub`z`llhjfplvw`lnfqfploufPtfgjpkaqjfeozSfqpjbmpl#nv`k@fmwvqzgfsj`wp`lovnmpklvpjmdp`qjswpmf{w#wlafbqjmdnbssjmdqfujpfgiRvfqz+.tjgwk9wjwof!=wllowjsPf`wjlmgfpjdmpWvqhjpkzlvmdfq-nbw`k+~*+*8\t\tavqmjmdlsfqbwfgfdqffpplvq`f>Qj`kbqg`olpfozsobpwj`fmwqjfp?,wq=\x0E\t`lolq9 vo#jg>!slppfppqloojmdskzpj`pebjojmdf{f`vwf`lmwfpwojmh#wlGfebvow?aq#,=\t9#wqvf/`kbqwfqwlvqjpn`obppj`sql`ffgf{sobjm?,k2=\x0E\tlmojmf-<{no#ufkfosjmdgjbnlmgvpf#wkfbjqojmffmg#..=*-bwwq+qfbgfqpklpwjmd eeeeeeqfbojyfUjm`fmwpjdmbop#pq`>!,Sqlgv`wgfpsjwfgjufqpfwfoojmdSvaoj`#kfog#jmIlpfsk#wkfbwqfbeef`wp?pwzof=b#obqdfglfpm$wobwfq/#Fofnfmwebuj`lm`qfbwlqKvmdbqzBjqslqwpff#wkfpl#wkbwNj`kbfoPzpwfnpSqldqbnp/#bmg##tjgwk>f%rvlw8wqbgjmdofew!=\tsfqplmpDlogfm#Beebjqpdqbnnbqelqnjmdgfpwqlzjgfb#le`bpf#lelogfpw#wkjp#jp-pq`#>#`bqwllmqfdjpwq@lnnlmpNvpojnpTkbw#jpjm#nbmznbqhjmdqfufbopJmgffg/frvbooz,pklt\\blvwgllqfp`bsf+Bvpwqjbdfmfwj`pzpwfn/Jm#wkf#pjwwjmdKf#boplJpobmgpB`bgfnz\t\n\n?\"..Gbmjfo#ajmgjmdaol`h!=jnslpfgvwjojyfBaqbkbn+f{`fswxtjgwk9svwwjmd*-kwno+\u007F\u007F#X^8\tGBWBX#)hjw`kfmnlvmwfgb`wvbo#gjbof`wnbjmoz#\\aobmh$jmpwboof{sfqwpje+wzsfJw#bopl%`lsz8#!=Wfqnpalqm#jmLswjlmpfbpwfqmwbohjmd`lm`fqmdbjmfg#lmdljmdivpwjez`qjwj`peb`wlqzjwp#ltmbppbvowjmujwfgobpwjmdkjp#ltmkqfe>!,!#qfo>!gfufols`lm`fqwgjbdqbngloobqp`ovpwfqsks<jg>bo`lklo*8~*+*8vpjmd#b=?psbm=ufppfopqfujuboBggqfppbnbwfvqbmgqljgboofdfgjoomfpptbohjmd`fmwfqprvbojeznbw`kfpvmjejfgf{wjm`wGfefmpfgjfg#jm\t\n?\"..#`vpwlnpojmhjmdOjwwof#Allh#lefufmjmdnjm-ip<bqf#wkfhlmwbhwwlgbz$p-kwno!#wbqdfw>tfbqjmdBoo#Qjd8\t~*+*8qbjpjmd#Bopl/#`qv`jbobalvw!=gf`obqf..=\t?p`ejqfel{bp#nv`kbssojfpjmgf{/#p/#avw#wzsf#>#\t\x0E\t?\"..wltbqgpQf`lqgpSqjubwfElqfjdmSqfnjfq`klj`fpUjqwvboqfwvqmp@lnnfmwSltfqfgjmojmf8slufqwz`kbnafqOjujmd#ulovnfpBmwklmzoldjm!#QfobwfgF`lmlnzqfb`kfp`vwwjmddqbujwzojef#jm@kbswfq.pkbgltMlwbaof?,wg=\x0E\t#qfwvqmpwbgjvntjgdfwpubqzjmdwqbufopkfog#aztkl#bqftlqh#jmeb`vowzbmdvobqtkl#kbgbjqslqwwltm#le\t\tPlnf#$`oj`h$`kbqdfphfztlqgjw#tjoo`jwz#le+wkjp*8Bmgqft#vmjrvf#`kf`hfglq#nlqf033s{8#qfwvqm8qpjlm>!sovdjmptjwkjm#kfqpfoePwbwjlmEfgfqboufmwvqfsvaojpkpfmw#wlwfmpjlmb`wqfpp`lnf#wlejmdfqpGvhf#lesflsof/f{soljwtkbw#jpkbqnlmzb#nbilq!9!kwwsjm#kjp#nfmv!=\tnlmwkozleej`fq`lvm`jodbjmjmdfufm#jmPvnnbqzgbwf#leolzbowzejwmfppbmg#tbpfnsfqlqpvsqfnfPf`lmg#kfbqjmdQvppjbmolmdfpwBoafqwbobwfqbopfw#le#pnboo!=-bssfmggl#tjwkefgfqboabmh#leafmfbwkGfpsjwf@bsjwbodqlvmgp*/#bmg#sfq`fmwjw#eqln`olpjmd`lmwbjmJmpwfbgejewffmbp#tfoo-zbkll-qfpslmgejdkwfqlap`vqfqfeof`wlqdbmj`>#Nbwk-fgjwjmdlmojmf#sbggjmdb#tkloflmfqqlqzfbq#lefmg#le#abqqjfqtkfm#jwkfbgfq#klnf#leqfpvnfgqfmbnfgpwqlmd=kfbwjmdqfwbjmp`olvgeqtbz#le#Nbq`k#2hmltjmdjm#sbqwAfwtffmofpplmp`olpfpwujqwvboojmhp!=`qlppfgFMG#..=ebnlvp#btbqgfgOj`fmpfKfbowk#ebjqoz#tfbowkznjmjnboBeqj`bm`lnsfwfobafo!=pjmdjmdebqnfqpAqbpjo*gjp`vppqfsob`fDqfdlqzelmw#`lsvqpvfgbssfbqpnbhf#vsqlvmgfgalwk#leaol`hfgpbt#wkfleej`fp`lolvqpje+gl`vtkfm#kffmelq`fsvpk+evBvdvpw#VWE.;!=Ebmwbpzjm#nlpwjmivqfgVpvboozebqnjmd`olpvqflaif`w#gfefm`fvpf#le#Nfgj`bo?algz=\tfujgfmwaf#vpfghfz@lgfpj{wffmJpobnj` 333333fmwjqf#tjgfoz#b`wjuf#+wzsflelmf#`bm`lolq#>psfbhfqf{wfmgpSkzpj`pwfqqbjm?walgz=evmfqboujftjmdnjggof#`qj`hfwsqlskfwpkjewfggl`wlqpQvppfoo#wbqdfw`lnsb`wbodfaqbpl`jbo.avoh#lenbm#bmg?,wg=\t#kf#ofew*-ubo+*ebopf*8oldj`boabmhjmdklnf#wlmbnjmd#Bqjylmb`qfgjwp*8\t~*8\telvmgfqjm#wvqm@loojmpafelqf#Avw#wkf`kbqdfgWjwof!=@bswbjmpsfoofgdlggfppWbd#..=Bggjmd9avw#tbpQf`fmw#sbwjfmwab`h#jm>ebopf%Ojm`lomtf#hmlt@lvmwfqIvgbjpnp`qjsw#bowfqfg$^*8\t##kbp#wkfvm`ofbqFufmw$/alwk#jmmlw#boo\t\t?\"..#sob`jmdkbqg#wl#`fmwfqplqw#le`ojfmwppwqffwpAfqmbqgbppfqwpwfmg#wlebmwbpzgltm#jmkbqalvqEqffglniftfoqz,balvw--pfbq`kofdfmgpjp#nbgfnlgfqm#lmoz#lmlmoz#wljnbdf!#ojmfbq#sbjmwfqbmg#mlwqbqfoz#b`qlmzngfojufqpklqwfq33%bns8bp#nbmztjgwk>!,)#?\"X@wjwof#>le#wkf#oltfpw#sj`hfg#fp`bsfgvpfp#lesflsofp#Svaoj`Nbwwkftwb`wj`pgbnbdfgtbz#elqobtp#lefbpz#wl#tjmgltpwqlmd##pjnsof~`bw`k+pfufmwkjmelal{tfmw#wlsbjmwfg`jwjyfmJ#glm$wqfwqfbw-#Plnf#tt-!*8\talnajmdnbjowl9nbgf#jm-#Nbmz#`bqqjfp\u007F\u007Fx~8tjtlqh#lepzmlmzngfefbwpebulqfglswj`bosbdfWqbvmofpp#pfmgjmdofew!=?`lnP`lqBoo#wkfiRvfqz-wlvqjpw@obppj`ebopf!#Tjokfonpvavqapdfmvjmfajpklsp-psojw+dolabo#elooltpalgz#lemlnjmbo@lmwb`wpf`vobqofew#wl`kjfeoz.kjggfm.abmmfq?,oj=\t\t-#Tkfm#jm#alwkgjpnjppF{solqfbotbzp#ujb#wkfpsb/]lotfoebqfqvojmd#bqqbmdf`bswbjmkjp#plmqvof#lekf#wllhjwpfoe/>3%bns8+`boofgpbnsofpwl#nbhf`ln,sbdNbqwjm#Hfmmfgzb``fswpevoo#lekbmgofgAfpjgfp,,..=?,baof#wlwbqdfwpfppfm`fkjn#wl#jwp#az#`lnnlm-njmfqbowl#wbhftbzp#wlp-lqd,obgujpfgsfmbowzpjnsof9je#wkfzOfwwfqpb#pklqwKfqafqwpwqjhfp#dqlvsp-ofmdwkeojdkwplufqobspoltoz#ofppfq#pl`jbo#?,s=\t\n\njw#jmwlqbmhfg#qbwf#levo=\x0E\t##bwwfnswsbjq#lenbhf#jwHlmwbhwBmwlmjlkbujmd#qbwjmdp#b`wjufpwqfbnpwqbssfg!*-`pp+klpwjofofbg#wlojwwof#dqlvsp/Sj`wvqf..=\x0E\t\x0E\t#qltp>!#laif`wjmufqpf?ellwfq@vpwlnU=?_,p`qploujmd@kbnafqpobufqztlvmgfgtkfqfbp\">#$vmgelq#boosbqwoz#.qjdkw9Bqbajbmab`hfg#`fmwvqzvmjw#lenlajof.Fvqlsf/jp#klnfqjph#legfpjqfg@ojmwlm`lpw#lebdf#le#af`lnf#mlmf#les%rvlw8Njggof#fbg$*X3@qjwj`ppwvgjlp=%`lsz8dqlvs!=bppfnaonbhjmd#sqfppfgtjgdfw-sp9!#<#qfavjowaz#plnfElqnfq#fgjwlqpgfobzfg@bmlmj`kbg#wkfsvpkjmd`obpp>!avw#bqfsbqwjboAbazolmalwwln#`bqqjfq@lnnbmgjwp#vpfBp#tjwk`lvqpfpb#wkjqggfmlwfpbopl#jmKlvpwlm13s{8!=b``vpfgglvaof#dlbo#leEbnlvp#*-ajmg+sqjfpwp#Lmojmfjm#Ivozpw#(#!d`lmpvowgf`jnbokfosevoqfujufgjp#ufqzq$($jswolpjmd#efnbofpjp#boplpwqjmdpgbzp#lebqqjuboevwvqf#?laif`welq`jmdPwqjmd+!#,=\t\n\nkfqf#jpfm`lgfg-##Wkf#aboollmglmf#az,`lnnlmad`lolqobt#le#Jmgjbmbbuljgfgavw#wkf1s{#0s{irvfqz-bewfq#bsloj`z-nfm#bmgellwfq.>#wqvf8elq#vpfp`qffm-Jmgjbm#jnbdf#>ebnjoz/kwws9,,#%maps8gqjufqpfwfqmbopbnf#bpmlwj`fgujftfqp~*+*8\t#jp#nlqfpfbplmpelqnfq#wkf#mftjp#ivpw`lmpfmw#Pfbq`ktbp#wkftkz#wkfpkjssfgaq=?aq=tjgwk9#kfjdkw>nbgf#le`vjpjmfjp#wkbwb#ufqz#Bgnjqbo#ej{fg8mlqnbo#NjppjlmSqfpp/#lmwbqjl`kbqpfwwqz#wl#jmubgfg>!wqvf!psb`jmdjp#nlpwb#nlqf#wlwboozeboo#le~*8\x0E\t##jnnfmpfwjnf#jmpfw#lvwpbwjpezwl#ejmggltm#wlolw#le#Sobzfqpjm#Ivmfrvbmwvnmlw#wkfwjnf#wlgjpwbmwEjmmjpkpq`#>#+pjmdof#kfos#leDfqnbm#obt#bmgobafofgelqfpwp`llhjmdpsb`f!=kfbgfq.tfoo#bpPwbmofzaqjgdfp,dolabo@qlbwjb#Balvw#X3^8\t##jw/#bmgdqlvsfgafjmd#b*xwkqltkf#nbgfojdkwfqfwkj`boEEEEEE!alwwln!ojhf#b#fnsolzpojuf#jmbp#pffmsqjmwfqnlpw#leva.ojmhqfif`wpbmg#vpfjnbdf!=pv``ffgeffgjmdMv`ofbqjmelqnbwl#kfosTlnfm$pMfjwkfqNf{j`bmsqlwfjm?wbaof#az#nbmzkfbowkzobtpvjwgfujpfg-svpk+xpfoofqppjnsoz#Wkqlvdk-`llhjf#Jnbdf+logfq!=vp-ip!=#Pjm`f#vmjufqpobqdfq#lsfm#wl\"..#fmgojfp#jm$^*8\x0E\t##nbqhfwtkl#jp#+!GLN@lnbmbdfglmf#elqwzsfle#Hjmdglnsqlejwpsqlslpfwl#pklt`fmwfq8nbgf#jwgqfppfgtfqf#jmnj{wvqfsqf`jpfbqjpjmdpq`#>#$nbhf#b#pf`vqfgAbswjpwulwjmd#\t\n\nubq#Nbq`k#1dqft#vs@ojnbwf-qfnlufphjoofgtbz#wkf?,kfbg=eb`f#leb`wjmd#qjdkw!=wl#tlqhqfgv`fpkbp#kbgfqf`wfgpklt+*8b`wjlm>allh#lebm#bqfb>>#!kww?kfbgfq\t?kwno=`lmelqneb`jmd#`llhjf-qfoz#lmklpwfg#-`vpwlnkf#tfmwavw#elqpsqfbg#Ebnjoz#b#nfbmplvw#wkfelqvnp-ellwbdf!=Nlajo@ofnfmwp!#jg>!bp#kjdkjmwfmpf..=?\"..efnbof#jp#pffmjnsojfgpfw#wkfb#pwbwfbmg#kjpebpwfpwafpjgfpavwwlm\\alvmgfg!=?jnd#Jmelal{fufmwp/b#zlvmdbmg#bqfMbwjuf#`kfbsfqWjnflvwbmg#kbpfmdjmfptlm#wkf+nlpwozqjdkw9#ejmg#b#.alwwlnSqjm`f#bqfb#lenlqf#lepfbq`k\\mbwvqf/ofdboozsfqjlg/obmg#lelq#tjwkjmgv`fgsqlujmdnjppjofol`boozBdbjmpwwkf#tbzh%rvlw8s{8!=\x0E\tsvpkfg#babmglmmvnfqbo@fqwbjmJm#wkjpnlqf#jmlq#plnfmbnf#jpbmg/#jm`qltmfgJPAM#3.`qfbwfpL`wlafqnbz#mlw`fmwfq#obwf#jmGfefm`ffmb`wfgtjpk#wlaqlbgoz`llojmdlmolbg>jw-#Wkfqf`lufqNfnafqpkfjdkw#bppvnfp?kwno=\tsflsof-jm#lmf#>tjmgltellwfq\\b#dllg#qfhobnblwkfqp/wl#wkjp\\`llhjfsbmfo!=Olmglm/gfejmfp`qvpkfgabswjpn`lbpwbopwbwvp#wjwof!#nluf#wlolpw#jmafwwfq#jnsojfpqjuboqzpfqufqp#PzpwfnSfqkbspfp#bmg#`lmwfmgeoltjmdobpwfg#qjpf#jmDfmfpjpujft#leqjpjmd#pffn#wlavw#jm#ab`hjmdkf#tjoodjufm#bdjujmd#`jwjfp-eolt#le#Obwfq#boo#avwKjdktbzlmoz#azpjdm#lekf#glfpgjeefqpabwwfqz%bns8obpjmdofpwkqfbwpjmwfdfqwbhf#lmqfevpfg`boofg#>VP%bnsPff#wkfmbwjufpaz#wkjppzpwfn-kfbg#le9klufq/ofpajbmpvqmbnfbmg#boo`lnnlm,kfbgfq\\\\sbqbnpKbqubqg,sj{fo-qfnlubopl#olmdqlof#leiljmwozphzp`qbVmj`lgfaq#,=\x0E\tBwobmwbmv`ofvp@lvmwz/svqfoz#`lvmw!=fbpjoz#avjog#blm`oj`hb#djufmsljmwfqk%rvlw8fufmwp#fopf#x\tgjwjlmpmlt#wkf/#tjwk#nbm#tkllqd,Tfalmf#bmg`buboqzKf#gjfgpfbwwof33/333#xtjmgltkbuf#wlje+tjmgbmg#jwpplofoz#n%rvlw8qfmftfgGfwqljwbnlmdpwfjwkfq#wkfn#jmPfmbwlqVp?,b=?Hjmd#leEqbm`jp.sqlgv`kf#vpfgbqw#bmgkjn#bmgvpfg#azp`lqjmdbw#klnfwl#kbufqfobwfpjajojwzeb`wjlmAveebolojmh!=?tkbw#kfeqff#wl@jwz#le`lnf#jmpf`wlqp`lvmwfglmf#gbzmfqulvpprvbqf#~8je+dljm#tkbwjnd!#bojp#lmozpfbq`k,wvfpgbzollpfozPlolnlmpf{vbo#.#?b#kqnfgjvn!GL#MLW#Eqbm`f/tjwk#b#tbq#bmgpf`lmg#wbhf#b#=\x0E\t\x0E\t\x0E\tnbqhfw-kjdktbzglmf#jm`wjujwz!obpw!=laojdfgqjpf#wl!vmgfejnbgf#wl#Fbqoz#sqbjpfgjm#jwp#elq#kjpbwkofwfIvsjwfqZbkll\"#wfqnfg#pl#nbmzqfbooz#p-#Wkf#b#tlnbm<ubovf>gjqf`w#qjdkw!#aj`z`ofb`jmd>!gbz#bmgpwbwjmdQbwkfq/kjdkfq#Leej`f#bqf#mltwjnfp/#tkfm#b#sbz#elqlm#wkjp.ojmh!=8alqgfqbqlvmg#bmmvbo#wkf#Mftsvw#wkf-`ln!#wbhjm#wlb#aqjfe+jm#wkfdqlvsp-8#tjgwkfmyznfppjnsof#jm#obwfxqfwvqmwkfqbszb#sljmwabmmjmdjmhp!=\t+*8!#qfb#sob`f_v330@bbalvw#bwq=\x0E\t\n\n``lvmw#djufp#b?P@QJSWQbjotbzwkfnfp,wlloal{AzJg+!{kvnbmp/tbw`kfpjm#plnf#je#+tj`lnjmd#elqnbwp#Vmgfq#avw#kbpkbmgfg#nbgf#azwkbm#jmefbq#legfmlwfg,jeqbnfofew#jmulowbdfjm#fb`kb%rvlw8abpf#leJm#nbmzvmgfqdlqfdjnfpb`wjlm#?,s=\x0E\t?vpwlnUb8%dw8?,jnslqwplq#wkbwnlpwoz#%bns8qf#pjyf>!?,b=?,kb#`obppsbppjufKlpw#>#TkfwkfqefqwjofUbqjlvp>X^8+ev`bnfqbp,=?,wg=b`wp#bpJm#plnf=\x0E\t\x0E\t?\"lqdbmjp#?aq#,=Afjijmd`bwbo/Lgfvwp`kfvqlsfvfvphbqbdbfjodfpufmphbfpsb/]bnfmpbifvpvbqjlwqbabiln/E{j`ls/Mdjmbpjfnsqfpjpwfnbl`wvaqfgvqbmwfb/]bgjqfnsqfpbnlnfmwlmvfpwqlsqjnfqbwqbu/Epdqb`jbpmvfpwqbsql`fplfpwbglp`bojgbgsfqplmbm/Vnfqlb`vfqgln/Vpj`bnjfnaqllefqwbpbodvmlpsb/Apfpfifnsolgfqf`klbgfn/Mpsqjubglbdqfdbqfmob`fpslpjaofklwfofppfujoobsqjnfql/Vowjnlfufmwlpbq`kjul`vowvqbnvifqfpfmwqbgbbmvm`jlfnabqdlnfq`bgldqbmgfpfpwvgjlnfilqfpefaqfqlgjpf/]lwvqjpnl`/_gjdlslqwbgbfpsb`jlebnjojbbmwlmjlsfqnjwfdvbqgbqbodvmbpsqf`jlpbodvjfmpfmwjglujpjwbpw/Awvol`lml`fqpfdvmgl`lmpfileqbm`jbnjmvwlppfdvmgbwfmfnlpfef`wlpn/Mobdbpfpj/_mqfujpwbdqbmbgb`lnsqbqjmdqfpldbq`/Abb``j/_mf`vbglqrvjfmfpjm`ovplgfafq/Mnbwfqjbklnaqfpnvfpwqbslgq/Abnb/]bmb/Vowjnbfpwbnlplej`jbowbnajfmmjmd/Vmpbovglpslgfnlpnfilqbqslpjwjlmavpjmfppklnfsbdfpf`vqjwzobmdvbdfpwbmgbqg`bnsbjdmefbwvqfp`bwfdlqzf{wfqmbo`kjogqfmqfpfqufgqfpfbq`kf{`kbmdfebulqjwfwfnsobwfnjojwbqzjmgvpwqzpfquj`fpnbwfqjbosqlgv`wpy.jmgf{9`lnnfmwpplewtbqf`lnsofwf`bofmgbqsobwelqnbqwj`ofpqfrvjqfgnlufnfmwrvfpwjlmavjogjmdslojwj`pslppjaofqfojdjlmskzpj`boeffgab`hqfdjpwfqsj`wvqfpgjpbaofgsqlwl`lobvgjfm`fpfwwjmdpb`wjujwzfofnfmwpofbqmjmdbmzwkjmdbapwqb`wsqldqfpplufqujftnbdbyjmff`lmlnj`wqbjmjmdsqfppvqfubqjlvp#?pwqlmd=sqlsfqwzpklssjmdwldfwkfqbgubm`fgafkbujlqgltmolbgefbwvqfgellwaboopfof`wfgObmdvbdfgjpwbm`fqfnfnafqwqb`hjmdsbpptlqgnlgjejfgpwvgfmwpgjqf`wozejdkwjmdmlqwkfqmgbwbabpfefpwjuboaqfbhjmdol`bwjlmjmwfqmfwgqlsgltmsqb`wj`ffujgfm`fevm`wjlmnbqqjbdfqfpslmpfsqlaofnpmfdbwjufsqldqbnpbmbozpjpqfofbpfgabmmfq!=svq`kbpfsloj`jfpqfdjlmbo`qfbwjufbqdvnfmwallhnbqhqfefqqfq`kfnj`bogjujpjlm`booab`hpfsbqbwfsqlif`wp`lmeoj`wkbqgtbqfjmwfqfpwgfojufqznlvmwbjmlawbjmfg>#ebopf8elq+ubq#b``fswfg`bsb`jwz`lnsvwfqjgfmwjwzbjq`qbewfnsolzfgsqlslpfgglnfpwj`jm`ovgfpsqlujgfgklpsjwboufqwj`bo`loobspfbssqlb`ksbqwmfqpoldl!=?bgbvdkwfqbvwklq!#`vowvqboebnjojfp,jnbdfp,bppfnaozsltfqevowfb`kjmdejmjpkfggjpwqj`w`qjwj`bo`dj.ajm,svqslpfpqfrvjqfpfof`wjlmaf`lnjmdsqlujgfpb`bgfnj`f{fq`jpfb`wvbooznfgj`jmf`lmpwbmwb``jgfmwNbdbyjmfgl`vnfmwpwbqwjmdalwwln!=lapfqufg9#%rvlw8f{wfmgfgsqfujlvpPlewtbqf`vpwlnfqgf`jpjlmpwqfmdwkgfwbjofgpojdkwozsobmmjmdwf{wbqfb`vqqfm`zfufqzlmfpwqbjdkwwqbmpefqslpjwjufsqlgv`fgkfqjwbdfpkjssjmdbaplovwfqf`fjufgqfofubmwavwwlm!#ujlofm`fbmztkfqfafmfejwpobvm`kfgqf`fmwozboojbm`felooltfgnvowjsofavoofwjmjm`ovgfgl``vqqfgjmwfqmbo'+wkjp*-qfsvaoj`=?wq=?wg`lmdqfppqf`lqgfgvowjnbwfplovwjlm?vo#jg>!gjp`lufqKlnf?,b=tfapjwfpmfwtlqhpbowklvdkfmwjqfoznfnlqjbonfppbdfp`lmwjmvfb`wjuf!=plnftkbwuj`wlqjbTfpwfqm##wjwof>!Ol`bwjlm`lmwqb`wujpjwlqpGltmolbgtjwklvw#qjdkw!=\tnfbpvqfptjgwk#>#ubqjbaofjmuloufgujqdjmjbmlqnboozkbssfmfgb``lvmwppwbmgjmdmbwjlmboQfdjpwfqsqfsbqfg`lmwqlopb``vqbwfajqwkgbzpwqbwfdzleej`jbodqbskj`p`qjnjmboslppjaoz`lmpvnfqSfqplmbopsfbhjmdubojgbwfb`kjfufg-isd!#,=nb`kjmfp?,k1=\t##hfztlqgpeqjfmgozaqlwkfqp`lnajmfglqjdjmbo`lnslpfgf{sf`wfgbgfrvbwfsbhjpwbmeloolt!#ubovbaof?,obafo=qfobwjufaqjmdjmdjm`qfbpfdlufqmlqsovdjmp,Ojpw#le#Kfbgfq!=!#mbnf>!#+%rvlw8dqbgvbwf?,kfbg=\t`lnnfq`fnbobzpjbgjqf`wlqnbjmwbjm8kfjdkw9p`kfgvof`kbmdjmdab`h#wl#`bwkloj`sbwwfqmp`lolq9# dqfbwfpwpvssojfpqfojbaof?,vo=\t\n\n?pfof`w#`jwjyfmp`olwkjmdtbw`kjmd?oj#jg>!psf`jej``bqqzjmdpfmwfm`f?`fmwfq=`lmwqbpwwkjmhjmd`bw`k+f*plvwkfqmNj`kbfo#nfq`kbmw`bqlvpfosbggjmd9jmwfqjlq-psojw+!ojybwjlmL`wlafq#*xqfwvqmjnsqlufg..%dw8\t\t`lufqbdf`kbjqnbm-smd!#,=pvaif`wpQj`kbqg#tkbwfufqsqlabaozqf`lufqzabpfabooivgdnfmw`lmmf`w--`pp!#,=#tfapjwfqfslqwfggfebvow!,=?,b=\x0E\tfof`wqj`p`lwobmg`qfbwjlmrvbmwjwz-#JPAM#3gjg#mlw#jmpwbm`f.pfbq`k.!#obmd>!psfbhfqp@lnsvwfq`lmwbjmpbq`kjufpnjmjpwfqqfb`wjlmgjp`lvmwJwbojbml`qjwfqjbpwqlmdoz9#$kwws9$p`qjsw$`lufqjmdleefqjmdbssfbqfgAqjwjpk#jgfmwjezEb`fallhmvnfqlvpufkj`ofp`lm`fqmpBnfqj`bmkbmgojmdgju#jg>!Tjoojbn#sqlujgfq\\`lmwfmwb``vqb`zpf`wjlm#bmgfqplmeof{jaof@bwfdlqzobtqfm`f?p`qjsw=obzlvw>!bssqlufg#nb{jnvnkfbgfq!=?,wbaof=Pfquj`fpkbnjowlm`vqqfmw#`bmbgjbm`kbmmfop,wkfnfp,,bqwj`oflswjlmboslqwvdboubovf>!!jmwfqubotjqfofppfmwjwofgbdfm`jfpPfbq`k!#nfbpvqfgwklvpbmgpsfmgjmd%kfoojs8mft#Gbwf!#pjyf>!sbdfMbnfnjggof!#!#,=?,b=kjggfm!=pfrvfm`fsfqplmbolufqeoltlsjmjlmpjoojmljpojmhp!=\t\n?wjwof=ufqpjlmppbwvqgbzwfqnjmbojwfnsqlsfmdjmffqpf`wjlmpgfpjdmfqsqlslpbo>!ebopf!Fpsb/]loqfofbpfppvanjw!#fq%rvlw8bggjwjlmpznswlnplqjfmwfgqfplvq`fqjdkw!=?sofbpvqfpwbwjlmpkjpwlqz-ofbujmd##alqgfq>`lmwfmwp`fmwfq!=-\t\tPlnf#gjqf`wfgpvjwbaofavodbqjb-pklt+*8gfpjdmfgDfmfqbo#`lm`fswpF{bnsofptjoojbnpLqjdjmbo!=?psbm=pfbq`k!=lsfqbwlqqfrvfpwpb#%rvlw8booltjmdGl`vnfmwqfujpjlm-#\t\tWkf#zlvqpfoe@lmwb`w#nj`kjdbmFmdojpk#`lovnajbsqjlqjwzsqjmwjmdgqjmhjmdeb`jojwzqfwvqmfg@lmwfmw#leej`fqpQvppjbm#dfmfqbwf.;;6:.2!jmgj`bwfebnjojbq#rvbojwznbqdjm93#`lmwfmwujftslqw`lmwb`wp.wjwof!=slqwbaof-ofmdwk#fojdjaofjmuloufpbwobmwj`lmolbg>!gfebvow-pvssojfgsbznfmwpdolppbqz\t\tBewfq#dvjgbm`f?,wg=?wgfm`lgjmdnjggof!=`bnf#wl#gjpsobzpp`lwwjpkilmbwkbmnbilqjwztjgdfwp-`ojmj`bowkbjobmgwfb`kfqp?kfbg=\t\nbeef`wfgpvsslqwpsljmwfq8wlPwqjmd?,pnboo=lhobklnbtjoo#af#jmufpwlq3!#bow>!klojgbzpQfplvq`foj`fmpfg#+tkj`k#-#Bewfq#`lmpjgfqujpjwjmdf{solqfqsqjnbqz#pfbq`k!#bmgqljg!rvj`hoz#nffwjmdpfpwjnbwf8qfwvqm#8`lolq9 #kfjdkw>bssqlubo/#%rvlw8#`kf`hfg-njm-ip!nbdmfwj`=?,b=?,kelqf`bpw-#Tkjof#wkvqpgbzgufqwjpf%fb`vwf8kbp@obppfubovbwflqgfqjmdf{jpwjmdsbwjfmwp#Lmojmf#`lolqbglLswjlmp!`bnsafoo?\"..#fmg?,psbm=??aq#,=\x0E\t\\slsvsp\u007Fp`jfm`fp/%rvlw8#rvbojwz#Tjmgltp#bppjdmfgkfjdkw9#?a#`obppof%rvlw8#ubovf>!#@lnsbmzf{bnsofp?jeqbnf#afojfufpsqfpfmwpnbqpkboosbqw#le#sqlsfqoz*-\t\tWkf#wb{lmlnznv`k#le#?,psbm=\t!#gbwb.pqwvdv/Fpp`qlooWl#sqlif`w?kfbg=\x0E\tbwwlqmfzfnskbpjppslmplqpebm`zal{tlqog$p#tjogojef`kf`hfg>pfppjlmpsqldqbnns{8elmw.#Sqlif`wilvqmbopafojfufgub`bwjlmwklnsplmojdkwjmdbmg#wkf#psf`jbo#alqgfq>3`kf`hjmd?,walgz=?avwwlm#@lnsofwf`ofbqej{\t?kfbg=\tbqwj`of#?pf`wjlmejmgjmdpqlof#jm#slsvobq##L`wlafqtfapjwf#f{slpvqfvpfg#wl##`kbmdfplsfqbwfg`oj`hjmdfmwfqjmd`lnnbmgpjmelqnfg#mvnafqp##?,gju=`qfbwjmdlmPvanjwnbqzobmg`loofdfpbmbozwj`ojpwjmdp`lmwb`w-olddfgJmbgujplqzpjaojmdp`lmwfmw!p%rvlw8*p-#Wkjp#sb`hbdfp`kf`hal{pvddfpwpsqfdmbmwwlnlqqltpsb`jmd>j`lm-smdibsbmfpf`lgfabpfavwwlm!=dbnaojmdpv`k#bp#/#tkjof#?,psbm=#njpplvqjpslqwjmdwls92s{#-?,psbm=wfmpjlmptjgwk>!1obyzolbgmlufnafqvpfg#jm#kfjdkw>!`qjsw!=\t%maps8?,?wq=?wg#kfjdkw91,sqlgv`w`lvmwqz#jm`ovgf#ellwfq!#%ow8\"..#wjwof!=?,irvfqz-?,elqn=\t+\x0BBl\bQ\u007F*+\x0BUm\x05Gx*kqubwphjjwbojbmlqln/Nm(ow/Pqh/Kf4K4]4C5dwbnaj/Emmlwj`jbpnfmpbifpsfqplmbpgfqf`klpmb`jlmbopfquj`jl`lmwb`wlvpvbqjlpsqldqbnbdlajfqmlfnsqfpbpbmvm`jlpubofm`jb`lolnajbgfpsv/Epgfslqwfpsqlzf`wlsqlgv`wls/Vaoj`lmlplwqlpkjpwlqjbsqfpfmwfnjoolmfpnfgjbmwfsqfdvmwbbmwfqjlqqf`vqplpsqlaofnbpbmwjbdlmvfpwqlplsjmj/_mjnsqjnjqnjfmwqbpbn/Eqj`bufmgfglqpl`jfgbgqfpsf`wlqfbojybqqfdjpwqlsbobaqbpjmwfq/Epfmwlm`fpfpsf`jbonjfnaqlpqfbojgbg`/_qglabybqbdlybs/Mdjmbppl`jbofpaolrvfbqdfpwj/_mborvjofqpjpwfnbp`jfm`jbp`lnsofwlufqpj/_m`lnsofwbfpwvgjlps/Vaoj`blaifwjulboj`bmwfavp`bglq`bmwjgbgfmwqbgbpb``jlmfpbq`kjulppvsfqjlqnbzlq/Abbofnbmjbevm`j/_m/Vowjnlpkb`jfmglbrvfoolpfgj`j/_mefqmbmglbnajfmwfeb`fallhmvfpwqbp`ojfmwfpsql`fplpabpwbmwfsqfpfmwbqfslqwbq`lmdqfplsvaoj`bq`lnfq`jl`lmwqbwli/_ufmfpgjpwqjwlw/E`mj`b`lmivmwlfmfqd/Abwqbabibqbpwvqjbpqf`jfmwfvwjojybqalofw/Ampboubglq`lqqf`wbwqbabilpsqjnfqlpmfdl`jlpojafqwbggfwboofpsbmwboobsq/_{jnlbonfq/Abbmjnbofprvj/Emfp`lqby/_mpf``j/_mavp`bmglls`jlmfpf{wfqjlq`lm`fswlwlgbu/Abdbofq/Abfp`qjajqnfgj`jmboj`fm`jb`lmpvowbbpsf`wlp`q/Awj`bg/_obqfpivpwj`jbgfafq/Mmsfq/Alglmf`fpjwbnbmwfmfqsfrvf/]lqf`jajgbwqjavmbowfmfqjef`bm`j/_m`bmbqjbpgfp`bqdbgjufqplpnboolq`bqfrvjfqfw/E`mj`lgfafq/Abujujfmgbejmbmybpbgfobmwfevm`jlmb`lmpfilpgje/A`jo`jvgbgfpbmwjdvbpbubmybgbw/Eqnjmlvmjgbgfpp/Mm`kfy`bnsb/]bplewlmj`qfujpwbp`lmwjfmfpf`wlqfpnlnfmwlpeb`vowbg`q/Egjwlgjufqpbppvsvfpwleb`wlqfppfdvmglpsfrvf/]b<_<R<X<\\<Y=m<W<T<Y=m=n=`<]=g<W<R<]=g=n=`=a=n<R<P<y=m<W<T=n<R<_<R<P<Y<Q=c<^=m<Y=i=a=n<R<U<X<\\<Z<Y<]=g<W<T<_<R<X=o<X<Y<Q=`=a=n<R=n<]=g<W<\\=m<Y<]=c<R<X<T<Q=m<Y<]<Y<Q<\\<X<R=m<\\<U=n=h<R=n<R<Q<Y<_<R=m<^<R<T=m<^<R<U<T<_=l=g=n<R<Z<Y<^=m<Y<P=m<^<R=b<W<T=d=`=a=n<T=i<S<R<V<\\<X<Q<Y<U<X<R<P<\\<P<T=l<\\<W<T<]<R=n<Y<P=o=i<R=n=c<X<^=o=i=m<Y=n<T<W=b<X<T<X<Y<W<R<P<T=l<Y=n<Y<]=c=m<^<R<Y<^<T<X<Y=k<Y<_<R=a=n<T<P=m=k<Y=n=n<Y<P=g=j<Y<Q=g=m=n<\\<W<^<Y<X=`=n<Y<P<Y<^<R<X=g=n<Y<]<Y<^=g=d<Y<Q<\\<P<T=n<T<S<\\=n<R<P=o<S=l<\\<^<W<T=j<\\<R<X<Q<\\<_<R<X=g<[<Q<\\=b<P<R<_=o<X=l=o<_<^=m<Y<U<T<X<Y=n<V<T<Q<R<R<X<Q<R<X<Y<W<\\<X<Y<W<Y=m=l<R<V<T=b<Q=c<^<Y=m=`<y=m=n=`=l<\\<[<\\<Q<\\=d<T4K5h5h5k4K5h4F5f4@5i5f4U4B4K4Y4E4K5h4\\5f4U5h5f5k4@4C5f4C4K5h4N5j4K5h4]4C4F4A5o5i4Y5m4A4E5o4K5j4F4K5h5h5f5f5o5d5j4X4D5o4E5m5f5k4K4D5j4K4F4A5d4K4M4O5o4G4]4B5h4K5h4K5h4A4D4C5h5f5h4C4]5d4_4K4Z4V4[4F5o5d5j5k5j4K5o4_4K4A4E5j4K4C5f4K5h4[4D4U5h5f5o4X5o4]4K5f5i5o5j5i5j5k4K4X4]5o4E4]4J5f4_5j4X5f4[5i4K4\\4K4K5h5m5j4X4D4K4D4F4U4D4]4]4A5i4E5o4K5m4E5f5n5d5h5i4]5o4^5o5h5i4E4O4A5i4C5n5h4D5f5f4U5j5f4Y5d4]4E4[4]5f5n4X4K4]5o4@5d4K5h4O4B4]5e5i4U5j4K4K4D4A4G4U4]5d4Z4D4X5o5h5i4_4@5h4D5j4K5j4B4K5h4C5o4F4K4D5o5h5f4E4D4C5d5j4O5f4Z4K5f5d4@4C5m4]5f5n5o4F4D4F4O5m4Z5h5i4[4D4B4K5o4G4]4D4K4]5o4K5m4Z5h4K4A5h5e5j5m4_5k4O5f4K5i4]4C5d4C4O5j5k4K4C5f5j4K4K5h4K5j5i4U4]4Z4F4U5h5i4C4K4B5h5i5i5o5j\x03\x03\x03\x03\x03\x03\x03\x03\x02\x03\x02\x03\x02\x03\x02\x03\x01\x03\x01\x03\x01\x03\x01\x03\x07\x03\x07\x03\x07\x03\x07\x03\x03\x02\x01\x00\x07\x06\x05\x04\x04\x05\x06\x07\x00\x01\x02\x03\x0B\n\t\b\x0F\x0E\r\x0C\x0C\r\x0E\x0F\b\t\n\x0B\x13\x12\x11\x10\x17\x16\x15\x14\x14\x15\x16\x17\x10\x11\x12\x13\x1B\x1A\x19\x18\x1F\x1E\x1D\x1C\x1C\x1D\x1E\x1F\x18\x19\x1A\x1B\x13\x13\x13\x13\x03\x03\x03\x03\x03\x03\x03\x03\x13\x13\x13\x13\x02\x03\x03\x03\x01\x03\x03\x03\x01\x03\x03\x03\x02\x03\x03\x03\x02\x03\x03\x03\x00\x03\x03\x03\x13\x13\x03\x02\x03\x03\x03\x02\x03\x03\x13\x13\x03\x02\x03\x03\x03\x0B\x03\x0B\x03\x0B\x03\x0B\x03\x03\x03\x02\x03\x01\x03\x00\x03\x07\x03\x06\x03\x05\x03\x04qfplvq`fp`lvmwqjfprvfpwjlmpfrvjsnfmw`lnnvmjwzbubjobaofkjdkojdkwGWG,{kwnonbqhfwjmdhmltofgdfplnfwkjmd`lmwbjmfqgjqf`wjlmpvap`qjafbgufqwjpf`kbqb`wfq!#ubovf>!?,pfof`w=Bvpwqbojb!#`obpp>!pjwvbwjlmbvwklqjwzelooltjmdsqjnbqjozlsfqbwjlm`kboofmdfgfufolsfgbmlmznlvpevm`wjlm#evm`wjlmp`lnsbmjfppwqv`wvqfbdqffnfmw!#wjwof>!slwfmwjbofgv`bwjlmbqdvnfmwppf`lmgbqz`lszqjdkwobmdvbdfpf{`ovpjuf`lmgjwjlm?,elqn=\x0E\tpwbwfnfmwbwwfmwjlmAjldqbskz~#fopf#x\tplovwjlmptkfm#wkf#Bmbozwj`pwfnsobwfpgbmdfqlvppbwfoojwfgl`vnfmwpsvaojpkfqjnslqwbmwsqlwlwzsfjmeovfm`f%qbrvl8?,feef`wjufdfmfqboozwqbmpelqnafbvwjevowqbmpslqwlqdbmjyfgsvaojpkfgsqlnjmfmwvmwjo#wkfwkvnambjoMbwjlmbo#-el`vp+*8lufq#wkf#njdqbwjlmbmmlvm`fgellwfq!=\tf{`fswjlmofpp#wkbmf{sfmpjufelqnbwjlmeqbnftlqhwfqqjwlqzmgj`bwjlm`vqqfmwoz`obppMbnf`qjwj`jpnwqbgjwjlmfopftkfqfBof{bmgfqbssljmwfgnbwfqjbopaqlbg`bpwnfmwjlmfgbeejojbwf?,lswjlm=wqfbwnfmwgjeefqfmw,gfebvow-Sqfpjgfmwlm`oj`h>!ajldqbskzlwkfqtjpfsfqnbmfmwEqbm/KbjpKlooztllgf{sbmpjlmpwbmgbqgp?,pwzof=\tqfgv`wjlmGf`fnafq#sqfefqqfg@bnaqjgdflsslmfmwpAvpjmfpp#`lmevpjlm=\t?wjwof=sqfpfmwfgf{sobjmfgglfp#mlw#tlqogtjgfjmwfqeb`fslpjwjlmpmftpsbsfq?,wbaof=\tnlvmwbjmpojhf#wkf#fppfmwjboejmbm`jbopfof`wjlmb`wjlm>!,babmglmfgFgv`bwjlmsbqpfJmw+pwbajojwzvmbaof#wl?,wjwof=\tqfobwjlmpMlwf#wkbwfeej`jfmwsfqelqnfgwtl#zfbqpPjm`f#wkfwkfqfelqftqbssfq!=bowfqmbwfjm`qfbpfgAbwwof#lesfq`fjufgwqzjmd#wlmf`fppbqzslqwqbzfgfof`wjlmpFojybafwk?,jeqbnf=gjp`lufqzjmpvqbm`fp-ofmdwk8ofdfmgbqzDfldqbskz`bmgjgbwf`lqslqbwfplnfwjnfppfquj`fp-jmkfqjwfg?,pwqlmd=@lnnvmjwzqfojdjlvpol`bwjlmp@lnnjwwffavjogjmdpwkf#tlqogml#olmdfqafdjmmjmdqfefqfm`f`bmmlw#afeqfrvfm`zwzsj`boozjmwl#wkf#qfobwjuf8qf`lqgjmdsqfpjgfmwjmjwjboozwf`kmjrvfwkf#lwkfqjw#`bm#aff{jpwfm`fvmgfqojmfwkjp#wjnfwfofsklmfjwfnp`lsfsqb`wj`fpbgubmwbdf*8qfwvqm#Elq#lwkfqsqlujgjmdgfnl`qb`zalwk#wkf#f{wfmpjufpveefqjmdpvsslqwfg`lnsvwfqp#evm`wjlmsqb`wj`bopbjg#wkbwjw#nbz#afFmdojpk?,eqln#wkf#p`kfgvofggltmolbgp?,obafo=\tpvpsf`wfgnbqdjm9#3psjqjwvbo?,kfbg=\t\tnj`qlplewdqbgvboozgjp`vppfgkf#af`bnff{f`vwjufirvfqz-ipklvpfklog`lmejqnfgsvq`kbpfgojwfqboozgfpwqlzfgvs#wl#wkfubqjbwjlmqfnbjmjmdjw#jp#mlw`fmwvqjfpIbsbmfpf#bnlmd#wkf`lnsofwfgbodlqjwknjmwfqfpwpqfafoojlmvmgfejmfgfm`lvqbdfqfpjybaofjmuloujmdpfmpjwjufvmjufqpbosqlujpjlm+bowklvdkefbwvqjmd`lmgv`wfg*/#tkj`k#`lmwjmvfg.kfbgfq!=Efaqvbqz#mvnfqlvp#lufqeolt9`lnslmfmweqbdnfmwpf{`foofmw`lopsbm>!wf`kmj`bomfbq#wkf#Bgubm`fg#plvq`f#lef{sqfppfgKlmd#Hlmd#Eb`fallhnvowjsof#nf`kbmjpnfofubwjlmleefmpjuf?,elqn=\t\npslmplqfggl`vnfmw-lq#%rvlw8wkfqf#bqfwklpf#tklnlufnfmwpsql`fppfpgjeej`vowpvanjwwfgqf`lnnfmg`lmujm`fgsqlnlwjmd!#tjgwk>!-qfsob`f+`obppj`bo`lbojwjlmkjp#ejqpwgf`jpjlmpbppjpwbmwjmgj`bwfgfulovwjlm.tqbssfq!fmlvdk#wlbolmd#wkfgfojufqfg..=\x0E\t?\"..Bnfqj`bm#sqlwf`wfgMlufnafq#?,pwzof=?evqmjwvqfJmwfqmfw##lmaovq>!pvpsfmgfgqf`jsjfmwabpfg#lm#Nlqflufq/balojpkfg`loof`wfgtfqf#nbgffnlwjlmbofnfqdfm`zmbqqbwjufbgul`bwfps{8alqgfq`lnnjwwfggjq>!owq!fnsolzffpqfpfbq`k-#pfof`wfgpv``fpplq`vpwlnfqpgjpsobzfgPfswfnafqbgg@obpp+Eb`fallh#pvddfpwfgbmg#obwfqlsfqbwjmdfobalqbwfPlnfwjnfpJmpwjwvwf`fqwbjmozjmpwboofgelooltfqpIfqvpbofnwkfz#kbuf`lnsvwjmddfmfqbwfgsqlujm`fpdvbqbmwffbqajwqbqzqf`ldmjyftbmwfg#wls{8tjgwk9wkflqz#leafkbujlvqTkjof#wkffpwjnbwfgafdbm#wl#jw#af`bnfnbdmjwvgfnvpw#kbufnlqf#wkbmGjqf`wlqzf{wfmpjlmpf`qfwbqzmbwvqboozl``vqqjmdubqjbaofpdjufm#wkfsobwelqn-?,obafo=?ebjofg#wl`lnslvmgphjmgp#le#pl`jfwjfpbolmdpjgf#..%dw8\t\tplvwktfpwwkf#qjdkwqbgjbwjlmnbz#kbuf#vmfp`bsf+pslhfm#jm!#kqfe>!,sqldqbnnflmoz#wkf#`lnf#eqlngjqf`wlqzavqjfg#jmb#pjnjobqwkfz#tfqf?,elmw=?,Mlqtfdjbmpsf`jejfgsqlgv`jmdsbppfmdfq+mft#Gbwfwfnslqbqzej`wjlmboBewfq#wkffrvbwjlmpgltmolbg-qfdvobqozgfufolsfqbaluf#wkfojmhfg#wlskfmlnfmbsfqjlg#lewllowjs!=pvapwbm`fbvwlnbwj`bpsf`w#leBnlmd#wkf`lmmf`wfgfpwjnbwfpBjq#Elq`fpzpwfn#lelaif`wjufjnnfgjbwfnbhjmd#jwsbjmwjmdp`lmrvfqfgbqf#pwjoosql`fgvqfdqltwk#lekfbgfg#azFvqlsfbm#gjujpjlmpnlof`vofpeqbm`kjpfjmwfmwjlmbwwqb`wfg`kjogkllgbopl#vpfggfgj`bwfgpjmdbslqfgfdqff#leebwkfq#le`lmeoj`wp?,b=?,s=\t`bnf#eqlntfqf#vpfgmlwf#wkbwqf`fjujmdF{f`vwjuffufm#nlqfb``fpp#wl`lnnbmgfqSlojwj`bonvpj`jbmpgfoj`jlvpsqjplmfqpbgufmw#leVWE.;!#,=?\"X@GBWBX!=@lmwb`wPlvwkfqm#ad`lolq>!pfqjfp#le-#Jw#tbp#jm#Fvqlsfsfqnjwwfgubojgbwf-bssfbqjmdleej`jboppfqjlvpoz.obmdvbdfjmjwjbwfgf{wfmgjmdolmd.wfqnjmeobwjlmpv`k#wkbwdfw@llhjfnbqhfg#az?,avwwlm=jnsofnfmwavw#jw#jpjm`qfbpfpgltm#wkf#qfrvjqjmdgfsfmgfmw..=\t?\"..#jmwfqujftTjwk#wkf#`lsjfp#le`lmpfmpvptbp#avjowUfmfyvfob+elqnfqozwkf#pwbwfsfqplmmfopwqbwfdj`ebulvq#lejmufmwjlmTjhjsfgjb`lmwjmfmwujqwvbooztkj`k#tbpsqjm`jsof@lnsofwf#jgfmwj`bopklt#wkbwsqjnjwjufbtbz#eqlnnlof`vobqsqf`jpfozgjpploufgVmgfq#wkfufqpjlm>!=%maps8?,Jw#jp#wkf#Wkjp#jp#tjoo#kbuflqdbmjpnpplnf#wjnfEqjfgqj`ktbp#ejqpwwkf#lmoz#eb`w#wkbwelqn#jg>!sqf`fgjmdWf`kmj`boskzpj`jpwl``vqp#jmmbujdbwlqpf`wjlm!=psbm#jg>!plvdkw#wlafolt#wkfpvqujujmd~?,pwzof=kjp#gfbwkbp#jm#wkf`bvpfg#azsbqwjboozf{jpwjmd#vpjmd#wkftbp#djufmb#ojpw#leofufop#lemlwjlm#leLeej`jbo#gjpnjppfgp`jfmwjpwqfpfnaofpgvsoj`bwff{solpjufqf`lufqfgboo#lwkfqdboofqjfpxsbggjmd9sflsof#leqfdjlm#lebggqfppfpbppl`jbwfjnd#bow>!jm#nlgfqmpklvog#afnfwklg#leqfslqwjmdwjnfpwbnsmffgfg#wlwkf#Dqfbwqfdbqgjmdpffnfg#wlujftfg#bpjnsb`w#lmjgfb#wkbwwkf#Tlqogkfjdkw#lef{sbmgjmdWkfpf#bqf`vqqfmw!=`bqfevooznbjmwbjmp`kbqdf#le@obppj`bobggqfppfgsqfgj`wfgltmfqpkjs?gju#jg>!qjdkw!=\x0E\tqfpjgfm`fofbuf#wkf`lmwfmw!=bqf#lewfm##~*+*8\x0E\tsqlabaoz#Sqlefpplq.avwwlm!#qfpslmgfgpbzp#wkbwkbg#wl#afsob`fg#jmKvmdbqjbmpwbwvp#lepfqufp#bpVmjufqpbof{f`vwjlmbddqfdbwfelq#tkj`kjmef`wjlmbdqffg#wlkltfufq/#slsvobq!=sob`fg#lm`lmpwqv`wfof`wlqbopznalo#lejm`ovgjmdqfwvqm#wlbq`kjwf`w@kqjpwjbmsqfujlvp#ojujmd#jmfbpjfq#wlsqlefpplq\t%ow8\"..#feef`w#lebmbozwj`ptbp#wbhfmtkfqf#wkfwllh#lufqafojfe#jmBeqjhbbmpbp#ebq#bpsqfufmwfgtlqh#tjwkb#psf`jbo?ejfogpfw@kqjpwnbpQfwqjfufg\t\tJm#wkf#ab`h#jmwlmlqwkfbpwnbdbyjmfp=?pwqlmd=`lnnjwwffdlufqmjmddqlvsp#lepwlqfg#jmfpwbaojpkb#dfmfqbojwp#ejqpwwkfjq#ltmslsvobwfgbm#laif`w@bqjaafbmboolt#wkfgjpwqj`wptjp`lmpjmol`bwjlm-8#tjgwk9#jmkbajwfgPl`jbojpwIbmvbqz#2?,ellwfq=pjnjobqoz`klj`f#lewkf#pbnf#psf`jej`#avpjmfpp#Wkf#ejqpw-ofmdwk8#gfpjqf#wlgfbo#tjwkpjm`f#wkfvpfqBdfmw`lm`fjufgjmgf{-sksbp#%rvlw8fmdbdf#jmqf`fmwoz/eft#zfbqptfqf#bopl\t?kfbg=\t?fgjwfg#azbqf#hmltm`jwjfp#jmb``fpphfz`lmgfnmfgbopl#kbufpfquj`fp/ebnjoz#leP`kllo#le`lmufqwfgmbwvqf#le#obmdvbdfnjmjpwfqp?,laif`w=wkfqf#jp#b#slsvobqpfrvfm`fpbgul`bwfgWkfz#tfqfbmz#lwkfqol`bwjlm>fmwfq#wkfnv`k#nlqfqfeof`wfgtbp#mbnfglqjdjmbo#b#wzsj`botkfm#wkfzfmdjmffqp`lvog#mlwqfpjgfmwptfgmfpgbzwkf#wkjqg#sqlgv`wpIbmvbqz#1tkbw#wkfzb#`fqwbjmqfb`wjlmpsql`fpplqbewfq#kjpwkf#obpw#`lmwbjmfg!=?,gju=\t?,b=?,wg=gfsfmg#lmpfbq`k!=\tsjf`fp#le`lnsfwjmdQfefqfm`fwfmmfppfftkj`k#kbp#ufqpjlm>?,psbm=#??,kfbgfq=djufp#wkfkjpwlqjbmubovf>!!=sbggjmd93ujft#wkbwwldfwkfq/wkf#nlpw#tbp#elvmgpvapfw#lebwwb`h#lm`kjogqfm/sljmwp#lesfqplmbo#slpjwjlm9boofdfgoz@ofufobmgtbp#obwfqbmg#bewfqbqf#djufmtbp#pwjoop`qloojmdgfpjdm#lenbhfp#wkfnv`k#ofppBnfqj`bmp-\t\tBewfq#/#avw#wkfNvpfvn#leolvjpjbmb+eqln#wkfnjmmfplwbsbqwj`ofpb#sql`fppGlnjmj`bmulovnf#leqfwvqmjmdgfefmpjuf33s{\u007Fqjdknbgf#eqlnnlvpflufq!#pwzof>!pwbwfp#le+tkj`k#jp`lmwjmvfpEqbm`jp`lavjogjmd#tjwklvw#btjwk#plnftkl#tlvogb#elqn#leb#sbqw#leafelqf#jwhmltm#bp##Pfquj`fpol`bwjlm#bmg#lewfmnfbpvqjmdbmg#jw#jpsbsfqab`hubovfp#le\x0E\t?wjwof=>#tjmglt-gfwfqnjmffq%rvlw8#sobzfg#azbmg#fbqoz?,`fmwfq=eqln#wkjpwkf#wkqffsltfq#bmgle#%rvlw8jmmfqKWNO?b#kqfe>!z9jmojmf8@kvq`k#lewkf#fufmwufqz#kjdkleej`jbo#.kfjdkw9#`lmwfmw>!,`dj.ajm,wl#`qfbwfbeqjhbbmpfpsfqbmwleqbm/Kbjpobwujf)Mvojfwvuj)_(`f)Mwjmb(af)Mwjmb\x0CUh\x0CT{\x0CTN\n{I\np@\x04Fr\x0BBl\bQ\u007F\tA{\x0BUm\x05Gx\tA{\x01yp\x06YA\x00zX\bTV\bWl\bUd\x04BM\x0BB{\npV\x0B@x\x04B\\\np@\x04Db\x04Gz\tal\npa\tfM\tuD\bV~\x04mx\x0BQ}\ndS\tp\\\bVK\bS]\bU|\x05oD\tkV\x0Bed\x0BHR\nb~\x04M`\nJp\x05oD\x04|Q\nLP\x04Sw\bTl\nAI\nxC\bWt\tBq\x05F`\x04Cm\x0BLm\tKx\t}t\bPv\ny\\\naB\tV\u007F\nZd\x04XU\x04li\tfr\ti@\tBH\x04BD\x04BV\t`V\n[]\tp_\tTn\n~A\nxR\tuD\t`{\bV@\tTn\tHK\tAJ\x0Bxs\x04Zf\nqI\x04Zf\x0BBM\x0B|j\t}t\bSM\nmC\x0BQ}pfquj`jlpbqw/A`volbqdfmwjmbabq`folmb`vborvjfqsvaoj`bglsqlgv`wlpslo/Awj`bqfpsvfpwbtjhjsfgjbpjdvjfmwfa/Vprvfgb`lnvmjgbgpfdvqjgbgsqjm`jsbosqfdvmwbp`lmwfmjglqfpslmgfqufmfyvfobsqlaofnbpgj`jfnaqfqfob`j/_mmlujfnaqfpjnjobqfpsqlzf`wlpsqldqbnbpjmpwjwvwlb`wjujgbgfm`vfmwqbf`lmln/Abjn/Mdfmfp`lmwb`wbqgfp`bqdbqmf`fpbqjlbwfm`j/_mwfo/Eelml`lnjpj/_m`bm`jlmfp`bsb`jgbgfm`lmwqbqbm/Mojpjpebulqjwlpw/Eqnjmlpsqlujm`jbfwjrvfwbpfofnfmwlpevm`jlmfpqfpvowbgl`bq/M`wfqsqlsjfgbgsqjm`jsjlmf`fpjgbgnvmj`jsbo`qfb`j/_mgfp`bqdbpsqfpfm`jb`lnfq`jbolsjmjlmfpfifq`j`jlfgjwlqjbopbobnbm`bdlmy/Mofygl`vnfmwlsfo/A`vobqf`jfmwfpdfmfqbofpwbqqbdlmbsq/M`wj`bmlufgbgfpsqlsvfpwbsb`jfmwfpw/E`mj`bplaifwjulp`lmwb`wlp\x0CHB\x0CIk\x0CHn\x0CH^\x0CHS\x0CHc\x0CHU\x0CId\x0CHn\x0CH{\x0CHC\x0CHR\x0CHT\x0CHR\x0CHI\x0CHc\x0CHY\x0CHn\x0CH\\\x0CHU\x0CIk\x0CHy\x0CIg\x0CHd\x0CHy\x0CIm\x0CHw\x0CH\\\x0CHU\x0CHR\x0CH@\x0CHR\x0CHJ\x0CHy\x0CHU\x0CHR\x0CHT\x0CHA\x0CIl\x0CHU\x0CIm\x0CHc\x0CH\\\x0CHU\x0CIl\x0CHB\x0CId\x0CHn\x0CHJ\x0CHS\x0CHD\x0CH@\x0CHR\x0CHHgjsolgl`p\x0CHT\x0CHB\x0CHC\x0CH\\\x0CIn\x0CHF\x0CHD\x0CHR\x0CHB\x0CHF\x0CHH\x0CHR\x0CHG\x0CHS\x0CH\\\x0CHx\x0CHT\x0CHH\x0CHH\x0CH\\\x0CHU\x0CH^\x0CIg\x0CH{\x0CHU\x0CIm\x0CHj\x0CH@\x0CHR\x0CH\\\x0CHJ\x0CIk\x0CHZ\x0CHU\x0CIm\x0CHd\x0CHz\x0CIk\x0CH^\x0CHC\x0CHJ\x0CHS\x0CHy\x0CHR\x0CHB\x0CHY\x0CIk\x0CH@\x0CHH\x0CIl\x0CHD\x0CH@\x0CIl\x0CHv\x0CHB\x0CI`\x0CHH\x0CHT\x0CHR\x0CH^\x0CH^\x0CIk\x0CHz\x0CHp\x0CIe\x0CH@\x0CHB\x0CHJ\x0CHJ\x0CHH\x0CHI\x0CHR\x0CHD\x0CHU\x0CIl\x0CHZ\x0CHU\x0CH\\\x0CHi\x0CH^\x0CH{\x0CHy\x0CHA\x0CIl\x0CHD\x0CH{\x0CH\\\x0CHF\x0CHR\x0CHT\x0CH\\\x0CHR\x0CHH\x0CHy\x0CHS\x0CHc\x0CHe\x0CHT\x0CIk\x0CH{\x0CHC\x0CIl\x0CHU\x0CIn\x0CHm\x0CHj\x0CH{\x0CIk\x0CHs\x0CIl\x0CHB\x0CHz\x0CIg\x0CHp\x0CHy\x0CHR\x0CH\\\x0CHi\x0CHA\x0CIl\x0CH{\x0CHC\x0CIk\x0CHH\x0CIm\x0CHB\x0CHY\x0CIg\x0CHs\x0CHJ\x0CIk\x0CHn\x0CHi\x0CH{\x0CH\\\x0CH|\x0CHT\x0CIk\x0CHB\x0CIk\x0CH^\x0CH^\x0CH{\x0CHR\x0CHU\x0CHR\x0CH^\x0CHf\x0CHF\x0CH\\\x0CHv\x0CHR\x0CH\\\x0CH|\x0CHT\x0CHR\x0CHJ\x0CIk\x0CH\\\x0CHp\x0CHS\x0CHT\x0CHJ\x0CHS\x0CH^\x0CH@\x0CHn\x0CHJ\x0CH@\x0CHD\x0CHR\x0CHU\x0CIn\x0CHn\x0CH^\x0CHR\x0CHz\x0CHp\x0CIl\x0CHH\x0CH@\x0CHs\x0CHD\x0CHB\x0CHS\x0CH^\x0CHk\x0CHT\x0CIk\x0CHj\x0CHD\x0CIk\x0CHD\x0CHC\x0CHR\x0CHy\x0CIm\x0CH^\x0CH^\x0CIe\x0CH{\x0CHA\x0CHR\x0CH{\x0CH\\\x0CIk\x0CH^\x0CHp\x0CH{\x0CHU\x0CH\\\x0CHR\x0CHB\x0CH^\x0CH{\x0CIk\x0CHF\x0CIk\x0CHp\x0CHU\x0CHR\x0CHI\x0CHk\x0CHT\x0CIl\x0CHT\x0CHU\x0CIl\x0CHy\x0CH^\x0CHR\x0CHL\x0CIl\x0CHy\x0CHU\x0CHR\x0CHm\x0CHJ\x0CIn\x0CH\\\x0CHH\x0CHU\x0CHH\x0CHT\x0CHR\x0CHH\x0CHC\x0CHR\x0CHJ\x0CHj\x0CHC\x0CHR\x0CHF\x0CHR\x0CHy\x0CHy\x0CI`\x0CHD\x0CHZ\x0CHR\x0CHB\x0CHJ\x0CIk\x0CHz\x0CHC\x0CHU\x0CIl\x0CH\\\x0CHR\x0CHC\x0CHz\x0CIm\x0CHJ\x0CH^\x0CH{\x0CIl`bwfdlqjfpf{sfqjfm`f?,wjwof=\x0E\t@lszqjdkw#ibubp`qjsw`lmgjwjlmpfufqzwkjmd?s#`obpp>!wf`kmloldzab`hdqlvmg?b#`obpp>!nbmbdfnfmw%`lsz8#132ibubP`qjsw`kbqb`wfqpaqfbg`qvnawkfnpfoufpklqjylmwbodlufqmnfmw@bojelqmjbb`wjujwjfpgjp`lufqfgMbujdbwjlmwqbmpjwjlm`lmmf`wjlmmbujdbwjlmbssfbqbm`f?,wjwof=?n`kf`hal{!#wf`kmjrvfpsqlwf`wjlmbssbqfmwozbp#tfoo#bpvmw$/#$VB.qfplovwjlmlsfqbwjlmpwfofujpjlmwqbmpobwfgTbpkjmdwlmmbujdbwlq-#>#tjmglt-jnsqfppjlm%ow8aq%dw8ojwfqbwvqfslsvobwjlmad`lolq>! fpsf`jbooz#`lmwfmw>!sqlgv`wjlmmftpofwwfqsqlsfqwjfpgfejmjwjlmofbgfqpkjsWf`kmloldzSbqojbnfmw`lnsbqjplmvo#`obpp>!-jmgf{Le+!`lm`ovpjlmgjp`vppjlm`lnslmfmwpajloldj`boQfulovwjlm\\`lmwbjmfqvmgfqpwllgmlp`qjsw=?sfqnjppjlmfb`k#lwkfqbwnlpskfqf#lmel`vp>!?elqn#jg>!sql`fppjmdwkjp-ubovfdfmfqbwjlm@lmefqfm`fpvapfrvfmwtfoo.hmltmubqjbwjlmpqfsvwbwjlmskfmlnfmlmgjp`jsojmfoldl-smd!#+gl`vnfmw/alvmgbqjfpf{sqfppjlmpfwwofnfmwAb`hdqlvmglvw#le#wkffmwfqsqjpf+!kwwsp9!#vmfp`bsf+!sbpptlqg!#gfnl`qbwj`?b#kqfe>!,tqbssfq!=\tnfnafqpkjsojmdvjpwj`s{8sbggjmdskjolplskzbppjpwbm`fvmjufqpjwzeb`jojwjfpqf`ldmjyfgsqfefqfm`fje#+wzsflenbjmwbjmfgul`bavobqzkzslwkfpjp-pvanjw+*8%bns8maps8bmmlwbwjlmafkjmg#wkfElvmgbwjlmsvaojpkfq!bppvnswjlmjmwqlgv`fg`lqqvswjlmp`jfmwjpwpf{soj`jwozjmpwfbg#legjnfmpjlmp#lm@oj`h>!`lmpjgfqfggfsbqwnfmwl``vsbwjlmpllm#bewfqjmufpwnfmwsqlmlvm`fgjgfmwjejfgf{sfqjnfmwNbmbdfnfmwdfldqbskj`!#kfjdkw>!ojmh#qfo>!-qfsob`f+,gfsqfppjlm`lmefqfm`fsvmjpknfmwfojnjmbwfgqfpjpwbm`fbgbswbwjlmlsslpjwjlmtfoo#hmltmpvssofnfmwgfwfqnjmfgk2#`obpp>!3s{8nbqdjmnf`kbmj`bopwbwjpwj`p`fofaqbwfgDlufqmnfmw\t\tGvqjmd#wgfufolsfqpbqwjej`jbofrvjubofmwlqjdjmbwfg@lnnjppjlmbwwb`knfmw?psbm#jg>!wkfqf#tfqfMfgfqobmgpafzlmg#wkfqfdjpwfqfgilvqmbojpweqfrvfmwozboo#le#wkfobmd>!fm!#?,pwzof=\x0E\tbaplovwf8#pvsslqwjmdf{wqfnfoz#nbjmpwqfbn?,pwqlmd=#slsvobqjwzfnsolznfmw?,wbaof=\x0E\t#`lopsbm>!?,elqn=\t##`lmufqpjlmbalvw#wkf#?,s=?,gju=jmwfdqbwfg!#obmd>!fmSlqwvdvfpfpvapwjwvwfjmgjujgvbojnslppjaofnvowjnfgjbbonlpw#boos{#plojg# bsbqw#eqlnpvaif`w#wljm#Fmdojpk`qjwj`jyfgf{`fsw#elqdvjgfojmfplqjdjmboozqfnbqhbaofwkf#pf`lmgk1#`obpp>!?b#wjwof>!+jm`ovgjmdsbqbnfwfqpsqlkjajwfg>#!kwws9,,gj`wjlmbqzsfq`fswjlmqfulovwjlmelvmgbwjlms{8kfjdkw9pv``fppevopvsslqwfqpnjoofmmjvnkjp#ebwkfqwkf#%rvlw8ml.qfsfbw8`lnnfq`jbojmgvpwqjbofm`lvqbdfgbnlvmw#le#vmleej`jbofeej`jfm`zQfefqfm`fp`llqgjmbwfgjp`objnfqf{sfgjwjlmgfufolsjmd`bo`vobwfgpjnsojejfgofdjwjnbwfpvapwqjmd+3!#`obpp>!`lnsofwfozjoovpwqbwfejuf#zfbqpjmpwqvnfmwSvaojpkjmd2!#`obpp>!spz`kloldz`lmejgfm`fmvnafq#le#bapfm`f#leel`vpfg#lmiljmfg#wkfpwqv`wvqfpsqfujlvpoz=?,jeqbnf=lm`f#bdbjmavw#qbwkfqjnnjdqbmwple#`lvqpf/b#dqlvs#leOjwfqbwvqfVmojhf#wkf?,b=%maps8\tevm`wjlm#jw#tbp#wkf@lmufmwjlmbvwlnlajofSqlwfpwbmwbddqfppjufbewfq#wkf#Pjnjobqoz/!#,=?,gju=`loof`wjlm\x0E\tevm`wjlmujpjajojwzwkf#vpf#leulovmwffqpbwwqb`wjlmvmgfq#wkf#wkqfbwfmfg)?\"X@GBWBXjnslqwbm`fjm#dfmfqbowkf#obwwfq?,elqn=\t?,-jmgf{Le+$j#>#38#j#?gjeefqfm`fgfulwfg#wlwqbgjwjlmppfbq`k#elqvowjnbwfozwlvqmbnfmwbwwqjavwfppl.`boofg#~\t?,pwzof=fubovbwjlmfnskbpjyfgb``fppjaof?,pf`wjlm=pv``fppjlmbolmd#tjwkNfbmtkjof/jmgvpwqjfp?,b=?aq#,=kbp#af`lnfbpsf`wp#leWfofujpjlmpveej`jfmwabphfwabooalwk#pjgfp`lmwjmvjmdbm#bqwj`of?jnd#bow>!bgufmwvqfpkjp#nlwkfqnbm`kfpwfqsqjm`jsofpsbqwj`vobq`lnnfmwbqzfeef`wp#legf`jgfg#wl!=?pwqlmd=svaojpkfqpIlvqmbo#legjeej`vowzeb`jojwbwfb``fswbaofpwzof-`pp!\nevm`wjlm#jmmlubwjlm=@lszqjdkwpjwvbwjlmptlvog#kbufavpjmfppfpGj`wjlmbqzpwbwfnfmwplewfm#vpfgsfqpjpwfmwjm#Ibmvbqz`lnsqjpjmd?,wjwof=\t\ngjsolnbwj``lmwbjmjmdsfqelqnjmdf{wfmpjlmpnbz#mlw#af`lm`fsw#le#lm`oj`h>!Jw#jp#boplejmbm`jbo#nbhjmd#wkfOv{fnalvqdbggjwjlmbobqf#`boofgfmdbdfg#jm!p`qjsw!*8avw#jw#tbpfof`wqlmj`lmpvanjw>!\t?\"..#Fmg#fof`wqj`boleej`jboozpvddfpwjlmwls#le#wkfvmojhf#wkfBvpwqbojbmLqjdjmboozqfefqfm`fp\t?,kfbg=\x0E\tqf`ldmjpfgjmjwjbojyfojnjwfg#wlBof{bmgqjbqfwjqfnfmwBgufmwvqfpelvq#zfbqp\t\t%ow8\"..#jm`qfbpjmdgf`lqbwjlmk0#`obpp>!lqjdjmp#lelaojdbwjlmqfdvobwjlm`obppjejfg+evm`wjlm+bgubmwbdfpafjmd#wkf#kjpwlqjbmp?abpf#kqfeqfsfbwfgoztjoojmd#wl`lnsbqbaofgfpjdmbwfgmlnjmbwjlmevm`wjlmbojmpjgf#wkfqfufobwjlmfmg#le#wkfp#elq#wkf#bvwklqjyfgqfevpfg#wlwbhf#sob`fbvwlmlnlvp`lnsqlnjpfslojwj`bo#qfpwbvqbmwwtl#le#wkfEfaqvbqz#1rvbojwz#leptelaif`w-vmgfqpwbmgmfbqoz#bootqjwwfm#azjmwfqujftp!#tjgwk>!2tjwkgqbtboeolbw9ofewjp#vpvbooz`bmgjgbwfpmftpsbsfqpnzpwfqjlvpGfsbqwnfmwafpw#hmltmsbqojbnfmwpvssqfppfg`lmufmjfmwqfnfnafqfggjeefqfmw#pzpwfnbwj`kbp#ofg#wlsqlsbdbmgb`lmwqloofgjmeovfm`fp`fqfnlmjbosql`objnfgSqlwf`wjlmoj#`obpp>!P`jfmwjej``obpp>!ml.wqbgfnbqhpnlqf#wkbm#tjgfpsqfbgOjafqbwjlmwllh#sob`fgbz#le#wkfbp#olmd#bpjnsqjplmfgBggjwjlmbo\t?kfbg=\t?nObalqbwlqzMlufnafq#1f{`fswjlmpJmgvpwqjboubqjfwz#leeolbw9#ofeGvqjmd#wkfbppfppnfmwkbuf#affm#gfbop#tjwkPwbwjpwj`pl``vqqfm`f,vo=?,gju=`ofbqej{!=wkf#svaoj`nbmz#zfbqptkj`k#tfqflufq#wjnf/pzmlmznlvp`lmwfmw!=\tsqfpvnbaozkjp#ebnjozvpfqBdfmw-vmf{sf`wfgjm`ovgjmd#`kboofmdfgb#njmlqjwzvmgfejmfg!afolmdp#wlwbhfm#eqlnjm#L`wlafqslpjwjlm9#pbjg#wl#afqfojdjlvp#Efgfqbwjlm#qltpsbm>!lmoz#b#eftnfbmw#wkbwofg#wl#wkf..=\x0E\t?gju#?ejfogpfw=Bq`kajpkls#`obpp>!mlafjmd#vpfgbssqlb`kfpsqjujofdfpmlp`qjsw=\tqfpvowp#jmnbz#af#wkfFbpwfq#fddnf`kbmjpnpqfbplmbaofSlsvobwjlm@loof`wjlmpfof`wfg!=mlp`qjsw=\x0E,jmgf{-sksbqqjubo#le.ippgh$**8nbmbdfg#wljm`lnsofwf`bpvbowjfp`lnsofwjlm@kqjpwjbmpPfswfnafq#bqjwknfwj`sql`fgvqfpnjdkw#kbufSqlgv`wjlmjw#bssfbqpSkjolplskzeqjfmgpkjsofbgjmd#wldjujmd#wkfwltbqg#wkfdvbqbmwffggl`vnfmwfg`lolq9 333ujgfl#dbnf`lnnjppjlmqfeof`wjmd`kbmdf#wkfbppl`jbwfgpbmp.pfqjelmhfzsqfpp8#sbggjmd9Kf#tbp#wkfvmgfqozjmdwzsj`booz#/#bmg#wkf#pq`Fofnfmwpv``fppjufpjm`f#wkf#pklvog#af#mfwtlqhjmdb``lvmwjmdvpf#le#wkfoltfq#wkbmpkltp#wkbw?,psbm=\t\n\n`lnsobjmwp`lmwjmvlvprvbmwjwjfpbpwqlmlnfqkf#gjg#mlwgvf#wl#jwpbssojfg#wlbm#bufqbdffeelqwp#wlwkf#evwvqfbwwfnsw#wlWkfqfelqf/`bsbajojwzQfsvaoj`bmtbp#elqnfgFof`wqlmj`hjolnfwfqp`kboofmdfpsvaojpkjmdwkf#elqnfqjmgjdfmlvpgjqf`wjlmppvapjgjbqz`lmpsjqb`zgfwbjop#lebmg#jm#wkfbeelqgbaofpvapwbm`fpqfbplm#elq`lmufmwjlmjwfnwzsf>!baplovwfozpvsslpfgozqfnbjmfg#bbwwqb`wjufwqbufoojmdpfsbqbwfozel`vpfp#lmfofnfmwbqzbssoj`baofelvmg#wkbwpwzofpkffwnbmvp`qjswpwbmgp#elq#ml.qfsfbw+plnfwjnfp@lnnfq`jbojm#Bnfqj`bvmgfqwbhfmrvbqwfq#lebm#f{bnsofsfqplmboozjmgf{-sks<?,avwwlm=\tsfq`fmwbdfafpw.hmltm`qfbwjmd#b!#gjq>!owqOjfvwfmbmw\t?gju#jg>!wkfz#tlvogbajojwz#lenbgf#vs#lemlwfg#wkbw`ofbq#wkbwbqdvf#wkbwwl#bmlwkfq`kjogqfm$psvqslpf#leelqnvobwfgabpfg#vslmwkf#qfdjlmpvaif`w#lesbppfmdfqpslppfppjlm-\t\tJm#wkf#Afelqf#wkfbewfqtbqgp`vqqfmwoz#b`qlpp#wkfp`jfmwjej``lnnvmjwz-`bsjwbojpnjm#Dfqnbmzqjdkw.tjmdwkf#pzpwfnPl`jfwz#leslojwj`jbmgjqf`wjlm9tfmw#lm#wlqfnlubo#le#Mft#Zlqh#bsbqwnfmwpjmgj`bwjlmgvqjmd#wkfvmofpp#wkfkjpwlqj`bokbg#affm#bgfejmjwjufjmdqfgjfmwbwwfmgbm`f@fmwfq#elqsqlnjmfm`fqfbgzPwbwfpwqbwfdjfpavw#jm#wkfbp#sbqw#le`lmpwjwvwf`objn#wkbwobalqbwlqz`lnsbwjaofebjovqf#le/#pv`k#bp#afdbm#tjwkvpjmd#wkf#wl#sqlujgfefbwvqf#leeqln#tkj`k,!#`obpp>!dfloldj`bopfufqbo#legfojafqbwfjnslqwbmw#klogp#wkbwjmd%rvlw8#ubojdm>wlswkf#Dfqnbmlvwpjgf#lemfdlwjbwfgkjp#`bqffqpfsbqbwjlmjg>!pfbq`ktbp#`boofgwkf#elvqwkqf`qfbwjlmlwkfq#wkbmsqfufmwjlmtkjof#wkf#fgv`bwjlm/`lmmf`wjmdb``vqbwfoztfqf#avjowtbp#hjoofgbdqffnfmwpnv`k#nlqf#Gvf#wl#wkftjgwk9#233plnf#lwkfqHjmdgln#lewkf#fmwjqfebnlvp#elqwl#`lmmf`wlaif`wjufpwkf#Eqfm`ksflsof#bmgefbwvqfg!=jp#pbjg#wlpwqv`wvqboqfefqfmgvnnlpw#lewfmb#pfsbqbwf.=\t?gju#jg#Leej`jbo#tlqogtjgf-bqjb.obafowkf#sobmfwbmg#jw#tbpg!#ubovf>!ollhjmd#bwafmfej`jbobqf#jm#wkfnlmjwlqjmdqfslqwfgozwkf#nlgfqmtlqhjmd#lmbooltfg#wltkfqf#wkf#jmmlubwjuf?,b=?,gju=plvmgwqb`hpfbq`kElqnwfmg#wl#afjmsvw#jg>!lsfmjmd#leqfpwqj`wfgbglswfg#azbggqfppjmdwkfloldjbmnfwklgp#leubqjbmw#le@kqjpwjbm#ufqz#obqdfbvwlnlwjufaz#ebq#wkfqbmdf#eqlnsvqpvjw#leeloolt#wkfaqlvdkw#wljm#Fmdobmgbdqff#wkbwb``vpfg#le`lnfp#eqlnsqfufmwjmdgju#pwzof>kjp#lq#kfqwqfnfmglvpeqffgln#le`lm`fqmjmd3#2fn#2fn8Abphfwaboo,pwzof-`ppbm#fbqojfqfufm#bewfq,!#wjwof>!-`ln,jmgf{wbhjmd#wkfsjwwpavqdk`lmwfmw!=\x0E?p`qjsw=+ewvqmfg#lvwkbujmd#wkf?,psbm=\x0E\t#l``bpjlmboaf`bvpf#jwpwbqwfg#wlskzpj`booz=?,gju=\t##`qfbwfg#az@vqqfmwoz/#ad`lolq>!wbajmgf{>!gjpbpwqlvpBmbozwj`p#bopl#kbp#b=?gju#jg>!?,pwzof=\t?`boofg#elqpjmdfq#bmg-pq`#>#!,,ujlobwjlmpwkjp#sljmw`lmpwbmwozjp#ol`bwfgqf`lqgjmdpg#eqln#wkfmfgfqobmgpslqwvdv/Fp;N;};D;u;F5m4K4]4_7`gfpbqqlool`lnfmwbqjlfgv`b`j/_mpfswjfnaqfqfdjpwqbglgjqf``j/_mvaj`b`j/_msvaoj`jgbgqfpsvfpwbpqfpvowbglpjnslqwbmwfqfpfqubglpbqw/A`volpgjefqfmwfppjdvjfmwfpqfs/Vaoj`bpjwvb`j/_mnjmjpwfqjlsqjub`jgbggjqf`wlqjlelqnb`j/_mslaob`j/_msqfpjgfmwf`lmw", "fmjglpb``fplqjlpwf`kmlqbwjsfqplmbofp`bwfdlq/Abfpsf`jbofpgjpslmjaofb`wvbojgbgqfefqfm`jbuboobglojgajaojlwf`bqfob`jlmfp`bofmgbqjlslo/Awj`bpbmwfqjlqfpgl`vnfmwlpmbwvqbofybnbwfqjbofpgjefqfm`jbf`lm/_nj`bwqbmpslqwfqlgq/Advfysbqwj`jsbqfm`vfmwqbmgjp`vpj/_mfpwqv`wvqbevmgb`j/_meqf`vfmwfpsfqnbmfmwfwlwbonfmwf<P<R<Z<Q<R<]=o<X<Y=n<P<R<Z<Y=n<^=l<Y<P=c=n<\\<V<Z<Y=k=n<R<]=g<]<R<W<Y<Y<R=k<Y<Q=`=a=n<R<_<R<V<R<_<X<\\<S<R=m<W<Y<^=m<Y<_<R=m<\\<U=n<Y=k<Y=l<Y<[<P<R<_=o=n=m<\\<U=n<\\<Z<T<[<Q<T<P<Y<Z<X=o<]=o<X=o=n<s<R<T=m<V<[<X<Y=m=`<^<T<X<Y<R=m<^=c<[<T<Q=o<Z<Q<R=m<^<R<Y<U<W=b<X<Y<U<S<R=l<Q<R<P<Q<R<_<R<X<Y=n<Y<U=m<^<R<T=i<S=l<\\<^<\\=n<\\<V<R<U<P<Y=m=n<R<T<P<Y<Y=n<Z<T<[<Q=`<R<X<Q<R<U<W=o=k=d<Y<S<Y=l<Y<X=k<\\=m=n<T=k<\\=m=n=`=l<\\<]<R=n<Q<R<^=g=i<S=l<\\<^<R=m<R<]<R<U<S<R=n<R<P<P<Y<Q<Y<Y=k<T=m<W<Y<Q<R<^=g<Y=o=m<W=o<_<R<V<R<W<R<Q<\\<[<\\<X=n<\\<V<R<Y=n<R<_<X<\\<S<R=k=n<T<s<R=m<W<Y=n<\\<V<T<Y<Q<R<^=g<U=m=n<R<T=n=n<\\<V<T=i=m=l<\\<[=o<M<\\<Q<V=n=h<R=l=o<P<v<R<_<X<\\<V<Q<T<_<T=m<W<R<^<\\<Q<\\=d<Y<U<Q<\\<U=n<T=m<^<R<T<P=m<^=c<[=`<W=b<]<R<U=k<\\=m=n<R=m=l<Y<X<T<v=l<R<P<Y<H<R=l=o<P=l=g<Q<V<Y=m=n<\\<W<T<S<R<T=m<V=n=g=m=c=k<P<Y=m=c=j=j<Y<Q=n=l=n=l=o<X<\\=m<\\<P=g=i=l=g<Q<V<\\<q<R<^=g<U=k<\\=m<R<^<P<Y=m=n<\\=h<T<W=`<P<P<\\=l=n<\\=m=n=l<\\<Q<P<Y=m=n<Y=n<Y<V=m=n<Q<\\=d<T=i<P<T<Q=o=n<T<P<Y<Q<T<T<P<Y=b=n<Q<R<P<Y=l<_<R=l<R<X=m<\\<P<R<P=a=n<R<P=o<V<R<Q=j<Y=m<^<R<Y<P<V<\\<V<R<U<|=l=i<T<^5i5j4F4C5e4I4]4_4K5h4]4_4K5h4E4K5h4U4K5i5o4F4D5k4K4D4]4K5i4@4K5h5f5d5i4K5h4Y5d4]4@4C5f4C4E4K5h4U4Z5d4I4Z4K5m4E4K5h5n4_5i4K5h4U4K4D4F4A5i5f5h5i5h5m4K4F5i5h4F5n5e4F4U4C5f5h4K5h4X4U4]4O4B4D4K4]4F4[5d5f4]4U5h5f5o5i4I4]5m4K5n4[5h4D4K4F4K5h5h4V4E4F4]4F5f4D4K5h5j4K4_4K5h4X5f4B5i5j4F4C5f4K5h4U4]4D4K5h5n4Y4Y4K5m5h4K5i4U5h5f5k4K4F4A4C5f4G4K5h5h5k5i4K5h4U5i5h5i5o4F4D4E5f5i5o5j5o4K5h4[5m5h5m5f4C5f5d4I4C4K4]4E4F4K4]5f4B4K5h4Y4A4E4F4_4@5f5h4K5h5d5n4F4U5j4C5i4K5i4C5f5j4E4F4Y5i5f5i4O4]4X5f5m4K5h4\\5f5j4U4]4D5f4E4D5d4K4D4E4O5h4U4K4D4K5h4_5m4]5i4X4K5o5h4F4U4K5h5e4K5h4O5d5h4K5h4_5j4E4@4K5i4U4E4K5h4Y4A5m4K5h4C5f5j5o5h5i4K4F4K5h4B4K4Y4K5h5i5h5m4O4U4Z4K4M5o4F4K4D4E4K5h4B5f4]4]4_4K4J5h4K5h5n5h4D4K5h4O4C4D5i5n4K4[4U5i4]4K4_5h5i5j4[5n4E4K5h5o4F4D4K5h4]4@5h4K4X4F4]5o4K5h5n4C5i5f4U4[5f5opAzWbdMbnf+-isd!#bow>!2s{#plojg# -dje!#bow>!wqbmpsbqfmwjmelqnbwjlmbssoj`bwjlm!#lm`oj`h>!fpwbaojpkfgbgufqwjpjmd-smd!#bow>!fmujqlmnfmwsfqelqnbm`fbssqlsqjbwf%bns8ngbpk8jnnfgjbwfoz?,pwqlmd=?,qbwkfq#wkbmwfnsfqbwvqfgfufolsnfmw`lnsfwjwjlmsob`fklogfqujpjajojwz9`lszqjdkw!=3!#kfjdkw>!fufm#wklvdkqfsob`fnfmwgfpwjmbwjlm@lqslqbwjlm?vo#`obpp>!Bppl`jbwjlmjmgjujgvbopsfqpsf`wjufpfwWjnflvw+vqo+kwws9,,nbwkfnbwj`pnbqdjm.wls9fufmwvbooz#gfp`qjswjlm*#ml.qfsfbw`loof`wjlmp-ISD\u007Fwkvna\u007Fsbqwj`jsbwf,kfbg=?algzeolbw9ofew8?oj#`obpp>!kvmgqfgp#le\t\tKltfufq/#`lnslpjwjlm`ofbq9alwk8`llsfqbwjlmtjwkjm#wkf#obafo#elq>!alqgfq.wls9Mft#Yfbobmgqf`lnnfmgfgsklwldqbskzjmwfqfpwjmd%ow8pvs%dw8`lmwqlufqpzMfwkfqobmgpbowfqmbwjufnb{ofmdwk>!ptjwyfqobmgGfufolsnfmwfppfmwjbooz\t\tBowklvdk#?,wf{wbqfb=wkvmgfqajqgqfsqfpfmwfg%bns8mgbpk8psf`vobwjlm`lnnvmjwjfpofdjpobwjlmfof`wqlmj`p\t\n?gju#jg>!joovpwqbwfgfmdjmffqjmdwfqqjwlqjfpbvwklqjwjfpgjpwqjavwfg5!#kfjdkw>!pbmp.pfqje8`bsbaof#le#gjpbssfbqfgjmwfqb`wjufollhjmd#elqjw#tlvog#afBedkbmjpwbmtbp#`qfbwfgNbwk-eollq+pvqqlvmgjmd`bm#bopl#aflapfqubwjlmnbjmwfmbm`ffm`lvmwfqfg?k1#`obpp>!nlqf#qf`fmwjw#kbp#affmjmubpjlm#le*-dfwWjnf+*evmgbnfmwboGfpsjwf#wkf!=?gju#jg>!jmpsjqbwjlmf{bnjmbwjlmsqfsbqbwjlmf{sobmbwjlm?jmsvw#jg>!?,b=?,psbm=ufqpjlmp#lejmpwqvnfmwpafelqf#wkf##>#$kwws9,,Gfp`qjswjlmqfobwjufoz#-pvapwqjmd+fb`k#le#wkff{sfqjnfmwpjmeovfmwjbojmwfdqbwjlmnbmz#sflsofgvf#wl#wkf#`lnajmbwjlmgl#mlw#kbufNjggof#Fbpw?mlp`qjsw=?`lszqjdkw!#sfqkbsp#wkfjmpwjwvwjlmjm#Gf`fnafqbqqbmdfnfmwnlpw#ebnlvpsfqplmbojwz`qfbwjlm#leojnjwbwjlmpf{`ovpjufozplufqfjdmwz.`lmwfmw!=\t?wg#`obpp>!vmgfqdqlvmgsbqboofo#wlgl`wqjmf#lel``vsjfg#azwfqnjmloldzQfmbjppbm`fb#mvnafq#lepvsslqw#elqf{solqbwjlmqf`ldmjwjlmsqfgf`fpplq?jnd#pq`>!,?k2#`obpp>!svaoj`bwjlmnbz#bopl#afpsf`jbojyfg?,ejfogpfw=sqldqfppjufnjoojlmp#lepwbwfp#wkbwfmelq`fnfmwbqlvmg#wkf#lmf#bmlwkfq-sbqfmwMlgfbdqj`vowvqfBowfqmbwjufqfpfbq`kfqpwltbqgp#wkfNlpw#le#wkfnbmz#lwkfq#+fpsf`jbooz?wg#tjgwk>!8tjgwk9233&jmgfsfmgfmw?k0#`obpp>!#lm`kbmdf>!*-bgg@obpp+jmwfqb`wjlmLmf#le#wkf#gbvdkwfq#leb``fpplqjfpaqbm`kfp#le\x0E\t?gju#jg>!wkf#obqdfpwgf`obqbwjlmqfdvobwjlmpJmelqnbwjlmwqbmpobwjlmgl`vnfmwbqzjm#lqgfq#wl!=\t?kfbg=\t?!#kfjdkw>!2b`qlpp#wkf#lqjfmwbwjlm*8?,p`qjsw=jnsofnfmwfg`bm#af#pffmwkfqf#tbp#bgfnlmpwqbwf`lmwbjmfq!=`lmmf`wjlmpwkf#Aqjwjpktbp#tqjwwfm\"jnslqwbmw8s{8#nbqdjm.elooltfg#azbajojwz#wl#`lnsoj`bwfggvqjmd#wkf#jnnjdqbwjlmbopl#`boofg?k7#`obpp>!gjpwjm`wjlmqfsob`fg#azdlufqmnfmwpol`bwjlm#lejm#Mlufnafqtkfwkfq#wkf?,s=\t?,gju=b`rvjpjwjlm`boofg#wkf#sfqpf`vwjlmgfpjdmbwjlmxelmw.pjyf9bssfbqfg#jmjmufpwjdbwff{sfqjfm`fgnlpw#ojhfoztjgfoz#vpfggjp`vppjlmpsqfpfm`f#le#+gl`vnfmw-f{wfmpjufozJw#kbp#affmjw#glfp#mlw`lmwqbqz#wljmkbajwbmwpjnsqlufnfmwp`klobqpkjs`lmpvnswjlmjmpwqv`wjlmelq#f{bnsoflmf#lq#nlqfs{8#sbggjmdwkf#`vqqfmwb#pfqjfp#lebqf#vpvboozqlof#jm#wkfsqfujlvpoz#gfqjubwjufpfujgfm`f#lef{sfqjfm`fp`lolqp`kfnfpwbwfg#wkbw`fqwjej`bwf?,b=?,gju=\t#pfof`wfg>!kjdk#p`klloqfpslmpf#wl`lnelqwbaofbglswjlm#lewkqff#zfbqpwkf#`lvmwqzjm#Efaqvbqzpl#wkbw#wkfsflsof#tkl#sqlujgfg#az?sbqbn#mbnfbeef`wfg#azjm#wfqnp#lebssljmwnfmwJPL.;;6:.2!tbp#alqm#jmkjpwlqj`bo#qfdbqgfg#bpnfbpvqfnfmwjp#abpfg#lm#bmg#lwkfq#9#evm`wjlm+pjdmjej`bmw`fofaqbwjlmwqbmpnjwwfg,ip,irvfqz-jp#hmltm#bpwkflqfwj`bo#wbajmgf{>!jw#`lvog#af?mlp`qjsw=\tkbujmd#affm\x0E\t?kfbg=\x0E\t?#%rvlw8Wkf#`lnsjobwjlmkf#kbg#affmsqlgv`fg#azskjolplskfq`lmpwqv`wfgjmwfmgfg#wlbnlmd#lwkfq`lnsbqfg#wlwl#pbz#wkbwFmdjmffqjmdb#gjeefqfmwqfefqqfg#wlgjeefqfm`fpafojfe#wkbwsklwldqbskpjgfmwjezjmdKjpwlqz#le#Qfsvaoj`#lemf`fppbqjozsqlabajojwzwf`kmj`boozofbujmd#wkfpsf`wb`vobqeqb`wjlm#lefof`wqj`jwzkfbg#le#wkfqfpwbvqbmwpsbqwmfqpkjsfnskbpjp#lmnlpw#qf`fmwpkbqf#tjwk#pbzjmd#wkbwejoofg#tjwkgfpjdmfg#wljw#jp#lewfm!=?,jeqbnf=bp#elooltp9nfqdfg#tjwkwkqlvdk#wkf`lnnfq`jbo#sljmwfg#lvwlsslqwvmjwzujft#le#wkfqfrvjqfnfmwgjujpjlm#lesqldqbnnjmdkf#qf`fjufgpfwJmwfqubo!=?,psbm=?,jm#Mft#Zlqhbggjwjlmbo#`lnsqfppjlm\t\t?gju#jg>!jm`lqslqbwf8?,p`qjsw=?bwwb`kFufmwaf`bnf#wkf#!#wbqdfw>!\\`bqqjfg#lvwPlnf#le#wkfp`jfm`f#bmgwkf#wjnf#le@lmwbjmfq!=nbjmwbjmjmd@kqjpwlskfqNv`k#le#wkftqjwjmdp#le!#kfjdkw>!1pjyf#le#wkfufqpjlm#le#nj{wvqf#le#afwtffm#wkfF{bnsofp#lefgv`bwjlmbo`lnsfwjwjuf#lmpvanjw>!gjqf`wlq#legjpwjm`wjuf,GWG#[KWNO#qfobwjmd#wlwfmgfm`z#wlsqlujm`f#letkj`k#tlvoggfpsjwf#wkfp`jfmwjej`#ofdjpobwvqf-jmmfqKWNO#boofdbwjlmpBdqj`vowvqftbp#vpfg#jmbssqlb`k#wljmwfoojdfmwzfbqp#obwfq/pbmp.pfqjegfwfqnjmjmdSfqelqnbm`fbssfbqbm`fp/#tkj`k#jp#elvmgbwjlmpbaaqfujbwfgkjdkfq#wkbmp#eqln#wkf#jmgjujgvbo#`lnslpfg#lepvsslpfg#wl`objnp#wkbwbwwqjavwjlmelmw.pjyf92fofnfmwp#leKjpwlqj`bo#kjp#aqlwkfqbw#wkf#wjnfbmmjufqpbqzdlufqmfg#azqfobwfg#wl#vowjnbwfoz#jmmlubwjlmpjw#jp#pwjoo`bm#lmoz#afgfejmjwjlmpwlDNWPwqjmdB#mvnafq#lejnd#`obpp>!Fufmwvbooz/tbp#`kbmdfgl``vqqfg#jmmfjdkalqjmdgjpwjmdvjpktkfm#kf#tbpjmwqlgv`jmdwfqqfpwqjboNbmz#le#wkfbqdvfp#wkbwbm#Bnfqj`bm`lmrvfpw#letjgfpsqfbg#tfqf#hjoofgp`qffm#bmg#Jm#lqgfq#wlf{sf`wfg#wlgfp`fmgbmwpbqf#ol`bwfgofdjpobwjufdfmfqbwjlmp#ab`hdqlvmgnlpw#sflsofzfbqp#bewfqwkfqf#jp#mlwkf#kjdkfpweqfrvfmwoz#wkfz#gl#mlwbqdvfg#wkbwpkltfg#wkbwsqfglnjmbmwwkfloldj`boaz#wkf#wjnf`lmpjgfqjmdpklqw.ojufg?,psbm=?,b=`bm#af#vpfgufqz#ojwwoflmf#le#wkf#kbg#boqfbgzjmwfqsqfwfg`lnnvmj`bwfefbwvqfp#ledlufqmnfmw/?,mlp`qjsw=fmwfqfg#wkf!#kfjdkw>!0Jmgfsfmgfmwslsvobwjlmpobqdf.p`bof-#Bowklvdk#vpfg#jm#wkfgfpwqv`wjlmslppjajojwzpwbqwjmd#jmwtl#lq#nlqff{sqfppjlmppvalqgjmbwfobqdfq#wkbmkjpwlqz#bmg?,lswjlm=\x0E\t@lmwjmfmwbofojnjmbwjmdtjoo#mlw#afsqb`wj`f#lejm#eqlmw#lepjwf#le#wkffmpvqf#wkbwwl#`qfbwf#bnjppjppjssjslwfmwjboozlvwpwbmgjmdafwwfq#wkbmtkbw#jp#mltpjwvbwfg#jmnfwb#mbnf>!WqbgjwjlmbopvddfpwjlmpWqbmpobwjlmwkf#elqn#lebwnlpskfqj`jgfloldj`bofmwfqsqjpfp`bo`vobwjmdfbpw#le#wkfqfnmbmwp#lesovdjmpsbdf,jmgf{-sks<qfnbjmfg#jmwqbmpelqnfgKf#tbp#bopltbp#boqfbgzpwbwjpwj`bojm#ebulq#leNjmjpwqz#lenlufnfmw#leelqnvobwjlmjp#qfrvjqfg?ojmh#qfo>!Wkjp#jp#wkf#?b#kqfe>!,slsvobqjyfgjmuloufg#jmbqf#vpfg#wlbmg#pfufqbonbgf#az#wkfpffnp#wl#afojhfoz#wkbwSbofpwjmjbmmbnfg#bewfqjw#kbg#affmnlpw#`lnnlmwl#qfefq#wlavw#wkjp#jp`lmpf`vwjufwfnslqbqjozJm#dfmfqbo/`lmufmwjlmpwbhfp#sob`fpvagjujpjlmwfqqjwlqjbolsfqbwjlmbosfqnbmfmwoztbp#obqdfozlvwaqfbh#lejm#wkf#sbpwelooltjmd#b#{nomp9ld>!=?b#`obpp>!`obpp>!wf{w@lmufqpjlm#nbz#af#vpfgnbmveb`wvqfbewfq#afjmd`ofbqej{!=\trvfpwjlm#letbp#fof`wfgwl#af`lnf#baf`bvpf#le#plnf#sflsofjmpsjqfg#azpv``fppevo#b#wjnf#tkfmnlqf#`lnnlmbnlmdpw#wkfbm#leej`jbotjgwk9233&8wf`kmloldz/tbp#bglswfgwl#hffs#wkfpfwwofnfmwpojuf#ajqwkpjmgf{-kwno!@lmmf`wj`vwbppjdmfg#wl%bns8wjnfp8b``lvmw#elqbojdm>qjdkwwkf#`lnsbmzbotbzp#affmqfwvqmfg#wljmuloufnfmwAf`bvpf#wkfwkjp#sfqjlg!#mbnf>!r!#`lmejmfg#wlb#qfpvow#leubovf>!!#,=jp#b`wvboozFmujqlmnfmw\x0E\t?,kfbg=\x0E\t@lmufqpfoz/=\t?gju#jg>!3!#tjgwk>!2jp#sqlabaozkbuf#af`lnf`lmwqloojmdwkf#sqlaofn`jwjyfmp#leslojwj`jbmpqfb`kfg#wkfbp#fbqoz#bp9mlmf8#lufq?wbaof#`fooubojgjwz#legjqf`woz#wllmnlvpfgltmtkfqf#jw#jptkfm#jw#tbpnfnafqp#le#qfobwjlm#wlb``lnnlgbwfbolmd#tjwk#Jm#wkf#obwfwkf#Fmdojpkgfoj`jlvp!=wkjp#jp#mlwwkf#sqfpfmwje#wkfz#bqfbmg#ejmboozb#nbwwfq#le\x0E\t\n?,gju=\x0E\t\x0E\t?,p`qjsw=ebpwfq#wkbmnbilqjwz#lebewfq#tkj`k`lnsbqbwjufwl#nbjmwbjmjnsqluf#wkfbtbqgfg#wkffq!#`obpp>!eqbnfalqgfqqfpwlqbwjlmjm#wkf#pbnfbmbozpjp#lewkfjq#ejqpwGvqjmd#wkf#`lmwjmfmwbopfrvfm`f#leevm`wjlm+*xelmw.pjyf9#tlqh#lm#wkf?,p`qjsw=\t?afdjmp#tjwkibubp`qjsw9`lmpwjwvfmwtbp#elvmgfgfrvjojaqjvnbppvnf#wkbwjp#djufm#azmffgp#wl#af`llqgjmbwfpwkf#ubqjlvpbqf#sbqw#lelmoz#jm#wkfpf`wjlmp#lejp#b#`lnnlmwkflqjfp#legjp`lufqjfpbppl`jbwjlmfgdf#le#wkfpwqfmdwk#leslpjwjlm#jmsqfpfmw.gbzvmjufqpboozwl#elqn#wkfavw#jmpwfbg`lqslqbwjlmbwwb`kfg#wljp#`lnnlmozqfbplmp#elq#%rvlw8wkf#`bm#af#nbgftbp#baof#wltkj`k#nfbmpavw#gjg#mlwlmNlvpfLufqbp#slppjaoflsfqbwfg#az`lnjmd#eqlnwkf#sqjnbqzbggjwjlm#leelq#pfufqbowqbmpefqqfgb#sfqjlg#lebqf#baof#wlkltfufq/#jwpklvog#kbufnv`k#obqdfq\t\n?,p`qjsw=bglswfg#wkfsqlsfqwz#legjqf`wfg#azfeef`wjufoztbp#aqlvdkw`kjogqfm#leSqldqbnnjmdolmdfq#wkbmnbmvp`qjswptbq#bdbjmpwaz#nfbmp#lebmg#nlpw#lepjnjobq#wl#sqlsqjfwbqzlqjdjmbwjmdsqfpwjdjlvpdqbnnbwj`bof{sfqjfm`f-wl#nbhf#wkfJw#tbp#bopljp#elvmg#jm`lnsfwjwlqpjm#wkf#V-P-qfsob`f#wkfaqlvdkw#wkf`bo`vobwjlmeboo#le#wkfwkf#dfmfqbosqb`wj`boozjm#klmlq#leqfofbpfg#jmqfpjgfmwjbobmg#plnf#lehjmd#le#wkfqfb`wjlm#wl2pw#Fbqo#le`vowvqf#bmgsqjm`jsbooz?,wjwof=\t##wkfz#`bm#afab`h#wl#wkfplnf#le#kjpf{slpvqf#wlbqf#pjnjobqelqn#le#wkfbggEbulqjwf`jwjyfmpkjssbqw#jm#wkfsflsof#tjwkjm#sqb`wj`fwl#`lmwjmvf%bns8njmvp8bssqlufg#az#wkf#ejqpw#booltfg#wkfbmg#elq#wkfevm`wjlmjmdsobzjmd#wkfplovwjlm#wlkfjdkw>!3!#jm#kjp#allhnlqf#wkbm#belooltp#wkf`qfbwfg#wkfsqfpfm`f#jm%maps8?,wg=mbwjlmbojpwwkf#jgfb#leb#`kbqb`wfqtfqf#elq`fg#`obpp>!awmgbzp#le#wkfefbwvqfg#jmpkltjmd#wkfjmwfqfpw#jmjm#sob`f#lewvqm#le#wkfwkf#kfbg#leOlqg#le#wkfslojwj`boozkbp#jwp#ltmFgv`bwjlmbobssqlubo#leplnf#le#wkffb`k#lwkfq/afkbujlq#lebmg#af`bvpfbmg#bmlwkfqbssfbqfg#lmqf`lqgfg#jmaob`h%rvlw8nbz#jm`ovgfwkf#tlqog$p`bm#ofbg#wlqfefqp#wl#balqgfq>!3!#dlufqmnfmw#tjmmjmd#wkfqfpvowfg#jm#tkjof#wkf#Tbpkjmdwlm/wkf#pvaif`w`jwz#jm#wkf=?,gju=\x0E\t\n\nqfeof`w#wkfwl#`lnsofwfaf`bnf#nlqfqbgjlb`wjufqfif`wfg#aztjwklvw#bmzkjp#ebwkfq/tkj`k#`lvog`lsz#le#wkfwl#jmgj`bwfb#slojwj`bob``lvmwp#le`lmpwjwvwfptlqhfg#tjwkfq?,b=?,oj=le#kjp#ojefb``lnsbmjfg`ojfmwTjgwksqfufmw#wkfOfdjpobwjufgjeefqfmwozwldfwkfq#jmkbp#pfufqboelq#bmlwkfqwf{w#le#wkfelvmgfg#wkff#tjwk#wkf#jp#vpfg#elq`kbmdfg#wkfvpvbooz#wkfsob`f#tkfqftkfqfbp#wkf=#?b#kqfe>!!=?b#kqfe>!wkfnpfoufp/bowklvdk#kfwkbw#`bm#afwqbgjwjlmboqlof#le#wkfbp#b#qfpvowqfnluf@kjoggfpjdmfg#aztfpw#le#wkfPlnf#sflsofsqlgv`wjlm/pjgf#le#wkfmftpofwwfqpvpfg#az#wkfgltm#wl#wkfb``fswfg#azojuf#jm#wkfbwwfnswp#wllvwpjgf#wkfeqfrvfm`jfpKltfufq/#jmsqldqbnnfqpbw#ofbpw#jmbssql{jnbwfbowklvdk#jwtbp#sbqw#lebmg#ubqjlvpDlufqmlq#lewkf#bqwj`ofwvqmfg#jmwl=?b#kqfe>!,wkf#f`lmlnzjp#wkf#nlpwnlpw#tjgfoztlvog#obwfqbmg#sfqkbspqjpf#wl#wkfl``vqp#tkfmvmgfq#tkj`k`lmgjwjlmp-wkf#tfpwfqmwkflqz#wkbwjp#sqlgv`fgwkf#`jwz#lejm#tkj`k#kfpffm#jm#wkfwkf#`fmwqboavjogjmd#lenbmz#le#kjpbqfb#le#wkfjp#wkf#lmoznlpw#le#wkfnbmz#le#wkfwkf#TfpwfqmWkfqf#jp#mlf{wfmgfg#wlPwbwjpwj`bo`lopsbm>1#\u007Fpklqw#pwlqzslppjaof#wlwlsloldj`bo`qjwj`bo#leqfslqwfg#wlb#@kqjpwjbmgf`jpjlm#wljp#frvbo#wlsqlaofnp#leWkjp#`bm#afnfq`kbmgjpfelq#nlpw#leml#fujgfm`ffgjwjlmp#lefofnfmwp#jm%rvlw8-#Wkf`ln,jnbdfp,tkj`k#nbhfpwkf#sql`fppqfnbjmp#wkfojwfqbwvqf/jp#b#nfnafqwkf#slsvobqwkf#bm`jfmwsqlaofnp#jmwjnf#le#wkfgfefbwfg#azalgz#le#wkfb#eft#zfbqpnv`k#le#wkfwkf#tlqh#le@bojelqmjb/pfqufg#bp#bdlufqmnfmw-`lm`fswp#lenlufnfmw#jm\n\n?gju#jg>!jw!#ubovf>!obmdvbdf#lebp#wkfz#bqfsqlgv`fg#jmjp#wkbw#wkff{sobjm#wkfgju=?,gju=\tKltfufq#wkfofbg#wl#wkf\n?b#kqfe>!,tbp#dqbmwfgsflsof#kbuf`lmwjmvbooztbp#pffm#bpbmg#qfobwfgwkf#qlof#lesqlslpfg#azle#wkf#afpwfb`k#lwkfq-@lmpwbmwjmfsflsof#eqlngjbof`wp#lewl#qfujpjlmtbp#qfmbnfgb#plvq`f#lewkf#jmjwjboobvm`kfg#jmsqlujgf#wkfwl#wkf#tfpwtkfqf#wkfqfbmg#pjnjobqafwtffm#wtljp#bopl#wkfFmdojpk#bmg`lmgjwjlmp/wkbw#jw#tbpfmwjwofg#wlwkfnpfoufp-rvbmwjwz#leqbmpsbqfm`zwkf#pbnf#bpwl#iljm#wkf`lvmwqz#bmgwkjp#jp#wkfWkjp#ofg#wlb#pwbwfnfmw`lmwqbpw#wlobpwJmgf{Lewkqlvdk#kjpjp#gfpjdmfgwkf#wfqn#jpjp#sqlujgfgsqlwf`w#wkfmd?,b=?,oj=Wkf#`vqqfmwwkf#pjwf#lepvapwbmwjbof{sfqjfm`f/jm#wkf#Tfpwwkfz#pklvogpolufm(ajmb`lnfmwbqjlpvmjufqpjgbg`lmgj`jlmfpb`wjujgbgfpf{sfqjfm`jbwf`mlold/Absqlgv``j/_msvmwvb`j/_mbsoj`b`j/_m`lmwqbpf/]b`bwfdlq/Abpqfdjpwqbqpfsqlefpjlmbowqbwbnjfmwlqfd/Apwqbwfpf`qfwbq/Absqjm`jsbofpsqlwf``j/_mjnslqwbmwfpjnslqwbm`jbslpjajojgbgjmwfqfpbmwf`qf`jnjfmwlmf`fpjgbgfppvp`qjajqpfbpl`jb`j/_mgjpslmjaofpfubovb`j/_mfpwvgjbmwfpqfpslmpbaofqfplov`j/_mdvbgbobibqbqfdjpwqbglplslqwvmjgbg`lnfq`jbofpelwldqbe/Abbvwlqjgbgfpjmdfmjfq/Abwfofujpj/_m`lnsfwfm`jblsfqb`jlmfpfpwbaof`jglpjnsofnfmwfb`wvbonfmwfmbufdb`j/_m`lmelqnjgbgojmf.kfjdkw9elmw.ebnjoz9!#9#!kwws9,,bssoj`bwjlmpojmh!#kqfe>!psf`jej`booz,,?\"X@GBWBX\tLqdbmjybwjlmgjpwqjavwjlm3s{8#kfjdkw9qfobwjlmpkjsgfuj`f.tjgwk?gju#`obpp>!?obafo#elq>!qfdjpwqbwjlm?,mlp`qjsw=\t,jmgf{-kwno!tjmglt-lsfm+#\"jnslqwbmw8bssoj`bwjlm,jmgfsfmgfm`f,,ttt-dlldoflqdbmjybwjlmbvwl`lnsofwfqfrvjqfnfmwp`lmpfqubwjuf?elqn#mbnf>!jmwfoof`wvbonbqdjm.ofew92;wk#`fmwvqzbm#jnslqwbmwjmpwjwvwjlmpbaaqfujbwjlm?jnd#`obpp>!lqdbmjpbwjlm`jujojybwjlm2:wk#`fmwvqzbq`kjwf`wvqfjm`lqslqbwfg13wk#`fmwvqz.`lmwbjmfq!=nlpw#mlwbaoz,=?,b=?,gju=mlwjej`bwjlm$vmgfejmfg$*Evqwkfqnlqf/afojfuf#wkbwjmmfqKWNO#>#sqjlq#wl#wkfgqbnbwj`boozqfefqqjmd#wlmfdlwjbwjlmpkfbgrvbqwfqpPlvwk#Beqj`bvmpv``fppevoSfmmpzoubmjbBp#b#qfpvow/?kwno#obmd>!%ow8,pvs%dw8gfbojmd#tjwkskjobgfoskjbkjpwlqj`booz*8?,p`qjsw=\tsbggjmd.wls9f{sfqjnfmwbodfwBwwqjavwfjmpwqv`wjlmpwf`kmloldjfpsbqw#le#wkf#>evm`wjlm+*xpvap`qjswjlmo-gwg!=\x0E\t?kwdfldqbskj`bo@lmpwjwvwjlm$/#evm`wjlm+pvsslqwfg#azbdqj`vowvqbo`lmpwqv`wjlmsvaoj`bwjlmpelmw.pjyf9#2b#ubqjfwz#le?gju#pwzof>!Fm`z`olsfgjbjeqbnf#pq`>!gfnlmpwqbwfgb``lnsojpkfgvmjufqpjwjfpGfnldqbskj`p*8?,p`qjsw=?gfgj`bwfg#wlhmltofgdf#lepbwjpeb`wjlmsbqwj`vobqoz?,gju=?,gju=Fmdojpk#+VP*bssfmg@kjog+wqbmpnjppjlmp-#Kltfufq/#jmwfoojdfm`f!#wbajmgf{>!eolbw9qjdkw8@lnnlmtfbowkqbmdjmd#eqlnjm#tkj`k#wkfbw#ofbpw#lmfqfsqlgv`wjlmfm`z`olsfgjb8elmw.pjyf92ivqjpgj`wjlmbw#wkbw#wjnf!=?b#`obpp>!Jm#bggjwjlm/gfp`qjswjlm(`lmufqpbwjlm`lmwb`w#tjwkjp#dfmfqboozq!#`lmwfmw>!qfsqfpfmwjmd%ow8nbwk%dw8sqfpfmwbwjlml``bpjlmbooz?jnd#tjgwk>!mbujdbwjlm!=`lnsfmpbwjlm`kbnsjlmpkjsnfgjb>!boo!#ujlobwjlm#leqfefqfm`f#wlqfwvqm#wqvf8Pwqj`w,,FM!#wqbmpb`wjlmpjmwfqufmwjlmufqjej`bwjlmJmelqnbwjlm#gjeej`vowjfp@kbnsjlmpkjs`bsbajojwjfp?\"Xfmgje^..=~\t?,p`qjsw=\t@kqjpwjbmjwzelq#f{bnsof/Sqlefppjlmboqfpwqj`wjlmppvddfpw#wkbwtbp#qfofbpfg+pv`k#bp#wkfqfnluf@obpp+vmfnsolznfmwwkf#Bnfqj`bmpwqv`wvqf#le,jmgf{-kwno#svaojpkfg#jmpsbm#`obpp>!!=?b#kqfe>!,jmwqlgv`wjlmafolmdjmd#wl`objnfg#wkbw`lmpfrvfm`fp?nfwb#mbnf>!Dvjgf#wl#wkflufqtkfonjmdbdbjmpw#wkf#`lm`fmwqbwfg/\t-mlmwlv`k#lapfqubwjlmp?,b=\t?,gju=\te#+gl`vnfmw-alqgfq9#2s{#xelmw.pjyf92wqfbwnfmw#le3!#kfjdkw>!2nlgjej`bwjlmJmgfsfmgfm`fgjujgfg#jmwldqfbwfq#wkbmb`kjfufnfmwpfpwbaojpkjmdIbubP`qjsw!#mfufqwkfofpppjdmjej`bm`fAqlbg`bpwjmd=%maps8?,wg=`lmwbjmfq!=\tpv`k#bp#wkf#jmeovfm`f#leb#sbqwj`vobqpq`>$kwws9,,mbujdbwjlm!#kboe#le#wkf#pvapwbmwjbo#%maps8?,gju=bgubmwbdf#legjp`lufqz#leevmgbnfmwbo#nfwqlslojwbmwkf#lsslpjwf!#{no9obmd>!gfojafqbwfozbojdm>`fmwfqfulovwjlm#lesqfpfqubwjlmjnsqlufnfmwpafdjmmjmd#jmIfpvp#@kqjpwSvaoj`bwjlmpgjpbdqffnfmwwf{w.bojdm9q/#evm`wjlm+*pjnjobqjwjfpalgz=?,kwno=jp#`vqqfmwozboskbafwj`bojp#plnfwjnfpwzsf>!jnbdf,nbmz#le#wkf#eolt9kjggfm8bubjobaof#jmgfp`qjaf#wkff{jpwfm`f#leboo#lufq#wkfwkf#Jmwfqmfw\n?vo#`obpp>!jmpwboobwjlmmfjdkalqkllgbqnfg#elq`fpqfgv`jmd#wkf`lmwjmvfp#wlMlmfwkfofpp/wfnsfqbwvqfp\t\n\n?b#kqfe>!`olpf#wl#wkff{bnsofp#le#jp#balvw#wkf+pff#afolt*-!#jg>!pfbq`ksqlefppjlmbojp#bubjobaofwkf#leej`jbo\n\n?,p`qjsw=\t\t\n\n?gju#jg>!b``fofqbwjlmwkqlvdk#wkf#Kboo#le#Ebnfgfp`qjswjlmpwqbmpobwjlmpjmwfqefqfm`f#wzsf>$wf{w,qf`fmw#zfbqpjm#wkf#tlqogufqz#slsvobqxab`hdqlvmg9wqbgjwjlmbo#plnf#le#wkf#`lmmf`wfg#wlf{soljwbwjlmfnfqdfm`f#le`lmpwjwvwjlmB#Kjpwlqz#lepjdmjej`bmw#nbmveb`wvqfgf{sf`wbwjlmp=?mlp`qjsw=?`bm#af#elvmgaf`bvpf#wkf#kbp#mlw#affmmfjdkalvqjmdtjwklvw#wkf#bggfg#wl#wkf\n?oj#`obpp>!jmpwqvnfmwboPlujfw#Vmjlmb`hmltofgdfgtkj`k#`bm#afmbnf#elq#wkfbwwfmwjlm#wlbwwfnswp#wl#gfufolsnfmwpJm#eb`w/#wkf?oj#`obpp>!bjnsoj`bwjlmppvjwbaof#elqnv`k#le#wkf#`lolmjybwjlmsqfpjgfmwjbo`bm`foAvaaof#Jmelqnbwjlmnlpw#le#wkf#jp#gfp`qjafgqfpw#le#wkf#nlqf#lq#ofppjm#PfswfnafqJmwfoojdfm`fpq`>!kwws9,,s{8#kfjdkw9#bubjobaof#wlnbmveb`wvqfqkvnbm#qjdkwpojmh#kqfe>!,bubjobajojwzsqlslqwjlmbolvwpjgf#wkf#bpwqlmlnj`bokvnbm#afjmdpmbnf#le#wkf#bqf#elvmg#jmbqf#abpfg#lmpnboofq#wkbmb#sfqplm#tklf{sbmpjlm#lebqdvjmd#wkbwmlt#hmltm#bpJm#wkf#fbqozjmwfqnfgjbwfgfqjufg#eqlnP`bmgjmbujbm?,b=?,gju=\x0E\t`lmpjgfq#wkfbm#fpwjnbwfgwkf#Mbwjlmbo?gju#jg>!sbdqfpvowjmd#jm`lnnjppjlmfgbmboldlvp#wlbqf#qfrvjqfg,vo=\t?,gju=\ttbp#abpfg#lmbmg#af`bnf#b%maps8%maps8w!#ubovf>!!#tbp#`bswvqfgml#nlqf#wkbmqfpsf`wjufoz`lmwjmvf#wl#=\x0E\t?kfbg=\x0E\t?tfqf#`qfbwfgnlqf#dfmfqbojmelqnbwjlm#vpfg#elq#wkfjmgfsfmgfmw#wkf#Jnsfqjbo`lnslmfmw#lewl#wkf#mlqwkjm`ovgf#wkf#@lmpwqv`wjlmpjgf#le#wkf#tlvog#mlw#afelq#jmpwbm`fjmufmwjlm#lenlqf#`lnsof{`loof`wjufozab`hdqlvmg9#wf{w.bojdm9#jwp#lqjdjmbojmwl#b``lvmwwkjp#sql`fppbm#f{wfmpjufkltfufq/#wkfwkfz#bqf#mlwqfif`wfg#wkf`qjwj`jpn#legvqjmd#tkj`ksqlabaoz#wkfwkjp#bqwj`of+evm`wjlm+*xJw#pklvog#afbm#bdqffnfmwb``jgfmwboozgjeefqp#eqlnBq`kjwf`wvqfafwwfq#hmltmbqqbmdfnfmwpjmeovfm`f#lmbwwfmgfg#wkfjgfmwj`bo#wlplvwk#le#wkfsbpp#wkqlvdk{no!#wjwof>!tfjdkw9alog8`qfbwjmd#wkfgjpsobz9mlmfqfsob`fg#wkf?jnd#pq`>!,jkwwsp9,,ttt-Tlqog#Tbq#JJwfpwjnlmjbopelvmg#jm#wkfqfrvjqfg#wl#bmg#wkbw#wkfafwtffm#wkf#tbp#gfpjdmfg`lmpjpwp#le#`lmpjgfqbaozsvaojpkfg#azwkf#obmdvbdf@lmpfqubwjlm`lmpjpwfg#leqfefq#wl#wkfab`h#wl#wkf#`pp!#nfgjb>!Sflsof#eqln#bubjobaof#lmsqlufg#wl#afpvddfpwjlmp!tbp#hmltm#bpubqjfwjfp#leojhfoz#wl#af`lnsqjpfg#lepvsslqw#wkf#kbmgp#le#wkf`lvsofg#tjwk`lmmf`w#bmg#alqgfq9mlmf8sfqelqnbm`fpafelqf#afjmdobwfq#af`bnf`bo`vobwjlmplewfm#`boofgqfpjgfmwp#lenfbmjmd#wkbw=?oj#`obpp>!fujgfm`f#elqf{sobmbwjlmpfmujqlmnfmwp!=?,b=?,gju=tkj`k#booltpJmwqlgv`wjlmgfufolsfg#azb#tjgf#qbmdflm#afkboe#leubojdm>!wls!sqjm`jsof#lebw#wkf#wjnf/?,mlp`qjsw=\x0Epbjg#wl#kbufjm#wkf#ejqpwtkjof#lwkfqpkzslwkfwj`boskjolplskfqpsltfq#le#wkf`lmwbjmfg#jmsfqelqnfg#azjmbajojwz#wltfqf#tqjwwfmpsbm#pwzof>!jmsvw#mbnf>!wkf#rvfpwjlmjmwfmgfg#elqqfif`wjlm#lejnsojfp#wkbwjmufmwfg#wkfwkf#pwbmgbqgtbp#sqlabaozojmh#afwtffmsqlefpplq#lejmwfqb`wjlmp`kbmdjmd#wkfJmgjbm#L`fbm#`obpp>!obpwtlqhjmd#tjwk$kwws9,,ttt-zfbqp#afelqfWkjp#tbp#wkfqf`qfbwjlmbofmwfqjmd#wkfnfbpvqfnfmwpbm#f{wqfnfozubovf#le#wkfpwbqw#le#wkf\t?,p`qjsw=\t\tbm#feelqw#wljm`qfbpf#wkfwl#wkf#plvwkpsb`jmd>!3!=pveej`jfmwozwkf#Fvqlsfbm`lmufqwfg#wl`ofbqWjnflvwgjg#mlw#kbuf`lmpfrvfmwozelq#wkf#mf{wf{wfmpjlm#lef`lmlnj`#bmgbowklvdk#wkfbqf#sqlgv`fgbmg#tjwk#wkfjmpveej`jfmwdjufm#az#wkfpwbwjmd#wkbwf{sfmgjwvqfp?,psbm=?,b=\twklvdkw#wkbwlm#wkf#abpjp`foosbggjmd>jnbdf#le#wkfqfwvqmjmd#wljmelqnbwjlm/pfsbqbwfg#azbppbppjmbwfgp!#`lmwfmw>!bvwklqjwz#lemlqwktfpwfqm?,gju=\t?gju#!=?,gju=\x0E\t##`lmpvowbwjlm`lnnvmjwz#lewkf#mbwjlmbojw#pklvog#afsbqwj`jsbmwp#bojdm>!ofewwkf#dqfbwfpwpfof`wjlm#lepvsfqmbwvqbogfsfmgfmw#lmjp#nfmwjlmfgbooltjmd#wkftbp#jmufmwfgb``lnsbmzjmdkjp#sfqplmbobubjobaof#bwpwvgz#le#wkflm#wkf#lwkfqf{f`vwjlm#leKvnbm#Qjdkwpwfqnp#le#wkfbppl`jbwjlmpqfpfbq`k#bmgpv``ffgfg#azgfefbwfg#wkfbmg#eqln#wkfavw#wkfz#bqf`lnnbmgfq#lepwbwf#le#wkfzfbqp#le#bdfwkf#pwvgz#le?vo#`obpp>!psob`f#jm#wkftkfqf#kf#tbp?oj#`obpp>!ewkfqf#bqf#mltkj`k#af`bnfkf#svaojpkfgf{sqfppfg#jmwl#tkj`k#wkf`lnnjppjlmfqelmw.tfjdkw9wfqqjwlqz#lef{wfmpjlmp!=Qlnbm#Fnsjqffrvbo#wl#wkfJm#`lmwqbpw/kltfufq/#bmgjp#wzsj`boozbmg#kjp#tjef+bopl#`boofg=?vo#`obpp>!feef`wjufoz#fuloufg#jmwlpffn#wl#kbuftkj`k#jp#wkfwkfqf#tbp#mlbm#f{`foofmwboo#le#wkfpfgfp`qjafg#azJm#sqb`wj`f/aqlbg`bpwjmd`kbqdfg#tjwkqfeof`wfg#jmpvaif`wfg#wlnjojwbqz#bmgwl#wkf#sljmwf`lmlnj`boozpfwWbqdfwjmdbqf#b`wvboozuj`wlqz#lufq+*8?,p`qjsw=`lmwjmvlvpozqfrvjqfg#elqfulovwjlmbqzbm#feef`wjufmlqwk#le#wkf/#tkj`k#tbp#eqlmw#le#wkflq#lwkfqtjpfplnf#elqn#lekbg#mlw#affmdfmfqbwfg#azjmelqnbwjlm-sfqnjwwfg#wljm`ovgfp#wkfgfufolsnfmw/fmwfqfg#jmwlwkf#sqfujlvp`lmpjpwfmwozbqf#hmltm#bpwkf#ejfog#lewkjp#wzsf#ledjufm#wl#wkfwkf#wjwof#le`lmwbjmp#wkfjmpwbm`fp#lejm#wkf#mlqwkgvf#wl#wkfjqbqf#gfpjdmfg`lqslqbwjlmptbp#wkbw#wkflmf#le#wkfpfnlqf#slsvobqpv``ffgfg#jmpvsslqw#eqlnjm#gjeefqfmwglnjmbwfg#azgfpjdmfg#elqltmfqpkjs#lebmg#slppjaozpwbmgbqgjyfgqfpslmpfWf{wtbp#jmwfmgfgqf`fjufg#wkfbppvnfg#wkbwbqfbp#le#wkfsqjnbqjoz#jmwkf#abpjp#lejm#wkf#pfmpfb``lvmwp#elqgfpwqlzfg#azbw#ofbpw#wtltbp#gf`obqfg`lvog#mlw#afPf`qfwbqz#lebssfbq#wl#afnbqdjm.wls92,]_p(\u007F_p(',df*xwkqlt#f~8wkf#pwbqw#lewtl#pfsbqbwfobmdvbdf#bmgtkl#kbg#affmlsfqbwjlm#legfbwk#le#wkfqfbo#mvnafqp\n?ojmh#qfo>!sqlujgfg#wkfwkf#pwlqz#le`lnsfwjwjlmpfmdojpk#+VH*fmdojpk#+VP*<p<R<Q<_<R<W<M=l<S=m<V<T=m=l<S=m<V<T=m=l<S=m<V<R5h4U4]4D5f4E\nAO\x05Gx\bTA\nzk\x0BBl\bQ\u007F\bTA\nzk\x0BUm\bQ\u007F\bTA\nzk\npe\x05u|\ti@\tcT\bVV\n\\}\nxS\tVp\x05tS\x05k`\t[X\t[X\x0BHR\bPv\bTW\bUe\n\u007Fa\bQp\x0B_W\x0BWs\nxS\x0BAz\n_y\x04Khjmelqnb`j/_mkfqqbnjfmwbpfof`wq/_mj`lgfp`qjs`j/_m`obpjej`bglp`lml`jnjfmwlsvaoj`b`j/_mqfob`jlmbgbpjmelqn/Mwj`bqfob`jlmbglpgfsbqwbnfmwlwqbabibglqfpgjqf`wbnfmwfbzvmwbnjfmwlnfq`bglOjaqf`lmw/M`wfmlpkbajwb`jlmfp`vnsojnjfmwlqfpwbvqbmwfpgjpslpj`j/_m`lmpf`vfm`jbfof`wq/_mj`bbsoj`b`jlmfpgfp`lmf`wbgljmpwbob`j/_mqfbojyb`j/_mvwjojyb`j/_mfm`j`olsfgjbfmefqnfgbgfpjmpwqvnfmwlpf{sfqjfm`jbpjmpwjwv`j/_msbqwj`vobqfppva`bwfdlqjb=n<R<W=`<V<R<L<R=m=m<T<T=l<\\<]<R=n=g<]<R<W=`=d<Y<S=l<R=m=n<R<P<R<Z<Y=n<Y<X=l=o<_<T=i=m<W=o=k<\\<Y=m<Y<U=k<\\=m<^=m<Y<_<X<\\<L<R=m=m<T=c<p<R=m<V<^<Y<X=l=o<_<T<Y<_<R=l<R<X<\\<^<R<S=l<R=m<X<\\<Q<Q=g=i<X<R<W<Z<Q=g<T<P<Y<Q<Q<R<p<R=m<V<^=g=l=o<]<W<Y<U<p<R=m<V<^<\\=m=n=l<\\<Q=g<Q<T=k<Y<_<R=l<\\<]<R=n<Y<X<R<W<Z<Y<Q=o=m<W=o<_<T=n<Y<S<Y=l=`<r<X<Q<\\<V<R<S<R=n<R<P=o=l<\\<]<R=n=o<\\<S=l<Y<W=c<^<R<R<]=e<Y<R<X<Q<R<_<R=m<^<R<Y<_<R=m=n<\\=n=`<T<X=l=o<_<R<U=h<R=l=o<P<Y=i<R=l<R=d<R<S=l<R=n<T<^=m=m=g<W<V<\\<V<\\<Z<X=g<U<^<W<\\=m=n<T<_=l=o<S<S=g<^<P<Y=m=n<Y=l<\\<]<R=n<\\=m<V<\\<[<\\<W<S<Y=l<^=g<U<X<Y<W<\\=n=`<X<Y<Q=`<_<T<S<Y=l<T<R<X<]<T<[<Q<Y=m<R=m<Q<R<^<Y<P<R<P<Y<Q=n<V=o<S<T=n=`<X<R<W<Z<Q<\\=l<\\<P<V<\\=i<Q<\\=k<\\<W<R<L<\\<]<R=n<\\<N<R<W=`<V<R=m<R<^=m<Y<P<^=n<R=l<R<U<Q<\\=k<\\<W<\\=m<S<T=m<R<V=m<W=o<Z<]=g=m<T=m=n<Y<P<S<Y=k<\\=n<T<Q<R<^<R<_<R<S<R<P<R=e<T=m<\\<U=n<R<^<S<R=k<Y<P=o<S<R<P<R=e=`<X<R<W<Z<Q<R=m=m=g<W<V<T<]=g=m=n=l<R<X<\\<Q<Q=g<Y<P<Q<R<_<T<Y<S=l<R<Y<V=n<M<Y<U=k<\\=m<P<R<X<Y<W<T=n<\\<V<R<_<R<R<Q<W<\\<U<Q<_<R=l<R<X<Y<^<Y=l=m<T=c=m=n=l<\\<Q<Y=h<T<W=`<P=g=o=l<R<^<Q=c=l<\\<[<Q=g=i<T=m<V<\\=n=`<Q<Y<X<Y<W=b=c<Q<^<\\=l=c<P<Y<Q=`=d<Y<P<Q<R<_<T=i<X<\\<Q<Q<R<U<[<Q<\\=k<T=n<Q<Y<W=`<[=c=h<R=l=o<P<\\<N<Y<S<Y=l=`<P<Y=m=c=j<\\<[<\\=e<T=n=g<w=o=k=d<T<Y\x0CHD\x0CHU\x0CIl\x0CHn\x0CHy\x0CH\\\x0CHD\x0CIk\x0CHi\x0CHF\x0CHD\x0CIk\x0CHy\x0CHS\x0CHC\x0CHR\x0CHy\x0CH\\\x0CIk\x0CHn\x0CHi\x0CHD\x0CIa\x0CHC\x0CHy\x0CIa\x0CHC\x0CHR\x0CH{\x0CHR\x0CHk\x0CHM\x0CH@\x0CHR\x0CH\\\x0CIk\x0CHy\x0CHS\x0CHT\x0CIl\x0CHJ\x0CHS\x0CHC\x0CHR\x0CHF\x0CHU\x0CH^\x0CIk\x0CHT\x0CHS\x0CHn\x0CHU\x0CHA\x0CHR\x0CH\\\x0CHH\x0CHi\x0CHF\x0CHD\x0CIl\x0CHY\x0CHR\x0CH^\x0CIk\x0CHT\x0CIk\x0CHY\x0CHR\x0CHy\x0CH\\\x0CHH\x0CIk\x0CHB\x0CIk\x0CH\\\x0CIk\x0CHU\x0CIg\x0CHD\x0CIk\x0CHT\x0CHy\x0CHH\x0CIk\x0CH@\x0CHU\x0CIm\x0CHH\x0CHT\x0CHR\x0CHk\x0CHs\x0CHU\x0CIg\x0CH{\x0CHR\x0CHp\x0CHR\x0CHD\x0CIk\x0CHB\x0CHS\x0CHD\x0CHs\x0CHy\x0CH\\\x0CHH\x0CHR\x0CHy\x0CH\\\x0CHD\x0CHR\x0CHe\x0CHD\x0CHy\x0CIk\x0CHC\x0CHU\x0CHR\x0CHm\x0CHT\x0CH@\x0CHT\x0CIk\x0CHA\x0CHR\x0CH[\x0CHR\x0CHj\x0CHF\x0CHy\x0CIk\x0CH^\x0CHS\x0CHC\x0CIk\x0CHZ\x0CIm\x0CH\\\x0CIn\x0CHk\x0CHT\x0CHy\x0CIk\x0CHt\x0CHn\x0CHs\x0CIk\x0CHB\x0CIk\x0CH\\\x0CIl\x0CHT\x0CHy\x0CHH\x0CHR\x0CHB\x0CIk\x0CH\\\x0CHR\x0CH^\x0CIk\x0CHy\x0CH\\\x0CHi\x0CHK\x0CHS\x0CHy\x0CHi\x0CHF\x0CHD\x0CHR\x0CHT\x0CHB\x0CHR\x0CHp\x0CHB\x0CIm\x0CHq\x0CIk\x0CHy\x0CHR\x0CH\\\x0CHO\x0CHU\x0CIg\x0CHH\x0CHR\x0CHy\x0CHM\x0CHP\x0CIl\x0CHC\x0CHU\x0CHR\x0CHn\x0CHU\x0CIg\x0CHs\x0CH^\x0CHZ\x0CH@\x0CIa\x0CHJ\x0CH^\x0CHS\x0CHC\x0CHR\x0CHp\x0CIl\x0CHY\x0CHD\x0CHp\x0CHR\x0CHH\x0CHR\x0CHy\x0CId\x0CHT\x0CIk\x0CHj\x0CHF\x0CHy\x0CHR\x0CHY\x0CHR\x0CH^\x0CIl\x0CHJ\x0CIk\x0CHD\x0CIk\x0CHF\x0CIn\x0CH\\\x0CIl\x0CHF\x0CHR\x0CHD\x0CIl\x0CHe\x0CHT\x0CHy\x0CIk\x0CHU\x0CIg\x0CH{\x0CIl\x0CH@\x0CId\x0CHL\x0CHy\x0CHj\x0CHF\x0CHy\x0CIl\x0CHY\x0CH\\\x0CIa\x0CH[\x0CH{\x0CHR\x0CHn\x0CHY\x0CHj\x0CHF\x0CHy\x0CIg\x0CHp\x0CHS\x0CH^\x0CHR\x0CHp\x0CHR\x0CHD\x0CHR\x0CHT\x0CHU\x0CHB\x0CHH\x0CHU\x0CHB\x0CIk\x0CHn\x0CHe\x0CHD\x0CHy\x0CIl\x0CHC\x0CHR\x0CHU\x0CIn\x0CHJ\x0CH\\\x0CIa\x0CHp\x0CHT\x0CIn\x0CHv\x0CIl\x0CHF\x0CHT\x0CHn\x0CHJ\x0CHT\x0CHY\x0CHR\x0CH^\x0CHU\x0CIg\x0CHD\x0CHR\x0CHU\x0CIg\x0CHH\x0CIl\x0CHp\x0CId\x0CHT\x0CIk\x0CHY\x0CHR\x0CHF\x0CHT\x0CHp\x0CHD\x0CHH\x0CHR\x0CHD\x0CIk\x0CHH\x0CHR\x0CHp\x0CHR\x0CH\\\x0CIl\x0CHt\x0CHR\x0CHC\x0CH^\x0CHp\x0CHS\x0CH^\x0CIk\x0CHD\x0CIl\x0CHv\x0CIk\x0CHp\x0CHR\x0CHn\x0CHv\x0CHF\x0CHH\x0CIa\x0CH\\\x0CH{\x0CIn\x0CH{\x0CH^\x0CHp\x0CHR\x0CHH\x0CIk\x0CH@\x0CHR\x0CHU\x0CH\\\x0CHj\x0CHF\x0CHD\x0CIk\x0CHY\x0CHR\x0CHU\x0CHD\x0CHk\x0CHT\x0CHy\x0CHR\x0CHT\x0CIm\x0CH@\x0CHU\x0CH\\\x0CHU\x0CHD\x0CIk\x0CHk\x0CHT\x0CHT\x0CIk\x0CHT\x0CHU\x0CHS\x0CHH\x0CH@\x0CHM\x0CHP\x0CIk\x0CHt\x0CHs\x0CHD\x0CHR\x0CHH\x0CH^\x0CHR\x0CHZ\x0CHF\x0CHR\x0CHn\x0CHv\x0CHZ\x0CIa\x0CH\\\x0CIl\x0CH@\x0CHM\x0CHP\x0CIl\x0CHU\x0CIg\x0CHH\x0CIk\x0CHT\x0CHR\x0CHd\x0CHs\x0CHZ\x0CHR\x0CHC\x0CHJ\x0CHT\x0CHy\x0CHH\x0CIl\x0CHp\x0CHR\x0CHH\x0CIl\x0CHY\x0CHR\x0CH^\x0CHR\x0CHU\x0CHp\x0CHR\x0CH\\\x0CHF\x0CHs\x0CHD\x0CHR\x0CH\\\x0CHz\x0CHD\x0CIk\x0CHT\x0CHM\x0CHP\x0CHy\x0CHB\x0CHS\x0CH^\x0CHR\x0CHe\x0CHT\x0CHy\x0CIl\x0CHy\x0CIk\x0CHY\x0CH^\x0CH^\x0CH{\x0CHH\x0CHR\x0CHz\x0CHR\x0CHD\x0CHR\x0CHi\x0CH\\\x0CIa\x0CHI\x0CHp\x0CHU\x0CHR\x0CHn\x0CHJ\x0CIk\x0CHz\x0CHR\x0CHF\x0CHU\x0CH^\x0CIl\x0CHD\x0CHS\x0CHC\x0CHB\x0CH@\x0CHS\x0CHD\x0CHR\x0CH@\x0CId\x0CHn\x0CHy\x0CHy\x0CHU\x0CIl\x0CHn\x0CHy\x0CHU\x0CHD\x0CHR\x0CHJ\x0CIk\x0CHH\x0CHR\x0CHU\x0CHB\x0CH^\x0CIk\x0CHy\x0CHR\x0CHG\x0CIl\x0CHp\x0CH@\x0CHy\x0CHS\x0CHH\x0CIm\x0CH\\\x0CHH\x0CHB\x0CHR\x0CHn\x0CH{\x0CHY\x0CHU\x0CIl\x0CHn\x0CH\\\x0CIg\x0CHp\x0CHP\x0CHB\x0CHS\x0CH^\x0CIl\x0CHj\x0CH\\\x0CIg\x0CHF\x0CHT\x0CIk\x0CHD\x0CHR\x0CHC\x0CHR\x0CHJ\x0CHY\x0CH^\x0CIk\x0CHD\x0CIk\x0CHz\x0CHR\x0CHH\x0CHR\x0CHy\x0CH\\\x0CIl\x0CH@\x0CHe\x0CHD\x0CHy\x0CHR\x0CHp\x0CHY\x0CHR\x0CH@\x0CHF\x0CIn\x0CH\\\x0CHR\x0CH@\x0CHM\x0CHP\x0CHR\x0CHT\x0CI`\x0CHJ\x0CHR\x0CHZ\x0CIk\x0CHC\x0CH\\\x0CHy\x0CHS\x0CHC\x0CIk\x0CHy\x0CHU\x0CHR\x0CHn\x0CHi\x0CHy\x0CHT\x0CH\\\x0CH@\x0CHD\x0CHR\x0CHc\x0CHY\x0CHU\x0CHR\x0CHn\x0CHT\x0CIa\x0CHI\x0CH^\x0CHB\x0CHS\x0CH^\x0CIk\x0CH^\x0CIk\x0CHz\x0CHy\x0CHY\x0CHS\x0CH[\x0CHC\x0CHy\x0CIa\x0CH\\\x0CHn\x0CHT\x0CHB\x0CIn\x0CHU\x0CHI\x0CHR\x0CHD\x0CHR4F4_4F4[5f4U5i4X4K4]5o4E4D5d4K4_4[4E4K5h4Y5m4A4E5i5d4K4Z5f4U4K5h4B4K4Y4E4K5h5i4^5f4C4K5h4U4K5i4E4K5h5o4K4F4D4K5h4]4C5d4C4D4]5j4K5i4@4K5h4C5d5h4E4K5h4U4K5h5i4K5h5i5d5n4U4K5h4U4]4D5f4K5h4_4]5f4U4K5h4@5d4K5h4K5h4\\5k4K4D4K5h4A5f4K4E4K5h4A5n5d5n4K5h5o4]5f5i4K5h4U4]4K5n5i4A5m5d4T4E4K5h4G4K5j5f5i4X4K5k4C4E4K5h5i4]4O4E4K5h5n4]4N5j4K5h4X4D4K4D4K5h4A5d4K4]4K5h4@4C5f4C4K5h4O4_4]4E4K5h4U5h5d5i5i4@5i5d4U4E4K5h4]4A5i5j4K5h5j5n4K4[5m5h4_4[5f5j4K5h5o5d5f4F4K5h4C5j5f4K4D4]5o4K4F5k4K5h4]5f4K4Z4F4A5f4K4F5f4D4F5d5n5f4F4K5h4O5d5h5e4K5h4D4]5f4C4K5h5o5h4K5i4K5h4]4K4D4[4K5h4X4B4Y5f4_5f4K4]4K4F4K5h4G4K5h4G4K5h4Y5h4K4E4K5h4A4C5f4G4K5h4^5d4K4]4K5h4B5h5f4@4K5h4@5i5f4U4K5h4U4K5i5k4K5h4@5i4K5h4K5h4_4K4U4E5i4X4K5k4C5k4K5h4]4J5f4_4K5h4C4B5d5h4K5h5m5j5f4E4K5h5o4F4K4D4K5h4C5d4]5f4K5h4C4]5d4_4K4_4F4V4]5n4F4Y4K5i5f5i4K5h4D5j4K4F4K5h4U4T5f5ifmwfqwbjmnfmwvmgfqpwbmgjmd#>#evm`wjlm+*-isd!#tjgwk>!`lmejdvqbwjlm-smd!#tjgwk>!?algz#`obpp>!Nbwk-qbmgln+*`lmwfnslqbqz#Vmjwfg#Pwbwfp`jq`vnpwbm`fp-bssfmg@kjog+lqdbmjybwjlmp?psbm#`obpp>!!=?jnd#pq`>!,gjpwjmdvjpkfgwklvpbmgp#le#`lnnvmj`bwjlm`ofbq!=?,gju=jmufpwjdbwjlmebuj`lm-j`l!#nbqdjm.qjdkw9abpfg#lm#wkf#Nbppb`kvpfwwpwbaof#alqgfq>jmwfqmbwjlmbobopl#hmltm#bpsqlmvm`jbwjlmab`hdqlvmg9 esbggjmd.ofew9Elq#f{bnsof/#njp`foobmflvp%ow8,nbwk%dw8spz`kloldj`bojm#sbqwj`vobqfbq`k!#wzsf>!elqn#nfwklg>!bp#lsslpfg#wlPvsqfnf#@lvqwl``bpjlmbooz#Bggjwjlmbooz/Mlqwk#Bnfqj`bs{8ab`hdqlvmglsslqwvmjwjfpFmwfqwbjmnfmw-wlOltfq@bpf+nbmveb`wvqjmdsqlefppjlmbo#`lnajmfg#tjwkElq#jmpwbm`f/`lmpjpwjmd#le!#nb{ofmdwk>!qfwvqm#ebopf8`lmp`jlvpmfppNfgjwfqqbmfbmf{wqblqgjmbqzbppbppjmbwjlmpvapfrvfmwoz#avwwlm#wzsf>!wkf#mvnafq#lewkf#lqjdjmbo#`lnsqfkfmpjufqfefqp#wl#wkf?,vo=\t?,gju=\tskjolplskj`bool`bwjlm-kqfetbp#svaojpkfgPbm#Eqbm`jp`l+evm`wjlm+*x\t?gju#jg>!nbjmplskjpwj`bwfgnbwkfnbwj`bo#,kfbg=\x0E\t?algzpvddfpwp#wkbwgl`vnfmwbwjlm`lm`fmwqbwjlmqfobwjlmpkjspnbz#kbuf#affm+elq#f{bnsof/Wkjp#bqwj`of#jm#plnf#`bpfpsbqwp#le#wkf#gfejmjwjlm#leDqfbw#Aqjwbjm#`foosbggjmd>frvjubofmw#wlsob`fklogfq>!8#elmw.pjyf9#ivpwjej`bwjlmafojfufg#wkbwpveefqfg#eqlnbwwfnswfg#wl#ofbgfq#le#wkf`qjsw!#pq`>!,+evm`wjlm+*#xbqf#bubjobaof\t\n?ojmh#qfo>!#pq`>$kwws9,,jmwfqfpwfg#jm`lmufmwjlmbo#!#bow>!!#,=?,bqf#dfmfqboozkbp#bopl#affmnlpw#slsvobq#`lqqfpslmgjmd`qfgjwfg#tjwkwzof>!alqgfq9?,b=?,psbm=?,-dje!#tjgwk>!?jeqbnf#pq`>!wbaof#`obpp>!jmojmf.aol`h8b``lqgjmd#wl#wldfwkfq#tjwkbssql{jnbwfozsbqojbnfmwbqznlqf#bmg#nlqfgjpsobz9mlmf8wqbgjwjlmboozsqfglnjmbmwoz%maps8\u007F%maps8%maps8?,psbm=#`foopsb`jmd>?jmsvw#mbnf>!lq!#`lmwfmw>!`lmwqlufqpjbosqlsfqwz>!ld9,{.pkl`htbuf.gfnlmpwqbwjlmpvqqlvmgfg#azMfufqwkfofpp/tbp#wkf#ejqpw`lmpjgfqbaof#Bowklvdk#wkf#`loobalqbwjlmpklvog#mlw#afsqlslqwjlm#le?psbm#pwzof>!hmltm#bp#wkf#pklqwoz#bewfqelq#jmpwbm`f/gfp`qjafg#bp#,kfbg=\t?algz#pwbqwjmd#tjwkjm`qfbpjmdoz#wkf#eb`w#wkbwgjp`vppjlm#lenjggof#le#wkfbm#jmgjujgvbogjeej`vow#wl#sljmw#le#ujftklnlpf{vbojwzb``fswbm`f#le?,psbm=?,gju=nbmveb`wvqfqplqjdjm#le#wkf`lnnlmoz#vpfgjnslqwbm`f#legfmlnjmbwjlmpab`hdqlvmg9# ofmdwk#le#wkfgfwfqnjmbwjlmb#pjdmjej`bmw!#alqgfq>!3!=qfulovwjlmbqzsqjm`jsofp#lejp#`lmpjgfqfgtbp#gfufolsfgJmgl.Fvqlsfbmuvomfqbaof#wlsqlslmfmwp#lebqf#plnfwjnfp`olpfq#wl#wkfMft#Zlqh#@jwz#mbnf>!pfbq`kbwwqjavwfg#wl`lvqpf#le#wkfnbwkfnbwj`jbmaz#wkf#fmg#lebw#wkf#fmg#le!#alqgfq>!3!#wf`kmloldj`bo-qfnluf@obpp+aqbm`k#le#wkffujgfm`f#wkbw\"Xfmgje^..=\x0E\tJmpwjwvwf#le#jmwl#b#pjmdofqfpsf`wjufoz-bmg#wkfqfelqfsqlsfqwjfp#lejp#ol`bwfg#jmplnf#le#tkj`kWkfqf#jp#bopl`lmwjmvfg#wl#bssfbqbm`f#le#%bns8mgbpk8#gfp`qjafp#wkf`lmpjgfqbwjlmbvwklq#le#wkfjmgfsfmgfmwozfrvjssfg#tjwkglfp#mlw#kbuf?,b=?b#kqfe>!`lmevpfg#tjwk?ojmh#kqfe>!,bw#wkf#bdf#lebssfbq#jm#wkfWkfpf#jm`ovgfqfdbqgofpp#le`lvog#af#vpfg#pwzof>%rvlw8pfufqbo#wjnfpqfsqfpfmw#wkfalgz=\t?,kwno=wklvdkw#wl#afslsvobwjlm#leslppjajojwjfpsfq`fmwbdf#leb``fpp#wl#wkfbm#bwwfnsw#wlsqlgv`wjlm#leirvfqz,irvfqzwtl#gjeefqfmwafolmd#wl#wkffpwbaojpknfmwqfsob`jmd#wkfgfp`qjswjlm!#gfwfqnjmf#wkfbubjobaof#elqB``lqgjmd#wl#tjgf#qbmdf#le\n?gju#`obpp>!nlqf#`lnnlmozlqdbmjpbwjlmpevm`wjlmbojwztbp#`lnsofwfg#%bns8ngbpk8#sbqwj`jsbwjlmwkf#`kbqb`wfqbm#bggjwjlmbobssfbqp#wl#afeb`w#wkbw#wkfbm#f{bnsof#lepjdmjej`bmwozlmnlvpflufq>!af`bvpf#wkfz#bpzm`#>#wqvf8sqlaofnp#tjwkpffnp#wl#kbufwkf#qfpvow#le#pq`>!kwws9,,ebnjojbq#tjwkslppfppjlm#leevm`wjlm#+*#xwllh#sob`f#jmbmg#plnfwjnfppvapwbmwjbooz?psbm=?,psbm=jp#lewfm#vpfgjm#bm#bwwfnswdqfbw#gfbo#leFmujqlmnfmwbopv``fppevooz#ujqwvbooz#boo13wk#`fmwvqz/sqlefppjlmbopmf`fppbqz#wl#gfwfqnjmfg#az`lnsbwjajojwzaf`bvpf#jw#jpGj`wjlmbqz#lenlgjej`bwjlmpWkf#elooltjmdnbz#qfefq#wl9@lmpfrvfmwoz/Jmwfqmbwjlmbobowklvdk#plnfwkbw#tlvog#aftlqog$p#ejqpw`obppjejfg#bpalwwln#le#wkf+sbqwj`vobqozbojdm>!ofew!#nlpw#`lnnlmozabpjp#elq#wkfelvmgbwjlm#le`lmwqjavwjlmpslsvobqjwz#le`fmwfq#le#wkfwl#qfgv`f#wkfivqjpgj`wjlmpbssql{jnbwjlm#lmnlvpflvw>!Mft#Wfpwbnfmw`loof`wjlm#le?,psbm=?,b=?,jm#wkf#Vmjwfgejon#gjqf`wlq.pwqj`w-gwg!=kbp#affm#vpfgqfwvqm#wl#wkfbowklvdk#wkjp`kbmdf#jm#wkfpfufqbo#lwkfqavw#wkfqf#bqfvmsqf`fgfmwfgjp#pjnjobq#wlfpsf`jbooz#jmtfjdkw9#alog8jp#`boofg#wkf`lnsvwbwjlmbojmgj`bwf#wkbwqfpwqj`wfg#wl\n?nfwb#mbnf>!bqf#wzsj`booz`lmeoj`w#tjwkKltfufq/#wkf#Bm#f{bnsof#le`lnsbqfg#tjwkrvbmwjwjfp#leqbwkfq#wkbm#b`lmpwfoobwjlmmf`fppbqz#elqqfslqwfg#wkbwpsf`jej`bwjlmslojwj`bo#bmg%maps8%maps8?qfefqfm`fp#wlwkf#pbnf#zfbqDlufqmnfmw#ledfmfqbwjlm#lekbuf#mlw#affmpfufqbo#zfbqp`lnnjwnfmw#wl\n\n?vo#`obpp>!ujpvbojybwjlm2:wk#`fmwvqz/sqb`wjwjlmfqpwkbw#kf#tlvogbmg#`lmwjmvfgl``vsbwjlm#lejp#gfejmfg#bp`fmwqf#le#wkfwkf#bnlvmw#le=?gju#pwzof>!frvjubofmw#legjeefqfmwjbwfaqlvdkw#balvwnbqdjm.ofew9#bvwlnbwj`boozwklvdkw#le#bpPlnf#le#wkfpf\t?gju#`obpp>!jmsvw#`obpp>!qfsob`fg#tjwkjp#lmf#le#wkffgv`bwjlm#bmgjmeovfm`fg#azqfsvwbwjlm#bp\t?nfwb#mbnf>!b``lnnlgbwjlm?,gju=\t?,gju=obqdf#sbqw#leJmpwjwvwf#elqwkf#pl.`boofg#bdbjmpw#wkf#Jm#wkjp#`bpf/tbp#bssljmwfg`objnfg#wl#afKltfufq/#wkjpGfsbqwnfmw#lewkf#qfnbjmjmdfeef`w#lm#wkfsbqwj`vobqoz#gfbo#tjwk#wkf\t?gju#pwzof>!bonlpw#botbzpbqf#`vqqfmwozf{sqfppjlm#leskjolplskz#leelq#nlqf#wkbm`jujojybwjlmplm#wkf#jpobmgpfof`wfgJmgf{`bm#qfpvow#jm!#ubovf>!!#,=wkf#pwqv`wvqf#,=?,b=?,gju=Nbmz#le#wkfpf`bvpfg#az#wkfle#wkf#Vmjwfgpsbm#`obpp>!n`bm#af#wqb`fgjp#qfobwfg#wlaf`bnf#lmf#lejp#eqfrvfmwozojujmd#jm#wkfwkflqfwj`boozElooltjmd#wkfQfulovwjlmbqzdlufqmnfmw#jmjp#gfwfqnjmfgwkf#slojwj`bojmwqlgv`fg#jmpveej`jfmw#wlgfp`qjswjlm!=pklqw#pwlqjfppfsbqbwjlm#lebp#wl#tkfwkfqhmltm#elq#jwptbp#jmjwjboozgjpsobz9aol`hjp#bm#f{bnsofwkf#sqjm`jsbo`lmpjpwp#le#bqf`ldmjyfg#bp,algz=?,kwno=b#pvapwbmwjboqf`lmpwqv`wfgkfbg#le#pwbwfqfpjpwbm`f#wlvmgfqdqbgvbwfWkfqf#bqf#wtldqbujwbwjlmbobqf#gfp`qjafgjmwfmwjlmboozpfqufg#bp#wkf`obpp>!kfbgfqlsslpjwjlm#wlevmgbnfmwboozglnjmbwfg#wkfbmg#wkf#lwkfqboojbm`f#tjwktbp#elq`fg#wlqfpsf`wjufoz/bmg#slojwj`bojm#pvsslqw#lesflsof#jm#wkf13wk#`fmwvqz-bmg#svaojpkfgolbg@kbqwafbwwl#vmgfqpwbmgnfnafq#pwbwfpfmujqlmnfmwboejqpw#kboe#le`lvmwqjfp#bmgbq`kjwf`wvqboaf#`lmpjgfqfg`kbqb`wfqjyfg`ofbqJmwfqubobvwklqjwbwjufEfgfqbwjlm#letbp#pv``ffgfgbmg#wkfqf#bqfb#`lmpfrvfm`fwkf#Sqfpjgfmwbopl#jm`ovgfgeqff#plewtbqfpv``fppjlm#legfufolsfg#wkftbp#gfpwqlzfgbtbz#eqln#wkf8\t?,p`qjsw=\t?bowklvdk#wkfzelooltfg#az#bnlqf#sltfqevoqfpvowfg#jm#bVmjufqpjwz#leKltfufq/#nbmzwkf#sqfpjgfmwKltfufq/#plnfjp#wklvdkw#wlvmwjo#wkf#fmgtbp#bmmlvm`fgbqf#jnslqwbmwbopl#jm`ovgfp=?jmsvw#wzsf>wkf#`fmwfq#le#GL#MLW#BOWFQvpfg#wl#qfefqwkfnfp,<plqw>wkbw#kbg#affmwkf#abpjp#elqkbp#gfufolsfgjm#wkf#pvnnfq`lnsbqbwjufozgfp`qjafg#wkfpv`k#bp#wklpfwkf#qfpvowjmdjp#jnslppjaofubqjlvp#lwkfqPlvwk#Beqj`bmkbuf#wkf#pbnffeef`wjufmfppjm#tkj`k#`bpf8#wf{w.bojdm9pwqv`wvqf#bmg8#ab`hdqlvmg9qfdbqgjmd#wkfpvsslqwfg#wkfjp#bopl#hmltmpwzof>!nbqdjmjm`ovgjmd#wkfabkbpb#Nfobzvmlqph#alhn/Iomlqph#mzmlqphpolufm)M(ajmbjmwfqmb`jlmbo`bojej`b`j/_m`lnvmj`b`j/_m`lmpwqv``j/_m!=?gju#`obpp>!gjpbnajdvbwjlmGlnbjmMbnf$/#$bgnjmjpwqbwjlmpjnvowbmflvpozwqbmpslqwbwjlmJmwfqmbwjlmbo#nbqdjm.alwwln9qfpslmpjajojwz?\"Xfmgje^..=\t?,=?nfwb#mbnf>!jnsofnfmwbwjlmjmeqbpwqv`wvqfqfsqfpfmwbwjlmalqgfq.alwwln9?,kfbg=\t?algz=>kwws&0B&1E&1E?elqn#nfwklg>!nfwklg>!slpw!#,ebuj`lm-j`l!#~*8\t?,p`qjsw=\t-pfwBwwqjavwf+Bgnjmjpwqbwjlm>#mft#Bqqbz+*8?\"Xfmgje^..=\x0E\tgjpsobz9aol`h8Vmelqwvmbwfoz/!=%maps8?,gju=,ebuj`lm-j`l!=>$pwzofpkffw$#jgfmwjej`bwjlm/#elq#f{bnsof/?oj=?b#kqfe>!,bm#bowfqmbwjufbp#b#qfpvow#lesw!=?,p`qjsw=\twzsf>!pvanjw!#\t+evm`wjlm+*#xqf`lnnfmgbwjlmelqn#b`wjlm>!,wqbmpelqnbwjlmqf`lmpwqv`wjlm-pwzof-gjpsobz#B``lqgjmd#wl#kjggfm!#mbnf>!bolmd#tjwk#wkfgl`vnfmw-algz-bssql{jnbwfoz#@lnnvmj`bwjlmpslpw!#b`wjlm>!nfbmjmd#%rvlw8..?\"Xfmgje^..=Sqjnf#Njmjpwfq`kbqb`wfqjpwj`?,b=#?b#`obpp>wkf#kjpwlqz#le#lmnlvpflufq>!wkf#dlufqmnfmwkqfe>!kwwsp9,,tbp#lqjdjmbooztbp#jmwqlgv`fg`obppjej`bwjlmqfsqfpfmwbwjufbqf#`lmpjgfqfg?\"Xfmgje^..=\t\tgfsfmgp#lm#wkfVmjufqpjwz#le#jm#`lmwqbpw#wl#sob`fklogfq>!jm#wkf#`bpf#lejmwfqmbwjlmbo#`lmpwjwvwjlmbopwzof>!alqgfq.9#evm`wjlm+*#xAf`bvpf#le#wkf.pwqj`w-gwg!=\t?wbaof#`obpp>!b``lnsbmjfg#azb``lvmw#le#wkf?p`qjsw#pq`>!,mbwvqf#le#wkf#wkf#sflsof#jm#jm#bggjwjlm#wlp*8#ip-jg#>#jg!#tjgwk>!233&!qfdbqgjmd#wkf#Qlnbm#@bwkloj`bm#jmgfsfmgfmwelooltjmd#wkf#-dje!#tjgwk>!2wkf#elooltjmd#gjp`qjnjmbwjlmbq`kbfloldj`bosqjnf#njmjpwfq-ip!=?,p`qjsw=`lnajmbwjlm#le#nbqdjmtjgwk>!`qfbwfFofnfmw+t-bwwb`kFufmw+?,b=?,wg=?,wq=pq`>!kwwsp9,,bJm#sbqwj`vobq/#bojdm>!ofew!#@yf`k#Qfsvaoj`Vmjwfg#Hjmdgln`lqqfpslmgfm`f`lm`ovgfg#wkbw-kwno!#wjwof>!+evm`wjlm#+*#x`lnfp#eqln#wkfbssoj`bwjlm#le?psbm#`obpp>!pafojfufg#wl#affnfmw+$p`qjsw$?,b=\t?,oj=\t?ojufqz#gjeefqfmw=?psbm#`obpp>!lswjlm#ubovf>!+bopl#hmltm#bp\n?oj=?b#kqfe>!=?jmsvw#mbnf>!pfsbqbwfg#eqlnqfefqqfg#wl#bp#ubojdm>!wls!=elvmgfq#le#wkfbwwfnswjmd#wl#`bqalm#gjl{jgf\t\t?gju#`obpp>!`obpp>!pfbq`k.,algz=\t?,kwno=lsslqwvmjwz#wl`lnnvmj`bwjlmp?,kfbg=\x0E\t?algz#pwzof>!tjgwk9Wj\rVSmd#Uj\rWkw`kbmdfp#jm#wkfalqgfq.`lolq9 3!#alqgfq>!3!#?,psbm=?,gju=?tbp#gjp`lufqfg!#wzsf>!wf{w!#*8\t?,p`qjsw=\t\tGfsbqwnfmw#le#f``ofpjbpwj`bowkfqf#kbp#affmqfpvowjmd#eqln?,algz=?,kwno=kbp#mfufq#affmwkf#ejqpw#wjnfjm#qfpslmpf#wlbvwlnbwj`booz#?,gju=\t\t?gju#jtbp#`lmpjgfqfgsfq`fmw#le#wkf!#,=?,b=?,gju=`loof`wjlm#le#gfp`fmgfg#eqlnpf`wjlm#le#wkfb``fsw.`kbqpfwwl#af#`lmevpfgnfnafq#le#wkf#sbggjmd.qjdkw9wqbmpobwjlm#lejmwfqsqfwbwjlm#kqfe>$kwws9,,tkfwkfq#lq#mlwWkfqf#bqf#boplwkfqf#bqf#nbmzb#pnboo#mvnafqlwkfq#sbqwp#lejnslppjaof#wl##`obpp>!avwwlmol`bwfg#jm#wkf-#Kltfufq/#wkfbmg#fufmwvboozBw#wkf#fmg#le#af`bvpf#le#jwpqfsqfpfmwp#wkf?elqn#b`wjlm>!#nfwklg>!slpw!jw#jp#slppjaofnlqf#ojhfoz#wlbm#jm`qfbpf#jmkbuf#bopl#affm`lqqfpslmgp#wlbmmlvm`fg#wkbwbojdm>!qjdkw!=nbmz#`lvmwqjfpelq#nbmz#zfbqpfbqojfpw#hmltmaf`bvpf#jw#tbpsw!=?,p`qjsw=\x0E#ubojdm>!wls!#jmkbajwbmwp#leelooltjmd#zfbq\x0E\t?gju#`obpp>!njoojlm#sflsof`lmwqlufqpjbo#`lm`fqmjmd#wkfbqdvf#wkbw#wkfdlufqmnfmw#bmgb#qfefqfm`f#wlwqbmpefqqfg#wlgfp`qjajmd#wkf#pwzof>!`lolq9bowklvdk#wkfqfafpw#hmltm#elqpvanjw!#mbnf>!nvowjsoj`bwjlmnlqf#wkbm#lmf#qf`ldmjwjlm#le@lvm`jo#le#wkffgjwjlm#le#wkf##?nfwb#mbnf>!Fmwfqwbjmnfmw#btbz#eqln#wkf#8nbqdjm.qjdkw9bw#wkf#wjnf#lejmufpwjdbwjlmp`lmmf`wfg#tjwkbmg#nbmz#lwkfqbowklvdk#jw#jpafdjmmjmd#tjwk#?psbm#`obpp>!gfp`fmgbmwp#le?psbm#`obpp>!j#bojdm>!qjdkw!?,kfbg=\t?algz#bpsf`wp#le#wkfkbp#pjm`f#affmFvqlsfbm#Vmjlmqfnjmjp`fmw#lenlqf#gjeej`vowUj`f#Sqfpjgfmw`lnslpjwjlm#lesbppfg#wkqlvdknlqf#jnslqwbmwelmw.pjyf922s{f{sobmbwjlm#lewkf#`lm`fsw#letqjwwfm#jm#wkf\n?psbm#`obpp>!jp#lmf#le#wkf#qfpfnaobm`f#wllm#wkf#dqlvmgptkj`k#`lmwbjmpjm`ovgjmd#wkf#gfejmfg#az#wkfsvaoj`bwjlm#lenfbmp#wkbw#wkflvwpjgf#le#wkfpvsslqw#le#wkf?jmsvw#`obpp>!?psbm#`obpp>!w+Nbwk-qbmgln+*nlpw#sqlnjmfmwgfp`qjswjlm#le@lmpwbmwjmlsoftfqf#svaojpkfg?gju#`obpp>!pfbssfbqp#jm#wkf2!#kfjdkw>!2!#nlpw#jnslqwbmwtkj`k#jm`ovgfptkj`k#kbg#affmgfpwqv`wjlm#lewkf#slsvobwjlm\t\n?gju#`obpp>!slppjajojwz#leplnfwjnfp#vpfgbssfbq#wl#kbufpv``fpp#le#wkfjmwfmgfg#wl#afsqfpfmw#jm#wkfpwzof>!`ofbq9a\x0E\t?,p`qjsw=\x0E\t?tbp#elvmgfg#jmjmwfqujft#tjwk\\jg!#`lmwfmw>!`bsjwbo#le#wkf\x0E\t?ojmh#qfo>!pqfofbpf#le#wkfsljmw#lvw#wkbw{NOKwwsQfrvfpwbmg#pvapfrvfmwpf`lmg#obqdfpwufqz#jnslqwbmwpsf`jej`bwjlmppvqeb`f#le#wkfbssojfg#wl#wkfelqfjdm#sloj`z\\pfwGlnbjmMbnffpwbaojpkfg#jmjp#afojfufg#wlJm#bggjwjlm#wlnfbmjmd#le#wkfjp#mbnfg#bewfqwl#sqlwf`w#wkfjp#qfsqfpfmwfgGf`obqbwjlm#lenlqf#feej`jfmw@obppjej`bwjlmlwkfq#elqnp#lekf#qfwvqmfg#wl?psbm#`obpp>!`sfqelqnbm`f#le+evm`wjlm+*#x\x0Eje#bmg#lmoz#jeqfdjlmp#le#wkfofbgjmd#wl#wkfqfobwjlmp#tjwkVmjwfg#Mbwjlmppwzof>!kfjdkw9lwkfq#wkbm#wkfzsf!#`lmwfmw>!Bppl`jbwjlm#le\t?,kfbg=\t?algzol`bwfg#lm#wkfjp#qfefqqfg#wl+jm`ovgjmd#wkf`lm`fmwqbwjlmpwkf#jmgjujgvbobnlmd#wkf#nlpwwkbm#bmz#lwkfq,=\t?ojmh#qfo>!#qfwvqm#ebopf8wkf#svqslpf#lewkf#bajojwz#wl8`lolq9 eee~\t-\t?psbm#`obpp>!wkf#pvaif`w#legfejmjwjlmp#le=\x0E\t?ojmh#qfo>!`objn#wkbw#wkfkbuf#gfufolsfg?wbaof#tjgwk>!`fofaqbwjlm#leElooltjmd#wkf#wl#gjpwjmdvjpk?psbm#`obpp>!awbhfp#sob`f#jmvmgfq#wkf#mbnfmlwfg#wkbw#wkf=?\"Xfmgje^..=\tpwzof>!nbqdjm.jmpwfbg#le#wkfjmwqlgv`fg#wkfwkf#sql`fpp#lejm`qfbpjmd#wkfgjeefqfm`fp#jmfpwjnbwfg#wkbwfpsf`jbooz#wkf,gju=?gju#jg>!tbp#fufmwvboozwkqlvdklvw#kjpwkf#gjeefqfm`fplnfwkjmd#wkbwpsbm=?,psbm=?,pjdmjej`bmwoz#=?,p`qjsw=\x0E\t\x0E\tfmujqlmnfmwbo#wl#sqfufmw#wkfkbuf#affm#vpfgfpsf`jbooz#elqvmgfqpwbmg#wkfjp#fppfmwjbooztfqf#wkf#ejqpwjp#wkf#obqdfpwkbuf#affm#nbgf!#pq`>!kwws9,,jmwfqsqfwfg#bppf`lmg#kboe#le`qloojmd>!ml!#jp#`lnslpfg#leJJ/#Kloz#Qlnbmjp#f{sf`wfg#wlkbuf#wkfjq#ltmgfejmfg#bp#wkfwqbgjwjlmbooz#kbuf#gjeefqfmwbqf#lewfm#vpfgwl#fmpvqf#wkbwbdqffnfmw#tjwk`lmwbjmjmd#wkfbqf#eqfrvfmwozjmelqnbwjlm#lmf{bnsof#jp#wkfqfpvowjmd#jm#b?,b=?,oj=?,vo=#`obpp>!ellwfqbmg#fpsf`jboozwzsf>!avwwlm!#?,psbm=?,psbm=tkj`k#jm`ovgfg=\t?nfwb#mbnf>!`lmpjgfqfg#wkf`bqqjfg#lvw#azKltfufq/#jw#jpaf`bnf#sbqw#lejm#qfobwjlm#wlslsvobq#jm#wkfwkf#`bsjwbo#letbp#leej`jbooztkj`k#kbp#affmwkf#Kjpwlqz#lebowfqmbwjuf#wlgjeefqfmw#eqlnwl#pvsslqw#wkfpvddfpwfg#wkbwjm#wkf#sql`fpp##?gju#`obpp>!wkf#elvmgbwjlmaf`bvpf#le#kjp`lm`fqmfg#tjwkwkf#vmjufqpjwzlsslpfg#wl#wkfwkf#`lmwf{w#le?psbm#`obpp>!swf{w!#mbnf>!r!\n\n?gju#`obpp>!wkf#p`jfmwjej`qfsqfpfmwfg#aznbwkfnbwj`jbmpfof`wfg#az#wkfwkbw#kbuf#affm=?gju#`obpp>!`gju#jg>!kfbgfqjm#sbqwj`vobq/`lmufqwfg#jmwl*8\t?,p`qjsw=\t?skjolplskj`bo#pqsphlkqubwphjwj\rVSmd#Uj\rWkw<L=o=m=m<V<T<U=l=o=m=m<V<T<Ujmufpwjdb`j/_msbqwj`jsb`j/_m<V<R=n<R=l=g<Y<R<]<W<\\=m=n<T<V<R=n<R=l=g<U=k<Y<W<R<^<Y<V=m<T=m=n<Y<P=g<q<R<^<R=m=n<T<V<R=n<R=l=g=i<R<]<W<\\=m=n=`<^=l<Y<P<Y<Q<T<V<R=n<R=l<\\=c=m<Y<_<R<X<Q=c=m<V<\\=k<\\=n=`<Q<R<^<R=m=n<T<O<V=l<\\<T<Q=g<^<R<S=l<R=m=g<V<R=n<R=l<R<U=m<X<Y<W<\\=n=`<S<R<P<R=e=`=b=m=l<Y<X=m=n<^<R<]=l<\\<[<R<P=m=n<R=l<R<Q=g=o=k<\\=m=n<T<Y=n<Y=k<Y<Q<T<Y<\u007F<W<\\<^<Q<\\=c<T=m=n<R=l<T<T=m<T=m=n<Y<P<\\=l<Y=d<Y<Q<T=c<M<V<\\=k<\\=n=`<S<R=a=n<R<P=o=m<W<Y<X=o<Y=n=m<V<\\<[<\\=n=`=n<R<^<\\=l<R<^<V<R<Q<Y=k<Q<R=l<Y=d<Y<Q<T<Y<V<R=n<R=l<R<Y<R=l<_<\\<Q<R<^<V<R=n<R=l<R<P<L<Y<V<W<\\<P<\\4K5h5i5j4F4C5e5i5j4F4C5f4K4F4K5h5i5d4Z5d4U4K5h4D4]4K5i4@4K5h5i5d4K5n4U4K5h4]4_4K4J5h5i4X4K4]5o4K4F4K5h4O4U4Z4K4M4K5h4]5f4K4Z4E4K5h4F4Y5i5f5i4K5h4K4U4Z4K4M4K5h5j4F4K4J4@4K5h4O5h4U4K4D4K5h4F4_4@5f5h4K5h4O5n4_4K5i4K5h4Z4V4[4K4F4K5h5m5f4C5f5d4K5h4F4]4A5f4D4K5h4@4C5f4C4E4K5h4F4U5h5f5i4K5h4O4B4D4K4]4K5h4K5m5h4K5i4K5h4O5m5h4K5i4K5h4F4K4]5f4B4K5h4F5n5j5f4E4K5h4K5h4U4K4D4K5h4B5d4K4[4]4K5h5i4@4F5i4U4K5h4C5f5o5d4]4K5h4_5f4K4A4E4U4D4C4K5h5h5k4K5h4F4]4D5f4E4K5h4]5d4K4D4[4K5h4O4C4D5f4E4K5h4K4B4D4K4]4K5h5i4F4A4C4E4K5h4K4V4K5j5f`vqplq9sljmwfq8?,wjwof=\t?nfwb#!#kqfe>!kwws9,,!=?psbm#`obpp>!nfnafqp#le#wkf#tjmglt-ol`bwjlmufqwj`bo.bojdm9,b=#\u007F#?b#kqfe>!?\"gl`wzsf#kwno=nfgjb>!p`qffm!#?lswjlm#ubovf>!ebuj`lm-j`l!#,=\t\n\n?gju#`obpp>!`kbqb`wfqjpwj`p!#nfwklg>!dfw!#,algz=\t?,kwno=\tpklqw`vw#j`lm!#gl`vnfmw-tqjwf+sbggjmd.alwwln9qfsqfpfmwbwjufppvanjw!#ubovf>!bojdm>!`fmwfq!#wkqlvdklvw#wkf#p`jfm`f#ej`wjlm\t##?gju#`obpp>!pvanjw!#`obpp>!lmf#le#wkf#nlpw#ubojdm>!wls!=?tbp#fpwbaojpkfg*8\x0E\t?,p`qjsw=\x0E\tqfwvqm#ebopf8!=*-pwzof-gjpsobzaf`bvpf#le#wkf#gl`vnfmw-`llhjf?elqn#b`wjlm>!,~algzxnbqdjm938Fm`z`olsfgjb#leufqpjlm#le#wkf#-`qfbwfFofnfmw+mbnf!#`lmwfmw>!?,gju=\t?,gju=\t\tbgnjmjpwqbwjuf#?,algz=\t?,kwno=kjpwlqz#le#wkf#!=?jmsvw#wzsf>!slqwjlm#le#wkf#bp#sbqw#le#wkf#%maps8?b#kqfe>!lwkfq#`lvmwqjfp!=\t?gju#`obpp>!?,psbm=?,psbm=?Jm#lwkfq#tlqgp/gjpsobz9#aol`h8`lmwqlo#le#wkf#jmwqlgv`wjlm#le,=\t?nfwb#mbnf>!bp#tfoo#bp#wkf#jm#qf`fmw#zfbqp\x0E\t\n?gju#`obpp>!?,gju=\t\n?,gju=\tjmpsjqfg#az#wkfwkf#fmg#le#wkf#`lnsbwjaof#tjwkaf`bnf#hmltm#bp#pwzof>!nbqdjm9-ip!=?,p`qjsw=?#Jmwfqmbwjlmbo#wkfqf#kbuf#affmDfqnbm#obmdvbdf#pwzof>!`lolq9 @lnnvmjpw#Sbqwz`lmpjpwfmw#tjwkalqgfq>!3!#`foo#nbqdjmkfjdkw>!wkf#nbilqjwz#le!#bojdm>!`fmwfqqfobwfg#wl#wkf#nbmz#gjeefqfmw#Lqwklgl{#@kvq`kpjnjobq#wl#wkf#,=\t?ojmh#qfo>!ptbp#lmf#le#wkf#vmwjo#kjp#gfbwk~*+*8\t?,p`qjsw=lwkfq#obmdvbdfp`lnsbqfg#wl#wkfslqwjlmp#le#wkfwkf#Mfwkfqobmgpwkf#nlpw#`lnnlmab`hdqlvmg9vqo+bqdvfg#wkbw#wkfp`qloojmd>!ml!#jm`ovgfg#jm#wkfMlqwk#Bnfqj`bm#wkf#mbnf#le#wkfjmwfqsqfwbwjlmpwkf#wqbgjwjlmbogfufolsnfmw#le#eqfrvfmwoz#vpfgb#`loof`wjlm#leufqz#pjnjobq#wlpvqqlvmgjmd#wkff{bnsof#le#wkjpbojdm>!`fmwfq!=tlvog#kbuf#affmjnbdf\\`bswjlm#>bwwb`kfg#wl#wkfpvddfpwjmd#wkbwjm#wkf#elqn#le#jmuloufg#jm#wkfjp#gfqjufg#eqlnmbnfg#bewfq#wkfJmwqlgv`wjlm#wlqfpwqj`wjlmp#lm#pwzof>!tjgwk9#`bm#af#vpfg#wl#wkf#`qfbwjlm#lenlpw#jnslqwbmw#jmelqnbwjlm#bmgqfpvowfg#jm#wkf`loobspf#le#wkfWkjp#nfbmp#wkbwfofnfmwp#le#wkftbp#qfsob`fg#azbmbozpjp#le#wkfjmpsjqbwjlm#elqqfdbqgfg#bp#wkfnlpw#pv``fppevohmltm#bp#%rvlw8b#`lnsqfkfmpjufKjpwlqz#le#wkf#tfqf#`lmpjgfqfgqfwvqmfg#wl#wkfbqf#qfefqqfg#wlVmplvq`fg#jnbdf=\t\n?gju#`obpp>!`lmpjpwp#le#wkfpwlsSqlsbdbwjlmjmwfqfpw#jm#wkfbubjobajojwz#lebssfbqp#wl#kbuffof`wqlnbdmfwj`fmbaofPfquj`fp+evm`wjlm#le#wkfJw#jp#jnslqwbmw?,p`qjsw=?,gju=evm`wjlm+*xubq#qfobwjuf#wl#wkfbp#b#qfpvow#le#wkf#slpjwjlm#leElq#f{bnsof/#jm#nfwklg>!slpw!#tbp#elooltfg#az%bns8ngbpk8#wkfwkf#bssoj`bwjlmip!=?,p`qjsw=\x0E\tvo=?,gju=?,gju=bewfq#wkf#gfbwktjwk#qfpsf`w#wlpwzof>!sbggjmd9jp#sbqwj`vobqozgjpsobz9jmojmf8#wzsf>!pvanjw!#jp#gjujgfg#jmwl\bTA\nzk#+\x0BBl\bQ\u007F*qfpslmpbajojgbgbgnjmjpwqb`j/_mjmwfqmb`jlmbofp`lqqfpslmgjfmwf\x0CHe\x0CHF\x0CHC\x0CIg\x0CH{\x0CHF\x0CIn\x0CH\\\x0CIa\x0CHY\x0CHU\x0CHB\x0CHR\x0CH\\\x0CIk\x0CH^\x0CIg\x0CH{\x0CIg\x0CHn\x0CHv\x0CIm\x0CHD\x0CHR\x0CHY\x0CH^\x0CIk\x0CHy\x0CHS\x0CHD\x0CHT\x0CH\\\x0CHy\x0CHR\x0CH\\\x0CHF\x0CIm\x0CH^\x0CHS\x0CHT\x0CHz\x0CIg\x0CHp\x0CIk\x0CHn\x0CHv\x0CHR\x0CHU\x0CHS\x0CHc\x0CHA\x0CIk\x0CHp\x0CIk\x0CHn\x0CHZ\x0CHR\x0CHB\x0CHS\x0CH^\x0CHU\x0CHB\x0CHR\x0CH\\\x0CIl\x0CHp\x0CHR\x0CH{\x0CH\\\x0CHO\x0CH@\x0CHD\x0CHR\x0CHD\x0CIk\x0CHy\x0CIm\x0CHB\x0CHR\x0CH\\\x0CH@\x0CIa\x0CH^\x0CIe\x0CH{\x0CHB\x0CHR\x0CH^\x0CHS\x0CHy\x0CHB\x0CHU\x0CHS\x0CH^\x0CHR\x0CHF\x0CIo\x0CH[\x0CIa\x0CHL\x0CH@\x0CHN\x0CHP\x0CHH\x0CIk\x0CHA\x0CHR\x0CHp\x0CHF\x0CHR\x0CHy\x0CIa\x0CH^\x0CHS\x0CHy\x0CHs\x0CIa\x0CH\\\x0CIk\x0CHD\x0CHz\x0CHS\x0CH^\x0CHR\x0CHG\x0CHJ\x0CI`\x0CH\\\x0CHR\x0CHD\x0CHB\x0CHR\x0CHB\x0CH^\x0CIk\x0CHB\x0CHH\x0CHJ\x0CHR\x0CHD\x0CH@\x0CHR\x0CHp\x0CHR\x0CH\\\x0CHY\x0CHS\x0CHy\x0CHR\x0CHT\x0CHy\x0CIa\x0CHC\x0CIg\x0CHn\x0CHv\x0CHR\x0CHU\x0CHH\x0CIk\x0CHF\x0CHU\x0CIm\x0CHm\x0CHv\x0CH@\x0CHH\x0CHR\x0CHC\x0CHR\x0CHT\x0CHn\x0CHY\x0CHR\x0CHJ\x0CHJ\x0CIk\x0CHz\x0CHD\x0CIk\x0CHF\x0CHS\x0CHw\x0CH^\x0CIk\x0CHY\x0CHS\x0CHZ\x0CIk\x0CH[\x0CH\\\x0CHR\x0CHp\x0CIa\x0CHC\x0CHe\x0CHH\x0CIa\x0CHH\x0CH\\\x0CHB\x0CIm\x0CHn\x0CH@\x0CHd\x0CHJ\x0CIg\x0CHD\x0CIg\x0CHn\x0CHe\x0CHF\x0CHy\x0CH\\\x0CHO\x0CHF\x0CHN\x0CHP\x0CIk\x0CHn\x0CHT\x0CIa\x0CHI\x0CHS\x0CHH\x0CHG\x0CHS\x0CH^\x0CIa\x0CHB\x0CHB\x0CIm\x0CHz\x0CIa\x0CHC\x0CHi\x0CHv\x0CIa\x0CHw\x0CHR\x0CHw\x0CIn\x0CHs\x0CHH\x0CIl\x0CHT\x0CHn\x0CH{\x0CIl\x0CHH\x0CHp\x0CHR\x0CHc\x0CH{\x0CHR\x0CHY\x0CHS\x0CHA\x0CHR\x0CH{\x0CHt\x0CHO\x0CIa\x0CHs\x0CIk\x0CHJ\x0CIn\x0CHT\x0CH\\\x0CIk\x0CHJ\x0CHS\x0CHD\x0CIg\x0CHn\x0CHU\x0CHH\x0CIa\x0CHC\x0CHR\x0CHT\x0CIk\x0CHy\x0CIa\x0CHT\x0CH{\x0CHR\x0CHn\x0CHK\x0CIl\x0CHY\x0CHS\x0CHZ\x0CIa\x0CHY\x0CH\\\x0CHR\x0CHH\x0CIk\x0CHn\x0CHJ\x0CId\x0CHs\x0CIa\x0CHT\x0CHD\x0CHy\x0CIa\x0CHZ\x0CHR\x0CHT\x0CHR\x0CHB\x0CHD\x0CIk\x0CHi\x0CHJ\x0CHR\x0CH^\x0CHH\x0CH@\x0CHS\x0CHp\x0CH^\x0CIl\x0CHF\x0CIm\x0CH\\\x0CIn\x0CH[\x0CHU\x0CHS\x0CHn\x0CHJ\x0CIl\x0CHB\x0CHS\x0CHH\x0CIa\x0CH\\\x0CHy\x0CHY\x0CHS\x0CHH\x0CHR\x0CH\\\x0CIm\x0CHF\x0CHC\x0CIk\x0CHT\x0CIa\x0CHI\x0CHR\x0CHD\x0CHy\x0CH\\\x0CIg\x0CHM\x0CHP\x0CHB\x0CIm\x0CHy\x0CIa\x0CHH\x0CHC\x0CIg\x0CHp\x0CHD\x0CHR\x0CHy\x0CIo\x0CHF\x0CHC\x0CHR\x0CHF\x0CIg\x0CHT\x0CIa\x0CHs\x0CHt\x0CH\\\x0CIk\x0CH^\x0CIn\x0CHy\x0CHR\x0CH\\\x0CIa\x0CHC\x0CHY\x0CHS\x0CHv\x0CHR\x0CH\\\x0CHT\x0CIn\x0CHv\x0CHD\x0CHR\x0CHB\x0CIn\x0CH^\x0CIa\x0CHC\x0CHJ\x0CIk\x0CHz\x0CIk\x0CHn\x0CHU\x0CHB\x0CIk\x0CHZ\x0CHR\x0CHT\x0CIa\x0CHy\x0CIn\x0CH^\x0CHB\x0CId\x0CHn\x0CHD\x0CIk\x0CHH\x0CId\x0CHC\x0CHR\x0CH\\\x0CHp\x0CHS\x0CHT\x0CHy\x0CIkqpp({no!#wjwof>!.wzsf!#`lmwfmw>!wjwof!#`lmwfmw>!bw#wkf#pbnf#wjnf-ip!=?,p`qjsw=\t?!#nfwklg>!slpw!#?,psbm=?,b=?,oj=ufqwj`bo.bojdm9w,irvfqz-njm-ip!=-`oj`h+evm`wjlm+#pwzof>!sbggjmd.~*+*8\t?,p`qjsw=\t?,psbm=?b#kqfe>!?b#kqfe>!kwws9,,*8#qfwvqm#ebopf8wf{w.gf`lqbwjlm9#p`qloojmd>!ml!#alqgfq.`loobspf9bppl`jbwfg#tjwk#Abkbpb#JmglmfpjbFmdojpk#obmdvbdf?wf{w#{no9psb`f>-dje!#alqgfq>!3!?,algz=\t?,kwno=\tlufqeolt9kjggfm8jnd#pq`>!kwws9,,bggFufmwOjpwfmfqqfpslmpjaof#elq#p-ip!=?,p`qjsw=\t,ebuj`lm-j`l!#,=lsfqbwjmd#pzpwfn!#pwzof>!tjgwk92wbqdfw>!\\aobmh!=Pwbwf#Vmjufqpjwzwf{w.bojdm9ofew8\tgl`vnfmw-tqjwf+/#jm`ovgjmd#wkf#bqlvmg#wkf#tlqog*8\x0E\t?,p`qjsw=\x0E\t?!#pwzof>!kfjdkw98lufqeolt9kjggfmnlqf#jmelqnbwjlmbm#jmwfqmbwjlmbob#nfnafq#le#wkf#lmf#le#wkf#ejqpw`bm#af#elvmg#jm#?,gju=\t\n\n?,gju=\tgjpsobz9#mlmf8!=!#,=\t?ojmh#qfo>!\t##+evm`wjlm+*#xwkf#26wk#`fmwvqz-sqfufmwGfebvow+obqdf#mvnafq#le#Azybmwjmf#Fnsjqf-isd\u007Fwkvna\u007Fofew\u007Fubpw#nbilqjwz#lenbilqjwz#le#wkf##bojdm>!`fmwfq!=Vmjufqpjwz#Sqfppglnjmbwfg#az#wkfPf`lmg#Tlqog#Tbqgjpwqjavwjlm#le#pwzof>!slpjwjlm9wkf#qfpw#le#wkf#`kbqb`wfqjyfg#az#qfo>!mleloolt!=gfqjufp#eqln#wkfqbwkfq#wkbm#wkf#b#`lnajmbwjlm#lepwzof>!tjgwk9233Fmdojpk.psfbhjmd`lnsvwfq#p`jfm`falqgfq>!3!#bow>!wkf#f{jpwfm`f#leGfnl`qbwj`#Sbqwz!#pwzof>!nbqdjm.Elq#wkjp#qfbplm/-ip!=?,p`qjsw=\t\npAzWbdMbnf+p*X3^ip!=?,p`qjsw=\x0E\t?-ip!=?,p`qjsw=\x0E\tojmh#qfo>!j`lm!#$#bow>$$#`obpp>$elqnbwjlm#le#wkfufqpjlmp#le#wkf#?,b=?,gju=?,gju=,sbdf=\t##?sbdf=\t?gju#`obpp>!`lmwaf`bnf#wkf#ejqpwabkbpb#Jmglmfpjbfmdojpk#+pjnsof*\"y\"W\"W\"[\"Q\"U\"V\"@=i=l<^<\\=n=m<V<T<V<R<P<S<\\<Q<T<T=c<^<W=c<Y=n=m=c<x<R<]<\\<^<T=n=`=k<Y<W<R<^<Y<V<\\=l<\\<[<^<T=n<T=c<t<Q=n<Y=l<Q<Y=n<r=n<^<Y=n<T=n=`<Q<\\<S=l<T<P<Y=l<T<Q=n<Y=l<Q<Y=n<V<R=n<R=l<R<_<R=m=n=l<\\<Q<T=j=g<V<\\=k<Y=m=n<^<Y=o=m<W<R<^<T=c=i<S=l<R<]<W<Y<P=g<S<R<W=o=k<T=n=`=c<^<W=c=b=n=m=c<Q<\\<T<]<R<W<Y<Y<V<R<P<S<\\<Q<T=c<^<Q<T<P<\\<Q<T<Y=m=l<Y<X=m=n<^<\\4K5h5i5d4K4Z5f4U4K5h4]4J5f4_5f4E4K5h4K5j4F5n4K5h5i4X4K4]5o4K4F5o4K5h4_5f4K4]4K4F4K5h5i5o4F5d4D4E4K5h4_4U5d4C5f4E4K4A4Y4K4J5f4K4F4K5h4U4K5h5i5f4E4K5h4Y5d4F5f4K4F4K5h4K5j4F4]5j4F4K5h4F4Y4K5i5f5i4K5h4I4_5h4K5i5f4K5h5i4X4K4]5o4E4K5h5i4]4J5f4K4Fqlalwp!#`lmwfmw>!?gju#jg>!ellwfq!=wkf#Vmjwfg#Pwbwfp?jnd#pq`>!kwws9,,-isd\u007Fqjdkw\u007Fwkvna\u007F-ip!=?,p`qjsw=\x0E\t?ol`bwjlm-sqlwl`loeqbnfalqgfq>!3!#p!#,=\t?nfwb#mbnf>!?,b=?,gju=?,gju=?elmw.tfjdkw9alog8%rvlw8#bmg#%rvlw8gfsfmgjmd#lm#wkf#nbqdjm938sbggjmd9!#qfo>!mleloolt!#Sqfpjgfmw#le#wkf#wtfmwjfwk#`fmwvqzfujpjlm=\t##?,sbdfJmwfqmfw#F{solqfqb-bpzm`#>#wqvf8\x0E\tjmelqnbwjlm#balvw?gju#jg>!kfbgfq!=!#b`wjlm>!kwws9,,?b#kqfe>!kwwsp9,,?gju#jg>!`lmwfmw!?,gju=\x0E\t?,gju=\x0E\t?gfqjufg#eqln#wkf#?jnd#pq`>$kwws9,,b``lqgjmd#wl#wkf#\t?,algz=\t?,kwno=\tpwzof>!elmw.pjyf9p`qjsw#obmdvbdf>!Bqjbo/#Kfoufwj`b/?,b=?psbm#`obpp>!?,p`qjsw=?p`qjsw#slojwj`bo#sbqwjfpwg=?,wq=?,wbaof=?kqfe>!kwws9,,ttt-jmwfqsqfwbwjlm#leqfo>!pwzofpkffw!#gl`vnfmw-tqjwf+$?`kbqpfw>!vwe.;!=\tafdjmmjmd#le#wkf#qfufbofg#wkbw#wkfwfofujpjlm#pfqjfp!#qfo>!mleloolt!=#wbqdfw>!\\aobmh!=`objnjmd#wkbw#wkfkwws&0B&1E&1Ettt-nbmjefpwbwjlmp#leSqjnf#Njmjpwfq#lejmeovfm`fg#az#wkf`obpp>!`ofbqej{!=,gju=\x0E\t?,gju=\x0E\t\x0E\twkqff.gjnfmpjlmbo@kvq`k#le#Fmdobmgle#Mlqwk#@bqlojmbprvbqf#hjolnfwqfp-bggFufmwOjpwfmfqgjpwjm`w#eqln#wkf`lnnlmoz#hmltm#bpSklmfwj`#Boskbafwgf`obqfg#wkbw#wkf`lmwqloofg#az#wkfAfmibnjm#Eqbmhojmqlof.sobzjmd#dbnfwkf#Vmjufqpjwz#lejm#Tfpwfqm#Fvqlsfsfqplmbo#`lnsvwfqSqlif`w#Dvwfmafqdqfdbqgofpp#le#wkfkbp#affm#sqlslpfgwldfwkfq#tjwk#wkf=?,oj=?oj#`obpp>!jm#plnf#`lvmwqjfpnjm-ip!=?,p`qjsw=le#wkf#slsvobwjlmleej`jbo#obmdvbdf?jnd#pq`>!jnbdfp,jgfmwjejfg#az#wkfmbwvqbo#qfplvq`fp`obppjej`bwjlm#le`bm#af#`lmpjgfqfgrvbmwvn#nf`kbmj`pMfufqwkfofpp/#wkfnjoojlm#zfbqp#bdl?,algz=\x0E\t?,kwno=\x0E\"y\"W\"W\"[\"Q\"U\"V\"@\twbhf#bgubmwbdf#lebmg/#b``lqgjmd#wlbwwqjavwfg#wl#wkfNj`qlplew#Tjmgltpwkf#ejqpw#`fmwvqzvmgfq#wkf#`lmwqlogju#`obpp>!kfbgfqpklqwoz#bewfq#wkfmlwbaof#f{`fswjlmwfmp#le#wklvpbmgppfufqbo#gjeefqfmwbqlvmg#wkf#tlqog-qfb`kjmd#njojwbqzjplobwfg#eqln#wkflsslpjwjlm#wl#wkfwkf#Log#WfpwbnfmwBeqj`bm#Bnfqj`bmpjmpfqwfg#jmwl#wkfpfsbqbwf#eqln#wkfnfwqlslojwbm#bqfbnbhfp#jw#slppjaofb`hmltofgdfg#wkbwbqdvbaoz#wkf#nlpwwzsf>!wf{w,`pp!=\twkf#JmwfqmbwjlmboB``lqgjmd#wl#wkf#sf>!wf{w,`pp!#,=\t`ljm`jgf#tjwk#wkfwtl.wkjqgp#le#wkfGvqjmd#wkjp#wjnf/gvqjmd#wkf#sfqjlgbmmlvm`fg#wkbw#kfwkf#jmwfqmbwjlmbobmg#nlqf#qf`fmwozafojfufg#wkbw#wkf`lmp`jlvpmfpp#bmgelqnfqoz#hmltm#bppvqqlvmgfg#az#wkfejqpw#bssfbqfg#jml``bpjlmbooz#vpfgslpjwjlm9baplovwf8!#wbqdfw>!\\aobmh!#slpjwjlm9qfobwjuf8wf{w.bojdm9`fmwfq8ib{,ojap,irvfqz,2-ab`hdqlvmg.`lolq9 wzsf>!bssoj`bwjlm,bmdvbdf!#`lmwfmw>!?nfwb#kwws.frvju>!Sqjub`z#Sloj`z?,b=f+!&0@p`qjsw#pq`>$!#wbqdfw>!\\aobmh!=Lm#wkf#lwkfq#kbmg/-isd\u007Fwkvna\u007Fqjdkw\u007F1?,gju=?gju#`obpp>!?gju#pwzof>!eolbw9mjmfwffmwk#`fmwvqz?,algz=\x0E\t?,kwno=\x0E\t?jnd#pq`>!kwws9,,p8wf{w.bojdm9`fmwfqelmw.tfjdkw9#alog8#B``lqgjmd#wl#wkf#gjeefqfm`f#afwtffm!#eqbnfalqgfq>!3!#!#pwzof>!slpjwjlm9ojmh#kqfe>!kwws9,,kwno7,ollpf-gwg!=\tgvqjmd#wkjp#sfqjlg?,wg=?,wq=?,wbaof=`olpfoz#qfobwfg#wlelq#wkf#ejqpw#wjnf8elmw.tfjdkw9alog8jmsvw#wzsf>!wf{w!#?psbm#pwzof>!elmw.lmqfbgzpwbwf`kbmdf\n?gju#`obpp>!`ofbqgl`vnfmw-ol`bwjlm-#Elq#f{bnsof/#wkf#b#tjgf#ubqjfwz#le#?\"GL@WZSF#kwno=\x0E\t?%maps8%maps8%maps8!=?b#kqfe>!kwws9,,pwzof>!eolbw9ofew8`lm`fqmfg#tjwk#wkf>kwws&0B&1E&1Ettt-jm#slsvobq#`vowvqfwzsf>!wf{w,`pp!#,=jw#jp#slppjaof#wl#Kbqubqg#Vmjufqpjwzwzofpkffw!#kqfe>!,wkf#nbjm#`kbqb`wfqL{elqg#Vmjufqpjwz##mbnf>!hfztlqgp!#`pwzof>!wf{w.bojdm9wkf#Vmjwfg#Hjmdglnefgfqbo#dlufqmnfmw?gju#pwzof>!nbqdjm#gfsfmgjmd#lm#wkf#gfp`qjswjlm#le#wkf?gju#`obpp>!kfbgfq-njm-ip!=?,p`qjsw=gfpwqv`wjlm#le#wkfpojdkwoz#gjeefqfmwjm#b``lqgbm`f#tjwkwfof`lnnvmj`bwjlmpjmgj`bwfp#wkbw#wkfpklqwoz#wkfqfbewfqfpsf`jbooz#jm#wkf#Fvqlsfbm#`lvmwqjfpKltfufq/#wkfqf#bqfpq`>!kwws9,,pwbwj`pvddfpwfg#wkbw#wkf!#pq`>!kwws9,,ttt-b#obqdf#mvnafq#le#Wfof`lnnvmj`bwjlmp!#qfo>!mleloolt!#wKloz#Qlnbm#Fnsfqlqbonlpw#f{`ovpjufoz!#alqgfq>!3!#bow>!Pf`qfwbqz#le#Pwbwf`vonjmbwjmd#jm#wkf@JB#Tlqog#Eb`wallhwkf#nlpw#jnslqwbmwbmmjufqpbqz#le#wkfpwzof>!ab`hdqlvmg.?oj=?fn=?b#kqfe>!,wkf#Bwobmwj`#L`fbmpwqj`woz#psfbhjmd/pklqwoz#afelqf#wkfgjeefqfmw#wzsfp#lewkf#Lwwlnbm#Fnsjqf=?jnd#pq`>!kwws9,,Bm#Jmwqlgv`wjlm#wl`lmpfrvfm`f#le#wkfgfsbqwvqf#eqln#wkf@lmefgfqbwf#Pwbwfpjmgjdfmlvp#sflsofpSql`ffgjmdp#le#wkfjmelqnbwjlm#lm#wkfwkflqjfp#kbuf#affmjmuloufnfmw#jm#wkfgjujgfg#jmwl#wkqffbgib`fmw#`lvmwqjfpjp#qfpslmpjaof#elqgjpplovwjlm#le#wkf`loobalqbwjlm#tjwktjgfoz#qfdbqgfg#bpkjp#`lmwfnslqbqjfpelvmgjmd#nfnafq#leGlnjmj`bm#Qfsvaoj`dfmfqbooz#b``fswfgwkf#slppjajojwz#lebqf#bopl#bubjobaofvmgfq#`lmpwqv`wjlmqfpwlqbwjlm#le#wkfwkf#dfmfqbo#svaoj`jp#bonlpw#fmwjqfozsbppfp#wkqlvdk#wkfkbp#affm#pvddfpwfg`lnsvwfq#bmg#ujgflDfqnbmj`#obmdvbdfp#b``lqgjmd#wl#wkf#gjeefqfmw#eqln#wkfpklqwoz#bewfqtbqgpkqfe>!kwwsp9,,ttt-qf`fmw#gfufolsnfmwAlbqg#le#Gjqf`wlqp?gju#`obpp>!pfbq`k\u007F#?b#kqfe>!kwws9,,Jm#sbqwj`vobq/#wkfNvowjsof#ellwmlwfplq#lwkfq#pvapwbm`fwklvpbmgp#le#zfbqpwqbmpobwjlm#le#wkf?,gju=\x0E\t?,gju=\x0E\t\x0E\t?b#kqfe>!jmgf{-skstbp#fpwbaojpkfg#jmnjm-ip!=?,p`qjsw=\tsbqwj`jsbwf#jm#wkfb#pwqlmd#jmeovfm`fpwzof>!nbqdjm.wls9qfsqfpfmwfg#az#wkfdqbgvbwfg#eqln#wkfWqbgjwjlmbooz/#wkfFofnfmw+!p`qjsw!*8Kltfufq/#pjm`f#wkf,gju=\t?,gju=\t?gju#ofew8#nbqdjm.ofew9sqlwf`wjlm#bdbjmpw38#ufqwj`bo.bojdm9Vmelqwvmbwfoz/#wkfwzsf>!jnbdf,{.j`lm,gju=\t?gju#`obpp>!#`obpp>!`ofbqej{!=?gju#`obpp>!ellwfq\n\n?,gju=\t\n\n?,gju=\twkf#nlwjlm#sj`wvqf<}=f<W<_<\\=l=m<V<T<]=f<W<_<\\=l=m<V<T<H<Y<X<Y=l<\\=j<T<T<Q<Y=m<V<R<W=`<V<R=m<R<R<]=e<Y<Q<T<Y=m<R<R<]=e<Y<Q<T=c<S=l<R<_=l<\\<P<P=g<r=n<S=l<\\<^<T=n=`<]<Y=m<S<W<\\=n<Q<R<P<\\=n<Y=l<T<\\<W=g<S<R<[<^<R<W=c<Y=n<S<R=m<W<Y<X<Q<T<Y=l<\\<[<W<T=k<Q=g=i<S=l<R<X=o<V=j<T<T<S=l<R<_=l<\\<P<P<\\<S<R<W<Q<R=m=n=`=b<Q<\\=i<R<X<T=n=m=c<T<[<]=l<\\<Q<Q<R<Y<Q<\\=m<Y<W<Y<Q<T=c<T<[<P<Y<Q<Y<Q<T=c<V<\\=n<Y<_<R=l<T<T<|<W<Y<V=m<\\<Q<X=l\x0CHJ\x0CIa\x0CHY\x0CHR\x0CH\\\x0CHR\x0CHB\x0CId\x0CHD\x0CIm\x0CHi\x0CH^\x0CHF\x0CIa\x0CH\\\x0CHJ\x0CHR\x0CHD\x0CHA\x0CHR\x0CH\\\x0CHH\x0CIl\x0CHC\x0CHi\x0CHD\x0CIm\x0CHJ\x0CIk\x0CHZ\x0CHU\x0CHS\x0CHD\x0CIa\x0CHJ\x0CIl\x0CHk\x0CHn\x0CHM\x0CHS\x0CHC\x0CHR\x0CHJ\x0CHS\x0CH^\x0CIa\x0CH^\x0CIl\x0CHi\x0CHK\x0CHS\x0CHy\x0CHR\x0CH\\\x0CHY\x0CIl\x0CHM\x0CHS\x0CHC\x0CIg\x0CHv\x0CHS\x0CHs\x0CIa\x0CHL\x0CIk\x0CHT\x0CHB\x0CHR\x0CHv\x0CHR\x0CH\\\x0CHp\x0CHn\x0CHy\x0CIa\x0CHZ\x0CHD\x0CHJ\x0CIm\x0CHD\x0CHS\x0CHC\x0CHR\x0CHF\x0CIa\x0CH\\\x0CHC\x0CIg\x0CH{\x0CHi\x0CHD\x0CIm\x0CHT\x0CHR\x0CH\\\x0CH}\x0CHD\x0CH^\x0CHR\x0CHk\x0CHD\x0CHF\x0CHR\x0CH\\\x0CIa\x0CHs\x0CIl\x0CHZ\x0CH\\\x0CIa\x0CHH\x0CIg\x0CHn\x0CH^\x0CIg\x0CHy\x0CHT\x0CHA\x0CHR\x0CHG\x0CHP\x0CIa\x0CH^\x0CId\x0CHZ\x0CHZ\x0CH\\\x0CIa\x0CHH\x0CIk\x0CHn\x0CHF\x0CIa\x0CH\\\x0CHJ\x0CIk\x0CHZ\x0CHF\x0CIa\x0CH^\x0CIk\x0CHC\x0CH\\\x0CHy\x0CIk\x0CHn\x0CHJ\x0CIa\x0CH\\\x0CHT\x0CIa\x0CHI\x0CHS\x0CHH\x0CHS\x0CHe\x0CHH\x0CIa\x0CHF\x0CHR\x0CHJ\x0CHe\x0CHD\x0CIa\x0CHU\x0CIk\x0CHn\x0CHv\x0CHS\x0CHs\x0CIa\x0CHL\x0CHR\x0CHC\x0CHR\x0CHH\x0CIa\x0CH\\\x0CHR\x0CHp\x0CIa\x0CHC\x0CHR\x0CHJ\x0CHR\x0CHF\x0CIm\x0CH\\\x0CHR\x0CHD\x0CIk\x0CHp\x0CIg\x0CHM\x0CHP\x0CIk\x0CHn\x0CHi\x0CHD\x0CIm\x0CHY\x0CHR\x0CHJ\x0CHZ\x0CIa\x0CH\\\x0CIk\x0CHO\x0CIl\x0CHZ\x0CHS\x0CHy\x0CIa\x0CH[\x0CHR\x0CHT\x0CH\\\x0CHy\x0CHR\x0CH\\\x0CIl\x0CHT\x0CHn\x0CH{\x0CIa\x0CH\\\x0CHU\x0CHF\x0CH\\\x0CHS\x0CHO\x0CHR\x0CHB\x0CH@\x0CIa\x0CH\\\x0CHR\x0CHn\x0CHM\x0CH@\x0CHv\x0CIa\x0CHv\x0CIg\x0CHn\x0CHe\x0CHF\x0CH^\x0CH@\x0CIa\x0CHK\x0CHB\x0CHn\x0CHH\x0CIa\x0CH\\\x0CIl\x0CHT\x0CHn\x0CHF\x0CH\\\x0CIa\x0CHy\x0CHe\x0CHB\x0CIa\x0CHB\x0CIl\x0CHJ\x0CHB\x0CHR\x0CHK\x0CIa\x0CHC\x0CHB\x0CHT\x0CHU\x0CHR\x0CHC\x0CHH\x0CHR\x0CHZ\x0CH@\x0CIa\x0CHJ\x0CIg\x0CHn\x0CHB\x0CIl\x0CHM\x0CHS\x0CHC\x0CHR\x0CHj\x0CHd\x0CHF\x0CIl\x0CHc\x0CH^\x0CHB\x0CIg\x0CH@\x0CHR\x0CHk\x0CH^\x0CHT\x0CHn\x0CHz\x0CIa\x0CHC\x0CHR\x0CHj\x0CHF\x0CH\\\x0CIk\x0CHZ\x0CHD\x0CHi\x0CHD\x0CIm\x0CH@\x0CHn\x0CHK\x0CH@\x0CHR\x0CHp\x0CHP\x0CHR\x0CH\\\x0CHD\x0CHY\x0CIl\x0CHD\x0CHH\x0CHB\x0CHF\x0CIa\x0CH\\\x0CHB\x0CIm\x0CHz\x0CHF\x0CIa\x0CH\\\x0CHZ\x0CIa\x0CHD\x0CHF\x0CH\\\x0CHS\x0CHY\x0CHR\x0CH\\\x0CHD\x0CIm\x0CHy\x0CHT\x0CHR\x0CHD\x0CHT\x0CHB\x0CH\\\x0CIa\x0CHI\x0CHD\x0CHj\x0CHC\x0CIg\x0CHp\x0CHS\x0CHH\x0CHT\x0CIg\x0CHB\x0CHY\x0CHR\x0CH\\4K5h5i4X4K4]5o4K4F4K5h5i5j4F4C5f4K4F4K5h5o5i4D5f5d4F4]4K5h5i4X4K5k4C4K4F4U4C4C4K5h4^5d4K4]4U4C4C4K5h4]4C5d4C4K5h4I4_5h4K5i5f4E4K5h5m5d4F5d4X5d4D4K5h5i4_4K4D5n4K4F4K5h5i4U5h5d5i4K4F4K5h5i4_5h4_5h4K4F4K5h4@4]4K5m5f5o4_4K5h4K4_5h4K5i5f4E4K5h4K4F4Y4K5h4K4Fhfztlqgp!#`lmwfmw>!t0-lqd,2:::,{kwno!=?b#wbqdfw>!\\aobmh!#wf{w,kwno8#`kbqpfw>!#wbqdfw>!\\aobmh!=?wbaof#`foosbggjmd>!bvwl`lnsofwf>!lee!#wf{w.bojdm9#`fmwfq8wl#obpw#ufqpjlm#az#ab`hdqlvmg.`lolq9# !#kqfe>!kwws9,,ttt-,gju=?,gju=?gju#jg>?b#kqfe>! !#`obpp>!!=?jnd#pq`>!kwws9,,`qjsw!#pq`>!kwws9,,\t?p`qjsw#obmdvbdf>!,,FM!#!kwws9,,ttt-tfm`lgfVQJ@lnslmfmw+!#kqfe>!ibubp`qjsw9?gju#`obpp>!`lmwfmwgl`vnfmw-tqjwf+$?p`slpjwjlm9#baplovwf8p`qjsw#pq`>!kwws9,,#pwzof>!nbqdjm.wls9-njm-ip!=?,p`qjsw=\t?,gju=\t?gju#`obpp>!t0-lqd,2:::,{kwno!#\t\x0E\t?,algz=\x0E\t?,kwno=gjpwjm`wjlm#afwtffm,!#wbqdfw>!\\aobmh!=?ojmh#kqfe>!kwws9,,fm`lgjmd>!vwe.;!<=\tt-bggFufmwOjpwfmfq<b`wjlm>!kwws9,,ttt-j`lm!#kqfe>!kwws9,,#pwzof>!ab`hdqlvmg9wzsf>!wf{w,`pp!#,=\tnfwb#sqlsfqwz>!ld9w?jmsvw#wzsf>!wf{w!##pwzof>!wf{w.bojdm9wkf#gfufolsnfmw#le#wzofpkffw!#wzsf>!wfkwno8#`kbqpfw>vwe.;jp#`lmpjgfqfg#wl#afwbaof#tjgwk>!233&!#Jm#bggjwjlm#wl#wkf#`lmwqjavwfg#wl#wkf#gjeefqfm`fp#afwtffmgfufolsnfmw#le#wkf#Jw#jp#jnslqwbmw#wl#?,p`qjsw=\t\t?p`qjsw##pwzof>!elmw.pjyf92=?,psbm=?psbm#jg>daOjaqbqz#le#@lmdqfpp?jnd#pq`>!kwws9,,jnFmdojpk#wqbmpobwjlmB`bgfnz#le#P`jfm`fpgju#pwzof>!gjpsobz9`lmpwqv`wjlm#le#wkf-dfwFofnfmwAzJg+jg*jm#`lmivm`wjlm#tjwkFofnfmw+$p`qjsw$*8#?nfwb#sqlsfqwz>!ld9<}=f<W<_<\\=l=m<V<T\t#wzsf>!wf{w!#mbnf>!=Sqjub`z#Sloj`z?,b=bgnjmjpwfqfg#az#wkffmbaofPjmdofQfrvfpwpwzof>%rvlw8nbqdjm9?,gju=?,gju=?,gju=?=?jnd#pq`>!kwws9,,j#pwzof>%rvlw8eolbw9qfefqqfg#wl#bp#wkf#wlwbo#slsvobwjlm#lejm#Tbpkjmdwlm/#G-@-#pwzof>!ab`hdqlvmg.bnlmd#lwkfq#wkjmdp/lqdbmjybwjlm#le#wkfsbqwj`jsbwfg#jm#wkfwkf#jmwqlgv`wjlm#lejgfmwjejfg#tjwk#wkfej`wjlmbo#`kbqb`wfq#L{elqg#Vmjufqpjwz#njpvmgfqpwbmgjmd#leWkfqf#bqf/#kltfufq/pwzofpkffw!#kqfe>!,@lovnajb#Vmjufqpjwzf{sbmgfg#wl#jm`ovgfvpvbooz#qfefqqfg#wljmgj`bwjmd#wkbw#wkfkbuf#pvddfpwfg#wkbwbeejojbwfg#tjwk#wkf`lqqfobwjlm#afwtffmmvnafq#le#gjeefqfmw=?,wg=?,wq=?,wbaof=Qfsvaoj`#le#Jqfobmg\t?,p`qjsw=\t?p`qjsw#vmgfq#wkf#jmeovfm`f`lmwqjavwjlm#wl#wkfLeej`jbo#tfapjwf#lekfbgrvbqwfqp#le#wkf`fmwfqfg#bqlvmg#wkfjnsoj`bwjlmp#le#wkfkbuf#affm#gfufolsfgEfgfqbo#Qfsvaoj`#leaf`bnf#jm`qfbpjmdoz`lmwjmvbwjlm#le#wkfMlwf/#kltfufq/#wkbwpjnjobq#wl#wkbw#le#`bsbajojwjfp#le#wkfb``lqgbm`f#tjwk#wkfsbqwj`jsbmwp#jm#wkfevqwkfq#gfufolsnfmwvmgfq#wkf#gjqf`wjlmjp#lewfm#`lmpjgfqfgkjp#zlvmdfq#aqlwkfq?,wg=?,wq=?,wbaof=?b#kwws.frvju>![.VB.skzpj`bo#sqlsfqwjfple#Aqjwjpk#@lovnajbkbp#affm#`qjwj`jyfg+tjwk#wkf#f{`fswjlmrvfpwjlmp#balvw#wkfsbppjmd#wkqlvdk#wkf3!#`foosbggjmd>!3!#wklvpbmgp#le#sflsofqfgjqf`wp#kfqf-#Elqkbuf#`kjogqfm#vmgfq&0F&0@,p`qjsw&0F!**8?b#kqfe>!kwws9,,ttt-?oj=?b#kqfe>!kwws9,,pjwf\\mbnf!#`lmwfmw>!wf{w.gf`lqbwjlm9mlmfpwzof>!gjpsobz9#mlmf?nfwb#kwws.frvju>![.mft#Gbwf+*-dfwWjnf+*#wzsf>!jnbdf,{.j`lm!?,psbm=?psbm#`obpp>!obmdvbdf>!ibubp`qjswtjmglt-ol`bwjlm-kqfe?b#kqfe>!ibubp`qjsw9..=\x0E\t?p`qjsw#wzsf>!w?b#kqfe>$kwws9,,ttt-klqw`vw#j`lm!#kqfe>!?,gju=\x0E\t?gju#`obpp>!?p`qjsw#pq`>!kwws9,,!#qfo>!pwzofpkffw!#w?,gju=\t?p`qjsw#wzsf>,b=#?b#kqfe>!kwws9,,#booltWqbmpsbqfm`z>![.VB.@lnsbwjaof!#`lmqfobwjlmpkjs#afwtffm\t?,p`qjsw=\x0E\t?p`qjsw#?,b=?,oj=?,vo=?,gju=bppl`jbwfg#tjwk#wkf#sqldqbnnjmd#obmdvbdf?,b=?b#kqfe>!kwws9,,?,b=?,oj=?oj#`obpp>!elqn#b`wjlm>!kwws9,,?gju#pwzof>!gjpsobz9wzsf>!wf{w!#mbnf>!r!?wbaof#tjgwk>!233&!#ab`hdqlvmg.slpjwjlm9!#alqgfq>!3!#tjgwk>!qfo>!pklqw`vw#j`lm!#k5=?vo=?oj=?b#kqfe>!##?nfwb#kwws.frvju>!`pp!#nfgjb>!p`qffm!#qfpslmpjaof#elq#wkf#!#wzsf>!bssoj`bwjlm,!#pwzof>!ab`hdqlvmg.kwno8#`kbqpfw>vwe.;!#booltwqbmpsbqfm`z>!pwzofpkffw!#wzsf>!wf\x0E\t?nfwb#kwws.frvju>!=?,psbm=?psbm#`obpp>!3!#`foopsb`jmd>!3!=8\t?,p`qjsw=\t?p`qjsw#plnfwjnfp#`boofg#wkfglfp#mlw#mf`fppbqjozElq#nlqf#jmelqnbwjlmbw#wkf#afdjmmjmd#le#?\"GL@WZSF#kwno=?kwnosbqwj`vobqoz#jm#wkf#wzsf>!kjggfm!#mbnf>!ibubp`qjsw9uljg+3*8!feef`wjufmfpp#le#wkf#bvwl`lnsofwf>!lee!#dfmfqbooz#`lmpjgfqfg=?jmsvw#wzsf>!wf{w!#!=?,p`qjsw=\x0E\t?p`qjswwkqlvdklvw#wkf#tlqog`lnnlm#njp`lm`fswjlmbppl`jbwjlm#tjwk#wkf?,gju=\t?,gju=\t?gju#`gvqjmd#kjp#ojefwjnf/`lqqfpslmgjmd#wl#wkfwzsf>!jnbdf,{.j`lm!#bm#jm`qfbpjmd#mvnafqgjsolnbwj`#qfobwjlmpbqf#lewfm#`lmpjgfqfgnfwb#`kbqpfw>!vwe.;!#?jmsvw#wzsf>!wf{w!#f{bnsofp#jm`ovgf#wkf!=?jnd#pq`>!kwws9,,jsbqwj`jsbwjlm#jm#wkfwkf#fpwbaojpknfmw#le\t?,gju=\t?gju#`obpp>!%bns8maps8%bns8maps8wl#gfwfqnjmf#tkfwkfqrvjwf#gjeefqfmw#eqlnnbqhfg#wkf#afdjmmjmdgjpwbm`f#afwtffm#wkf`lmwqjavwjlmp#wl#wkf`lmeoj`w#afwtffm#wkftjgfoz#`lmpjgfqfg#wltbp#lmf#le#wkf#ejqpwtjwk#ubqzjmd#gfdqffpkbuf#psf`vobwfg#wkbw+gl`vnfmw-dfwFofnfmwsbqwj`jsbwjmd#jm#wkflqjdjmbooz#gfufolsfgfwb#`kbqpfw>!vwe.;!=#wzsf>!wf{w,`pp!#,=\tjmwfq`kbmdfbaoz#tjwknlqf#`olpfoz#qfobwfgpl`jbo#bmg#slojwj`bowkbw#tlvog#lwkfqtjpfsfqsfmgj`vobq#wl#wkfpwzof#wzsf>!wf{w,`ppwzsf>!pvanjw!#mbnf>!ebnjojfp#qfpjgjmd#jmgfufolsjmd#`lvmwqjfp`lnsvwfq#sqldqbnnjmdf`lmlnj`#gfufolsnfmwgfwfqnjmbwjlm#le#wkfelq#nlqf#jmelqnbwjlmlm#pfufqbo#l``bpjlmpslqwvdv/Fp#+Fvqlsfv*<O<V=l<\\={<Q=m=`<V<\\=o<V=l<\\={<Q=m=`<V<\\<L<R=m=m<T<U=m<V<R<U<P<\\=n<Y=l<T<\\<W<R<^<T<Q=h<R=l<P<\\=j<T<T=o<S=l<\\<^<W<Y<Q<T=c<Q<Y<R<]=i<R<X<T<P<R<T<Q=h<R=l<P<\\=j<T=c<t<Q=h<R=l<P<\\=j<T=c<L<Y=m<S=o<]<W<T<V<T<V<R<W<T=k<Y=m=n<^<R<T<Q=h<R=l<P<\\=j<T=b=n<Y=l=l<T=n<R=l<T<T<X<R=m=n<\\=n<R=k<Q<R4K5h5i4F5d4K4@4C5d5j4K5h4K4X4F4]4K5o4K4F4K5h4K5n4F4]4K4A4K4Fkwno8#`kbqpfw>VWE.;!#pfwWjnflvw+evm`wjlm+*gjpsobz9jmojmf.aol`h8?jmsvw#wzsf>!pvanjw!#wzsf#>#$wf{w,ibubp`qj?jnd#pq`>!kwws9,,ttt-!#!kwws9,,ttt-t0-lqd,pklqw`vw#j`lm!#kqfe>!!#bvwl`lnsofwf>!lee!#?,b=?,gju=?gju#`obpp>?,b=?,oj=\t?oj#`obpp>!`pp!#wzsf>!wf{w,`pp!#?elqn#b`wjlm>!kwws9,,{w,`pp!#kqfe>!kwws9,,ojmh#qfo>!bowfqmbwf!#\x0E\t?p`qjsw#wzsf>!wf{w,#lm`oj`h>!ibubp`qjsw9+mft#Gbwf*-dfwWjnf+*~kfjdkw>!2!#tjgwk>!2!#Sflsof$p#Qfsvaoj`#le##?b#kqfe>!kwws9,,ttt-wf{w.gf`lqbwjlm9vmgfqwkf#afdjmmjmd#le#wkf#?,gju=\t?,gju=\t?,gju=\tfpwbaojpknfmw#le#wkf#?,gju=?,gju=?,gju=?,g ujftslqwxnjm.kfjdkw9\t?p`qjsw#pq`>!kwws9,,lswjlm=?lswjlm#ubovf>lewfm#qfefqqfg#wl#bp#,lswjlm=\t?lswjlm#ubov?\"GL@WZSF#kwno=\t?\"..XJmwfqmbwjlmbo#Bjqslqw=\t?b#kqfe>!kwws9,,ttt?,b=?b#kqfe>!kwws9,,t\x0CTL\x0CT^\x0CTE\x0CT^\x0CUh\x0CT{\x0CTN\roI\ro|\roL\ro{\roO\rov\rot\nAO\x05Gx\bTA\nzk#+\x0BUm\x05Gx*\x0CHD\x0CHS\x0CH\\\x0CIa\x0CHJ\x0CIk\x0CHZ\x0CHM\x0CHR\x0CHe\x0CHD\x0CH^\x0CIg\x0CHM\x0CHy\x0CIa\x0CH[\x0CIk\x0CHH\x0CIa\x0CH\\\x0CHp\x0CHR\x0CHD\x0CHy\x0CHR\x0CH\\\x0CIl\x0CHT\x0CHn\x0CH@\x0CHn\x0CHK\x0CHS\x0CHH\x0CHT\x0CIa\x0CHI\x0CHR\x0CHF\x0CHD\x0CHR\x0CHT\x0CIa\x0CHY\x0CIl\x0CHy\x0CHR\x0CH\\\x0CHT\x0CHn\x0CHT\x0CIa\x0CHy\x0CH\\\x0CHO\x0CHT\x0CHR\x0CHB\x0CH{\x0CIa\x0CH\\\x0CIl\x0CHv\x0CHS\x0CHs\x0CIa\x0CHL\x0CIg\x0CHn\x0CHY\x0CHS\x0CHp\x0CIa\x0CHr\x0CHR\x0CHD\x0CHi\x0CHB\x0CIk\x0CH\\\x0CHS\x0CHy\x0CHR\x0CHY\x0CHS\x0CHA\x0CHS\x0CHD\x0CIa\x0CHD\x0CH{\x0CHR\x0CHM\x0CHS\x0CHC\x0CHR\x0CHm\x0CHy\x0CIa\x0CHC\x0CIg\x0CHn\x0CHy\x0CHS\x0CHT\x0CIm\x0CH\\\x0CHy\x0CIa\x0CH[\x0CHR\x0CHF\x0CHU\x0CIm\x0CHm\x0CHv\x0CHH\x0CIl\x0CHF\x0CIa\x0CH\\\x0CH@\x0CHn\x0CHK\x0CHD\x0CHs\x0CHS\x0CHF\x0CIa\x0CHF\x0CHO\x0CIl\x0CHy\x0CIa\x0CH\\\x0CHS\x0CHy\x0CIk\x0CHs\x0CHF\x0CIa\x0CH\\\x0CHR\x0CH\\\x0CHn\x0CHA\x0CHF\x0CIa\x0CH\\\x0CHR\x0CHF\x0CIa\x0CHH\x0CHB\x0CHR\x0CH^\x0CHS\x0CHy\x0CIg\x0CHn\x0CH\\\x0CHG\x0CHP\x0CIa\x0CHH\x0CHR\x0CH\\\x0CHD\x0CHS\x0CH\\\x0CIa\x0CHB\x0CHR\x0CHO\x0CH^\x0CHS\x0CHB\x0CHS\x0CHs\x0CIk\x0CHMgfp`qjswjlm!#`lmwfmw>!gl`vnfmw-ol`bwjlm-sqlw-dfwFofnfmwpAzWbdMbnf+?\"GL@WZSF#kwno=\t?kwno#?nfwb#`kbqpfw>!vwe.;!=9vqo!#`lmwfmw>!kwws9,,-`pp!#qfo>!pwzofpkffw!pwzof#wzsf>!wf{w,`pp!=wzsf>!wf{w,`pp!#kqfe>!t0-lqd,2:::,{kwno!#{nowzsf>!wf{w,ibubp`qjsw!#nfwklg>!dfw!#b`wjlm>!ojmh#qfo>!pwzofpkffw!##>#gl`vnfmw-dfwFofnfmwwzsf>!jnbdf,{.j`lm!#,=`foosbggjmd>!3!#`foops-`pp!#wzsf>!wf{w,`pp!#?,b=?,oj=?oj=?b#kqfe>!!#tjgwk>!2!#kfjdkw>!2!!=?b#kqfe>!kwws9,,ttt-pwzof>!gjpsobz9mlmf8!=bowfqmbwf!#wzsf>!bssoj.,,T0@,,GWG#[KWNO#2-3#foopsb`jmd>!3!#`foosbg#wzsf>!kjggfm!#ubovf>!,b=%maps8?psbm#qlof>!p\t?jmsvw#wzsf>!kjggfm!#obmdvbdf>!IbubP`qjsw!##gl`vnfmw-dfwFofnfmwpAd>!3!#`foopsb`jmd>!3!#zsf>!wf{w,`pp!#nfgjb>!wzsf>$wf{w,ibubp`qjsw$tjwk#wkf#f{`fswjlm#le#zsf>!wf{w,`pp!#qfo>!pw#kfjdkw>!2!#tjgwk>!2!#>$(fm`lgfVQJ@lnslmfmw+?ojmh#qfo>!bowfqmbwf!#\talgz/#wq/#jmsvw/#wf{wnfwb#mbnf>!qlalwp!#`lmnfwklg>!slpw!#b`wjlm>!=\t?b#kqfe>!kwws9,,ttt-`pp!#qfo>!pwzofpkffw!#?,gju=?,gju=?gju#`obppobmdvbdf>!ibubp`qjsw!=bqjb.kjggfm>!wqvf!=.[?qjsw!#wzsf>!wf{w,ibubpo>38~*+*8\t+evm`wjlm+*xab`hdqlvmg.jnbdf9#vqo+,b=?,oj=?oj=?b#kqfe>!k\n\n?oj=?b#kqfe>!kwws9,,bwlq!#bqjb.kjggfm>!wqv=#?b#kqfe>!kwws9,,ttt-obmdvbdf>!ibubp`qjsw!#,lswjlm=\t?lswjlm#ubovf,gju=?,gju=?gju#`obpp>qbwlq!#bqjb.kjggfm>!wqf>+mft#Gbwf*-dfwWjnf+*slqwvdv/Fp#+gl#Aqbpjo*<R=l<_<\\<Q<T<[<\\=j<T<T<^<R<[<P<R<Z<Q<R=m=n=`<R<]=l<\\<[<R<^<\\<Q<T=c=l<Y<_<T=m=n=l<\\=j<T<T<^<R<[<P<R<Z<Q<R=m=n<T<R<]=c<[<\\=n<Y<W=`<Q<\\?\"GL@WZSF#kwno#SVAOJ@#!mw.Wzsf!#`lmwfmw>!wf{w,?nfwb#kwws.frvju>!@lmwfqbmpjwjlmbo,,FM!#!kwws9?kwno#{nomp>!kwws9,,ttt.,,T0@,,GWG#[KWNO#2-3#WGWG,{kwno2.wqbmpjwjlmbo,,ttt-t0-lqd,WQ,{kwno2,sf#>#$wf{w,ibubp`qjsw$8?nfwb#mbnf>!gfp`qjswjlmsbqfmwMlgf-jmpfqwAfelqf?jmsvw#wzsf>!kjggfm!#mbip!#wzsf>!wf{w,ibubp`qj+gl`vnfmw*-qfbgz+evm`wjp`qjsw#wzsf>!wf{w,ibubpjnbdf!#`lmwfmw>!kwws9,,VB.@lnsbwjaof!#`lmwfmw>wno8#`kbqpfw>vwe.;!#,=\tojmh#qfo>!pklqw`vw#j`lm?ojmh#qfo>!pwzofpkffw!#?,p`qjsw=\t?p`qjsw#wzsf>>#gl`vnfmw-`qfbwfFofnfm?b#wbqdfw>!\\aobmh!#kqfe>#gl`vnfmw-dfwFofnfmwpAjmsvw#wzsf>!wf{w!#mbnf>b-wzsf#>#$wf{w,ibubp`qjmsvw#wzsf>!kjggfm!#mbnfkwno8#`kbqpfw>vwe.;!#,=gwg!=\t?kwno#{nomp>!kwws.,,T0@,,GWG#KWNO#7-32#WfmwpAzWbdMbnf+$p`qjsw$*jmsvw#wzsf>!kjggfm!#mbn?p`qjsw#wzsf>!wf{w,ibubp!#pwzof>!gjpsobz9mlmf8!=gl`vnfmw-dfwFofnfmwAzJg+>gl`vnfmw-`qfbwfFofnfmw+$#wzsf>$wf{w,ibubp`qjsw$jmsvw#wzsf>!wf{w!#mbnf>!g-dfwFofnfmwpAzWbdMbnf+pmj`bo!#kqfe>!kwws9,,ttt-@,,GWG#KWNO#7-32#Wqbmpjw?pwzof#wzsf>!wf{w,`pp!=\t\t?pwzof#wzsf>!wf{w,`pp!=jlmbo-gwg!=\t?kwno#{nomp>kwws.frvju>!@lmwfmw.Wzsfgjmd>!3!#`foopsb`jmd>!3!kwno8#`kbqpfw>vwe.;!#,=\t#pwzof>!gjpsobz9mlmf8!=??oj=?b#kqfe>!kwws9,,ttt-#wzsf>$wf{w,ibubp`qjsw$=<X<Y=c=n<Y<W=`<Q<R=m=n<T=m<R<R=n<^<Y=n=m=n<^<T<T<S=l<R<T<[<^<R<X=m=n<^<\\<]<Y<[<R<S<\\=m<Q<R=m=n<T\x0CHF\x0CIm\x0CHT\x0CIa\x0CHH\x0CHS\x0CHy\x0CHR\x0CHy\x0CHR\x0CHn\x0CH{\x0CIa\x0CH\\\x0CIk\x0CHT\x0CHe\x0CHD\x0CIa\x0CHU\x0CIg\x0CHn\x0CHD\x0CIk\x0CHY\x0CHS\x0CHK\x0CHR\x0CHD\x0CHT\x0CHA\x0CHR\x0CHG\x0CHS\x0CHy\x0CIa\x0CHT\x0CHS\x0CHn\x0CH{\x0CHT\x0CIm\x0CH\\\x0CHy\x0CIa\x0CH[\x0CHS\x0CHH\x0CHy\x0CIe\x0CHF\x0CIl\x0CH\\\x0CHR\x0CHk\x0CHs\x0CHY\x0CHS\x0CHp\x0CIa\x0CHr\x0CHR\x0CHF\x0CHD\x0CHy\x0CHR\x0CH\\\x0CIa\x0CH\\\x0CHY\x0CHR\x0CHd\x0CHT\x0CHy\x0CIa\x0CH\\\x0CHS\x0CHC\x0CHH\x0CHR", "\u06F7%\u018C'T%\u0085'W%\u00D7%O%g%\u00A6&\u0193%\u01E5&>&*&'&^&\u0088\u0178\u0C3E&\u01AD&\u0192&)&^&%&'&\u0082&P&1&\u00B1&3&]&m&u&E&t&C&\u00CF&V&V&/&>&6&\u0F76\u177Co&p&@&E&M&P&x&@&F&e&\u00CC&7&:&(&D&0&C&)&.&F&-&1&(&L&F&1\u025E*\u03EA\u21F3&\u1372&K&;&)&E&H&P&0&?&9&V&\u0081&-&v&a&,&E&)&?&=&'&'&B&\u0D2E&\u0503&\u0316*&*8&%&%&&&%,)&\u009A&>&\u0086&7&]&F&2&>&J&6&n&2&%&?&\u008E&2&6&J&g&-&0&,&*&J&*&O&)&6&(&<&B&N&.&P&@&2&.&W&M&%\u053C\u0084(,(<&,&\u03DA&\u18C7&-&,(%&(&%&(\u013B0&X&D&\u0081&j&'&J&(&.&B&3&Z&R&h&3&E&E&<\u00C6-\u0360\u1EF3&%8?&@&,&Z&@&0&J&,&^&x&_&6&C&6&C\u072C\u2A25&f&-&-&-&-&,&J&2&8&z&8&C&Y&8&-&d&\u1E78\u00CC-&7&1&F&7&t&W&7&I&.&.&^&=\u0F9C\u19D3&8(>&/&/&\u077B')'\u1065')'%@/&0&%\u043E\u09C0*&*@&C\u053D\u05D4\u0274\u05EB4\u0DD7\u071A\u04D16\u0D84&/\u0178\u0303Z&*%\u0246\u03FF&\u0134&1\u00A8\u04B4\u0174", dictionarySizeBits, "AAAAKKLLKKKKKJJIHHIHHGGFF")
+	setData(dictionaryData, dictionarySizeBits)
+}
+
+func valueOf(x int32) string {
+	return strconv.FormatInt(int64(x), 10)
+}
+
+func closeInput(s *_State) {
+	s.input = nil
+}
+
+func toUsASCIIBytes(src string) []int8 {
+	var i int32
+	var n int32 = int32(len(src))
+	var result []int8 = make([]int8, n)
+	for i = 0; i < n; i++ {
+		result[i] = int8(src[i])
+	}
+	return result
+}
+
+func makeError(s *_State, code int32) int32 {
+	if code >= 0 {
+		return code
+	}
+	if s.runningState >= 0 {
+		s.runningState = code
+	}
+	return code
+}
+
+// GENERATED CODE END
diff --git a/go/brotli/go.mod b/go/brotli/go.mod
new file mode 100644
index 0000000..ccb019e
--- /dev/null
+++ b/go/brotli/go.mod
@@ -0,0 +1 @@
+module github.com/google/brotli/go/brotli
diff --git a/go/brotli/reader.go b/go/brotli/reader.go
new file mode 100644
index 0000000..545833a
--- /dev/null
+++ b/go/brotli/reader.go
@@ -0,0 +1,131 @@
+// Copyright 2025 Google Inc. All Rights Reserved.
+//
+// Distributed under MIT license.
+// See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+
+package brotli
+
+import (
+	"bytes"
+	"errors"
+	"io"
+	"io/ioutil"
+	"strconv"
+	"unsafe"
+)
+
+// ReaderOptions optional parameters for constructing a Reader.
+type ReaderOptions struct {
+	RawDictionary []byte
+	EagerOutput   bool
+	LargeWindow   bool
+}
+
+// Reader implements io.Reader by decoding Brotli stream from an underlying Reader.
+type Reader struct {
+	initialized bool
+	closed      bool
+	options     ReaderOptions
+	state       *_State
+}
+
+var errDecodeError = errors.New("brotli: decode error")
+var errReaderClosed = errors.New("brotli: Reader is closed")
+
+func toErr(errorCode int32) error {
+	if errorCode >= 0 {
+		panic("brotli: non-negative error code")
+	}
+	if errorCode <= -21 {
+		panic("brotli: panic error code: " + strconv.Itoa(int(errorCode)))
+	}
+	return errDecodeError
+}
+
+// NewReader initializes new Reader instance.
+func NewReader(src io.Reader) io.ReadCloser {
+	return NewReaderWithOptions(src, ReaderOptions{})
+}
+
+// NewReaderWithOptions initializes new Reader instance with given options.
+func NewReaderWithOptions(src io.Reader, options ReaderOptions) io.ReadCloser {
+	this := &Reader{
+		options:     options,
+		state:       makeState(),
+		initialized: false,
+		closed:      false,
+	}
+	this.state.input = &src
+	return this
+}
+
+// Read implements io.Reader.
+func (r *Reader) Read(p []byte) (n int, err error) {
+	if r.closed {
+		return 0, errReaderClosed
+	}
+	if !r.initialized {
+		if errorCode := initState(r.state); errorCode < 0 {
+			return 0, toErr(errorCode)
+		}
+		if r.options.EagerOutput {
+			if errorCode := enableEagerOutput(r.state); errorCode < 0 {
+				return 0, toErr(errorCode)
+			}
+		}
+		if r.options.LargeWindow {
+			if errorCode := enableLargeWindow(r.state); errorCode < 0 {
+				return 0, toErr(errorCode)
+			}
+		}
+		dictionaryLen := len(r.options.RawDictionary)
+		if dictionaryLen > 0 {
+			dictionatyInt8 := unsafe.Slice((*int8)(unsafe.Pointer(&r.options.RawDictionary[0])), dictionaryLen)
+			if errorCode := attachDictionaryChunk(r.state, dictionatyInt8); errorCode < 0 {
+				return 0, toErr(errorCode)
+			}
+		}
+		r.initialized = true
+	}
+
+	length := len(p)
+	buf := unsafe.Slice((*int8)(unsafe.Pointer(&p[0])), length)
+	r.state.output = buf
+	r.state.outputOffset = 0
+	r.state.outputLength = int32(length)
+	r.state.outputUsed = 0
+	if errorCode := decompress(r.state); errorCode < 0 {
+		return 0, toErr(errorCode)
+	}
+	length = int(r.state.outputUsed)
+	if length == 0 {
+		return 0, io.EOF
+	}
+	return length, nil
+}
+
+// Close implements io.Closer.
+func (r *Reader) Close() error {
+	r.closed = true
+	// If close is asynchronous, then initialized could be still false,
+	// even if decoder is (paritally) initialized.
+	if r.initialized {
+		if errorCode := close(r.state); errorCode < 0 {
+			return toErr(errorCode)
+		}
+	}
+	closeInput(r.state)
+	return nil
+}
+
+// Decode decodes Brotli encoded data.
+func Decode(encodedData []byte) ([]byte, error) {
+	return DecodeWithRawDictionary(encodedData, nil)
+}
+
+// DecodeWithRawDictionary decodes Brotli encoded data with shared dictionary.
+func DecodeWithRawDictionary(encodedData []byte, dictionary []byte) ([]byte, error) {
+	r := NewReaderWithOptions(bytes.NewReader(encodedData), ReaderOptions{RawDictionary: dictionary})
+	defer r.Close()
+	return ioutil.ReadAll(r)
+}
diff --git a/go/brotli/synth_test.go b/go/brotli/synth_test.go
new file mode 100644
index 0000000..fda90b4
--- /dev/null
+++ b/go/brotli/synth_test.go
@@ -0,0 +1,2290 @@
+package synth_test
+
+import (
+	"testing"
+
+	"google3/third_party/brotli/go/brotli/brotli"
+)
+
+func verify(t *testing.T, compressed []uint8, expectSuccess bool, expectedOutput string) {
+	actual, err := brotli.Decode(compressed)
+	success := true
+	if err != nil {
+		success = false
+	}
+	if success != expectSuccess {
+		t.Fatalf("success = %v, expectSuccess = %v", success, expectSuccess)
+	}
+	if !expectSuccess {
+		return
+	}
+	same := true
+	if len(actual) == len(expectedOutput) {
+		for i := 0; i < len(expectedOutput); i++ {
+			if actual[i] != expectedOutput[i] {
+				same = false
+			}
+		}
+	} else {
+		same = false
+	}
+	if !same {
+		t.Fatalf("Expected: %v\nActual: %v", expectedOutput, actual)
+	}
+}
+
+func times(n int, pattern string) string {
+	k := len(pattern)
+	result := make([]uint8, n*k)
+	for i := 0; i < n; i++ {
+		offset := i * k
+		for j := 0; j < k; j++ {
+			result[offset+j] = pattern[j]
+		}
+	}
+	return string(result)
+}
+
+/* GENERATED CODE START */
+
+func TestAllTransforms10(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0xfc, 0x05, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x13, 0x7c,
+		0x84, 0x26, 0xf8, 0x04, 0x10, 0x4c, 0xf0, 0x89, 0x38, 0x30, 0xc1, 0x27,
+		0x4e, 0xc1, 0x04, 0x9f, 0x64, 0x06, 0x26, 0xf8, 0x24, 0x3f, 0x34, 0xc1,
+		0x27, 0x7d, 0x82, 0x09, 0x3e, 0xe9, 0x16, 0x4d, 0xf0, 0xc9, 0xd2, 0xc0,
+		0x04, 0x9f, 0x0c, 0x8f, 0x4c, 0xf0, 0xc9, 0x06, 0xd1, 0x04, 0x9f, 0x6c,
+		0x92, 0x4d, 0xf0, 0xc9, 0x39, 0xc1, 0x04, 0x9f, 0xdc, 0x94, 0x4c, 0xf0,
+		0xc9, 0x69, 0xd1, 0x04, 0x9f, 0x3c, 0x98, 0x4d, 0xf0, 0x29, 0x9c, 0x81,
+		0x09, 0x3e, 0x45, 0x37, 0x31, 0xc1, 0xa7, 0x60, 0x47, 0x26, 0xf8, 0x14,
+		0xfa, 0xcc, 0x04, 0x9f, 0xc2, 0x20, 0x9a, 0xe0, 0x53, 0x48, 0x54, 0x13,
+		0x7c, 0x8a, 0x8f, 0x6c, 0x82, 0x4f, 0xb1, 0xd2, 0x4d, 0xf0, 0x29, 0x67,
+		0x82, 0x09, 0x3e, 0xe5, 0x4f, 0x31, 0xc1, 0xa7, 0x7c, 0x4a, 0x26, 0xf8,
+		0x94, 0x57, 0xcd, 0x04, 0x9f, 0x12, 0x2c, 0x9a, 0xe0, 0x53, 0xba, 0x55,
+		0x13, 0x7c, 0xca, 0xbf, 0x6c, 0x82, 0x4f, 0xb9, 0xd8, 0x4d, 0xf0, 0xa9,
+		0x30, 0x03, 0x13, 0x7c, 0x2a, 0xd2, 0xc2, 0x04, 0x9f, 0x4a, 0x36, 0x31,
+		0xc1, 0xa7, 0xca, 0x6d, 0x4c, 0xf0, 0xa9, 0x94, 0x23, 0x13, 0x7c, 0x2a,
+		0xeb, 0xca, 0x04, 0x9f, 0xea, 0x3c, 0x33, 0xc1, 0xa7, 0xb2, 0xef, 0x4c,
+		0xf0, 0xa9, 0xf8, 0x43, 0x13, 0x7c, 0xaa, 0x00, 0xd3, 0x04, 0x9f, 0x2a,
+		0x42, 0x35, 0xc1, 0xa7, 0xc2, 0x70, 0x4d, 0xf0, 0xa9, 0x52, 0x64, 0x13,
+		0x7c, 0x2a, 0x1a, 0xdb, 0x04, 0x9f, 0x6a, 0x48, 0x37, 0xc1, 0xa7, 0x92,
+		0xf2, 0x4d, 0xf0, 0xa9, 0xc3, 0x04, 0x13, 0x7c, 0xea, 0x32, 0xc3, 0x04,
+		0x9f, 0x7a, 0x4e, 0x31, 0xc1, 0xa7, 0x06, 0x74, 0x4c, 0xf0, 0xa9, 0x19,
+		0x25, 0x13, 0x7c, 0x6a, 0x4d, 0xcb, 0x04, 0x9f, 0x1a, 0x55, 0x33, 0xc1,
+		0xa7, 0x56, 0xf5, 0x4c, 0xf0, 0xa9, 0x5d, 0x45, 0x13, 0x7c, 0xea, 0x59,
+		0xd3, 0x04, 0x9f, 0xfa, 0x57, 0x35, 0xc1, 0xa7, 0x66, 0x76, 0x4d, 0xf0,
+		0xa9, 0x9f, 0x65, 0x13, 0x7c, 0x6a, 0x6f, 0xdb, 0x04, 0x9f, 0x9a, 0x5d,
+		0x37, 0xc1, 0xa7, 0x06, 0xf8, 0x4d, 0xf0, 0x69, 0x0c, 0x06, 0x26, 0xf8,
+		0x34, 0x08, 0x07, 0x13, 0x7c, 0x1a, 0x8b, 0x85, 0x09, 0x3e, 0x8d, 0xc8,
+		0xc3, 0x04, 0x9f, 0xe6, 0x65, 0x62, 0x82, 0x4f, 0xb3, 0x73, 0x31, 0xc1,
+		0xa7, 0x41, 0xda, 0x98, 0xe0, 0xd3, 0x54, 0x7d, 0x4c, 0xf0, 0x69, 0xc4,
+		0x46, 0x26, 0xf8, 0x34, 0x72, 0x27, 0x13, 0x7c, 0x1a, 0xc5, 0x95, 0x09,
+		0x3e, 0x8d, 0xe5, 0xcb, 0x04, 0x9f, 0x06, 0x75, 0x66, 0x82, 0x4f, 0x43,
+		0x7b, 0x33, 0xc1, 0xa7, 0x09, 0xde, 0x99, 0xe0, 0xd3, 0x34, 0xff, 0x4c,
+		0xf0, 0x69, 0xb2, 0x87, 0x26, 0xf8, 0x34, 0xe9, 0x47, 0x13, 0x7c, 0x9a,
+		0xfb, 0xa5, 0x09, 0x3e, 0x4d, 0x01, 0xd4, 0x04, 0x9f, 0x46, 0x82, 0x6a,
+		0x82, 0x4f, 0x03, 0x82, 0x35, 0xc1, 0xa7, 0x61, 0xe1, 0x9a, 0xe0, 0xd3,
+		0xe4, 0x80, 0x4d, 0xf0, 0x69, 0x8a, 0xc8, 0x26, 0xf8, 0x34, 0x52, 0x68,
+		0x13, 0x7c, 0x9a, 0x2f, 0xb6, 0x09, 0x3e, 0x8d, 0x1b, 0xdc, 0x04, 0x9f,
+		0x86, 0x8f, 0x6e, 0x82, 0x4f, 0xb3, 0x88, 0x37, 0xc1, 0xa7, 0xd9, 0xe4,
+		0x9b, 0xe0, 0xd3, 0x9e, 0x02, 0x4c, 0xf0, 0x69, 0x6d, 0x09, 0x26, 0xf8,
+		0xb4, 0xc3, 0x08, 0x13, 0x7c, 0x5a, 0x68, 0x86, 0x09, 0x3e, 0xad, 0x37,
+		0xc4, 0x04, 0x9f, 0x56, 0x9d, 0x62, 0x82, 0x4f, 0x9b, 0x8f, 0x31, 0xc1,
+		0xa7, 0x2d, 0xe8, 0x98, 0xe0, 0xd3, 0x4a, 0x84, 0x4c, 0xf0, 0x69, 0x3f,
+		0x4a, 0x26, 0xf8, 0xb4, 0x2c, 0x29, 0x13, 0x7c, 0xda, 0x9c, 0x96, 0x09,
+		0x3e, 0x2d, 0x52, 0xcc, 0x04, 0x9f, 0xb6, 0xaa, 0x66, 0x82, 0x4f, 0x2b,
+		0x96, 0x33, 0xc1, 0xa7, 0x7d, 0xeb, 0x99, 0xe0, 0xd3, 0xf6, 0x05, 0x4d,
+		0xf0, 0x69, 0x17, 0x8b, 0x26, 0xf8, 0xb4, 0x97, 0x49, 0x13, 0x7c, 0xda,
+		0xd1, 0xa6, 0x09, 0x3e, 0x2d, 0x6c, 0xd4, 0x04, 0x9f, 0xb6, 0xb7, 0x6a,
+		0x82, 0x4f, 0xab, 0x9c, 0x35, 0xc1, 0xa7, 0xc5, 0xee, 0x9a, 0xe0, 0xd3,
+		0x9a, 0x87, 0x4d, 0xf0, 0x69, 0xe9, 0xcb,
+	}
+	verify(t,
+		/*
+		 * // The stream consists of word "time" with all possible transforms.
+		 * main_header
+		 * metablock_header_easy: 1533, 1
+		 * command_easy: 10, "|", 2 // = 0 << 10 + 1 + 1
+		 * command_easy: 10, "|", 1037 // = 1 << 10 + 1 + 12
+		 * command_easy: 10, "|", 2073 // = 2 << 10 + 1 + 24
+		 * command_easy: 10, "|", 3110 // = 3 << 10 + 1 + 37
+		 * command_easy: 10, "|", 4144 // = 4 << 10 + 1 + 47
+		 * command_easy: 10, "|", 5180 // = 5 << 10 + 1 + 59
+		 * command_easy: 10, "|", 6220 // = 6 << 10 + 1 + 75
+		 * command_easy: 10, "|", 7256 // = 7 << 10 + 1 + 87
+		 * command_easy: 10, "|", 8294 // = 8 << 10 + 1 + 101
+		 * command_easy: 10, "|", 9333 // = 9 << 10 + 1 + 116
+		 * command_easy: 10, "|", 10368 // = 10 << 10 + 1 + 127
+		 * command_easy: 10, "|", 11408 // = 11 << 10 + 1 + 143
+		 * command_easy: 10, "|", 12441 // = 12 << 10 + 1 + 152
+		 * command_easy: 10, "|", 13475 // = 13 << 10 + 1 + 162
+		 * command_easy: 10, "|", 14513 // = 14 << 10 + 1 + 176
+		 * command_easy: 10, "|", 15550 // = 15 << 10 + 1 + 189
+		 * command_easy: 10, "|", 16587 // = 16 << 10 + 1 + 202
+		 * command_easy: 10, "|", 17626 // = 17 << 10 + 1 + 217
+		 * command_easy: 10, "|", 18665 // = 18 << 10 + 1 + 232
+		 * command_easy: 10, "|", 19703 // = 19 << 10 + 1 + 246
+		 * command_easy: 10, "|", 20739 // = 20 << 10 + 1 + 258
+		 * command_easy: 10, "|", 21775 // = 21 << 10 + 1 + 270
+		 * command_easy: 10, "|", 22812 // = 22 << 10 + 1 + 283
+		 * command_easy: 10, "|", 23848 // = 23 << 10 + 1 + 295
+		 * command_easy: 10, "|", 24880 // = 24 << 10 + 1 + 303
+		 * command_easy: 10, "|", 25916 // = 25 << 10 + 1 + 315
+		 * command_easy: 10, "|", 26956 // = 26 << 10 + 1 + 331
+		 * command_easy: 10, "|", 27988 // = 27 << 10 + 1 + 339
+		 * command_easy: 10, "|", 29021 // = 28 << 10 + 1 + 348
+		 * command_easy: 10, "|", 30059 // = 29 << 10 + 1 + 362
+		 * command_easy: 10, "|", 31100 // = 30 << 10 + 1 + 379
+		 * command_easy: 10, "|", 32136 // = 31 << 10 + 1 + 391
+		 * command_easy: 10, "|", 33173 // = 32 << 10 + 1 + 404
+		 * command_easy: 10, "|", 34209 // = 33 << 10 + 1 + 416
+		 * command_easy: 10, "|", 35247 // = 34 << 10 + 1 + 430
+		 * command_easy: 10, "|", 36278 // = 35 << 10 + 1 + 437
+		 * command_easy: 10, "|", 37319 // = 36 << 10 + 1 + 454
+		 * command_easy: 10, "|", 38355 // = 37 << 10 + 1 + 466
+		 * command_easy: 10, "|", 39396 // = 38 << 10 + 1 + 483
+		 * command_easy: 10, "|", 40435 // = 39 << 10 + 1 + 498
+		 * command_easy: 10, "|", 41465 // = 40 << 10 + 1 + 504
+		 * command_easy: 10, "|", 42494 // = 41 << 10 + 1 + 509
+		 * command_easy: 10, "|", 43534 // = 42 << 10 + 1 + 525
+		 * command_easy: 10, "|", 44565 // = 43 << 10 + 1 + 532
+		 * command_easy: 10, "|", 45606 // = 44 << 10 + 1 + 549
+		 * command_easy: 10, "|", 46641 // = 45 << 10 + 1 + 560
+		 * command_easy: 10, "|", 47680 // = 46 << 10 + 1 + 575
+		 * command_easy: 10, "|", 48719 // = 47 << 10 + 1 + 590
+		 * command_easy: 10, "|", 49758 // = 48 << 10 + 1 + 605
+		 * command_easy: 10, "|", 50786 // = 49 << 10 + 1 + 609
+		 * command_easy: 10, "|", 51824 // = 50 << 10 + 1 + 623
+		 * command_easy: 10, "|", 52861 // = 51 << 10 + 1 + 636
+		 * command_easy: 10, "|", 53897 // = 52 << 10 + 1 + 648
+		 * command_easy: 10, "|", 54935 // = 53 << 10 + 1 + 662
+		 * command_easy: 10, "|", 55973 // = 54 << 10 + 1 + 676
+		 * command_easy: 10, "|", 56999 // = 55 << 10 + 1 + 678
+		 * command_easy: 10, "|", 58027 // = 56 << 10 + 1 + 682
+		 * command_easy: 10, "|", 59056 // = 57 << 10 + 1 + 687
+		 * command_easy: 10, "|", 60092 // = 58 << 10 + 1 + 699
+		 * command_easy: 10, "|", 61129 // = 59 << 10 + 1 + 712
+		 * command_easy: 10, "|", 62156 // = 60 << 10 + 1 + 715
+		 * command_easy: 10, "|", 63195 // = 61 << 10 + 1 + 730
+		 * command_easy: 10, "|", 64233 // = 62 << 10 + 1 + 744
+		 * command_easy: 10, "|", 65277 // = 63 << 10 + 1 + 764
+		 * command_easy: 10, "|", 66307 // = 64 << 10 + 1 + 770
+		 * command_easy: 10, "|", 67333 // = 65 << 10 + 1 + 772
+		 * command_easy: 10, "|", 68371 // = 66 << 10 + 1 + 786
+		 * command_easy: 10, "|", 69407 // = 67 << 10 + 1 + 798
+		 * command_easy: 10, "|", 70444 // = 68 << 10 + 1 + 811
+		 * command_easy: 10, "|", 71480 // = 69 << 10 + 1 + 823
+		 * command_easy: 10, "|", 72517 // = 70 << 10 + 1 + 836
+		 * command_easy: 10, "|", 73554 // = 71 << 10 + 1 + 849
+		 * command_easy: 10, "|", 74591 // = 72 << 10 + 1 + 862
+		 * command_easy: 10, "|", 75631 // = 73 << 10 + 1 + 878
+		 * command_easy: 10, "|", 76679 // = 74 << 10 + 1 + 902
+		 * command_easy: 10, "|", 77715 // = 75 << 10 + 1 + 914
+		 * command_easy: 10, "|", 78757 // = 76 << 10 + 1 + 932
+		 * command_easy: 10, "|", 79793 // = 77 << 10 + 1 + 944
+		 * command_easy: 10, "|", 80830 // = 78 << 10 + 1 + 957
+		 * command_easy: 10, "|", 81866 // = 79 << 10 + 1 + 969
+		 * command_easy: 10, "|", 82902 // = 80 << 10 + 1 + 981
+		 * command_easy: 10, "|", 83942 // = 81 << 10 + 1 + 997
+		 * command_easy: 10, "|", 84980 // = 82 << 10 + 1 + 1011
+		 * command_easy: 10, "|", 86018 // = 83 << 10 + 1 + 1025
+		 * command_easy: 10, "|", 87055 // = 84 << 10 + 1 + 1038
+		 * command_easy: 10, "|", 88093 // = 85 << 10 + 1 + 1052
+		 * command_easy: 10, "|", 89129 // = 86 << 10 + 1 + 1064
+		 * command_easy: 10, "|", 90166 // = 87 << 10 + 1 + 1077
+		 * command_easy: 10, "|", 91202 // = 88 << 10 + 1 + 1089
+		 * command_easy: 10, "|", 92239 // = 89 << 10 + 1 + 1102
+		 * command_easy: 10, "|", 93276 // = 90 << 10 + 1 + 1115
+		 * command_easy: 10, "|", 94315 // = 91 << 10 + 1 + 1130
+		 * command_easy: 10, "|", 95353 // = 92 << 10 + 1 + 1144
+		 * command_easy: 10, "|", 96392 // = 93 << 10 + 1 + 1159
+		 * command_easy: 10, "|", 97432 // = 94 << 10 + 1 + 1175
+		 * command_easy: 10, "|", 98468 // = 95 << 10 + 1 + 1187
+		 * command_easy: 10, "|", 99507 // = 96 << 10 + 1 + 1202
+		 * command_easy: 10, "|", 100544 // = 97 << 10 + 1 + 1215
+		 * command_easy: 10, "|", 101581 // = 98 << 10 + 1 + 1228
+		 * command_easy: 10, "|", 102619 // = 99 << 10 + 1 + 1242
+		 * command_easy: 10, "|", 103655 // = 100 << 10 + 1 + 1254
+		 * command_easy: 10, "|", 104694 // = 101 << 10 + 1 + 1269
+		 * command_easy: 10, "|", 105730 // = 102 << 10 + 1 + 1281
+		 * command_easy: 10, "|", 106767 // = 103 << 10 + 1 + 1294
+		 * command_easy: 10, "|", 107804 // = 104 << 10 + 1 + 1307
+		 * command_easy: 10, "|", 108841 // = 105 << 10 + 1 + 1320
+		 * command_easy: 10, "|", 109878 // = 106 << 10 + 1 + 1333
+		 * command_easy: 10, "|", 110917 // = 107 << 10 + 1 + 1348
+		 * command_easy: 10, "|", 111954 // = 108 << 10 + 1 + 1361
+		 * command_easy: 10, "|", 112991 // = 109 << 10 + 1 + 1374
+		 * command_easy: 10, "|", 114028 // = 110 << 10 + 1 + 1387
+		 * command_easy: 10, "|", 115066 // = 111 << 10 + 1 + 1401
+		 * command_easy: 10, "|", 116104 // = 112 << 10 + 1 + 1415
+		 * command_easy: 10, "|", 117140 // = 113 << 10 + 1 + 1427
+		 * command_easy: 10, "|", 118176 // = 114 << 10 + 1 + 1439
+		 * command_easy: 10, "|", 119213 // = 115 << 10 + 1 + 1452
+		 * command_easy: 10, "|", 120250 // = 116 << 10 + 1 + 1465
+		 * command_easy: 10, "|", 121287 // = 117 << 10 + 1 + 1478
+		 * command_easy: 10, "|", 122325 // = 118 << 10 + 1 + 1492
+		 * command_easy: 10, "|", 123363 // = 119 << 10 + 1 + 1506
+		 * command_easy: 10, "|", 124401 // = 120 << 10 + 1 + 1520
+		 */
+		compressed,
+		true,
+		"|categories|categories | categories |ategories|Categories |categories th"+
+			"e | categories|s categories |categories of |Categories|categories and |t"+
+			"egories|categorie|, categories |categories, | Categories |categories in "+
+			"|categories to |e categories |categories\"|categories.|categories\">|cat"+
+			"egories\n|categor|categories]|categories for |egories|categori|categorie"+
+			"s a |categories that | Categories|categories. |.categories| categories, "+
+			"|gories|categories with |categories'|categories from |categories by |ori"+
+			"es|ries| the categories|catego|categories. The |CATEGORIES|categories on"+
+			" |categories as |categories is |cat|categorieing |categories\n\t|categor"+
+			"ies:| categories. |categoriesed |s|ies|cate|categories(|Categories, |ca|"+
+			"categories at |categoriesly | the categories of |categ|c| Categories, |C"+
+			"ategories\"|.categories(|CATEGORIES |Categories\">|categories=\"| catego"+
+			"ries.|.com/categories| the categories of the |Categories'|categories. Th"+
+			"is |categories,|.categories |Categories(|Categories.|categories not | ca"+
+			"tegories=\"|categorieser | CATEGORIES |categoriesal | CATEGORIES|categor"+
+			"ies='|CATEGORIES\"|Categories. | categories(|categoriesful | Categories."+
+			" |categoriesive |categoriesless |CATEGORIES'|categoriesest | Categories."+
+			"|CATEGORIES\">| categories='|Categories,|categoriesize |CATEGORIES.|"+
+			"\302\240categories| categories,|Categories=\"|CATEGORIES=\"|categoriesou"+
+			"s |CATEGORIES, |Categories='| Categories,| CATEGORIES=\"| CATEGORIES, |C"+
+			"ATEGORIES,|CATEGORIES(|CATEGORIES. | CATEGORIES.|CATEGORIES='| CATEGORIE"+
+			"S. | Categories=\"| CATEGORIES='| Categories='",
+	)
+}
+
+func TestAllTransforms4(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x40, 0x03, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x51, 0x3e,
+		0x42, 0x51, 0x3e, 0x81, 0x02, 0x51, 0x3e, 0x11, 0x04, 0xa2, 0x7c, 0xe2,
+		0x0b, 0x44, 0xf9, 0x24, 0x1b, 0x10, 0xe5, 0x93, 0x84, 0x50, 0x94, 0x4f,
+		0xba, 0x02, 0x51, 0x3e, 0x69, 0x0c, 0x45, 0xf9, 0x64, 0x39, 0x20, 0xca,
+		0x27, 0x13, 0x22, 0x51, 0x3e, 0xd9, 0x11, 0x8a, 0xf2, 0xc9, 0xa2, 0x58,
+		0x94, 0x4f, 0x4e, 0x05, 0xa2, 0x7c, 0x72, 0x2c, 0x12, 0xe5, 0x93, 0x83,
+		0xa1, 0x28, 0x9f, 0xfc, 0x8c, 0x45, 0xf9, 0x14, 0x6e, 0x40, 0x94, 0x4f,
+		0x71, 0x47, 0x44, 0xf9, 0x14, 0x80, 0x48, 0x94, 0x4f, 0x81, 0xc8, 0x44,
+		0xf9, 0x14, 0x8e, 0x50, 0x94, 0x4f, 0x41, 0x49, 0x45, 0xf9, 0x14, 0x9b,
+		0x58, 0x94, 0x4f, 0x11, 0xca, 0x45, 0xf9, 0x94, 0xa3, 0x40, 0x94, 0x4f,
+		0x99, 0x4a, 0x44, 0xf9, 0x94, 0xb3, 0x48, 0x94, 0x4f, 0x59, 0xcb, 0x44,
+		0xf9, 0x94, 0xb8, 0x50, 0x94, 0x4f, 0x09, 0x4c, 0x45, 0xf9, 0x94, 0xcb,
+		0x58, 0x94, 0x4f, 0x19, 0xcd, 0x45, 0xf9, 0x54, 0xd8, 0x80, 0x28, 0x9f,
+		0xca, 0x9b, 0x10, 0xe5, 0x53, 0x99, 0x23, 0xa2, 0x7c, 0xaa, 0x73, 0x46,
+		0x94, 0x4f, 0x25, 0x0f, 0x89, 0xf2, 0xa9, 0xf0, 0x29, 0x51, 0x3e, 0xd5,
+		0x40, 0x26, 0xca, 0xa7, 0x62, 0xe8, 0x44, 0xf9, 0x54, 0x0d, 0xa1, 0x28,
+		0x9f, 0xca, 0xa1, 0x14, 0xe5, 0x53, 0x61, 0xa4, 0xa2, 0x7c, 0xaa, 0x8c,
+		0x56, 0x94, 0x4f, 0x45, 0x12, 0x8b, 0xf2, 0xa9, 0x52, 0x6a, 0x51, 0x3e,
+		0x95, 0x4c, 0x2e, 0xca, 0xa7, 0xda, 0xe9, 0x45, 0xf9, 0xd4, 0x44, 0x81,
+		0x28, 0x9f, 0xba, 0xa8, 0x10, 0xe5, 0x53, 0x37, 0x25, 0xa2, 0x7c, 0x6a,
+		0xaa, 0x46, 0x94, 0x4f, 0xad, 0x15, 0x89, 0xf2, 0xa9, 0xc5, 0x2a, 0x51,
+		0x3e, 0xb5, 0x5a, 0x26, 0xca, 0xa7, 0x5e, 0xeb, 0x44, 0xf9, 0xd4, 0x6c,
+		0xa1, 0x28, 0x9f, 0xba, 0xad, 0x14, 0xe5, 0x53, 0xcf, 0xa5, 0xa2, 0x7c,
+		0x6a, 0xbd, 0x56, 0x94, 0x4f, 0xbd, 0x17, 0x8b, 0xf2, 0xa9, 0x09, 0x6b,
+		0x51, 0x3e, 0x35, 0x63, 0x2e, 0xca, 0xa7, 0xd6, 0xec, 0x45, 0xf9, 0x34,
+		0x9b, 0x01, 0x51, 0x3e, 0x0d, 0x67, 0x41, 0x94, 0x4f, 0x43, 0x9a, 0x10,
+		0xe5, 0xd3, 0xa8, 0x36, 0x44, 0xf9, 0x34, 0xb1, 0x11, 0x51, 0x3e, 0xcd,
+		0x6d, 0x45, 0x94, 0x4f, 0xe3, 0x9b, 0x11, 0xe5, 0xd3, 0x14, 0x77, 0x44,
+		0xf9, 0x34, 0xcc, 0x21, 0x51, 0x3e, 0x8d, 0x75, 0x49, 0x94, 0x4f, 0x83,
+		0x9e, 0x12, 0xe5, 0xd3, 0xb8, 0xb7, 0x44, 0xf9, 0x34, 0xfa, 0x31, 0x51,
+		0x3e, 0x0d, 0x80, 0x4d, 0x94, 0x4f, 0x73, 0xa0, 0x13, 0xe5, 0xd3, 0x34,
+		0xf8, 0x44, 0xf9, 0x34, 0x13, 0x42, 0x51, 0x3e, 0x4d, 0x87, 0x51, 0x94,
+		0x4f, 0x53, 0xa2, 0x14, 0xe5, 0xd3, 0xb4, 0x38, 0x45, 0xf9, 0x34, 0x34,
+		0x52, 0x51, 0x3e, 0x0d, 0x8f, 0x55, 0x94, 0x4f, 0x23, 0xa4, 0x15, 0xe5,
+		0xd3, 0x24, 0x79, 0x45, 0xf9, 0x34, 0x4f, 0x62, 0x51, 0x3e, 0x8d, 0x95,
+		0x59, 0x94, 0x4f, 0xd3, 0xa5, 0x16, 0xe5, 0xd3, 0x98, 0xb9, 0x45, 0xf9,
+		0x34, 0x6e, 0x72, 0x51, 0x3e, 0xcd, 0x9d, 0x5d, 0x94, 0x4f, 0x13, 0xa8,
+		0x17, 0xe5, 0xd3, 0x1c, 0xfa, 0x45, 0xf9, 0xb4, 0x90, 0x02, 0x51, 0x3e,
+		0xed, 0xa5, 0x41, 0x94, 0x4f, 0xeb, 0xa9, 0x10, 0xe5, 0xd3, 0x9a, 0x3a,
+		0x44, 0xf9, 0xb4, 0xac, 0x12, 0x51, 0x3e, 0x6d, 0xad, 0x45, 0x94, 0x4f,
+		0xbb, 0xab, 0x11, 0xe5, 0xd3, 0x0a, 0x7b, 0x44, 0xf9, 0xb4, 0xc9, 0x22,
+		0x51, 0x3e, 0x2d, 0xb4, 0x49, 0x94, 0x4f, 0x7b, 0xad, 0x12, 0xe5, 0xd3,
+		0x82, 0xbb, 0x44, 0xf9, 0xb4, 0xe7, 0x32, 0x51, 0x3e, 0xad, 0xbb, 0x4d,
+		0x94, 0x4f, 0x5b, 0xaf, 0x13, 0xe5, 0xd3, 0xf6, 0xfb, 0x44, 0xf9, 0xb4,
+		0x05, 0x43, 0x51, 0x3e, 0xed, 0xc2, 0x51, 0x94, 0x4f, 0x1b, 0xb1, 0x14,
+		0xe5, 0xd3, 0x62, 0x3c, 0x45, 0xf9, 0xb4, 0x1f, 0x53, 0x51, 0x3e, 0xad,
+		0xc9, 0x55, 0x94, 0x4f, 0xeb, 0xb2, 0x15, 0xe5, 0xd3, 0xda, 0x7c, 0x45,
+		0xf9, 0xb4, 0x3e, 0x63,
+	}
+	verify(t,
+		/*
+		 * // The stream consists of word "time" with all possible transforms.
+		 * main_header
+		 * metablock_header_easy: 833, 1
+		 * command_easy: 4, "|", 2 // = 0 << 10 + 1 + 1
+		 * command_easy: 4, "|", 1031 // = 1 << 10 + 1 + 6
+		 * command_easy: 4, "|", 2061 // = 2 << 10 + 1 + 12
+		 * command_easy: 4, "|", 3092 // = 3 << 10 + 1 + 19
+		 * command_easy: 4, "|", 4120 // = 4 << 10 + 1 + 23
+		 * command_easy: 4, "|", 5150 // = 5 << 10 + 1 + 29
+		 * command_easy: 4, "|", 6184 // = 6 << 10 + 1 + 39
+		 * command_easy: 4, "|", 7214 // = 7 << 10 + 1 + 45
+		 * command_easy: 4, "|", 8246 // = 8 << 10 + 1 + 53
+		 * command_easy: 4, "|", 9279 // = 9 << 10 + 1 + 62
+		 * command_easy: 4, "|", 10308 // = 10 << 10 + 1 + 67
+		 * command_easy: 4, "|", 11342 // = 11 << 10 + 1 + 77
+		 * command_easy: 4, "|", 12369 // = 12 << 10 + 1 + 80
+		 * command_easy: 4, "|", 13397 // = 13 << 10 + 1 + 84
+		 * command_easy: 4, "|", 14429 // = 14 << 10 + 1 + 92
+		 * command_easy: 4, "|", 15460 // = 15 << 10 + 1 + 99
+		 * command_easy: 4, "|", 16491 // = 16 << 10 + 1 + 106
+		 * command_easy: 4, "|", 17524 // = 17 << 10 + 1 + 115
+		 * command_easy: 4, "|", 18557 // = 18 << 10 + 1 + 124
+		 * command_easy: 4, "|", 19589 // = 19 << 10 + 1 + 132
+		 * command_easy: 4, "|", 20619 // = 20 << 10 + 1 + 138
+		 * command_easy: 4, "|", 21649 // = 21 << 10 + 1 + 144
+		 * command_easy: 4, "|", 22680 // = 22 << 10 + 1 + 151
+		 * command_easy: 4, "|", 23710 // = 23 << 10 + 1 + 157
+		 * command_easy: 4, "|", 24736 // = 24 << 10 + 1 + 159
+		 * command_easy: 4, "|", 25766 // = 25 << 10 + 1 + 165
+		 * command_easy: 4, "|", 26800 // = 26 << 10 + 1 + 175
+		 * command_easy: 4, "|", 27826 // = 27 << 10 + 1 + 177
+		 * command_easy: 4, "|", 28853 // = 28 << 10 + 1 + 180
+		 * command_easy: 4, "|", 29885 // = 29 << 10 + 1 + 188
+		 * command_easy: 4, "|", 30920 // = 30 << 10 + 1 + 199
+		 * command_easy: 4, "|", 31950 // = 31 << 10 + 1 + 205
+		 * command_easy: 4, "|", 32981 // = 32 << 10 + 1 + 212
+		 * command_easy: 4, "|", 34011 // = 33 << 10 + 1 + 218
+		 * command_easy: 4, "|", 35043 // = 34 << 10 + 1 + 226
+		 * command_easy: 4, "|", 36068 // = 35 << 10 + 1 + 227
+		 * command_easy: 4, "|", 37103 // = 36 << 10 + 1 + 238
+		 * command_easy: 4, "|", 38133 // = 37 << 10 + 1 + 244
+		 * command_easy: 4, "|", 39168 // = 38 << 10 + 1 + 255
+		 * command_easy: 4, "|", 40201 // = 39 << 10 + 1 + 264
+		 * command_easy: 4, "|", 41226 // = 40 << 10 + 1 + 265
+		 * command_easy: 4, "|", 42251 // = 41 << 10 + 1 + 266
+		 * command_easy: 4, "|", 43285 // = 42 << 10 + 1 + 276
+		 * command_easy: 4, "|", 44310 // = 43 << 10 + 1 + 277
+		 * command_easy: 4, "|", 45345 // = 44 << 10 + 1 + 288
+		 * command_easy: 4, "|", 46374 // = 45 << 10 + 1 + 293
+		 * command_easy: 4, "|", 47407 // = 46 << 10 + 1 + 302
+		 * command_easy: 4, "|", 48440 // = 47 << 10 + 1 + 311
+		 * command_easy: 4, "|", 49473 // = 48 << 10 + 1 + 320
+		 * command_easy: 4, "|", 50498 // = 49 << 10 + 1 + 321
+		 * command_easy: 4, "|", 51530 // = 50 << 10 + 1 + 329
+		 * command_easy: 4, "|", 52561 // = 51 << 10 + 1 + 336
+		 * command_easy: 4, "|", 53591 // = 52 << 10 + 1 + 342
+		 * command_easy: 4, "|", 54623 // = 53 << 10 + 1 + 350
+		 * command_easy: 4, "|", 55655 // = 54 << 10 + 1 + 358
+		 * command_easy: 4, "|", 56680 // = 55 << 10 + 1 + 359
+		 * command_easy: 4, "|", 57705 // = 56 << 10 + 1 + 360
+		 * command_easy: 4, "|", 58730 // = 57 << 10 + 1 + 361
+		 * command_easy: 4, "|", 59760 // = 58 << 10 + 1 + 367
+		 * command_easy: 4, "|", 60791 // = 59 << 10 + 1 + 374
+		 * command_easy: 4, "|", 61816 // = 60 << 10 + 1 + 375
+		 * command_easy: 4, "|", 62849 // = 61 << 10 + 1 + 384
+		 * command_easy: 4, "|", 63881 // = 62 << 10 + 1 + 392
+		 * command_easy: 4, "|", 64919 // = 63 << 10 + 1 + 406
+		 * command_easy: 4, "|", 65944 // = 64 << 10 + 1 + 407
+		 * command_easy: 4, "|", 66969 // = 65 << 10 + 1 + 408
+		 * command_easy: 4, "|", 68001 // = 66 << 10 + 1 + 416
+		 * command_easy: 4, "|", 69031 // = 67 << 10 + 1 + 422
+		 * command_easy: 4, "|", 70062 // = 68 << 10 + 1 + 429
+		 * command_easy: 4, "|", 71092 // = 69 << 10 + 1 + 435
+		 * command_easy: 4, "|", 72123 // = 70 << 10 + 1 + 442
+		 * command_easy: 4, "|", 73154 // = 71 << 10 + 1 + 449
+		 * command_easy: 4, "|", 74185 // = 72 << 10 + 1 + 456
+		 * command_easy: 4, "|", 75219 // = 73 << 10 + 1 + 466
+		 * command_easy: 4, "|", 76261 // = 74 << 10 + 1 + 484
+		 * command_easy: 4, "|", 77291 // = 75 << 10 + 1 + 490
+		 * command_easy: 4, "|", 78327 // = 76 << 10 + 1 + 502
+		 * command_easy: 4, "|", 79357 // = 77 << 10 + 1 + 508
+		 * command_easy: 4, "|", 80388 // = 78 << 10 + 1 + 515
+		 * command_easy: 4, "|", 81418 // = 79 << 10 + 1 + 521
+		 * command_easy: 4, "|", 82448 // = 80 << 10 + 1 + 527
+		 * command_easy: 4, "|", 83482 // = 81 << 10 + 1 + 537
+		 * command_easy: 4, "|", 84514 // = 82 << 10 + 1 + 545
+		 * command_easy: 4, "|", 85546 // = 83 << 10 + 1 + 553
+		 * command_easy: 4, "|", 86577 // = 84 << 10 + 1 + 560
+		 * command_easy: 4, "|", 87609 // = 85 << 10 + 1 + 568
+		 * command_easy: 4, "|", 88639 // = 86 << 10 + 1 + 574
+		 * command_easy: 4, "|", 89670 // = 87 << 10 + 1 + 581
+		 * command_easy: 4, "|", 90700 // = 88 << 10 + 1 + 587
+		 * command_easy: 4, "|", 91731 // = 89 << 10 + 1 + 594
+		 * command_easy: 4, "|", 92762 // = 90 << 10 + 1 + 601
+		 * command_easy: 4, "|", 93795 // = 91 << 10 + 1 + 610
+		 * command_easy: 4, "|", 94827 // = 92 << 10 + 1 + 618
+		 * command_easy: 4, "|", 95860 // = 93 << 10 + 1 + 627
+		 * command_easy: 4, "|", 96894 // = 94 << 10 + 1 + 637
+		 * command_easy: 4, "|", 97924 // = 95 << 10 + 1 + 643
+		 * command_easy: 4, "|", 98957 // = 96 << 10 + 1 + 652
+		 * command_easy: 4, "|", 99988 // = 97 << 10 + 1 + 659
+		 * command_easy: 4, "|", 101019 // = 98 << 10 + 1 + 666
+		 * command_easy: 4, "|", 102051 // = 99 << 10 + 1 + 674
+		 * command_easy: 4, "|", 103081 // = 100 << 10 + 1 + 680
+		 * command_easy: 4, "|", 104114 // = 101 << 10 + 1 + 689
+		 * command_easy: 4, "|", 105144 // = 102 << 10 + 1 + 695
+		 * command_easy: 4, "|", 106175 // = 103 << 10 + 1 + 702
+		 * command_easy: 4, "|", 107206 // = 104 << 10 + 1 + 709
+		 * command_easy: 4, "|", 108237 // = 105 << 10 + 1 + 716
+		 * command_easy: 4, "|", 109268 // = 106 << 10 + 1 + 723
+		 * command_easy: 4, "|", 110301 // = 107 << 10 + 1 + 732
+		 * command_easy: 4, "|", 111332 // = 108 << 10 + 1 + 739
+		 * command_easy: 4, "|", 112363 // = 109 << 10 + 1 + 746
+		 * command_easy: 4, "|", 113394 // = 110 << 10 + 1 + 753
+		 * command_easy: 4, "|", 114426 // = 111 << 10 + 1 + 761
+		 * command_easy: 4, "|", 115458 // = 112 << 10 + 1 + 769
+		 * command_easy: 4, "|", 116488 // = 113 << 10 + 1 + 775
+		 * command_easy: 4, "|", 117518 // = 114 << 10 + 1 + 781
+		 * command_easy: 4, "|", 118549 // = 115 << 10 + 1 + 788
+		 * command_easy: 4, "|", 119580 // = 116 << 10 + 1 + 795
+		 * command_easy: 4, "|", 120611 // = 117 << 10 + 1 + 802
+		 * command_easy: 4, "|", 121643 // = 118 << 10 + 1 + 810
+		 * command_easy: 4, "|", 122675 // = 119 << 10 + 1 + 818
+		 * command_easy: 4, "|", 123707 // = 120 << 10 + 1 + 826
+		 */
+		compressed,
+		true,
+		"|time|time | time |ime|Time |time the | time|s time |time of |Time|time "+
+			"and |me|tim|, time |time, | Time |time in |time to |e time |time\"|time."+
+			"|time\">|time\n|t|time]|time for |e|ti|time a |time that | Time|time. |."+
+			"time| time, ||time with |time'|time from |time by ||| the time||time. Th"+
+			"e |TIME|time on |time as |time is ||timing |time\n\t|time:| time. |timee"+
+			"d ||||time(|Time, ||time at |timely | the time of ||| Time, |Time\"|.tim"+
+			"e(|TIME |Time\">|time=\"| time.|.com/time| the time of the |Time'|time. "+
+			"This |time,|.time |Time(|Time.|time not | time=\"|timeer | TIME |timeal "+
+			"| TIME|time='|TIME\"|Time. | time(|timeful | Time. |timeive |timeless |T"+
+			"IME'|timeest | Time.|TIME\">| time='|Time,|timeize |TIME.|\302\240time| "+
+			"time,|Time=\"|TIME=\"|timeous |TIME, |Time='| Time,| TIME=\"| TIME, |TIM"+
+			"E,|TIME(|TIME. | TIME.|TIME='| TIME. | Time=\"| TIME='| Time='",
+	)
+}
+
+func TestBaseDictWord(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x03, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x41, 0x02,
+	}
+	verify(t,
+		/*
+		 * // The stream consists of a base dictionary word.
+		 * main_header
+		 * metablock_header_easy: 4, 1
+		 * command_inscopy_easy: 0, 4
+		 * command_dist_easy: 1
+		 */
+		compressed,
+		true,
+		"time",
+	)
+}
+
+func TestBaseDictWordFinishBlockOnRingbufferWrap(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x9b, 0x58, 0x32,
+		0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34,
+		0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34,
+		0x34, 0x34, 0x34, 0xd4, 0x00,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_easy: 32, 1 // 32 = minimal ringbuffer size
+		 * command_easy: 4, "aaaaaaaaaaaaaaaaaaaaaaaaaaaa", 29
+		 */
+		compressed,
+		true,
+		times(28, "a")+
+			"time",
+	)
+}
+
+func TestBaseDictWordTooLong(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x41, 0x02,
+	}
+	verify(t,
+		/*
+		 * // Has an unmodified dictionary word that goes over the end of the
+		 * // meta-block. Same as BaseDictWord, but with a shorter meta-block length.
+		 * main_header
+		 * metablock_header_easy: 1, 1
+		 * command_inscopy_easy: 0, 4
+		 * command_dist_easy: 1
+		 */
+		compressed,
+		false,
+		"",
+	)
+}
+
+func TestBlockCountMessage(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x0b, 0x00, 0x11, 0x01, 0x8c, 0xc1, 0xc5, 0x0d, 0x08, 0x00, 0x22,
+		0x65, 0xe1, 0xfc, 0xfd, 0x22, 0x2c, 0xc4, 0x00, 0x00, 0x38, 0xd8, 0x32,
+		0x89, 0x01, 0x12, 0x00, 0x00, 0x77, 0xda, 0x04, 0x10, 0x42, 0x00, 0x00,
+		0x00,
+	}
+	verify(t,
+		/*
+		 * // Same as BlockSwitchMessage but also uses 0-bit block-type commands.
+		 * main_header
+		 * metablock_header_begin: 1, 0, 12, 0
+		 * // two literal block types
+		 * vlq_blocktypes: 2
+		 * huffman_simple: 1,1,4, 1  // literal blocktype prefix code
+		 * huffman_fixed: 26  // literal blockcount prefix code
+		 * blockcount_easy: 2  // 2 a's
+		 * // one ins/copy and dist block type
+		 * vlq_blocktypes: 1
+		 * vlq_blocktypes: 1
+		 * ndirect: 0, 0
+		 * // two MSB6 literal context modes
+		 * bits: "00", "00"
+		 * // two literal prefix codes
+		 * vlq_blocktypes: 2
+		 * // literal context map
+		 * vlq_rlemax: 5
+		 * huffman_simple: 0,3,7, 5,0,6  // context map RLE Huffman code
+		 * // context map RLE: repeat 0 64 times, 1+5 64 times
+		 * bits: "01", "0", "11111", "11", "0", "11111"
+		 * bit: 1  // MTF enabled
+		 * // one distance prefix code
+		 * vlq_blocktypes: 1
+		 * huffman_simple: 0,1,256, 97  // only a's
+		 * huffman_simple: 0,1,256, 98  // only b's
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * // now comes the data
+		 * command_inscopy_easy: 12, 0
+		 * blockcount_easy: 2  // switch to other block type; 2 b's
+		 * blockcount_easy: 5  // switch to other block type; 5 a's
+		 * blockcount_easy: 1  // switch to other block type; 1 b
+		 * blockcount_easy: 1  // switch to other block type; 1 a
+		 * blockcount_easy: 1  // switch to other block type; 1 b
+		 */
+		compressed,
+		true,
+		"aabbaaaaabab",
+	)
+}
+
+func TestBlockSwitchMessage(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x0b, 0x00, 0xd1, 0xe1, 0x01, 0xc6, 0xe0, 0xe2, 0x06, 0x04, 0x00,
+		0x91, 0xb2, 0x70, 0xfe, 0x7e, 0x11, 0x16, 0x62, 0x00, 0x00, 0x1c, 0x6c,
+		0x99, 0xc4, 0x00, 0x09, 0x00, 0x80, 0x3b, 0x6d, 0x02, 0x08, 0x82, 0x00,
+		0x00, 0x00,
+	}
+	verify(t,
+		/*
+		 * // Uses blocks with 1-symbol Huffman codes that take 0 bits, so that it
+		 * // is the block-switch commands that encode the message rather than actual
+		 * // literals.
+		 * main_header
+		 * metablock_header_begin: 1, 0, 12, 0
+		 * // two literal block types
+		 * vlq_blocktypes: 2
+		 * huffman_simple: 1,4,4, 1,0,2,3  // literal blocktype prefix code
+		 * huffman_fixed: 26  // literal blockcount prefix code
+		 * blockcount_easy: 2  // 2 a's
+		 * // one ins/copy and dist block type
+		 * vlq_blocktypes: 1
+		 * vlq_blocktypes: 1
+		 * ndirect: 0, 0
+		 * // two MSB6 literal context modes
+		 * bits: "00", "00"
+		 * // two literal prefix codes
+		 * vlq_blocktypes: 2
+		 * // literal context map
+		 * vlq_rlemax: 5
+		 * huffman_simple: 0,3,7, 5,0,6  // context map RLE Huffman code
+		 * // context map RLE: repeat 0 64 times, 1+5 64 times
+		 * bits: "01", "0", "11111", "11", "0", "11111"
+		 * bit: 1  // MTF enabled
+		 * // one distance prefix code
+		 * vlq_blocktypes: 1
+		 * huffman_simple: 0,1,256, 97  // only a's
+		 * huffman_simple: 0,1,256, 98  // only b's
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * // now comes the data
+		 * command_inscopy_easy: 12, 0
+		 * bits: "0"; blockcount_easy: 2  // switch to other block type; 2 b's
+		 * bits: "0"; blockcount_easy: 5  // switch to other block type; 5 a's
+		 * bits: "0"; blockcount_easy: 1  // switch to other block type; 1 b
+		 * bits: "0"; blockcount_easy: 1  // switch to other block type; 1 a
+		 * bits: "0"; blockcount_easy: 1  // switch to other block type; 1 b
+		 */
+		compressed,
+		true,
+		"aabbaaaaabab",
+	)
+}
+
+func TestClClTreeDeficiency(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x03, 0x00, 0x00, 0x00, 0x01, 0x80, 0x43, 0x01, 0xe0, 0x05, 0x88,
+		0x55, 0x90, 0x01, 0x00, 0x38, 0xd8, 0x32, 0x89, 0x01, 0x12, 0x00, 0x00,
+		0x77, 0xda, 0x28, 0x40, 0x23,
+	}
+	verify(t,
+		/*
+		 * // This test is a copy of TooManySymbolsRepeated, with changed clcl table.
+		 * main_header
+		 * metablock_header_begin: 1, 0, 4, 0
+		 * metablock_header_trivial_context
+		 * hskip: 0
+		 * clcl_ordered: 0,3,0,0,0,0,0,0,3,3,0,0,0,0,0,0,1,0
+		 * set_prefix_cl_rle: "", "110", "", "", "", "", "", "", "111", "101",\
+		 *                    "", "", "", "", "", "", "0", ""
+		 * cl_rle: 8
+		 * cl_rle_rep: 9, 96
+		 * cl_rle: 1
+		 * cl_rle_rep: 9, 159 // 1 + 96 + 1 + 159 = 257 > 256 = alphabet size
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * command_inscopy_easy: 4, 0
+		 * command_literal_bits: 0, 0, 0, 101100010
+		 */
+		compressed,
+		false,
+		"aaab",
+	)
+}
+
+func TestClClTreeExcess(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x03, 0x00, 0x00, 0x00, 0x01, 0x80, 0xc3, 0x7b, 0x80, 0x58, 0x41,
+		0x06, 0x00, 0xe0, 0x60, 0xcb, 0x24, 0x06, 0x48, 0x00, 0x00, 0xdc, 0x69,
+		0xa3, 0x00, 0x8d, 0x00,
+	}
+	verify(t,
+		/*
+		 * // This test is a copy of ClClTreeDeficiency, with changed clcl table.
+		 * main_header
+		 * metablock_header_begin: 1, 0, 4, 0
+		 * metablock_header_trivial_context
+		 * hskip: 0
+		 * clcl_ordered: 0,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,1,0
+		 * set_prefix_cl_rle: "", "110", "", "", "", "", "", "", "111", "1",\
+		 *                    "", "", "", "", "", "", "0", ""
+		 * cl_rle: 8
+		 * cl_rle_rep: 9, 96
+		 * cl_rle: 1
+		 * cl_rle_rep: 9, 159 // 1 + 96 + 1 + 159 = 257 > 256 = alphabet size
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * command_inscopy_easy: 4, 0
+		 * command_literal_bits: 0, 0, 0, 101100010
+		 */
+		compressed,
+		false,
+		"aaab",
+	)
+}
+
+func TestComplexHuffmanCodeTwoSymbols(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x01, 0x00, 0x00, 0x80, 0x03, 0xe0, 0xa2, 0x1a, 0x00, 0x00, 0x0e,
+		0xb6, 0x4c, 0x62, 0x80, 0x04, 0x00, 0xc0, 0x9d, 0x36, 0x12, 0x04,
+	}
+	verify(t,
+		/*
+		 * // This tests a complex Huffman code with only two symbols followed by a
+		 * // tiny amount of content.
+		 * main_header
+		 * metablock_header_begin: 1, 0, 2, 0
+		 * metablock_header_trivial_context
+		 * // begin of literal Huffman tree. The tree has symbol length 1 for "a",
+		 * // symbol length 1 for "b" and symbol length 0 for all others.
+		 * hskip: 0
+		 * clcl_ordered: 0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1
+		 * set_prefix_cl_rle: "", "0", "", "", "", "", "", "", "", "",\
+		 *                    "", "", "", "", "", "", "", "1"
+		 * cl_rle_rep_0: 97
+		 * cl_rle: 1  // literal number 97, that is, the letter 'a'
+		 * cl_rle: 1  // literal number 98, that is, the letter 'b'
+		 * // end of literal Huffman tree
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * command_inscopy_easy: 2, 0
+		 * command_literal_bits: 0, 1  // a followed by b
+		 */
+		compressed,
+		true,
+		"ab",
+	)
+}
+
+func TestCompressedUncompressedShortCompressed(t *testing.T) {
+	compressed := []uint8{
+		0x8b, 0xfe, 0x01, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x9b, 0x66, 0x6f,
+		0x1b, 0x0a, 0x50, 0x00, 0x10, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x31,
+		0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0,
+		0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x24, 0x00,
+	}
+	verify(t,
+		/*
+		 * main_header: 22
+		 * metablock_header_easy: 1022, 0
+		 * command_easy: 1021, "a", 1 // 1022 x "a"
+		 * metablock_uncompressed: "bbbbbb"
+		 * metablock_header_easy: 4, 1
+		 * command_easy: 4, "", 1 // 6 + 4 = 10 x "b"
+		 */
+		compressed,
+		true,
+		times(1022, "a")+
+			times(10, "b"),
+	)
+}
+
+func TestCompressedUncompressedShortCompressedSmallWindow(t *testing.T) {
+	compressed := []uint8{
+		0x21, 0xf4, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x1c, 0xa7, 0x6d, 0x00, 0x00,
+		0x38, 0xd8, 0x32, 0x89, 0x01, 0x12, 0x00, 0x00, 0x77, 0xda, 0x34, 0x7b,
+		0xdb, 0x50, 0x80, 0x02, 0x80, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x31,
+		0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0,
+		0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x24, 0x00,
+	}
+	verify(t,
+		/*
+		 * main_header: 10
+		 * metablock_header_easy: 1022, 0
+		 * command_easy: 1021, "a", 1 // 1022 x "a"
+		 * metablock_uncompressed: "bbbbbb"
+		 * metablock_header_easy: 4, 1
+		 * command_easy: 4, "", 1 // 6 + 4 = 10 x "b"
+		 */
+		compressed,
+		true,
+		times(1022, "a")+
+			times(10, "b"),
+	)
+}
+
+func TestCopyLengthTooLong(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x11, 0x86,
+		0x02,
+	}
+	verify(t,
+		/*
+		 * // Has a copy length that goes over the end of the meta-block.
+		 * // Same as OneCommand, but with a shorter meta-block length.
+		 * main_header
+		 * metablock_header_easy: 2, 1
+		 * command_easy: 2, "a", 1
+		 */
+		compressed,
+		false,
+		"",
+	)
+}
+
+func TestCopyTooLong(t *testing.T) {
+	compressed := []uint8{
+		0xa1, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0xa7, 0x6d, 0x00, 0x00,
+		0x38, 0xd8, 0x32, 0x89, 0x01, 0x12, 0x00, 0x00, 0x77, 0xda, 0x34, 0xab,
+		0xdb, 0x50, 0x00,
+	}
+	verify(t,
+		/*
+		 * // Has a copy length that goes over the end of the meta-block,
+		 * // with a ringbuffer wrap.
+		 * main_header: 10
+		 * metablock_header_easy: 2, 1
+		 * command_easy: 1024, "a", 1
+		 */
+		compressed,
+		false,
+		"",
+	)
+}
+
+func TestCustomHuffmanCode(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x03, 0x00, 0x00, 0x00, 0x01, 0x80, 0xc3, 0x3d, 0x80, 0x58, 0x82,
+		0x08, 0x00, 0xc0, 0xc1, 0x96, 0x49, 0x0c, 0x90, 0x00, 0x00, 0xb8, 0xd3,
+		0x46, 0x01, 0x1a, 0x01,
+	}
+	verify(t,
+		/*
+		 * // This tests a small hand crafted Huffman code followed by a tiny amount
+		 * // of content. This tests if the bit reader detects the end correctly even
+		 * // with tiny content after a larger Huffman tree encoding.
+		 * main_header
+		 * metablock_header_begin: 1, 0, 4, 0
+		 * metablock_header_trivial_context
+		 * // begin of literal Huffman tree. The tree has symbol length 1 for "a",
+		 * // symbol length 8 for null, symbol length 9 for all others. The length 1
+		 * // for a is chosen on purpose here, the others must be like that to
+		 * // fulfill the requirement that sum of 32>>length is 32768.
+		 * hskip: 0
+		 * clcl_ordered: 0,3,0,0,0,0,0,0,3,2,0,0,0,0,0,0,1,0
+		 * set_prefix_cl_rle: "", "110", "", "", "", "", "", "", "111", "10",\
+		 *                    "", "", "", "", "", "", "0", ""
+		 * cl_rle: 8
+		 * cl_rle_rep: 9, 96
+		 * cl_rle: 1  // literal number 97, that is, the letter 'a'
+		 * cl_rle_rep: 9, 158
+		 * // end of literal Huffman tree
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * command_inscopy_easy: 4, 0
+		 * // Here is how the code "101100010" for b is derived: remember that a has
+		 * // symbol length 1, null has symbol length 8, the rest 9. So in the
+		 * // canonical Huffman code, the code for "a" is "0", for null is
+		 * // "10000000". The next value has "100000010" (cfr. the rules of canonical
+		 * // prefix code). Counting upwards +95 from there, the value "@" (ASCII 96,
+		 * // before "a") has "101100001", and so b, the next 9-bit symbol, has the
+		 * // next binary value "101100010".
+		 * command_literal_bits: 0, 0, 0, 101100010  // 3 a's followed by a b
+		 */
+		compressed,
+		true,
+		"aaab",
+	)
+}
+
+func TestDistanceLut(t *testing.T) {
+	compressed := []uint8{
+		0x8b, 0x02, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x99, 0x86,
+		0x46, 0xc6, 0x22, 0x14, 0x00, 0x00, 0x03, 0x00, 0x00, 0x1c, 0xa7, 0x6d,
+		0x00, 0x00, 0x38, 0xd8, 0x32, 0x89, 0x01, 0x12, 0x21, 0x91, 0x69, 0x62,
+		0x6a, 0x36,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_easy: 6, 0  // implicit ndirect: 0, 0
+		 * command_easy: 3, "abc", 3  // Insert "abc", copy "abc"
+		 * metablock_header_begin: 0, 0, 6, 0
+		 * vlq_blocktypes: 1  // num litetal block types
+		 * vlq_blocktypes: 1  // num command block types
+		 * vlq_blocktypes: 1  // num distance block types
+		 * ndirect: 3, 0
+		 * bits: "00"  // literal context modes
+		 * vlq_blocktypes: 1  // num literal Huffman trees
+		 * // command has no context -> num trees == num block types
+		 * vlq_blocktypes: 1  // num distance Huffman trees
+		 * huffman_fixed: 256
+		 * huffman_fixed: 704
+		 * huffman_simple: 0,1,67, 18
+		 * command_inscopy_easy: 3, 3  // Insert 3, copy 3
+		 * command_literals_easy: "def"
+		 * // 0-bit Huffman code : dcode = 18 -> third direct distance
+		 * metablock_lastempty  // make sure that no extra distance bits are read
+		 */
+		compressed,
+		true,
+		"abcabcdefdef",
+	)
+}
+
+func TestEmpty(t *testing.T) {
+	compressed := []uint8{
+		0x3b,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_lastempty
+		 */
+		compressed,
+		true,
+		"",
+	)
+}
+
+func TestHelloWorld(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x9b, 0x00, 0x59,
+		0x98, 0xda, 0xd8, 0xd8, 0x13, 0xb8, 0xdb, 0x3b, 0xd9, 0x98, 0x00,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_fixed: "hello world", 1
+		 */
+		compressed,
+		true,
+		"hello world",
+	)
+}
+
+func TestInsertTooLong(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x09, 0x86,
+		0x46,
+	}
+	verify(t,
+		/*
+		 * // Has an insert length that goes over the end of the meta-block.
+		 * // Same as OneInsert, but with a shorter meta-block length.
+		 * main_header
+		 * metablock_header_easy: 1, 1
+		 * command_easy: 0, "ab"
+		 */
+		compressed,
+		false,
+		"",
+	)
+}
+
+func TestIntactDistanceRingBuffer0(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0xa1, 0x80,
+		0x20, 0x00,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_easy: 11, 1
+		 * command_inscopy_easy: 0, 7 // "himself" from dictionary
+		 * bits: "000000" // distance = 4 from RB; RB remains intact
+		 * command_inscopy_easy: 0, 4 // copy "self"
+		 * bits: "000000" // distance = 4 from RB; RB remains intact
+		 */
+		compressed,
+		true,
+		"himselfself",
+	)
+}
+
+func TestIntactDistanceRingBuffer1(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x09, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x21, 0xa0,
+		0x20, 0x00,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_easy: 10, 1
+		 * command_inscopy_easy: 0, 6 // "scroll" from dictionary
+		 * bits: "100000" // distance = 11 from RB; RB remains intact
+		 * command_inscopy_easy: 0, 4 // copy "roll"
+		 * bits: "000000" // distance = 4 from RB; RB remains intact
+		 */
+		compressed,
+		true,
+		"scrollroll",
+	)
+}
+
+func TestIntactDistanceRingBuffer2(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x41, 0x80,
+		0x20, 0x50, 0x10, 0x24, 0x08, 0x06,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_easy: 16, 1
+		 * command_inscopy_easy: 0, 4 // "left" from dictionary (index = 3 = 4 - 1)
+		 * bits: "000000" // distance = 4 from RB; RB remains intact
+		 * command_inscopy_easy: 0, 4 // "data" from dictionary (index = 6 = 11 - 5)
+		 * bits: "100000" // distance = 11 from RB; RB remains intact
+		 * command_inscopy_easy: 0, 4 // "data" from dictionary (index = 6 = 15 - 9)
+		 * bits: "010000" // distance = 15 from RB; RB remains intact
+		 * command_inscopy_easy: 0, 4 // "left" from dictionary (index = 3 = 16 - 13)
+		 * bits: "110000" // distance = 16 from RB; RB remains intact
+		 */
+		compressed,
+		true,
+		"leftdatadataleft",
+	)
+}
+
+func TestIntactDistanceRingBufferNoDistanceValue0(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x17, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x40, 0x82,
+		0x40, 0x41, 0x90, 0x20, 0x58, 0x18, 0x00,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_easy: 24, 1
+		 * // cmd is {ins_extra, copy_extra, distance_code, ctx, ins_off, copy_off}
+		 * // cmd.2 = {0x00, 0x00, 0, 0x02, 0x0000, 0x0004}
+		 * // cmd.2 = no insert, copy length = 4, distance_code = 0 (last distance)
+		 * command_short: 2 // "left" from dictionary (index = 3 = 4 - 1)
+		 * // Check that RB is untouched after the first command...
+		 * command_inscopy_easy: 0, 4 // "data" from dictionary (index = 6 = 11 - 5)
+		 * bits: "100000" // distance = 11 from RB; RB remains intact
+		 * command_inscopy_easy: 0, 4 // "data" from dictionary (index = 6 = 15 - 9)
+		 * bits: "010000" // distance = 15 from RB; RB remains intact
+		 * command_inscopy_easy: 0, 4 // "left" from dictionary (index = 3 = 16 - 13)
+		 * bits: "110000" // distance = 16 from RB; RB remains intact
+		 * command_inscopy_easy: 0, 8 // copy "leftleft"
+		 * bits: "000000" // distance = 4 from RB; RB remains intact
+		 */
+		compressed,
+		true,
+		"leftdatadataleftleftleft",
+	)
+}
+
+func TestIntactDistanceRingBufferNoDistanceValue1(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x19, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0xc0, 0x82,
+		0x41, 0x41, 0x90, 0x20, 0x58, 0x18, 0x00,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_easy: 26, 1
+		 * // cmd is {ins_extra, copy_extra, distance_code, ctx, ins_off, copy_off}
+		 * // cmd.3 = {0x00, 0x00, 0, 0x03, 0x0000, 0x0005}
+		 * // cmd.3 = no insert, copy length = 5, distance_code = 0 (last distance)
+		 * command_short: 3 // "world" from dictionary (index = 3 = 4 - 1)
+		 * // Check that RB is untouched after the first command...
+		 * command_inscopy_easy: 0, 5 // "white" from dictionary (index = 5 = 11 - 6)
+		 * bits: "100000" // distance = 11 from RB; RB remains intact
+		 * command_inscopy_easy: 0, 4 // "back" from dictionary (index = 4 = 15 - 11)
+		 * bits: "010000" // distance = 15 from RB; RB remains intact
+		 * command_inscopy_easy: 0, 4 // "down" from dictionary (index = 1 = 16 - 15)
+		 * bits: "110000" // distance = 16 from RB; RB remains intact
+		 * command_inscopy_easy: 0, 8 // copy "downdown"
+		 * bits: "000000" // distance = 4 from RB; RB remains intact
+		 */
+		compressed,
+		true,
+		"worldwhitebackdowndowndown",
+	)
+}
+
+func TestInvalidNoLastMetablock(t *testing.T) {
+	compressed := []uint8{
+		0x0b, 0x06, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x9b, 0x00, 0x13,
+		0x59, 0x98, 0xda, 0xd8, 0xd8, 0x13, 0xb8, 0xdb, 0x3b, 0xd9, 0x98, 0xe8,
+		0x00,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_fixed: \"hello world\", 0
+		 */
+		compressed,
+		false,
+		"hello world",
+	)
+}
+
+func TestInvalidNoMetaBlocks(t *testing.T) {
+	compressed := []uint8{
+		0x0b,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 */
+		compressed,
+		false,
+		"",
+	)
+}
+
+func TestInvalidTooFarDist(t *testing.T) {
+	compressed := []uint8{
+		0xa1, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0xa7, 0x6d, 0x00, 0x00,
+		0x38, 0xd8, 0x32, 0x89, 0x01, 0x12, 0x00, 0x00, 0x77, 0xda, 0xe8, 0xe0,
+		0x62, 0x6f, 0x4f, 0x60, 0x66, 0xe8, 0x44, 0x38, 0x0f, 0x09, 0x0d,
+	}
+	verify(t,
+		/*
+		 * main_header: 10
+		 * metablock_header_begin: 1, 0, 10, 0
+		 * metablock_header_trivial_context
+		 * huffman_fixed: 256
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * command_easy: 2, "too far!", 1000000  // distance too far for 10 wbits
+		 */
+		compressed,
+		false,
+		"",
+	)
+}
+
+func TestInvalidTooLargeContextMap(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x00, 0x00, 0xd1, 0xe1, 0x01, 0xc6, 0xe0, 0xe2, 0x06, 0x00, 0x00,
+		0x91, 0xb2, 0x70, 0xfe, 0xfb, 0x45, 0x58, 0x88, 0x01, 0x00, 0x70, 0xb0,
+		0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x01,
+	}
+	verify(t,
+		/*
+		 * // Has a repeat code a context map that makes the size too big -> invalid.
+		 * main_header
+		 * metablock_header_begin: 1, 0, 1, 0
+		 * // two literal block types
+		 * vlq_blocktypes: 2
+		 * huffman_simple: 1,4,4, 1,0,2,3  // literal blocktype prefix code
+		 * huffman_fixed: 26  // literal blockcount prefix code
+		 * blockcount_easy: 1
+		 * // one ins/copy and dist block type
+		 * vlq_blocktypes: 1
+		 * vlq_blocktypes: 1
+		 * ndirect: 0, 0
+		 * // two MSB6 literal context modes
+		 * bits: "00", "00"
+		 * // two literal prefix codes
+		 * vlq_blocktypes: 2
+		 * // literal context map
+		 * vlq_rlemax: 5
+		 * huffman_simple: 0,3,7, 5,0,6  // context map RLE Huffman code
+		 * // Too long context map RLE: repeat 0 64 times, 1+5 65 times, that is 129
+		 * // values which is 1 too much.
+		 * bits: "01", "0", "11111", "11", "11", "0", "11111"
+		 * bit: 1  // MTF enabled
+		 * // one distance prefix code
+		 * vlq_blocktypes: 1
+		 * huffman_simple: 0,1,256, 97  // only a's
+		 * huffman_simple: 0,1,256, 98  // only b's
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * // now comes the data
+		 * command_inscopy_easy: 1, 0
+		 */
+		compressed,
+		false,
+		"a",
+	)
+}
+
+func TestInvalidTransformType(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x03, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x41, 0x2d,
+		0x01, 0x19,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_easy: 4, 1
+		 * command_inscopy_easy: 0, 4
+		 * command_dist_easy: 123905 // = 121 << 10 + 1
+		 */
+		compressed,
+		false,
+		"",
+	)
+}
+
+func TestInvalidWindowBits9(t *testing.T) {
+	compressed := []uint8{
+		0x91, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0xa7, 0x6d, 0x00, 0x00,
+		0x38, 0xd8, 0x32, 0x89, 0x01, 0x12, 0x00, 0x00, 0x77, 0xda, 0xc8, 0x20,
+		0x32, 0xd4, 0x01,
+	}
+	verify(t,
+		/*
+		 * main_header: 9
+		 * metablock_fixed: \"a\", 1
+		 */
+		compressed,
+		false,
+		"a",
+	)
+}
+
+func TestManyTinyMetablocks(t *testing.T) {
+	compressed := []uint8{
+		0x0b, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e,
+		0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee,
+		0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80, 0x61, 0x00, 0x00,
+		0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65,
+		0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61, 0x04, 0x00, 0x80,
+		0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x11, 0x61,
+		0x34,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * repeat: 300
+		 *   metablock_uncompressed: "a"
+		 *   metablock_fixed: "b"
+		 * end_repeat
+		 * metablock_lastempty
+		 */
+		compressed,
+		true,
+		times(300, "ab"),
+	)
+}
+
+func TestNegativeDistance(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x41, 0x02,
+		0x01, 0x42, 0x01, 0x42, 0x01, 0x42, 0x01, 0x42, 0x01, 0x42, 0x01, 0x1c,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_easy: 16, 1
+		 * command_inscopy_easy: 0, 4 // time
+		 * command_dist_easy: 1
+		 * command_inscopy_easy: 0, 2 // me
+		 * command_dist_easy: 2
+		 * command_inscopy_easy: 0, 2 // me
+		 * command_dist_easy: 2
+		 * command_inscopy_easy: 0, 2 // me
+		 * command_dist_easy: 2
+		 * command_inscopy_easy: 0, 2 // me
+		 * command_dist_easy: 2
+		 * command_inscopy_easy: 0, 2 // me
+		 * command_dist_easy: 2 // All rb items are 2 now
+		 * command_inscopy_easy: 0, 2
+		 * bits: "011100" // 15 -> distance = rb[idx + 2] - 3
+		 */
+		compressed,
+		false,
+		"timemememememeXX",
+	)
+}
+
+func TestNegativeRemainingLenBetweenMetablocks(t *testing.T) {
+	compressed := []uint8{
+		0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x09, 0x86,
+		0x46, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00,
+		0x70, 0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x91, 0x60,
+		0x68, 0x04,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_easy: 1, 0
+		 * command_easy: 0, "ab"  // remaining length == -1 -> invalid stream
+		 * metablock_header_easy: 2, 1
+		 * command_easy: 0, "ab"
+		 */
+		compressed,
+		false,
+		"abab",
+	)
+}
+
+func TestOneCommand(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x02, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x11, 0x86,
+		0x02,
+	}
+	verify(t,
+		/*
+		 * // The stream consists of one command with insert and copy.
+		 * main_header
+		 * metablock_header_easy: 3, 1
+		 * command_easy: 2, "a", 1
+		 */
+		compressed,
+		true,
+		"aaa",
+	)
+}
+
+func TestOneInsert(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x09, 0x86,
+		0x46,
+	}
+	verify(t,
+		/*
+		 * // The stream consists of one half command with insert only.
+		 * main_header
+		 * metablock_header_easy: 2, 1
+		 * command_easy: 0, "ab"
+		 */
+		compressed,
+		true,
+		"ab",
+	)
+}
+
+func TestPeculiarWrap(t *testing.T) {
+	compressed := []uint8{
+		0x21, 0xfc, 0x1f, 0x00, 0x00, 0xa1, 0x12, 0x82, 0x04, 0x60, 0x1d, 0x00,
+		0xca, 0xfe, 0xba, 0xbe, 0xde, 0xad, 0xbe, 0xef, 0x21, 0x00, 0x00, 0x00,
+		0x00, 0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03,
+		0x24, 0x00, 0x00, 0xee, 0xb4, 0x91, 0x61, 0x68, 0x64, 0x0c,
+	}
+	verify(t,
+		/*
+		 * main_header: 10
+		 * // See ZeroCostCommand
+		 * metablock_header_begin: 0, 0, 2048, 0
+		 * metablock_header_trivial_context
+		 * huffman_simple: 0,1,256, 42
+		 * huffman_simple: 0,1,704, 130
+		 * huffman_simple: 0,1,64, 0
+		 * // Metadata block; at least 8 bytes long
+		 * bits: "0", "11", "0", "01", "00000111"
+		 * byte_boundary
+		 * bits: "11001010", "11111110", "10111010", "10111110"
+		 * bits: "11011110", "10101101", "10111110", "11101111"
+		 * metablock_header_easy: 3, 1
+		 * command_easy: 0, "abc", 0
+		 */
+		compressed,
+		true,
+		times(512, "left")+
+			"abc",
+	)
+}
+
+func TestSimplePrefix(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x03, 0x00, 0x00, 0xa0, 0xc3, 0xc4, 0xc6, 0xc8, 0x02, 0x00, 0x70,
+		0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x51, 0xa0, 0x1d,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_begin: 1, 0, 4, 0
+		 * metablock_header_trivial_context
+		 * huffman_simple: 1,4,256, 97,98,99,100  // ASCII codes for a, b, c, d
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * command_inscopy_easy: 4, 0
+		 * command_literal_bits: 0, 10, 110, 111  // a, b, c, d
+		 */
+		compressed,
+		true,
+		"abcd",
+	)
+}
+
+func TestSimplePrefixDuplicateSymbols(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x03, 0x00, 0x00, 0xa0, 0xc3, 0xc4, 0xc2, 0xc4, 0x02, 0x00, 0x70,
+		0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x51, 0xa0, 0x1d,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_begin: 1, 0, 4, 0
+		 * metablock_header_trivial_context
+		 * huffman_simple: 1,4,256, 97,98,97,98  // ASCII codes for a, b, a, b
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * command_inscopy_easy: 4, 0
+		 * command_literal_bits: 0, 10, 110, 111  // a, b, a, b
+		 */
+		compressed,
+		false,
+		"abab",
+	)
+}
+
+func TestSimplePrefixOutOfRangeSymbols(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x03, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x4d, 0xff, 0xef,
+		0x7f, 0xff, 0xfc, 0x07, 0x00, 0xb8, 0xd3, 0x06,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_begin: 1, 0, 4, 0
+		 * metablock_header_trivial_context
+		 * huffman_fixed: 256
+		 * huffman_simple: 1,4,704, 1023,1022,1021,1020
+		 * huffman_fixed: 64
+		 */
+		compressed,
+		false,
+		"",
+	)
+}
+
+func TestSimplePrefixPlusExtraData(t *testing.T) {
+	t.Skip("nevermind")
+	compressed := []uint8{
+		0x1b, 0x03, 0x00, 0x00, 0xa0, 0xc3, 0xc4, 0xc6, 0xc8, 0x02, 0x00, 0x70,
+		0xb0, 0x65, 0x12, 0x03, 0x24, 0x00, 0x00, 0xee, 0xb4, 0x51, 0xa0, 0x1d,
+		0x55, 0xaa,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_begin: 1, 0, 4, 0
+		 * metablock_header_trivial_context
+		 * huffman_simple: 1,4,256, 97,98,99,100  // ASCII codes for a, b, c, d
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * command_inscopy_easy: 4, 0
+		 * command_literal_bits: 0, 10, 110, 111  // a, b, c, d
+		 * byte_boundary
+		 * bits: "01010101", "10101010"
+		 */
+		compressed,
+		true,
+		"abcd",
+	)
+}
+
+func TestStressReadDistanceExtraBits(t *testing.T) {
+	compressed := []uint8{
+		0x4f, 0xfe, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00,
+		0x00, 0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x9b, 0xf6,
+		0x69, 0xef, 0xff, 0x0c, 0x8d, 0x8c, 0x05, 0x10, 0x00, 0x00, 0x00, 0x00,
+		0x00, 0x38, 0x4e, 0xdb, 0x00, 0x00, 0x70, 0xb0, 0x65, 0x12, 0x03, 0x24,
+		0xa8, 0xaa, 0xef, 0xab, 0xaa, 0x7f, 0x24, 0x16, 0x35, 0x8f, 0xac, 0x9e,
+		0x3d, 0xf7, 0xf3, 0xe3, 0x0a, 0xfc, 0xff, 0x03, 0x00, 0x00, 0x78, 0x01,
+		0x08, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x41,
+		0x42, 0x43, 0x44, 0x45, 0x46, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36,
+		0x37, 0x38, 0x39, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x30, 0x31, 0x32,
+		0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x41, 0x42, 0x43, 0x44, 0x45,
+		0x46, 0x03,
+	}
+	verify(t,
+		/*
+		 * main_header: 24
+		 * metablock_header_easy: 8388605, 0  // 2^23 - 3 = shortest 22-bit distance
+		 * command_easy: 8388602, "abc", 1
+		 * metablock_header_begin: 0, 0, 3, 0
+		 * vlq_blocktypes: 1  // num litetal block types
+		 * vlq_blocktypes: 1  // num command block types
+		 * vlq_blocktypes: 1  // num distance block types
+		 * ndirect: 0, 0
+		 * bits: "00"  // literal context modes
+		 * vlq_blocktypes: 1  // num literal Huffman trees
+		 * // command has no context -> num trees == num block types
+		 * vlq_blocktypes: 1  // num distance Huffman trees
+		 * huffman_fixed: 256
+		 * huffman_fixed: 704
+		 * // Begin of distance Huffman tree. First 15 codes have lengths 1 to 15.
+		 * // Symbol that corresponds to first half of 22-bit distance range is also
+		 * // 15. All other symbols are 0.
+		 * hskip: 0
+		 * clcl_ordered: 4,4,4,4, 4,4,4,4, 4,4,4,4, 4,4, 5,5,5,5
+		 * set_prefix_cl_rle: "0000", "0001", "0010", "0011", \
+		 *                    "0100", "0101", "0110", "0111", \
+		 *                    "1000", "1001", "1010", "1011", \
+		 *                    "1100", "1101", \
+		 *                    "11100", "11101", "11110", "11111"
+		 * cl_rle: 1
+		 * cl_rle: 2
+		 * cl_rle: 3
+		 * cl_rle: 4
+		 * cl_rle: 5
+		 * cl_rle: 6
+		 * cl_rle: 7
+		 * cl_rle: 8
+		 * cl_rle: 9
+		 * cl_rle: 10
+		 * cl_rle: 11
+		 * cl_rle: 12
+		 * cl_rle: 13
+		 * cl_rle: 14
+		 * cl_rle: 15
+		 * cl_rle_rep_0: 43
+		 * cl_rle: 15  // literal number 97, that is, the letter 'a'
+		 * // end of literal Huffman tree
+		 * command_inscopy_easy: 0, 3  // Insert 0, copy 3
+		 * // 15 bits of distance code plus 22 extra bits
+		 * command_dist_bits: "111111111111111", "0000000000000000000000"
+		 * metablock_uncompressed: "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF"
+		 * metablock_lastempty
+		 */
+		compressed,
+		true,
+		"abc"+
+			times(8388602, "c")+
+			"abc"+
+			times(3, "0123456789ABCDEF"),
+	)
+}
+
+func TestTooManySymbolsRepeated(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x03, 0x00, 0x00, 0x00, 0x01, 0x80, 0xc3, 0x3d, 0x80, 0x58, 0x82,
+		0x0c, 0x00, 0xc0, 0xc1, 0x96, 0x49, 0x0c, 0x90, 0x00, 0x00, 0xb8, 0xd3,
+		0x46, 0x01, 0x1a, 0x01,
+	}
+	verify(t,
+		/*
+		 * // This test is a copy of CustomHuffmanCode, with changed repeat count.
+		 * main_header
+		 * metablock_header_begin: 1, 0, 4, 0
+		 * metablock_header_trivial_context
+		 * hskip: 0
+		 * clcl_ordered: 0,3,0,0,0,0,0,0,3,2,0,0,0,0,0,0,1,0
+		 * set_prefix_cl_rle: "", "110", "", "", "", "", "", "", "111", "10",\
+		 *                    "", "", "", "", "", "", "0", ""
+		 * cl_rle: 8
+		 * cl_rle_rep: 9, 96
+		 * cl_rle: 1
+		 * cl_rle_rep: 9, 159 // 1 + 96 + 1 + 159 = 257 > 256 = alphabet size
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * command_inscopy_easy: 4, 0
+		 * command_literal_bits: 0, 0, 0, 101100010
+		 */
+		compressed,
+		false,
+		"aaab",
+	)
+}
+
+func TestTransformedDictWord(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x41, 0x09,
+		0x01, 0x01,
+	}
+	verify(t,
+		/*
+		 * // The stream consists of a transformed dictionary word.
+		 * main_header
+		 * metablock_header_easy: 9, 1
+		 * command_inscopy_easy: 0, 4
+		 * command_dist_easy: 5121  // 5 << 10 + 1
+		 */
+		compressed,
+		true,
+		"time the ",
+	)
+}
+
+func TestTransformedDictWordTooLong(t *testing.T) {
+	compressed := []uint8{
+		0x1b, 0x03, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xb4, 0x0d, 0x00, 0x00,
+		0x07, 0x5b, 0x26, 0x31, 0x40, 0x02, 0x00, 0xe0, 0x4e, 0x1b, 0x41, 0x09,
+		0x01, 0x01,
+	}
+	verify(t,
+		/*
+		 * // Has a transformed dictionary word that goes over the end of the
+		 * // meta-block, but the base dictionary word fits in the meta-block.
+		 * // Same as TransformedDictWord, but with a shorter meta-block length.
+		 * main_header
+		 * metablock_header_easy: 4, 1
+		 * command_inscopy_easy: 0, 4
+		 * command_dist_easy: 5121  // 5 << 10 + 1
+		 */
+		compressed,
+		false,
+		"",
+	)
+}
+
+func TestZeroCostCommand(t *testing.T) {
+	compressed := []uint8{
+		0xa1, 0xf8, 0x1f, 0x00, 0x00, 0xa1, 0x12, 0x82, 0x04, 0x00,
+	}
+	verify(t,
+		/*
+		 * main_header: 10
+		 * metablock_header_begin: 1, 0, 1024, 0  // last, not empty, length, compressed
+		 * metablock_header_trivial_context
+		 * huffman_simple: 0,1,256, 42  // literal: any
+		 * huffman_simple: 0,1,704, 130  // command: insert = 0, copy = 4, distance_code = -1
+		 * huffman_simple: 0,1,64, 0 // distance: last
+		 * // 256 0-bit commands with direct distances
+		 */
+		compressed,
+		true,
+		times(256, "left"),
+	)
+}
+
+func TestZeroCostLiterals(t *testing.T) {
+	compressed := []uint8{
+		0x9b, 0xff, 0xff, 0xff, 0x00, 0x20, 0x54, 0x00, 0x00, 0x38, 0xd8, 0x32,
+		0x89, 0x01, 0x12, 0x00, 0x00, 0x77, 0xda, 0xcc, 0xe1, 0x7b, 0xfa, 0x0f,
+	}
+	verify(t,
+		/*
+		 * main_header
+		 * metablock_header_begin: 1, 0, 16777216, 0
+		 * metablock_header_trivial_context
+		 * huffman_simple: 0,1,256, 42  // Single symbol alphabet
+		 * huffman_fixed: 704
+		 * huffman_fixed: 64
+		 * command_inscopy_easy: 16777216, 0
+		 * // 16777216 times 0 bits
+		 */
+		compressed,
+		true,
+		times(16777216, "*"),
+	)
+}
+
+/* GENERATED CODE END */