From 5a210a09735ab4af7b0af4a0ec6d6dd09675526a Mon Sep 17 00:00:00 2001 From: Klaus Post Date: Sun, 26 Feb 2023 14:36:42 +0100 Subject: [PATCH] s2: Add Dictionary support. (#685) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit # Compression Improvement ## [github_users_sample_set](https://github.com/facebook/zstd/releases/download/v1.1.3/github_users_sample_set.tar.zst) From https://github.com/facebook/zstd/releases/tag/v1.1.3 With 64K dictionary trained with zstd: 9114 files, 7484607 bytes input: Default Compression: 3362023 (44.92%) -> 921524 (12.31%) Better: 3083163 (41.19%) -> 873154 (11.67%) Best: 3057944 (40.86%) -> 785503 bytes (10.49%) ## Go Sources 8912 files, 51253563 bytes input: Default: 22955767 (44.79%) -> 19654568 (38.35%) Better: 20189613 (39.39%) -> 16289357 (31.78%) Best: 19482828 (38.01%) -> 15184589 (29.63%) # Status: * [x] Format Specification * [x] Reference Decoder * [x] Encoders (default, better, best) * [x] Roundtrip tests * [x] Fuzz tests ## Non-goals There will be no assembly for initial release. Also some compression may still be left on the table. There will be no Snappy implementation, since it will be incompatible anyway. # DOCUMENTATION *Note: S2 dictionary compression is currently at an early implementation stage, with no assembly for neither encoding nor decoding. Performance improvements can be expected in the future.* Adding dictionaries allow providing a custom dictionary that will serve as lookup in the beginning of blocks. The same dictionary *must* be used for both encoding and decoding. S2 does not keep track of whether the same dictionary is used, and using the wrong dictionary will most often not result in an error when decompressing. Blocks encoded *without* dictionaries can be decompressed seamlessly *with* a dictionary. This means it is possible to switch from an encoding without dictionaries to an encoding with dictionaries and treat the blocks similarly. Similar to [zStandard dictionaries](https://github.com/facebook/zstd#the-case-for-small-data-compression), the same usage scenario applies to S2 dictionaries. > Training works if there is some correlation in a family of small data samples. The more data-specific a dictionary is, the more efficient it is (there is no universal dictionary). Hence, deploying one dictionary per type of data will provide the greatest benefits. Dictionary gains are mostly effective in the first few KB. Then, the compression algorithm will gradually use previously decoded content to better compress the rest of the file. S2 further limits the dictionary to only be enabled on the first 64KB of a block. This will remove any negative (speed) impacts of the dictionaries on bigger blocks. ### Compression Using the [github_users_sample_set](https://github.com/facebook/zstd/releases/download/v1.1.3/github_users_sample_set.tar.zst) and a 64KB dictionary trained with zStandard the following sizes can be achieved. | | Default | Better | Best | |--------------------|------------------|------------------|-----------------------| | Without Dictionary | 3362023 (44.92%) | 3083163 (41.19%) | 3057944 (40.86%) | | With Dictionary | 921524 (12.31%) | 873154 (11.67%) | 785503 bytes (10.49%) | So for highly repetitive content, this case provides an almost 3x reduction in size. For less uniform data we will use the Go source code tree. Compressing First 64KB of all `.go` files in `go/src`, Go 1.19.5, 8912 files, 51253563 bytes input: | | Default | Better | Best | |--------------------|-------------------|-------------------|-------------------| | Without Dictionary | 22955767 (44.79%) | 20189613 (39.39% | 19482828 (38.01%) | | With Dictionary | 19654568 (38.35%) | 16289357 (31.78%) | 15184589 (29.63%) | | Saving/file | 362 bytes | 428 bytes | 472 bytes | ### Creating Dictionaries There are no tools to create dictionaries in S2. However, there are multiple ways to create a useful dictionary: #### Using a Sample File If your input is very uniform, you can just use a sample file as the dictionary. For example in the `github_users_sample_set` above, the average compression only goes up from 10.49% to 11.48% by using the first file as dictionary compared to using a dedicated dictionary. ```Go // Read a sample sample, err := os.ReadFile("sample.json") // Create a dictionary. dict := s2.MakeDict(sample, nil) // b := dict.Bytes() will provide a dictionary that can be saved // and reloaded with s2.NewDict(b). // To encode: encoded := dict.Encode(nil, file) // To decode: decoded, err := dict.Decode(nil, file) ``` #### Using Zstandard Zstandard dictionaries can easily be converted to S2 dictionaries. This can be helpful to generate dictionaries for files that don't have a fixed structure. Example, with training set files placed in `./training-set`: `λ zstd -r --train-fastcover training-set/* --maxdict=65536 -o name.dict` This will create a dictionary of 64KB, that can be converted to a dictionary like this: ```Go // Decode the Zstandard dictionary. insp, err := zstd.InspectDictionary(zdict) if err != nil { panic(err) } // We are only interested in the contents. // Assume that files start with "// Copyright (c) 2023". // Search for the longest match for that. // This may save a few bytes. dict := s2.MakeDict(insp.Content(), []byte("// Copyright (c) 2023")) // b := dict.Bytes() will provide a dictionary that can be saved // and reloaded with s2.NewDict(b). // We can now encode using this dictionary encodedWithDict := dict.Encode(nil, payload) // To decode content: decoded, err := dict.Decode(nil, encodedWithDict) ``` It is recommended to save the dictionary returned by ` b:= dict.Bytes()`, since that will contain only the S2 dictionary. This dictionary can later be loaded using `s2.NewDict(b)`. The dictionary then no longer requires `zstd` to be initialized. Also note how `s2.MakeDict` allows you to search for a common starting sequence of your files. This can be omitted, at the expense of a few bytes. # Dictionary Encoding Adding dictionaries allow providing a custom dictionary that will serve as lookup in the beginning of blocks. A dictionary provides an initial repeat value that can be used to point to a common header. Other than that the dictionary contains values that can be used as back-references. Often used data should be placed at the *end* of the dictionary since offsets < 2048 bytes will be smaller. ## Format Dictionary *content* must at least 16 bytes and less or equal to 64KiB (65536 bytes). Encoding: `[repeat value (uvarint)][dictionary content...]` Before the dictionary content, an unsigned base-128 (uvarint) encoded value specifying the initial repeat offset. This value is an offset into the dictionary content and not a back-reference offset, so setting this to 0 will make the repeat value point to the first value of the dictionary. The value must be less than the dictionary length-8. ## Encoding From the decoder point of view the dictionary content is seen as preceding the encoded content. `[dictionary content][decoded output]` Backreferences to the dictionary are encoded as ordinary backreferences that have an offset before the start of the decoded block. Matches copying from the dictionary are **not** allowed to cross from the dictionary into the decoded data. However, if a copy ends at the end of the dictionary the next repeat will point to the start of the decoded buffer, which is allowed. The first match can be a repeat value, which will use the repeat offset stored in the dictionary. When 64KB (65536 bytes) has been en/decoded it is no longer allowed to reference the dictionary, neither by a copy nor repeat operations. If the boundary is crossed while copying from the dictionary, the operation should complete, but the next instruction is not allowed to reference the dictionary. Valid blocks encoded *without* a dictionary can be decoded with any dictionary. There are no checks whether the supplied dictionary is the correct for a block. Because of this there is no overhead by using a dictionary. ## Streams For streams each block can use the dictionary. The dictionary is not provided on the stream. --- s2/README.md | 186 +++++++- s2/_generate/gen.go | 12 +- s2/decode.go | 368 +++++++++++++++ s2/dict.go | 331 ++++++++++++++ s2/dict_test.go | 493 ++++++++++++++++++++ s2/encode.go | 4 +- s2/encode_all.go | 592 ++++++++++++++++++++++++ s2/encode_best.go | 190 +++++++- s2/encode_better.go | 622 ++++++++++++++++++++++++++ s2/examples_test.go | 102 +++++ s2/testdata/fuzz/block-corpus-enc.zip | Bin 2235945 -> 2848855 bytes s2/testdata/s2-dict.bin.gz | Bin 0 -> 32405 bytes zstd/dict.go | 43 +- zstd/enc_base.go | 2 +- 14 files changed, 2907 insertions(+), 38 deletions(-) create mode 100644 s2/dict.go create mode 100644 s2/dict_test.go create mode 100644 s2/examples_test.go create mode 100644 s2/testdata/s2-dict.bin.gz diff --git a/s2/README.md b/s2/README.md index 1d80c42a53..8284bb0810 100644 --- a/s2/README.md +++ b/s2/README.md @@ -20,11 +20,12 @@ This is important, so you don't have to worry about spending CPU cycles on alrea * Concurrent stream compression * Faster decompression, even for Snappy compatible content * Concurrent Snappy/S2 stream decompression -* Ability to quickly skip forward in compressed stream +* Skip forward in compressed stream * Random seeking with indexes * Compatible with reading Snappy compressed content * Smaller block size overhead on incompressible blocks * Block concatenation +* Block Dictionary support * Uncompressed stream mode * Automatic stream size padding * Snappy compatible block compression @@ -594,6 +595,123 @@ Best... 10737418240 -> 4210602774 [39.21%]; 42.96s, 254.4MB/s Decompression speed should be around the same as using the 'better' compression mode. +## Dictionaries + +*Note: S2 dictionary compression is currently at an early implementation stage, with no assembly for +neither encoding nor decoding. Performance improvements can be expected in the future.* + +Adding dictionaries allow providing a custom dictionary that will serve as lookup in the beginning of blocks. + +The same dictionary *must* be used for both encoding and decoding. +S2 does not keep track of whether the same dictionary is used, +and using the wrong dictionary will most often not result in an error when decompressing. + +Blocks encoded *without* dictionaries can be decompressed seamlessly *with* a dictionary. +This means it is possible to switch from an encoding without dictionaries to an encoding with dictionaries +and treat the blocks similarly. + +Similar to [zStandard dictionaries](https://github.com/facebook/zstd#the-case-for-small-data-compression), +the same usage scenario applies to S2 dictionaries. + +> Training works if there is some correlation in a family of small data samples. The more data-specific a dictionary is, the more efficient it is (there is no universal dictionary). Hence, deploying one dictionary per type of data will provide the greatest benefits. Dictionary gains are mostly effective in the first few KB. Then, the compression algorithm will gradually use previously decoded content to better compress the rest of the file. + +S2 further limits the dictionary to only be enabled on the first 64KB of a block. +This will remove any negative (speed) impacts of the dictionaries on bigger blocks. + +### Compression + +Using the [github_users_sample_set](https://github.com/facebook/zstd/releases/download/v1.1.3/github_users_sample_set.tar.zst) +and a 64KB dictionary trained with zStandard the following sizes can be achieved. + +| | Default | Better | Best | +|--------------------|------------------|------------------|-----------------------| +| Without Dictionary | 3362023 (44.92%) | 3083163 (41.19%) | 3057944 (40.86%) | +| With Dictionary | 921524 (12.31%) | 873154 (11.67%) | 785503 bytes (10.49%) | + +So for highly repetitive content, this case provides an almost 3x reduction in size. + +For less uniform data we will use the Go source code tree. +Compressing First 64KB of all `.go` files in `go/src`, Go 1.19.5, 8912 files, 51253563 bytes input: + +| | Default | Better | Best | +|--------------------|-------------------|-------------------|-------------------| +| Without Dictionary | 22955767 (44.79%) | 20189613 (39.39% | 19482828 (38.01%) | +| With Dictionary | 19654568 (38.35%) | 16289357 (31.78%) | 15184589 (29.63%) | +| Saving/file | 362 bytes | 428 bytes | 472 bytes | + + +### Creating Dictionaries + +There are no tools to create dictionaries in S2. +However, there are multiple ways to create a useful dictionary: + +#### Using a Sample File + +If your input is very uniform, you can just use a sample file as the dictionary. + +For example in the `github_users_sample_set` above, the average compression only goes up from +10.49% to 11.48% by using the first file as dictionary compared to using a dedicated dictionary. + +```Go + // Read a sample + sample, err := os.ReadFile("sample.json") + + // Create a dictionary. + dict := s2.MakeDict(sample, nil) + + // b := dict.Bytes() will provide a dictionary that can be saved + // and reloaded with s2.NewDict(b). + + // To encode: + encoded := dict.Encode(nil, file) + + // To decode: + decoded, err := dict.Decode(nil, file) +``` + +#### Using Zstandard + +Zstandard dictionaries can easily be converted to S2 dictionaries. + +This can be helpful to generate dictionaries for files that don't have a fixed structure. + + +Example, with training set files placed in `./training-set`: + +`λ zstd -r --train-fastcover training-set/* --maxdict=65536 -o name.dict` + +This will create a dictionary of 64KB, that can be converted to a dictionary like this: + +```Go + // Decode the Zstandard dictionary. + insp, err := zstd.InspectDictionary(zdict) + if err != nil { + panic(err) + } + + // We are only interested in the contents. + // Assume that files start with "// Copyright (c) 2023". + // Search for the longest match for that. + // This may save a few bytes. + dict := s2.MakeDict(insp.Content(), []byte("// Copyright (c) 2023")) + + // b := dict.Bytes() will provide a dictionary that can be saved + // and reloaded with s2.NewDict(b). + + // We can now encode using this dictionary + encodedWithDict := dict.Encode(nil, payload) + + // To decode content: + decoded, err := dict.Decode(nil, encodedWithDict) +``` + +It is recommended to save the dictionary returned by ` b:= dict.Bytes()`, since that will contain only the S2 dictionary. + +This dictionary can later be loaded using `s2.NewDict(b)`. The dictionary then no longer requires `zstd` to be initialized. + +Also note how `s2.MakeDict` allows you to search for a common starting sequence of your files. +This can be omitted, at the expense of a few bytes. + # Snappy Compatibility S2 now offers full compatibility with Snappy. @@ -929,6 +1047,72 @@ The first copy of a block cannot be a repeat offset and the offset is reset on e Default streaming block size is 1MB. +# Dictionary Encoding + +Adding dictionaries allow providing a custom dictionary that will serve as lookup in the beginning of blocks. + +A dictionary provides an initial repeat value that can be used to point to a common header. + +Other than that the dictionary contains values that can be used as back-references. + +Often used data should be placed at the *end* of the dictionary since offsets < 2048 bytes will be smaller. + +## Format + +Dictionary *content* must at least 16 bytes and less or equal to 64KiB (65536 bytes). + +Encoding: `[repeat value (uvarint)][dictionary content...]` + +Before the dictionary content, an unsigned base-128 (uvarint) encoded value specifying the initial repeat offset. +This value is an offset into the dictionary content and not a back-reference offset, +so setting this to 0 will make the repeat value point to the first value of the dictionary. + +The value must be less than the dictionary length-8 + +## Encoding + +From the decoder point of view the dictionary content is seen as preceding the encoded content. + +`[dictionary content][decoded output]` + +Backreferences to the dictionary are encoded as ordinary backreferences that have an offset before the start of the decoded block. + +Matches copying from the dictionary are **not** allowed to cross from the dictionary into the decoded data. +However, if a copy ends at the end of the dictionary the next repeat will point to the start of the decoded buffer, which is allowed. + +The first match can be a repeat value, which will use the repeat offset stored in the dictionary. + +When 64KB (65536 bytes) has been en/decoded it is no longer allowed to reference the dictionary, +neither by a copy nor repeat operations. +If the boundary is crossed while copying from the dictionary, the operation should complete, +but the next instruction is not allowed to reference the dictionary. + +Valid blocks encoded *without* a dictionary can be decoded with any dictionary. +There are no checks whether the supplied dictionary is the correct for a block. +Because of this there is no overhead by using a dictionary. + +## Example + +This is the dictionary content. Elements are separated by `[]`. + +Dictionary: `[0x0a][Yesterday 25 bananas were added to Benjamins brown bag]`. + +Initial repeat offset is set at 10, which is the letter `2`. + +Encoded `[LIT "10"][REPEAT len=10][LIT "hich"][MATCH off=50 len=6][MATCH off=31 len=6][MATCH off=61 len=10]` + +Decoded: `[10][ bananas w][hich][ were ][brown ][were added]` + +Output: `10 bananas which were brown were added` + + +## Streams + +For streams each block can use the dictionary. + +The dictionary cannot not currently be provided on the stream. + + # LICENSE This code is based on the [Snappy-Go](https://github.com/golang/snappy) implementation. diff --git a/s2/_generate/gen.go b/s2/_generate/gen.go index ec0d83a8ad..c5be5443de 100644 --- a/s2/_generate/gen.go +++ b/s2/_generate/gen.go @@ -1067,14 +1067,12 @@ func (o options) genEncodeBetterBlockAsm(name string, lTableBits, sTableBits, sk SUBL(repeatL, rep) // rep = s - repeat // if uint32(cv>>(checkRep*8)) == load32(src, s-repeat+checkRep) { - left, right := GP64(), GP64() - MOVQ(Mem{Base: src, Index: rep, Disp: 0, Scale: 1}, right.As64()) - MOVQ(cv, left) tmp := GP64() - MOVQ(U64(repeatMask), tmp) - ANDQ(tmp, left) - ANDQ(tmp, right) - CMPQ(left.As64(), right.As64()) + mask := GP64() + MOVQ(Mem{Base: src, Index: rep, Disp: 0, Scale: 1}, tmp.As64()) + MOVQ(U64(repeatMask), mask) + XORQ(cv.As64(), tmp.As64()) + TESTQ(mask.As64(), tmp.As64()) // BAIL, no repeat. JNE(LabelRef("no_repeat_found_" + name)) } diff --git a/s2/decode.go b/s2/decode.go index a89db8f96a..b7c9adfdd8 100644 --- a/s2/decode.go +++ b/s2/decode.go @@ -13,6 +13,7 @@ import ( "io/ioutil" "math" "runtime" + "strconv" "sync" ) @@ -1111,3 +1112,370 @@ func (r *Reader) SkippableCB(id uint8, fn func(r io.Reader) error) error { r.skippableCB[id] = fn return nil } + +// s2DecodeDict writes the decoding of src to dst. It assumes that the varint-encoded +// length of the decompressed bytes has already been read, and that len(dst) +// equals that length. +// +// It returns 0 on success or a decodeErrCodeXxx error code on failure. +func s2DecodeDict(dst, src []byte, dict *Dict) int { + if dict == nil { + return s2Decode(dst, src) + } + const debug = false + const debugErrs = debug + + if debug { + fmt.Println("Starting decode, dst len:", len(dst)) + } + var d, s, length int + offset := len(dict.dict) - dict.repeat + + // As long as we can read at least 5 bytes... + for s < len(src)-5 { + // Removing bounds checks is SLOWER, when if doing + // in := src[s:s+5] + // Checked on Go 1.18 + switch src[s] & 0x03 { + case tagLiteral: + x := uint32(src[s] >> 2) + switch { + case x < 60: + s++ + case x == 60: + s += 2 + x = uint32(src[s-1]) + case x == 61: + in := src[s : s+3] + x = uint32(in[1]) | uint32(in[2])<<8 + s += 3 + case x == 62: + in := src[s : s+4] + // Load as 32 bit and shift down. + x = uint32(in[0]) | uint32(in[1])<<8 | uint32(in[2])<<16 | uint32(in[3])<<24 + x >>= 8 + s += 4 + case x == 63: + in := src[s : s+5] + x = uint32(in[1]) | uint32(in[2])<<8 | uint32(in[3])<<16 | uint32(in[4])<<24 + s += 5 + } + length = int(x) + 1 + if debug { + fmt.Println("literals, length:", length, "d-after:", d+length) + } + if length > len(dst)-d || length > len(src)-s || (strconv.IntSize == 32 && length <= 0) { + if debugErrs { + fmt.Println("corrupt literal: length:", length, "d-left:", len(dst)-d, "src-left:", len(src)-s) + } + return decodeErrCodeCorrupt + } + + copy(dst[d:], src[s:s+length]) + d += length + s += length + continue + + case tagCopy1: + s += 2 + toffset := int(uint32(src[s-2])&0xe0<<3 | uint32(src[s-1])) + length = int(src[s-2]) >> 2 & 0x7 + if toffset == 0 { + if debug { + fmt.Print("(repeat) ") + } + // keep last offset + switch length { + case 5: + length = int(src[s]) + 4 + s += 1 + case 6: + in := src[s : s+2] + length = int(uint32(in[0])|(uint32(in[1])<<8)) + (1 << 8) + s += 2 + case 7: + in := src[s : s+3] + length = int((uint32(in[2])<<16)|(uint32(in[1])<<8)|uint32(in[0])) + (1 << 16) + s += 3 + default: // 0-> 4 + } + } else { + offset = toffset + } + length += 4 + case tagCopy2: + in := src[s : s+3] + offset = int(uint32(in[1]) | uint32(in[2])<<8) + length = 1 + int(in[0])>>2 + s += 3 + + case tagCopy4: + in := src[s : s+5] + offset = int(uint32(in[1]) | uint32(in[2])<<8 | uint32(in[3])<<16 | uint32(in[4])<<24) + length = 1 + int(in[0])>>2 + s += 5 + } + + if offset <= 0 || length > len(dst)-d { + if debugErrs { + fmt.Println("match error; offset:", offset, "length:", length, "dst-left:", len(dst)-d) + } + return decodeErrCodeCorrupt + } + + // copy from dict + if d < offset { + if d > MaxDictSrcOffset { + if debugErrs { + fmt.Println("dict after", MaxDictSrcOffset, "d:", d, "offset:", offset, "length:", length) + } + return decodeErrCodeCorrupt + } + startOff := len(dict.dict) - offset + d + if startOff < 0 || startOff+length > len(dict.dict) { + if debugErrs { + fmt.Printf("offset (%d) + length (%d) bigger than dict (%d)\n", offset, length, len(dict.dict)) + } + return decodeErrCodeCorrupt + } + if debug { + fmt.Println("dict copy, length:", length, "offset:", offset, "d-after:", d+length, "dict start offset:", startOff) + } + copy(dst[d:d+length], dict.dict[startOff:]) + d += length + continue + } + + if debug { + fmt.Println("copy, length:", length, "offset:", offset, "d-after:", d+length) + } + + // Copy from an earlier sub-slice of dst to a later sub-slice. + // If no overlap, use the built-in copy: + if offset > length { + copy(dst[d:d+length], dst[d-offset:]) + d += length + continue + } + + // Unlike the built-in copy function, this byte-by-byte copy always runs + // forwards, even if the slices overlap. Conceptually, this is: + // + // d += forwardCopy(dst[d:d+length], dst[d-offset:]) + // + // We align the slices into a and b and show the compiler they are the same size. + // This allows the loop to run without bounds checks. + a := dst[d : d+length] + b := dst[d-offset:] + b = b[:len(a)] + for i := range a { + a[i] = b[i] + } + d += length + } + + // Remaining with extra checks... + for s < len(src) { + switch src[s] & 0x03 { + case tagLiteral: + x := uint32(src[s] >> 2) + switch { + case x < 60: + s++ + case x == 60: + s += 2 + if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line. + if debugErrs { + fmt.Println("src went oob") + } + return decodeErrCodeCorrupt + } + x = uint32(src[s-1]) + case x == 61: + s += 3 + if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line. + if debugErrs { + fmt.Println("src went oob") + } + return decodeErrCodeCorrupt + } + x = uint32(src[s-2]) | uint32(src[s-1])<<8 + case x == 62: + s += 4 + if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line. + if debugErrs { + fmt.Println("src went oob") + } + return decodeErrCodeCorrupt + } + x = uint32(src[s-3]) | uint32(src[s-2])<<8 | uint32(src[s-1])<<16 + case x == 63: + s += 5 + if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line. + if debugErrs { + fmt.Println("src went oob") + } + return decodeErrCodeCorrupt + } + x = uint32(src[s-4]) | uint32(src[s-3])<<8 | uint32(src[s-2])<<16 | uint32(src[s-1])<<24 + } + length = int(x) + 1 + if length > len(dst)-d || length > len(src)-s || (strconv.IntSize == 32 && length <= 0) { + if debugErrs { + fmt.Println("corrupt literal: length:", length, "d-left:", len(dst)-d, "src-left:", len(src)-s) + } + return decodeErrCodeCorrupt + } + if debug { + fmt.Println("literals, length:", length, "d-after:", d+length) + } + + copy(dst[d:], src[s:s+length]) + d += length + s += length + continue + + case tagCopy1: + s += 2 + if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line. + if debugErrs { + fmt.Println("src went oob") + } + return decodeErrCodeCorrupt + } + length = int(src[s-2]) >> 2 & 0x7 + toffset := int(uint32(src[s-2])&0xe0<<3 | uint32(src[s-1])) + if toffset == 0 { + if debug { + fmt.Print("(repeat) ") + } + // keep last offset + switch length { + case 5: + s += 1 + if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line. + if debugErrs { + fmt.Println("src went oob") + } + return decodeErrCodeCorrupt + } + length = int(uint32(src[s-1])) + 4 + case 6: + s += 2 + if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line. + if debugErrs { + fmt.Println("src went oob") + } + return decodeErrCodeCorrupt + } + length = int(uint32(src[s-2])|(uint32(src[s-1])<<8)) + (1 << 8) + case 7: + s += 3 + if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line. + if debugErrs { + fmt.Println("src went oob") + } + return decodeErrCodeCorrupt + } + length = int(uint32(src[s-3])|(uint32(src[s-2])<<8)|(uint32(src[s-1])<<16)) + (1 << 16) + default: // 0-> 4 + } + } else { + offset = toffset + } + length += 4 + case tagCopy2: + s += 3 + if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line. + if debugErrs { + fmt.Println("src went oob") + } + return decodeErrCodeCorrupt + } + length = 1 + int(src[s-3])>>2 + offset = int(uint32(src[s-2]) | uint32(src[s-1])<<8) + + case tagCopy4: + s += 5 + if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line. + if debugErrs { + fmt.Println("src went oob") + } + return decodeErrCodeCorrupt + } + length = 1 + int(src[s-5])>>2 + offset = int(uint32(src[s-4]) | uint32(src[s-3])<<8 | uint32(src[s-2])<<16 | uint32(src[s-1])<<24) + } + + if offset <= 0 || length > len(dst)-d { + if debugErrs { + fmt.Println("match error; offset:", offset, "length:", length, "dst-left:", len(dst)-d) + } + return decodeErrCodeCorrupt + } + + // copy from dict + if d < offset { + if d > MaxDictSrcOffset { + if debugErrs { + fmt.Println("dict after", MaxDictSrcOffset, "d:", d, "offset:", offset, "length:", length) + } + return decodeErrCodeCorrupt + } + rOff := len(dict.dict) - (offset - d) + if debug { + fmt.Println("starting dict entry from dict offset", len(dict.dict)-rOff) + } + if rOff+length > len(dict.dict) { + if debugErrs { + fmt.Println("err: END offset", rOff+length, "bigger than dict", len(dict.dict), "dict offset:", rOff, "length:", length) + } + return decodeErrCodeCorrupt + } + if rOff < 0 { + if debugErrs { + fmt.Println("err: START offset", rOff, "less than 0", len(dict.dict), "dict offset:", rOff, "length:", length) + } + return decodeErrCodeCorrupt + } + copy(dst[d:d+length], dict.dict[rOff:]) + d += length + continue + } + + if debug { + fmt.Println("copy, length:", length, "offset:", offset, "d-after:", d+length) + } + + // Copy from an earlier sub-slice of dst to a later sub-slice. + // If no overlap, use the built-in copy: + if offset > length { + copy(dst[d:d+length], dst[d-offset:]) + d += length + continue + } + + // Unlike the built-in copy function, this byte-by-byte copy always runs + // forwards, even if the slices overlap. Conceptually, this is: + // + // d += forwardCopy(dst[d:d+length], dst[d-offset:]) + // + // We align the slices into a and b and show the compiler they are the same size. + // This allows the loop to run without bounds checks. + a := dst[d : d+length] + b := dst[d-offset:] + b = b[:len(a)] + for i := range a { + a[i] = b[i] + } + d += length + } + + if d != len(dst) { + if debugErrs { + fmt.Println("wanted length", len(dst), "got", d) + } + return decodeErrCodeCorrupt + } + return 0 +} diff --git a/s2/dict.go b/s2/dict.go new file mode 100644 index 0000000000..24f7ce80bc --- /dev/null +++ b/s2/dict.go @@ -0,0 +1,331 @@ +// Copyright (c) 2022+ Klaus Post. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package s2 + +import ( + "bytes" + "encoding/binary" + "sync" +) + +const ( + // MinDictSize is the minimum dictionary size when repeat has been read. + MinDictSize = 16 + + // MaxDictSize is the maximum dictionary size when repeat has been read. + MaxDictSize = 65536 + + // MaxDictSrcOffset is the maximum offset where a dictionary entry can start. + MaxDictSrcOffset = 65535 +) + +// Dict contains a dictionary that can be used for encoding and decoding s2 +type Dict struct { + dict []byte + repeat int // Repeat as index of dict + + fast, better, best sync.Once + fastTable *[1 << 14]uint16 + + betterTableShort *[1 << 14]uint16 + betterTableLong *[1 << 17]uint16 + + bestTableShort *[1 << 16]uint32 + bestTableLong *[1 << 19]uint32 +} + +// NewDict will read a dictionary. +// It will return nil if the dictionary is invalid. +func NewDict(dict []byte) *Dict { + if len(dict) == 0 { + return nil + } + var d Dict + // Repeat is the first value of the dict + r, n := binary.Uvarint(dict) + if n <= 0 { + return nil + } + dict = dict[n:] + d.dict = dict + if cap(d.dict) < len(d.dict)+16 { + d.dict = append(make([]byte, 0, len(d.dict)+16), d.dict...) + } + if len(dict) < MinDictSize || len(dict) > MaxDictSize { + return nil + } + d.repeat = int(r) + if d.repeat > len(dict) { + return nil + } + return &d +} + +// Bytes will return a serialized version of the dictionary. +// The output can be sent to NewDict. +func (d *Dict) Bytes() []byte { + dst := make([]byte, binary.MaxVarintLen16+len(d.dict)) + return append(dst[:binary.PutUvarint(dst, uint64(d.repeat))], d.dict...) +} + +// MakeDict will create a dictionary. +// 'data' must be at least MinDictSize. +// If data is longer than MaxDictSize only the last MaxDictSize bytes will be used. +// If searchStart is set the start repeat value will be set to the last +// match of this content. +// If no matches are found, it will attempt to find shorter matches. +// This content should match the typical start of a block. +// If at least 4 bytes cannot be matched, repeat is set to start of block. +func MakeDict(data []byte, searchStart []byte) *Dict { + if len(data) == 0 { + return nil + } + if len(data) > MaxDictSize { + data = data[len(data)-MaxDictSize:] + } + var d Dict + dict := data + d.dict = dict + if cap(d.dict) < len(d.dict)+16 { + d.dict = append(make([]byte, 0, len(d.dict)+16), d.dict...) + } + if len(dict) < MinDictSize { + return nil + } + + // Find the longest match possible, last entry if multiple. + for s := len(searchStart); s > 4; s-- { + if idx := bytes.LastIndex(data, searchStart[:s]); idx >= 0 && idx <= len(data)-8 { + d.repeat = idx + break + } + } + + return &d +} + +// Encode returns the encoded form of src. The returned slice may be a sub- +// slice of dst if dst was large enough to hold the entire encoded block. +// Otherwise, a newly allocated slice will be returned. +// +// The dst and src must not overlap. It is valid to pass a nil dst. +// +// The blocks will require the same amount of memory to decode as encoding, +// and does not make for concurrent decoding. +// Also note that blocks do not contain CRC information, so corruption may be undetected. +// +// If you need to encode larger amounts of data, consider using +// the streaming interface which gives all of these features. +func (d *Dict) Encode(dst, src []byte) []byte { + if n := MaxEncodedLen(len(src)); n < 0 { + panic(ErrTooLarge) + } else if cap(dst) < n { + dst = make([]byte, n) + } else { + dst = dst[:n] + } + + // The block starts with the varint-encoded length of the decompressed bytes. + dstP := binary.PutUvarint(dst, uint64(len(src))) + + if len(src) == 0 { + return dst[:dstP] + } + if len(src) < minNonLiteralBlockSize { + dstP += emitLiteral(dst[dstP:], src) + return dst[:dstP] + } + n := encodeBlockDictGo(dst[dstP:], src, d) + if n > 0 { + dstP += n + return dst[:dstP] + } + // Not compressible + dstP += emitLiteral(dst[dstP:], src) + return dst[:dstP] +} + +// EncodeBetter returns the encoded form of src. The returned slice may be a sub- +// slice of dst if dst was large enough to hold the entire encoded block. +// Otherwise, a newly allocated slice will be returned. +// +// EncodeBetter compresses better than Encode but typically with a +// 10-40% speed decrease on both compression and decompression. +// +// The dst and src must not overlap. It is valid to pass a nil dst. +// +// The blocks will require the same amount of memory to decode as encoding, +// and does not make for concurrent decoding. +// Also note that blocks do not contain CRC information, so corruption may be undetected. +// +// If you need to encode larger amounts of data, consider using +// the streaming interface which gives all of these features. +func (d *Dict) EncodeBetter(dst, src []byte) []byte { + if n := MaxEncodedLen(len(src)); n < 0 { + panic(ErrTooLarge) + } else if len(dst) < n { + dst = make([]byte, n) + } + + // The block starts with the varint-encoded length of the decompressed bytes. + dstP := binary.PutUvarint(dst, uint64(len(src))) + + if len(src) == 0 { + return dst[:dstP] + } + if len(src) < minNonLiteralBlockSize { + dstP += emitLiteral(dst[dstP:], src) + return dst[:dstP] + } + n := encodeBlockBetterDict(dst[dstP:], src, d) + if n > 0 { + dstP += n + return dst[:dstP] + } + // Not compressible + dstP += emitLiteral(dst[dstP:], src) + return dst[:dstP] +} + +// EncodeBest returns the encoded form of src. The returned slice may be a sub- +// slice of dst if dst was large enough to hold the entire encoded block. +// Otherwise, a newly allocated slice will be returned. +// +// EncodeBest compresses as good as reasonably possible but with a +// big speed decrease. +// +// The dst and src must not overlap. It is valid to pass a nil dst. +// +// The blocks will require the same amount of memory to decode as encoding, +// and does not make for concurrent decoding. +// Also note that blocks do not contain CRC information, so corruption may be undetected. +// +// If you need to encode larger amounts of data, consider using +// the streaming interface which gives all of these features. +func (d *Dict) EncodeBest(dst, src []byte) []byte { + if n := MaxEncodedLen(len(src)); n < 0 { + panic(ErrTooLarge) + } else if len(dst) < n { + dst = make([]byte, n) + } + + // The block starts with the varint-encoded length of the decompressed bytes. + dstP := binary.PutUvarint(dst, uint64(len(src))) + + if len(src) == 0 { + return dst[:dstP] + } + if len(src) < minNonLiteralBlockSize { + dstP += emitLiteral(dst[dstP:], src) + return dst[:dstP] + } + n := encodeBlockBest(dst[dstP:], src, d) + if n > 0 { + dstP += n + return dst[:dstP] + } + // Not compressible + dstP += emitLiteral(dst[dstP:], src) + return dst[:dstP] +} + +// Decode returns the decoded form of src. The returned slice may be a sub- +// slice of dst if dst was large enough to hold the entire decoded block. +// Otherwise, a newly allocated slice will be returned. +// +// The dst and src must not overlap. It is valid to pass a nil dst. +func (d *Dict) Decode(dst, src []byte) ([]byte, error) { + dLen, s, err := decodedLen(src) + if err != nil { + return nil, err + } + if dLen <= cap(dst) { + dst = dst[:dLen] + } else { + dst = make([]byte, dLen) + } + if s2DecodeDict(dst, src[s:], d) != 0 { + return nil, ErrCorrupt + } + return dst, nil +} + +func (d *Dict) initFast() { + d.fast.Do(func() { + const ( + tableBits = 14 + maxTableSize = 1 << tableBits + ) + + var table [maxTableSize]uint16 + // We stop so any entry of length 8 can always be read. + for i := 0; i < len(d.dict)-8-2; i += 3 { + x0 := load64(d.dict, i) + h0 := hash6(x0, tableBits) + h1 := hash6(x0>>8, tableBits) + h2 := hash6(x0>>16, tableBits) + table[h0] = uint16(i) + table[h1] = uint16(i + 1) + table[h2] = uint16(i + 2) + } + d.fastTable = &table + }) +} + +func (d *Dict) initBetter() { + d.better.Do(func() { + const ( + // Long hash matches. + lTableBits = 17 + maxLTableSize = 1 << lTableBits + + // Short hash matches. + sTableBits = 14 + maxSTableSize = 1 << sTableBits + ) + + var lTable [maxLTableSize]uint16 + var sTable [maxSTableSize]uint16 + + // We stop so any entry of length 8 can always be read. + for i := 0; i < len(d.dict)-8; i++ { + cv := load64(d.dict, i) + lTable[hash7(cv, lTableBits)] = uint16(i) + sTable[hash4(cv, sTableBits)] = uint16(i) + } + d.betterTableShort = &sTable + d.betterTableLong = &lTable + }) +} + +func (d *Dict) initBest() { + d.best.Do(func() { + const ( + // Long hash matches. + lTableBits = 19 + maxLTableSize = 1 << lTableBits + + // Short hash matches. + sTableBits = 16 + maxSTableSize = 1 << sTableBits + ) + + var lTable [maxLTableSize]uint32 + var sTable [maxSTableSize]uint32 + + // We stop so any entry of length 8 can always be read. + for i := 0; i < len(d.dict)-8; i++ { + cv := load64(d.dict, i) + hashL := hash8(cv, lTableBits) + hashS := hash4(cv, sTableBits) + candidateL := lTable[hashL] + candidateS := sTable[hashS] + lTable[hashL] = uint32(i) | candidateL<<16 + sTable[hashS] = uint32(i) | candidateS<<16 + } + d.bestTableShort = &sTable + d.bestTableLong = &lTable + }) +} diff --git a/s2/dict_test.go b/s2/dict_test.go new file mode 100644 index 0000000000..c0bab2d87e --- /dev/null +++ b/s2/dict_test.go @@ -0,0 +1,493 @@ +// Copyright (c) 2023+ Klaus Post. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package s2 + +import ( + "archive/tar" + "bytes" + "compress/gzip" + "fmt" + "io" + "math/rand" + "os" + "testing" + + "github.com/klauspost/compress/internal/fuzz" + "github.com/klauspost/compress/zstd" +) + +func TestDict(t *testing.T) { + rng := rand.New(rand.NewSource(1)) + data := make([]byte, 128<<10) + for i := range data { + data[i] = uint8(rng.Intn(256)) + } + + // Should match the first 64K + d := NewDict(append([]byte{0}, data[:65536]...)) + encoded := make([]byte, MaxEncodedLen(len(data))) + res := encodeBlockDictGo(encoded, data, d) + if res == 0 || res > len(data)-65500 { + t.Errorf("did no get expected dict saving. Saved %d bytes", len(data)-res) + } + encoded = encoded[:res] + t.Log("saved", len(data)-res, "bytes") + decoded := make([]byte, len(data)) + res = s2DecodeDict(decoded, encoded, d) + if res != 0 { + t.Fatalf("got result: %d", res) + } + if !bytes.Equal(decoded, data) { + //os.WriteFile("decoded.bin", decoded, os.ModePerm) + //os.WriteFile("original.bin", data, os.ModePerm) + t.Fatal("decoded mismatch") + } + + // Add dict that will produce a full match 5000 chars into the input. + d = NewDict(append([]byte{0}, data[5000:65536+5000]...)) + encoded = make([]byte, MaxEncodedLen(len(data))) + res = encodeBlockDictGo(encoded, data, d) + if res == 0 || res > len(data)-65500 { + t.Errorf("did no get expected dict saving. Saved %d bytes", len(data)-res) + } + encoded = encoded[:res] + t.Log("saved", len(data)-res, "bytes") + decoded = make([]byte, len(data)) + res = s2DecodeDict(decoded, encoded, d) + if res != 0 { + t.Fatalf("got result: %d", res) + } + if !bytes.Equal(decoded, data) { + //os.WriteFile("decoded.bin", decoded, os.ModePerm) + //os.WriteFile("original.bin", data, os.ModePerm) + t.Fatal("decoded mismatch") + } + + // generate copies + for i := 1; i < len(data); { + n := rng.Intn(32) + 4 + off := rng.Intn(len(data) - n) + copy(data[i:], data[off:off+n]) + i += n + } + + dict := make([]byte, 65536) + for i := 1; i < len(dict); { + n := rng.Intn(32) + 4 + off := rng.Intn(65536 - n) + copy(dict[i:], data[off:off+n]) + i += n + } + d = NewDict(dict) + encoded = make([]byte, MaxEncodedLen(len(data))) + res = encodeBlockDictGo(encoded, data, d) + if res == 0 || res > len(data)-20000 { + t.Errorf("did no get expected dict saving. Saved %d bytes", len(data)-res) + } + encoded = encoded[:res] + t.Log("saved", len(data)-res, "bytes") + decoded = make([]byte, len(data)) + res = s2DecodeDict(decoded, encoded, d) + if res != 0 { + t.Fatalf("got result: %d", res) + } + if !bytes.Equal(decoded, data) { + os.WriteFile("decoded.bin", decoded, os.ModePerm) + os.WriteFile("original.bin", data, os.ModePerm) + t.Fatal("decoded mismatch") + } +} + +func TestDictBetter(t *testing.T) { + rng := rand.New(rand.NewSource(1)) + data := make([]byte, 128<<10) + for i := range data { + data[i] = uint8(rng.Intn(256)) + } + + // Should match the first 64K + d := NewDict(append([]byte{0}, data[:65536]...)) + encoded := make([]byte, MaxEncodedLen(len(data))) + res := encodeBlockBetterDict(encoded, data, d) + if res == 0 || res > len(data)-65500 { + t.Errorf("did no get expected dict saving. Saved %d bytes", len(data)-res) + } + encoded = encoded[:res] + t.Log("saved", len(data)-res, "bytes") + decoded := make([]byte, len(data)) + res = s2DecodeDict(decoded, encoded, d) + if res != 0 { + t.Fatalf("got result: %d", res) + } + if !bytes.Equal(decoded, data) { + //os.WriteFile("decoded.bin", decoded, os.ModePerm) + //os.WriteFile("original.bin", data, os.ModePerm) + t.Fatal("decoded mismatch") + } + + // Add dict that will produce a full match 5000 chars into the input. + d = NewDict(append([]byte{0}, data[5000:65536+5000]...)) + encoded = make([]byte, MaxEncodedLen(len(data))) + res = encodeBlockBetterDict(encoded, data, d) + if res == 0 || res > len(data)-65500 { + t.Errorf("did no get expected dict saving. Saved %d bytes", len(data)-res) + } + encoded = encoded[:res] + t.Log("saved", len(data)-res, "bytes") + decoded = make([]byte, len(data)) + res = s2DecodeDict(decoded, encoded, d) + if res != 0 { + t.Fatalf("got result: %d", res) + } + if !bytes.Equal(decoded, data) { + //os.WriteFile("decoded.bin", decoded, os.ModePerm) + //os.WriteFile("original.bin", data, os.ModePerm) + t.Fatal("decoded mismatch") + } + + // generate copies + for i := 1; i < len(data); { + n := rng.Intn(32) + 4 + off := rng.Intn(len(data) - n) + copy(data[i:], data[off:off+n]) + i += n + } + + dict := make([]byte, 65536) + for i := 1; i < len(dict); { + n := rng.Intn(32) + 4 + off := rng.Intn(65536 - n) + copy(dict[i:], data[off:off+n]) + i += n + } + d = NewDict(dict) + encoded = make([]byte, MaxEncodedLen(len(data))) + res = encodeBlockBetterDict(encoded, data, d) + if res == 0 || res > len(data)-20000 { + t.Errorf("did no get expected dict saving. Saved %d bytes", len(data)-res) + } + encoded = encoded[:res] + t.Log("saved", len(data)-res, "bytes") + decoded = make([]byte, len(data)) + res = s2DecodeDict(decoded, encoded, d) + if res != 0 { + t.Fatalf("got result: %d", res) + } + if !bytes.Equal(decoded, data) { + os.WriteFile("decoded.bin", decoded, os.ModePerm) + os.WriteFile("original.bin", data, os.ModePerm) + t.Fatal("decoded mismatch") + } +} + +func TestDictBest(t *testing.T) { + rng := rand.New(rand.NewSource(1)) + data := make([]byte, 128<<10) + for i := range data { + data[i] = uint8(rng.Intn(256)) + } + + // Should match the first 64K + d := NewDict(append([]byte{0}, data[:65536]...)) + encoded := make([]byte, MaxEncodedLen(len(data))) + res := encodeBlockBest(encoded, data, d) + if res == 0 || res > len(data)-65500 { + t.Errorf("did no get expected dict saving. Saved %d bytes", len(data)-res) + } + encoded = encoded[:res] + t.Log("saved", len(data)-res, "bytes") + decoded := make([]byte, len(data)) + res = s2DecodeDict(decoded, encoded, d) + if res != 0 { + t.Fatalf("got result: %d", res) + } + if !bytes.Equal(decoded, data) { + //os.WriteFile("decoded.bin", decoded, os.ModePerm) + //os.WriteFile("original.bin", data, os.ModePerm) + t.Fatal("decoded mismatch") + } + + // Add dict that will produce a full match 5000 chars into the input. + d = NewDict(append([]byte{0}, data[5000:65536+5000]...)) + encoded = make([]byte, MaxEncodedLen(len(data))) + res = encodeBlockBest(encoded, data, d) + if res == 0 || res > len(data)-65500 { + t.Errorf("did no get expected dict saving. Saved %d bytes", len(data)-res) + } + encoded = encoded[:res] + t.Log("saved", len(data)-res, "bytes") + decoded = make([]byte, len(data)) + res = s2DecodeDict(decoded, encoded, d) + if res != 0 { + t.Fatalf("got result: %d", res) + } + if !bytes.Equal(decoded, data) { + //os.WriteFile("decoded.bin", decoded, os.ModePerm) + //os.WriteFile("original.bin", data, os.ModePerm) + t.Fatal("decoded mismatch") + } + + // generate copies + for i := 1; i < len(data); { + n := rng.Intn(32) + 4 + off := rng.Intn(len(data) - n) + copy(data[i:], data[off:off+n]) + i += n + } + + dict := make([]byte, 65536) + for i := 1; i < len(dict); { + n := rng.Intn(32) + 4 + off := rng.Intn(65536 - n) + copy(dict[i:], data[off:off+n]) + i += n + } + d = NewDict(dict) + encoded = make([]byte, MaxEncodedLen(len(data))) + res = encodeBlockBest(encoded, data, d) + if res == 0 || res > len(data)-20000 { + t.Errorf("did no get expected dict saving. Saved %d bytes", len(data)-res) + } + encoded = encoded[:res] + t.Log("saved", len(data)-res, "bytes") + decoded = make([]byte, len(data)) + res = s2DecodeDict(decoded, encoded, d) + if res != 0 { + t.Fatalf("got result: %d", res) + } + if !bytes.Equal(decoded, data) { + os.WriteFile("decoded.bin", decoded, os.ModePerm) + os.WriteFile("original.bin", data, os.ModePerm) + t.Fatal("decoded mismatch") + } +} + +func TestDictBetter2(t *testing.T) { + // Should match the first 64K + data := []byte("10 bananas which were brown were added") + d := NewDict(append([]byte{6}, []byte("Yesterday 25 bananas were added to Benjamins brown bag")...)) + encoded := make([]byte, MaxEncodedLen(len(data))) + res := encodeBlockBetterDict(encoded, data, d) + encoded = encoded[:res] + t.Log("saved", len(data)-res, "bytes") + t.Log(string(encoded)) + decoded := make([]byte, len(data)) + res = s2DecodeDict(decoded, encoded, d) + if res != 0 { + t.Fatalf("got result: %d", res) + } + if !bytes.Equal(decoded, data) { + //os.WriteFile("decoded.bin", decoded, os.ModePerm) + //os.WriteFile("original.bin", data, os.ModePerm) + t.Fatal("decoded mismatch") + } +} + +func TestDictBest2(t *testing.T) { + // Should match the first 64K + data := []byte("10 bananas which were brown were added") + d := NewDict(append([]byte{6}, []byte("Yesterday 25 bananas were added to Benjamins brown bag")...)) + encoded := make([]byte, MaxEncodedLen(len(data))) + res := encodeBlockBest(encoded, data, d) + encoded = encoded[:res] + t.Log("saved", len(data)-res, "bytes") + t.Log(string(encoded)) + decoded := make([]byte, len(data)) + res = s2DecodeDict(decoded, encoded, d) + if res != 0 { + t.Fatalf("got result: %d", res) + } + if !bytes.Equal(decoded, data) { + //os.WriteFile("decoded.bin", decoded, os.ModePerm) + //os.WriteFile("original.bin", data, os.ModePerm) + t.Fatal("decoded mismatch") + } +} + +func TestDictSize(t *testing.T) { + //f, err := os.Open("testdata/xlmeta.tar.s2") + //f, err := os.Open("testdata/broken.tar.s2") + f, err := os.Open("testdata/github_users_sample_set.tar.s2") + //f, err := os.Open("testdata/gofiles2.tar.s2") + //f, err := os.Open("testdata/gosrc.tar.s2") + if err != nil { + t.Skip(err) + } + stream := NewReader(f) + in := tar.NewReader(stream) + //rawDict, err := os.ReadFile("testdata/godict.dictator") + rawDict, err := os.ReadFile("testdata/gofiles.dict") + //rawDict, err := os.ReadFile("testdata/gosrc2.dict") + //rawDict, err := os.ReadFile("testdata/td.dict") + //rawDict, err := os.ReadFile("testdata/users.dict") + //rawDict, err := os.ReadFile("testdata/xlmeta.dict") + if err != nil { + t.Fatal(err) + } + + lidx := -1 + if di, err := zstd.InspectDictionary(rawDict); err == nil { + rawDict = di.Content() + lidx = len(rawDict) - di.Offsets()[0] + } else { + t.Errorf("Loading dict: %v", err) + return + } + + searchFor := "" + if false { + searchFor = "// Copyright 2022" + } + d := MakeDict(rawDict, []byte(searchFor)) + if d == nil { + t.Fatal("no dict", lidx) + } + + var totalIn int + var totalOut int + var totalCount int + for { + h, err := in.Next() + if err != nil { + break + } + if h.Size == 0 { + continue + } + data := make([]byte, 65536) + t.Run(h.Name, func(t *testing.T) { + if int(h.Size) < 65536 { + data = data[:h.Size] + } else { + data = data[:65536] + } + _, err := io.ReadFull(in, data) + if err != nil { + t.Skip() + } + if d == nil { + // Use first file as dict + d = MakeDict(data, nil) + } + // encode + encoded := make([]byte, MaxEncodedLen(len(data))) + totalIn += len(data) + totalCount++ + //res := encodeBlockBest(encoded, data, nil) + res := encodeBlockBest(encoded, data, d) + //res := encodeBlockBetterDict(encoded, data, d) + //res := encodeBlockBetterGo(encoded, data) + //res := encodeBlockDictGo(encoded, data, d) + // res := encodeBlockGo(encoded, data) + if res == 0 { + totalOut += len(data) + return + } + totalOut += res + encoded = encoded[:res] + //t.Log("encoded", len(data), "->", res, "saved", len(data)-res, "bytes") + decoded := make([]byte, len(data)) + res = s2DecodeDict(decoded, encoded, d) + if res != 0 { + t.Fatalf("got result: %d", res) + } + if !bytes.Equal(decoded, data) { + os.WriteFile("decoded.bin", decoded, os.ModePerm) + os.WriteFile("original.bin", data, os.ModePerm) + t.Fatal("decoded mismatch") + } + }) + } + fmt.Printf("%d files, %d -> %d (%.2f%%) - %.02f bytes saved/file\n", totalCount, totalIn, totalOut, float64(totalOut*100)/float64(totalIn), float64(totalIn-totalOut)/float64(totalCount)) +} + +func FuzzDictBlocks(f *testing.F) { + fuzz.AddFromZip(f, "testdata/enc_regressions.zip", true, false) + fuzz.AddFromZip(f, "testdata/fuzz/block-corpus-raw.zip", true, testing.Short()) + fuzz.AddFromZip(f, "testdata/fuzz/block-corpus-enc.zip", false, testing.Short()) + + // Fuzzing tweaks: + const ( + // Max input size: + maxSize = 8 << 20 + ) + file, err := os.Open("testdata/s2-dict.bin.gz") + if err != nil { + f.Fatal(err) + } + gzr, err := gzip.NewReader(file) + if err != nil { + f.Fatal(err) + } + dictBytes, err := io.ReadAll(gzr) + if err != nil { + f.Fatal(err) + } + dict := NewDict(dictBytes) + if dict == nil { + f.Fatal("invalid dict") + } + + f.Fuzz(func(t *testing.T, data []byte) { + if len(data) > maxSize { + return + } + + writeDst := make([]byte, MaxEncodedLen(len(data)), MaxEncodedLen(len(data))+4) + writeDst = append(writeDst, 1, 2, 3, 4) + defer func() { + got := writeDst[MaxEncodedLen(len(data)):] + want := []byte{1, 2, 3, 4} + if !bytes.Equal(got, want) { + t.Fatalf("want %v, got %v - dest modified outside cap", want, got) + } + }() + compDst := writeDst[:MaxEncodedLen(len(data)):MaxEncodedLen(len(data))] // Hard cap + decDst := make([]byte, len(data)) + comp := dict.Encode(compDst, data) + decoded, err := dict.Decode(decDst, comp) + if err != nil { + t.Error(err) + return + } + if !bytes.Equal(data, decoded) { + t.Error("block decoder mismatch") + return + } + if mel := MaxEncodedLen(len(data)); len(comp) > mel { + t.Error(fmt.Errorf("MaxEncodedLen Exceed: input: %d, mel: %d, got %d", len(data), mel, len(comp))) + return + } + comp = dict.EncodeBetter(compDst, data) + decoded, err = dict.Decode(decDst, comp) + if err != nil { + t.Error(err) + return + } + if !bytes.Equal(data, decoded) { + t.Error("block decoder mismatch") + return + } + if mel := MaxEncodedLen(len(data)); len(comp) > mel { + t.Error(fmt.Errorf("MaxEncodedLen Exceed: input: %d, mel: %d, got %d", len(data), mel, len(comp))) + return + } + + comp = dict.EncodeBest(compDst, data) + decoded, err = dict.Decode(decDst, comp) + if err != nil { + t.Error(err) + return + } + if !bytes.Equal(data, decoded) { + t.Error("block decoder mismatch") + return + } + if mel := MaxEncodedLen(len(data)); len(comp) > mel { + t.Error(fmt.Errorf("MaxEncodedLen Exceed: input: %d, mel: %d, got %d", len(data), mel, len(comp))) + return + } + }) +} diff --git a/s2/encode.go b/s2/encode.go index 59edf1a576..c2ca7236a1 100644 --- a/s2/encode.go +++ b/s2/encode.go @@ -158,7 +158,7 @@ func EncodeBest(dst, src []byte) []byte { d += emitLiteral(dst[d:], src) return dst[:d] } - n := encodeBlockBest(dst[d:], src) + n := encodeBlockBest(dst[d:], src, nil) if n > 0 { d += n return dst[:d] @@ -820,7 +820,7 @@ func (w *Writer) encodeBlock(obuf, uncompressed []byte) int { case levelBetter: return encodeBlockBetter(obuf, uncompressed) case levelBest: - return encodeBlockBest(obuf, uncompressed) + return encodeBlockBest(obuf, uncompressed, nil) } return 0 } diff --git a/s2/encode_all.go b/s2/encode_all.go index 54c71d3b5d..11657f0949 100644 --- a/s2/encode_all.go +++ b/s2/encode_all.go @@ -8,6 +8,7 @@ package s2 import ( "bytes" "encoding/binary" + "fmt" "math/bits" ) @@ -455,3 +456,594 @@ emitRemainder: } return d } + +// encodeBlockGo encodes a non-empty src to a guaranteed-large-enough dst. It +// assumes that the varint-encoded length of the decompressed bytes has already +// been written. +// +// It also assumes that: +// +// len(dst) >= MaxEncodedLen(len(src)) && +// minNonLiteralBlockSize <= len(src) && len(src) <= maxBlockSize +func encodeBlockDictGo(dst, src []byte, dict *Dict) (d int) { + // Initialize the hash table. + const ( + tableBits = 14 + maxTableSize = 1 << tableBits + maxAhead = 8 // maximum bytes ahead without checking sLimit + + debug = false + ) + dict.initFast() + + var table [maxTableSize]uint32 + + // sLimit is when to stop looking for offset/length copies. The inputMargin + // lets us use a fast path for emitLiteral in the main loop, while we are + // looking for copies. + sLimit := len(src) - inputMargin + if sLimit > MaxDictSrcOffset-maxAhead { + sLimit = MaxDictSrcOffset - maxAhead + } + + // Bail if we can't compress to at least this. + dstLimit := len(src) - len(src)>>5 - 5 + + // nextEmit is where in src the next emitLiteral should start from. + nextEmit := 0 + + // The encoded form can start with a dict entry (copy or repeat). + s := 0 + + // Convert dict repeat to offset + repeat := len(dict.dict) - dict.repeat + cv := load64(src, 0) + + // While in dict +searchDict: + for { + // Next src position to check + nextS := s + (s-nextEmit)>>6 + 4 + hash0 := hash6(cv, tableBits) + hash1 := hash6(cv>>8, tableBits) + if nextS > sLimit { + if debug { + fmt.Println("slimit reached", s, nextS) + } + break searchDict + } + candidateDict := int(dict.fastTable[hash0]) + candidateDict2 := int(dict.fastTable[hash1]) + candidate2 := int(table[hash1]) + candidate := int(table[hash0]) + table[hash0] = uint32(s) + table[hash1] = uint32(s + 1) + hash2 := hash6(cv>>16, tableBits) + + // Check repeat at offset checkRep. + const checkRep = 1 + + if repeat > s { + candidate := len(dict.dict) - repeat + s + if repeat-s >= 4 && uint32(cv) == load32(dict.dict, candidate) { + // Extend back + base := s + for i := candidate; base > nextEmit && i > 0 && dict.dict[i-1] == src[base-1]; { + i-- + base-- + } + d += emitLiteral(dst[d:], src[nextEmit:base]) + if debug && nextEmit != base { + fmt.Println("emitted ", base-nextEmit, "literals") + } + s += 4 + candidate += 4 + for candidate < len(dict.dict)-8 && s <= len(src)-8 { + if diff := load64(src, s) ^ load64(dict.dict, candidate); diff != 0 { + s += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + candidate += 8 + } + d += emitRepeat(dst[d:], repeat, s-base) + if debug { + fmt.Println("emitted dict repeat length", s-base, "offset:", repeat, "s:", s) + } + nextEmit = s + if s >= sLimit { + break searchDict + } + cv = load64(src, s) + continue + } + } else if uint32(cv>>(checkRep*8)) == load32(src, s-repeat+checkRep) { + base := s + checkRep + // Extend back + for i := base - repeat; base > nextEmit && i > 0 && src[i-1] == src[base-1]; { + i-- + base-- + } + d += emitLiteral(dst[d:], src[nextEmit:base]) + if debug && nextEmit != base { + fmt.Println("emitted ", base-nextEmit, "literals") + } + + // Extend forward + candidate := s - repeat + 4 + checkRep + s += 4 + checkRep + for s <= sLimit { + if diff := load64(src, s) ^ load64(src, candidate); diff != 0 { + s += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + candidate += 8 + } + if debug { + // Validate match. + if s <= candidate { + panic("s <= candidate") + } + a := src[base:s] + b := src[base-repeat : base-repeat+(s-base)] + if !bytes.Equal(a, b) { + panic("mismatch") + } + } + + if nextEmit > 0 { + // same as `add := emitCopy(dst[d:], repeat, s-base)` but skips storing offset. + d += emitRepeat(dst[d:], repeat, s-base) + } else { + // First match, cannot be repeat. + d += emitCopy(dst[d:], repeat, s-base) + } + + nextEmit = s + if s >= sLimit { + break searchDict + } + if debug { + fmt.Println("emitted reg repeat", s-base, "s:", s) + } + cv = load64(src, s) + continue searchDict + } + if s == 0 { + cv = load64(src, nextS) + s = nextS + continue searchDict + } + // Start with table. These matches will always be closer. + if uint32(cv) == load32(src, candidate) { + goto emitMatch + } + candidate = int(table[hash2]) + if uint32(cv>>8) == load32(src, candidate2) { + table[hash2] = uint32(s + 2) + candidate = candidate2 + s++ + goto emitMatch + } + + // Check dict. Dicts have longer offsets, so we want longer matches. + if cv == load64(dict.dict, candidateDict) { + table[hash2] = uint32(s + 2) + goto emitDict + } + + candidateDict = int(dict.fastTable[hash2]) + // Check if upper 7 bytes match + if candidateDict2 >= 1 { + if cv^load64(dict.dict, candidateDict2-1) < (1 << 8) { + table[hash2] = uint32(s + 2) + candidateDict = candidateDict2 + s++ + goto emitDict + } + } + + table[hash2] = uint32(s + 2) + if uint32(cv>>16) == load32(src, candidate) { + s += 2 + goto emitMatch + } + if candidateDict >= 2 { + // Check if upper 6 bytes match + if cv^load64(dict.dict, candidateDict-2) < (1 << 16) { + s += 2 + goto emitDict + } + } + + cv = load64(src, nextS) + s = nextS + continue searchDict + + emitDict: + { + if debug { + if load32(dict.dict, candidateDict) != load32(src, s) { + panic("dict emit mismatch") + } + } + // Extend backwards. + // The top bytes will be rechecked to get the full match. + for candidateDict > 0 && s > nextEmit && dict.dict[candidateDict-1] == src[s-1] { + candidateDict-- + s-- + } + + // Bail if we exceed the maximum size. + if d+(s-nextEmit) > dstLimit { + return 0 + } + + // A 4-byte match has been found. We'll later see if more than 4 bytes + // match. But, prior to the match, src[nextEmit:s] are unmatched. Emit + // them as literal bytes. + + d += emitLiteral(dst[d:], src[nextEmit:s]) + if debug && nextEmit != s { + fmt.Println("emitted ", s-nextEmit, "literals") + } + { + // Invariant: we have a 4-byte match at s, and no need to emit any + // literal bytes prior to s. + base := s + repeat = s + (len(dict.dict)) - candidateDict + + // Extend the 4-byte match as long as possible. + s += 4 + candidateDict += 4 + for s <= len(src)-8 && len(dict.dict)-candidateDict >= 8 { + if diff := load64(src, s) ^ load64(dict.dict, candidateDict); diff != 0 { + s += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + candidateDict += 8 + } + + // Matches longer than 64 are split. + if s <= sLimit || s-base < 8 { + d += emitCopy(dst[d:], repeat, s-base) + } else { + // Split to ensure we don't start a copy within next block + d += emitCopy(dst[d:], repeat, 4) + d += emitRepeat(dst[d:], repeat, s-base-4) + } + if false { + // Validate match. + if s <= candidate { + panic("s <= candidate") + } + a := src[base:s] + b := dict.dict[base-repeat : base-repeat+(s-base)] + if !bytes.Equal(a, b) { + panic("mismatch") + } + } + if debug { + fmt.Println("emitted dict copy, length", s-base, "offset:", repeat, "s:", s) + } + nextEmit = s + if s >= sLimit { + break searchDict + } + + if d > dstLimit { + // Do we have space for more, if not bail. + return 0 + } + + // Index and continue loop to try new candidate. + x := load64(src, s-2) + m2Hash := hash6(x, tableBits) + currHash := hash6(x>>8, tableBits) + candidate = int(table[currHash]) + table[m2Hash] = uint32(s - 2) + table[currHash] = uint32(s - 1) + cv = load64(src, s) + } + continue + } + emitMatch: + + // Extend backwards. + // The top bytes will be rechecked to get the full match. + for candidate > 0 && s > nextEmit && src[candidate-1] == src[s-1] { + candidate-- + s-- + } + + // Bail if we exceed the maximum size. + if d+(s-nextEmit) > dstLimit { + return 0 + } + + // A 4-byte match has been found. We'll later see if more than 4 bytes + // match. But, prior to the match, src[nextEmit:s] are unmatched. Emit + // them as literal bytes. + + d += emitLiteral(dst[d:], src[nextEmit:s]) + if debug && nextEmit != s { + fmt.Println("emitted ", s-nextEmit, "literals") + } + // Call emitCopy, and then see if another emitCopy could be our next + // move. Repeat until we find no match for the input immediately after + // what was consumed by the last emitCopy call. + // + // If we exit this loop normally then we need to call emitLiteral next, + // though we don't yet know how big the literal will be. We handle that + // by proceeding to the next iteration of the main loop. We also can + // exit this loop via goto if we get close to exhausting the input. + for { + // Invariant: we have a 4-byte match at s, and no need to emit any + // literal bytes prior to s. + base := s + repeat = base - candidate + + // Extend the 4-byte match as long as possible. + s += 4 + candidate += 4 + for s <= len(src)-8 { + if diff := load64(src, s) ^ load64(src, candidate); diff != 0 { + s += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + candidate += 8 + } + + d += emitCopy(dst[d:], repeat, s-base) + if debug { + // Validate match. + if s <= candidate { + panic("s <= candidate") + } + a := src[base:s] + b := src[base-repeat : base-repeat+(s-base)] + if !bytes.Equal(a, b) { + panic("mismatch") + } + } + if debug { + fmt.Println("emitted src copy, length", s-base, "offset:", repeat, "s:", s) + } + nextEmit = s + if s >= sLimit { + break searchDict + } + + if d > dstLimit { + // Do we have space for more, if not bail. + return 0 + } + // Check for an immediate match, otherwise start search at s+1 + x := load64(src, s-2) + m2Hash := hash6(x, tableBits) + currHash := hash6(x>>16, tableBits) + candidate = int(table[currHash]) + table[m2Hash] = uint32(s - 2) + table[currHash] = uint32(s) + if debug && s == candidate { + panic("s == candidate") + } + if uint32(x>>16) != load32(src, candidate) { + cv = load64(src, s+1) + s++ + break + } + } + } + + // Search without dict: + if repeat > s { + repeat = 0 + } + + // No more dict + sLimit = len(src) - inputMargin + if s >= sLimit { + goto emitRemainder + } + if debug { + fmt.Println("non-dict matching at", s, "repeat:", repeat) + } + cv = load64(src, s) + if debug { + fmt.Println("now", s, "->", sLimit, "out:", d, "left:", len(src)-s, "nextemit:", nextEmit, "dstLimit:", dstLimit, "s:", s) + } + for { + candidate := 0 + for { + // Next src position to check + nextS := s + (s-nextEmit)>>6 + 4 + if nextS > sLimit { + goto emitRemainder + } + hash0 := hash6(cv, tableBits) + hash1 := hash6(cv>>8, tableBits) + candidate = int(table[hash0]) + candidate2 := int(table[hash1]) + table[hash0] = uint32(s) + table[hash1] = uint32(s + 1) + hash2 := hash6(cv>>16, tableBits) + + // Check repeat at offset checkRep. + const checkRep = 1 + if repeat > 0 && uint32(cv>>(checkRep*8)) == load32(src, s-repeat+checkRep) { + base := s + checkRep + // Extend back + for i := base - repeat; base > nextEmit && i > 0 && src[i-1] == src[base-1]; { + i-- + base-- + } + d += emitLiteral(dst[d:], src[nextEmit:base]) + if debug && nextEmit != base { + fmt.Println("emitted ", base-nextEmit, "literals") + } + // Extend forward + candidate := s - repeat + 4 + checkRep + s += 4 + checkRep + for s <= sLimit { + if diff := load64(src, s) ^ load64(src, candidate); diff != 0 { + s += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + candidate += 8 + } + if debug { + // Validate match. + if s <= candidate { + panic("s <= candidate") + } + a := src[base:s] + b := src[base-repeat : base-repeat+(s-base)] + if !bytes.Equal(a, b) { + panic("mismatch") + } + } + if nextEmit > 0 { + // same as `add := emitCopy(dst[d:], repeat, s-base)` but skips storing offset. + d += emitRepeat(dst[d:], repeat, s-base) + } else { + // First match, cannot be repeat. + d += emitCopy(dst[d:], repeat, s-base) + } + if debug { + fmt.Println("emitted src repeat length", s-base, "offset:", repeat, "s:", s) + } + nextEmit = s + if s >= sLimit { + goto emitRemainder + } + + cv = load64(src, s) + continue + } + + if uint32(cv) == load32(src, candidate) { + break + } + candidate = int(table[hash2]) + if uint32(cv>>8) == load32(src, candidate2) { + table[hash2] = uint32(s + 2) + candidate = candidate2 + s++ + break + } + table[hash2] = uint32(s + 2) + if uint32(cv>>16) == load32(src, candidate) { + s += 2 + break + } + + cv = load64(src, nextS) + s = nextS + } + + // Extend backwards. + // The top bytes will be rechecked to get the full match. + for candidate > 0 && s > nextEmit && src[candidate-1] == src[s-1] { + candidate-- + s-- + } + + // Bail if we exceed the maximum size. + if d+(s-nextEmit) > dstLimit { + return 0 + } + + // A 4-byte match has been found. We'll later see if more than 4 bytes + // match. But, prior to the match, src[nextEmit:s] are unmatched. Emit + // them as literal bytes. + + d += emitLiteral(dst[d:], src[nextEmit:s]) + if debug && nextEmit != s { + fmt.Println("emitted ", s-nextEmit, "literals") + } + // Call emitCopy, and then see if another emitCopy could be our next + // move. Repeat until we find no match for the input immediately after + // what was consumed by the last emitCopy call. + // + // If we exit this loop normally then we need to call emitLiteral next, + // though we don't yet know how big the literal will be. We handle that + // by proceeding to the next iteration of the main loop. We also can + // exit this loop via goto if we get close to exhausting the input. + for { + // Invariant: we have a 4-byte match at s, and no need to emit any + // literal bytes prior to s. + base := s + repeat = base - candidate + + // Extend the 4-byte match as long as possible. + s += 4 + candidate += 4 + for s <= len(src)-8 { + if diff := load64(src, s) ^ load64(src, candidate); diff != 0 { + s += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + candidate += 8 + } + + d += emitCopy(dst[d:], repeat, s-base) + if debug { + // Validate match. + if s <= candidate { + panic("s <= candidate") + } + a := src[base:s] + b := src[base-repeat : base-repeat+(s-base)] + if !bytes.Equal(a, b) { + panic("mismatch") + } + } + if debug { + fmt.Println("emitted src copy, length", s-base, "offset:", repeat, "s:", s) + } + nextEmit = s + if s >= sLimit { + goto emitRemainder + } + + if d > dstLimit { + // Do we have space for more, if not bail. + return 0 + } + // Check for an immediate match, otherwise start search at s+1 + x := load64(src, s-2) + m2Hash := hash6(x, tableBits) + currHash := hash6(x>>16, tableBits) + candidate = int(table[currHash]) + table[m2Hash] = uint32(s - 2) + table[currHash] = uint32(s) + if debug && s == candidate { + panic("s == candidate") + } + if uint32(x>>16) != load32(src, candidate) { + cv = load64(src, s+1) + s++ + break + } + } + } + +emitRemainder: + if nextEmit < len(src) { + // Bail if we exceed the maximum size. + if d+len(src)-nextEmit > dstLimit { + return 0 + } + d += emitLiteral(dst[d:], src[nextEmit:]) + if debug && nextEmit != s { + fmt.Println("emitted ", len(src)-nextEmit, "literals") + } + } + return d +} diff --git a/s2/encode_best.go b/s2/encode_best.go index 1b7ea394fa..1d13e869a1 100644 --- a/s2/encode_best.go +++ b/s2/encode_best.go @@ -7,6 +7,7 @@ package s2 import ( "fmt" + "math" "math/bits" ) @@ -18,7 +19,7 @@ import ( // // len(dst) >= MaxEncodedLen(len(src)) && // minNonLiteralBlockSize <= len(src) && len(src) <= maxBlockSize -func encodeBlockBest(dst, src []byte) (d int) { +func encodeBlockBest(dst, src []byte, dict *Dict) (d int) { // Initialize the hash tables. const ( // Long hash matches. @@ -30,6 +31,8 @@ func encodeBlockBest(dst, src []byte) (d int) { maxSTableSize = 1 << sTableBits inputMargin = 8 + 2 + + debug = false ) // sLimit is when to stop looking for offset/length copies. The inputMargin @@ -39,6 +42,10 @@ func encodeBlockBest(dst, src []byte) (d int) { if len(src) < minNonLiteralBlockSize { return 0 } + sLimitDict := len(src) - inputMargin + if sLimitDict > MaxDictSrcOffset-inputMargin { + sLimitDict = MaxDictSrcOffset - inputMargin + } var lTable [maxLTableSize]uint64 var sTable [maxSTableSize]uint64 @@ -52,10 +59,15 @@ func encodeBlockBest(dst, src []byte) (d int) { // The encoded form must start with a literal, as there are no previous // bytes to copy, so we start looking for hash matches at s == 1. s := 1 + repeat := 1 + if dict != nil { + dict.initBest() + s = 0 + repeat = len(dict.dict) - dict.repeat + } cv := load64(src, s) // We search for a repeat at -1, but don't output repeats when nextEmit == 0 - repeat := 1 const lowbitMask = 0xffffffff getCur := func(x uint64) int { return int(x & lowbitMask) @@ -67,11 +79,11 @@ func encodeBlockBest(dst, src []byte) (d int) { for { type match struct { - offset int - s int - length int - score int - rep bool + offset int + s int + length int + score int + rep, dict bool } var best match for { @@ -85,6 +97,12 @@ func encodeBlockBest(dst, src []byte) (d int) { if nextS > sLimit { goto emitRemainder } + if dict != nil && s >= MaxDictSrcOffset { + dict = nil + if repeat > s { + repeat = math.MinInt32 + } + } hashL := hash8(cv, lTableBits) hashS := hash4(cv, sTableBits) candidateL := lTable[hashL] @@ -114,7 +132,15 @@ func encodeBlockBest(dst, src []byte) (d int) { } m := match{offset: offset, s: s, length: 4 + offset, rep: rep} s += 4 - for s <= sLimit { + for s < len(src) { + if len(src)-s < 8 { + if src[s] == src[m.length] { + m.length++ + s++ + continue + } + break + } if diff := load64(src, s) ^ load64(src, m.length); diff != 0 { m.length += bits.TrailingZeros64(diff) >> 3 break @@ -130,6 +156,62 @@ func encodeBlockBest(dst, src []byte) (d int) { } return m } + matchDict := func(candidate, s int, first uint32, rep bool) match { + // Calculate offset as if in continuous array with s + offset := -len(dict.dict) + candidate + if best.length != 0 && best.s-best.offset == s-offset && !rep { + // Don't retest if we have the same offset. + return match{offset: offset, s: s} + } + + if load32(dict.dict, candidate) != first { + return match{offset: offset, s: s} + } + m := match{offset: offset, s: s, length: 4 + candidate, rep: rep, dict: true} + s += 4 + if !rep { + for s < sLimitDict && m.length < len(dict.dict) { + if len(src)-s < 8 || len(dict.dict)-m.length < 8 { + if src[s] == dict.dict[m.length] { + m.length++ + s++ + continue + } + break + } + if diff := load64(src, s) ^ load64(dict.dict, m.length); diff != 0 { + m.length += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + m.length += 8 + } + } else { + for s < len(src) && m.length < len(dict.dict) { + if len(src)-s < 8 || len(dict.dict)-m.length < 8 { + if src[s] == dict.dict[m.length] { + m.length++ + s++ + continue + } + break + } + if diff := load64(src, s) ^ load64(dict.dict, m.length); diff != 0 { + m.length += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + m.length += 8 + } + } + m.length -= candidate + m.score = score(m) + if m.score <= -m.s { + // Eliminate if no savings, we might find a better one. + m.length = 0 + } + return m + } bestOf := func(a, b match) match { if b.length == 0 { @@ -146,35 +228,82 @@ func encodeBlockBest(dst, src []byte) (d int) { return b } - best = bestOf(matchAt(getCur(candidateL), s, uint32(cv), false), matchAt(getPrev(candidateL), s, uint32(cv), false)) - best = bestOf(best, matchAt(getCur(candidateS), s, uint32(cv), false)) - best = bestOf(best, matchAt(getPrev(candidateS), s, uint32(cv), false)) - + if s > 0 { + best = bestOf(matchAt(getCur(candidateL), s, uint32(cv), false), matchAt(getPrev(candidateL), s, uint32(cv), false)) + best = bestOf(best, matchAt(getCur(candidateS), s, uint32(cv), false)) + best = bestOf(best, matchAt(getPrev(candidateS), s, uint32(cv), false)) + } + if dict != nil { + candidateL := dict.bestTableLong[hashL] + candidateS := dict.bestTableShort[hashS] + best = bestOf(best, matchDict(int(candidateL&0xffff), s, uint32(cv), false)) + best = bestOf(best, matchDict(int(candidateL>>16), s, uint32(cv), false)) + best = bestOf(best, matchDict(int(candidateS&0xffff), s, uint32(cv), false)) + best = bestOf(best, matchDict(int(candidateS>>16), s, uint32(cv), false)) + } { - best = bestOf(best, matchAt(s-repeat+1, s+1, uint32(cv>>8), true)) + if (dict == nil || repeat <= s) && repeat > 0 { + best = bestOf(best, matchAt(s-repeat+1, s+1, uint32(cv>>8), true)) + } else if s-repeat < -4 && dict != nil { + candidate := len(dict.dict) - (repeat - s) + best = bestOf(best, matchDict(candidate, s, uint32(cv), true)) + candidate++ + best = bestOf(best, matchDict(candidate, s+1, uint32(cv>>8), true)) + } + if best.length > 0 { + hashS := hash4(cv>>8, sTableBits) // s+1 - nextShort := sTable[hash4(cv>>8, sTableBits)] + nextShort := sTable[hashS] s := s + 1 cv := load64(src, s) - nextLong := lTable[hash8(cv, lTableBits)] + hashL := hash8(cv, lTableBits) + nextLong := lTable[hashL] best = bestOf(best, matchAt(getCur(nextShort), s, uint32(cv), false)) best = bestOf(best, matchAt(getPrev(nextShort), s, uint32(cv), false)) best = bestOf(best, matchAt(getCur(nextLong), s, uint32(cv), false)) best = bestOf(best, matchAt(getPrev(nextLong), s, uint32(cv), false)) - // Repeat at + 2 - best = bestOf(best, matchAt(s-repeat+1, s+1, uint32(cv>>8), true)) + + // Dict at + 1 + if dict != nil { + candidateL := dict.bestTableLong[hashL] + candidateS := dict.bestTableShort[hashS] + + best = bestOf(best, matchDict(int(candidateL&0xffff), s, uint32(cv), false)) + best = bestOf(best, matchDict(int(candidateS&0xffff), s, uint32(cv), false)) + } // s+2 if true { - nextShort = sTable[hash4(cv>>8, sTableBits)] + hashS := hash4(cv>>8, sTableBits) + + nextShort = sTable[hashS] s++ cv = load64(src, s) - nextLong = lTable[hash8(cv, lTableBits)] + hashL := hash8(cv, lTableBits) + nextLong = lTable[hashL] + + if (dict == nil || repeat <= s) && repeat > 0 { + // Repeat at + 2 + best = bestOf(best, matchAt(s-repeat, s, uint32(cv), true)) + } else if repeat-s > 4 && dict != nil { + candidate := len(dict.dict) - (repeat - s) + best = bestOf(best, matchDict(candidate, s, uint32(cv), true)) + } best = bestOf(best, matchAt(getCur(nextShort), s, uint32(cv), false)) best = bestOf(best, matchAt(getPrev(nextShort), s, uint32(cv), false)) best = bestOf(best, matchAt(getCur(nextLong), s, uint32(cv), false)) best = bestOf(best, matchAt(getPrev(nextLong), s, uint32(cv), false)) + + // Dict at +2 + // Very small gain + if dict != nil { + candidateL := dict.bestTableLong[hashL] + candidateS := dict.bestTableShort[hashS] + + best = bestOf(best, matchDict(int(candidateL&0xffff), s, uint32(cv), false)) + best = bestOf(best, matchDict(int(candidateS&0xffff), s, uint32(cv), false)) + } } // Search for a match at best match end, see if that is better. // Allow some bytes at the beginning to mismatch. @@ -227,7 +356,7 @@ func encodeBlockBest(dst, src []byte) (d int) { // Extend backwards, not needed for repeats... s = best.s - if !best.rep { + if !best.rep && !best.dict { for best.offset > 0 && s > nextEmit && src[best.offset-1] == src[s-1] { best.offset-- best.length++ @@ -244,7 +373,6 @@ func encodeBlockBest(dst, src []byte) (d int) { base := s offset := s - best.offset - s += best.length if offset > 65535 && s-base <= 5 && !best.rep { @@ -256,16 +384,28 @@ func encodeBlockBest(dst, src []byte) (d int) { cv = load64(src, s) continue } + if debug && nextEmit != base { + fmt.Println("EMIT", base-nextEmit, "literals. base-after:", base) + } d += emitLiteral(dst[d:], src[nextEmit:base]) if best.rep { - if nextEmit > 0 { + if nextEmit > 0 || best.dict { + if debug { + fmt.Println("REPEAT, length", best.length, "offset:", offset, "s-after:", s, "dict:", best.dict, "best:", best) + } // same as `add := emitCopy(dst[d:], repeat, s-base)` but skips storing offset. d += emitRepeat(dst[d:], offset, best.length) } else { - // First match, cannot be repeat. + // First match without dict cannot be a repeat. + if debug { + fmt.Println("COPY, length", best.length, "offset:", offset, "s-after:", s, "dict:", best.dict, "best:", best) + } d += emitCopy(dst[d:], offset, best.length) } } else { + if debug { + fmt.Println("COPY, length", best.length, "offset:", offset, "s-after:", s, "dict:", best.dict, "best:", best) + } d += emitCopy(dst[d:], offset, best.length) } repeat = offset @@ -296,6 +436,9 @@ emitRemainder: if d+len(src)-nextEmit > dstLimit { return 0 } + if debug && nextEmit != s { + fmt.Println("emitted ", len(src)-nextEmit, "literals") + } d += emitLiteral(dst[d:], src[nextEmit:]) } return d @@ -642,7 +785,6 @@ func emitRepeatSize(offset, length int) int { left := 0 if length > maxRepeat { left = length - maxRepeat + 4 - length = maxRepeat - 4 } if left > 0 { return 5 + emitRepeatSize(offset, left) diff --git a/s2/encode_better.go b/s2/encode_better.go index 3b66ba42bf..f46adb4117 100644 --- a/s2/encode_better.go +++ b/s2/encode_better.go @@ -6,6 +6,8 @@ package s2 import ( + "bytes" + "fmt" "math/bits" ) @@ -476,3 +478,623 @@ emitRemainder: } return d } + +// encodeBlockBetterDict encodes a non-empty src to a guaranteed-large-enough dst. It +// assumes that the varint-encoded length of the decompressed bytes has already +// been written. +// +// It also assumes that: +// +// len(dst) >= MaxEncodedLen(len(src)) && +// minNonLiteralBlockSize <= len(src) && len(src) <= maxBlockSize +func encodeBlockBetterDict(dst, src []byte, dict *Dict) (d int) { + // sLimit is when to stop looking for offset/length copies. The inputMargin + // lets us use a fast path for emitLiteral in the main loop, while we are + // looking for copies. + // Initialize the hash tables. + const ( + // Long hash matches. + lTableBits = 17 + maxLTableSize = 1 << lTableBits + + // Short hash matches. + sTableBits = 14 + maxSTableSize = 1 << sTableBits + + maxAhead = 8 // maximum bytes ahead without checking sLimit + + debug = false + ) + + sLimit := len(src) - inputMargin + if sLimit > MaxDictSrcOffset-maxAhead { + sLimit = MaxDictSrcOffset - maxAhead + } + if len(src) < minNonLiteralBlockSize { + return 0 + } + + dict.initBetter() + + var lTable [maxLTableSize]uint32 + var sTable [maxSTableSize]uint32 + + // Bail if we can't compress to at least this. + dstLimit := len(src) - len(src)>>5 - 6 + + // nextEmit is where in src the next emitLiteral should start from. + nextEmit := 0 + + // The encoded form must start with a literal, as there are no previous + // bytes to copy, so we start looking for hash matches at s == 1. + s := 0 + cv := load64(src, s) + + // We initialize repeat to 0, so we never match on first attempt + repeat := len(dict.dict) - dict.repeat + + // While in dict +searchDict: + for { + candidateL := 0 + nextS := 0 + for { + // Next src position to check + nextS = s + (s-nextEmit)>>7 + 1 + if nextS > sLimit { + break searchDict + } + hashL := hash7(cv, lTableBits) + hashS := hash4(cv, sTableBits) + candidateL = int(lTable[hashL]) + candidateS := int(sTable[hashS]) + dictL := int(dict.betterTableLong[hashL]) + dictS := int(dict.betterTableShort[hashS]) + lTable[hashL] = uint32(s) + sTable[hashS] = uint32(s) + + valLong := load64(src, candidateL) + valShort := load64(src, candidateS) + + // If long matches at least 8 bytes, use that. + if s != 0 { + if cv == valLong { + goto emitMatch + } + if cv == valShort { + candidateL = candidateS + goto emitMatch + } + } + + // Check dict repeat. + if repeat >= s+4 { + candidate := len(dict.dict) - repeat + s + if candidate > 0 && uint32(cv) == load32(dict.dict, candidate) { + // Extend back + base := s + for i := candidate; base > nextEmit && i > 0 && dict.dict[i-1] == src[base-1]; { + i-- + base-- + } + d += emitLiteral(dst[d:], src[nextEmit:base]) + if debug && nextEmit != base { + fmt.Println("emitted ", base-nextEmit, "literals") + } + s += 4 + candidate += 4 + for candidate < len(dict.dict)-8 && s <= len(src)-8 { + if diff := load64(src, s) ^ load64(dict.dict, candidate); diff != 0 { + s += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + candidate += 8 + } + d += emitRepeat(dst[d:], repeat, s-base) + if debug { + fmt.Println("emitted dict repeat length", s-base, "offset:", repeat, "s:", s) + } + nextEmit = s + if s >= sLimit { + break searchDict + } + cv = load64(src, s) + // Index in-between + index0 := base + 1 + index1 := s - 2 + + cv = load64(src, s) + for index0 < index1 { + cv0 := load64(src, index0) + cv1 := load64(src, index1) + lTable[hash7(cv0, lTableBits)] = uint32(index0) + sTable[hash4(cv0>>8, sTableBits)] = uint32(index0 + 1) + + lTable[hash7(cv1, lTableBits)] = uint32(index1) + sTable[hash4(cv1>>8, sTableBits)] = uint32(index1 + 1) + index0 += 2 + index1 -= 2 + } + continue + } + } + // Don't try to find match at s==0 + if s == 0 { + cv = load64(src, nextS) + s = nextS + continue + } + + // Long likely matches 7, so take that. + if uint32(cv) == uint32(valLong) { + goto emitMatch + } + + // Long dict... + if uint32(cv) == load32(dict.dict, dictL) { + candidateL = dictL + goto emitDict + } + + // Check our short candidate + if uint32(cv) == uint32(valShort) { + // Try a long candidate at s+1 + hashL = hash7(cv>>8, lTableBits) + candidateL = int(lTable[hashL]) + lTable[hashL] = uint32(s + 1) + if uint32(cv>>8) == load32(src, candidateL) { + s++ + goto emitMatch + } + // Use our short candidate. + candidateL = candidateS + goto emitMatch + } + if uint32(cv) == load32(dict.dict, dictS) { + // Try a long candidate at s+1 + hashL = hash7(cv>>8, lTableBits) + candidateL = int(lTable[hashL]) + lTable[hashL] = uint32(s + 1) + if uint32(cv>>8) == load32(src, candidateL) { + s++ + goto emitMatch + } + candidateL = dictS + goto emitDict + } + cv = load64(src, nextS) + s = nextS + } + emitDict: + { + if debug { + if load32(dict.dict, candidateL) != load32(src, s) { + panic("dict emit mismatch") + } + } + // Extend backwards. + // The top bytes will be rechecked to get the full match. + for candidateL > 0 && s > nextEmit && dict.dict[candidateL-1] == src[s-1] { + candidateL-- + s-- + } + + // Bail if we exceed the maximum size. + if d+(s-nextEmit) > dstLimit { + return 0 + } + + // A 4-byte match has been found. We'll later see if more than 4 bytes + // match. But, prior to the match, src[nextEmit:s] are unmatched. Emit + // them as literal bytes. + + d += emitLiteral(dst[d:], src[nextEmit:s]) + if debug && nextEmit != s { + fmt.Println("emitted ", s-nextEmit, "literals") + } + { + // Invariant: we have a 4-byte match at s, and no need to emit any + // literal bytes prior to s. + base := s + offset := s + (len(dict.dict)) - candidateL + + // Extend the 4-byte match as long as possible. + s += 4 + candidateL += 4 + for s <= len(src)-8 && len(dict.dict)-candidateL >= 8 { + if diff := load64(src, s) ^ load64(dict.dict, candidateL); diff != 0 { + s += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + candidateL += 8 + } + + if repeat == offset { + if debug { + fmt.Println("emitted dict repeat, length", s-base, "offset:", offset, "s:", s, "dict offset:", candidateL) + } + d += emitRepeat(dst[d:], offset, s-base) + } else { + if debug { + fmt.Println("emitted dict copy, length", s-base, "offset:", offset, "s:", s, "dict offset:", candidateL) + } + // Matches longer than 64 are split. + if s <= sLimit || s-base < 8 { + d += emitCopy(dst[d:], offset, s-base) + } else { + // Split to ensure we don't start a copy within next block. + d += emitCopy(dst[d:], offset, 4) + d += emitRepeat(dst[d:], offset, s-base-4) + } + repeat = offset + } + if false { + // Validate match. + if s <= candidateL { + panic("s <= candidate") + } + a := src[base:s] + b := dict.dict[base-repeat : base-repeat+(s-base)] + if !bytes.Equal(a, b) { + panic("mismatch") + } + } + + nextEmit = s + if s >= sLimit { + break searchDict + } + + if d > dstLimit { + // Do we have space for more, if not bail. + return 0 + } + + // Index short & long + index0 := base + 1 + index1 := s - 2 + + cv0 := load64(src, index0) + cv1 := load64(src, index1) + lTable[hash7(cv0, lTableBits)] = uint32(index0) + sTable[hash4(cv0>>8, sTableBits)] = uint32(index0 + 1) + + lTable[hash7(cv1, lTableBits)] = uint32(index1) + sTable[hash4(cv1>>8, sTableBits)] = uint32(index1 + 1) + index0 += 1 + index1 -= 1 + cv = load64(src, s) + + // index every second long in between. + for index0 < index1 { + lTable[hash7(load64(src, index0), lTableBits)] = uint32(index0) + lTable[hash7(load64(src, index1), lTableBits)] = uint32(index1) + index0 += 2 + index1 -= 2 + } + } + continue + } + emitMatch: + + // Extend backwards + for candidateL > 0 && s > nextEmit && src[candidateL-1] == src[s-1] { + candidateL-- + s-- + } + + // Bail if we exceed the maximum size. + if d+(s-nextEmit) > dstLimit { + return 0 + } + + base := s + offset := base - candidateL + + // Extend the 4-byte match as long as possible. + s += 4 + candidateL += 4 + for s < len(src) { + if len(src)-s < 8 { + if src[s] == src[candidateL] { + s++ + candidateL++ + continue + } + break + } + if diff := load64(src, s) ^ load64(src, candidateL); diff != 0 { + s += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + candidateL += 8 + } + + if offset > 65535 && s-base <= 5 && repeat != offset { + // Bail if the match is equal or worse to the encoding. + s = nextS + 1 + if s >= sLimit { + goto emitRemainder + } + cv = load64(src, s) + continue + } + + d += emitLiteral(dst[d:], src[nextEmit:base]) + if debug && nextEmit != s { + fmt.Println("emitted ", s-nextEmit, "literals") + } + if repeat == offset { + if debug { + fmt.Println("emitted match repeat, length", s-base, "offset:", offset, "s:", s) + } + d += emitRepeat(dst[d:], offset, s-base) + } else { + if debug { + fmt.Println("emitted match copy, length", s-base, "offset:", offset, "s:", s) + } + d += emitCopy(dst[d:], offset, s-base) + repeat = offset + } + + nextEmit = s + if s >= sLimit { + goto emitRemainder + } + + if d > dstLimit { + // Do we have space for more, if not bail. + return 0 + } + + // Index short & long + index0 := base + 1 + index1 := s - 2 + + cv0 := load64(src, index0) + cv1 := load64(src, index1) + lTable[hash7(cv0, lTableBits)] = uint32(index0) + sTable[hash4(cv0>>8, sTableBits)] = uint32(index0 + 1) + + lTable[hash7(cv1, lTableBits)] = uint32(index1) + sTable[hash4(cv1>>8, sTableBits)] = uint32(index1 + 1) + index0 += 1 + index1 -= 1 + cv = load64(src, s) + + // index every second long in between. + for index0 < index1 { + lTable[hash7(load64(src, index0), lTableBits)] = uint32(index0) + lTable[hash7(load64(src, index1), lTableBits)] = uint32(index1) + index0 += 2 + index1 -= 2 + } + } + + // Search without dict: + if repeat > s { + repeat = 0 + } + + // No more dict + sLimit = len(src) - inputMargin + if s >= sLimit { + goto emitRemainder + } + cv = load64(src, s) + if debug { + fmt.Println("now", s, "->", sLimit, "out:", d, "left:", len(src)-s, "nextemit:", nextEmit, "dstLimit:", dstLimit, "s:", s) + } + for { + candidateL := 0 + nextS := 0 + for { + // Next src position to check + nextS = s + (s-nextEmit)>>7 + 1 + if nextS > sLimit { + goto emitRemainder + } + hashL := hash7(cv, lTableBits) + hashS := hash4(cv, sTableBits) + candidateL = int(lTable[hashL]) + candidateS := int(sTable[hashS]) + lTable[hashL] = uint32(s) + sTable[hashS] = uint32(s) + + valLong := load64(src, candidateL) + valShort := load64(src, candidateS) + + // If long matches at least 8 bytes, use that. + if cv == valLong { + break + } + if cv == valShort { + candidateL = candidateS + break + } + + // Check repeat at offset checkRep. + const checkRep = 1 + // Minimum length of a repeat. Tested with various values. + // While 4-5 offers improvements in some, 6 reduces + // regressions significantly. + const wantRepeatBytes = 6 + const repeatMask = ((1 << (wantRepeatBytes * 8)) - 1) << (8 * checkRep) + if false && repeat > 0 && cv&repeatMask == load64(src, s-repeat)&repeatMask { + base := s + checkRep + // Extend back + for i := base - repeat; base > nextEmit && i > 0 && src[i-1] == src[base-1]; { + i-- + base-- + } + d += emitLiteral(dst[d:], src[nextEmit:base]) + + // Extend forward + candidate := s - repeat + wantRepeatBytes + checkRep + s += wantRepeatBytes + checkRep + for s < len(src) { + if len(src)-s < 8 { + if src[s] == src[candidate] { + s++ + candidate++ + continue + } + break + } + if diff := load64(src, s) ^ load64(src, candidate); diff != 0 { + s += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + candidate += 8 + } + // same as `add := emitCopy(dst[d:], repeat, s-base)` but skips storing offset. + d += emitRepeat(dst[d:], repeat, s-base) + nextEmit = s + if s >= sLimit { + goto emitRemainder + } + // Index in-between + index0 := base + 1 + index1 := s - 2 + + cv = load64(src, s) + for index0 < index1 { + cv0 := load64(src, index0) + cv1 := load64(src, index1) + lTable[hash7(cv0, lTableBits)] = uint32(index0) + sTable[hash4(cv0>>8, sTableBits)] = uint32(index0 + 1) + + lTable[hash7(cv1, lTableBits)] = uint32(index1) + sTable[hash4(cv1>>8, sTableBits)] = uint32(index1 + 1) + index0 += 2 + index1 -= 2 + } + + cv = load64(src, s) + continue + } + + // Long likely matches 7, so take that. + if uint32(cv) == uint32(valLong) { + break + } + + // Check our short candidate + if uint32(cv) == uint32(valShort) { + // Try a long candidate at s+1 + hashL = hash7(cv>>8, lTableBits) + candidateL = int(lTable[hashL]) + lTable[hashL] = uint32(s + 1) + if uint32(cv>>8) == load32(src, candidateL) { + s++ + break + } + // Use our short candidate. + candidateL = candidateS + break + } + + cv = load64(src, nextS) + s = nextS + } + + // Extend backwards + for candidateL > 0 && s > nextEmit && src[candidateL-1] == src[s-1] { + candidateL-- + s-- + } + + // Bail if we exceed the maximum size. + if d+(s-nextEmit) > dstLimit { + return 0 + } + + base := s + offset := base - candidateL + + // Extend the 4-byte match as long as possible. + s += 4 + candidateL += 4 + for s < len(src) { + if len(src)-s < 8 { + if src[s] == src[candidateL] { + s++ + candidateL++ + continue + } + break + } + if diff := load64(src, s) ^ load64(src, candidateL); diff != 0 { + s += bits.TrailingZeros64(diff) >> 3 + break + } + s += 8 + candidateL += 8 + } + + if offset > 65535 && s-base <= 5 && repeat != offset { + // Bail if the match is equal or worse to the encoding. + s = nextS + 1 + if s >= sLimit { + goto emitRemainder + } + cv = load64(src, s) + continue + } + + d += emitLiteral(dst[d:], src[nextEmit:base]) + if repeat == offset { + d += emitRepeat(dst[d:], offset, s-base) + } else { + d += emitCopy(dst[d:], offset, s-base) + repeat = offset + } + + nextEmit = s + if s >= sLimit { + goto emitRemainder + } + + if d > dstLimit { + // Do we have space for more, if not bail. + return 0 + } + + // Index short & long + index0 := base + 1 + index1 := s - 2 + + cv0 := load64(src, index0) + cv1 := load64(src, index1) + lTable[hash7(cv0, lTableBits)] = uint32(index0) + sTable[hash4(cv0>>8, sTableBits)] = uint32(index0 + 1) + + lTable[hash7(cv1, lTableBits)] = uint32(index1) + sTable[hash4(cv1>>8, sTableBits)] = uint32(index1 + 1) + index0 += 1 + index1 -= 1 + cv = load64(src, s) + + // index every second long in between. + for index0 < index1 { + lTable[hash7(load64(src, index0), lTableBits)] = uint32(index0) + lTable[hash7(load64(src, index1), lTableBits)] = uint32(index1) + index0 += 2 + index1 -= 2 + } + } + +emitRemainder: + if nextEmit < len(src) { + // Bail if we exceed the maximum size. + if d+len(src)-nextEmit > dstLimit { + return 0 + } + d += emitLiteral(dst[d:], src[nextEmit:]) + } + return d +} diff --git a/s2/examples_test.go b/s2/examples_test.go new file mode 100644 index 0000000000..3282ee8b8c --- /dev/null +++ b/s2/examples_test.go @@ -0,0 +1,102 @@ +// Copyright (c) 2023+ Klaus Post. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package s2_test + +import ( + "bytes" + "fmt" + "os" + + "github.com/klauspost/compress/s2" + "github.com/klauspost/compress/zstd" +) + +func ExampleMakeDict() { + // Read a sample + sample, err := os.ReadFile("../testdata/gettysburg.txt") + if err != nil { + panic(err) + } + fmt.Println("Input size:", len(sample)) + + // Create a dictionary. + dict := s2.MakeDict(sample, nil) + fmt.Println("Dict size:", len(dict.Bytes())) + + encoded := dict.Encode(nil, sample) + if len(encoded) < 20 { + fmt.Println("Encoded size was less than 20 bytes!") + } + + // To decode: + decoded, err := dict.Decode(nil, encoded) + if err != nil { + panic(err) + } + if bytes.Equal(decoded, sample) { + fmt.Println("They match!") + } + // OUTPUT: + // Input size: 1548 + // Dict size: 1549 + // Encoded size was less than 20 bytes! + // They match! +} + +func ExampleMakeDict_zstd() { + // Read dictionary generated by zStandard using the command line + // λ zstd -r --train-fastcover -o zstd.dict --maxdict=2048 gosrc\* + // With gosrc containing all the standard library source files. + zdict := []byte("7\xa40콶\xc1\x1bB\x10\x982\xc4\xe9\xc0\xc0\xc0\xc0\xc0\xc0\xc0\xc0\xc0\xc0\xc0\xc0@\xf5<\xda#\"{\xb7\xb6\xdd\xdd\xda\x17\x1b\t\x9b\xbd\x13n{U\xc1k\x11\xc3\x1b\x8b\xfbX\xee\xfe\xcb1\xcai\f\xf6meE\x97\x19\x83\\f\x14\x00\\\tS\x01\x00\x18 \x18\x8f\aT\x1a\xf5\x00\x00\x04\x80O\xd3MIJH\x03q\x98$I\n\xa3\x10B\xc6\x18B\b\x01\x00\x00D\x00\x04\x04\x00\xc0\x00\x00\x004\xcdieĩ@Β \xc7\x14B\n͌\b\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\b\x00\x00\x00kage types2\n\nimport (\n\t\"cmd/compile/internal/syntax\"\n\t\"strings\"\n\t\"unicode\"\n)\n\n// funcInst type-checks a func\")\n\tif err != nil {\n\t\tt.Fatalf(\"Prepare: %v\", err)\n\t}\n\tdefer stmt.Close()\n\n\tconst n = 10\n\tch := make(chan error, n)\n\tfor i := 0; i < n; i++ {\n\t\tgo func() {\n\t\t\tvar age int\n\t\t\terr := stmt.QueryRowool { return c != nil && c.fd != nil }\n\n// Implementation of the Conn interface.\n\n// Read implements the Conn Read method.\nfunc (c *conn) Read(b []byte) (int, error) {\n\tif !c.ok() {\n\t\treturn 0, t\n\t\t} else {\n\t\t\treturn nil, &FormatError{0, \"invalid magic number\", nil}\n\t\t}\n\t}\n\toffset := int64(4)\n\n\t// Read the number of FatArchHeaders that come after the fat_header.\n\tvar narch uint32\n\terr log.Fatal(err)\n\t\t}\n\t\tf := strings.Fields(line)\n\t\tif len(f) == 0 {\n\t\t\tcontinue\n\t\t}\n\t\tswitch f[0] {\n\t\tdefault:\n\t\t\tfmt.Fprintf(os.Stderr, \"?unknown command\\n\")\n\t\t\tcontinue\n\t\tcase \"tags\":\n\t\t\tprefix 00\\x00\\x00\", true},\n\t}\n\n\tfor _, v := range vectors {\n\t\tvar f formatter\n\t\tgot := make([]byte, len(v.want))\n\t\tf.formatNumeric(got, v.in)\n\t\tok := (f.err == nil)\n\t\tif ok != v.ok {\n\t\t\tif v.ok {\n\t\t\t\ttturn true\n\t}\n\treturn false\n}\nfunc rewriteValueARM_OpARMBICconst(v *Value) bool {\n\tv_0 := v.Args[0]\n\t// match: (BICconst [0] x)\n\t// result: x\n\tfor {\n\t\tif auxIntToInt32(v.AuxInt) != 0 {\n\t\t\tbreak\n\tnt) {\n\t\t\t\t\tt.Errorf(\"%5g %s %5g = %5s; want %5s\", x, op, y, got, want)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunc TestFloatArithmeticOverflow(t *testing.T) {\n\tfor _, test := range []struct {\n\t\tprec uint\n\t\t)\n\t\t\t}\n\t\t\treturn\n\t\t}\n\t}\n}\n// Copyright 2017 The Go Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style\n// license that can be found in the LICENSE file.\n\npackage ), uintptr(unsafe.Pointer(_p1)), 0)\n\tif e1 != 0 {\n\t\terr = errnoErr(e1)\n\t}\n\treturn\n}\n\n// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\nfunc Sync() (err error) {\n\t_, _, e1 := SyscDLINK = 0x10\n\tMOVEFILE_FAIL_IF_NOT") + + // Decode the zstandard dictionary. + insp, err := zstd.InspectDictionary(zdict) + if err != nil { + panic(err) + } + + // We are only interested in the contents. + fmt.Println("Dictionary content length:", len(insp.Content())) + + // Create a dictionary. + // Assume that files start with "// Copyright (c) 2023". + // Search for the longest match for that. + // This may save a few bytes. + dict := s2.MakeDict(insp.Content(), []byte("// Copyright (c) 2023")) + + // b := d.Bytes() will provide a dictionary that can be saved + // and reloaded with s2.NewDict(b). + + fmt.Println("Dict size:", len(dict.Bytes())) + + // Read a sample. Use this file. + sample, err := os.ReadFile("examples_test.go") + if err != nil { + panic(err) + } + + encodedWithDict := dict.Encode(nil, sample) + encodedNoDict := s2.Encode(nil, sample) + + // Print a less accurate output that is less likely to change. + // Since we include the (encoded) dictionary itself that will create better than expected compression. + if len(encodedWithDict) < len(encodedNoDict)-1000 { + fmt.Println("Saved more than 1000 bytes") + } + + // To decode the content: + decoded, err := dict.Decode(nil, encodedWithDict) + if err != nil { + panic(err) + } + if bytes.Equal(decoded, sample) { + fmt.Println("They match!") + } + // OUTPUT: + // Dictionary content length: 1894 + // Dict size: 1896 + // Saved more than 1000 bytes + // They match! +} diff --git a/s2/testdata/fuzz/block-corpus-enc.zip b/s2/testdata/fuzz/block-corpus-enc.zip index 1e44ebcefb00b1cc5e224a3e3997785c407b68ea..7f0832c8358136b8f6686c10dc5768df74b086ee 100644 GIT binary patch delta 599596 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 z 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 z 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�Y3 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

xoo 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 delta 104 zcmccqVJ+jzJspes+oun$l%EkZ$;Xs(A%D}Mkha!*% E013h#+yDRo diff --git a/s2/testdata/s2-dict.bin.gz b/s2/testdata/s2-dict.bin.gz new file mode 100644 index 0000000000000000000000000000000000000000..f68dac7e4853d419211297330c08a8689cfb1fa6 GIT binary patch literal 32405 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�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 YcNX~00^eES|B(g$2M`?S(E$Jf0A)zVb^rhX literal 0 HcmV?d00001 diff --git a/zstd/dict.go b/zstd/dict.go index 66a95c18ef..ca0951452e 100644 --- a/zstd/dict.go +++ b/zstd/dict.go @@ -32,14 +32,38 @@ func (d *dict) ID() uint32 { return d.id } -// DictContentSize returns the dictionary content size or 0 if d is nil. -func (d *dict) DictContentSize() int { +// ContentSize returns the dictionary content size or 0 if d is nil. +func (d *dict) ContentSize() int { if d == nil { return 0 } return len(d.content) } +// Content returns the dictionary content. +func (d *dict) Content() []byte { + if d == nil { + return nil + } + return d.content +} + +// Offsets returns the initial offsets. +func (d *dict) Offsets() [3]int { + if d == nil { + return [3]int{} + } + return d.offsets +} + +// LitEncoder returns the literal encoder. +func (d *dict) LitEncoder() *huff0.Scratch { + if d == nil { + return nil + } + return d.litEnc +} + // Load a dictionary as described in // https://github.com/facebook/zstd/blob/master/doc/zstd_compression_format.md#dictionary-format func loadDict(b []byte) (*dict, error) { @@ -64,7 +88,7 @@ func loadDict(b []byte) (*dict, error) { var err error d.litEnc, b, err = huff0.ReadTable(b[8:], nil) if err != nil { - return nil, err + return nil, fmt.Errorf("loading literal table: %w", err) } d.litEnc.Reuse = huff0.ReusePolicyMust @@ -122,3 +146,16 @@ func loadDict(b []byte) (*dict, error) { return &d, nil } + +// InspectDictionary loads a zstd dictionary and provides functions to inspect the content. +func InspectDictionary(b []byte) (interface { + ID() uint32 + ContentSize() int + Content() []byte + Offsets() [3]int + LitEncoder() *huff0.Scratch +}, error) { + initPredefined() + d, err := loadDict(b) + return d, err +} diff --git a/zstd/enc_base.go b/zstd/enc_base.go index bfb2e146c3..e008b99298 100644 --- a/zstd/enc_base.go +++ b/zstd/enc_base.go @@ -149,7 +149,7 @@ func (e *fastBase) resetBase(d *dict, singleBlock bool) { if singleBlock { e.lowMem = true } - e.ensureHist(d.DictContentSize() + maxCompressedBlockSize) + e.ensureHist(d.ContentSize() + maxCompressedBlockSize) e.lowMem = low }

~1vbL1K| z#i@u5{Wg@sSh3!adPI9y+I4XeIKNyPe-ZV;E;_4krpFq5Xi4PojJZOjWz;Iz*cQ(W zJDkExvC%<3OFx?b?9|4ijwzc%!1^l50HO{SH&qZ(({-{4`rMlj!z*lHuGgPgABzSx zS+Eh=X4;;Kur$MvHS@71kCjh~KU+hM7WqTO3|%a?*U`@GOvyKeec%%HYS++Xf3a?7 zd+3Y>FEZKbtoF~7VpaNfhy0Pe+1v^y2}2&iAsb|hBhF?}&2Y_`3@jsQ#r-uMu_$&_ zYV%W&@eJMZYOb12;abBrj&6f~!{xITB+yfG80FqJc`{NZBvv*6+nYx5j7gyvq!}O1 zJ&^=Ur;dYkL2PUgtkonHJjRLOe+FP7_DA{J>RMS3Vm80U8^p58#N1{FJH`G-d6#%8 z&q2Q5-qnG?)8{CIwCq0CVsggud2 zn!aE5O`H^jXKHazki^4K*S!R(H*RZROS3TycS#aL(FZyyUYNijE4Bv5-CuB}+oBVc zstALvG`oZwwLIHmvAw`_e^%II4N9>lm#KN&emu{`E%YXu5OnIB&$9#cJzU3^vwx10 zYhBC9$bBIF-sD6g0_NdL0&E`bPpS_PRx z9QU8LS_8yvdN)fo3wGOkz${{S(|*Eyc5(QhMH)@VV>yCI37ryA89Z?w(mTGD3I}H3 zsf5*y&#%%!P0mr#c^-Ct11DjM!wt|Kht;IJYY1Nkkh5j&&sc%GGF~}P@i7$dYyI>& z!5n4@Su+WI8WvN>e~ksq1R4(O8WsG*o!FZbDP(_1ecRSVS-w+LF}q6X9f=G^%Qt}g z5Qv)ChPZaWU}-4`SV@avHcvN5bR4r(xC8#Ch9bBuM7WOT0IlO5no=t=$$WmLgO*7r zZ8twZ(U&r+IOh1 z82WErlOh$iJu`enDnLp~!#20dgWk^}4_Luf|{jIn-iQS@e zuei9}f3-HT-Zo?{{ya7=q0p=Zg&_!aW$;2;SPzg8Rx{4;-hcopj%s{@o%VMRMKX{` zz9~LuWqq1#8>SL|t|Y)yhXjR-Uyx_0pJJgwXz#PXNYu%NW1$U*{CY`oVb5FciA5lK zQ^oo8KR<>qN6NZ22y#b#ly5YdDI~m>iG+YVfA#At9}Kp&E5OpoJ-^Wn*oZn0M+XUrDXj`S=>Z)4yysiZWx58fy`2F}OwKTG>v@Ybwe9aq- zB4m4tA}|8c0Dn4HTlvvatzNB@;!XCdyW9omeR>K+d5p>u0Tv`$?7~I;7>qn+J0{dt zfBf5`kB3e|_(+F`8GeDDj*!7N~ISz1>sEPVlIgG&~w% z?fTwOq+7A@R%su8HLPQ0p26?BUej{*LD{O2*YR_9{s$AQ6a5TM-0(^+v|%5gw-B``rXs$)qh74`Qe{Kf3 z5*TAMBfOjOImtDUbN1-x<`{@No#yw{EwfsBHEx!39Og>&#1<{jaj!_pH^pLVL&*>?q&ENVaq@BnH&Oy0-gn zu}0g5L#HXX>1notLG!k76Z3to=}e>7r^6N}66Wmk&3wyA2P3a1ud|{IWy#lpu}yk{ z@w|7mZSd0MFv#0eXV>$0tKhW`GNmSCBoVAco?3F5yJny1m3)i}Kkf6Xi|%Fj5F zY(H|4aOpL~G;)Zxu_237Ga*4W{kYctVgv;9*4y~l4kfqOl?)sE<0RHticE?>z4a3JMeN>&+XD`?V)G4;57c=Y-`(x> z3>A3`A7Jt7Cc`T{r3sgW>yKaDKo^;{dg=5xexLj^d5a9D+800oe_I-b%O+hjz^$hE zpK29luy_Gh*x{F`bXDP%L^8I(3di#9n=^6vRQ}(VktzV>#tG1$Z%Xa_SvJh5LH0XD zK_)C7`PS6tL$(t#mCYAVPq3R89G=QYZ?nG{kqBKkCTZBrtcX;JoosBp(Xxrpp(!kiO$N`e;yT-SO(hX7#7)p(Vr}niv_dXU}FKfXe07NOB?*!KZAdWL~GzB zKv(cMD&Icgg8TG}71M2ckKHidH<}vTK63~dN}ddxt+LOtQ}Bfgqe=EHYdy1C*!&u@ z$Usdmxf*(EbQgY=Cs0IAIH6+HoF#Cuo9uGu=tCjQ&czg^-Ga50s3Z<&tThEFpBu2WrH9I|?V<4fSDZ%&)CQ|2 z%#F`$-1z~^e-A($S(hH8{nhRc6VoNlOWxr#KBBMr@Rx!AW%I}%Bq0ZzOB-HPx)uz< zn%N}>+e->Ipd*srNEz~GQB7kd;us0DZ(EIBHb~V;*T6;~oQcVWFwVjHbs=2O)=lir zu>kNIiSkFK5o5ALuLu?4Yiz@VO1jU%+Tr|3gT$I#e~DE`%Z$g4Q)1Nx_yuCv_`14R z;|&Mkfo#@<8M!F_D%Coq!P>~y+>{&5sGDVS)9<*QfKO;rCR0S^9AC@u{ZP@tC|B7$ zF3BuiPfkV1IBh+lXp>wvm$*5z%h0#U=wXT355cI~)9H>K zgTgbSf9hLi${hT#13!;z=ifGNDx|`ezr)wkq^H_9LSN-5`8`f}uzWEkL4SV+4U+1~Sx z!}aRHIQ4Q;l-+ZoYNjsgx0Z@H)HWGNe?PBxUWdHL5Hj}WtXQ9E>**iBmFH96BgRl! z$KFPaZK#|wnSj3!9b;RQMHd2>vWy&UtgmKp)~lqc%07v`7a0hHT`!P05)T9R3lPNi zFHvO|LmZE^ghTKaXJ2SwbI_O_d2q46if1xCl_@caBUz1LDRnM@gklJFkt@hGf3&t8 zcXot;b)BZSWW8ZCIm?X~k3i7TAN+N})2z>5o#|8!79~+v$;+XYPuU+}RJp)JpCE!8 zB~dO680dP)n^|ZotK$U*b%e(sU`DU7(fy+>k_2byT^rZ&*=RTC!D&F06D!gEhJ9gH z^s`EtyKk=TmC4UUR-I@l4_)yqe_d!ZDM!31h$A^=vr;Fc7U5l2_wqgpJdu9$InFxI zH`U$B-aMLC9Gr*(Sr)w8MiM5-I4ysw0&2a`#|1ZuQ)9_v6x=+rM|A3Vk^StXnLHE~ z+ISNGnYZVbb{nsd<4UeD&2njwcy>R-sF2f>wG!fsWMlPxuhAup83v3Le_Bl=KS7#c zb4~dB=0RXg)z_~d-E1WX?PQdkxRj7&2rj5`lcm+{)j-}med+Ca#ziY5blp)QMZ&|B zg~*>~5|fljGSkw+fc5y}Vco1m43}y};$vZ3rMaXT{aY~W!ZBI`j)>`>-)o1LC@s4r z{2m;|N}B^+B@X85#8R#qfBZsJ7T>twKr@hxWt`A^!m19FqP3drZ~X3`{^A#_nsXmC zmxOx(4<@qTIspTu_b_l1g~L_GA?s0gD7RZ4rGQpqEf0iYW|NR{5Q+0jcB$NvGSrTj z5pB{KvGhODBC{Cw<-_Zdj23uQlK$QdW1|;HOQh+9?@*X~Qm|N;{N;7pUX@yuZ6c zC_K!Oia=h?hW zpgEQ0xk1Brf8;HB%8lm_b`170i-xh;TENVg_t5e-s`!||v%HpoR>x%IPsqXM@X|b= zxGGeuSUd6NOtO#*EkEs+3m+43GI=*2;_MKZdRnlFOHdt0EF!%0(ni-o*fTDf7GS`z;!85&i~GaCy*56XC@IZ z2DBiX@;YcUe<)d@40wG)-oc0^M&aGy_n#34pi{E4FM={GPq`?I#E%BnHw`dBFkqW& z!#T|)6kEK&20|o6HND`ZO+a!URLVQt>vYU2+bFMb!&JSF$PQMRe_V!+>IIOSuhoVm zl=Z!TfAMulve=><=Zf87m?Nq>Mg$x~kT_$qz1F026plE(ejPxBP%0blRjCy$dFf?k z0)G^L#XO%Q7gP|`{93r_pc$}0l-J*G)}3zU2M88yAnb~!@~E_=X27;)${T2f#b>w7 zEay$)E7@V(0EOMyI`^`oJsY_s&TTH_Xg?%#f2cVl17HiJYFgA6TR&favT!AgSuci~ z5E8~U>#^VG?}}al56!y)&4+6zU8ket7@+nnADqalz>X>iYRTNK{+fFAHci)rc>Wy)Hi8dZXrG+sUkl~ua;cvGt) z=w}%)<0#6Q$W}=EO;rNCP%5)5O>ki#cbzp&CRvgbP(skp@(o6)jg-g2?sRdn5*Dn~ zyVOn2TRKpxndhn0Aeq3yUv6&-mYk($APAxy`vb;xKH0Iskce{i$SB|C2e;!2e+Mii z0!z9G92PtuZcS{Q^qR;?+LVMR3_**|lLe+i5j!542=1Giq8)f)be7gLVfsVfN_N04 z!h)q-eHv_E^Cc$k&;(v%oXK9@Sc#m=13MM}y4a)Y{ERqmJltfY^<^n#BZ*jo4wMl# z&Nlomi-7*?HGbFfoIC%^AI?ATfA{vwS$gDeYv_?;-l$fOg>@!}ZU++Fz1y=FEtRlr zAT0Ccfi*K>k>LMJfjw+Omp<%eJ!_jPKOfxj!&o=>Vk9k*Q(f54D6MRkX173bV_ow~ zQ`}4>KR0wwKe$df66$57p{+hy;>{YfpZe7dDC62vmdVFy5nitz%`K8ie_;XzjduCG z*@;4Ps)WA10+~Q=`E*?O+{$zy%1J|Oz@gMou z2gF_KmT=1vK1`^WH@h*EjvaCAyBK9^YD%cG5Q0+fxdZG*%2^F6vPq16uA$%S%G%@o z_lfHw(gT?dm@VKO;SMB{ifMZE59p1dmvtaOzFXDU#*RI>@ip^qf0=?)h&^LycYKVf zcR0dS_3J4^2e@;Xvv=fOqHd`V%2WI5z}C&p zrpbcC{ne*8Ad(r+1qvWz2m)fvNtck;SfVVNW97Aw$Ii(&_~@2`i0gnJI}TO`z4i<*Kl<-6s}@ro27Dq$jU39>JhPJ)ZAt zZv_tI)0FZ+gCWsqWFzNo^W7OyHdb8@5Jue1^tXUp$k0daf537vLxl!r$>)xeR=)BM z95Vi*q~a$N`2N+dgJ{`+#(Dglt%Q?SZg=ouVU0&{AC}$PJmGoUCtl1Ql%SPK_HuE7` z{A)Wb2`C&i{lCQp_NYC58K;qlV$wm^=;jFS-qiRk@L@^rWr@rGx3~B69`Pn9l*X2Z z&RS!I9?Ksrbqd*HQsYjxdBqx>%k^X`t(FJ9mJA#sf7B3Xow$P@@-=8za8jruejAGK z>3%r`Um|s6OAK&N0jF;*6uHN+LdRmmgR%SvLU9wtRlwnVZ*vwv!zpMJuYmKBB`r+m zIE!-~dJ<|{1df(gYBFC3$L3$&AzSq<4^O|?Y_2J5{8WHmLImkAj7E$E^_|NXs_uR| zbkpi2e|87`SEG5*_rq9rpT{Y|U*^%tbP)H>k-#OjXuUx)q)Myf7y!k-&3(t6v**An zh)Km)z>Zpw%NZne%|i|mo#s^!R+Rd7~p4X?XnJybyo!ppLG zIPYD0nHk;Q@{S-n+w;|Wa%POFuv$5geS4c`f7)J@#H;v<3yV*1W@5^nxM7}T;w-Ev zU4+G++r?3iwX;6d-E%Zpg-L45t8DHj37H-A$%EYNQ{VmM5>ZrH8o<2WrAJ1(eCvTT zwtm;g!NEVXuGbEZ%4Klv4P=75Z7Z6?T`A^FT^GOluO5gxCpQDy+EXe%yHA85qq#Yj zeB&dddM(VO>MwD}W@bPLAgx7N1e2_qo;LHl~`W z{~c2iSIfo+KQFFfl2ud_j-!3ZhRH$}=;?%pB$U6bDpkK4wk^ilSK8vFrId4%oYtCl z(TWBzW4s3L4K%rs%`ee_;4E*GrPXXG~vKcb9Y7AtQXZ!{cUQC+*(I zWw$Bkn@8mQcF>?(zT4Lm)`jaRH%FiPgxobC3( z44W=)yO@K~GrhDPu$0m8^_8cpe_;yXNe*mGa6qL?1?<~FoM*fa?@}8$6Lt?$ zGre298kGz63^3;QRi7e&=T&>Hy!_*e`&|qFQMasVTkZhPXY3Kvq;_~r z6;n-}G$z9rLfX_1>&?-}h(;GJv2rL*$vY1?L_IuNLwtXg3wp*B*sYpuKZNr6I_aKc z<&aBj2}~z36e8ccOA+(+AYfdkm3^>-x6Xm_?vp3nFm;(l)~CG0e}$A}S6sh?idog6 zez*j(ggEpZmgjPVl9Dl0yZJ1Joq^7Lf_8It-swSDLE~9$vC=_OSt!_A za_J(`GShn{bPWZae*zp&?F02C!g94BjZ&VLS96eyx6ctru{|kVUG}b*J|*SkmoXyV_G9G*g>T6nhj-rToNtLeHS3zX zD7d772aWH)`XfFbOqA+cxX93;pJ&e_G4~JZR*`Ep=Y@EX;2}_gMDR zq?a3VU(di-+hZJMySz7eP&Qtp7ddb^y+JmcQ0j(U)O*Hav5E&hdQpX>-8=TT&ou$6 zRBz2Hf|xPY2nS%lxfmw?bQG_h?Oe}$P(ec*jG_e1 zTbWu$f7fTI&lIe90PYlA^3epXyj=nmPAuoO*AjnYUem>tZJO}Fy*nwphWKpHgqeP^ zz^yCl;cvob3>Z39QgqO!_BF+){>oGniitm5jbtA)*}&6&u5pdC@F=xias242wtf3( z+v-(u+=&$SWff8|bcn01vB|~q)^3RmMN>93?yTnP@> zUUE+%ZQQ2>xkn05Dwbv&`+>--WAgoRk(QoW7)8 z(kTy)5kdKhGVDWMj_!p`smg8V%d|iq0z|N}3y!vSwONkZ* z2P$>{+Cob3F}*@1O6P1zGkCMm)>&iAe_PNjJ=Z=xm;CO`T(f0=HSQY)X!`WVof(?p0b)fvl2UTZg)FO$I9=4Kwb zv&{?^BjS?Gc~V(Ik?orhzj(dYijX4MT{ zbZrf&K5PIQjQ9)2I!S)qtd)z(Zgf^}@=4*T1lK2ve?UaK31EBa z+?$O?IaYllFJLD)FCG|0nYx0#J_eOa9ccM3z7|+$y<#CN3B-F-|GSTxti3Z1L`!^v z1bsw5B*~z6WaEf`J526L+FtzG>xYc)CSWOV<;J_Tk5R5Y*@JaWzz&^t%jC_QJSBSp9OBYK$*ixo< z(6W+|CM-D&(e@shp1wH;RXOS==X%Jokq%|T#^Y83R{I7eK!o!nKekylCp&n;c7!Y2 z{n?g;yEsn!L*Ev^tvDmXaONguv)J*~( z>xk9!mSh4RnAclR9cEe`56o6MXK8?}nJr_&hE#7UO0a!B(66T1YXChiR&}<}3(851 z6G1k#?3x!v!p`6i188sxRwPTKJefrj?Fpx?b6>%o^fBxq4W=hI;qYB-*OH8^n z{9EHi^rXlZ?OAwS)uH6%0LdTMR%|K{eiSKfvp8P4Ajr|Y?eUwZLeSQlqw=N08`@pm_KS;=Rm__7;D2@UjljsXtVEPYk8 zOlLJgbC%?`@7M`Io8;naL_1qpP@c8a>+UgmHL(*cYuXG#go~Sqp~~B{#FU!9_@io| zOhmzZnO_U7Md!s7#dT`r5+gGh)y8?Ggi&b$3p`XJe{3V!WFvZ}0%I<4&o>#-j-I}^L%4`BGt`GiE zu+?$BqL%YVdNz)NI3;N+$)xF>mvc`_{eaCR7>HJ6;J zc0#I`!w=8K+Rda9uX(Gjf&u(*zOdcc_M@lMe`|rQA)Nj_qHk{%`EQpwG(%gRhlPbC z%D1JrizBGq$7v~q>)ws*I8kr&V&)qLKbKd>do;;GNfmb!CX{K1qFLY!>sA1fZ1s97 z7;}|&@t9`oDH_jf6*U+eSzOXVLOcV?A|I(~i8gIsiB-BE&F`%iBf*Skt;%+o`-ox8 ze}AF@(slRq#cx`wQU>9A@fbP~UEhC7zjl5><^|l6K-S#r7mFzWbASC0zxb2C|1baf zFaGdv|KTtH5~VKy|6WWh(gOf;w+D?{$n1{c-XcCZSf(}L7~46o-SCtY3dyr8e^kDY zsKzxH)(0)?`?q^-$klQ+=Lt`)=gtBsAuF6~S*BD93T+!sMg^f6%#rQ|v%c#`G|Uw% z({a&6f$S{)f6F_(ES?Od%-I->6;{5SSCUItH2aWd3BQ~xnbRVu zg*6T-pVLs`$0y4LQKkU0GDD!)+9-GqX0<%6orIcrS##R2Ve{tS7FuB9+TbOBMcppR zkghht62$uW8C#H1SY{$uZ{@f2U%v~L&lzQescSZ|`&e{a#?lMBer z#CoyBrtCrt_o#$})HnW%lvlk|E5V@+8YUZpwI@&zk;7H4T_+yx zCByDj2Z=_8II_N*eF0(z1zBfE6IFHi^RgQ2>Me` z0J_GhU}GHswaZm;&Bn$`Ef`#WG#~cM`=#*4S%vBL5EuErE=YL}8;#!yPYZn}k!8v? zYa|**BD0NIYpL|8e;ib?ml(=3_H5TTKbweQ{R@a3kK0;}Q^&fpYLNKgkg(cL3b<9J zFyyhQh?6Eb60MP_j2v%>`PrRS^QRU)P~6;8)|%_^cBxJLvfWR{X&Fn(54k=90oC5G zYVqn!!5i^yu+=w@3~e^kw00bzFzmll2}!?k5cHt!GALe3e`PeoZCJ^AbG~!0<3&CLWi(Xmo#{NDJOL6SJ#0Sq*73toe+QB)o;%DlR9Ll2(%Ov#EnzN9pr!|;wZ=D|c{T0Q{O+Ir@|VB<`>S8) ze!uvW|Nf7D@yGL!()z`=h%4x+S%f^S-=yXzL}p|s#uM|DB%Y!XsX;T)t!U~vl{-aR zTA&nAFYyG*mlJ=w=1q9HAzSfaK?|o#DTq!)%S?;if0LQa0=Bjwn0?LxvXN0j?tGdV z%oO*FT=%wkd9KqqnRnCGZb^1NGUt%J8ecl{_(s0oC>(G4-o$)%4kURl`z=TXmwBjU zs7c1_u@aqLh?N(g{oiBH`xn2)f6LhI#uKT7ILpl*C#uUvG%dfL7LA& zE<~3*J1buOjPoJy=5n!C{^n&mY~z7@Ag=aaO3vynbwH?|qgS$MYwX<9h)~|b(#b~a zfk~(92xz_mh8|Dx%^OpL}gM2*6J9VLt8&r#vBtE-BU1pod_L$xeqdY{0=|=u+a}cHBm{jC;TdJcQ_HeW?E(nM`EP0(%}c*efqR>)P=>mf4ZO* zwcI_-BkPwvbp&q0ZbcaSzXo1GCth!&Taz%~`78UOKh|@2DPs5Q3#njP}u5Ie?5;DJ0;c!IO8&+wJ*Eb_t)U|0@0PxEcrr}4nle~ z>KehmM#=1f7*U%|D=ta$en(|f{O1qlKKo^e#jx$|n-Ne4wS=c?)QnwH6~==1A&ruk zF=`Se!awNuvUBtrjohL@gZ6VzU8ekcN$nm9aE^MVts0oVwscz1c? zweec^Qge{j(7AI7UC_z|T|*9p!X&$2lawWEWdI&w+K)#n>oyF=>)W?%mWH?2{V@Fv zftph-PvY*-M9er{hjhCiX+OQ%*)0I-cDT4!eU#v%)Ue~r9i(1^M*d0Yz< zv{~fUrd?=7QaF&v6@d~v0`fq$fBB=^U zD%`I3L$rV5Qq>|Onjyu?KnQC992GP8_ufQN52B8QzZQ=@$<#WM9%Hv^+GemY0OvBZ z3KW=29^roA3L0T>f77lV9>AiQMrh5SKfU*lfBx-LeDCMqzxdVf^Yici`M=3N+B(BC zk=xPI-NGLo;|~q0bkMD(}Ph*bwYbDJQ(Xe`F(8<*nv(>k7YCDG+NE zNPIISV;JFyRk(qmC)r!gjVJcb1pBJ5;$xzq8yu(G++bq`12YAyPN5pU>%_ag5I;ow zI1NqeG;NbQ5WHZETh8bU&rk_*jn(o{xQg(iNA=m1Pogb=`t-64=!ez$oLEBm3YVsx zJJEOs*~5Z7e|DA*WYYPed8uQ&vZ0MTFje&ZY`oY@+lk6<e^|86+DU;OF;A*ZH6=qm?34%T1S1_%;pouoVnIJ6Y&c_Mk0cJ@KUu{}57 zIa-^|Bu35r^)%bmw1YL=ju|2JZ49iu{k@J>M)J1;e>i^?oR`su)xZcWwq0fygGgaz zl@I+SURJy|{Aid-#hx1sSC@-OvKXwMysw$yxN6!qt^@MPgWEDW9B$!9lM*RM^`}F! zs0lt~4)k)mCufA}-eWxRfj34^e6dp!`Qv~v^((~^Jqr-p5Yb+BkpJ65&a4ypie_6*&z+xO%Vt~cf^18jjZN@FxIlFn; zFWC2d>du6+x9^=U-_nXFJBmck%^ne;~UaNG=ciX4i3y zch+%;;HfAPdMz8mXRe01{lKOTOeEtZ<9-N^31sa-l?=XBJy8lNnHuV9ybCQH!Z4$~IS4d1uUME5l% zqGF)8Sffh8m|gzx9AERYYDL(E5kR^|8f*l^d0_msa$fHn+HZ;+Y zJ5x)XduPXNl!2i~Hn}T#vgSKHwXtmMW={pE`oa33mKL)|A50EZ`J!Ia-0} zfXXg@ZJXt0xB;NcC*ENNHY>^CoYOV5My$=lMKvoi8b*OBhiG!;+RtTLf76C_Jda%< z9_)L|k+%|Qm-yAk+w;}mt%TOBKuw`z}lS;X&;(RbnTU&Dl2OfL)^AYUo0pxBoo-sVF}lYUHjqSe@~=b^nt>Qt@bcK z6wWXjoJwqhry<+1$E#n0uhqCX?s>XJxGHRnz^k706>m}q8U0nZ+f62@9Dz;kUp5iD zBUQDy;JundA<&S))@bG|k+`|%N~_2;C-TO@8Md1U?Z=UZ%!#`Jvxe-1kANzxd*$w5+!T3&*POHCOUkpf)VM+~<3LedP}w1HR?u8A;OtEM#;&GAt(9wX+ z$b=Y)vIMf;zXlq618%0Ef9OZX;z37e_}V@wlka^3syTqrQvV)98Twl8}l7)hS<(7BJuKDAa&yQ+)U{>3U44J9?sB7-q8 zK7s4x7hybgKdq9iM0(zwvv)OjE19h9uX2+flY53u#uqnh3Cf{C^k{OF?j$U}W9`Hy zH9XRYY{QY6e{j<{fN|*18Tp5hr{Ha_UjZAv$H5_a+@9-(LKJp6I9Q!se2HVTa7_IY zaK#oN6UV{bT+M?q*me)d@=bDrc)9G9l% zh;k=cczRUKmm|0E`(1nx|9bHP>Oo2njNQg`R`}jrf1wpiA-rsJ>HT8_qZvN~3iQO_fe|Fej4pe6$nx`R5qbfsqncA^0BPvQlPFYQTO3{f@u^vue5mD|bdqG1}NK;%iw z?M$UU`R_@o4gNK?^TBF!%hH1uRswu$~31XWlRg*apImaP$ylP zKAp=sDCSm45{1ZV-4m~W&DR>j9F0wff2ee9*MmQp=6P|Id|LZwp(eX*S5qIGaGI?> zVt*wt#-l*BG%!rJqmFB(hT>a}%Puf~&fWnw{CgWLC>WUCuHFl3eGc>ZvWxgYt}Sux z?C6BLOHVlgxo1f@B?^*ay+f5V{?vvzds|TOjEsv1CZj;O zD=hn;w_1LW^EaG&b(btKiKP1&a!7apPe8E0zwxIx2yc#cA&Gl2rEcxQl zKuA;R;7Y6n&FjfN6>|?E@~RFUZ$No9R(~T~xec=^_MZafL>%#s8#e8TGy?I<2Zm5< zZ?VT13AEs(#s}$(C(M4`gV@M!f%O^QmyMW>bDQlkTc=*;NbWz%YL8$4lKe`uU4%{ck`2^FNr=RAJAOH0H&p*z)KmO5g{IK>CAU{^B3}t3TU3y1)4^ z{@~yI(LeZ;|MK^K^T+qw|K!Kt`CEVZJ3rRH{^$SZ$NO)7`M>mU8S+x1_4KYsM@{KLPwf6V&3@9Y11R(Y%A z|L!sT-hTai|HrSdMLEo0`wG9S{?hONAAkINTdNjp`uWRy|DO)e@1LLl_x{5_LlSfH z4)x#u^t*rIcmKlut$+3R|G0kpzvUXbT&8505R(u|A@b;9ST&2c(-kjx=zppvy&tqw zNE^L(?VSC5DvdRAF=ffD$hzn}$Ds)zD zuI;|OGme`k+JAaerGTyF)E3&S6yjOv+ghJj65+e4H&~7CqcC@O@(~_b07Gr(Q{K=J zg@_k|ZSAKX#!wtMYuhkn4e0!s`dQua1E+nuV=w$$`}ewY+#l;7{`PPF_^rSD<4@;r{jK?a{PtM?;~)N=KiWU04F}Kx%w8;z0NUO(tW9keX{~2w=BIs+(mtwS%X=oP@{VRfZ7eVE+ z$|Am?s|-_aORwz5=?5G>5i8ln^y491?_W6afPZq9C8AyB!7>Jidn_v9$u_E8;91i% zYF)_0P8G}Ml_e?GGj9=1aKlU|8R(eE7 z7!zE}>|*R=Qf_>F{f+8mn-5pO+}lZIpPMNS_t}81V|w~G%~lOIMdoL?Tg{_xKXCY( zjDN%^JmQDIcXDT`ZbY=%U+m4FFyQ-_{qNuWxq|-E&rS7<-~FZk^Z)!^OjnKYj%f1T zg{v_Z#$upys4;+EPE7{zO|{mefEC)dfY#Zj=`&y!H3NFLPUKUu@O}G8CTpELTbY`r zM?&MAf?&&(vZpQ67(@s2AY-DFo%&aY!wm8`*>&!@SmdfBk0-gNn3 ztF6Qp@dKQyj!hMaa5X%$>X5jjMX;_x#nf!M^9Oi++mMfrtRhdu9r8NG~zFb}&U*>232g+IUUiEyj&c z>803b65<}n#D*^mgT{R<1~+)I*DUNEOapL>wR=SHZgm6mjLB+QxXdgySC`#|Mo`H2 z{AxI5Iv@794r@xOp@vD&ZLMIal7A|1d&rCk)hwq$x5?Sb-}NORIy*%J zA(c&oy-o7-5QX0;x~W^sdo=ONUoya+S3H6Ef+cm4S%}ba|{D= zg>NwnKGm&9_iI1EXjIQN86MVUp3|!^%E69o!US1wz%#XrG;p*FmJ_MK3|nbXhYi8k zj|FG8h^6~YqTsA_1IJ=(hy+^Mq5jOFMLG3xV%x+Zh6u!IWR7wz-(UHeSnWIi?4M?( zzkLD^<};tmTW%LHqKedsaDSb0nrnqZ!_ynkKL{J`^*7>k@NtY%o2-7_HDWI7+GtLm zI8Hd&CPyC1w!ck!|NiLsmKmY&$V>C24 zWi?|rI5K8pG&f;5Vm34~I5ROcGC5&1Ib$|5W;ixtG-hTtWo9yEWivQsF=jM2H8?e8 zH)b_4H#1^2w~=Ncl@+(T8zC_ee>u`6*R6zoEkmA6Oo64eBMS?VC+Du75&7jQj}G}> zFrvl&hg)?HhD2tf^1Y4MSqew!2#WCAU!LXCi8UN=5#bj1-j9^5JWAhj;0fbBOrym6^Ig7+a0>johq=vULeb&UFrFP8@8d*1XPbJxEn@`4~ zpni-F^==jg3gpyUmJ(o&ws_zgd>;HTc&AbjuUffSo!Yy!Pp{oE?9$0&!kK+01v8w1 zb#o!5ttXd&wjc{8>fDC^O75>sFiL;{LE6eU`1JJP%NcCm0Ky#V;Sg zGVME#oTrWtO)cp&f41Q=nQI%kyQ`TIpAmP?LHfuD|COy>aD)7fF30W2>;vX)rFM1< zJO&C%O=aRyK3_bB;$wn)GNp5+p^mqrO}_(n;7%a(rSCu8cXyZIpdMT%()3-KzK@tQ zSRG=bqFP1t_RgfNl7B71J2OpuvipL|R#Z&K*7`_WPBR5fM% zK&pcos2&&ZH3cI0YkW@IEjbHK1A99kiSv}W;`tSNjI|E{IGn5Gqy@S*w9h;6qNI7Q=0*w}fw?_6ung$2HpBTj8(Ev_OnDz= zPvBqV%G^G?&x^ra5U9DMYvU?F@H{m&gC@;^f55LGO&>m*>kyo(v@bH?r^#3=X=x01zd(%=uCoxD6aCZ7$OuAqbK!-yt@ZwyiJO|b7;C}5E@ZP z=%vvekl>-}HDi6OvY(3kUbCCQ>tOyYIvOWS-cE5L6O|KOEy-y+C_Xqkql~4-&YFkm({ES84ooI6hm%W4t*Hspvq-y=l8K{GW0s>B z8DmezIcO5j0Q|=Mk!m3rT&v?!BSgoBe<0L@D@-3fg6I1crbjdRO5VsZE&6GD(zQXg zdOd9D8{@j}QB~fjw<)z>ynbv@*E9)+kZcq#QEeX7T(VtCSy2O#_NY++vT z76?<;EVo#5`PLO?=Qz_sZUrTRHHS&!q_8k|E_Q<9SCjIv5RWmjhv9e{$KvcGM%@ zOSI(9MaE=8v5hOJ!Q}ZNL@6JH4H8bo?khK$Ws7Y*d2!T27qPR%sEx&8qD%M*ql4-S_mZJn9S zX*;{3N74~)!kv6fXvh_VyDwsNz;5N3)|1Z(_hA5!``LCGZJh+c(uojhRYrX-x+gBM zr(JI%sl)Bchrq~#;Hi$$(a+;xR2c$9!IXi&M)xFIlmiW@IoFDpZQGG<&Vbr48@Mp}xA_)0VNOvMlhoQDj}4bg9& zH36NisB*n9l%JY-e}6vFQ=7d5E^PWa#;9%5nnl2xF#^Aoc%VxfpL8W^0=RH*a|hHL zV>SmDBp&unj;KTfhewVukm=685?#bK@}|ltX||xi&h*9N5wIAt=_^^T(2OU^dRLVE zFs-?{DUp`<<{`PgIA4{VAu^iPM05YDGIvh{KNU81&f6V!e~)CuvxSxhgb5@^@R4=@ zkTQ2;A7+8HRY*hrgg(!*-Mcwv>WZ1gvztixAE4mtOiw#!jnL-?^`rY#T|_Wuctv^O?Pyg6|K_LWLrTE{teU~sH=266T@`OLDGS}#l+d|%4d%aPG!kW@U zrFv^F#Er1Xb=v}P-xf)BBv)`*k7?g|c@$@#$N-%1C4*QYtK0D*wnlBK5GvxD9}3vp zX0NCBe_woyC#gCL8yAR$2i&Rbc8%u;!+fkB-8zb|W=x?r{j455JafSu!;hL~=Djxd z@6dA-E#B8Axi*jmiC)v1kJ_seYg{ z4NR)7xc~UXP97uea z^@$Ed<}T8vnR#`#Zw}&I!Opz48)eRpaQWzskep|DqjKu1nZY%ezX#?i@zTbS$e63m zkU0q+$n~h;j*q0@2u8_m&fSH|-XZN`TzVH6v6Xmw4aj()*^xI3UwC$~h>+s^9H3rn}mQUeWTUf15xv6@*eZyYSwN9pbpm^E<0}gp2|--zRz_ zYRPluPUPOO<_WW_O5Ip)E92{mw6`epdSbe_H#mfQ3hNTCi4E+|wHf>(iK(pimd_jW zmJszYF9P}96gi!#&(U7h^G_lM8e^4G9XBZF;+~K#HFCd9%Wf4>9> zDa!ZoT4aYhh0sgIdQJ>gZ(?~#9P^LBQ{$b*=O~1M*huj7OsA$|;&vQ4JoMFQdsp9i zu~`L}99s(!t0gul;nf3MWF8BCso?QTZL_84^)nrVyBF(pgW)Z)+p+SeV(9 zy66x>ma31nv(?-!(-#s2Dpb~+e-1^?by{HzLQjD&0;iD49magbPKvyMB-*&7Kd+YI zMM8xp?c@84eHD!es+w~E_$`lPo{T_yjqqT@qhnKZHI6q%q@}ddJv%4Tk@<36fB_hg z<#~fnVd<3_TQqVM%a<}ZD5FMd^mkvg(^l^}B3MO7|K)<@>_EMI9&_#Xf8DcLKYlAk zGR-5|HAVzKvQkW>#Y)IBnpOzUTv7_Q(KtPy3b)>oQO)Ms9Dw3Q62`W08(qx0u%DIy z=iUdrZ87TKyEf6XCxFV(D`FGDrIFmGwHMdk&>*nQxcPzke%1tCH> z(6=x@)Q3Qo^iZwT`13MJck8%dIh7|m*DJNrdOP>w(bq*8xWO($5*QG`qz2?*1S9d? z-LtKtTifvQ@ODeY0a(N8yD+gGZ2HGAFVAZe9{!GrUIw;UmY5wIe+85*#@{L$(SoO; zJUi$6Vve;z*g)ZnTx=^)=TdI0o`Vlc>`Z+9kr6}jO{x^Ex*SOO2O}4I+))^l_Xsg# zZ)&5;Z_BN{sB#Rx;Ckvgi(9Sj{9P7fSTob~P#Bf~>d6_v2K}LVlDC^6amk#iWp?bc z+$XxiMWh=U?6*52f8PN!Zi|UK_s*x@?O!0nCqQWO6Xv%RH#^eG4aT`n=#-x*LRh*Y z-`Bp}p1!%>q_v>&NFGkiqR_{B?)(DaZ;Bh~-|iOIRcA)b9Z7(5V8%DM^VJ}Z7GlZjqRfFmg9zzj*BtlYAzjsetESvtmJJXVM1jW7cWBj*x5E5)Z@xE+nD#||}| z-`?z-dl6$PAc2(-^kH)w*@C*n=9s|RZ7}0UJ>Z*%zHI#CC@AdD|3I6>nlRv5x+R8) z*R@eGef>bwe^pg}cq1i^^|}7}=tt(KAOgG`6jI7>bnEfNu+Bdvw zM<6ag6lK#aFNyTr+Oo81SE=QZ|D3Srxkb#pA&QX`e|C1^$9laO)EZw~j*>O6y0dt*00=8q&dIRflUl zohw2*I zdt~^8e?QU+Sf+@0oT??_O~~JOV=E4khrO zIXzj>wBL9v4mCUjMp`t4K1Qff8K2nx26_V861)f{z$dW*JZsad3t4{4i;A;PmBfgL zdfU&bi7;UOs8p!5D(%8T1oUq>_Zo94eTdt(UuDx2kNk7^Y22K>69MXxBOkA>TIrfLtT4I*|k$Aj$W zf0qOoMj*L9Vqdm5%PU+W9074u1E^Rf=G{i?VsNLh{ub%e>djhZAlxW-#+Su%U+YulQTH~Y#ufMQ`RlMY-GhN{IJ5SdfTZ(g}nVVq?O5&=L3-o27PNqrH zJgK4XANNQN?gu@1hN8SqpA;OXWAgbqe?viFwD+3SAUlo=WT(4wJIzU!#jTW2(Nc2o zndtFP`%|vkPmwVp)qtxZAC;mwfLLr|_Zr;3n%-aUrRHJsRrGCaGl3oJMtqH7czf>u zj{FUwHu%~nXXe>^`X;8K{kRI9I6m4es&icB!4?HSC8SFxt}8=1pzfMdQz{Ige|y-} z66HwWOiD#$PgwX9#2i?zW75c?DFp`7NWYo_L%Hf!uzyXu%5H2@ftIx{Fjs52vl)C$ z&Yncii-^qg$Kbe8eVb-H4Cs%dAieA3g!@etnrV{62<{ z5dciXo_rwF*+P1MC3I^I+?!Y5yzgR{EjyZQi` zkM57F8n-zL;`O*MhB2|&4>T-4Nl-f z!mNi^)yqa@CU387WD?`W#MUn{o_D74SK{*TawK|PrJo9?t`_ax0rCBtnvvKAQ?Fox z;aCNeB!rf+0YNK2b7sQ}uSgmABM7Hdp**yWRO18x?94cOqage&Ei!p13)}fzk<2Vj z?yeJhlWFw^87#3x4f7}Le+|tyqczM?oy&OAZoqZMtyCYmcBAk()-)O7w_%XBw-gPN`RjO`OH*Tv063~M?H=JjMFT-i7U=+Avw2* z;u$w3TRg-p&&XNDb{QsY(|SSOT{+EH56w5?nL$v;l@$j;q^!JT8OylRT}{gYLC`g0 zZ=(QCH%pmr!DW(rf2NWjHXJuZm`V@>$&ah3XTdXlVg$zpeQ){^;r~PDzy@TpCODT~ z7qvmMC6IUR*j4ynjne)(o%>(j#rC?yJ%sZ1h8Ldod=0=QjODh1vz{^0ZNz>m{C(WF zBCHwi!R7_1l;n)H$*8=<{C*T#Ww1%I`I5WumpI5%W0^_Le@tUXvqlx1Tx@=zryQ`o zEeFf3JD^S^NW*bik8NYq&+SfB>bLr;MNR;Kfi!(&pu3>jyT*x0{XNf_bI(`XCq%H6Aq@P;>EBot zA!QW4*4|l|%U^lY@=jIFTkXOXuMNEb#1up&byPsfZXfsu$=}8^gz=>FO!cQE(?*}` zZqIwP7<@UK5{5XdDQiEL)M6&pYTKAFmzye ziDZFNdz>_xjr?w}iyo0UiIeD|vd>AIu_c3a;n9|#V9+6|G~|^5y>s<3v94HgnWX8; zz29Zse=jc`=nhLQlU&>YG?-BKPG;%R)P-Xw89xLnP4qTBHPBVr$H^=Cp#M31qo9m) zyDfc*H>uls>)g1pb}CP`EwszEbGRjwADI=?UZ~=Q7tm;aVjuCO($|{D!ODy(dGb`@ zHT{{*B%ZnAwQDHWb}PlySxn(ONrHRuSCjDIe}(D~`8%ftV5p(Se)B!oakX@JMWt=i zBZ|$q0RVhhzuD6|ll~Lk&pfXM#EC-n_$}G0M(5Hn2v-OktGlAR3+nB72;*&Yc4x;` z!>^F!+o_igKM$(~M`Ot17@j-6fgk}HuExjUgG+m=yfJr~XR3uW?i0x-XdC?R)&$H| zfAbR@ukuJeym8wm7Gr~V{KiGgypO=+qOxflJ30}6ghfta5T>pty%t1@dq8SKb&t2= zx8wL1G?7?PZIdf)YM{bhvCTo>@dCyLfnrrNqtYik57R`=vI6IRaRl@ABhF_DEYITg>HNl8HJGK)Z6c@iUXiKFwO;a~v8zAmPrej_U3QD}n-2e%K? zHil?5O4TL}63??D4*O%M;;rhK&cF)-X4^5%cD6e4zC=mIiR^-fr^))yw0nx^e`g{~ z*Uh(Q9{iCvb=5p(cDzH{HbzDmdh@cSIFlHJ4SA5_S%Td(dl z!a9b9RF%*=UJi7SLGonSDbyam$!@oG)J{7vAXr`yPqEc) zzs>T-MN8#ub2X+f1v&xWurlvg_5GMFV{d|Zq&O~U@=h)&Tx%2xsF*K z^F!gK@Tl^YGBwz=TyvZ_h>2WY28eWfu zHL&b2)tPqHdQ4>4NTAG*e?Mk|(Y=BuN$)xlgQ@Yf5lH$siX5ELLZ>aeq>liu_HO!5HUX`gn7ANipZ#Jh+N8 zHbv#c&~RG)29XQRuq`)$m?XoNb(5ymR?}iFJ#SZD9a9fX)8IeK;t&Us zGW|t_6hp4$^mV%s$qEScg}Kil+OL^zR88Ze6uG4Kwi*6^SyL$uh9?P#uR^{)r{D^Pb%A~&rV4t;GlT*hIQ||4ye!pBd$qcJzwn)6EHhO7D zvOvb?*cHyste8G&f80wS7g_deBolWXt>34Yd;$vfQei9WOx60{DeH5>Q1TvHAEeL1 zhOOU5^bGr2A>5n`uVAq{7>_7Q9`o-jNx5xn)%=Q|S9a=M@F9qT0xLX?l!Ur