36:
3532:
3522:
456:. Five-bit codes are needed to give sufficient combinations to encompass this set of 27 values. The dictionary is initialized with these 27 values. As the dictionary grows, the codes must grow in width to accommodate the additional entries. A 5-bit code gives 2 = 32 possible combinations of bits, so when the 33rd dictionary word is created, the algorithm must switch at that point from 5-bit strings to 6-bit strings (for
2039:
if the previous match is "wiki" and current match is "pedia", then the LZAP encoder adds 5 new sequences to the dictionary: "wikip", "wikipe", "wikiped", "wikipedi", and "wikipedia", where the LZMW encoder adds only the one sequence "wikipedia". This eliminates some of the complexity of LZMW, at the price of adding more dictionary entries.
151:
the data as it is encoded. At each stage in compression, input bytes are gathered into a sequence until the next character would make a sequence with no code yet in the dictionary. The code for the sequence (without that character) is added to the output, and a new code (for the sequence with that character) is added to the dictionary.
164:
typically one greater than the clear code). The clear code lets the table be reinitialized after it fills up, which lets the encoding adapt to changing patterns in the input data. Smart encoders can monitor the compression efficiency and clear the table whenever the existing table no longer matches the input well.
2034:
LZMW (1985, by V. Miller, M. Wegman) – Searches input for the longest string already in the dictionary (the "current" match); adds the concatenation of the previous match with the current match to the dictionary. (Dictionary entries thus grow more rapidly; but this scheme is much more complicated to
364:
emit ω at the new width instead of the old width, so that to the decoder it looks like the width changes one code too early. This is called "early change"; it caused so much confusion that Adobe now allows both versions in PDF files, but includes an explicit flag in the header of each LZW-compressed
1723:
At each stage, the decoder receives a code X; it looks X up in the table and outputs the sequence χ it codes, and it conjectures χ + ? as the entry the encoder just added – because the encoder emitted X for χ precisely because χ + ? was not in the table, and the encoder goes ahead and adds
311:
iteration, and so its first character is the same as the first character of the current string), and updates the dictionary with the new string. The decoder then proceeds to the next input (which was already read in the previous iteration) and processes it as before, and so on until it has exhausted
150:
The scenario described by Welch's 1984 paper encodes sequences of 8-bit data as fixed-length 12-bit codes. The codes from 0 to 255 represent 1-character sequences consisting of the corresponding 8-bit character, and the codes 256 through 4095 are created in a dictionary for sequences encountered in
2038:
LZAP (1988, by James Storer) – modification of LZMW: instead of adding just the concatenation of the previous match with the current match to the dictionary, add the concatenations of the previous match with each initial substring of the current match ("AP" stands for "all prefixes"). For example,
1731:
This works as long as the codes received are in the decoder's dictionary, so that they can be decoded into sequences. What happens if the decoder receives a code Z that is not yet in its dictionary? Since the decoder is always just one code behind the encoder, Z can be in the encoder's dictionary
422:
at every stage, both in encoding and decoding the data. This example has been constructed to give reasonable compression on a very short message. In real text data, repetition is generally less pronounced, so longer input streams are typically necessary before the compression builds up efficiency.
212:
A dictionary is initialized to contain the single-character strings corresponding to all the possible input characters (and nothing else except the clear and stop codes if they're being used). The algorithm works by scanning through the input string for successively longer substrings until it finds
154:
The idea was quickly adapted to other situations. In an image based on a color table, for example, the natural character alphabet is the set of color table indexes, and in the 1980s, many images had small color tables (on the order of 16 colors). For such a reduced alphabet, the full 12-bit codes
352:
The decoder is always one code behind the encoder in building the table, so when it sees the code for ω, it generates an entry for code 2 − 1. Since this is the point where the encoder increases the code width, the decoder must increase the width here as well—at the point where it
159:
code was introduced: codes typically start one bit wider than the symbols being encoded, and as each code size is used up, the code width increases by 1 bit, up to some prescribed maximum (typically 12 bits). When the maximum code value is reached, encoding proceeds using the existing table, but
167:
Since codes are added in a manner determined by the data, the decoder mimics building the table as it sees the resulting codes. It is critical that the encoder and decoder agree on the variety of LZW used: the size of the alphabet, the maximum table size (and code width), whether variable-width
163:
Further refinements include reserving a code to indicate that the code table should be cleared and restored to its initial state (a "clear code", typically the first value immediately after the values for the individual alphabet characters), and a code to indicate the end of data (a "stop code",
401:
first"). In LSB-first packing, the first code is aligned so that the least significant bit of the code falls in the least significant bit of the first stream byte, and if the code has more than 8 bits, the high-order bits left over are aligned with the least significant bits of the next byte;
221:
In this way, successively longer strings are registered in the dictionary and available for subsequent encoding as single output values. The algorithm works best on data with repeated patterns, so the initial parts of a message see little compression. As the message grows, however, the
1823:
might seem unlikely, this pattern is fairly common when the input stream is characterized by significant repetition. In particular, long strings of a single character (which are common in the kinds of images LZW is often used to encode) repeatedly generate patterns of this sort.
320:
If variable-width codes are being used, the encoder and decoder must be careful to change the width at the same points in the encoded data so they don't disagree on boundaries between individual codes in the stream. In the standard version, the encoder increases the width from
217:
in the dictionary) is retrieved from the dictionary and sent to output, and the new string (including the last character) is added to the dictionary with the next available code. The last input character is then used as the next starting point to scan for substrings.
168:
encoding is used, initial code size, and whether to use the clear and stop codes (and what values they have). Most formats that employ LZW build this information into the format specification or provide explicit fields for them in a compression header for the data.
787:
Buffer input characters in a sequence ω until ω + next character is not in the dictionary. Emit the code for ω, and add ω + next character to the dictionary. Start buffering again with the next character. (The string to be encoded is "TOBEORNOTTOBEORTOBEORNOT#".)
293:
The decoding algorithm works by reading a value from the encoded input and outputting the corresponding string from the dictionary. However, the full dictionary is not needed, only the initial dictionary that contains single-character strings (and that is usually
2024:
Unisys's US patent on the LZW algorithm expired on June 20, 2003, 20 years after it had been filed. Patents that had been filed in the United
Kingdom, France, Germany, Italy, Japan and Canada all expired in 2004, likewise 20 years after they had been filed.
464:. (Previously generated output is not affected by the code-width change, but once a 6-bit value is generated in the dictionary, it could conceivably be the next code emitted, so the width for subsequent output shifts to 6 bits to accommodate that.)
444:
is used to represent a stop code: a code outside the plaintext alphabet that triggers special handling. We arbitrarily assign these the values 1 through 26 for the letters, and 0 for the stop code '#'. (Most flavors of LZW would put the stop code
1252:
Using LZW has saved 29 bits out of 125, reducing the message by more than 23%. If the message were longer, then the dictionary words would begin to represent longer and longer sections of text, sending repeated words very compactly.
406:
significant bit falls in the MSB of the first stream byte, with overflow aligned with the MSB of the next byte; further codes are written with MSB going into the most significant bit not yet used in the current stream byte.
1832:
The simple scheme described above focuses on the LZW algorithm itself. Many applications apply further encoding to the sequence of output symbols. Some package the coded stream as printable characters using some form of
226:
tends asymptotically to the maximum (i.e., the compression factor or ratio improves on an increasing curve, and not linearly, approaching a theoretical maximum inside a limited time period rather than over infinite time).
376:
When the table is cleared in response to a clear code, both encoder and decoder change the code width after the clear code back to the initial code width, starting with the code immediately following the clear code.
402:
further codes are packed with LSB going into the least significant bit not yet used in the current stream byte, proceeding into further bytes as necessary. MSB-first packing aligns the first code so that its
298:
in the program, instead of sent with the encoded data). Instead, the full dictionary is rebuilt during the decoding process the following way: after decoding a value and outputting a string, the decoder
2005:
In 1993–94, and again in 1999, Unisys
Corporation received widespread condemnation when it attempted to enforce licensing fees for LZW in GIF images. The 1993–1994 Unisys-CompuServe controversy (
2311:
130:
algorithm published by Lempel and Ziv in 1978. The algorithm is simple to implement and has the potential for very high throughput in hardware implementations. It is the algorithm of the
1728:
code Z that the decoder receives. So the decoder looks up Z, decodes it into the sequence ω and takes the first letter z and tacks it onto the end of χ as the next dictionary entry.
307:
decoded string (or the first character of current string, if the next one can't be decoded; since if the next value is unknown, then it must be the value added to the dictionary in
1841:. Such a coder estimates the probability distribution for the value of the next symbol, based on the observed frequencies of values so far. A standard entropy encoding such as
460:
code values, including those previously output with only five bits). Note that since the all-zero code 00000 is used, and is labeled "0", the 33rd dictionary entry is labeled
1816:) and emits the new code it just inserted. The argument above shows that whenever the decoder receives a code not in its dictionary, the situation must look like this.
1772:
So even though the Z code is not in the table, the decoder is able to infer the unknown sequence and adds χ + (the first character of χ) to the table as the value of Z.
2158:
1261:
To decode an LZW-compressed archive, one needs to know in advance the initial dictionary used, but additional entries can be reconstructed as they are always simply
385:
Since the codes emitted typically do not fall on byte boundaries, the encoder and decoder must agree on how codes are packed into bytes. The two common methods are
1974:
In addition to the above patents, Welch's 1983 patent also includes citations to several other patents that influenced it, including two 1980 Japanese patents (
1736:
generated it, when emitting the previous code X for χ. Thus Z codes some ω that is χ + ?, and the decoder can determine the unknown character as follows:
333:
is encountered that is not in the table (so that a code must be added for it) but the next available code in the table is 2 (the first code requiring
213:
one that is not in the dictionary. When such a string is found, the index for the string without the last character (i.e., the longest substring that
3571:
3576:
65:
2356:
1920:
3024:
2835:
1837:; this increases the encoded length and decreases the compression rate. Conversely, increased compression can often be achieved with an
2724:
449:
the data alphabet, but nothing in the basic algorithm requires that. The encoder and decoder only have to agree what value it has.)
3566:
3230:
3053:
2847:
2538:
2065:
3235:
2812:
2191:
2035:
implement.) Miller and Wegman also suggest deleting low-frequency entries from the dictionary when the dictionary fills up.
1872:
systems around 1986. It has since disappeared from many distributions, both because it infringed the LZW patent and because
2965:
3342:
3080:
3019:
2830:
2780:
2603:
2231:
2463:
2448:
2349:
2060:
1888:
as a part of the distribution. Several other popular compression utilities also used LZW or closely related methods.
87:
58:
3455:
365:
stream to indicate whether early change is being used. Of the graphics file formats that support LZW compression,
3465:
3303:
3154:
3073:
2867:
2017:, which in turn fostered an email exchange that eventually culminated in the creation of the patent-unencumbered
17:
3438:
3058:
2852:
2640:
3535:
2571:
1758:
is the first character in the input stream after χ, and since ω is the string appearing immediately after χ,
3200:
3525:
3428:
2970:
2528:
2342:
2518:
2513:
418:
The following example illustrates the LZW algorithm in action, showing the status of the output and the
3460:
3387:
3225:
3205:
3149:
2807:
2598:
2401:
3561:
3470:
3411:
3337:
3185:
2775:
2770:
2625:
2468:
2080:
2018:
1857:
LZW compression became the first widely used universal data compression method on computers. A large
108:
48:
2316:
3475:
3048:
2842:
2178:
52:
44:
3416:
2787:
2674:
2630:
2443:
2426:
2416:
1834:
1740:
The decoder sees X and then Z, where X codes the sequence χ and Z codes some unknown sequence ω.
360:
Unfortunately, some early implementations of the encoding algorithm increase the code width and
3041:
2792:
2576:
2421:
2173:
2075:
223:
69:
3313:
410:
GIF files use LSB-first packing order. TIFF files and PDF files use MSB-first packing order.
3445:
1971:
by Welch, assigned to Sperry
Corporation, later Unisys Corporation, filed on June 20, 1983.
390:
3129:
2591:
2553:
2374:
398:
1724:
it. But what is the missing letter? It is the first letter in the sequence coded by the
267:
Concatenate the previous string emitted to output with its first symbol. Call this string
8:
3360:
3251:
3210:
3195:
3164:
3159:
3068:
2975:
2908:
2877:
2862:
2645:
1947:
Corporation, filed on August 10, 1981. Two US patents were issued for the LZW algorithm:
1743:
The decoder knows that the encoder just added Z as a code for χ + some unknown character
345: + 1 bits), and then increases the code width so that the next code emitted is
3433:
3403:
3382:
3288:
3220:
3114:
2802:
2618:
2608:
2503:
2483:
2478:
2139:
1940:
3014:
3377:
3365:
3347:
3215:
3099:
3036:
2882:
2797:
2753:
2714:
2396:
2084:
1846:
1979:
3352:
3308:
3281:
3276:
3134:
3119:
3029:
2938:
2933:
2762:
2495:
2473:
2365:
2183:
2143:
2131:
1999:
1975:
1954:
1858:
419:
426:
The plaintext to be encoded (from an alphabet using only the capital letters) is:
3271:
3085:
3009:
2990:
2960:
2928:
2894:
2453:
2391:
3063:
2857:
2586:
2581:
2438:
2411:
2383:
2119:
1958:
1861:
text file can typically be compressed via LZW to about half its original size.
1842:
115:
2295:
2215:
1994:
1988:
1967:
1949:
1935:
1248:
Encoded length = (6 codes × 5 bits/code) + (11 codes × 6 bits/code) = 96 bits.
3555:
3370:
3318:
2985:
2980:
2955:
2887:
2508:
2406:
2305:
2187:
2055:
1930:
1904:
1262:
300:
127:
2135:
3491:
2458:
2433:
2334:
2239:
255:
Concatenate the previous string emitted to output with the first symbol of
2289:
3450:
3328:
3124:
3000:
2950:
2115:
295:
126:. It was published by Welch in 1984 as an improved implementation of the
123:
1933:
and other countries for LZW and similar algorithms. LZ78 was covered by
1776:
This situation occurs whenever the encoder encounters input of the form
3507:
3298:
3293:
3180:
3139:
2945:
2006:
1885:
155:
yielded poor compression unless the image was large, so the idea of a
119:
111:
1921:
Graphics
Interchange Format § Unisys and LZW patent enforcement
432:
There are 26 symbols in the plaintext alphabet (the capital letters
3421:
3266:
2923:
2325:
1881:
1865:
135:
2301:
High speed data compression and decompression apparatus and method
3190:
2664:
2613:
1908:
1877:
467:
The initial dictionary, then, consists of the following entries:
337: + 1 bits). The encoder emits the code for ω at width
2704:
2326:
Shrink, Reduce, and
Implode: The Legacy Zip Compression Methods
2010:
1944:
1926:
242:
Read the next encoded symbol: Is it encoded in the dictionary?
239:
Initialize the dictionary to contain all strings of length one.
180:
Initialize the dictionary to contain all strings of length one.
2159:"Compression of individual sequences via variable-rate coding"
1911:
for most text and color-table-based image data in PDF files.)
1849:
then uses shorter codes for values with higher probabilities.
3539:
3144:
2737:
2684:
2329:
802:
2694:
2548:
2533:
2523:
2092:
2088:
2070:
2042:
1896:
1873:
1869:
366:
235:
A high-level view of the decoding algorithm is shown here:
205:
followed by the next symbol in the input to the dictionary.
176:
A high-level view of the encoding algorithm is shown here:
131:
1895:
image format in 1987. It may also (optionally) be used in
2669:
2635:
1983:
1962:
1900:
1892:
1880:
algorithm, but as of 2008 at least FreeBSD includes both
453:
370:
139:
1876:
produced better compression ratios using the LZ77-based
1245:
Unencoded length = 25 symbols × 5 bits/symbol = 125 bits
1891:
LZW became very widely used when it became part of the
160:
new codes are not generated for addition to the table.
1998:(1977) from Klaus E. Holtz, and a 1981 German patent (
2120:"A Technique for High-Performance Data Compression"
1868:, which became a more or less standard utility in
978:32 requires 6 bits, so for next output use 6 bits
1293:
1290:
1273:
796:
793:
187:in the dictionary that matches the current input.
3553:
2290:Rosettacode wiki, algorithm in various languages
2009:being the creator of the GIF format) prompted a
57:but its sources remain unclear because it lacks
2226:
2224:
1939:by Lempel, Ziv, Cohn, and Eastman, assigned to
1762:must be the first character of the sequence ω.
2350:
857:27 = first available code after 0 through 26
329: + 1 when a sequence ω +
27:Universal lossless data compression algorithm
2364:
2221:
2110:
2108:
2357:
2343:
1864:LZW was used in the public-domain program
2275:Data Compression – The complete reference
2262:Data Compression – The complete reference
2177:
2156:
2015:Thoughts on a GIF-replacement file format
88:Learn how and when to remove this message
2306:SharpLZW – C# open source implementation
2105:
1965:, originally filed on June 1, 1983, and
1443:created code 31 (last to fit in 5 bits)
1217:# stops the algorithm; send the cur seq
353:generates the largest code that fits in
2166:IEEE Transactions on Information Theory
1796:is not. The encoder emits the code for
452:A computer renders these as strings of
315:
289:Repeat Step 2 until end of input string
14:
3572:Computer-related introductions in 1984
3554:
2321:on Dr. Dobbs Journal (October 1, 1989)
1769:must also be the first character of χ.
1765:Since χ is an initial substring of ω,
3577:Discovery and invention controversies
2338:
2114:
1903:files. (Although LZW is available in
1808:in the input (starting at the second
2328:explains LZW and how it was used in
29:
2045:is a syllable-based variant of LZW.
303:it with the first character of the
24:
1907:software, Acrobat by default uses
1804:into the dictionary. Next it sees
1792:is already in the dictionary, but
1596:next coded sequence received (BE)
341:(since that code does not require
25:
3588:
2283:
1827:
1469:so start reading input at 6 bits
3531:
3530:
3521:
3520:
380:
34:
3567:Lossless compression algorithms
2312:Lecture including LZW algorithm
2267:
2254:
2208:
2150:
1992:(1974) from John S. Hoerning,
248:Emit the corresponding string
190:Emit the dictionary index for
13:
1:
2099:
1256:
782:
259:. Add this to the dictionary.
2157:Ziv, J.; Lempel, A. (1978).
1570:36 = TO + 1st symbol (B) of
145:
101:Lempel–Ziv–Welch
7:
2066:Lempel–Ziv–Storer–Szymanski
2049:
2028:
2021:(PNG) file format in 1995.
2002:) from Karl Eckhart Heinz.
278:to the dictionary and emit
230:
171:
10:
3593:
3412:Compressed data structures
2734:RLE + BWT + MTF + Huffman
2402:Asymmetric numeral systems
1918:
1914:
429:TOBEORNOTTOBEORTOBEORNOT#
413:
349: + 1 bits wide.
3516:
3500:
3484:
3402:
3327:
3259:
3250:
3173:
3107:
3098:
2999:
2916:
2907:
2823:
2771:Discrete cosine transform
2761:
2752:
2701:LZ77 + Huffman + context
2654:
2564:
2494:
2382:
2373:
2081:Discrete cosine transform
2019:Portable Network Graphics
2013:comp.graphics discussion
1800:, putting a new code for
1279:
1276:
1270:
805:
799:
369:uses early change, while
134:file compression utility
109:lossless data compression
3476:Smallest grammar problem
2238:. Unisys. Archived from
2232:"LZW Patent Information"
2188:10.1109/TIT.1978.1055934
1929:have been issued in the
1839:adaptive entropy encoder
183:Find the longest string
43:This article includes a
3417:Compressed suffix array
2966:Nyquist–Shannon theorem
2136:10.1109/MC.1984.1659158
1852:
1835:binary-to-text encoding
1819:Although input of form
1784:is a single character,
1265:of previous entries.
373:and most others don't.
72:more precise citations.
2076:Context tree weighting
3446:Kolmogorov complexity
3314:Video characteristics
2691:LZ77 + Huffman + ANS
2296:U.S. patent 4,558,302
2216:U.S. patent 4,558,302
1995:U.S. patent 4,366,551
1989:U.S. patent 4,021,782
1968:U.S. patent 4,558,302
1950:U.S. patent 4,814,746
1936:U.S. patent 4,464,650
1277:New Dictionary Entry
391:least significant bit
194:to output and remove
3536:Compression software
3130:Compression artifact
3086:Psychoacoustic model
2319:LZW Data Compression
2310:MIT OpenCourseWare:
2277:, 4th ed., page 212.
2264:, 4th ed., page 209.
1732:only if the encoder
803:Extended Dictionary
399:most significant bit
316:Variable-width codes
3526:Compression formats
3165:Texture compression
3160:Standard test image
2976:Silence compression
138:and is used in the
3434:Information theory
3289:Display resolution
3115:Chroma subsampling
2504:Byte pair encoding
2449:Shannon–Fano–Elias
2299:, Terry A. Welch,
2087:algorithm used in
1941:Sperry Corporation
1238:and the stop code
312:the input stream.
45:list of references
3549:
3548:
3398:
3397:
3348:Deblocking filter
3246:
3245:
3094:
3093:
2903:
2902:
2748:
2747:
2085:lossy compression
1847:arithmetic coding
1721:
1720:
1242:
1241:
794:Current Sequence
780:
779:
224:compression ratio
107:) is a universal
98:
97:
90:
16:(Redirected from
3584:
3562:Data compression
3534:
3533:
3524:
3523:
3353:Lapped transform
3257:
3256:
3135:Image resolution
3120:Coding tree unit
3105:
3104:
2914:
2913:
2759:
2758:
2380:
2379:
2366:Data compression
2359:
2352:
2345:
2336:
2335:
2298:
2278:
2271:
2265:
2258:
2252:
2251:
2249:
2247:
2242:on June 26, 2009
2228:
2219:
2218:
2212:
2206:
2205:
2203:
2202:
2196:
2190:. Archived from
2181:
2163:
2154:
2148:
2147:
2112:
2095:coding standards
1997:
1991:
1986:'s Jun Kanatsu,
1970:
1961:and assigned to
1955:Victor S. Miller
1952:
1938:
1788:is a string and
1274:Output Sequence
1268:
1267:
1231:
1210:
1186:
1162:
1138:
1114:
1090:
1066:
1042:
1018:
994:
969:
945:
921:
897:
873:
848:
791:
790:
470:
469:
93:
86:
82:
79:
73:
68:this article by
59:inline citations
38:
37:
30:
21:
3592:
3591:
3587:
3586:
3585:
3583:
3582:
3581:
3552:
3551:
3550:
3545:
3512:
3496:
3480:
3461:Rate–distortion
3394:
3323:
3242:
3169:
3090:
2995:
2991:Sub-band coding
2899:
2824:Predictive type
2819:
2744:
2711:LZSS + Huffman
2661:LZ77 + Huffman
2650:
2560:
2496:Dictionary type
2490:
2392:Adaptive coding
2369:
2363:
2294:
2286:
2281:
2273:David Salomon,
2272:
2268:
2260:David Salomon,
2259:
2255:
2245:
2243:
2230:
2229:
2222:
2214:
2213:
2209:
2200:
2198:
2194:
2161:
2155:
2151:
2113:
2106:
2102:
2052:
2031:
1993:
1987:
1966:
1948:
1934:
1923:
1917:
1855:
1830:
1259:
1229:
1208:
1184:
1160:
1136:
1112:
1088:
1064:
1040:
1016:
992:
967:
943:
919:
895:
871:
846:
785:
430:
416:
383:
318:
233:
198:from the input.
174:
148:
94:
83:
77:
74:
63:
49:related reading
39:
35:
28:
23:
22:
18:LZW (algorithm)
15:
12:
11:
5:
3590:
3580:
3579:
3574:
3569:
3564:
3547:
3546:
3544:
3543:
3528:
3517:
3514:
3513:
3511:
3510:
3504:
3502:
3498:
3497:
3495:
3494:
3488:
3486:
3482:
3481:
3479:
3478:
3473:
3468:
3463:
3458:
3453:
3448:
3443:
3442:
3441:
3431:
3426:
3425:
3424:
3419:
3408:
3406:
3400:
3399:
3396:
3395:
3393:
3392:
3391:
3390:
3385:
3375:
3374:
3373:
3368:
3363:
3355:
3350:
3345:
3340:
3334:
3332:
3325:
3324:
3322:
3321:
3316:
3311:
3306:
3301:
3296:
3291:
3286:
3285:
3284:
3279:
3274:
3263:
3261:
3254:
3248:
3247:
3244:
3243:
3241:
3240:
3239:
3238:
3233:
3228:
3223:
3213:
3208:
3203:
3198:
3193:
3188:
3183:
3177:
3175:
3171:
3170:
3168:
3167:
3162:
3157:
3152:
3147:
3142:
3137:
3132:
3127:
3122:
3117:
3111:
3109:
3102:
3096:
3095:
3092:
3091:
3089:
3088:
3083:
3078:
3077:
3076:
3071:
3066:
3061:
3056:
3046:
3045:
3044:
3034:
3033:
3032:
3027:
3017:
3012:
3006:
3004:
2997:
2996:
2994:
2993:
2988:
2983:
2978:
2973:
2968:
2963:
2958:
2953:
2948:
2943:
2942:
2941:
2936:
2931:
2920:
2918:
2911:
2905:
2904:
2901:
2900:
2898:
2897:
2895:Psychoacoustic
2892:
2891:
2890:
2885:
2880:
2872:
2871:
2870:
2865:
2860:
2855:
2850:
2840:
2839:
2838:
2827:
2825:
2821:
2820:
2818:
2817:
2816:
2815:
2810:
2805:
2795:
2790:
2785:
2784:
2783:
2778:
2767:
2765:
2763:Transform type
2756:
2750:
2749:
2746:
2745:
2743:
2742:
2741:
2740:
2732:
2731:
2730:
2727:
2719:
2718:
2717:
2709:
2708:
2707:
2699:
2698:
2697:
2689:
2688:
2687:
2679:
2678:
2677:
2672:
2667:
2658:
2656:
2652:
2651:
2649:
2648:
2643:
2638:
2633:
2628:
2623:
2622:
2621:
2616:
2606:
2601:
2596:
2595:
2594:
2584:
2579:
2574:
2568:
2566:
2562:
2561:
2559:
2558:
2557:
2556:
2551:
2546:
2541:
2536:
2531:
2526:
2521:
2516:
2506:
2500:
2498:
2492:
2491:
2489:
2488:
2487:
2486:
2481:
2476:
2471:
2461:
2456:
2451:
2446:
2441:
2436:
2431:
2430:
2429:
2424:
2419:
2409:
2404:
2399:
2394:
2388:
2386:
2377:
2371:
2370:
2362:
2361:
2354:
2347:
2339:
2333:
2332:
2323:
2314:
2308:
2303:
2292:
2285:
2284:External links
2282:
2280:
2279:
2266:
2253:
2220:
2207:
2179:10.1.1.14.2892
2149:
2103:
2101:
2098:
2097:
2096:
2078:
2073:
2068:
2063:
2058:
2051:
2048:
2047:
2046:
2040:
2036:
2030:
2027:
1959:Mark N. Wegman
1919:Main article:
1916:
1913:
1854:
1851:
1843:Huffman coding
1829:
1828:Further coding
1826:
1774:
1773:
1770:
1763:
1752:
1741:
1719:
1718:
1716:
1714:
1712:
1710:
1708:
1705:
1702:
1698:
1697:
1695:
1692:
1689:
1686:
1683:
1680:
1677:
1673:
1672:
1670:
1667:
1664:
1661:
1658:
1655:
1652:
1648:
1647:
1645:
1642:
1639:
1636:
1633:
1630:
1627:
1623:
1622:
1620:
1617:
1614:
1611:
1608:
1605:
1602:
1598:
1597:
1594:
1591:
1588:
1585:
1582:
1579:
1576:
1572:
1571:
1568:
1565:
1562:
1559:
1556:
1553:
1550:
1546:
1545:
1543:
1540:
1537:
1534:
1531:
1528:
1525:
1521:
1520:
1518:
1515:
1512:
1509:
1506:
1503:
1500:
1496:
1495:
1493:
1490:
1487:
1484:
1481:
1478:
1475:
1471:
1470:
1467:
1464:
1461:
1458:
1455:
1452:
1449:
1445:
1444:
1441:
1438:
1435:
1432:
1429:
1426:
1423:
1419:
1418:
1416:
1413:
1410:
1407:
1404:
1401:
1398:
1394:
1393:
1391:
1388:
1385:
1382:
1379:
1376:
1373:
1369:
1368:
1366:
1363:
1360:
1357:
1354:
1351:
1348:
1344:
1343:
1341:
1338:
1335:
1332:
1329:
1326:
1323:
1319:
1318:
1316:
1313:
1310:
1308:
1306:
1303:
1300:
1296:
1295:
1292:
1289:
1286:
1282:
1281:
1278:
1275:
1272:
1263:concatenations
1258:
1255:
1250:
1249:
1246:
1240:
1239:
1236:
1234:
1232:
1227:
1224:
1222:
1219:
1218:
1215:
1213:
1211:
1206:
1203:
1200:
1196:
1195:
1193:
1190:
1187:
1182:
1179:
1176:
1172:
1171:
1169:
1166:
1163:
1158:
1155:
1152:
1148:
1147:
1145:
1142:
1139:
1134:
1131:
1128:
1124:
1123:
1121:
1118:
1115:
1110:
1107:
1104:
1100:
1099:
1097:
1094:
1091:
1086:
1083:
1080:
1076:
1075:
1073:
1070:
1067:
1062:
1059:
1056:
1052:
1051:
1049:
1046:
1043:
1038:
1035:
1032:
1028:
1027:
1025:
1022:
1019:
1014:
1011:
1008:
1004:
1003:
1001:
998:
995:
990:
987:
984:
980:
979:
976:
973:
970:
965:
962:
959:
955:
954:
952:
949:
946:
941:
938:
935:
931:
930:
928:
925:
922:
917:
914:
911:
907:
906:
904:
901:
898:
893:
890:
887:
883:
882:
880:
877:
874:
869:
866:
863:
859:
858:
855:
852:
849:
844:
841:
838:
834:
833:
831:
829:
827:
825:
823:
820:
816:
815:
812:
808:
807:
804:
801:
798:
795:
784:
781:
778:
777:
774:
771:
767:
766:
763:
760:
756:
755:
752:
749:
745:
744:
741:
738:
734:
733:
730:
727:
723:
722:
719:
716:
712:
711:
708:
705:
701:
700:
697:
694:
690:
689:
686:
683:
679:
678:
675:
672:
668:
667:
664:
661:
657:
656:
653:
650:
646:
645:
642:
639:
635:
634:
631:
628:
624:
623:
620:
617:
613:
612:
609:
606:
602:
601:
598:
595:
591:
590:
587:
584:
580:
579:
576:
573:
569:
568:
565:
562:
558:
557:
554:
551:
547:
546:
543:
540:
536:
535:
532:
529:
525:
524:
521:
518:
514:
513:
510:
507:
503:
502:
499:
496:
492:
491:
488:
485:
481:
480:
477:
474:
428:
415:
412:
382:
379:
317:
314:
291:
290:
287:
286:
285:
284:
283:
272:
262:
261:
260:
253:
240:
232:
229:
210:
209:
206:
199:
188:
181:
173:
170:
157:variable-width
147:
144:
142:image format.
116:Abraham Lempel
96:
95:
53:external links
42:
40:
33:
26:
9:
6:
4:
3:
2:
3589:
3578:
3575:
3573:
3570:
3568:
3565:
3563:
3560:
3559:
3557:
3541:
3537:
3529:
3527:
3519:
3518:
3515:
3509:
3506:
3505:
3503:
3499:
3493:
3490:
3489:
3487:
3483:
3477:
3474:
3472:
3469:
3467:
3464:
3462:
3459:
3457:
3454:
3452:
3449:
3447:
3444:
3440:
3437:
3436:
3435:
3432:
3430:
3427:
3423:
3420:
3418:
3415:
3414:
3413:
3410:
3409:
3407:
3405:
3401:
3389:
3386:
3384:
3381:
3380:
3379:
3376:
3372:
3369:
3367:
3364:
3362:
3359:
3358:
3356:
3354:
3351:
3349:
3346:
3344:
3341:
3339:
3336:
3335:
3333:
3330:
3326:
3320:
3319:Video quality
3317:
3315:
3312:
3310:
3307:
3305:
3302:
3300:
3297:
3295:
3292:
3290:
3287:
3283:
3280:
3278:
3275:
3273:
3270:
3269:
3268:
3265:
3264:
3262:
3258:
3255:
3253:
3249:
3237:
3234:
3232:
3229:
3227:
3224:
3222:
3219:
3218:
3217:
3214:
3212:
3209:
3207:
3204:
3202:
3199:
3197:
3194:
3192:
3189:
3187:
3184:
3182:
3179:
3178:
3176:
3172:
3166:
3163:
3161:
3158:
3156:
3153:
3151:
3148:
3146:
3143:
3141:
3138:
3136:
3133:
3131:
3128:
3126:
3123:
3121:
3118:
3116:
3113:
3112:
3110:
3106:
3103:
3101:
3097:
3087:
3084:
3082:
3079:
3075:
3072:
3070:
3067:
3065:
3062:
3060:
3057:
3055:
3052:
3051:
3050:
3047:
3043:
3040:
3039:
3038:
3035:
3031:
3028:
3026:
3023:
3022:
3021:
3018:
3016:
3013:
3011:
3008:
3007:
3005:
3002:
2998:
2992:
2989:
2987:
2986:Speech coding
2984:
2982:
2981:Sound quality
2979:
2977:
2974:
2972:
2969:
2967:
2964:
2962:
2959:
2957:
2956:Dynamic range
2954:
2952:
2949:
2947:
2944:
2940:
2937:
2935:
2932:
2930:
2927:
2926:
2925:
2922:
2921:
2919:
2915:
2912:
2910:
2906:
2896:
2893:
2889:
2886:
2884:
2881:
2879:
2876:
2875:
2873:
2869:
2866:
2864:
2861:
2859:
2856:
2854:
2851:
2849:
2846:
2845:
2844:
2841:
2837:
2834:
2833:
2832:
2829:
2828:
2826:
2822:
2814:
2811:
2809:
2806:
2804:
2801:
2800:
2799:
2796:
2794:
2791:
2789:
2786:
2782:
2779:
2777:
2774:
2773:
2772:
2769:
2768:
2766:
2764:
2760:
2757:
2755:
2751:
2739:
2736:
2735:
2733:
2728:
2726:
2723:
2722:
2721:LZ77 + Range
2720:
2716:
2713:
2712:
2710:
2706:
2703:
2702:
2700:
2696:
2693:
2692:
2690:
2686:
2683:
2682:
2680:
2676:
2673:
2671:
2668:
2666:
2663:
2662:
2660:
2659:
2657:
2653:
2647:
2644:
2642:
2639:
2637:
2634:
2632:
2629:
2627:
2624:
2620:
2617:
2615:
2612:
2611:
2610:
2607:
2605:
2602:
2600:
2597:
2593:
2590:
2589:
2588:
2585:
2583:
2580:
2578:
2575:
2573:
2570:
2569:
2567:
2563:
2555:
2552:
2550:
2547:
2545:
2542:
2540:
2537:
2535:
2532:
2530:
2527:
2525:
2522:
2520:
2517:
2515:
2512:
2511:
2510:
2507:
2505:
2502:
2501:
2499:
2497:
2493:
2485:
2482:
2480:
2477:
2475:
2472:
2470:
2467:
2466:
2465:
2462:
2460:
2457:
2455:
2452:
2450:
2447:
2445:
2442:
2440:
2437:
2435:
2432:
2428:
2425:
2423:
2420:
2418:
2415:
2414:
2413:
2410:
2408:
2405:
2403:
2400:
2398:
2395:
2393:
2390:
2389:
2387:
2385:
2381:
2378:
2376:
2372:
2367:
2360:
2355:
2353:
2348:
2346:
2341:
2340:
2337:
2331:
2327:
2324:
2322:
2320:
2317:Mark Nelson,
2315:
2313:
2309:
2307:
2304:
2302:
2297:
2293:
2291:
2288:
2287:
2276:
2270:
2263:
2257:
2241:
2237:
2233:
2227:
2225:
2217:
2211:
2197:on 2012-04-12
2193:
2189:
2185:
2180:
2175:
2171:
2167:
2160:
2153:
2145:
2141:
2137:
2133:
2129:
2125:
2121:
2117:
2111:
2109:
2104:
2094:
2090:
2086:
2082:
2079:
2077:
2074:
2072:
2069:
2067:
2064:
2062:
2059:
2057:
2056:LZ77 and LZ78
2054:
2053:
2044:
2041:
2037:
2033:
2032:
2026:
2022:
2020:
2016:
2012:
2008:
2003:
2001:
2000:DE19813118676
1996:
1990:
1985:
1981:
1977:
1972:
1969:
1964:
1960:
1956:
1951:
1946:
1942:
1937:
1932:
1931:United States
1928:
1922:
1912:
1910:
1906:
1905:Adobe Acrobat
1902:
1898:
1894:
1889:
1887:
1883:
1879:
1875:
1871:
1867:
1862:
1860:
1850:
1848:
1844:
1840:
1836:
1825:
1822:
1817:
1815:
1811:
1807:
1803:
1799:
1795:
1791:
1787:
1783:
1779:
1771:
1768:
1764:
1761:
1757:
1753:
1750:
1747:, so ω = χ +
1746:
1742:
1739:
1738:
1737:
1735:
1729:
1727:
1717:
1715:
1713:
1711:
1709:
1706:
1703:
1700:
1699:
1696:
1693:
1690:
1687:
1684:
1681:
1678:
1675:
1674:
1671:
1668:
1665:
1662:
1659:
1656:
1653:
1650:
1649:
1646:
1643:
1640:
1637:
1634:
1631:
1628:
1625:
1624:
1621:
1618:
1615:
1612:
1609:
1606:
1603:
1600:
1599:
1595:
1592:
1589:
1586:
1583:
1580:
1577:
1574:
1573:
1569:
1566:
1563:
1560:
1557:
1554:
1551:
1548:
1547:
1544:
1541:
1538:
1535:
1532:
1529:
1526:
1523:
1522:
1519:
1516:
1513:
1510:
1507:
1504:
1501:
1498:
1497:
1494:
1491:
1488:
1485:
1482:
1479:
1476:
1473:
1472:
1468:
1465:
1462:
1459:
1456:
1453:
1450:
1447:
1446:
1442:
1439:
1436:
1433:
1430:
1427:
1424:
1421:
1420:
1417:
1414:
1411:
1408:
1405:
1402:
1399:
1396:
1395:
1392:
1389:
1386:
1383:
1380:
1377:
1374:
1371:
1370:
1367:
1364:
1361:
1358:
1355:
1352:
1349:
1346:
1345:
1342:
1339:
1336:
1333:
1330:
1327:
1324:
1321:
1320:
1317:
1314:
1311:
1309:
1307:
1304:
1301:
1298:
1297:
1287:
1284:
1283:
1269:
1266:
1264:
1254:
1247:
1244:
1243:
1237:
1235:
1233:
1228:
1225:
1223:
1221:
1220:
1216:
1214:
1212:
1207:
1204:
1201:
1198:
1197:
1194:
1191:
1188:
1183:
1180:
1177:
1174:
1173:
1170:
1167:
1164:
1159:
1156:
1153:
1150:
1149:
1146:
1143:
1140:
1135:
1132:
1129:
1126:
1125:
1122:
1119:
1116:
1111:
1108:
1105:
1102:
1101:
1098:
1095:
1092:
1087:
1084:
1081:
1078:
1077:
1074:
1071:
1068:
1063:
1060:
1057:
1054:
1053:
1050:
1047:
1044:
1039:
1036:
1033:
1030:
1029:
1026:
1023:
1020:
1015:
1012:
1009:
1006:
1005:
1002:
999:
996:
991:
988:
985:
982:
981:
977:
974:
971:
966:
963:
960:
957:
956:
953:
950:
947:
942:
939:
936:
933:
932:
929:
926:
923:
918:
915:
912:
909:
908:
905:
902:
899:
894:
891:
888:
885:
884:
881:
878:
875:
870:
867:
864:
861:
860:
856:
853:
850:
845:
842:
839:
836:
835:
832:
830:
828:
826:
824:
821:
818:
817:
813:
810:
809:
792:
789:
775:
772:
769:
768:
764:
761:
758:
757:
753:
750:
747:
746:
742:
739:
736:
735:
731:
728:
725:
724:
720:
717:
714:
713:
709:
706:
703:
702:
698:
695:
692:
691:
687:
684:
681:
680:
676:
673:
670:
669:
665:
662:
659:
658:
654:
651:
648:
647:
643:
640:
637:
636:
632:
629:
626:
625:
621:
618:
615:
614:
610:
607:
604:
603:
599:
596:
593:
592:
588:
585:
582:
581:
577:
574:
571:
570:
566:
563:
560:
559:
555:
552:
549:
548:
544:
541:
538:
537:
533:
530:
527:
526:
522:
519:
516:
515:
511:
508:
505:
504:
500:
497:
494:
493:
489:
486:
483:
482:
478:
475:
472:
471:
468:
465:
463:
459:
455:
450:
448:
443:
439:
435:
427:
424:
421:
411:
408:
405:
400:
396:
392:
388:
381:Packing order
378:
374:
372:
368:
363:
358:
356:
350:
348:
344:
340:
336:
332:
328:
324:
313:
310:
306:
302:
297:
288:
281:
277:
273:
270:
266:
265:
263:
258:
254:
251:
247:
246:
244:
243:
241:
238:
237:
236:
228:
225:
219:
216:
208:Go to Step 2.
207:
204:
200:
197:
193:
189:
186:
182:
179:
178:
177:
169:
165:
161:
158:
152:
143:
141:
137:
133:
129:
125:
121:
117:
113:
110:
106:
102:
92:
89:
81:
71:
67:
61:
60:
54:
50:
46:
41:
32:
31:
19:
3492:Hutter Prize
3456:Quantization
3361:Compensation
3155:Quantization
2878:Compensation
2543:
2444:Shannon–Fano
2384:Entropy type
2318:
2300:
2274:
2269:
2261:
2256:
2244:. Retrieved
2240:the original
2236:About Unisys
2235:
2210:
2199:. Retrieved
2192:the original
2169:
2165:
2152:
2127:
2123:
2116:Welch, Terry
2023:
2014:
2004:
1973:
1924:
1890:
1863:
1856:
1838:
1831:
1820:
1818:
1813:
1809:
1805:
1801:
1797:
1793:
1789:
1785:
1781:
1777:
1775:
1766:
1759:
1755:
1748:
1744:
1733:
1730:
1725:
1722:
1260:
1251:
786:
466:
461:
457:
451:
446:
441:
437:
433:
431:
425:
417:
409:
403:
394:
393:first") and
386:
384:
375:
361:
359:
354:
351:
346:
342:
338:
334:
330:
326:
322:
319:
308:
304:
301:concatenates
292:
279:
275:
268:
256:
249:
234:
220:
214:
211:
202:
195:
191:
184:
175:
166:
162:
156:
153:
149:
104:
100:
99:
84:
75:
64:Please help
56:
3451:Prefix code
3304:Frame types
3125:Color space
2951:Convolution
2681:LZ77 + ANS
2592:Incremental
2565:Other types
2484:Levenshtein
2130:(6): 8–19.
1980:JP17790880A
1294:Conjecture
124:Terry Welch
114:created by
78:August 2017
70:introducing
3556:Categories
3508:Mark Adler
3466:Redundancy
3383:Daubechies
3366:Estimation
3299:Frame rate
3221:Daubechies
3181:Chain code
3140:Macroblock
2946:Companding
2883:Estimation
2803:Daubechies
2509:Lempel–Ziv
2469:Exp-Golomb
2397:Arithmetic
2201:2009-03-03
2172:(5): 530.
2100:References
2007:CompuServe
1976:JP9343880A
1886:uncompress
797:Next Char
420:dictionary
296:hard coded
282:to output.
252:to output.
3485:Community
3309:Interlace
2695:Zstandard
2474:Fibonacci
2464:Universal
2422:Canonical
2174:CiteSeerX
2083:(DCT), a
1280:Comments
806:Comments
395:MSB-first
387:LSB-first
146:Algorithm
120:Jacob Ziv
112:algorithm
3471:Symmetry
3439:Timeline
3422:FM-index
3267:Bit rate
3260:Concepts
3108:Concepts
2971:Sampling
2924:Bit rate
2917:Concepts
2619:Sequitur
2454:Tunstall
2427:Modified
2417:Adaptive
2375:Lossless
2246:March 6,
2124:Computer
2118:(1984).
2050:See also
2029:Variants
1943:, later
1925:Various
1882:compress
1866:compress
1780:, where
1257:Decoding
783:Encoding
479:Decimal
436:through
231:Decoding
172:Encoding
136:compress
3429:Entropy
3378:Wavelet
3357:Motion
3216:Wavelet
3196:Fractal
3191:Deflate
3174:Methods
2961:Latency
2874:Motion
2798:Wavelet
2715:LHA/LZH
2665:Deflate
2614:Re-Pair
2609:Grammar
2439:Shannon
2412:Huffman
2368:methods
2144:2055321
1982:) from
1927:patents
1915:Patents
1909:DEFLATE
1878:DEFLATE
1859:English
800:Output
414:Example
66:improve
3540:codecs
3501:People
3404:Theory
3371:Vector
2888:Vector
2705:Brotli
2655:Hybrid
2554:Snappy
2407:Golomb
2176:
2142:
2011:Usenet
1945:Unisys
1754:Since
1701:000000
1676:100010
1651:100000
1626:011110
1601:100100
1575:011111
1549:011101
1524:011011
1499:010100
1474:001111
1448:001110
1271:Input
1230:000000
1209:100010
1185:100000
1161:011110
1137:100100
1113:011111
1089:011101
1065:011011
1041:010100
1017:001111
993:001110
476:Binary
473:Symbol
357:bits.
122:, and
3331:parts
3329:Codec
3294:Frame
3252:Video
3236:SPIHT
3145:Pixel
3100:Image
3054:ACELP
3025:ADPCM
3015:μ-law
3010:A-law
3003:parts
3001:Codec
2909:Audio
2848:ACELP
2836:ADPCM
2813:SPIHT
2754:Lossy
2738:bzip2
2729:LZHAM
2685:LZFSE
2587:Delta
2479:Gamma
2459:Unary
2434:Range
2330:PKZIP
2195:(PDF)
2162:(PDF)
2140:S2CID
1821:cScSc
1814:cScSc
1778:cScSc
1638:TOBE
1422:10010
1397:01111
1372:00101
1347:00010
1322:01111
1299:10100
1291:Full
1288:Code
968:10010
944:01111
920:00101
896:00010
872:01111
847:10100
819:NULL
814:Bits
773:11010
762:11001
751:11000
740:10111
729:10110
718:10101
707:10100
696:10011
685:10010
674:10001
663:10000
652:01111
641:01110
630:01101
619:01100
608:01011
597:01010
586:01001
575:01000
564:00111
553:00110
542:00101
531:00100
520:00011
509:00010
498:00001
487:00000
447:after
245:Yes:
51:, or
3343:DPCM
3150:PSNR
3081:MDCT
3074:WLPC
3059:CELP
3020:DPCM
2868:WLPC
2853:CELP
2831:DPCM
2781:MDCT
2725:LZMA
2626:LDCT
2604:DPCM
2549:LZWL
2539:LZSS
2534:LZRW
2524:LZJB
2248:2014
2093:MPEG
2091:and
2089:JPEG
2071:LZJB
2061:LZMA
2043:LZWL
1978:and
1957:and
1899:and
1897:TIFF
1884:and
1874:gzip
1870:Unix
1853:Uses
1734:just
1726:next
1691:42:
1688:RNO
1685:41:
1666:41:
1663:EOR
1660:40:
1641:40:
1635:39:
1619:TOB?
1616:39:
1613:ORT
1610:38:
1607:TOB
1593:OR?
1590:38:
1587:BEO
1584:37:
1567:BE?
1564:37:
1561:TOB
1558:36:
1539:36:
1533:35:
1514:35:
1508:34:
1489:34:
1483:33:
1463:33:
1457:32:
1437:32:
1431:31:
1412:31:
1406:30:
1387:30:
1381:29:
1362:29:
1356:28:
1337:28:
1331:27:
1312:27:
1285:Bits
1189:41:
1165:40:
1144:TOBE
1141:39:
1127:TOB
1117:38:
1093:37:
1069:36:
1045:35:
1021:34:
997:33:
972:32:
948:31:
924:30:
900:29:
876:28:
851:27:
811:Code
454:bits
440:).
404:most
367:TIFF
362:then
309:this
305:next
274:Add
264:No:
201:Add
132:Unix
128:LZ78
3388:DWT
3338:DCT
3282:VBR
3277:CBR
3272:ABR
3231:EZW
3226:DWT
3211:RLE
3201:KLT
3186:DCT
3069:LSP
3064:LAR
3049:LPC
3042:FFT
2939:VBR
2934:CBR
2929:ABR
2863:LSP
2858:LAR
2843:LPC
2808:DWT
2793:FFT
2788:DST
2776:DCT
2675:LZS
2670:LZX
2646:RLE
2641:PPM
2636:PAQ
2631:MTF
2599:DMC
2577:CTW
2572:BWT
2544:LZW
2529:LZO
2519:LZ4
2514:842
2184:doi
2132:doi
1984:NEC
1963:IBM
1953:by
1901:PDF
1893:GIF
1845:or
1812:of
1806:cSc
1802:cSc
1794:cSc
1694:OT?
1682:OT
1679:34
1669:RN?
1657:RN
1654:32
1644:EO?
1632:EO
1629:30
1604:36
1581:OR
1578:31
1555:BE
1552:29
1542:TO?
1536:TT
1530:TO
1527:27
1511:OT
1502:20
1486:NO
1477:15
1466:N?
1460:RN
1451:14
1440:R?
1434:OR
1425:18
1409:EO
1400:15
1384:BE
1359:OB
1334:TO
1325:15
1302:20
1199:OT
1192:RNO
1175:RN
1168:EOR
1151:EO
1120:ORT
1103:OR
1096:BEO
1079:BE
1072:TOB
1055:TO
975:RN
854:TO
776:26
765:25
754:24
743:23
732:22
721:21
710:20
699:19
688:18
677:17
666:16
655:15
644:14
633:13
622:12
611:11
600:10
458:all
371:GIF
325:to
140:GIF
105:LZW
3558::
3206:LP
3037:FT
3030:DM
2582:CM
2234:.
2223:^
2182:.
2170:24
2168:.
2164:.
2138:.
2128:17
2126:.
2122:.
2107:^
1798:cS
1790:cS
1707:#
1704:0
1517:T?
1505:T
1492:O?
1480:O
1454:N
1428:R
1415:O?
1403:O
1390:E?
1378:E
1375:5
1365:B?
1353:B
1350:2
1340:O?
1328:O
1315:T?
1305:T
1205:34
1202:#
1181:32
1178:O
1157:30
1154:R
1133:36
1130:E
1109:31
1106:T
1085:29
1082:O
1061:27
1058:B
1048:TT
1037:20
1034:T
1031:T
1024:OT
1013:15
1010:T
1007:O
1000:NO
989:14
986:O
983:N
964:18
961:N
958:R
951:OR
940:15
937:R
934:O
927:EO
913:O
910:E
903:BE
889:E
886:B
879:OB
868:15
865:B
862:O
843:20
840:O
837:T
589:9
578:8
567:7
556:6
545:5
534:4
523:3
512:2
501:1
490:0
462:32
397:("
389:("
215:is
118:,
55:,
47:,
3542:)
3538:(
2358:e
2351:t
2344:v
2250:.
2204:.
2186::
2146:.
2134::
1810:c
1786:S
1782:c
1767:c
1760:c
1756:c
1751:.
1749:c
1745:c
1226:0
916:5
892:2
822:T
770:Z
759:Y
748:X
737:W
726:V
715:U
704:T
693:S
682:R
671:Q
660:P
649:O
638:N
627:M
616:L
605:K
594:J
583:I
572:H
561:G
550:F
539:E
528:D
517:C
506:B
495:A
484:#
442:#
438:Z
434:A
355:p
347:p
343:p
339:p
335:p
331:s
327:p
323:p
280:V
276:V
271:.
269:V
257:W
250:W
203:W
196:W
192:W
185:W
103:(
91:)
85:(
80:)
76:(
62:.
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.