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