diff options
author | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 19:29:20 -0800 |
---|---|---|
committer | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 19:29:20 -0800 |
commit | cfb3b2780016b4e9ab4849e22d9c3acbaf535248 (patch) | |
tree | 528137ab7928f44991af00d35683fb5c85ae0880 | |
parent | 48e1144df43616c7672ed98ed9da40a50622c18b (diff) | |
download | android_external_bzip2-cfb3b2780016b4e9ab4849e22d9c3acbaf535248.tar.gz android_external_bzip2-cfb3b2780016b4e9ab4849e22d9c3acbaf535248.tar.bz2 android_external_bzip2-cfb3b2780016b4e9ab4849e22d9c3acbaf535248.zip |
auto import from //depot/cupcake/@135843
-rw-r--r-- | Android.mk | 41 | ||||
-rw-r--r-- | CHANGES | 319 | ||||
-rw-r--r-- | LICENSE | 42 | ||||
-rw-r--r-- | MODULE_LICENSE_BSD_LIKE | 0 | ||||
-rw-r--r-- | Makefile | 217 | ||||
-rw-r--r-- | Makefile-libbz2_so | 59 | ||||
-rw-r--r-- | README | 210 | ||||
-rw-r--r-- | README.COMPILATION.PROBLEMS | 58 | ||||
-rw-r--r-- | README.XML.STUFF | 45 | ||||
-rw-r--r-- | README.android | 4 | ||||
-rw-r--r-- | blocksort.c | 1094 | ||||
-rw-r--r-- | bz-common.xsl | 39 | ||||
-rw-r--r-- | bz-fo.xsl | 276 | ||||
-rw-r--r-- | bz-html.xsl | 20 | ||||
-rw-r--r-- | bzdiff | 76 | ||||
-rw-r--r-- | bzdiff.1 | 47 | ||||
-rw-r--r-- | bzgrep | 75 | ||||
-rw-r--r-- | bzgrep.1 | 56 | ||||
-rw-r--r-- | bzip.css | 74 | ||||
-rw-r--r-- | bzip2.1 | 454 | ||||
-rw-r--r-- | bzip2.1.preformatted | 399 | ||||
-rw-r--r-- | bzip2.c | 2034 | ||||
-rw-r--r-- | bzip2.txt | 391 | ||||
-rw-r--r-- | bzip2recover.c | 514 | ||||
-rw-r--r-- | bzlib.c | 1572 | ||||
-rw-r--r-- | bzlib.h | 282 | ||||
-rw-r--r-- | bzlib_private.h | 509 | ||||
-rw-r--r-- | bzmore | 61 | ||||
-rw-r--r-- | bzmore.1 | 152 | ||||
-rw-r--r-- | compress.c | 672 | ||||
-rw-r--r-- | crctable.c | 104 | ||||
-rw-r--r-- | decompress.c | 626 | ||||
-rw-r--r-- | dlltest.c | 175 | ||||
-rw-r--r-- | dlltest.dsp | 93 | ||||
-rw-r--r-- | entities.xml | 9 | ||||
-rwxr-xr-x | format.pl | 68 | ||||
-rw-r--r-- | huffman.c | 205 | ||||
-rw-r--r-- | libbz2.def | 27 | ||||
-rw-r--r-- | libbz2.dsp | 130 | ||||
-rw-r--r-- | makefile.msc | 63 | ||||
-rw-r--r-- | manual.html | 2540 | ||||
-rw-r--r-- | manual.pdf | bin | 0 -> 288137 bytes | |||
-rw-r--r-- | manual.ps | 82900 | ||||
-rw-r--r-- | manual.xml | 2964 | ||||
-rw-r--r-- | mk251.c | 31 | ||||
-rw-r--r-- | randtable.c | 84 | ||||
-rw-r--r-- | sample1.bz2 | bin | 0 -> 32348 bytes | |||
-rw-r--r-- | sample1.ref | bin | 0 -> 98696 bytes | |||
-rw-r--r-- | sample2.bz2 | bin | 0 -> 73732 bytes | |||
-rw-r--r-- | sample2.ref | bin | 0 -> 212340 bytes | |||
-rw-r--r-- | sample3.bz2 | bin | 0 -> 235 bytes | |||
-rw-r--r-- | sample3.ref | 30007 | ||||
-rw-r--r-- | spewG.c | 54 | ||||
-rw-r--r-- | unzcrash.c | 141 | ||||
-rw-r--r-- | words0 | 9 | ||||
-rw-r--r-- | words1 | 4 | ||||
-rw-r--r-- | words2 | 5 | ||||
-rw-r--r-- | words3 | 30 | ||||
-rwxr-xr-x | xmlproc.sh | 114 |
59 files changed, 130175 insertions, 0 deletions
diff --git a/Android.mk b/Android.mk new file mode 100644 index 0000000..35dfec7 --- /dev/null +++ b/Android.mk @@ -0,0 +1,41 @@ +# Copyright (C) 2008 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +LOCAL_PATH := $(call my-dir) +include $(CLEAR_VARS) + +# measurements show that the ARM version of ZLib is about x1.17 faster +# than the thumb one... +LOCAL_ARM_MODE := arm + +bzlib_files := \ + blocksort.c \ + huffman.c \ + crctable.c \ + randtable.c \ + compress.c \ + decompress.c \ + bzlib.c + +LOCAL_SRC_FILES := $(bzlib_files) +LOCAL_MODULE := libbz +LOCAL_CFLAGS += -O3 -DUSE_MMAP +include $(BUILD_STATIC_LIBRARY) + +include $(CLEAR_VARS) + +LOCAL_SRC_FILES := $(bzlib_files) +LOCAL_MODULE := libbz +LOCAL_CFLAGS += -O3 -DUSE_MMAP +include $(BUILD_HOST_STATIC_LIBRARY) @@ -0,0 +1,319 @@ + ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ + + +0.9.0 +~~~~~ +First version. + + +0.9.0a +~~~~~~ +Removed 'ranlib' from Makefile, since most modern Unix-es +don't need it, or even know about it. + + +0.9.0b +~~~~~~ +Fixed a problem with error reporting in bzip2.c. This does not effect +the library in any way. Problem is: versions 0.9.0 and 0.9.0a (of the +program proper) compress and decompress correctly, but give misleading +error messages (internal panics) when an I/O error occurs, instead of +reporting the problem correctly. This shouldn't give any data loss +(as far as I can see), but is confusing. + +Made the inline declarations disappear for non-GCC compilers. + + +0.9.0c +~~~~~~ +Fixed some problems in the library pertaining to some boundary cases. +This makes the library behave more correctly in those situations. The +fixes apply only to features (calls and parameters) not used by +bzip2.c, so the non-fixedness of them in previous versions has no +effect on reliability of bzip2.c. + +In bzlib.c: + * made zero-length BZ_FLUSH work correctly in bzCompress(). + * fixed bzWrite/bzRead to ignore zero-length requests. + * fixed bzread to correctly handle read requests after EOF. + * wrong parameter order in call to bzDecompressInit in + bzBuffToBuffDecompress. Fixed. + +In compress.c: + * changed setting of nGroups in sendMTFValues() so as to + do a bit better on small files. This _does_ effect + bzip2.c. + + +0.9.5a +~~~~~~ +Major change: add a fallback sorting algorithm (blocksort.c) +to give reasonable behaviour even for very repetitive inputs. +Nuked --repetitive-best and --repetitive-fast since they are +no longer useful. + +Minor changes: mostly a whole bunch of small changes/ +bugfixes in the driver (bzip2.c). Changes pertaining to the +user interface are: + + allow decompression of symlink'd files to stdout + decompress/test files even without .bz2 extension + give more accurate error messages for I/O errors + when compressing/decompressing to stdout, don't catch control-C + read flags from BZIP2 and BZIP environment variables + decline to break hard links to a file unless forced with -f + allow -c flag even with no filenames + preserve file ownerships as far as possible + make -s -1 give the expected block size (100k) + add a flag -q --quiet to suppress nonessential warnings + stop decoding flags after --, so files beginning in - can be handled + resolved inconsistent naming: bzcat or bz2cat ? + bzip2 --help now returns 0 + +Programming-level changes are: + + fixed syntax error in GET_LL4 for Borland C++ 5.02 + let bzBuffToBuffDecompress return BZ_DATA_ERROR{_MAGIC} + fix overshoot of mode-string end in bzopen_or_bzdopen + wrapped bzlib.h in #ifdef __cplusplus ... extern "C" { ... } + close file handles under all error conditions + added minor mods so it compiles with DJGPP out of the box + fixed Makefile so it doesn't give problems with BSD make + fix uninitialised memory reads in dlltest.c + +0.9.5b +~~~~~~ +Open stdin/stdout in binary mode for DJGPP. + +0.9.5c +~~~~~~ +Changed BZ_N_OVERSHOOT to be ... + 2 instead of ... + 1. The + 1 +version could cause the sorted order to be wrong in some extremely +obscure cases. Also changed setting of quadrant in blocksort.c. + +0.9.5d +~~~~~~ +The only functional change is to make bzlibVersion() in the library +return the correct string. This has no effect whatsoever on the +functioning of the bzip2 program or library. Added a couple of casts +so the library compiles without warnings at level 3 in MS Visual +Studio 6.0. Included a Y2K statement in the file Y2K_INFO. All other +changes are minor documentation changes. + +1.0 +~~~ +Several minor bugfixes and enhancements: + +* Large file support. The library uses 64-bit counters to + count the volume of data passing through it. bzip2.c + is now compiled with -D_FILE_OFFSET_BITS=64 to get large + file support from the C library. -v correctly prints out + file sizes greater than 4 gigabytes. All these changes have + been made without assuming a 64-bit platform or a C compiler + which supports 64-bit ints, so, except for the C library + aspect, they are fully portable. + +* Decompression robustness. The library/program should be + robust to any corruption of compressed data, detecting and + handling _all_ corruption, instead of merely relying on + the CRCs. What this means is that the program should + never crash, given corrupted data, and the library should + always return BZ_DATA_ERROR. + +* Fixed an obscure race-condition bug only ever observed on + Solaris, in which, if you were very unlucky and issued + control-C at exactly the wrong time, both input and output + files would be deleted. + +* Don't run out of file handles on test/decompression when + large numbers of files have invalid magic numbers. + +* Avoid library namespace pollution. Prefix all exported + symbols with BZ2_. + +* Minor sorting enhancements from my DCC2000 paper. + +* Advance the version number to 1.0, so as to counteract the + (false-in-this-case) impression some people have that programs + with version numbers less than 1.0 are in some way, experimental, + pre-release versions. + +* Create an initial Makefile-libbz2_so to build a shared library. + Yes, I know I should really use libtool et al ... + +* Make the program exit with 2 instead of 0 when decompression + fails due to a bad magic number (ie, an invalid bzip2 header). + Also exit with 1 (as the manual claims :-) whenever a diagnostic + message would have been printed AND the corresponding operation + is aborted, for example + bzip2: Output file xx already exists. + When a diagnostic message is printed but the operation is not + aborted, for example + bzip2: Can't guess original name for wurble -- using wurble.out + then the exit value 0 is returned, unless some other problem is + also detected. + + I think it corresponds more closely to what the manual claims now. + + +1.0.1 +~~~~~ +* Modified dlltest.c so it uses the new BZ2_ naming scheme. +* Modified makefile-msc to fix minor build probs on Win2k. +* Updated README.COMPILATION.PROBLEMS. + +There are no functionality changes or bug fixes relative to version +1.0.0. This is just a documentation update + a fix for minor Win32 +build problems. For almost everyone, upgrading from 1.0.0 to 1.0.1 is +utterly pointless. Don't bother. + + +1.0.2 +~~~~~ +A bug fix release, addressing various minor issues which have appeared +in the 18 or so months since 1.0.1 was released. Most of the fixes +are to do with file-handling or documentation bugs. To the best of my +knowledge, there have been no data-loss-causing bugs reported in the +compression/decompression engine of 1.0.0 or 1.0.1. + +Note that this release does not improve the rather crude build system +for Unix platforms. The general plan here is to autoconfiscate/ +libtoolise 1.0.2 soon after release, and release the result as 1.1.0 +or perhaps 1.2.0. That, however, is still just a plan at this point. + +Here are the changes in 1.0.2. Bug-reporters and/or patch-senders in +parentheses. + +* Fix an infinite segfault loop in 1.0.1 when a directory is + encountered in -f (force) mode. + (Trond Eivind Glomsrod, Nicholas Nethercote, Volker Schmidt) + +* Avoid double fclose() of output file on certain I/O error paths. + (Solar Designer) + +* Don't fail with internal error 1007 when fed a long stream (> 48MB) + of byte 251. Also print useful message suggesting that 1007s may be + caused by bad memory. + (noticed by Juan Pedro Vallejo, fixed by me) + +* Fix uninitialised variable silly bug in demo prog dlltest.c. + (Jorj Bauer) + +* Remove 512-MB limitation on recovered file size for bzip2recover + on selected platforms which support 64-bit ints. At the moment + all GCC supported platforms, and Win32. + (me, Alson van der Meulen) + +* Hard-code header byte values, to give correct operation on platforms + using EBCDIC as their native character set (IBM's OS/390). + (Leland Lucius) + +* Copy file access times correctly. + (Marty Leisner) + +* Add distclean and check targets to Makefile. + (Michael Carmack) + +* Parameterise use of ar and ranlib in Makefile. Also add $(LDFLAGS). + (Rich Ireland, Bo Thorsen) + +* Pass -p (create parent dirs as needed) to mkdir during make install. + (Jeremy Fusco) + +* Dereference symlinks when copying file permissions in -f mode. + (Volker Schmidt) + +* Majorly simplify implementation of uInt64_qrm10. + (Bo Lindbergh) + +* Check the input file still exists before deleting the output one, + when aborting in cleanUpAndFail(). + (Joerg Prante, Robert Linden, Matthias Krings) + +Also a bunch of patches courtesy of Philippe Troin, the Debian maintainer +of bzip2: + +* Wrapper scripts (with manpages): bzdiff, bzgrep, bzmore. + +* Spelling changes and minor enhancements in bzip2.1. + +* Avoid race condition between creating the output file and setting its + interim permissions safely, by using fopen_output_safely(). + No changes to bzip2recover since there is no issue with file + permissions there. + +* do not print senseless report with -v when compressing an empty + file. + +* bzcat -f works on non-bzip2 files. + +* do not try to escape shell meta-characters on unix (the shell takes + care of these). + +* added --fast and --best aliases for -1 -9 for gzip compatibility. + + +1.0.3 (15 Feb 05) +~~~~~~~~~~~~~~~~~ +Fixes some minor bugs since the last version, 1.0.2. + +* Further robustification against corrupted compressed data. + There are currently no known bitstreams which can cause the + decompressor to crash, loop or access memory which does not + belong to it. If you are using bzip2 or the library to + decompress bitstreams from untrusted sources, an upgrade + to 1.0.3 is recommended. This fixes CAN-2005-1260. + +* The documentation has been converted to XML, from which html + and pdf can be derived. + +* Various minor bugs in the documentation have been fixed. + +* Fixes for various compilation warnings with newer versions of + gcc, and on 64-bit platforms. + +* The BZ_NO_STDIO cpp symbol was not properly observed in 1.0.2. + This has been fixed. + + +1.0.4 (20 Dec 06) +~~~~~~~~~~~~~~~~~ +Fixes some minor bugs since the last version, 1.0.3. + +* Fix file permissions race problem (CAN-2005-0953). + +* Avoid possible segfault in BZ2_bzclose. From Coverity's NetBSD + scan. + +* 'const'/prototype cleanups in the C code. + +* Change default install location to /usr/local, and handle multiple + 'make install's without error. + +* Sanitise file names more carefully in bzgrep. Fixes CAN-2005-0758 + to the extent that applies to bzgrep. + +* Use 'mktemp' rather than 'tempfile' in bzdiff. + +* Tighten up a couple of assertions in blocksort.c following automated + analysis. + +* Fix minor doc/comment bugs. + + +1.0.5 (10 Dec 07) +~~~~~~~~~~~~~~~~~ +Security fix only. Fixes CERT-FI 20469 as it applies to bzip2. + @@ -0,0 +1,42 @@ + +-------------------------------------------------------------------------- + +This program, "bzip2", the associated library "libbzip2", and all +documentation, are copyright (C) 1996-2007 Julian R Seward. All +rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. The origin of this software must not be misrepresented; you must + not claim that you wrote the original software. If you use this + software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +3. Altered source versions must be plainly marked as such, and must + not be misrepresented as being the original software. + +4. The name of the author may not be used to endorse or promote + products derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS +OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Julian Seward, jseward@bzip.org +bzip2/libbzip2 version 1.0.5 of 10 December 2007 + +-------------------------------------------------------------------------- diff --git a/MODULE_LICENSE_BSD_LIKE b/MODULE_LICENSE_BSD_LIKE new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/MODULE_LICENSE_BSD_LIKE diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..eb09753 --- /dev/null +++ b/Makefile @@ -0,0 +1,217 @@ +# ------------------------------------------------------------------ +# This file is part of bzip2/libbzip2, a program and library for +# lossless, block-sorting data compression. +# +# bzip2/libbzip2 version 1.0.5 of 10 December 2007 +# Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> +# +# Please read the WARNING, DISCLAIMER and PATENTS sections in the +# README file. +# +# This program is released under the terms of the license contained +# in the file LICENSE. +# ------------------------------------------------------------------ + +SHELL=/bin/sh + +# To assist in cross-compiling +CC=gcc +AR=ar +RANLIB=ranlib +LDFLAGS= + +BIGFILES=-D_FILE_OFFSET_BITS=64 +CFLAGS=-Wall -Winline -O2 -g $(BIGFILES) + +# Where you want it installed when you do 'make install' +PREFIX=/usr/local + + +OBJS= blocksort.o \ + huffman.o \ + crctable.o \ + randtable.o \ + compress.o \ + decompress.o \ + bzlib.o + +all: libbz2.a bzip2 bzip2recover test + +bzip2: libbz2.a bzip2.o + $(CC) $(CFLAGS) $(LDFLAGS) -o bzip2 bzip2.o -L. -lbz2 + +bzip2recover: bzip2recover.o + $(CC) $(CFLAGS) $(LDFLAGS) -o bzip2recover bzip2recover.o + +libbz2.a: $(OBJS) + rm -f libbz2.a + $(AR) cq libbz2.a $(OBJS) + @if ( test -f $(RANLIB) -o -f /usr/bin/ranlib -o \ + -f /bin/ranlib -o -f /usr/ccs/bin/ranlib ) ; then \ + echo $(RANLIB) libbz2.a ; \ + $(RANLIB) libbz2.a ; \ + fi + +check: test +test: bzip2 + @cat words1 + ./bzip2 -1 < sample1.ref > sample1.rb2 + ./bzip2 -2 < sample2.ref > sample2.rb2 + ./bzip2 -3 < sample3.ref > sample3.rb2 + ./bzip2 -d < sample1.bz2 > sample1.tst + ./bzip2 -d < sample2.bz2 > sample2.tst + ./bzip2 -ds < sample3.bz2 > sample3.tst + cmp sample1.bz2 sample1.rb2 + cmp sample2.bz2 sample2.rb2 + cmp sample3.bz2 sample3.rb2 + cmp sample1.tst sample1.ref + cmp sample2.tst sample2.ref + cmp sample3.tst sample3.ref + @cat words3 + +install: bzip2 bzip2recover + if ( test ! -d $(PREFIX)/bin ) ; then mkdir -p $(PREFIX)/bin ; fi + if ( test ! -d $(PREFIX)/lib ) ; then mkdir -p $(PREFIX)/lib ; fi + if ( test ! -d $(PREFIX)/man ) ; then mkdir -p $(PREFIX)/man ; fi + if ( test ! -d $(PREFIX)/man/man1 ) ; then mkdir -p $(PREFIX)/man/man1 ; fi + if ( test ! -d $(PREFIX)/include ) ; then mkdir -p $(PREFIX)/include ; fi + cp -f bzip2 $(PREFIX)/bin/bzip2 + cp -f bzip2 $(PREFIX)/bin/bunzip2 + cp -f bzip2 $(PREFIX)/bin/bzcat + cp -f bzip2recover $(PREFIX)/bin/bzip2recover + chmod a+x $(PREFIX)/bin/bzip2 + chmod a+x $(PREFIX)/bin/bunzip2 + chmod a+x $(PREFIX)/bin/bzcat + chmod a+x $(PREFIX)/bin/bzip2recover + cp -f bzip2.1 $(PREFIX)/man/man1 + chmod a+r $(PREFIX)/man/man1/bzip2.1 + cp -f bzlib.h $(PREFIX)/include + chmod a+r $(PREFIX)/include/bzlib.h + cp -f libbz2.a $(PREFIX)/lib + chmod a+r $(PREFIX)/lib/libbz2.a + cp -f bzgrep $(PREFIX)/bin/bzgrep + ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzegrep + ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzfgrep + chmod a+x $(PREFIX)/bin/bzgrep + cp -f bzmore $(PREFIX)/bin/bzmore + ln -s -f $(PREFIX)/bin/bzmore $(PREFIX)/bin/bzless + chmod a+x $(PREFIX)/bin/bzmore + cp -f bzdiff $(PREFIX)/bin/bzdiff + ln -s -f $(PREFIX)/bin/bzdiff $(PREFIX)/bin/bzcmp + chmod a+x $(PREFIX)/bin/bzdiff + cp -f bzgrep.1 bzmore.1 bzdiff.1 $(PREFIX)/man/man1 + chmod a+r $(PREFIX)/man/man1/bzgrep.1 + chmod a+r $(PREFIX)/man/man1/bzmore.1 + chmod a+r $(PREFIX)/man/man1/bzdiff.1 + echo ".so man1/bzgrep.1" > $(PREFIX)/man/man1/bzegrep.1 + echo ".so man1/bzgrep.1" > $(PREFIX)/man/man1/bzfgrep.1 + echo ".so man1/bzmore.1" > $(PREFIX)/man/man1/bzless.1 + echo ".so man1/bzdiff.1" > $(PREFIX)/man/man1/bzcmp.1 + +clean: + rm -f *.o libbz2.a bzip2 bzip2recover \ + sample1.rb2 sample2.rb2 sample3.rb2 \ + sample1.tst sample2.tst sample3.tst + +blocksort.o: blocksort.c + @cat words0 + $(CC) $(CFLAGS) -c blocksort.c +huffman.o: huffman.c + $(CC) $(CFLAGS) -c huffman.c +crctable.o: crctable.c + $(CC) $(CFLAGS) -c crctable.c +randtable.o: randtable.c + $(CC) $(CFLAGS) -c randtable.c +compress.o: compress.c + $(CC) $(CFLAGS) -c compress.c +decompress.o: decompress.c + $(CC) $(CFLAGS) -c decompress.c +bzlib.o: bzlib.c + $(CC) $(CFLAGS) -c bzlib.c +bzip2.o: bzip2.c + $(CC) $(CFLAGS) -c bzip2.c +bzip2recover.o: bzip2recover.c + $(CC) $(CFLAGS) -c bzip2recover.c + + +distclean: clean + rm -f manual.ps manual.html manual.pdf + +DISTNAME=bzip2-1.0.5 +dist: check manual + rm -f $(DISTNAME) + ln -s -f . $(DISTNAME) + tar cvf $(DISTNAME).tar \ + $(DISTNAME)/blocksort.c \ + $(DISTNAME)/huffman.c \ + $(DISTNAME)/crctable.c \ + $(DISTNAME)/randtable.c \ + $(DISTNAME)/compress.c \ + $(DISTNAME)/decompress.c \ + $(DISTNAME)/bzlib.c \ + $(DISTNAME)/bzip2.c \ + $(DISTNAME)/bzip2recover.c \ + $(DISTNAME)/bzlib.h \ + $(DISTNAME)/bzlib_private.h \ + $(DISTNAME)/Makefile \ + $(DISTNAME)/LICENSE \ + $(DISTNAME)/bzip2.1 \ + $(DISTNAME)/bzip2.1.preformatted \ + $(DISTNAME)/bzip2.txt \ + $(DISTNAME)/words0 \ + $(DISTNAME)/words1 \ + $(DISTNAME)/words2 \ + $(DISTNAME)/words3 \ + $(DISTNAME)/sample1.ref \ + $(DISTNAME)/sample2.ref \ + $(DISTNAME)/sample3.ref \ + $(DISTNAME)/sample1.bz2 \ + $(DISTNAME)/sample2.bz2 \ + $(DISTNAME)/sample3.bz2 \ + $(DISTNAME)/dlltest.c \ + $(DISTNAME)/manual.html \ + $(DISTNAME)/manual.pdf \ + $(DISTNAME)/manual.ps \ + $(DISTNAME)/README \ + $(DISTNAME)/README.COMPILATION.PROBLEMS \ + $(DISTNAME)/README.XML.STUFF \ + $(DISTNAME)/CHANGES \ + $(DISTNAME)/libbz2.def \ + $(DISTNAME)/libbz2.dsp \ + $(DISTNAME)/dlltest.dsp \ + $(DISTNAME)/makefile.msc \ + $(DISTNAME)/unzcrash.c \ + $(DISTNAME)/spewG.c \ + $(DISTNAME)/mk251.c \ + $(DISTNAME)/bzdiff \ + $(DISTNAME)/bzdiff.1 \ + $(DISTNAME)/bzmore \ + $(DISTNAME)/bzmore.1 \ + $(DISTNAME)/bzgrep \ + $(DISTNAME)/bzgrep.1 \ + $(DISTNAME)/Makefile-libbz2_so \ + $(DISTNAME)/bz-common.xsl \ + $(DISTNAME)/bz-fo.xsl \ + $(DISTNAME)/bz-html.xsl \ + $(DISTNAME)/bzip.css \ + $(DISTNAME)/entities.xml \ + $(DISTNAME)/manual.xml \ + $(DISTNAME)/format.pl \ + $(DISTNAME)/xmlproc.sh + gzip -v $(DISTNAME).tar + +# For rebuilding the manual from sources on my SuSE 9.1 box + +MANUAL_SRCS= bz-common.xsl bz-fo.xsl bz-html.xsl bzip.css \ + entities.xml manual.xml + +manual: manual.html manual.ps manual.pdf + +manual.ps: $(MANUAL_SRCS) + ./xmlproc.sh -ps manual.xml + +manual.pdf: $(MANUAL_SRCS) + ./xmlproc.sh -pdf manual.xml + +manual.html: $(MANUAL_SRCS) + ./xmlproc.sh -html manual.xml diff --git a/Makefile-libbz2_so b/Makefile-libbz2_so new file mode 100644 index 0000000..9a13c77 --- /dev/null +++ b/Makefile-libbz2_so @@ -0,0 +1,59 @@ + +# This Makefile builds a shared version of the library, +# libbz2.so.1.0.4, with soname libbz2.so.1.0, +# at least on x86-Linux (RedHat 7.2), +# with gcc-2.96 20000731 (Red Hat Linux 7.1 2.96-98). +# Please see the README file for some important info +# about building the library like this. + +# ------------------------------------------------------------------ +# This file is part of bzip2/libbzip2, a program and library for +# lossless, block-sorting data compression. +# +# bzip2/libbzip2 version 1.0.5 of 10 December 2007 +# Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> +# +# Please read the WARNING, DISCLAIMER and PATENTS sections in the +# README file. +# +# This program is released under the terms of the license contained +# in the file LICENSE. +# ------------------------------------------------------------------ + + +SHELL=/bin/sh +CC=gcc +BIGFILES=-D_FILE_OFFSET_BITS=64 +CFLAGS=-fpic -fPIC -Wall -Winline -O2 -g $(BIGFILES) + +OBJS= blocksort.o \ + huffman.o \ + crctable.o \ + randtable.o \ + compress.o \ + decompress.o \ + bzlib.o + +all: $(OBJS) + $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.4 $(OBJS) + $(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.4 + rm -f libbz2.so.1.0 + ln -s libbz2.so.1.0.4 libbz2.so.1.0 + +clean: + rm -f $(OBJS) bzip2.o libbz2.so.1.0.4 libbz2.so.1.0 bzip2-shared + +blocksort.o: blocksort.c + $(CC) $(CFLAGS) -c blocksort.c +huffman.o: huffman.c + $(CC) $(CFLAGS) -c huffman.c +crctable.o: crctable.c + $(CC) $(CFLAGS) -c crctable.c +randtable.o: randtable.c + $(CC) $(CFLAGS) -c randtable.c +compress.o: compress.c + $(CC) $(CFLAGS) -c compress.c +decompress.o: decompress.c + $(CC) $(CFLAGS) -c decompress.c +bzlib.o: bzlib.c + $(CC) $(CFLAGS) -c bzlib.c @@ -0,0 +1,210 @@ + +This is the README for bzip2/libzip2. +This version is fully compatible with the previous public releases. + +------------------------------------------------------------------ +This file is part of bzip2/libbzip2, a program and library for +lossless, block-sorting data compression. + +bzip2/libbzip2 version 1.0.5 of 10 December 2007 +Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + +Please read the WARNING, DISCLAIMER and PATENTS sections in this file. + +This program is released under the terms of the license contained +in the file LICENSE. +------------------------------------------------------------------ + +Complete documentation is available in Postscript form (manual.ps), +PDF (manual.pdf) or html (manual.html). A plain-text version of the +manual page is available as bzip2.txt. + + +HOW TO BUILD -- UNIX + +Type 'make'. This builds the library libbz2.a and then the programs +bzip2 and bzip2recover. Six self-tests are run. If the self-tests +complete ok, carry on to installation: + +To install in /usr/local/bin, /usr/local/lib, /usr/local/man and +/usr/local/include, type + + make install + +To install somewhere else, eg, /xxx/yyy/{bin,lib,man,include}, type + + make install PREFIX=/xxx/yyy + +If you are (justifiably) paranoid and want to see what 'make install' +is going to do, you can first do + + make -n install or + make -n install PREFIX=/xxx/yyy respectively. + +The -n instructs make to show the commands it would execute, but not +actually execute them. + + +HOW TO BUILD -- UNIX, shared library libbz2.so. + +Do 'make -f Makefile-libbz2_so'. This Makefile seems to work for +Linux-ELF (RedHat 7.2 on an x86 box), with gcc. I make no claims +that it works for any other platform, though I suspect it probably +will work for most platforms employing both ELF and gcc. + +bzip2-shared, a client of the shared library, is also built, but not +self-tested. So I suggest you also build using the normal Makefile, +since that conducts a self-test. A second reason to prefer the +version statically linked to the library is that, on x86 platforms, +building shared objects makes a valuable register (%ebx) unavailable +to gcc, resulting in a slowdown of 10%-20%, at least for bzip2. + +Important note for people upgrading .so's from 0.9.0/0.9.5 to version +1.0.X. All the functions in the library have been renamed, from (eg) +bzCompress to BZ2_bzCompress, to avoid namespace pollution. +Unfortunately this means that the libbz2.so created by +Makefile-libbz2_so will not work with any program which used an older +version of the library. I do encourage library clients to make the +effort to upgrade to use version 1.0, since it is both faster and more +robust than previous versions. + + +HOW TO BUILD -- Windows 95, NT, DOS, Mac, etc. + +It's difficult for me to support compilation on all these platforms. +My approach is to collect binaries for these platforms, and put them +on the master web site (http://www.bzip.org). Look there. However +(FWIW), bzip2-1.0.X is very standard ANSI C and should compile +unmodified with MS Visual C. If you have difficulties building, you +might want to read README.COMPILATION.PROBLEMS. + +At least using MS Visual C++ 6, you can build from the unmodified +sources by issuing, in a command shell: + + nmake -f makefile.msc + +(you may need to first run the MSVC-provided script VCVARS32.BAT + so as to set up paths to the MSVC tools correctly). + + +VALIDATION + +Correct operation, in the sense that a compressed file can always be +decompressed to reproduce the original, is obviously of paramount +importance. To validate bzip2, I used a modified version of Mark +Nelson's churn program. Churn is an automated test driver which +recursively traverses a directory structure, using bzip2 to compress +and then decompress each file it encounters, and checking that the +decompressed data is the same as the original. + + + +Please read and be aware of the following: + +WARNING: + + This program and library (attempts to) compress data by + performing several non-trivial transformations on it. + Unless you are 100% familiar with *all* the algorithms + contained herein, and with the consequences of modifying them, + you should NOT meddle with the compression or decompression + machinery. Incorrect changes can and very likely *will* + lead to disastrous loss of data. + + +DISCLAIMER: + + I TAKE NO RESPONSIBILITY FOR ANY LOSS OF DATA ARISING FROM THE + USE OF THIS PROGRAM/LIBRARY, HOWSOEVER CAUSED. + + Every compression of a file implies an assumption that the + compressed file can be decompressed to reproduce the original. + Great efforts in design, coding and testing have been made to + ensure that this program works correctly. However, the complexity + of the algorithms, and, in particular, the presence of various + special cases in the code which occur with very low but non-zero + probability make it impossible to rule out the possibility of bugs + remaining in the program. DO NOT COMPRESS ANY DATA WITH THIS + PROGRAM UNLESS YOU ARE PREPARED TO ACCEPT THE POSSIBILITY, HOWEVER + SMALL, THAT THE DATA WILL NOT BE RECOVERABLE. + + That is not to say this program is inherently unreliable. + Indeed, I very much hope the opposite is true. bzip2/libbzip2 + has been carefully constructed and extensively tested. + + +PATENTS: + + To the best of my knowledge, bzip2/libbzip2 does not use any + patented algorithms. However, I do not have the resources + to carry out a patent search. Therefore I cannot give any + guarantee of the above statement. + + + +WHAT'S NEW IN 0.9.0 (as compared to 0.1pl2) ? + + * Approx 10% faster compression, 30% faster decompression + * -t (test mode) is a lot quicker + * Can decompress concatenated compressed files + * Programming interface, so programs can directly read/write .bz2 files + * Less restrictive (BSD-style) licensing + * Flag handling more compatible with GNU gzip + * Much more documentation, i.e., a proper user manual + * Hopefully, improved portability (at least of the library) + +WHAT'S NEW IN 0.9.5 ? + + * Compression speed is much less sensitive to the input + data than in previous versions. Specifically, the very + slow performance caused by repetitive data is fixed. + * Many small improvements in file and flag handling. + * A Y2K statement. + +WHAT'S NEW IN 1.0.0 ? + + See the CHANGES file. + +WHAT'S NEW IN 1.0.2 ? + + See the CHANGES file. + +WHAT'S NEW IN 1.0.3 ? + + See the CHANGES file. + +WHAT'S NEW IN 1.0.4 ? + + See the CHANGES file. + +WHAT'S NEW IN 1.0.5 ? + + See the CHANGES file. + + +I hope you find bzip2 useful. Feel free to contact me at + jseward@bzip.org +if you have any suggestions or queries. Many people mailed me with +comments, suggestions and patches after the releases of bzip-0.15, +bzip-0.21, and bzip2 versions 0.1pl2, 0.9.0, 0.9.5, 1.0.0, 1.0.1, +1.0.2 and 1.0.3, and the changes in bzip2 are largely a result of this +feedback. I thank you for your comments. + +bzip2's "home" is http://www.bzip.org/ + +Julian Seward +jseward@bzip.org +Cambridge, UK. + +18 July 1996 (version 0.15) +25 August 1996 (version 0.21) + 7 August 1997 (bzip2, version 0.1) +29 August 1997 (bzip2, version 0.1pl2) +23 August 1998 (bzip2, version 0.9.0) + 8 June 1999 (bzip2, version 0.9.5) + 4 Sept 1999 (bzip2, version 0.9.5d) + 5 May 2000 (bzip2, version 1.0pre8) +30 December 2001 (bzip2, version 1.0.2pre1) +15 February 2005 (bzip2, version 1.0.3) +20 December 2006 (bzip2, version 1.0.4) +10 December 2007 (bzip2, version 1.0.5) diff --git a/README.COMPILATION.PROBLEMS b/README.COMPILATION.PROBLEMS new file mode 100644 index 0000000..22b95c6 --- /dev/null +++ b/README.COMPILATION.PROBLEMS @@ -0,0 +1,58 @@ +------------------------------------------------------------------ +This file is part of bzip2/libbzip2, a program and library for +lossless, block-sorting data compression. + +bzip2/libbzip2 version 1.0.5 of 10 December 2007 +Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + +Please read the WARNING, DISCLAIMER and PATENTS sections in the +README file. + +This program is released under the terms of the license contained +in the file LICENSE. +------------------------------------------------------------------ + +bzip2-1.0.5 should compile without problems on the vast majority of +platforms. Using the supplied Makefile, I've built and tested it +myself for x86-linux and amd64-linux. With makefile.msc, Visual C++ +6.0 and nmake, you can build a native Win32 version too. Large file +support seems to work correctly on at least on amd64-linux. + +When I say "large file" I mean a file of size 2,147,483,648 (2^31) +bytes or above. Many older OSs can't handle files above this size, +but many newer ones can. Large files are pretty huge -- most files +you'll encounter are not Large Files. + +Early versions of bzip2 (0.1, 0.9.0, 0.9.5) compiled on a wide variety +of platforms without difficulty, and I hope this version will continue +in that tradition. However, in order to support large files, I've had +to include the define -D_FILE_OFFSET_BITS=64 in the Makefile. This +can cause problems. + +The technique of adding -D_FILE_OFFSET_BITS=64 to get large file +support is, as far as I know, the Recommended Way to get correct large +file support. For more details, see the Large File Support +Specification, published by the Large File Summit, at + + http://ftp.sas.com/standards/large.file + +As a general comment, if you get compilation errors which you think +are related to large file support, try removing the above define from +the Makefile, ie, delete the line + + BIGFILES=-D_FILE_OFFSET_BITS=64 + +from the Makefile, and do 'make clean ; make'. This will give you a +version of bzip2 without large file support, which, for most +applications, is probably not a problem. + +Alternatively, try some of the platform-specific hints listed below. + +You can use the spewG.c program to generate huge files to test bzip2's +large file support, if you are feeling paranoid. Be aware though that +any compilation problems which affect bzip2 will also affect spewG.c, +alas. + +AIX: I have reports that for large file support, you need to specify +-D_LARGE_FILES rather than -D_FILE_OFFSET_BITS=64. I have not tested +this myself. diff --git a/README.XML.STUFF b/README.XML.STUFF new file mode 100644 index 0000000..1a5b4c5 --- /dev/null +++ b/README.XML.STUFF @@ -0,0 +1,45 @@ + ---------------------------------------------------------------- + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ---------------------------------------------------------------- + +The script xmlproc.sh takes an xml file as input, +and processes it to create .pdf, .html or .ps output. +It uses format.pl, a perl script to format <pre> blocks nicely, + and add CDATA tags so writers do not have to use eg. < + +The file "entities.xml" must be edited to reflect current +version, year, etc. + + +Usage: + + ./xmlproc.sh -v manual.xml + Validates an xml file to ensure no dtd-compliance errors + + ./xmlproc.sh -html manual.xml + Output: manual.html + + ./xmlproc.sh -pdf manual.xml + Output: manual.pdf + + ./xmlproc.sh -ps manual.xml + Output: manual.ps + + +Notum bene: +- pdfxmltex barfs if given a filename with an underscore in it + +- xmltex won't work yet - there's a bug in passivetex + which we are all waiting for Sebastian to fix. + So we are going the xml -> pdf -> ps route for the time being, + using pdfxmltex. diff --git a/README.android b/README.android new file mode 100644 index 0000000..c05f168 --- /dev/null +++ b/README.android @@ -0,0 +1,4 @@ +This is bzip-1.0.5 from http://www.bzip.org/. + +No changes were made apart from adding this file, the Android.mk +makefile, and the empty MODULE_LICENSE_BSD_LIKE file. diff --git a/blocksort.c b/blocksort.c new file mode 100644 index 0000000..bd2dec1 --- /dev/null +++ b/blocksort.c @@ -0,0 +1,1094 @@ + +/*-------------------------------------------------------------*/ +/*--- Block sorting machinery ---*/ +/*--- blocksort.c ---*/ +/*-------------------------------------------------------------*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + + +#include "bzlib_private.h" + +/*---------------------------------------------*/ +/*--- Fallback O(N log(N)^2) sorting ---*/ +/*--- algorithm, for repetitive blocks ---*/ +/*---------------------------------------------*/ + +/*---------------------------------------------*/ +static +__inline__ +void fallbackSimpleSort ( UInt32* fmap, + UInt32* eclass, + Int32 lo, + Int32 hi ) +{ + Int32 i, j, tmp; + UInt32 ec_tmp; + + if (lo == hi) return; + + if (hi - lo > 3) { + for ( i = hi-4; i >= lo; i-- ) { + tmp = fmap[i]; + ec_tmp = eclass[tmp]; + for ( j = i+4; j <= hi && ec_tmp > eclass[fmap[j]]; j += 4 ) + fmap[j-4] = fmap[j]; + fmap[j-4] = tmp; + } + } + + for ( i = hi-1; i >= lo; i-- ) { + tmp = fmap[i]; + ec_tmp = eclass[tmp]; + for ( j = i+1; j <= hi && ec_tmp > eclass[fmap[j]]; j++ ) + fmap[j-1] = fmap[j]; + fmap[j-1] = tmp; + } +} + + +/*---------------------------------------------*/ +#define fswap(zz1, zz2) \ + { Int32 zztmp = zz1; zz1 = zz2; zz2 = zztmp; } + +#define fvswap(zzp1, zzp2, zzn) \ +{ \ + Int32 yyp1 = (zzp1); \ + Int32 yyp2 = (zzp2); \ + Int32 yyn = (zzn); \ + while (yyn > 0) { \ + fswap(fmap[yyp1], fmap[yyp2]); \ + yyp1++; yyp2++; yyn--; \ + } \ +} + + +#define fmin(a,b) ((a) < (b)) ? (a) : (b) + +#define fpush(lz,hz) { stackLo[sp] = lz; \ + stackHi[sp] = hz; \ + sp++; } + +#define fpop(lz,hz) { sp--; \ + lz = stackLo[sp]; \ + hz = stackHi[sp]; } + +#define FALLBACK_QSORT_SMALL_THRESH 10 +#define FALLBACK_QSORT_STACK_SIZE 100 + + +static +void fallbackQSort3 ( UInt32* fmap, + UInt32* eclass, + Int32 loSt, + Int32 hiSt ) +{ + Int32 unLo, unHi, ltLo, gtHi, n, m; + Int32 sp, lo, hi; + UInt32 med, r, r3; + Int32 stackLo[FALLBACK_QSORT_STACK_SIZE]; + Int32 stackHi[FALLBACK_QSORT_STACK_SIZE]; + + r = 0; + + sp = 0; + fpush ( loSt, hiSt ); + + while (sp > 0) { + + AssertH ( sp < FALLBACK_QSORT_STACK_SIZE - 1, 1004 ); + + fpop ( lo, hi ); + if (hi - lo < FALLBACK_QSORT_SMALL_THRESH) { + fallbackSimpleSort ( fmap, eclass, lo, hi ); + continue; + } + + /* Random partitioning. Median of 3 sometimes fails to + avoid bad cases. Median of 9 seems to help but + looks rather expensive. This too seems to work but + is cheaper. Guidance for the magic constants + 7621 and 32768 is taken from Sedgewick's algorithms + book, chapter 35. + */ + r = ((r * 7621) + 1) % 32768; + r3 = r % 3; + if (r3 == 0) med = eclass[fmap[lo]]; else + if (r3 == 1) med = eclass[fmap[(lo+hi)>>1]]; else + med = eclass[fmap[hi]]; + + unLo = ltLo = lo; + unHi = gtHi = hi; + + while (1) { + while (1) { + if (unLo > unHi) break; + n = (Int32)eclass[fmap[unLo]] - (Int32)med; + if (n == 0) { + fswap(fmap[unLo], fmap[ltLo]); + ltLo++; unLo++; + continue; + }; + if (n > 0) break; + unLo++; + } + while (1) { + if (unLo > unHi) break; + n = (Int32)eclass[fmap[unHi]] - (Int32)med; + if (n == 0) { + fswap(fmap[unHi], fmap[gtHi]); + gtHi--; unHi--; + continue; + }; + if (n < 0) break; + unHi--; + } + if (unLo > unHi) break; + fswap(fmap[unLo], fmap[unHi]); unLo++; unHi--; + } + + AssertD ( unHi == unLo-1, "fallbackQSort3(2)" ); + + if (gtHi < ltLo) continue; + + n = fmin(ltLo-lo, unLo-ltLo); fvswap(lo, unLo-n, n); + m = fmin(hi-gtHi, gtHi-unHi); fvswap(unLo, hi-m+1, m); + + n = lo + unLo - ltLo - 1; + m = hi - (gtHi - unHi) + 1; + + if (n - lo > hi - m) { + fpush ( lo, n ); + fpush ( m, hi ); + } else { + fpush ( m, hi ); + fpush ( lo, n ); + } + } +} + +#undef fmin +#undef fpush +#undef fpop +#undef fswap +#undef fvswap +#undef FALLBACK_QSORT_SMALL_THRESH +#undef FALLBACK_QSORT_STACK_SIZE + + +/*---------------------------------------------*/ +/* Pre: + nblock > 0 + eclass exists for [0 .. nblock-1] + ((UChar*)eclass) [0 .. nblock-1] holds block + ptr exists for [0 .. nblock-1] + + Post: + ((UChar*)eclass) [0 .. nblock-1] holds block + All other areas of eclass destroyed + fmap [0 .. nblock-1] holds sorted order + bhtab [ 0 .. 2+(nblock/32) ] destroyed +*/ + +#define SET_BH(zz) bhtab[(zz) >> 5] |= (1 << ((zz) & 31)) +#define CLEAR_BH(zz) bhtab[(zz) >> 5] &= ~(1 << ((zz) & 31)) +#define ISSET_BH(zz) (bhtab[(zz) >> 5] & (1 << ((zz) & 31))) +#define WORD_BH(zz) bhtab[(zz) >> 5] +#define UNALIGNED_BH(zz) ((zz) & 0x01f) + +static +void fallbackSort ( UInt32* fmap, + UInt32* eclass, + UInt32* bhtab, + Int32 nblock, + Int32 verb ) +{ + Int32 ftab[257]; + Int32 ftabCopy[256]; + Int32 H, i, j, k, l, r, cc, cc1; + Int32 nNotDone; + Int32 nBhtab; + UChar* eclass8 = (UChar*)eclass; + + /*-- + Initial 1-char radix sort to generate + initial fmap and initial BH bits. + --*/ + if (verb >= 4) + VPrintf0 ( " bucket sorting ...\n" ); + for (i = 0; i < 257; i++) ftab[i] = 0; + for (i = 0; i < nblock; i++) ftab[eclass8[i]]++; + for (i = 0; i < 256; i++) ftabCopy[i] = ftab[i]; + for (i = 1; i < 257; i++) ftab[i] += ftab[i-1]; + + for (i = 0; i < nblock; i++) { + j = eclass8[i]; + k = ftab[j] - 1; + ftab[j] = k; + fmap[k] = i; + } + + nBhtab = 2 + (nblock / 32); + for (i = 0; i < nBhtab; i++) bhtab[i] = 0; + for (i = 0; i < 256; i++) SET_BH(ftab[i]); + + /*-- + Inductively refine the buckets. Kind-of an + "exponential radix sort" (!), inspired by the + Manber-Myers suffix array construction algorithm. + --*/ + + /*-- set sentinel bits for block-end detection --*/ + for (i = 0; i < 32; i++) { + SET_BH(nblock + 2*i); + CLEAR_BH(nblock + 2*i + 1); + } + + /*-- the log(N) loop --*/ + H = 1; + while (1) { + + if (verb >= 4) + VPrintf1 ( " depth %6d has ", H ); + + j = 0; + for (i = 0; i < nblock; i++) { + if (ISSET_BH(i)) j = i; + k = fmap[i] - H; if (k < 0) k += nblock; + eclass[k] = j; + } + + nNotDone = 0; + r = -1; + while (1) { + + /*-- find the next non-singleton bucket --*/ + k = r + 1; + while (ISSET_BH(k) && UNALIGNED_BH(k)) k++; + if (ISSET_BH(k)) { + while (WORD_BH(k) == 0xffffffff) k += 32; + while (ISSET_BH(k)) k++; + } + l = k - 1; + if (l >= nblock) break; + while (!ISSET_BH(k) && UNALIGNED_BH(k)) k++; + if (!ISSET_BH(k)) { + while (WORD_BH(k) == 0x00000000) k += 32; + while (!ISSET_BH(k)) k++; + } + r = k - 1; + if (r >= nblock) break; + + /*-- now [l, r] bracket current bucket --*/ + if (r > l) { + nNotDone += (r - l + 1); + fallbackQSort3 ( fmap, eclass, l, r ); + + /*-- scan bucket and generate header bits-- */ + cc = -1; + for (i = l; i <= r; i++) { + cc1 = eclass[fmap[i]]; + if (cc != cc1) { SET_BH(i); cc = cc1; }; + } + } + } + + if (verb >= 4) + VPrintf1 ( "%6d unresolved strings\n", nNotDone ); + + H *= 2; + if (H > nblock || nNotDone == 0) break; + } + + /*-- + Reconstruct the original block in + eclass8 [0 .. nblock-1], since the + previous phase destroyed it. + --*/ + if (verb >= 4) + VPrintf0 ( " reconstructing block ...\n" ); + j = 0; + for (i = 0; i < nblock; i++) { + while (ftabCopy[j] == 0) j++; + ftabCopy[j]--; + eclass8[fmap[i]] = (UChar)j; + } + AssertH ( j < 256, 1005 ); +} + +#undef SET_BH +#undef CLEAR_BH +#undef ISSET_BH +#undef WORD_BH +#undef UNALIGNED_BH + + +/*---------------------------------------------*/ +/*--- The main, O(N^2 log(N)) sorting ---*/ +/*--- algorithm. Faster for "normal" ---*/ +/*--- non-repetitive blocks. ---*/ +/*---------------------------------------------*/ + +/*---------------------------------------------*/ +static +__inline__ +Bool mainGtU ( UInt32 i1, + UInt32 i2, + UChar* block, + UInt16* quadrant, + UInt32 nblock, + Int32* budget ) +{ + Int32 k; + UChar c1, c2; + UInt16 s1, s2; + + AssertD ( i1 != i2, "mainGtU" ); + /* 1 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + i1++; i2++; + /* 2 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + i1++; i2++; + /* 3 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + i1++; i2++; + /* 4 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + i1++; i2++; + /* 5 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + i1++; i2++; + /* 6 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + i1++; i2++; + /* 7 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + i1++; i2++; + /* 8 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + i1++; i2++; + /* 9 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + i1++; i2++; + /* 10 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + i1++; i2++; + /* 11 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + i1++; i2++; + /* 12 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + i1++; i2++; + + k = nblock + 8; + + do { + /* 1 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + s1 = quadrant[i1]; s2 = quadrant[i2]; + if (s1 != s2) return (s1 > s2); + i1++; i2++; + /* 2 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + s1 = quadrant[i1]; s2 = quadrant[i2]; + if (s1 != s2) return (s1 > s2); + i1++; i2++; + /* 3 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + s1 = quadrant[i1]; s2 = quadrant[i2]; + if (s1 != s2) return (s1 > s2); + i1++; i2++; + /* 4 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + s1 = quadrant[i1]; s2 = quadrant[i2]; + if (s1 != s2) return (s1 > s2); + i1++; i2++; + /* 5 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + s1 = quadrant[i1]; s2 = quadrant[i2]; + if (s1 != s2) return (s1 > s2); + i1++; i2++; + /* 6 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + s1 = quadrant[i1]; s2 = quadrant[i2]; + if (s1 != s2) return (s1 > s2); + i1++; i2++; + /* 7 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + s1 = quadrant[i1]; s2 = quadrant[i2]; + if (s1 != s2) return (s1 > s2); + i1++; i2++; + /* 8 */ + c1 = block[i1]; c2 = block[i2]; + if (c1 != c2) return (c1 > c2); + s1 = quadrant[i1]; s2 = quadrant[i2]; + if (s1 != s2) return (s1 > s2); + i1++; i2++; + + if (i1 >= nblock) i1 -= nblock; + if (i2 >= nblock) i2 -= nblock; + + k -= 8; + (*budget)--; + } + while (k >= 0); + + return False; +} + + +/*---------------------------------------------*/ +/*-- + Knuth's increments seem to work better + than Incerpi-Sedgewick here. Possibly + because the number of elems to sort is + usually small, typically <= 20. +--*/ +static +Int32 incs[14] = { 1, 4, 13, 40, 121, 364, 1093, 3280, + 9841, 29524, 88573, 265720, + 797161, 2391484 }; + +static +void mainSimpleSort ( UInt32* ptr, + UChar* block, + UInt16* quadrant, + Int32 nblock, + Int32 lo, + Int32 hi, + Int32 d, + Int32* budget ) +{ + Int32 i, j, h, bigN, hp; + UInt32 v; + + bigN = hi - lo + 1; + if (bigN < 2) return; + + hp = 0; + while (incs[hp] < bigN) hp++; + hp--; + + for (; hp >= 0; hp--) { + h = incs[hp]; + + i = lo + h; + while (True) { + + /*-- copy 1 --*/ + if (i > hi) break; + v = ptr[i]; + j = i; + while ( mainGtU ( + ptr[j-h]+d, v+d, block, quadrant, nblock, budget + ) ) { + ptr[j] = ptr[j-h]; + j = j - h; + if (j <= (lo + h - 1)) break; + } + ptr[j] = v; + i++; + + /*-- copy 2 --*/ + if (i > hi) break; + v = ptr[i]; + j = i; + while ( mainGtU ( + ptr[j-h]+d, v+d, block, quadrant, nblock, budget + ) ) { + ptr[j] = ptr[j-h]; + j = j - h; + if (j <= (lo + h - 1)) break; + } + ptr[j] = v; + i++; + + /*-- copy 3 --*/ + if (i > hi) break; + v = ptr[i]; + j = i; + while ( mainGtU ( + ptr[j-h]+d, v+d, block, quadrant, nblock, budget + ) ) { + ptr[j] = ptr[j-h]; + j = j - h; + if (j <= (lo + h - 1)) break; + } + ptr[j] = v; + i++; + + if (*budget < 0) return; + } + } +} + + +/*---------------------------------------------*/ +/*-- + The following is an implementation of + an elegant 3-way quicksort for strings, + described in a paper "Fast Algorithms for + Sorting and Searching Strings", by Robert + Sedgewick and Jon L. Bentley. +--*/ + +#define mswap(zz1, zz2) \ + { Int32 zztmp = zz1; zz1 = zz2; zz2 = zztmp; } + +#define mvswap(zzp1, zzp2, zzn) \ +{ \ + Int32 yyp1 = (zzp1); \ + Int32 yyp2 = (zzp2); \ + Int32 yyn = (zzn); \ + while (yyn > 0) { \ + mswap(ptr[yyp1], ptr[yyp2]); \ + yyp1++; yyp2++; yyn--; \ + } \ +} + +static +__inline__ +UChar mmed3 ( UChar a, UChar b, UChar c ) +{ + UChar t; + if (a > b) { t = a; a = b; b = t; }; + if (b > c) { + b = c; + if (a > b) b = a; + } + return b; +} + +#define mmin(a,b) ((a) < (b)) ? (a) : (b) + +#define mpush(lz,hz,dz) { stackLo[sp] = lz; \ + stackHi[sp] = hz; \ + stackD [sp] = dz; \ + sp++; } + +#define mpop(lz,hz,dz) { sp--; \ + lz = stackLo[sp]; \ + hz = stackHi[sp]; \ + dz = stackD [sp]; } + + +#define mnextsize(az) (nextHi[az]-nextLo[az]) + +#define mnextswap(az,bz) \ + { Int32 tz; \ + tz = nextLo[az]; nextLo[az] = nextLo[bz]; nextLo[bz] = tz; \ + tz = nextHi[az]; nextHi[az] = nextHi[bz]; nextHi[bz] = tz; \ + tz = nextD [az]; nextD [az] = nextD [bz]; nextD [bz] = tz; } + + +#define MAIN_QSORT_SMALL_THRESH 20 +#define MAIN_QSORT_DEPTH_THRESH (BZ_N_RADIX + BZ_N_QSORT) +#define MAIN_QSORT_STACK_SIZE 100 + +static +void mainQSort3 ( UInt32* ptr, + UChar* block, + UInt16* quadrant, + Int32 nblock, + Int32 loSt, + Int32 hiSt, + Int32 dSt, + Int32* budget ) +{ + Int32 unLo, unHi, ltLo, gtHi, n, m, med; + Int32 sp, lo, hi, d; + + Int32 stackLo[MAIN_QSORT_STACK_SIZE]; + Int32 stackHi[MAIN_QSORT_STACK_SIZE]; + Int32 stackD [MAIN_QSORT_STACK_SIZE]; + + Int32 nextLo[3]; + Int32 nextHi[3]; + Int32 nextD [3]; + + sp = 0; + mpush ( loSt, hiSt, dSt ); + + while (sp > 0) { + + AssertH ( sp < MAIN_QSORT_STACK_SIZE - 2, 1001 ); + + mpop ( lo, hi, d ); + if (hi - lo < MAIN_QSORT_SMALL_THRESH || + d > MAIN_QSORT_DEPTH_THRESH) { + mainSimpleSort ( ptr, block, quadrant, nblock, lo, hi, d, budget ); + if (*budget < 0) return; + continue; + } + + med = (Int32) + mmed3 ( block[ptr[ lo ]+d], + block[ptr[ hi ]+d], + block[ptr[ (lo+hi)>>1 ]+d] ); + + unLo = ltLo = lo; + unHi = gtHi = hi; + + while (True) { + while (True) { + if (unLo > unHi) break; + n = ((Int32)block[ptr[unLo]+d]) - med; + if (n == 0) { + mswap(ptr[unLo], ptr[ltLo]); + ltLo++; unLo++; continue; + }; + if (n > 0) break; + unLo++; + } + while (True) { + if (unLo > unHi) break; + n = ((Int32)block[ptr[unHi]+d]) - med; + if (n == 0) { + mswap(ptr[unHi], ptr[gtHi]); + gtHi--; unHi--; continue; + }; + if (n < 0) break; + unHi--; + } + if (unLo > unHi) break; + mswap(ptr[unLo], ptr[unHi]); unLo++; unHi--; + } + + AssertD ( unHi == unLo-1, "mainQSort3(2)" ); + + if (gtHi < ltLo) { + mpush(lo, hi, d+1 ); + continue; + } + + n = mmin(ltLo-lo, unLo-ltLo); mvswap(lo, unLo-n, n); + m = mmin(hi-gtHi, gtHi-unHi); mvswap(unLo, hi-m+1, m); + + n = lo + unLo - ltLo - 1; + m = hi - (gtHi - unHi) + 1; + + nextLo[0] = lo; nextHi[0] = n; nextD[0] = d; + nextLo[1] = m; nextHi[1] = hi; nextD[1] = d; + nextLo[2] = n+1; nextHi[2] = m-1; nextD[2] = d+1; + + if (mnextsize(0) < mnextsize(1)) mnextswap(0,1); + if (mnextsize(1) < mnextsize(2)) mnextswap(1,2); + if (mnextsize(0) < mnextsize(1)) mnextswap(0,1); + + AssertD (mnextsize(0) >= mnextsize(1), "mainQSort3(8)" ); + AssertD (mnextsize(1) >= mnextsize(2), "mainQSort3(9)" ); + + mpush (nextLo[0], nextHi[0], nextD[0]); + mpush (nextLo[1], nextHi[1], nextD[1]); + mpush (nextLo[2], nextHi[2], nextD[2]); + } +} + +#undef mswap +#undef mvswap +#undef mpush +#undef mpop +#undef mmin +#undef mnextsize +#undef mnextswap +#undef MAIN_QSORT_SMALL_THRESH +#undef MAIN_QSORT_DEPTH_THRESH +#undef MAIN_QSORT_STACK_SIZE + + +/*---------------------------------------------*/ +/* Pre: + nblock > N_OVERSHOOT + block32 exists for [0 .. nblock-1 +N_OVERSHOOT] + ((UChar*)block32) [0 .. nblock-1] holds block + ptr exists for [0 .. nblock-1] + + Post: + ((UChar*)block32) [0 .. nblock-1] holds block + All other areas of block32 destroyed + ftab [0 .. 65536 ] destroyed + ptr [0 .. nblock-1] holds sorted order + if (*budget < 0), sorting was abandoned +*/ + +#define BIGFREQ(b) (ftab[((b)+1) << 8] - ftab[(b) << 8]) +#define SETMASK (1 << 21) +#define CLEARMASK (~(SETMASK)) + +static +void mainSort ( UInt32* ptr, + UChar* block, + UInt16* quadrant, + UInt32* ftab, + Int32 nblock, + Int32 verb, + Int32* budget ) +{ + Int32 i, j, k, ss, sb; + Int32 runningOrder[256]; + Bool bigDone[256]; + Int32 copyStart[256]; + Int32 copyEnd [256]; + UChar c1; + Int32 numQSorted; + UInt16 s; + if (verb >= 4) VPrintf0 ( " main sort initialise ...\n" ); + + /*-- set up the 2-byte frequency table --*/ + for (i = 65536; i >= 0; i--) ftab[i] = 0; + + j = block[0] << 8; + i = nblock-1; + for (; i >= 3; i -= 4) { + quadrant[i] = 0; + j = (j >> 8) | ( ((UInt16)block[i]) << 8); + ftab[j]++; + quadrant[i-1] = 0; + j = (j >> 8) | ( ((UInt16)block[i-1]) << 8); + ftab[j]++; + quadrant[i-2] = 0; + j = (j >> 8) | ( ((UInt16)block[i-2]) << 8); + ftab[j]++; + quadrant[i-3] = 0; + j = (j >> 8) | ( ((UInt16)block[i-3]) << 8); + ftab[j]++; + } + for (; i >= 0; i--) { + quadrant[i] = 0; + j = (j >> 8) | ( ((UInt16)block[i]) << 8); + ftab[j]++; + } + + /*-- (emphasises close relationship of block & quadrant) --*/ + for (i = 0; i < BZ_N_OVERSHOOT; i++) { + block [nblock+i] = block[i]; + quadrant[nblock+i] = 0; + } + + if (verb >= 4) VPrintf0 ( " bucket sorting ...\n" ); + + /*-- Complete the initial radix sort --*/ + for (i = 1; i <= 65536; i++) ftab[i] += ftab[i-1]; + + s = block[0] << 8; + i = nblock-1; + for (; i >= 3; i -= 4) { + s = (s >> 8) | (block[i] << 8); + j = ftab[s] -1; + ftab[s] = j; + ptr[j] = i; + s = (s >> 8) | (block[i-1] << 8); + j = ftab[s] -1; + ftab[s] = j; + ptr[j] = i-1; + s = (s >> 8) | (block[i-2] << 8); + j = ftab[s] -1; + ftab[s] = j; + ptr[j] = i-2; + s = (s >> 8) | (block[i-3] << 8); + j = ftab[s] -1; + ftab[s] = j; + ptr[j] = i-3; + } + for (; i >= 0; i--) { + s = (s >> 8) | (block[i] << 8); + j = ftab[s] -1; + ftab[s] = j; + ptr[j] = i; + } + + /*-- + Now ftab contains the first loc of every small bucket. + Calculate the running order, from smallest to largest + big bucket. + --*/ + for (i = 0; i <= 255; i++) { + bigDone [i] = False; + runningOrder[i] = i; + } + + { + Int32 vv; + Int32 h = 1; + do h = 3 * h + 1; while (h <= 256); + do { + h = h / 3; + for (i = h; i <= 255; i++) { + vv = runningOrder[i]; + j = i; + while ( BIGFREQ(runningOrder[j-h]) > BIGFREQ(vv) ) { + runningOrder[j] = runningOrder[j-h]; + j = j - h; + if (j <= (h - 1)) goto zero; + } + zero: + runningOrder[j] = vv; + } + } while (h != 1); + } + + /*-- + The main sorting loop. + --*/ + + numQSorted = 0; + + for (i = 0; i <= 255; i++) { + + /*-- + Process big buckets, starting with the least full. + Basically this is a 3-step process in which we call + mainQSort3 to sort the small buckets [ss, j], but + also make a big effort to avoid the calls if we can. + --*/ + ss = runningOrder[i]; + + /*-- + Step 1: + Complete the big bucket [ss] by quicksorting + any unsorted small buckets [ss, j], for j != ss. + Hopefully previous pointer-scanning phases have already + completed many of the small buckets [ss, j], so + we don't have to sort them at all. + --*/ + for (j = 0; j <= 255; j++) { + if (j != ss) { + sb = (ss << 8) + j; + if ( ! (ftab[sb] & SETMASK) ) { + Int32 lo = ftab[sb] & CLEARMASK; + Int32 hi = (ftab[sb+1] & CLEARMASK) - 1; + if (hi > lo) { + if (verb >= 4) + VPrintf4 ( " qsort [0x%x, 0x%x] " + "done %d this %d\n", + ss, j, numQSorted, hi - lo + 1 ); + mainQSort3 ( + ptr, block, quadrant, nblock, + lo, hi, BZ_N_RADIX, budget + ); + numQSorted += (hi - lo + 1); + if (*budget < 0) return; + } + } + ftab[sb] |= SETMASK; + } + } + + AssertH ( !bigDone[ss], 1006 ); + + /*-- + Step 2: + Now scan this big bucket [ss] so as to synthesise the + sorted order for small buckets [t, ss] for all t, + including, magically, the bucket [ss,ss] too. + This will avoid doing Real Work in subsequent Step 1's. + --*/ + { + for (j = 0; j <= 255; j++) { + copyStart[j] = ftab[(j << 8) + ss] & CLEARMASK; + copyEnd [j] = (ftab[(j << 8) + ss + 1] & CLEARMASK) - 1; + } + for (j = ftab[ss << 8] & CLEARMASK; j < copyStart[ss]; j++) { + k = ptr[j]-1; if (k < 0) k += nblock; + c1 = block[k]; + if (!bigDone[c1]) + ptr[ copyStart[c1]++ ] = k; + } + for (j = (ftab[(ss+1) << 8] & CLEARMASK) - 1; j > copyEnd[ss]; j--) { + k = ptr[j]-1; if (k < 0) k += nblock; + c1 = block[k]; + if (!bigDone[c1]) + ptr[ copyEnd[c1]-- ] = k; + } + } + + AssertH ( (copyStart[ss]-1 == copyEnd[ss]) + || + /* Extremely rare case missing in bzip2-1.0.0 and 1.0.1. + Necessity for this case is demonstrated by compressing + a sequence of approximately 48.5 million of character + 251; 1.0.0/1.0.1 will then die here. */ + (copyStart[ss] == 0 && copyEnd[ss] == nblock-1), + 1007 ) + + for (j = 0; j <= 255; j++) ftab[(j << 8) + ss] |= SETMASK; + + /*-- + Step 3: + The [ss] big bucket is now done. Record this fact, + and update the quadrant descriptors. Remember to + update quadrants in the overshoot area too, if + necessary. The "if (i < 255)" test merely skips + this updating for the last bucket processed, since + updating for the last bucket is pointless. + + The quadrant array provides a way to incrementally + cache sort orderings, as they appear, so as to + make subsequent comparisons in fullGtU() complete + faster. For repetitive blocks this makes a big + difference (but not big enough to be able to avoid + the fallback sorting mechanism, exponential radix sort). + + The precise meaning is: at all times: + + for 0 <= i < nblock and 0 <= j <= nblock + + if block[i] != block[j], + + then the relative values of quadrant[i] and + quadrant[j] are meaningless. + + else { + if quadrant[i] < quadrant[j] + then the string starting at i lexicographically + precedes the string starting at j + + else if quadrant[i] > quadrant[j] + then the string starting at j lexicographically + precedes the string starting at i + + else + the relative ordering of the strings starting + at i and j has not yet been determined. + } + --*/ + bigDone[ss] = True; + + if (i < 255) { + Int32 bbStart = ftab[ss << 8] & CLEARMASK; + Int32 bbSize = (ftab[(ss+1) << 8] & CLEARMASK) - bbStart; + Int32 shifts = 0; + + while ((bbSize >> shifts) > 65534) shifts++; + + for (j = bbSize-1; j >= 0; j--) { + Int32 a2update = ptr[bbStart + j]; + UInt16 qVal = (UInt16)(j >> shifts); + quadrant[a2update] = qVal; + if (a2update < BZ_N_OVERSHOOT) + quadrant[a2update + nblock] = qVal; + } + AssertH ( ((bbSize-1) >> shifts) <= 65535, 1002 ); + } + + } + + if (verb >= 4) + VPrintf3 ( " %d pointers, %d sorted, %d scanned\n", + nblock, numQSorted, nblock - numQSorted ); +} + +#undef BIGFREQ +#undef SETMASK +#undef CLEARMASK + + +/*---------------------------------------------*/ +/* Pre: + nblock > 0 + arr2 exists for [0 .. nblock-1 +N_OVERSHOOT] + ((UChar*)arr2) [0 .. nblock-1] holds block + arr1 exists for [0 .. nblock-1] + + Post: + ((UChar*)arr2) [0 .. nblock-1] holds block + All other areas of block destroyed + ftab [ 0 .. 65536 ] destroyed + arr1 [0 .. nblock-1] holds sorted order +*/ +void BZ2_blockSort ( EState* s ) +{ + UInt32* ptr = s->ptr; + UChar* block = s->block; + UInt32* ftab = s->ftab; + Int32 nblock = s->nblock; + Int32 verb = s->verbosity; + Int32 wfact = s->workFactor; + UInt16* quadrant; + Int32 budget; + Int32 budgetInit; + Int32 i; + + if (nblock < 10000) { + fallbackSort ( s->arr1, s->arr2, ftab, nblock, verb ); + } else { + /* Calculate the location for quadrant, remembering to get + the alignment right. Assumes that &(block[0]) is at least + 2-byte aligned -- this should be ok since block is really + the first section of arr2. + */ + i = nblock+BZ_N_OVERSHOOT; + if (i & 1) i++; + quadrant = (UInt16*)(&(block[i])); + + /* (wfact-1) / 3 puts the default-factor-30 + transition point at very roughly the same place as + with v0.1 and v0.9.0. + Not that it particularly matters any more, since the + resulting compressed stream is now the same regardless + of whether or not we use the main sort or fallback sort. + */ + if (wfact < 1 ) wfact = 1; + if (wfact > 100) wfact = 100; + budgetInit = nblock * ((wfact-1) / 3); + budget = budgetInit; + + mainSort ( ptr, block, quadrant, ftab, nblock, verb, &budget ); + if (verb >= 3) + VPrintf3 ( " %d work, %d block, ratio %5.2f\n", + budgetInit - budget, + nblock, + (float)(budgetInit - budget) / + (float)(nblock==0 ? 1 : nblock) ); + if (budget < 0) { + if (verb >= 2) + VPrintf0 ( " too repetitive; using fallback" + " sorting algorithm\n" ); + fallbackSort ( s->arr1, s->arr2, ftab, nblock, verb ); + } + } + + s->origPtr = -1; + for (i = 0; i < s->nblock; i++) + if (ptr[i] == 0) + { s->origPtr = i; break; }; + + AssertH( s->origPtr != -1, 1003 ); +} + + +/*-------------------------------------------------------------*/ +/*--- end blocksort.c ---*/ +/*-------------------------------------------------------------*/ diff --git a/bz-common.xsl b/bz-common.xsl new file mode 100644 index 0000000..66fcd6f --- /dev/null +++ b/bz-common.xsl @@ -0,0 +1,39 @@ +<?xml version="1.0"?> <!-- -*- sgml -*- --> +<xsl:stylesheet + xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> + +<!-- we like '1.2 Title' --> +<xsl:param name="section.autolabel" select="'1'"/> +<xsl:param name="section.label.includes.component.label" select="'1'"/> + +<!-- Do not put 'Chapter' at the start of eg 'Chapter 1. Doing This' --> +<xsl:param name="local.l10n.xml" select="document('')"/> +<l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0"> + <l:l10n language="en"> + <l:context name="title-numbered"> + <l:template name="chapter" text="%n. %t"/> + </l:context> + </l:l10n> +</l:i18n> + +<!-- don't generate sub-tocs for qanda sets --> +<xsl:param name="generate.toc"> +set toc,title +book toc,title,figure,table,example,equation +chapter toc,title +section toc +sect1 toc +sect2 toc +sect3 toc +sect4 nop +sect5 nop +qandaset toc +qandadiv nop +appendix toc,title +article/appendix nop +article toc,title +preface toc,title +reference toc,title +</xsl:param> + +</xsl:stylesheet> diff --git a/bz-fo.xsl b/bz-fo.xsl new file mode 100644 index 0000000..ba3e301 --- /dev/null +++ b/bz-fo.xsl @@ -0,0 +1,276 @@ +<?xml version="1.0" encoding="UTF-8"?> <!-- -*- sgml -*- --> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:fo="http://www.w3.org/1999/XSL/Format" version="1.0"> + +<xsl:import href="http://docbook.sourceforge.net/release/xsl/current/fo/docbook.xsl"/> +<xsl:import href="bz-common.xsl"/> + +<!-- set indent = yes while debugging, then change to NO --> +<xsl:output method="xml" indent="yes"/> + +<!-- ensure only passivetex extensions are on --> +<xsl:param name="stylesheet.result.type" select="'fo'"/> +<!-- fo extensions: PDF bookmarks and index terms --> +<xsl:param name="use.extensions" select="'1'"/> +<xsl:param name="xep.extensions" select="0"/> +<xsl:param name="fop.extensions" select="0"/> +<xsl:param name="saxon.extensions" select="0"/> +<xsl:param name="passivetex.extensions" select="1"/> +<xsl:param name="tablecolumns.extension" select="'1'"/> + +<!-- ensure we are using single sided --> +<xsl:param name="double.sided" select="'0'"/> + +<!-- insert cross references to page numbers --> +<xsl:param name="insert.xref.page.number" select="1"/> + +<!-- <?custom-pagebreak?> inserts a page break at this point --> +<xsl:template match="processing-instruction('custom-pagebreak')"> + <fo:block break-before='page'/> +</xsl:template> + +<!-- show links in color --> +<xsl:attribute-set name="xref.properties"> + <xsl:attribute name="color">blue</xsl:attribute> +</xsl:attribute-set> + +<!-- make pre listings indented a bit + a bg colour --> +<xsl:template match="programlisting | screen"> + <fo:block start-indent="0.25in" wrap-option="no-wrap" + white-space-collapse="false" text-align="start" + font-family="monospace" background-color="#f2f2f9" + linefeed-treatment="preserve" + xsl:use-attribute-sets="normal.para.spacing"> + <xsl:apply-templates/> + </fo:block> +</xsl:template> +<!-- make verbatim output prettier --> +<xsl:template match="literallayout"> + <fo:block start-indent="0.25in" wrap-option="no-wrap" + white-space-collapse="false" text-align="start" + font-family="monospace" background-color="#edf7f4" + linefeed-treatment="preserve" + space-before="0em" space-after="0em"> + <xsl:apply-templates/> + </fo:block> +</xsl:template> + +<!-- workaround bug in passivetex fo output for itemizedlist --> +<xsl:template match="itemizedlist/listitem"> + <xsl:variable name="id"> + <xsl:call-template name="object.id"/></xsl:variable> + <xsl:variable name="itemsymbol"> + <xsl:call-template name="list.itemsymbol"> + <xsl:with-param name="node" select="parent::itemizedlist"/> + </xsl:call-template> + </xsl:variable> + <xsl:variable name="item.contents"> + <fo:list-item-label end-indent="label-end()"> + <fo:block> + <xsl:choose> + <xsl:when test="$itemsymbol='disc'">•</xsl:when> + <xsl:when test="$itemsymbol='bullet'">•</xsl:when> + <xsl:otherwise>•</xsl:otherwise> + </xsl:choose> + </fo:block> + </fo:list-item-label> + <fo:list-item-body start-indent="body-start()"> + <xsl:apply-templates/> <!-- removed extra block wrapper --> + </fo:list-item-body> + </xsl:variable> + <xsl:choose> + <xsl:when test="parent::*/@spacing = 'compact'"> + <fo:list-item id="{$id}" + xsl:use-attribute-sets="compact.list.item.spacing"> + <xsl:copy-of select="$item.contents"/> + </fo:list-item> + </xsl:when> + <xsl:otherwise> + <fo:list-item id="{$id}" xsl:use-attribute-sets="list.item.spacing"> + <xsl:copy-of select="$item.contents"/> + </fo:list-item> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- workaround bug in passivetex fo output for orderedlist --> +<xsl:template match="orderedlist/listitem"> + <xsl:variable name="id"> + <xsl:call-template name="object.id"/></xsl:variable> + <xsl:variable name="item.contents"> + <fo:list-item-label end-indent="label-end()"> + <fo:block> + <xsl:apply-templates select="." mode="item-number"/> + </fo:block> + </fo:list-item-label> + <fo:list-item-body start-indent="body-start()"> + <xsl:apply-templates/> <!-- removed extra block wrapper --> + </fo:list-item-body> + </xsl:variable> + <xsl:choose> + <xsl:when test="parent::*/@spacing = 'compact'"> + <fo:list-item id="{$id}" + xsl:use-attribute-sets="compact.list.item.spacing"> + <xsl:copy-of select="$item.contents"/> + </fo:list-item> + </xsl:when> + <xsl:otherwise> + <fo:list-item id="{$id}" xsl:use-attribute-sets="list.item.spacing"> + <xsl:copy-of select="$item.contents"/> + </fo:list-item> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- workaround bug in passivetex fo output for variablelist --> +<xsl:param name="variablelist.as.blocks" select="1"/> +<xsl:template match="varlistentry" mode="vl.as.blocks"> + <xsl:variable name="id"> + <xsl:call-template name="object.id"/></xsl:variable> + <fo:block id="{$id}" xsl:use-attribute-sets="list.item.spacing" + keep-together.within-column="always" + keep-with-next.within-column="always"> + <xsl:apply-templates select="term"/> + </fo:block> + <fo:block start-indent="0.5in" end-indent="0in" + space-after.minimum="0.2em" + space-after.optimum="0.4em" + space-after.maximum="0.6em"> + <fo:block> + <xsl:apply-templates select="listitem"/> + </fo:block> + </fo:block> +</xsl:template> + + +<!-- workaround bug in footers: force right-align w/two 80|30 cols --> +<xsl:template name="footer.table"> + <xsl:param name="pageclass" select="''"/> + <xsl:param name="sequence" select="''"/> + <xsl:param name="gentext-key" select="''"/> + <xsl:choose> + <xsl:when test="$pageclass = 'index'"> + <xsl:attribute name="margin-left">0pt</xsl:attribute> + </xsl:when> + </xsl:choose> + <xsl:variable name="candidate"> + <fo:table table-layout="fixed" width="100%"> + <fo:table-column column-number="1" column-width="80%"/> + <fo:table-column column-number="2" column-width="20%"/> + <fo:table-body> + <fo:table-row height="14pt"> + <fo:table-cell text-align="left" display-align="after"> + <xsl:attribute name="relative-align">baseline</xsl:attribute> + <fo:block> + <fo:block> </fo:block><!-- empty cell --> + </fo:block> + </fo:table-cell> + <fo:table-cell text-align="center" display-align="after"> + <xsl:attribute name="relative-align">baseline</xsl:attribute> + <fo:block> + <xsl:call-template name="footer.content"> + <xsl:with-param name="pageclass" select="$pageclass"/> + <xsl:with-param name="sequence" select="$sequence"/> + <xsl:with-param name="position" select="'center'"/> + <xsl:with-param name="gentext-key" select="$gentext-key"/> + </xsl:call-template> + </fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </xsl:variable> + <!-- Really output a footer? --> + <xsl:choose> + <xsl:when test="$pageclass='titlepage' and $gentext-key='book' + and $sequence='first'"> + <!-- no, book titlepages have no footers at all --> + </xsl:when> + <xsl:when test="$sequence = 'blank' and $footers.on.blank.pages = 0"> + <!-- no output --> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$candidate"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + + +<!-- fix bug in headers: force right-align w/two 40|60 cols --> +<xsl:template name="header.table"> + <xsl:param name="pageclass" select="''"/> + <xsl:param name="sequence" select="''"/> + <xsl:param name="gentext-key" select="''"/> + <xsl:choose> + <xsl:when test="$pageclass = 'index'"> + <xsl:attribute name="margin-left">0pt</xsl:attribute> + </xsl:when> + </xsl:choose> + <xsl:variable name="candidate"> + <fo:table table-layout="fixed" width="100%"> + <xsl:call-template name="head.sep.rule"> + <xsl:with-param name="pageclass" select="$pageclass"/> + <xsl:with-param name="sequence" select="$sequence"/> + <xsl:with-param name="gentext-key" select="$gentext-key"/> + </xsl:call-template> + <fo:table-column column-number="1" column-width="40%"/> + <fo:table-column column-number="2" column-width="60%"/> + <fo:table-body> + <fo:table-row height="14pt"> + <fo:table-cell text-align="left" display-align="before"> + <xsl:attribute name="relative-align">baseline</xsl:attribute> + <fo:block> + <fo:block> </fo:block><!-- empty cell --> + </fo:block> + </fo:table-cell> + <fo:table-cell text-align="center" display-align="before"> + <xsl:attribute name="relative-align">baseline</xsl:attribute> + <fo:block> + <xsl:call-template name="header.content"> + <xsl:with-param name="pageclass" select="$pageclass"/> + <xsl:with-param name="sequence" select="$sequence"/> + <xsl:with-param name="position" select="'center'"/> + <xsl:with-param name="gentext-key" select="$gentext-key"/> + </xsl:call-template> + </fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </xsl:variable> + <!-- Really output a header? --> + <xsl:choose> + <xsl:when test="$pageclass = 'titlepage' and $gentext-key = 'book' + and $sequence='first'"> + <!-- no, book titlepages have no headers at all --> + </xsl:when> + <xsl:when test="$sequence = 'blank' and $headers.on.blank.pages = 0"> + <!-- no output --> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$candidate"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + + +<!-- Bug-fix for Suse 10 PassiveTex version --> +<!-- Precompute attribute values 'cos PassiveTex is too stupid: --> +<xsl:attribute-set name="component.title.properties"> + <xsl:attribute name="keep-with-next.within-column">always</xsl:attribute> + <xsl:attribute name="space-before.optimum"> + <xsl:value-of select="concat($body.font.master, 'pt')"/> + </xsl:attribute> + <xsl:attribute name="space-before.minimum"> + <xsl:value-of select="$body.font.master * 0.8"/> + <xsl:text>pt</xsl:text> + </xsl:attribute> + <xsl:attribute name="space-before.maximum"> + <xsl:value-of select="$body.font.master * 1.2"/> + <xsl:text>pt</xsl:text> + </xsl:attribute> + <xsl:attribute name="hyphenate">false</xsl:attribute> +</xsl:attribute-set> + + +</xsl:stylesheet> diff --git a/bz-html.xsl b/bz-html.xsl new file mode 100644 index 0000000..1785fff --- /dev/null +++ b/bz-html.xsl @@ -0,0 +1,20 @@ +<?xml version="1.0"?> <!-- -*- sgml -*- --> +<!DOCTYPE xsl:stylesheet [ <!ENTITY bz-css SYSTEM "./bzip.css"> ]> + +<xsl:stylesheet + xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> + +<xsl:import href="http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl"/> +<xsl:import href="bz-common.xsl"/> + +<!-- use 8859-1 encoding --> +<xsl:output method="html" encoding="ISO-8859-1" indent="yes"/> + +<!-- we include the css directly when generating one large file --> +<xsl:template name="user.head.content"> + <style type="text/css" media="screen"> + <xsl:text>&bz-css;</xsl:text> + </style> +</xsl:template> + +</xsl:stylesheet> @@ -0,0 +1,76 @@ +#!/bin/sh +# sh is buggy on RS/6000 AIX 3.2. Replace above line with #!/bin/ksh + +# Bzcmp/diff wrapped for bzip2, +# adapted from zdiff by Philippe Troin <phil@fifi.org> for Debian GNU/Linux. + +# Bzcmp and bzdiff are used to invoke the cmp or the diff pro- +# gram on compressed files. All options specified are passed +# directly to cmp or diff. If only 1 file is specified, then +# the files compared are file1 and an uncompressed file1.gz. +# If two files are specified, then they are uncompressed (if +# necessary) and fed to cmp or diff. The exit status from cmp +# or diff is preserved. + +PATH="/usr/bin:/bin:$PATH"; export PATH +prog=`echo $0 | sed 's|.*/||'` +case "$prog" in + *cmp) comp=${CMP-cmp} ;; + *) comp=${DIFF-diff} ;; +esac + +OPTIONS= +FILES= +for ARG +do + case "$ARG" in + -*) OPTIONS="$OPTIONS $ARG";; + *) if test -f "$ARG"; then + FILES="$FILES $ARG" + else + echo "${prog}: $ARG not found or not a regular file" + exit 1 + fi ;; + esac +done +if test -z "$FILES"; then + echo "Usage: $prog [${comp}_options] file [file]" + exit 1 +fi +tmp=`mktemp ${TMPDIR:-/tmp}/bzdiff.XXXXXXXXXX` || { + echo 'cannot create a temporary file' >&2 + exit 1 +} +set $FILES +if test $# -eq 1; then + FILE=`echo "$1" | sed 's/.bz2$//'` + bzip2 -cd "$FILE.bz2" | $comp $OPTIONS - "$FILE" + STAT="$?" + +elif test $# -eq 2; then + case "$1" in + *.bz2) + case "$2" in + *.bz2) + F=`echo "$2" | sed 's|.*/||;s|.bz2$||'` + bzip2 -cdfq "$2" > $tmp + bzip2 -cdfq "$1" | $comp $OPTIONS - $tmp + STAT="$?" + /bin/rm -f $tmp;; + + *) bzip2 -cdfq "$1" | $comp $OPTIONS - "$2" + STAT="$?";; + esac;; + *) case "$2" in + *.bz2) + bzip2 -cdfq "$2" | $comp $OPTIONS "$1" - + STAT="$?";; + *) $comp $OPTIONS "$1" "$2" + STAT="$?";; + esac;; + esac + exit "$STAT" +else + echo "Usage: $prog [${comp}_options] file [file]" + exit 1 +fi diff --git a/bzdiff.1 b/bzdiff.1 new file mode 100644 index 0000000..adb7a8e --- /dev/null +++ b/bzdiff.1 @@ -0,0 +1,47 @@ +\"Shamelessly copied from zmore.1 by Philippe Troin <phil@fifi.org> +\"for Debian GNU/Linux +.TH BZDIFF 1 +.SH NAME +bzcmp, bzdiff \- compare bzip2 compressed files +.SH SYNOPSIS +.B bzcmp +[ cmp_options ] file1 +[ file2 ] +.br +.B bzdiff +[ diff_options ] file1 +[ file2 ] +.SH DESCRIPTION +.I Bzcmp +and +.I bzdiff +are used to invoke the +.I cmp +or the +.I diff +program on bzip2 compressed files. All options specified are passed +directly to +.I cmp +or +.IR diff "." +If only 1 file is specified, then the files compared are +.I file1 +and an uncompressed +.IR file1 ".bz2." +If two files are specified, then they are uncompressed if necessary and fed to +.I cmp +or +.IR diff "." +The exit status from +.I cmp +or +.I diff +is preserved. +.SH "SEE ALSO" +cmp(1), diff(1), bzmore(1), bzless(1), bzgrep(1), bzip2(1) +.SH BUGS +Messages from the +.I cmp +or +.I diff +programs refer to temporary filenames instead of those specified. @@ -0,0 +1,75 @@ +#!/bin/sh + +# Bzgrep wrapped for bzip2, +# adapted from zgrep by Philippe Troin <phil@fifi.org> for Debian GNU/Linux. +## zgrep notice: +## zgrep -- a wrapper around a grep program that decompresses files as needed +## Adapted from a version sent by Charles Levert <charles@comm.polymtl.ca> + +PATH="/usr/bin:$PATH"; export PATH + +prog=`echo $0 | sed 's|.*/||'` +case "$prog" in + *egrep) grep=${EGREP-egrep} ;; + *fgrep) grep=${FGREP-fgrep} ;; + *) grep=${GREP-grep} ;; +esac +pat="" +while test $# -ne 0; do + case "$1" in + -e | -f) opt="$opt $1"; shift; pat="$1" + if test "$grep" = grep; then # grep is buggy with -e on SVR4 + grep=egrep + fi;; + -A | -B) opt="$opt $1 $2"; shift;; + -*) opt="$opt $1";; + *) if test -z "$pat"; then + pat="$1" + else + break; + fi;; + esac + shift +done + +if test -z "$pat"; then + echo "grep through bzip2 files" + echo "usage: $prog [grep_options] pattern [files]" + exit 1 +fi + +list=0 +silent=0 +op=`echo "$opt" | sed -e 's/ //g' -e 's/-//g'` +case "$op" in + *l*) list=1 +esac +case "$op" in + *h*) silent=1 +esac + +if test $# -eq 0; then + bzip2 -cdfq | $grep $opt "$pat" + exit $? +fi + +res=0 +for i do + if test -f "$i"; then :; else if test -f "$i.bz2"; then i="$i.bz2"; fi; fi + if test $list -eq 1; then + bzip2 -cdfq "$i" | $grep $opt "$pat" 2>&1 > /dev/null && echo $i + r=$? + elif test $# -eq 1 -o $silent -eq 1; then + bzip2 -cdfq "$i" | $grep $opt "$pat" + r=$? + else + j=${i//\\/\\\\} + j=${j//|/\\|} + j=${j//&/\\&} + j=`printf "%s" "$j" | tr '\n' ' '` + bzip2 -cdfq "$i" | $grep $opt "$pat" | sed "s|^|${j}:|" + r=$? + fi + test "$r" -ne 0 && res="$r" +done +exit $res diff --git a/bzgrep.1 b/bzgrep.1 new file mode 100644 index 0000000..930af8c --- /dev/null +++ b/bzgrep.1 @@ -0,0 +1,56 @@ +\"Shamelessly copied from zmore.1 by Philippe Troin <phil@fifi.org> +\"for Debian GNU/Linux +.TH BZGREP 1 +.SH NAME +bzgrep, bzfgrep, bzegrep \- search possibly bzip2 compressed files for a regular expression +.SH SYNOPSIS +.B bzgrep +[ grep_options ] +.BI [\ -e\ ] " pattern" +.IR filename ".\|.\|." +.br +.B bzegrep +[ egrep_options ] +.BI [\ -e\ ] " pattern" +.IR filename ".\|.\|." +.br +.B bzfgrep +[ fgrep_options ] +.BI [\ -e\ ] " pattern" +.IR filename ".\|.\|." +.SH DESCRIPTION +.IR Bzgrep +is used to invoke the +.I grep +on bzip2-compressed files. All options specified are passed directly to +.I grep. +If no file is specified, then the standard input is decompressed +if necessary and fed to grep. +Otherwise the given files are uncompressed if necessary and fed to +.I grep. +.PP +If +.I bzgrep +is invoked as +.I bzegrep +or +.I bzfgrep +then +.I egrep +or +.I fgrep +is used instead of +.I grep. +If the GREP environment variable is set, +.I bzgrep +uses it as the +.I grep +program to be invoked. For example: + + for sh: GREP=fgrep bzgrep string files + for csh: (setenv GREP fgrep; bzgrep string files) +.SH AUTHOR +Charles Levert (charles@comm.polymtl.ca). Adapted to bzip2 by Philippe +Troin <phil@fifi.org> for Debian GNU/Linux. +.SH "SEE ALSO" +grep(1), egrep(1), fgrep(1), bzdiff(1), bzmore(1), bzless(1), bzip2(1) diff --git a/bzip.css b/bzip.css new file mode 100644 index 0000000..43193d8 --- /dev/null +++ b/bzip.css @@ -0,0 +1,74 @@ +/* Colours: +#74240f dark brown h1, h2, h3, h4 +#336699 medium blue links +#339999 turquoise link hover colour +#202020 almost black general text +#761596 purple md5sum text +#626262 dark gray pre border +#eeeeee very light gray pre background +#f2f2f9 very light blue nav table background +#3366cc medium blue nav table border +*/ + +a, a:link, a:visited, a:active { color: #336699; } +a:hover { color: #339999; } + +body { font: 80%/126% sans-serif; } +h1, h2, h3, h4 { color: #74240f; } + +dt { color: #336699; font-weight: bold } +dd { + margin-left: 1.5em; + padding-bottom: 0.8em; +} + +/* -- ruler -- */ +div.hr_blue { + height: 3px; + background:#ffffff url("/images/hr_blue.png") repeat-x; } +div.hr_blue hr { display:none; } + +/* release styles */ +#release p { margin-top: 0.4em; } +#release .md5sum { color: #761596; } + + +/* ------ styles for docs|manuals|howto ------ */ +/* -- lists -- */ +ul { + margin: 0px 4px 16px 16px; + padding: 0px; + list-style: url("/images/li-blue.png"); +} +ul li { + margin-bottom: 10px; +} +ul ul { + list-style-type: none; + list-style-image: none; + margin-left: 0px; +} + +/* header / footer nav tables */ +table.nav { + border: solid 1px #3366cc; + background: #f2f2f9; + background-color: #f2f2f9; + margin-bottom: 0.5em; +} +/* don't have underlined links in chunked nav menus */ +table.nav a { text-decoration: none; } +table.nav a:hover { text-decoration: underline; } +table.nav td { font-size: 85%; } + +code, tt, pre { font-size: 120%; } +code, tt { color: #761596; } + +div.literallayout, pre.programlisting, pre.screen { + color: #000000; + padding: 0.5em; + background: #eeeeee; + border: 1px solid #626262; + background-color: #eeeeee; + margin: 4px 0px 4px 0px; +} @@ -0,0 +1,454 @@ +.PU +.TH bzip2 1 +.SH NAME +bzip2, bunzip2 \- a block-sorting file compressor, v1.0.4 +.br +bzcat \- decompresses files to stdout +.br +bzip2recover \- recovers data from damaged bzip2 files + +.SH SYNOPSIS +.ll +8 +.B bzip2 +.RB [ " \-cdfkqstvzVL123456789 " ] +[ +.I "filenames \&..." +] +.ll -8 +.br +.B bunzip2 +.RB [ " \-fkvsVL " ] +[ +.I "filenames \&..." +] +.br +.B bzcat +.RB [ " \-s " ] +[ +.I "filenames \&..." +] +.br +.B bzip2recover +.I "filename" + +.SH DESCRIPTION +.I bzip2 +compresses files using the Burrows-Wheeler block sorting +text compression algorithm, and Huffman coding. Compression is +generally considerably better than that achieved by more conventional +LZ77/LZ78-based compressors, and approaches the performance of the PPM +family of statistical compressors. + +The command-line options are deliberately very similar to +those of +.I GNU gzip, +but they are not identical. + +.I bzip2 +expects a list of file names to accompany the +command-line flags. Each file is replaced by a compressed version of +itself, with the name "original_name.bz2". +Each compressed file +has the same modification date, permissions, and, when possible, +ownership as the corresponding original, so that these properties can +be correctly restored at decompression time. File name handling is +naive in the sense that there is no mechanism for preserving original +file names, permissions, ownerships or dates in filesystems which lack +these concepts, or have serious file name length restrictions, such as +MS-DOS. + +.I bzip2 +and +.I bunzip2 +will by default not overwrite existing +files. If you want this to happen, specify the \-f flag. + +If no file names are specified, +.I bzip2 +compresses from standard +input to standard output. In this case, +.I bzip2 +will decline to +write compressed output to a terminal, as this would be entirely +incomprehensible and therefore pointless. + +.I bunzip2 +(or +.I bzip2 \-d) +decompresses all +specified files. Files which were not created by +.I bzip2 +will be detected and ignored, and a warning issued. +.I bzip2 +attempts to guess the filename for the decompressed file +from that of the compressed file as follows: + + filename.bz2 becomes filename + filename.bz becomes filename + filename.tbz2 becomes filename.tar + filename.tbz becomes filename.tar + anyothername becomes anyothername.out + +If the file does not end in one of the recognised endings, +.I .bz2, +.I .bz, +.I .tbz2 +or +.I .tbz, +.I bzip2 +complains that it cannot +guess the name of the original file, and uses the original name +with +.I .out +appended. + +As with compression, supplying no +filenames causes decompression from +standard input to standard output. + +.I bunzip2 +will correctly decompress a file which is the +concatenation of two or more compressed files. The result is the +concatenation of the corresponding uncompressed files. Integrity +testing (\-t) +of concatenated +compressed files is also supported. + +You can also compress or decompress files to the standard output by +giving the \-c flag. Multiple files may be compressed and +decompressed like this. The resulting outputs are fed sequentially to +stdout. Compression of multiple files +in this manner generates a stream +containing multiple compressed file representations. Such a stream +can be decompressed correctly only by +.I bzip2 +version 0.9.0 or +later. Earlier versions of +.I bzip2 +will stop after decompressing +the first file in the stream. + +.I bzcat +(or +.I bzip2 -dc) +decompresses all specified files to +the standard output. + +.I bzip2 +will read arguments from the environment variables +.I BZIP2 +and +.I BZIP, +in that order, and will process them +before any arguments read from the command line. This gives a +convenient way to supply default arguments. + +Compression is always performed, even if the compressed +file is slightly +larger than the original. Files of less than about one hundred bytes +tend to get larger, since the compression mechanism has a constant +overhead in the region of 50 bytes. Random data (including the output +of most file compressors) is coded at about 8.05 bits per byte, giving +an expansion of around 0.5%. + +As a self-check for your protection, +.I +bzip2 +uses 32-bit CRCs to +make sure that the decompressed version of a file is identical to the +original. This guards against corruption of the compressed data, and +against undetected bugs in +.I bzip2 +(hopefully very unlikely). The +chances of data corruption going undetected is microscopic, about one +chance in four billion for each file processed. Be aware, though, that +the check occurs upon decompression, so it can only tell you that +something is wrong. It can't help you +recover the original uncompressed +data. You can use +.I bzip2recover +to try to recover data from +damaged files. + +Return values: 0 for a normal exit, 1 for environmental problems (file +not found, invalid flags, I/O errors, &c), 2 to indicate a corrupt +compressed file, 3 for an internal consistency error (eg, bug) which +caused +.I bzip2 +to panic. + +.SH OPTIONS +.TP +.B \-c --stdout +Compress or decompress to standard output. +.TP +.B \-d --decompress +Force decompression. +.I bzip2, +.I bunzip2 +and +.I bzcat +are +really the same program, and the decision about what actions to take is +done on the basis of which name is used. This flag overrides that +mechanism, and forces +.I bzip2 +to decompress. +.TP +.B \-z --compress +The complement to \-d: forces compression, regardless of the +invocation name. +.TP +.B \-t --test +Check integrity of the specified file(s), but don't decompress them. +This really performs a trial decompression and throws away the result. +.TP +.B \-f --force +Force overwrite of output files. Normally, +.I bzip2 +will not overwrite +existing output files. Also forces +.I bzip2 +to break hard links +to files, which it otherwise wouldn't do. + +bzip2 normally declines to decompress files which don't have the +correct magic header bytes. If forced (-f), however, it will pass +such files through unmodified. This is how GNU gzip behaves. +.TP +.B \-k --keep +Keep (don't delete) input files during compression +or decompression. +.TP +.B \-s --small +Reduce memory usage, for compression, decompression and testing. Files +are decompressed and tested using a modified algorithm which only +requires 2.5 bytes per block byte. This means any file can be +decompressed in 2300k of memory, albeit at about half the normal speed. + +During compression, \-s selects a block size of 200k, which limits +memory use to around the same figure, at the expense of your compression +ratio. In short, if your machine is low on memory (8 megabytes or +less), use \-s for everything. See MEMORY MANAGEMENT below. +.TP +.B \-q --quiet +Suppress non-essential warning messages. Messages pertaining to +I/O errors and other critical events will not be suppressed. +.TP +.B \-v --verbose +Verbose mode -- show the compression ratio for each file processed. +Further \-v's increase the verbosity level, spewing out lots of +information which is primarily of interest for diagnostic purposes. +.TP +.B \-L --license -V --version +Display the software version, license terms and conditions. +.TP +.B \-1 (or \-\-fast) to \-9 (or \-\-best) +Set the block size to 100 k, 200 k .. 900 k when compressing. Has no +effect when decompressing. See MEMORY MANAGEMENT below. +The \-\-fast and \-\-best aliases are primarily for GNU gzip +compatibility. In particular, \-\-fast doesn't make things +significantly faster. +And \-\-best merely selects the default behaviour. +.TP +.B \-- +Treats all subsequent arguments as file names, even if they start +with a dash. This is so you can handle files with names beginning +with a dash, for example: bzip2 \-- \-myfilename. +.TP +.B \--repetitive-fast --repetitive-best +These flags are redundant in versions 0.9.5 and above. They provided +some coarse control over the behaviour of the sorting algorithm in +earlier versions, which was sometimes useful. 0.9.5 and above have an +improved algorithm which renders these flags irrelevant. + +.SH MEMORY MANAGEMENT +.I bzip2 +compresses large files in blocks. The block size affects +both the compression ratio achieved, and the amount of memory needed for +compression and decompression. The flags \-1 through \-9 +specify the block size to be 100,000 bytes through 900,000 bytes (the +default) respectively. At decompression time, the block size used for +compression is read from the header of the compressed file, and +.I bunzip2 +then allocates itself just enough memory to decompress +the file. Since block sizes are stored in compressed files, it follows +that the flags \-1 to \-9 are irrelevant to and so ignored +during decompression. + +Compression and decompression requirements, +in bytes, can be estimated as: + + Compression: 400k + ( 8 x block size ) + + Decompression: 100k + ( 4 x block size ), or + 100k + ( 2.5 x block size ) + +Larger block sizes give rapidly diminishing marginal returns. Most of +the compression comes from the first two or three hundred k of block +size, a fact worth bearing in mind when using +.I bzip2 +on small machines. +It is also important to appreciate that the decompression memory +requirement is set at compression time by the choice of block size. + +For files compressed with the default 900k block size, +.I bunzip2 +will require about 3700 kbytes to decompress. To support decompression +of any file on a 4 megabyte machine, +.I bunzip2 +has an option to +decompress using approximately half this amount of memory, about 2300 +kbytes. Decompression speed is also halved, so you should use this +option only where necessary. The relevant flag is -s. + +In general, try and use the largest block size memory constraints allow, +since that maximises the compression achieved. Compression and +decompression speed are virtually unaffected by block size. + +Another significant point applies to files which fit in a single block +-- that means most files you'd encounter using a large block size. The +amount of real memory touched is proportional to the size of the file, +since the file is smaller than a block. For example, compressing a file +20,000 bytes long with the flag -9 will cause the compressor to +allocate around 7600k of memory, but only touch 400k + 20000 * 8 = 560 +kbytes of it. Similarly, the decompressor will allocate 3700k but only +touch 100k + 20000 * 4 = 180 kbytes. + +Here is a table which summarises the maximum memory usage for different +block sizes. Also recorded is the total compressed size for 14 files of +the Calgary Text Compression Corpus totalling 3,141,622 bytes. This +column gives some feel for how compression varies with block size. +These figures tend to understate the advantage of larger block sizes for +larger files, since the Corpus is dominated by smaller files. + + Compress Decompress Decompress Corpus + Flag usage usage -s usage Size + + -1 1200k 500k 350k 914704 + -2 2000k 900k 600k 877703 + -3 2800k 1300k 850k 860338 + -4 3600k 1700k 1100k 846899 + -5 4400k 2100k 1350k 845160 + -6 5200k 2500k 1600k 838626 + -7 6100k 2900k 1850k 834096 + -8 6800k 3300k 2100k 828642 + -9 7600k 3700k 2350k 828642 + +.SH RECOVERING DATA FROM DAMAGED FILES +.I bzip2 +compresses files in blocks, usually 900kbytes long. Each +block is handled independently. If a media or transmission error causes +a multi-block .bz2 +file to become damaged, it may be possible to +recover data from the undamaged blocks in the file. + +The compressed representation of each block is delimited by a 48-bit +pattern, which makes it possible to find the block boundaries with +reasonable certainty. Each block also carries its own 32-bit CRC, so +damaged blocks can be distinguished from undamaged ones. + +.I bzip2recover +is a simple program whose purpose is to search for +blocks in .bz2 files, and write each block out into its own .bz2 +file. You can then use +.I bzip2 +\-t +to test the +integrity of the resulting files, and decompress those which are +undamaged. + +.I bzip2recover +takes a single argument, the name of the damaged file, +and writes a number of files "rec00001file.bz2", +"rec00002file.bz2", etc, containing the extracted blocks. +The output filenames are designed so that the use of +wildcards in subsequent processing -- for example, +"bzip2 -dc rec*file.bz2 > recovered_data" -- processes the files in +the correct order. + +.I bzip2recover +should be of most use dealing with large .bz2 +files, as these will contain many blocks. It is clearly +futile to use it on damaged single-block files, since a +damaged block cannot be recovered. If you wish to minimise +any potential data loss through media or transmission errors, +you might consider compressing with a smaller +block size. + +.SH PERFORMANCE NOTES +The sorting phase of compression gathers together similar strings in the +file. Because of this, files containing very long runs of repeated +symbols, like "aabaabaabaab ..." (repeated several hundred times) may +compress more slowly than normal. Versions 0.9.5 and above fare much +better than previous versions in this respect. The ratio between +worst-case and average-case compression time is in the region of 10:1. +For previous versions, this figure was more like 100:1. You can use the +\-vvvv option to monitor progress in great detail, if you want. + +Decompression speed is unaffected by these phenomena. + +.I bzip2 +usually allocates several megabytes of memory to operate +in, and then charges all over it in a fairly random fashion. This means +that performance, both for compressing and decompressing, is largely +determined by the speed at which your machine can service cache misses. +Because of this, small changes to the code to reduce the miss rate have +been observed to give disproportionately large performance improvements. +I imagine +.I bzip2 +will perform best on machines with very large caches. + +.SH CAVEATS +I/O error messages are not as helpful as they could be. +.I bzip2 +tries hard to detect I/O errors and exit cleanly, but the details of +what the problem is sometimes seem rather misleading. + +This manual page pertains to version 1.0.4 of +.I bzip2. +Compressed data created by this version is entirely forwards and +backwards compatible with the previous public releases, versions +0.1pl2, 0.9.0, 0.9.5, 1.0.0, 1.0.1, 1.0.2 and 1.0.3, but with the following +exception: 0.9.0 and above can correctly decompress multiple +concatenated compressed files. 0.1pl2 cannot do this; it will stop +after decompressing just the first file in the stream. + +.I bzip2recover +versions prior to 1.0.2 used 32-bit integers to represent +bit positions in compressed files, so they could not handle compressed +files more than 512 megabytes long. Versions 1.0.2 and above use +64-bit ints on some platforms which support them (GNU supported +targets, and Windows). To establish whether or not bzip2recover was +built with such a limitation, run it without arguments. In any event +you can build yourself an unlimited version if you can recompile it +with MaybeUInt64 set to be an unsigned 64-bit integer. + + + +.SH AUTHOR +Julian Seward, jsewardbzip.org. + +http://www.bzip.org + +The ideas embodied in +.I bzip2 +are due to (at least) the following +people: Michael Burrows and David Wheeler (for the block sorting +transformation), David Wheeler (again, for the Huffman coder), Peter +Fenwick (for the structured coding model in the original +.I bzip, +and many refinements), and Alistair Moffat, Radford Neal and Ian Witten +(for the arithmetic coder in the original +.I bzip). +I am much +indebted for their help, support and advice. See the manual in the +source distribution for pointers to sources of documentation. Christian +von Roques encouraged me to look for faster sorting algorithms, so as to +speed up compression. Bela Lubkin encouraged me to improve the +worst-case compression performance. +Donna Robinson XMLised the documentation. +The bz* scripts are derived from those of GNU gzip. +Many people sent patches, helped +with portability problems, lent machines, gave advice and were generally +helpful. diff --git a/bzip2.1.preformatted b/bzip2.1.preformatted new file mode 100644 index 0000000..15e16e5 --- /dev/null +++ b/bzip2.1.preformatted @@ -0,0 +1,399 @@ +bzip2(1) bzip2(1) + + + +NNAAMMEE + bzip2, bunzip2 − a blockâ€sorting file compressor, v1.0.4 + bzcat − decompresses files to stdout + bzip2recover − recovers data from damaged bzip2 files + + +SSYYNNOOPPSSIISS + bbzziipp22 [ −−ccddffkkqqssttvvzzVVLL112233445566778899 ] [ _f_i_l_e_n_a_m_e_s _._._. ] + bbuunnzziipp22 [ −−ffkkvvssVVLL ] [ _f_i_l_e_n_a_m_e_s _._._. ] + bbzzccaatt [ −−ss ] [ _f_i_l_e_n_a_m_e_s _._._. ] + bbzziipp22rreeccoovveerr _f_i_l_e_n_a_m_e + + +DDEESSCCRRIIPPTTIIOONN + _b_z_i_p_2 compresses files using the Burrowsâ€Wheeler block + sorting text compression algorithm, and Huffman coding. + Compression is generally considerably better than that + achieved by more conventional LZ77/LZ78â€based compressors, + and approaches the performance of the PPM family of sta + tistical compressors. + + The commandâ€line options are deliberately very similar to + those of _G_N_U _g_z_i_p_, but they are not identical. + + _b_z_i_p_2 expects a list of file names to accompany the com + mandâ€line flags. Each file is replaced by a compressed + version of itself, with the name "original_name.bz2". + Each compressed file has the same modification date, per + missions, and, when possible, ownership as the correspond + ing original, so that these properties can be correctly + restored at decompression time. File name handling is + naive in the sense that there is no mechanism for preserv + ing original file names, permissions, ownerships or dates + in filesystems which lack these concepts, or have serious + file name length restrictions, such as MSâ€DOS. + + _b_z_i_p_2 and _b_u_n_z_i_p_2 will by default not overwrite existing + files. If you want this to happen, specify the −f flag. + + If no file names are specified, _b_z_i_p_2 compresses from + standard input to standard output. In this case, _b_z_i_p_2 + will decline to write compressed output to a terminal, as + this would be entirely incomprehensible and therefore + pointless. + + _b_u_n_z_i_p_2 (or _b_z_i_p_2 _−_d_) decompresses all specified files. + Files which were not created by _b_z_i_p_2 will be detected and + ignored, and a warning issued. _b_z_i_p_2 attempts to guess + the filename for the decompressed file from that of the + compressed file as follows: + + filename.bz2 becomes filename + filename.bz becomes filename + filename.tbz2 becomes filename.tar + filename.tbz becomes filename.tar + anyothername becomes anyothername.out + + If the file does not end in one of the recognised endings, + _._b_z_2_, _._b_z_, _._t_b_z_2 or _._t_b_z_, _b_z_i_p_2 complains that it cannot + guess the name of the original file, and uses the original + name with _._o_u_t appended. + + As with compression, supplying no filenames causes decom + pression from standard input to standard output. + + _b_u_n_z_i_p_2 will correctly decompress a file which is the con + catenation of two or more compressed files. The result is + the concatenation of the corresponding uncompressed files. + Integrity testing (−t) of concatenated compressed files is + also supported. + + You can also compress or decompress files to the standard + output by giving the −c flag. Multiple files may be com + pressed and decompressed like this. The resulting outputs + are fed sequentially to stdout. Compression of multiple + files in this manner generates a stream containing multi + ple compressed file representations. Such a stream can be + decompressed correctly only by _b_z_i_p_2 version 0.9.0 or + later. Earlier versions of _b_z_i_p_2 will stop after decom + pressing the first file in the stream. + + _b_z_c_a_t (or _b_z_i_p_2 _â€_d_c_) decompresses all specified files to + the standard output. + + _b_z_i_p_2 will read arguments from the environment variables + _B_Z_I_P_2 and _B_Z_I_P_, in that order, and will process them + before any arguments read from the command line. This + gives a convenient way to supply default arguments. + + Compression is always performed, even if the compressed + file is slightly larger than the original. Files of less + than about one hundred bytes tend to get larger, since the + compression mechanism has a constant overhead in the + region of 50 bytes. Random data (including the output of + most file compressors) is coded at about 8.05 bits per + byte, giving an expansion of around 0.5%. + + As a selfâ€check for your protection, _b_z_i_p_2 uses 32â€bit + CRCs to make sure that the decompressed version of a file + is identical to the original. This guards against corrup + tion of the compressed data, and against undetected bugs + in _b_z_i_p_2 (hopefully very unlikely). The chances of data + corruption going undetected is microscopic, about one + chance in four billion for each file processed. Be aware, + though, that the check occurs upon decompression, so it + can only tell you that something is wrong. It can’t help + you recover the original uncompressed data. You can use + _b_z_i_p_2_r_e_c_o_v_e_r to try to recover data from damaged files. + + Return values: 0 for a normal exit, 1 for environmental + problems (file not found, invalid flags, I/O errors, &c), + 2 to indicate a corrupt compressed file, 3 for an internal + consistency error (eg, bug) which caused _b_z_i_p_2 to panic. + + +OOPPTTIIOONNSS + −−cc â€â€â€â€ssttddoouutt + Compress or decompress to standard output. + + −−dd â€â€â€â€ddeeccoommpprreessss + Force decompression. _b_z_i_p_2_, _b_u_n_z_i_p_2 and _b_z_c_a_t are + really the same program, and the decision about + what actions to take is done on the basis of which + name is used. This flag overrides that mechanism, + and forces _b_z_i_p_2 to decompress. + + −−zz â€â€â€â€ccoommpprreessss + The complement to −d: forces compression, + regardless of the invocation name. + + −−tt â€â€â€â€tteesstt + Check integrity of the specified file(s), but don’t + decompress them. This really performs a trial + decompression and throws away the result. + + −−ff â€â€â€â€ffoorrccee + Force overwrite of output files. Normally, _b_z_i_p_2 + will not overwrite existing output files. Also + forces _b_z_i_p_2 to break hard links to files, which it + otherwise wouldn’t do. + + bzip2 normally declines to decompress files which + don’t have the correct magic header bytes. If + forced (â€f), however, it will pass such files + through unmodified. This is how GNU gzip behaves. + + −−kk â€â€â€â€kkeeeepp + Keep (don’t delete) input files during compression + or decompression. + + −−ss â€â€â€â€ssmmaallll + Reduce memory usage, for compression, decompression + and testing. Files are decompressed and tested + using a modified algorithm which only requires 2.5 + bytes per block byte. This means any file can be + decompressed in 2300k of memory, albeit at about + half the normal speed. + + During compression, −s selects a block size of + 200k, which limits memory use to around the same + figure, at the expense of your compression ratio. + In short, if your machine is low on memory (8 + megabytes or less), use −s for everything. See + MEMORY MANAGEMENT below. + + −−qq â€â€â€â€qquuiieett + Suppress nonâ€essential warning messages. Messages + pertaining to I/O errors and other critical events + will not be suppressed. + + −−vv â€â€â€â€vveerrbboossee + Verbose mode â€â€ show the compression ratio for each + file processed. Further −v’s increase the ver + bosity level, spewing out lots of information which + is primarily of interest for diagnostic purposes. + + −−LL â€â€â€â€lliicceennssee â€â€VV â€â€â€â€vveerrssiioonn + Display the software version, license terms and + conditions. + + −−11 ((oorr −−−−ffaasstt)) ttoo −−99 ((oorr −−−−bbeesstt)) + Set the block size to 100 k, 200 k .. 900 k when + compressing. Has no effect when decompressing. + See MEMORY MANAGEMENT below. The −−fast and −−best + aliases are primarily for GNU gzip compatibility. + In particular, −−fast doesn’t make things signifi + cantly faster. And −−best merely selects the + default behaviour. + + −−â€â€ Treats all subsequent arguments as file names, even + if they start with a dash. This is so you can han + dle files with names beginning with a dash, for + example: bzip2 −†−myfilename. + + −−â€â€rreeppeettiittiivveeâ€â€ffaasstt â€â€â€â€rreeppeettiittiivveeâ€â€bbeesstt + These flags are redundant in versions 0.9.5 and + above. They provided some coarse control over the + behaviour of the sorting algorithm in earlier ver + sions, which was sometimes useful. 0.9.5 and above + have an improved algorithm which renders these + flags irrelevant. + + +MMEEMMOORRYY MMAANNAAGGEEMMEENNTT + _b_z_i_p_2 compresses large files in blocks. The block size + affects both the compression ratio achieved, and the + amount of memory needed for compression and decompression. + The flags −1 through −9 specify the block size to be + 100,000 bytes through 900,000 bytes (the default) respec + tively. At decompression time, the block size used for + compression is read from the header of the compressed + file, and _b_u_n_z_i_p_2 then allocates itself just enough memory + to decompress the file. Since block sizes are stored in + compressed files, it follows that the flags −1 to −9 are + irrelevant to and so ignored during decompression. + + Compression and decompression requirements, in bytes, can + be estimated as: + + Compression: 400k + ( 8 x block size ) + + Decompression: 100k + ( 4 x block size ), or + 100k + ( 2.5 x block size ) + + Larger block sizes give rapidly diminishing marginal + returns. Most of the compression comes from the first two + or three hundred k of block size, a fact worth bearing in + mind when using _b_z_i_p_2 on small machines. It is also + important to appreciate that the decompression memory + requirement is set at compression time by the choice of + block size. + + For files compressed with the default 900k block size, + _b_u_n_z_i_p_2 will require about 3700 kbytes to decompress. To + support decompression of any file on a 4 megabyte machine, + _b_u_n_z_i_p_2 has an option to decompress using approximately + half this amount of memory, about 2300 kbytes. Decompres + sion speed is also halved, so you should use this option + only where necessary. The relevant flag is â€s. + + In general, try and use the largest block size memory con + straints allow, since that maximises the compression + achieved. Compression and decompression speed are virtu + ally unaffected by block size. + + Another significant point applies to files which fit in a + single block â€â€ that means most files you’d encounter + using a large block size. The amount of real memory + touched is proportional to the size of the file, since the + file is smaller than a block. For example, compressing a + file 20,000 bytes long with the flag â€9 will cause the + compressor to allocate around 7600k of memory, but only + touch 400k + 20000 * 8 = 560 kbytes of it. Similarly, the + decompressor will allocate 3700k but only touch 100k + + 20000 * 4 = 180 kbytes. + + Here is a table which summarises the maximum memory usage + for different block sizes. Also recorded is the total + compressed size for 14 files of the Calgary Text Compres + sion Corpus totalling 3,141,622 bytes. This column gives + some feel for how compression varies with block size. + These figures tend to understate the advantage of larger + block sizes for larger files, since the Corpus is domi + nated by smaller files. + + Compress Decompress Decompress Corpus + Flag usage usage â€s usage Size + + â€1 1200k 500k 350k 914704 + â€2 2000k 900k 600k 877703 + â€3 2800k 1300k 850k 860338 + â€4 3600k 1700k 1100k 846899 + â€5 4400k 2100k 1350k 845160 + â€6 5200k 2500k 1600k 838626 + â€7 6100k 2900k 1850k 834096 + â€8 6800k 3300k 2100k 828642 + â€9 7600k 3700k 2350k 828642 + + +RREECCOOVVEERRIINNGG DDAATTAA FFRROOMM DDAAMMAAGGEEDD FFIILLEESS + _b_z_i_p_2 compresses files in blocks, usually 900kbytes long. + Each block is handled independently. If a media or trans + mission error causes a multiâ€block .bz2 file to become + damaged, it may be possible to recover data from the + undamaged blocks in the file. + + The compressed representation of each block is delimited + by a 48â€bit pattern, which makes it possible to find the + block boundaries with reasonable certainty. Each block + also carries its own 32â€bit CRC, so damaged blocks can be + distinguished from undamaged ones. + + _b_z_i_p_2_r_e_c_o_v_e_r is a simple program whose purpose is to + search for blocks in .bz2 files, and write each block out + into its own .bz2 file. You can then use _b_z_i_p_2 −t to test + the integrity of the resulting files, and decompress those + which are undamaged. + + _b_z_i_p_2_r_e_c_o_v_e_r takes a single argument, the name of the dam + aged file, and writes a number of files + "rec00001file.bz2", "rec00002file.bz2", etc, containing + the extracted blocks. The output filenames are + designed so that the use of wildcards in subsequent pro + cessing â€â€ for example, "bzip2 â€dc rec*file.bz2 > recov + ered_data" â€â€ processes the files in the correct order. + + _b_z_i_p_2_r_e_c_o_v_e_r should be of most use dealing with large .bz2 + files, as these will contain many blocks. It is clearly + futile to use it on damaged singleâ€block files, since a + damaged block cannot be recovered. If you wish to min + imise any potential data loss through media or transmis + sion errors, you might consider compressing with a smaller + block size. + + +PPEERRFFOORRMMAANNCCEE NNOOTTEESS + The sorting phase of compression gathers together similar + strings in the file. Because of this, files containing + very long runs of repeated symbols, like "aabaabaabaab + ..." (repeated several hundred times) may compress more + slowly than normal. Versions 0.9.5 and above fare much + better than previous versions in this respect. The ratio + between worstâ€case and averageâ€case compression time is in + the region of 10:1. For previous versions, this figure + was more like 100:1. You can use the −vvvv option to mon + itor progress in great detail, if you want. + + Decompression speed is unaffected by these phenomena. + + _b_z_i_p_2 usually allocates several megabytes of memory to + operate in, and then charges all over it in a fairly ran + dom fashion. This means that performance, both for com + pressing and decompressing, is largely determined by the + speed at which your machine can service cache misses. + Because of this, small changes to the code to reduce the + miss rate have been observed to give disproportionately + large performance improvements. I imagine _b_z_i_p_2 will per + form best on machines with very large caches. + + +CCAAVVEEAATTSS + I/O error messages are not as helpful as they could be. + _b_z_i_p_2 tries hard to detect I/O errors and exit cleanly, + but the details of what the problem is sometimes seem + rather misleading. + + This manual page pertains to version 1.0.4 of _b_z_i_p_2_. Com + pressed data created by this version is entirely forwards + and backwards compatible with the previous public + releases, versions 0.1pl2, 0.9.0, 0.9.5, 1.0.0, 1.0.1, + 1.0.2 and 1.0.3, but with the following exception: 0.9.0 + and above can correctly decompress multiple concatenated + compressed files. 0.1pl2 cannot do this; it will stop + after decompressing just the first file in the stream. + + _b_z_i_p_2_r_e_c_o_v_e_r versions prior to 1.0.2 used 32â€bit integers + to represent bit positions in compressed files, so they + could not handle compressed files more than 512 megabytes + long. Versions 1.0.2 and above use 64â€bit ints on some + platforms which support them (GNU supported targets, and + Windows). To establish whether or not bzip2recover was + built with such a limitation, run it without arguments. + In any event you can build yourself an unlimited version + if you can recompile it with MaybeUInt64 set to be an + unsigned 64â€bit integer. + + + + +AAUUTTHHOORR + Julian Seward, jsewardbzip.org. + + http://www.bzip.org + + The ideas embodied in _b_z_i_p_2 are due to (at least) the fol + lowing people: Michael Burrows and David Wheeler (for the + block sorting transformation), David Wheeler (again, for + the Huffman coder), Peter Fenwick (for the structured cod + ing model in the original _b_z_i_p_, and many refinements), and + Alistair Moffat, Radford Neal and Ian Witten (for the + arithmetic coder in the original _b_z_i_p_)_. I am much + indebted for their help, support and advice. See the man + ual in the source distribution for pointers to sources of + documentation. Christian von Roques encouraged me to look + for faster sorting algorithms, so as to speed up compres + sion. Bela Lubkin encouraged me to improve the worstâ€case + compression performance. Donna Robinson XMLised the docu + mentation. The bz* scripts are derived from those of GNU + gzip. Many people sent patches, helped with portability + problems, lent machines, gave advice and were generally + helpful. + + + + bzip2(1) @@ -0,0 +1,2034 @@ + +/*-----------------------------------------------------------*/ +/*--- A block-sorting, lossless compressor bzip2.c ---*/ +/*-----------------------------------------------------------*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + + +/* Place a 1 beside your platform, and 0 elsewhere. + Generic 32-bit Unix. + Also works on 64-bit Unix boxes. + This is the default. +*/ +#define BZ_UNIX 1 + +/*-- + Win32, as seen by Jacob Navia's excellent + port of (Chris Fraser & David Hanson)'s excellent + lcc compiler. Or with MS Visual C. + This is selected automatically if compiled by a compiler which + defines _WIN32, not including the Cygwin GCC. +--*/ +#define BZ_LCCWIN32 0 + +#if defined(_WIN32) && !defined(__CYGWIN__) +#undef BZ_LCCWIN32 +#define BZ_LCCWIN32 1 +#undef BZ_UNIX +#define BZ_UNIX 0 +#endif + + +/*---------------------------------------------*/ +/*-- + Some stuff for all platforms. +--*/ + +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <signal.h> +#include <math.h> +#include <errno.h> +#include <ctype.h> +#include "bzlib.h" + +#define ERROR_IF_EOF(i) { if ((i) == EOF) ioError(); } +#define ERROR_IF_NOT_ZERO(i) { if ((i) != 0) ioError(); } +#define ERROR_IF_MINUS_ONE(i) { if ((i) == (-1)) ioError(); } + + +/*---------------------------------------------*/ +/*-- + Platform-specific stuff. +--*/ + +#if BZ_UNIX +# include <fcntl.h> +# include <sys/types.h> +# include <utime.h> +# include <unistd.h> +# include <sys/stat.h> +# include <sys/times.h> + +# define PATH_SEP '/' +# define MY_LSTAT lstat +# define MY_STAT stat +# define MY_S_ISREG S_ISREG +# define MY_S_ISDIR S_ISDIR + +# define APPEND_FILESPEC(root, name) \ + root=snocString((root), (name)) + +# define APPEND_FLAG(root, name) \ + root=snocString((root), (name)) + +# define SET_BINARY_MODE(fd) /**/ + +# ifdef __GNUC__ +# define NORETURN __attribute__ ((noreturn)) +# else +# define NORETURN /**/ +# endif + +# ifdef __DJGPP__ +# include <io.h> +# include <fcntl.h> +# undef MY_LSTAT +# undef MY_STAT +# define MY_LSTAT stat +# define MY_STAT stat +# undef SET_BINARY_MODE +# define SET_BINARY_MODE(fd) \ + do { \ + int retVal = setmode ( fileno ( fd ), \ + O_BINARY ); \ + ERROR_IF_MINUS_ONE ( retVal ); \ + } while ( 0 ) +# endif + +# ifdef __CYGWIN__ +# include <io.h> +# include <fcntl.h> +# undef SET_BINARY_MODE +# define SET_BINARY_MODE(fd) \ + do { \ + int retVal = setmode ( fileno ( fd ), \ + O_BINARY ); \ + ERROR_IF_MINUS_ONE ( retVal ); \ + } while ( 0 ) +# endif +#endif /* BZ_UNIX */ + + + +#if BZ_LCCWIN32 +# include <io.h> +# include <fcntl.h> +# include <sys\stat.h> + +# define NORETURN /**/ +# define PATH_SEP '\\' +# define MY_LSTAT _stat +# define MY_STAT _stat +# define MY_S_ISREG(x) ((x) & _S_IFREG) +# define MY_S_ISDIR(x) ((x) & _S_IFDIR) + +# define APPEND_FLAG(root, name) \ + root=snocString((root), (name)) + +# define APPEND_FILESPEC(root, name) \ + root = snocString ((root), (name)) + +# define SET_BINARY_MODE(fd) \ + do { \ + int retVal = setmode ( fileno ( fd ), \ + O_BINARY ); \ + ERROR_IF_MINUS_ONE ( retVal ); \ + } while ( 0 ) + +#endif /* BZ_LCCWIN32 */ + + +/*---------------------------------------------*/ +/*-- + Some more stuff for all platforms :-) +--*/ + +typedef char Char; +typedef unsigned char Bool; +typedef unsigned char UChar; +typedef int Int32; +typedef unsigned int UInt32; +typedef short Int16; +typedef unsigned short UInt16; + +#define True ((Bool)1) +#define False ((Bool)0) + +/*-- + IntNative is your platform's `native' int size. + Only here to avoid probs with 64-bit platforms. +--*/ +typedef int IntNative; + + +/*---------------------------------------------------*/ +/*--- Misc (file handling) data decls ---*/ +/*---------------------------------------------------*/ + +Int32 verbosity; +Bool keepInputFiles, smallMode, deleteOutputOnInterrupt; +Bool forceOverwrite, testFailsExist, unzFailsExist, noisy; +Int32 numFileNames, numFilesProcessed, blockSize100k; +Int32 exitValue; + +/*-- source modes; F==file, I==stdin, O==stdout --*/ +#define SM_I2O 1 +#define SM_F2O 2 +#define SM_F2F 3 + +/*-- operation modes --*/ +#define OM_Z 1 +#define OM_UNZ 2 +#define OM_TEST 3 + +Int32 opMode; +Int32 srcMode; + +#define FILE_NAME_LEN 1034 + +Int32 longestFileName; +Char inName [FILE_NAME_LEN]; +Char outName[FILE_NAME_LEN]; +Char tmpName[FILE_NAME_LEN]; +Char *progName; +Char progNameReally[FILE_NAME_LEN]; +FILE *outputHandleJustInCase; +Int32 workFactor; + +static void panic ( const Char* ) NORETURN; +static void ioError ( void ) NORETURN; +static void outOfMemory ( void ) NORETURN; +static void configError ( void ) NORETURN; +static void crcError ( void ) NORETURN; +static void cleanUpAndFail ( Int32 ) NORETURN; +static void compressedStreamEOF ( void ) NORETURN; + +static void copyFileName ( Char*, Char* ); +static void* myMalloc ( Int32 ); +static void applySavedFileAttrToOutputFile ( IntNative fd ); + + + +/*---------------------------------------------------*/ +/*--- An implementation of 64-bit ints. Sigh. ---*/ +/*--- Roll on widespread deployment of ANSI C9X ! ---*/ +/*---------------------------------------------------*/ + +typedef + struct { UChar b[8]; } + UInt64; + + +static +void uInt64_from_UInt32s ( UInt64* n, UInt32 lo32, UInt32 hi32 ) +{ + n->b[7] = (UChar)((hi32 >> 24) & 0xFF); + n->b[6] = (UChar)((hi32 >> 16) & 0xFF); + n->b[5] = (UChar)((hi32 >> 8) & 0xFF); + n->b[4] = (UChar) (hi32 & 0xFF); + n->b[3] = (UChar)((lo32 >> 24) & 0xFF); + n->b[2] = (UChar)((lo32 >> 16) & 0xFF); + n->b[1] = (UChar)((lo32 >> 8) & 0xFF); + n->b[0] = (UChar) (lo32 & 0xFF); +} + + +static +double uInt64_to_double ( UInt64* n ) +{ + Int32 i; + double base = 1.0; + double sum = 0.0; + for (i = 0; i < 8; i++) { + sum += base * (double)(n->b[i]); + base *= 256.0; + } + return sum; +} + + +static +Bool uInt64_isZero ( UInt64* n ) +{ + Int32 i; + for (i = 0; i < 8; i++) + if (n->b[i] != 0) return 0; + return 1; +} + + +/* Divide *n by 10, and return the remainder. */ +static +Int32 uInt64_qrm10 ( UInt64* n ) +{ + UInt32 rem, tmp; + Int32 i; + rem = 0; + for (i = 7; i >= 0; i--) { + tmp = rem * 256 + n->b[i]; + n->b[i] = tmp / 10; + rem = tmp % 10; + } + return rem; +} + + +/* ... and the Whole Entire Point of all this UInt64 stuff is + so that we can supply the following function. +*/ +static +void uInt64_toAscii ( char* outbuf, UInt64* n ) +{ + Int32 i, q; + UChar buf[32]; + Int32 nBuf = 0; + UInt64 n_copy = *n; + do { + q = uInt64_qrm10 ( &n_copy ); + buf[nBuf] = q + '0'; + nBuf++; + } while (!uInt64_isZero(&n_copy)); + outbuf[nBuf] = 0; + for (i = 0; i < nBuf; i++) + outbuf[i] = buf[nBuf-i-1]; +} + + +/*---------------------------------------------------*/ +/*--- Processing of complete files and streams ---*/ +/*---------------------------------------------------*/ + +/*---------------------------------------------*/ +static +Bool myfeof ( FILE* f ) +{ + Int32 c = fgetc ( f ); + if (c == EOF) return True; + ungetc ( c, f ); + return False; +} + + +/*---------------------------------------------*/ +static +void compressStream ( FILE *stream, FILE *zStream ) +{ + BZFILE* bzf = NULL; + UChar ibuf[5000]; + Int32 nIbuf; + UInt32 nbytes_in_lo32, nbytes_in_hi32; + UInt32 nbytes_out_lo32, nbytes_out_hi32; + Int32 bzerr, bzerr_dummy, ret; + + SET_BINARY_MODE(stream); + SET_BINARY_MODE(zStream); + + if (ferror(stream)) goto errhandler_io; + if (ferror(zStream)) goto errhandler_io; + + bzf = BZ2_bzWriteOpen ( &bzerr, zStream, + blockSize100k, verbosity, workFactor ); + if (bzerr != BZ_OK) goto errhandler; + + if (verbosity >= 2) fprintf ( stderr, "\n" ); + + while (True) { + + if (myfeof(stream)) break; + nIbuf = fread ( ibuf, sizeof(UChar), 5000, stream ); + if (ferror(stream)) goto errhandler_io; + if (nIbuf > 0) BZ2_bzWrite ( &bzerr, bzf, (void*)ibuf, nIbuf ); + if (bzerr != BZ_OK) goto errhandler; + + } + + BZ2_bzWriteClose64 ( &bzerr, bzf, 0, + &nbytes_in_lo32, &nbytes_in_hi32, + &nbytes_out_lo32, &nbytes_out_hi32 ); + if (bzerr != BZ_OK) goto errhandler; + + if (ferror(zStream)) goto errhandler_io; + ret = fflush ( zStream ); + if (ret == EOF) goto errhandler_io; + if (zStream != stdout) { + Int32 fd = fileno ( zStream ); + if (fd < 0) goto errhandler_io; + applySavedFileAttrToOutputFile ( fd ); + ret = fclose ( zStream ); + outputHandleJustInCase = NULL; + if (ret == EOF) goto errhandler_io; + } + outputHandleJustInCase = NULL; + if (ferror(stream)) goto errhandler_io; + ret = fclose ( stream ); + if (ret == EOF) goto errhandler_io; + + if (verbosity >= 1) { + if (nbytes_in_lo32 == 0 && nbytes_in_hi32 == 0) { + fprintf ( stderr, " no data compressed.\n"); + } else { + Char buf_nin[32], buf_nout[32]; + UInt64 nbytes_in, nbytes_out; + double nbytes_in_d, nbytes_out_d; + uInt64_from_UInt32s ( &nbytes_in, + nbytes_in_lo32, nbytes_in_hi32 ); + uInt64_from_UInt32s ( &nbytes_out, + nbytes_out_lo32, nbytes_out_hi32 ); + nbytes_in_d = uInt64_to_double ( &nbytes_in ); + nbytes_out_d = uInt64_to_double ( &nbytes_out ); + uInt64_toAscii ( buf_nin, &nbytes_in ); + uInt64_toAscii ( buf_nout, &nbytes_out ); + fprintf ( stderr, "%6.3f:1, %6.3f bits/byte, " + "%5.2f%% saved, %s in, %s out.\n", + nbytes_in_d / nbytes_out_d, + (8.0 * nbytes_out_d) / nbytes_in_d, + 100.0 * (1.0 - nbytes_out_d / nbytes_in_d), + buf_nin, + buf_nout + ); + } + } + + return; + + errhandler: + BZ2_bzWriteClose64 ( &bzerr_dummy, bzf, 1, + &nbytes_in_lo32, &nbytes_in_hi32, + &nbytes_out_lo32, &nbytes_out_hi32 ); + switch (bzerr) { + case BZ_CONFIG_ERROR: + configError(); break; + case BZ_MEM_ERROR: + outOfMemory (); break; + case BZ_IO_ERROR: + errhandler_io: + ioError(); break; + default: + panic ( "compress:unexpected error" ); + } + + panic ( "compress:end" ); + /*notreached*/ +} + + + +/*---------------------------------------------*/ +static +Bool uncompressStream ( FILE *zStream, FILE *stream ) +{ + BZFILE* bzf = NULL; + Int32 bzerr, bzerr_dummy, ret, nread, streamNo, i; + UChar obuf[5000]; + UChar unused[BZ_MAX_UNUSED]; + Int32 nUnused; + void* unusedTmpV; + UChar* unusedTmp; + + nUnused = 0; + streamNo = 0; + + SET_BINARY_MODE(stream); + SET_BINARY_MODE(zStream); + + if (ferror(stream)) goto errhandler_io; + if (ferror(zStream)) goto errhandler_io; + + while (True) { + + bzf = BZ2_bzReadOpen ( + &bzerr, zStream, verbosity, + (int)smallMode, unused, nUnused + ); + if (bzf == NULL || bzerr != BZ_OK) goto errhandler; + streamNo++; + + while (bzerr == BZ_OK) { + nread = BZ2_bzRead ( &bzerr, bzf, obuf, 5000 ); + if (bzerr == BZ_DATA_ERROR_MAGIC) goto trycat; + if ((bzerr == BZ_OK || bzerr == BZ_STREAM_END) && nread > 0) + fwrite ( obuf, sizeof(UChar), nread, stream ); + if (ferror(stream)) goto errhandler_io; + } + if (bzerr != BZ_STREAM_END) goto errhandler; + + BZ2_bzReadGetUnused ( &bzerr, bzf, &unusedTmpV, &nUnused ); + if (bzerr != BZ_OK) panic ( "decompress:bzReadGetUnused" ); + + unusedTmp = (UChar*)unusedTmpV; + for (i = 0; i < nUnused; i++) unused[i] = unusedTmp[i]; + + BZ2_bzReadClose ( &bzerr, bzf ); + if (bzerr != BZ_OK) panic ( "decompress:bzReadGetUnused" ); + + if (nUnused == 0 && myfeof(zStream)) break; + } + + closeok: + if (ferror(zStream)) goto errhandler_io; + if (stream != stdout) { + Int32 fd = fileno ( stream ); + if (fd < 0) goto errhandler_io; + applySavedFileAttrToOutputFile ( fd ); + } + ret = fclose ( zStream ); + if (ret == EOF) goto errhandler_io; + + if (ferror(stream)) goto errhandler_io; + ret = fflush ( stream ); + if (ret != 0) goto errhandler_io; + if (stream != stdout) { + ret = fclose ( stream ); + outputHandleJustInCase = NULL; + if (ret == EOF) goto errhandler_io; + } + outputHandleJustInCase = NULL; + if (verbosity >= 2) fprintf ( stderr, "\n " ); + return True; + + trycat: + if (forceOverwrite) { + rewind(zStream); + while (True) { + if (myfeof(zStream)) break; + nread = fread ( obuf, sizeof(UChar), 5000, zStream ); + if (ferror(zStream)) goto errhandler_io; + if (nread > 0) fwrite ( obuf, sizeof(UChar), nread, stream ); + if (ferror(stream)) goto errhandler_io; + } + goto closeok; + } + + errhandler: + BZ2_bzReadClose ( &bzerr_dummy, bzf ); + switch (bzerr) { + case BZ_CONFIG_ERROR: + configError(); break; + case BZ_IO_ERROR: + errhandler_io: + ioError(); break; + case BZ_DATA_ERROR: + crcError(); + case BZ_MEM_ERROR: + outOfMemory(); + case BZ_UNEXPECTED_EOF: + compressedStreamEOF(); + case BZ_DATA_ERROR_MAGIC: + if (zStream != stdin) fclose(zStream); + if (stream != stdout) fclose(stream); + if (streamNo == 1) { + return False; + } else { + if (noisy) + fprintf ( stderr, + "\n%s: %s: trailing garbage after EOF ignored\n", + progName, inName ); + return True; + } + default: + panic ( "decompress:unexpected error" ); + } + + panic ( "decompress:end" ); + return True; /*notreached*/ +} + + +/*---------------------------------------------*/ +static +Bool testStream ( FILE *zStream ) +{ + BZFILE* bzf = NULL; + Int32 bzerr, bzerr_dummy, ret, nread, streamNo, i; + UChar obuf[5000]; + UChar unused[BZ_MAX_UNUSED]; + Int32 nUnused; + void* unusedTmpV; + UChar* unusedTmp; + + nUnused = 0; + streamNo = 0; + + SET_BINARY_MODE(zStream); + if (ferror(zStream)) goto errhandler_io; + + while (True) { + + bzf = BZ2_bzReadOpen ( + &bzerr, zStream, verbosity, + (int)smallMode, unused, nUnused + ); + if (bzf == NULL || bzerr != BZ_OK) goto errhandler; + streamNo++; + + while (bzerr == BZ_OK) { + nread = BZ2_bzRead ( &bzerr, bzf, obuf, 5000 ); + if (bzerr == BZ_DATA_ERROR_MAGIC) goto errhandler; + } + if (bzerr != BZ_STREAM_END) goto errhandler; + + BZ2_bzReadGetUnused ( &bzerr, bzf, &unusedTmpV, &nUnused ); + if (bzerr != BZ_OK) panic ( "test:bzReadGetUnused" ); + + unusedTmp = (UChar*)unusedTmpV; + for (i = 0; i < nUnused; i++) unused[i] = unusedTmp[i]; + + BZ2_bzReadClose ( &bzerr, bzf ); + if (bzerr != BZ_OK) panic ( "test:bzReadGetUnused" ); + if (nUnused == 0 && myfeof(zStream)) break; + + } + + if (ferror(zStream)) goto errhandler_io; + ret = fclose ( zStream ); + if (ret == EOF) goto errhandler_io; + + if (verbosity >= 2) fprintf ( stderr, "\n " ); + return True; + + errhandler: + BZ2_bzReadClose ( &bzerr_dummy, bzf ); + if (verbosity == 0) + fprintf ( stderr, "%s: %s: ", progName, inName ); + switch (bzerr) { + case BZ_CONFIG_ERROR: + configError(); break; + case BZ_IO_ERROR: + errhandler_io: + ioError(); break; + case BZ_DATA_ERROR: + fprintf ( stderr, + "data integrity (CRC) error in data\n" ); + return False; + case BZ_MEM_ERROR: + outOfMemory(); + case BZ_UNEXPECTED_EOF: + fprintf ( stderr, + "file ends unexpectedly\n" ); + return False; + case BZ_DATA_ERROR_MAGIC: + if (zStream != stdin) fclose(zStream); + if (streamNo == 1) { + fprintf ( stderr, + "bad magic number (file not created by bzip2)\n" ); + return False; + } else { + if (noisy) + fprintf ( stderr, + "trailing garbage after EOF ignored\n" ); + return True; + } + default: + panic ( "test:unexpected error" ); + } + + panic ( "test:end" ); + return True; /*notreached*/ +} + + +/*---------------------------------------------------*/ +/*--- Error [non-] handling grunge ---*/ +/*---------------------------------------------------*/ + +/*---------------------------------------------*/ +static +void setExit ( Int32 v ) +{ + if (v > exitValue) exitValue = v; +} + + +/*---------------------------------------------*/ +static +void cadvise ( void ) +{ + if (noisy) + fprintf ( + stderr, + "\nIt is possible that the compressed file(s) have become corrupted.\n" + "You can use the -tvv option to test integrity of such files.\n\n" + "You can use the `bzip2recover' program to attempt to recover\n" + "data from undamaged sections of corrupted files.\n\n" + ); +} + + +/*---------------------------------------------*/ +static +void showFileNames ( void ) +{ + if (noisy) + fprintf ( + stderr, + "\tInput file = %s, output file = %s\n", + inName, outName + ); +} + + +/*---------------------------------------------*/ +static +void cleanUpAndFail ( Int32 ec ) +{ + IntNative retVal; + struct MY_STAT statBuf; + + if ( srcMode == SM_F2F + && opMode != OM_TEST + && deleteOutputOnInterrupt ) { + + /* Check whether input file still exists. Delete output file + only if input exists to avoid loss of data. Joerg Prante, 5 + January 2002. (JRS 06-Jan-2002: other changes in 1.0.2 mean + this is less likely to happen. But to be ultra-paranoid, we + do the check anyway.) */ + retVal = MY_STAT ( inName, &statBuf ); + if (retVal == 0) { + if (noisy) + fprintf ( stderr, + "%s: Deleting output file %s, if it exists.\n", + progName, outName ); + if (outputHandleJustInCase != NULL) + fclose ( outputHandleJustInCase ); + retVal = remove ( outName ); + if (retVal != 0) + fprintf ( stderr, + "%s: WARNING: deletion of output file " + "(apparently) failed.\n", + progName ); + } else { + fprintf ( stderr, + "%s: WARNING: deletion of output file suppressed\n", + progName ); + fprintf ( stderr, + "%s: since input file no longer exists. Output file\n", + progName ); + fprintf ( stderr, + "%s: `%s' may be incomplete.\n", + progName, outName ); + fprintf ( stderr, + "%s: I suggest doing an integrity test (bzip2 -tv)" + " of it.\n", + progName ); + } + } + + if (noisy && numFileNames > 0 && numFilesProcessed < numFileNames) { + fprintf ( stderr, + "%s: WARNING: some files have not been processed:\n" + "%s: %d specified on command line, %d not processed yet.\n\n", + progName, progName, + numFileNames, numFileNames - numFilesProcessed ); + } + setExit(ec); + exit(exitValue); +} + + +/*---------------------------------------------*/ +static +void panic ( const Char* s ) +{ + fprintf ( stderr, + "\n%s: PANIC -- internal consistency error:\n" + "\t%s\n" + "\tThis is a BUG. Please report it to me at:\n" + "\tjseward@bzip.org\n", + progName, s ); + showFileNames(); + cleanUpAndFail( 3 ); +} + + +/*---------------------------------------------*/ +static +void crcError ( void ) +{ + fprintf ( stderr, + "\n%s: Data integrity error when decompressing.\n", + progName ); + showFileNames(); + cadvise(); + cleanUpAndFail( 2 ); +} + + +/*---------------------------------------------*/ +static +void compressedStreamEOF ( void ) +{ + if (noisy) { + fprintf ( stderr, + "\n%s: Compressed file ends unexpectedly;\n\t" + "perhaps it is corrupted? *Possible* reason follows.\n", + progName ); + perror ( progName ); + showFileNames(); + cadvise(); + } + cleanUpAndFail( 2 ); +} + + +/*---------------------------------------------*/ +static +void ioError ( void ) +{ + fprintf ( stderr, + "\n%s: I/O or other error, bailing out. " + "Possible reason follows.\n", + progName ); + perror ( progName ); + showFileNames(); + cleanUpAndFail( 1 ); +} + + +/*---------------------------------------------*/ +static +void mySignalCatcher ( IntNative n ) +{ + fprintf ( stderr, + "\n%s: Control-C or similar caught, quitting.\n", + progName ); + cleanUpAndFail(1); +} + + +/*---------------------------------------------*/ +static +void mySIGSEGVorSIGBUScatcher ( IntNative n ) +{ + if (opMode == OM_Z) + fprintf ( + stderr, + "\n%s: Caught a SIGSEGV or SIGBUS whilst compressing.\n" + "\n" + " Possible causes are (most likely first):\n" + " (1) This computer has unreliable memory or cache hardware\n" + " (a surprisingly common problem; try a different machine.)\n" + " (2) A bug in the compiler used to create this executable\n" + " (unlikely, if you didn't compile bzip2 yourself.)\n" + " (3) A real bug in bzip2 -- I hope this should never be the case.\n" + " The user's manual, Section 4.3, has more info on (1) and (2).\n" + " \n" + " If you suspect this is a bug in bzip2, or are unsure about (1)\n" + " or (2), feel free to report it to me at: jseward@bzip.org.\n" + " Section 4.3 of the user's manual describes the info a useful\n" + " bug report should have. If the manual is available on your\n" + " system, please try and read it before mailing me. If you don't\n" + " have the manual or can't be bothered to read it, mail me anyway.\n" + "\n", + progName ); + else + fprintf ( + stderr, + "\n%s: Caught a SIGSEGV or SIGBUS whilst decompressing.\n" + "\n" + " Possible causes are (most likely first):\n" + " (1) The compressed data is corrupted, and bzip2's usual checks\n" + " failed to detect this. Try bzip2 -tvv my_file.bz2.\n" + " (2) This computer has unreliable memory or cache hardware\n" + " (a surprisingly common problem; try a different machine.)\n" + " (3) A bug in the compiler used to create this executable\n" + " (unlikely, if you didn't compile bzip2 yourself.)\n" + " (4) A real bug in bzip2 -- I hope this should never be the case.\n" + " The user's manual, Section 4.3, has more info on (2) and (3).\n" + " \n" + " If you suspect this is a bug in bzip2, or are unsure about (2)\n" + " or (3), feel free to report it to me at: jseward@bzip.org.\n" + " Section 4.3 of the user's manual describes the info a useful\n" + " bug report should have. If the manual is available on your\n" + " system, please try and read it before mailing me. If you don't\n" + " have the manual or can't be bothered to read it, mail me anyway.\n" + "\n", + progName ); + + showFileNames(); + if (opMode == OM_Z) + cleanUpAndFail( 3 ); else + { cadvise(); cleanUpAndFail( 2 ); } +} + + +/*---------------------------------------------*/ +static +void outOfMemory ( void ) +{ + fprintf ( stderr, + "\n%s: couldn't allocate enough memory\n", + progName ); + showFileNames(); + cleanUpAndFail(1); +} + + +/*---------------------------------------------*/ +static +void configError ( void ) +{ + fprintf ( stderr, + "bzip2: I'm not configured correctly for this platform!\n" + "\tI require Int32, Int16 and Char to have sizes\n" + "\tof 4, 2 and 1 bytes to run properly, and they don't.\n" + "\tProbably you can fix this by defining them correctly,\n" + "\tand recompiling. Bye!\n" ); + setExit(3); + exit(exitValue); +} + + +/*---------------------------------------------------*/ +/*--- The main driver machinery ---*/ +/*---------------------------------------------------*/ + +/* All rather crufty. The main problem is that input files + are stat()d multiple times before use. This should be + cleaned up. +*/ + +/*---------------------------------------------*/ +static +void pad ( Char *s ) +{ + Int32 i; + if ( (Int32)strlen(s) >= longestFileName ) return; + for (i = 1; i <= longestFileName - (Int32)strlen(s); i++) + fprintf ( stderr, " " ); +} + + +/*---------------------------------------------*/ +static +void copyFileName ( Char* to, Char* from ) +{ + if ( strlen(from) > FILE_NAME_LEN-10 ) { + fprintf ( + stderr, + "bzip2: file name\n`%s'\n" + "is suspiciously (more than %d chars) long.\n" + "Try using a reasonable file name instead. Sorry! :-)\n", + from, FILE_NAME_LEN-10 + ); + setExit(1); + exit(exitValue); + } + + strncpy(to,from,FILE_NAME_LEN-10); + to[FILE_NAME_LEN-10]='\0'; +} + + +/*---------------------------------------------*/ +static +Bool fileExists ( Char* name ) +{ + FILE *tmp = fopen ( name, "rb" ); + Bool exists = (tmp != NULL); + if (tmp != NULL) fclose ( tmp ); + return exists; +} + + +/*---------------------------------------------*/ +/* Open an output file safely with O_EXCL and good permissions. + This avoids a race condition in versions < 1.0.2, in which + the file was first opened and then had its interim permissions + set safely. We instead use open() to create the file with + the interim permissions required. (--- --- rw-). + + For non-Unix platforms, if we are not worrying about + security issues, simple this simply behaves like fopen. +*/ +static +FILE* fopen_output_safely ( Char* name, const char* mode ) +{ +# if BZ_UNIX + FILE* fp; + IntNative fh; + fh = open(name, O_WRONLY|O_CREAT|O_EXCL, S_IWUSR|S_IRUSR); + if (fh == -1) return NULL; + fp = fdopen(fh, mode); + if (fp == NULL) close(fh); + return fp; +# else + return fopen(name, mode); +# endif +} + + +/*---------------------------------------------*/ +/*-- + if in doubt, return True +--*/ +static +Bool notAStandardFile ( Char* name ) +{ + IntNative i; + struct MY_STAT statBuf; + + i = MY_LSTAT ( name, &statBuf ); + if (i != 0) return True; + if (MY_S_ISREG(statBuf.st_mode)) return False; + return True; +} + + +/*---------------------------------------------*/ +/*-- + rac 11/21/98 see if file has hard links to it +--*/ +static +Int32 countHardLinks ( Char* name ) +{ + IntNative i; + struct MY_STAT statBuf; + + i = MY_LSTAT ( name, &statBuf ); + if (i != 0) return 0; + return (statBuf.st_nlink - 1); +} + + +/*---------------------------------------------*/ +/* Copy modification date, access date, permissions and owner from the + source to destination file. We have to copy this meta-info off + into fileMetaInfo before starting to compress / decompress it, + because doing it afterwards means we get the wrong access time. + + To complicate matters, in compress() and decompress() below, the + sequence of tests preceding the call to saveInputFileMetaInfo() + involves calling fileExists(), which in turn establishes its result + by attempting to fopen() the file, and if successful, immediately + fclose()ing it again. So we have to assume that the fopen() call + does not cause the access time field to be updated. + + Reading of the man page for stat() (man 2 stat) on RedHat 7.2 seems + to imply that merely doing open() will not affect the access time. + Therefore we merely need to hope that the C library only does + open() as a result of fopen(), and not any kind of read()-ahead + cleverness. + + It sounds pretty fragile to me. Whether this carries across + robustly to arbitrary Unix-like platforms (or even works robustly + on this one, RedHat 7.2) is unknown to me. Nevertheless ... +*/ +#if BZ_UNIX +static +struct MY_STAT fileMetaInfo; +#endif + +static +void saveInputFileMetaInfo ( Char *srcName ) +{ +# if BZ_UNIX + IntNative retVal; + /* Note use of stat here, not lstat. */ + retVal = MY_STAT( srcName, &fileMetaInfo ); + ERROR_IF_NOT_ZERO ( retVal ); +# endif +} + + +static +void applySavedTimeInfoToOutputFile ( Char *dstName ) +{ +# if BZ_UNIX + IntNative retVal; + struct utimbuf uTimBuf; + + uTimBuf.actime = fileMetaInfo.st_atime; + uTimBuf.modtime = fileMetaInfo.st_mtime; + + retVal = utime ( dstName, &uTimBuf ); + ERROR_IF_NOT_ZERO ( retVal ); +# endif +} + +static +void applySavedFileAttrToOutputFile ( IntNative fd ) +{ +# if BZ_UNIX + IntNative retVal; + + retVal = fchmod ( fd, fileMetaInfo.st_mode ); + ERROR_IF_NOT_ZERO ( retVal ); + + (void) fchown ( fd, fileMetaInfo.st_uid, fileMetaInfo.st_gid ); + /* chown() will in many cases return with EPERM, which can + be safely ignored. + */ +# endif +} + + +/*---------------------------------------------*/ +static +Bool containsDubiousChars ( Char* name ) +{ +# if BZ_UNIX + /* On unix, files can contain any characters and the file expansion + * is performed by the shell. + */ + return False; +# else /* ! BZ_UNIX */ + /* On non-unix (Win* platforms), wildcard characters are not allowed in + * filenames. + */ + for (; *name != '\0'; name++) + if (*name == '?' || *name == '*') return True; + return False; +# endif /* BZ_UNIX */ +} + + +/*---------------------------------------------*/ +#define BZ_N_SUFFIX_PAIRS 4 + +const Char* zSuffix[BZ_N_SUFFIX_PAIRS] + = { ".bz2", ".bz", ".tbz2", ".tbz" }; +const Char* unzSuffix[BZ_N_SUFFIX_PAIRS] + = { "", "", ".tar", ".tar" }; + +static +Bool hasSuffix ( Char* s, const Char* suffix ) +{ + Int32 ns = strlen(s); + Int32 nx = strlen(suffix); + if (ns < nx) return False; + if (strcmp(s + ns - nx, suffix) == 0) return True; + return False; +} + +static +Bool mapSuffix ( Char* name, + const Char* oldSuffix, + const Char* newSuffix ) +{ + if (!hasSuffix(name,oldSuffix)) return False; + name[strlen(name)-strlen(oldSuffix)] = 0; + strcat ( name, newSuffix ); + return True; +} + + +/*---------------------------------------------*/ +static +void compress ( Char *name ) +{ + FILE *inStr; + FILE *outStr; + Int32 n, i; + struct MY_STAT statBuf; + + deleteOutputOnInterrupt = False; + + if (name == NULL && srcMode != SM_I2O) + panic ( "compress: bad modes\n" ); + + switch (srcMode) { + case SM_I2O: + copyFileName ( inName, (Char*)"(stdin)" ); + copyFileName ( outName, (Char*)"(stdout)" ); + break; + case SM_F2F: + copyFileName ( inName, name ); + copyFileName ( outName, name ); + strcat ( outName, ".bz2" ); + break; + case SM_F2O: + copyFileName ( inName, name ); + copyFileName ( outName, (Char*)"(stdout)" ); + break; + } + + if ( srcMode != SM_I2O && containsDubiousChars ( inName ) ) { + if (noisy) + fprintf ( stderr, "%s: There are no files matching `%s'.\n", + progName, inName ); + setExit(1); + return; + } + if ( srcMode != SM_I2O && !fileExists ( inName ) ) { + fprintf ( stderr, "%s: Can't open input file %s: %s.\n", + progName, inName, strerror(errno) ); + setExit(1); + return; + } + for (i = 0; i < BZ_N_SUFFIX_PAIRS; i++) { + if (hasSuffix(inName, zSuffix[i])) { + if (noisy) + fprintf ( stderr, + "%s: Input file %s already has %s suffix.\n", + progName, inName, zSuffix[i] ); + setExit(1); + return; + } + } + if ( srcMode == SM_F2F || srcMode == SM_F2O ) { + MY_STAT(inName, &statBuf); + if ( MY_S_ISDIR(statBuf.st_mode) ) { + fprintf( stderr, + "%s: Input file %s is a directory.\n", + progName,inName); + setExit(1); + return; + } + } + if ( srcMode == SM_F2F && !forceOverwrite && notAStandardFile ( inName )) { + if (noisy) + fprintf ( stderr, "%s: Input file %s is not a normal file.\n", + progName, inName ); + setExit(1); + return; + } + if ( srcMode == SM_F2F && fileExists ( outName ) ) { + if (forceOverwrite) { + remove(outName); + } else { + fprintf ( stderr, "%s: Output file %s already exists.\n", + progName, outName ); + setExit(1); + return; + } + } + if ( srcMode == SM_F2F && !forceOverwrite && + (n=countHardLinks ( inName )) > 0) { + fprintf ( stderr, "%s: Input file %s has %d other link%s.\n", + progName, inName, n, n > 1 ? "s" : "" ); + setExit(1); + return; + } + + if ( srcMode == SM_F2F ) { + /* Save the file's meta-info before we open it. Doing it later + means we mess up the access times. */ + saveInputFileMetaInfo ( inName ); + } + + switch ( srcMode ) { + + case SM_I2O: + inStr = stdin; + outStr = stdout; + if ( isatty ( fileno ( stdout ) ) ) { + fprintf ( stderr, + "%s: I won't write compressed data to a terminal.\n", + progName ); + fprintf ( stderr, "%s: For help, type: `%s --help'.\n", + progName, progName ); + setExit(1); + return; + }; + break; + + case SM_F2O: + inStr = fopen ( inName, "rb" ); + outStr = stdout; + if ( isatty ( fileno ( stdout ) ) ) { + fprintf ( stderr, + "%s: I won't write compressed data to a terminal.\n", + progName ); + fprintf ( stderr, "%s: For help, type: `%s --help'.\n", + progName, progName ); + if ( inStr != NULL ) fclose ( inStr ); + setExit(1); + return; + }; + if ( inStr == NULL ) { + fprintf ( stderr, "%s: Can't open input file %s: %s.\n", + progName, inName, strerror(errno) ); + setExit(1); + return; + }; + break; + + case SM_F2F: + inStr = fopen ( inName, "rb" ); + outStr = fopen_output_safely ( outName, "wb" ); + if ( outStr == NULL) { + fprintf ( stderr, "%s: Can't create output file %s: %s.\n", + progName, outName, strerror(errno) ); + if ( inStr != NULL ) fclose ( inStr ); + setExit(1); + return; + } + if ( inStr == NULL ) { + fprintf ( stderr, "%s: Can't open input file %s: %s.\n", + progName, inName, strerror(errno) ); + if ( outStr != NULL ) fclose ( outStr ); + setExit(1); + return; + }; + break; + + default: + panic ( "compress: bad srcMode" ); + break; + } + + if (verbosity >= 1) { + fprintf ( stderr, " %s: ", inName ); + pad ( inName ); + fflush ( stderr ); + } + + /*--- Now the input and output handles are sane. Do the Biz. ---*/ + outputHandleJustInCase = outStr; + deleteOutputOnInterrupt = True; + compressStream ( inStr, outStr ); + outputHandleJustInCase = NULL; + + /*--- If there was an I/O error, we won't get here. ---*/ + if ( srcMode == SM_F2F ) { + applySavedTimeInfoToOutputFile ( outName ); + deleteOutputOnInterrupt = False; + if ( !keepInputFiles ) { + IntNative retVal = remove ( inName ); + ERROR_IF_NOT_ZERO ( retVal ); + } + } + + deleteOutputOnInterrupt = False; +} + + +/*---------------------------------------------*/ +static +void uncompress ( Char *name ) +{ + FILE *inStr; + FILE *outStr; + Int32 n, i; + Bool magicNumberOK; + Bool cantGuess; + struct MY_STAT statBuf; + + deleteOutputOnInterrupt = False; + + if (name == NULL && srcMode != SM_I2O) + panic ( "uncompress: bad modes\n" ); + + cantGuess = False; + switch (srcMode) { + case SM_I2O: + copyFileName ( inName, (Char*)"(stdin)" ); + copyFileName ( outName, (Char*)"(stdout)" ); + break; + case SM_F2F: + copyFileName ( inName, name ); + copyFileName ( outName, name ); + for (i = 0; i < BZ_N_SUFFIX_PAIRS; i++) + if (mapSuffix(outName,zSuffix[i],unzSuffix[i])) + goto zzz; + cantGuess = True; + strcat ( outName, ".out" ); + break; + case SM_F2O: + copyFileName ( inName, name ); + copyFileName ( outName, (Char*)"(stdout)" ); + break; + } + + zzz: + if ( srcMode != SM_I2O && containsDubiousChars ( inName ) ) { + if (noisy) + fprintf ( stderr, "%s: There are no files matching `%s'.\n", + progName, inName ); + setExit(1); + return; + } + if ( srcMode != SM_I2O && !fileExists ( inName ) ) { + fprintf ( stderr, "%s: Can't open input file %s: %s.\n", + progName, inName, strerror(errno) ); + setExit(1); + return; + } + if ( srcMode == SM_F2F || srcMode == SM_F2O ) { + MY_STAT(inName, &statBuf); + if ( MY_S_ISDIR(statBuf.st_mode) ) { + fprintf( stderr, + "%s: Input file %s is a directory.\n", + progName,inName); + setExit(1); + return; + } + } + if ( srcMode == SM_F2F && !forceOverwrite && notAStandardFile ( inName )) { + if (noisy) + fprintf ( stderr, "%s: Input file %s is not a normal file.\n", + progName, inName ); + setExit(1); + return; + } + if ( /* srcMode == SM_F2F implied && */ cantGuess ) { + if (noisy) + fprintf ( stderr, + "%s: Can't guess original name for %s -- using %s\n", + progName, inName, outName ); + /* just a warning, no return */ + } + if ( srcMode == SM_F2F && fileExists ( outName ) ) { + if (forceOverwrite) { + remove(outName); + } else { + fprintf ( stderr, "%s: Output file %s already exists.\n", + progName, outName ); + setExit(1); + return; + } + } + if ( srcMode == SM_F2F && !forceOverwrite && + (n=countHardLinks ( inName ) ) > 0) { + fprintf ( stderr, "%s: Input file %s has %d other link%s.\n", + progName, inName, n, n > 1 ? "s" : "" ); + setExit(1); + return; + } + + if ( srcMode == SM_F2F ) { + /* Save the file's meta-info before we open it. Doing it later + means we mess up the access times. */ + saveInputFileMetaInfo ( inName ); + } + + switch ( srcMode ) { + + case SM_I2O: + inStr = stdin; + outStr = stdout; + if ( isatty ( fileno ( stdin ) ) ) { + fprintf ( stderr, + "%s: I won't read compressed data from a terminal.\n", + progName ); + fprintf ( stderr, "%s: For help, type: `%s --help'.\n", + progName, progName ); + setExit(1); + return; + }; + break; + + case SM_F2O: + inStr = fopen ( inName, "rb" ); + outStr = stdout; + if ( inStr == NULL ) { + fprintf ( stderr, "%s: Can't open input file %s:%s.\n", + progName, inName, strerror(errno) ); + if ( inStr != NULL ) fclose ( inStr ); + setExit(1); + return; + }; + break; + + case SM_F2F: + inStr = fopen ( inName, "rb" ); + outStr = fopen_output_safely ( outName, "wb" ); + if ( outStr == NULL) { + fprintf ( stderr, "%s: Can't create output file %s: %s.\n", + progName, outName, strerror(errno) ); + if ( inStr != NULL ) fclose ( inStr ); + setExit(1); + return; + } + if ( inStr == NULL ) { + fprintf ( stderr, "%s: Can't open input file %s: %s.\n", + progName, inName, strerror(errno) ); + if ( outStr != NULL ) fclose ( outStr ); + setExit(1); + return; + }; + break; + + default: + panic ( "uncompress: bad srcMode" ); + break; + } + + if (verbosity >= 1) { + fprintf ( stderr, " %s: ", inName ); + pad ( inName ); + fflush ( stderr ); + } + + /*--- Now the input and output handles are sane. Do the Biz. ---*/ + outputHandleJustInCase = outStr; + deleteOutputOnInterrupt = True; + magicNumberOK = uncompressStream ( inStr, outStr ); + outputHandleJustInCase = NULL; + + /*--- If there was an I/O error, we won't get here. ---*/ + if ( magicNumberOK ) { + if ( srcMode == SM_F2F ) { + applySavedTimeInfoToOutputFile ( outName ); + deleteOutputOnInterrupt = False; + if ( !keepInputFiles ) { + IntNative retVal = remove ( inName ); + ERROR_IF_NOT_ZERO ( retVal ); + } + } + } else { + unzFailsExist = True; + deleteOutputOnInterrupt = False; + if ( srcMode == SM_F2F ) { + IntNative retVal = remove ( outName ); + ERROR_IF_NOT_ZERO ( retVal ); + } + } + deleteOutputOnInterrupt = False; + + if ( magicNumberOK ) { + if (verbosity >= 1) + fprintf ( stderr, "done\n" ); + } else { + setExit(2); + if (verbosity >= 1) + fprintf ( stderr, "not a bzip2 file.\n" ); else + fprintf ( stderr, + "%s: %s is not a bzip2 file.\n", + progName, inName ); + } + +} + + +/*---------------------------------------------*/ +static +void testf ( Char *name ) +{ + FILE *inStr; + Bool allOK; + struct MY_STAT statBuf; + + deleteOutputOnInterrupt = False; + + if (name == NULL && srcMode != SM_I2O) + panic ( "testf: bad modes\n" ); + + copyFileName ( outName, (Char*)"(none)" ); + switch (srcMode) { + case SM_I2O: copyFileName ( inName, (Char*)"(stdin)" ); break; + case SM_F2F: copyFileName ( inName, name ); break; + case SM_F2O: copyFileName ( inName, name ); break; + } + + if ( srcMode != SM_I2O && containsDubiousChars ( inName ) ) { + if (noisy) + fprintf ( stderr, "%s: There are no files matching `%s'.\n", + progName, inName ); + setExit(1); + return; + } + if ( srcMode != SM_I2O && !fileExists ( inName ) ) { + fprintf ( stderr, "%s: Can't open input %s: %s.\n", + progName, inName, strerror(errno) ); + setExit(1); + return; + } + if ( srcMode != SM_I2O ) { + MY_STAT(inName, &statBuf); + if ( MY_S_ISDIR(statBuf.st_mode) ) { + fprintf( stderr, + "%s: Input file %s is a directory.\n", + progName,inName); + setExit(1); + return; + } + } + + switch ( srcMode ) { + + case SM_I2O: + if ( isatty ( fileno ( stdin ) ) ) { + fprintf ( stderr, + "%s: I won't read compressed data from a terminal.\n", + progName ); + fprintf ( stderr, "%s: For help, type: `%s --help'.\n", + progName, progName ); + setExit(1); + return; + }; + inStr = stdin; + break; + + case SM_F2O: case SM_F2F: + inStr = fopen ( inName, "rb" ); + if ( inStr == NULL ) { + fprintf ( stderr, "%s: Can't open input file %s:%s.\n", + progName, inName, strerror(errno) ); + setExit(1); + return; + }; + break; + + default: + panic ( "testf: bad srcMode" ); + break; + } + + if (verbosity >= 1) { + fprintf ( stderr, " %s: ", inName ); + pad ( inName ); + fflush ( stderr ); + } + + /*--- Now the input handle is sane. Do the Biz. ---*/ + outputHandleJustInCase = NULL; + allOK = testStream ( inStr ); + + if (allOK && verbosity >= 1) fprintf ( stderr, "ok\n" ); + if (!allOK) testFailsExist = True; +} + + +/*---------------------------------------------*/ +static +void license ( void ) +{ + fprintf ( stderr, + + "bzip2, a block-sorting file compressor. " + "Version %s.\n" + " \n" + " Copyright (C) 1996-2007 by Julian Seward.\n" + " \n" + " This program is free software; you can redistribute it and/or modify\n" + " it under the terms set out in the LICENSE file, which is included\n" + " in the bzip2-1.0.5 source distribution.\n" + " \n" + " This program is distributed in the hope that it will be useful,\n" + " but WITHOUT ANY WARRANTY; without even the implied warranty of\n" + " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" + " LICENSE file for more details.\n" + " \n", + BZ2_bzlibVersion() + ); +} + + +/*---------------------------------------------*/ +static +void usage ( Char *fullProgName ) +{ + fprintf ( + stderr, + "bzip2, a block-sorting file compressor. " + "Version %s.\n" + "\n usage: %s [flags and input files in any order]\n" + "\n" + " -h --help print this message\n" + " -d --decompress force decompression\n" + " -z --compress force compression\n" + " -k --keep keep (don't delete) input files\n" + " -f --force overwrite existing output files\n" + " -t --test test compressed file integrity\n" + " -c --stdout output to standard out\n" + " -q --quiet suppress noncritical error messages\n" + " -v --verbose be verbose (a 2nd -v gives more)\n" + " -L --license display software version & license\n" + " -V --version display software version & license\n" + " -s --small use less memory (at most 2500k)\n" + " -1 .. -9 set block size to 100k .. 900k\n" + " --fast alias for -1\n" + " --best alias for -9\n" + "\n" + " If invoked as `bzip2', default action is to compress.\n" + " as `bunzip2', default action is to decompress.\n" + " as `bzcat', default action is to decompress to stdout.\n" + "\n" + " If no file names are given, bzip2 compresses or decompresses\n" + " from standard input to standard output. You can combine\n" + " short flags, so `-v -4' means the same as -v4 or -4v, &c.\n" +# if BZ_UNIX + "\n" +# endif + , + + BZ2_bzlibVersion(), + fullProgName + ); +} + + +/*---------------------------------------------*/ +static +void redundant ( Char* flag ) +{ + fprintf ( + stderr, + "%s: %s is redundant in versions 0.9.5 and above\n", + progName, flag ); +} + + +/*---------------------------------------------*/ +/*-- + All the garbage from here to main() is purely to + implement a linked list of command-line arguments, + into which main() copies argv[1 .. argc-1]. + + The purpose of this exercise is to facilitate + the expansion of wildcard characters * and ? in + filenames for OSs which don't know how to do it + themselves, like MSDOS, Windows 95 and NT. + + The actual Dirty Work is done by the platform- + specific macro APPEND_FILESPEC. +--*/ + +typedef + struct zzzz { + Char *name; + struct zzzz *link; + } + Cell; + + +/*---------------------------------------------*/ +static +void *myMalloc ( Int32 n ) +{ + void* p; + + p = malloc ( (size_t)n ); + if (p == NULL) outOfMemory (); + return p; +} + + +/*---------------------------------------------*/ +static +Cell *mkCell ( void ) +{ + Cell *c; + + c = (Cell*) myMalloc ( sizeof ( Cell ) ); + c->name = NULL; + c->link = NULL; + return c; +} + + +/*---------------------------------------------*/ +static +Cell *snocString ( Cell *root, Char *name ) +{ + if (root == NULL) { + Cell *tmp = mkCell(); + tmp->name = (Char*) myMalloc ( 5 + strlen(name) ); + strcpy ( tmp->name, name ); + return tmp; + } else { + Cell *tmp = root; + while (tmp->link != NULL) tmp = tmp->link; + tmp->link = snocString ( tmp->link, name ); + return root; + } +} + + +/*---------------------------------------------*/ +static +void addFlagsFromEnvVar ( Cell** argList, Char* varName ) +{ + Int32 i, j, k; + Char *envbase, *p; + + envbase = getenv(varName); + if (envbase != NULL) { + p = envbase; + i = 0; + while (True) { + if (p[i] == 0) break; + p += i; + i = 0; + while (isspace((Int32)(p[0]))) p++; + while (p[i] != 0 && !isspace((Int32)(p[i]))) i++; + if (i > 0) { + k = i; if (k > FILE_NAME_LEN-10) k = FILE_NAME_LEN-10; + for (j = 0; j < k; j++) tmpName[j] = p[j]; + tmpName[k] = 0; + APPEND_FLAG(*argList, tmpName); + } + } + } +} + + +/*---------------------------------------------*/ +#define ISFLAG(s) (strcmp(aa->name, (s))==0) + +IntNative main ( IntNative argc, Char *argv[] ) +{ + Int32 i, j; + Char *tmp; + Cell *argList; + Cell *aa; + Bool decode; + + /*-- Be really really really paranoid :-) --*/ + if (sizeof(Int32) != 4 || sizeof(UInt32) != 4 || + sizeof(Int16) != 2 || sizeof(UInt16) != 2 || + sizeof(Char) != 1 || sizeof(UChar) != 1) + configError(); + + /*-- Initialise --*/ + outputHandleJustInCase = NULL; + smallMode = False; + keepInputFiles = False; + forceOverwrite = False; + noisy = True; + verbosity = 0; + blockSize100k = 9; + testFailsExist = False; + unzFailsExist = False; + numFileNames = 0; + numFilesProcessed = 0; + workFactor = 30; + deleteOutputOnInterrupt = False; + exitValue = 0; + i = j = 0; /* avoid bogus warning from egcs-1.1.X */ + + /*-- Set up signal handlers for mem access errors --*/ + signal (SIGSEGV, mySIGSEGVorSIGBUScatcher); +# if BZ_UNIX +# ifndef __DJGPP__ + signal (SIGBUS, mySIGSEGVorSIGBUScatcher); +# endif +# endif + + copyFileName ( inName, (Char*)"(none)" ); + copyFileName ( outName, (Char*)"(none)" ); + + copyFileName ( progNameReally, argv[0] ); + progName = &progNameReally[0]; + for (tmp = &progNameReally[0]; *tmp != '\0'; tmp++) + if (*tmp == PATH_SEP) progName = tmp + 1; + + + /*-- Copy flags from env var BZIP2, and + expand filename wildcards in arg list. + --*/ + argList = NULL; + addFlagsFromEnvVar ( &argList, (Char*)"BZIP2" ); + addFlagsFromEnvVar ( &argList, (Char*)"BZIP" ); + for (i = 1; i <= argc-1; i++) + APPEND_FILESPEC(argList, argv[i]); + + + /*-- Find the length of the longest filename --*/ + longestFileName = 7; + numFileNames = 0; + decode = True; + for (aa = argList; aa != NULL; aa = aa->link) { + if (ISFLAG("--")) { decode = False; continue; } + if (aa->name[0] == '-' && decode) continue; + numFileNames++; + if (longestFileName < (Int32)strlen(aa->name) ) + longestFileName = (Int32)strlen(aa->name); + } + + + /*-- Determine source modes; flag handling may change this too. --*/ + if (numFileNames == 0) + srcMode = SM_I2O; else srcMode = SM_F2F; + + + /*-- Determine what to do (compress/uncompress/test/cat). --*/ + /*-- Note that subsequent flag handling may change this. --*/ + opMode = OM_Z; + + if ( (strstr ( progName, "unzip" ) != 0) || + (strstr ( progName, "UNZIP" ) != 0) ) + opMode = OM_UNZ; + + if ( (strstr ( progName, "z2cat" ) != 0) || + (strstr ( progName, "Z2CAT" ) != 0) || + (strstr ( progName, "zcat" ) != 0) || + (strstr ( progName, "ZCAT" ) != 0) ) { + opMode = OM_UNZ; + srcMode = (numFileNames == 0) ? SM_I2O : SM_F2O; + } + + + /*-- Look at the flags. --*/ + for (aa = argList; aa != NULL; aa = aa->link) { + if (ISFLAG("--")) break; + if (aa->name[0] == '-' && aa->name[1] != '-') { + for (j = 1; aa->name[j] != '\0'; j++) { + switch (aa->name[j]) { + case 'c': srcMode = SM_F2O; break; + case 'd': opMode = OM_UNZ; break; + case 'z': opMode = OM_Z; break; + case 'f': forceOverwrite = True; break; + case 't': opMode = OM_TEST; break; + case 'k': keepInputFiles = True; break; + case 's': smallMode = True; break; + case 'q': noisy = False; break; + case '1': blockSize100k = 1; break; + case '2': blockSize100k = 2; break; + case '3': blockSize100k = 3; break; + case '4': blockSize100k = 4; break; + case '5': blockSize100k = 5; break; + case '6': blockSize100k = 6; break; + case '7': blockSize100k = 7; break; + case '8': blockSize100k = 8; break; + case '9': blockSize100k = 9; break; + case 'V': + case 'L': license(); break; + case 'v': verbosity++; break; + case 'h': usage ( progName ); + exit ( 0 ); + break; + default: fprintf ( stderr, "%s: Bad flag `%s'\n", + progName, aa->name ); + usage ( progName ); + exit ( 1 ); + break; + } + } + } + } + + /*-- And again ... --*/ + for (aa = argList; aa != NULL; aa = aa->link) { + if (ISFLAG("--")) break; + if (ISFLAG("--stdout")) srcMode = SM_F2O; else + if (ISFLAG("--decompress")) opMode = OM_UNZ; else + if (ISFLAG("--compress")) opMode = OM_Z; else + if (ISFLAG("--force")) forceOverwrite = True; else + if (ISFLAG("--test")) opMode = OM_TEST; else + if (ISFLAG("--keep")) keepInputFiles = True; else + if (ISFLAG("--small")) smallMode = True; else + if (ISFLAG("--quiet")) noisy = False; else + if (ISFLAG("--version")) license(); else + if (ISFLAG("--license")) license(); else + if (ISFLAG("--exponential")) workFactor = 1; else + if (ISFLAG("--repetitive-best")) redundant(aa->name); else + if (ISFLAG("--repetitive-fast")) redundant(aa->name); else + if (ISFLAG("--fast")) blockSize100k = 1; else + if (ISFLAG("--best")) blockSize100k = 9; else + if (ISFLAG("--verbose")) verbosity++; else + if (ISFLAG("--help")) { usage ( progName ); exit ( 0 ); } + else + if (strncmp ( aa->name, "--", 2) == 0) { + fprintf ( stderr, "%s: Bad flag `%s'\n", progName, aa->name ); + usage ( progName ); + exit ( 1 ); + } + } + + if (verbosity > 4) verbosity = 4; + if (opMode == OM_Z && smallMode && blockSize100k > 2) + blockSize100k = 2; + + if (opMode == OM_TEST && srcMode == SM_F2O) { + fprintf ( stderr, "%s: -c and -t cannot be used together.\n", + progName ); + exit ( 1 ); + } + + if (srcMode == SM_F2O && numFileNames == 0) + srcMode = SM_I2O; + + if (opMode != OM_Z) blockSize100k = 0; + + if (srcMode == SM_F2F) { + signal (SIGINT, mySignalCatcher); + signal (SIGTERM, mySignalCatcher); +# if BZ_UNIX + signal (SIGHUP, mySignalCatcher); +# endif + } + + if (opMode == OM_Z) { + if (srcMode == SM_I2O) { + compress ( NULL ); + } else { + decode = True; + for (aa = argList; aa != NULL; aa = aa->link) { + if (ISFLAG("--")) { decode = False; continue; } + if (aa->name[0] == '-' && decode) continue; + numFilesProcessed++; + compress ( aa->name ); + } + } + } + else + + if (opMode == OM_UNZ) { + unzFailsExist = False; + if (srcMode == SM_I2O) { + uncompress ( NULL ); + } else { + decode = True; + for (aa = argList; aa != NULL; aa = aa->link) { + if (ISFLAG("--")) { decode = False; continue; } + if (aa->name[0] == '-' && decode) continue; + numFilesProcessed++; + uncompress ( aa->name ); + } + } + if (unzFailsExist) { + setExit(2); + exit(exitValue); + } + } + + else { + testFailsExist = False; + if (srcMode == SM_I2O) { + testf ( NULL ); + } else { + decode = True; + for (aa = argList; aa != NULL; aa = aa->link) { + if (ISFLAG("--")) { decode = False; continue; } + if (aa->name[0] == '-' && decode) continue; + numFilesProcessed++; + testf ( aa->name ); + } + } + if (testFailsExist && noisy) { + fprintf ( stderr, + "\n" + "You can use the `bzip2recover' program to attempt to recover\n" + "data from undamaged sections of corrupted files.\n\n" + ); + setExit(2); + exit(exitValue); + } + } + + /* Free the argument list memory to mollify leak detectors + (eg) Purify, Checker. Serves no other useful purpose. + */ + aa = argList; + while (aa != NULL) { + Cell* aa2 = aa->link; + if (aa->name != NULL) free(aa->name); + free(aa); + aa = aa2; + } + + return exitValue; +} + + +/*-----------------------------------------------------------*/ +/*--- end bzip2.c ---*/ +/*-----------------------------------------------------------*/ diff --git a/bzip2.txt b/bzip2.txt new file mode 100644 index 0000000..4fb9c74 --- /dev/null +++ b/bzip2.txt @@ -0,0 +1,391 @@ + +NAME + bzip2, bunzip2 - a block-sorting file compressor, v1.0.4 + bzcat - decompresses files to stdout + bzip2recover - recovers data from damaged bzip2 files + + +SYNOPSIS + bzip2 [ -cdfkqstvzVL123456789 ] [ filenames ... ] + bunzip2 [ -fkvsVL ] [ filenames ... ] + bzcat [ -s ] [ filenames ... ] + bzip2recover filename + + +DESCRIPTION + bzip2 compresses files using the Burrows-Wheeler block + sorting text compression algorithm, and Huffman coding. + Compression is generally considerably better than that + achieved by more conventional LZ77/LZ78-based compressors, + and approaches the performance of the PPM family of sta- + tistical compressors. + + The command-line options are deliberately very similar to + those of GNU gzip, but they are not identical. + + bzip2 expects a list of file names to accompany the com- + mand-line flags. Each file is replaced by a compressed + version of itself, with the name "original_name.bz2". + Each compressed file has the same modification date, per- + missions, and, when possible, ownership as the correspond- + ing original, so that these properties can be correctly + restored at decompression time. File name handling is + naive in the sense that there is no mechanism for preserv- + ing original file names, permissions, ownerships or dates + in filesystems which lack these concepts, or have serious + file name length restrictions, such as MS-DOS. + + bzip2 and bunzip2 will by default not overwrite existing + files. If you want this to happen, specify the -f flag. + + If no file names are specified, bzip2 compresses from + standard input to standard output. In this case, bzip2 + will decline to write compressed output to a terminal, as + this would be entirely incomprehensible and therefore + pointless. + + bunzip2 (or bzip2 -d) decompresses all specified files. + Files which were not created by bzip2 will be detected and + ignored, and a warning issued. bzip2 attempts to guess + the filename for the decompressed file from that of the + compressed file as follows: + + filename.bz2 becomes filename + filename.bz becomes filename + filename.tbz2 becomes filename.tar + filename.tbz becomes filename.tar + anyothername becomes anyothername.out + + If the file does not end in one of the recognised endings, + .bz2, .bz, .tbz2 or .tbz, bzip2 complains that it cannot + guess the name of the original file, and uses the original + name with .out appended. + + As with compression, supplying no filenames causes decom- + pression from standard input to standard output. + + bunzip2 will correctly decompress a file which is the con- + catenation of two or more compressed files. The result is + the concatenation of the corresponding uncompressed files. + Integrity testing (-t) of concatenated compressed files is + also supported. + + You can also compress or decompress files to the standard + output by giving the -c flag. Multiple files may be com- + pressed and decompressed like this. The resulting outputs + are fed sequentially to stdout. Compression of multiple + files in this manner generates a stream containing multi- + ple compressed file representations. Such a stream can be + decompressed correctly only by bzip2 version 0.9.0 or + later. Earlier versions of bzip2 will stop after decom- + pressing the first file in the stream. + + bzcat (or bzip2 -dc) decompresses all specified files to + the standard output. + + bzip2 will read arguments from the environment variables + BZIP2 and BZIP, in that order, and will process them + before any arguments read from the command line. This + gives a convenient way to supply default arguments. + + Compression is always performed, even if the compressed + file is slightly larger than the original. Files of less + than about one hundred bytes tend to get larger, since the + compression mechanism has a constant overhead in the + region of 50 bytes. Random data (including the output of + most file compressors) is coded at about 8.05 bits per + byte, giving an expansion of around 0.5%. + + As a self-check for your protection, bzip2 uses 32-bit + CRCs to make sure that the decompressed version of a file + is identical to the original. This guards against corrup- + tion of the compressed data, and against undetected bugs + in bzip2 (hopefully very unlikely). The chances of data + corruption going undetected is microscopic, about one + chance in four billion for each file processed. Be aware, + though, that the check occurs upon decompression, so it + can only tell you that something is wrong. It can't help + you recover the original uncompressed data. You can use + bzip2recover to try to recover data from damaged files. + + Return values: 0 for a normal exit, 1 for environmental + problems (file not found, invalid flags, I/O errors, &c), + 2 to indicate a corrupt compressed file, 3 for an internal + consistency error (eg, bug) which caused bzip2 to panic. + + +OPTIONS + -c --stdout + Compress or decompress to standard output. + + -d --decompress + Force decompression. bzip2, bunzip2 and bzcat are + really the same program, and the decision about + what actions to take is done on the basis of which + name is used. This flag overrides that mechanism, + and forces bzip2 to decompress. + + -z --compress + The complement to -d: forces compression, + regardless of the invocation name. + + -t --test + Check integrity of the specified file(s), but don't + decompress them. This really performs a trial + decompression and throws away the result. + + -f --force + Force overwrite of output files. Normally, bzip2 + will not overwrite existing output files. Also + forces bzip2 to break hard links to files, which it + otherwise wouldn't do. + + bzip2 normally declines to decompress files which + don't have the correct magic header bytes. If + forced (-f), however, it will pass such files + through unmodified. This is how GNU gzip behaves. + + -k --keep + Keep (don't delete) input files during compression + or decompression. + + -s --small + Reduce memory usage, for compression, decompression + and testing. Files are decompressed and tested + using a modified algorithm which only requires 2.5 + bytes per block byte. This means any file can be + decompressed in 2300k of memory, albeit at about + half the normal speed. + + During compression, -s selects a block size of + 200k, which limits memory use to around the same + figure, at the expense of your compression ratio. + In short, if your machine is low on memory (8 + megabytes or less), use -s for everything. See + MEMORY MANAGEMENT below. + + -q --quiet + Suppress non-essential warning messages. Messages + pertaining to I/O errors and other critical events + will not be suppressed. + + -v --verbose + Verbose mode -- show the compression ratio for each + file processed. Further -v's increase the ver- + bosity level, spewing out lots of information which + is primarily of interest for diagnostic purposes. + + -L --license -V --version + Display the software version, license terms and + conditions. + + -1 (or --fast) to -9 (or --best) + Set the block size to 100 k, 200 k .. 900 k when + compressing. Has no effect when decompressing. + See MEMORY MANAGEMENT below. The --fast and --best + aliases are primarily for GNU gzip compatibility. + In particular, --fast doesn't make things signifi- + cantly faster. And --best merely selects the + default behaviour. + + -- Treats all subsequent arguments as file names, even + if they start with a dash. This is so you can han- + dle files with names beginning with a dash, for + example: bzip2 -- -myfilename. + + --repetitive-fast --repetitive-best + These flags are redundant in versions 0.9.5 and + above. They provided some coarse control over the + behaviour of the sorting algorithm in earlier ver- + sions, which was sometimes useful. 0.9.5 and above + have an improved algorithm which renders these + flags irrelevant. + + +MEMORY MANAGEMENT + bzip2 compresses large files in blocks. The block size + affects both the compression ratio achieved, and the + amount of memory needed for compression and decompression. + The flags -1 through -9 specify the block size to be + 100,000 bytes through 900,000 bytes (the default) respec- + tively. At decompression time, the block size used for + compression is read from the header of the compressed + file, and bunzip2 then allocates itself just enough memory + to decompress the file. Since block sizes are stored in + compressed files, it follows that the flags -1 to -9 are + irrelevant to and so ignored during decompression. + + Compression and decompression requirements, in bytes, can + be estimated as: + + Compression: 400k + ( 8 x block size ) + + Decompression: 100k + ( 4 x block size ), or + 100k + ( 2.5 x block size ) + + Larger block sizes give rapidly diminishing marginal + returns. Most of the compression comes from the first two + or three hundred k of block size, a fact worth bearing in + mind when using bzip2 on small machines. It is also + important to appreciate that the decompression memory + requirement is set at compression time by the choice of + block size. + + For files compressed with the default 900k block size, + bunzip2 will require about 3700 kbytes to decompress. To + support decompression of any file on a 4 megabyte machine, + bunzip2 has an option to decompress using approximately + half this amount of memory, about 2300 kbytes. Decompres- + sion speed is also halved, so you should use this option + only where necessary. The relevant flag is -s. + + In general, try and use the largest block size memory con- + straints allow, since that maximises the compression + achieved. Compression and decompression speed are virtu- + ally unaffected by block size. + + Another significant point applies to files which fit in a + single block -- that means most files you'd encounter + using a large block size. The amount of real memory + touched is proportional to the size of the file, since the + file is smaller than a block. For example, compressing a + file 20,000 bytes long with the flag -9 will cause the + compressor to allocate around 7600k of memory, but only + touch 400k + 20000 * 8 = 560 kbytes of it. Similarly, the + decompressor will allocate 3700k but only touch 100k + + 20000 * 4 = 180 kbytes. + + Here is a table which summarises the maximum memory usage + for different block sizes. Also recorded is the total + compressed size for 14 files of the Calgary Text Compres- + sion Corpus totalling 3,141,622 bytes. This column gives + some feel for how compression varies with block size. + These figures tend to understate the advantage of larger + block sizes for larger files, since the Corpus is domi- + nated by smaller files. + + Compress Decompress Decompress Corpus + Flag usage usage -s usage Size + + -1 1200k 500k 350k 914704 + -2 2000k 900k 600k 877703 + -3 2800k 1300k 850k 860338 + -4 3600k 1700k 1100k 846899 + -5 4400k 2100k 1350k 845160 + -6 5200k 2500k 1600k 838626 + -7 6100k 2900k 1850k 834096 + -8 6800k 3300k 2100k 828642 + -9 7600k 3700k 2350k 828642 + + +RECOVERING DATA FROM DAMAGED FILES + bzip2 compresses files in blocks, usually 900kbytes long. + Each block is handled independently. If a media or trans- + mission error causes a multi-block .bz2 file to become + damaged, it may be possible to recover data from the + undamaged blocks in the file. + + The compressed representation of each block is delimited + by a 48-bit pattern, which makes it possible to find the + block boundaries with reasonable certainty. Each block + also carries its own 32-bit CRC, so damaged blocks can be + distinguished from undamaged ones. + + bzip2recover is a simple program whose purpose is to + search for blocks in .bz2 files, and write each block out + into its own .bz2 file. You can then use bzip2 -t to test + the integrity of the resulting files, and decompress those + which are undamaged. + + bzip2recover takes a single argument, the name of the dam- + aged file, and writes a number of files + "rec00001file.bz2", "rec00002file.bz2", etc, containing + the extracted blocks. The output filenames are + designed so that the use of wildcards in subsequent pro- + cessing -- for example, "bzip2 -dc rec*file.bz2 > recov- + ered_data" -- processes the files in the correct order. + + bzip2recover should be of most use dealing with large .bz2 + files, as these will contain many blocks. It is clearly + futile to use it on damaged single-block files, since a + damaged block cannot be recovered. If you wish to min- + imise any potential data loss through media or transmis- + sion errors, you might consider compressing with a smaller + block size. + + +PERFORMANCE NOTES + The sorting phase of compression gathers together similar + strings in the file. Because of this, files containing + very long runs of repeated symbols, like "aabaabaabaab + ..." (repeated several hundred times) may compress more + slowly than normal. Versions 0.9.5 and above fare much + better than previous versions in this respect. The ratio + between worst-case and average-case compression time is in + the region of 10:1. For previous versions, this figure + was more like 100:1. You can use the -vvvv option to mon- + itor progress in great detail, if you want. + + Decompression speed is unaffected by these phenomena. + + bzip2 usually allocates several megabytes of memory to + operate in, and then charges all over it in a fairly ran- + dom fashion. This means that performance, both for com- + pressing and decompressing, is largely determined by the + speed at which your machine can service cache misses. + Because of this, small changes to the code to reduce the + miss rate have been observed to give disproportionately + large performance improvements. I imagine bzip2 will per- + form best on machines with very large caches. + + +CAVEATS + I/O error messages are not as helpful as they could be. + bzip2 tries hard to detect I/O errors and exit cleanly, + but the details of what the problem is sometimes seem + rather misleading. + + This manual page pertains to version 1.0.4 of bzip2. Com- + pressed data created by this version is entirely forwards + and backwards compatible with the previous public + releases, versions 0.1pl2, 0.9.0, 0.9.5, 1.0.0, 1.0.1, + 1.0.2 and 1.0.3, but with the following exception: 0.9.0 + and above can correctly decompress multiple concatenated + compressed files. 0.1pl2 cannot do this; it will stop + after decompressing just the first file in the stream. + + bzip2recover versions prior to 1.0.2 used 32-bit integers + to represent bit positions in compressed files, so they + could not handle compressed files more than 512 megabytes + long. Versions 1.0.2 and above use 64-bit ints on some + platforms which support them (GNU supported targets, and + Windows). To establish whether or not bzip2recover was + built with such a limitation, run it without arguments. + In any event you can build yourself an unlimited version + if you can recompile it with MaybeUInt64 set to be an + unsigned 64-bit integer. + + +AUTHOR + Julian Seward, jsewardbzip.org. + + http://www.bzip.org + + The ideas embodied in bzip2 are due to (at least) the fol- + lowing people: Michael Burrows and David Wheeler (for the + block sorting transformation), David Wheeler (again, for + the Huffman coder), Peter Fenwick (for the structured cod- + ing model in the original bzip, and many refinements), and + Alistair Moffat, Radford Neal and Ian Witten (for the + arithmetic coder in the original bzip). I am much + indebted for their help, support and advice. See the man- + ual in the source distribution for pointers to sources of + documentation. Christian von Roques encouraged me to look + for faster sorting algorithms, so as to speed up compres- + sion. Bela Lubkin encouraged me to improve the worst-case + compression performance. Donna Robinson XMLised the docu- + mentation. The bz* scripts are derived from those of GNU + gzip. Many people sent patches, helped with portability + problems, lent machines, gave advice and were generally + helpful. + diff --git a/bzip2recover.c b/bzip2recover.c new file mode 100644 index 0000000..5f6d621 --- /dev/null +++ b/bzip2recover.c @@ -0,0 +1,514 @@ +/*-----------------------------------------------------------*/ +/*--- Block recoverer program for bzip2 ---*/ +/*--- bzip2recover.c ---*/ +/*-----------------------------------------------------------*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + +/* This program is a complete hack and should be rewritten properly. + It isn't very complicated. */ + +#include <stdio.h> +#include <errno.h> +#include <stdlib.h> +#include <string.h> + + +/* This program records bit locations in the file to be recovered. + That means that if 64-bit ints are not supported, we will not + be able to recover .bz2 files over 512MB (2^32 bits) long. + On GNU supported platforms, we take advantage of the 64-bit + int support to circumvent this problem. Ditto MSVC. + + This change occurred in version 1.0.2; all prior versions have + the 512MB limitation. +*/ +#ifdef __GNUC__ + typedef unsigned long long int MaybeUInt64; +# define MaybeUInt64_FMT "%Lu" +#else +#ifdef _MSC_VER + typedef unsigned __int64 MaybeUInt64; +# define MaybeUInt64_FMT "%I64u" +#else + typedef unsigned int MaybeUInt64; +# define MaybeUInt64_FMT "%u" +#endif +#endif + +typedef unsigned int UInt32; +typedef int Int32; +typedef unsigned char UChar; +typedef char Char; +typedef unsigned char Bool; +#define True ((Bool)1) +#define False ((Bool)0) + + +#define BZ_MAX_FILENAME 2000 + +Char inFileName[BZ_MAX_FILENAME]; +Char outFileName[BZ_MAX_FILENAME]; +Char progName[BZ_MAX_FILENAME]; + +MaybeUInt64 bytesOut = 0; +MaybeUInt64 bytesIn = 0; + + +/*---------------------------------------------------*/ +/*--- Header bytes ---*/ +/*---------------------------------------------------*/ + +#define BZ_HDR_B 0x42 /* 'B' */ +#define BZ_HDR_Z 0x5a /* 'Z' */ +#define BZ_HDR_h 0x68 /* 'h' */ +#define BZ_HDR_0 0x30 /* '0' */ + + +/*---------------------------------------------------*/ +/*--- I/O errors ---*/ +/*---------------------------------------------------*/ + +/*---------------------------------------------*/ +static void readError ( void ) +{ + fprintf ( stderr, + "%s: I/O error reading `%s', possible reason follows.\n", + progName, inFileName ); + perror ( progName ); + fprintf ( stderr, "%s: warning: output file(s) may be incomplete.\n", + progName ); + exit ( 1 ); +} + + +/*---------------------------------------------*/ +static void writeError ( void ) +{ + fprintf ( stderr, + "%s: I/O error reading `%s', possible reason follows.\n", + progName, inFileName ); + perror ( progName ); + fprintf ( stderr, "%s: warning: output file(s) may be incomplete.\n", + progName ); + exit ( 1 ); +} + + +/*---------------------------------------------*/ +static void mallocFail ( Int32 n ) +{ + fprintf ( stderr, + "%s: malloc failed on request for %d bytes.\n", + progName, n ); + fprintf ( stderr, "%s: warning: output file(s) may be incomplete.\n", + progName ); + exit ( 1 ); +} + + +/*---------------------------------------------*/ +static void tooManyBlocks ( Int32 max_handled_blocks ) +{ + fprintf ( stderr, + "%s: `%s' appears to contain more than %d blocks\n", + progName, inFileName, max_handled_blocks ); + fprintf ( stderr, + "%s: and cannot be handled. To fix, increase\n", + progName ); + fprintf ( stderr, + "%s: BZ_MAX_HANDLED_BLOCKS in bzip2recover.c, and recompile.\n", + progName ); + exit ( 1 ); +} + + + +/*---------------------------------------------------*/ +/*--- Bit stream I/O ---*/ +/*---------------------------------------------------*/ + +typedef + struct { + FILE* handle; + Int32 buffer; + Int32 buffLive; + Char mode; + } + BitStream; + + +/*---------------------------------------------*/ +static BitStream* bsOpenReadStream ( FILE* stream ) +{ + BitStream *bs = malloc ( sizeof(BitStream) ); + if (bs == NULL) mallocFail ( sizeof(BitStream) ); + bs->handle = stream; + bs->buffer = 0; + bs->buffLive = 0; + bs->mode = 'r'; + return bs; +} + + +/*---------------------------------------------*/ +static BitStream* bsOpenWriteStream ( FILE* stream ) +{ + BitStream *bs = malloc ( sizeof(BitStream) ); + if (bs == NULL) mallocFail ( sizeof(BitStream) ); + bs->handle = stream; + bs->buffer = 0; + bs->buffLive = 0; + bs->mode = 'w'; + return bs; +} + + +/*---------------------------------------------*/ +static void bsPutBit ( BitStream* bs, Int32 bit ) +{ + if (bs->buffLive == 8) { + Int32 retVal = putc ( (UChar) bs->buffer, bs->handle ); + if (retVal == EOF) writeError(); + bytesOut++; + bs->buffLive = 1; + bs->buffer = bit & 0x1; + } else { + bs->buffer = ( (bs->buffer << 1) | (bit & 0x1) ); + bs->buffLive++; + }; +} + + +/*---------------------------------------------*/ +/*-- + Returns 0 or 1, or 2 to indicate EOF. +--*/ +static Int32 bsGetBit ( BitStream* bs ) +{ + if (bs->buffLive > 0) { + bs->buffLive --; + return ( ((bs->buffer) >> (bs->buffLive)) & 0x1 ); + } else { + Int32 retVal = getc ( bs->handle ); + if ( retVal == EOF ) { + if (errno != 0) readError(); + return 2; + } + bs->buffLive = 7; + bs->buffer = retVal; + return ( ((bs->buffer) >> 7) & 0x1 ); + } +} + + +/*---------------------------------------------*/ +static void bsClose ( BitStream* bs ) +{ + Int32 retVal; + + if ( bs->mode == 'w' ) { + while ( bs->buffLive < 8 ) { + bs->buffLive++; + bs->buffer <<= 1; + }; + retVal = putc ( (UChar) (bs->buffer), bs->handle ); + if (retVal == EOF) writeError(); + bytesOut++; + retVal = fflush ( bs->handle ); + if (retVal == EOF) writeError(); + } + retVal = fclose ( bs->handle ); + if (retVal == EOF) { + if (bs->mode == 'w') writeError(); else readError(); + } + free ( bs ); +} + + +/*---------------------------------------------*/ +static void bsPutUChar ( BitStream* bs, UChar c ) +{ + Int32 i; + for (i = 7; i >= 0; i--) + bsPutBit ( bs, (((UInt32) c) >> i) & 0x1 ); +} + + +/*---------------------------------------------*/ +static void bsPutUInt32 ( BitStream* bs, UInt32 c ) +{ + Int32 i; + + for (i = 31; i >= 0; i--) + bsPutBit ( bs, (c >> i) & 0x1 ); +} + + +/*---------------------------------------------*/ +static Bool endsInBz2 ( Char* name ) +{ + Int32 n = strlen ( name ); + if (n <= 4) return False; + return + (name[n-4] == '.' && + name[n-3] == 'b' && + name[n-2] == 'z' && + name[n-1] == '2'); +} + + +/*---------------------------------------------------*/ +/*--- ---*/ +/*---------------------------------------------------*/ + +/* This logic isn't really right when it comes to Cygwin. */ +#ifdef _WIN32 +# define BZ_SPLIT_SYM '\\' /* path splitter on Windows platform */ +#else +# define BZ_SPLIT_SYM '/' /* path splitter on Unix platform */ +#endif + +#define BLOCK_HEADER_HI 0x00003141UL +#define BLOCK_HEADER_LO 0x59265359UL + +#define BLOCK_ENDMARK_HI 0x00001772UL +#define BLOCK_ENDMARK_LO 0x45385090UL + +/* Increase if necessary. However, a .bz2 file with > 50000 blocks + would have an uncompressed size of at least 40GB, so the chances + are low you'll need to up this. +*/ +#define BZ_MAX_HANDLED_BLOCKS 50000 + +MaybeUInt64 bStart [BZ_MAX_HANDLED_BLOCKS]; +MaybeUInt64 bEnd [BZ_MAX_HANDLED_BLOCKS]; +MaybeUInt64 rbStart[BZ_MAX_HANDLED_BLOCKS]; +MaybeUInt64 rbEnd [BZ_MAX_HANDLED_BLOCKS]; + +Int32 main ( Int32 argc, Char** argv ) +{ + FILE* inFile; + FILE* outFile; + BitStream* bsIn, *bsWr; + Int32 b, wrBlock, currBlock, rbCtr; + MaybeUInt64 bitsRead; + + UInt32 buffHi, buffLo, blockCRC; + Char* p; + + strcpy ( progName, argv[0] ); + inFileName[0] = outFileName[0] = 0; + + fprintf ( stderr, + "bzip2recover 1.0.5: extracts blocks from damaged .bz2 files.\n" ); + + if (argc != 2) { + fprintf ( stderr, "%s: usage is `%s damaged_file_name'.\n", + progName, progName ); + switch (sizeof(MaybeUInt64)) { + case 8: + fprintf(stderr, + "\trestrictions on size of recovered file: None\n"); + break; + case 4: + fprintf(stderr, + "\trestrictions on size of recovered file: 512 MB\n"); + fprintf(stderr, + "\tto circumvent, recompile with MaybeUInt64 as an\n" + "\tunsigned 64-bit int.\n"); + break; + default: + fprintf(stderr, + "\tsizeof(MaybeUInt64) is not 4 or 8 -- " + "configuration error.\n"); + break; + } + exit(1); + } + + if (strlen(argv[1]) >= BZ_MAX_FILENAME-20) { + fprintf ( stderr, + "%s: supplied filename is suspiciously (>= %d chars) long. Bye!\n", + progName, (int)strlen(argv[1]) ); + exit(1); + } + + strcpy ( inFileName, argv[1] ); + + inFile = fopen ( inFileName, "rb" ); + if (inFile == NULL) { + fprintf ( stderr, "%s: can't read `%s'\n", progName, inFileName ); + exit(1); + } + + bsIn = bsOpenReadStream ( inFile ); + fprintf ( stderr, "%s: searching for block boundaries ...\n", progName ); + + bitsRead = 0; + buffHi = buffLo = 0; + currBlock = 0; + bStart[currBlock] = 0; + + rbCtr = 0; + + while (True) { + b = bsGetBit ( bsIn ); + bitsRead++; + if (b == 2) { + if (bitsRead >= bStart[currBlock] && + (bitsRead - bStart[currBlock]) >= 40) { + bEnd[currBlock] = bitsRead-1; + if (currBlock > 0) + fprintf ( stderr, " block %d runs from " MaybeUInt64_FMT + " to " MaybeUInt64_FMT " (incomplete)\n", + currBlock, bStart[currBlock], bEnd[currBlock] ); + } else + currBlock--; + break; + } + buffHi = (buffHi << 1) | (buffLo >> 31); + buffLo = (buffLo << 1) | (b & 1); + if ( ( (buffHi & 0x0000ffff) == BLOCK_HEADER_HI + && buffLo == BLOCK_HEADER_LO) + || + ( (buffHi & 0x0000ffff) == BLOCK_ENDMARK_HI + && buffLo == BLOCK_ENDMARK_LO) + ) { + if (bitsRead > 49) { + bEnd[currBlock] = bitsRead-49; + } else { + bEnd[currBlock] = 0; + } + if (currBlock > 0 && + (bEnd[currBlock] - bStart[currBlock]) >= 130) { + fprintf ( stderr, " block %d runs from " MaybeUInt64_FMT + " to " MaybeUInt64_FMT "\n", + rbCtr+1, bStart[currBlock], bEnd[currBlock] ); + rbStart[rbCtr] = bStart[currBlock]; + rbEnd[rbCtr] = bEnd[currBlock]; + rbCtr++; + } + if (currBlock >= BZ_MAX_HANDLED_BLOCKS) + tooManyBlocks(BZ_MAX_HANDLED_BLOCKS); + currBlock++; + + bStart[currBlock] = bitsRead; + } + } + + bsClose ( bsIn ); + + /*-- identified blocks run from 1 to rbCtr inclusive. --*/ + + if (rbCtr < 1) { + fprintf ( stderr, + "%s: sorry, I couldn't find any block boundaries.\n", + progName ); + exit(1); + }; + + fprintf ( stderr, "%s: splitting into blocks\n", progName ); + + inFile = fopen ( inFileName, "rb" ); + if (inFile == NULL) { + fprintf ( stderr, "%s: can't open `%s'\n", progName, inFileName ); + exit(1); + } + bsIn = bsOpenReadStream ( inFile ); + + /*-- placate gcc's dataflow analyser --*/ + blockCRC = 0; bsWr = 0; + + bitsRead = 0; + outFile = NULL; + wrBlock = 0; + while (True) { + b = bsGetBit(bsIn); + if (b == 2) break; + buffHi = (buffHi << 1) | (buffLo >> 31); + buffLo = (buffLo << 1) | (b & 1); + if (bitsRead == 47+rbStart[wrBlock]) + blockCRC = (buffHi << 16) | (buffLo >> 16); + + if (outFile != NULL && bitsRead >= rbStart[wrBlock] + && bitsRead <= rbEnd[wrBlock]) { + bsPutBit ( bsWr, b ); + } + + bitsRead++; + + if (bitsRead == rbEnd[wrBlock]+1) { + if (outFile != NULL) { + bsPutUChar ( bsWr, 0x17 ); bsPutUChar ( bsWr, 0x72 ); + bsPutUChar ( bsWr, 0x45 ); bsPutUChar ( bsWr, 0x38 ); + bsPutUChar ( bsWr, 0x50 ); bsPutUChar ( bsWr, 0x90 ); + bsPutUInt32 ( bsWr, blockCRC ); + bsClose ( bsWr ); + } + if (wrBlock >= rbCtr) break; + wrBlock++; + } else + if (bitsRead == rbStart[wrBlock]) { + /* Create the output file name, correctly handling leading paths. + (31.10.2001 by Sergey E. Kusikov) */ + Char* split; + Int32 ofs, k; + for (k = 0; k < BZ_MAX_FILENAME; k++) + outFileName[k] = 0; + strcpy (outFileName, inFileName); + split = strrchr (outFileName, BZ_SPLIT_SYM); + if (split == NULL) { + split = outFileName; + } else { + ++split; + } + /* Now split points to the start of the basename. */ + ofs = split - outFileName; + sprintf (split, "rec%5d", wrBlock+1); + for (p = split; *p != 0; p++) if (*p == ' ') *p = '0'; + strcat (outFileName, inFileName + ofs); + + if ( !endsInBz2(outFileName)) strcat ( outFileName, ".bz2" ); + + fprintf ( stderr, " writing block %d to `%s' ...\n", + wrBlock+1, outFileName ); + + outFile = fopen ( outFileName, "wb" ); + if (outFile == NULL) { + fprintf ( stderr, "%s: can't write `%s'\n", + progName, outFileName ); + exit(1); + } + bsWr = bsOpenWriteStream ( outFile ); + bsPutUChar ( bsWr, BZ_HDR_B ); + bsPutUChar ( bsWr, BZ_HDR_Z ); + bsPutUChar ( bsWr, BZ_HDR_h ); + bsPutUChar ( bsWr, BZ_HDR_0 + 9 ); + bsPutUChar ( bsWr, 0x31 ); bsPutUChar ( bsWr, 0x41 ); + bsPutUChar ( bsWr, 0x59 ); bsPutUChar ( bsWr, 0x26 ); + bsPutUChar ( bsWr, 0x53 ); bsPutUChar ( bsWr, 0x59 ); + } + } + + fprintf ( stderr, "%s: finished\n", progName ); + return 0; +} + + + +/*-----------------------------------------------------------*/ +/*--- end bzip2recover.c ---*/ +/*-----------------------------------------------------------*/ @@ -0,0 +1,1572 @@ + +/*-------------------------------------------------------------*/ +/*--- Library top-level functions. ---*/ +/*--- bzlib.c ---*/ +/*-------------------------------------------------------------*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + +/* CHANGES + 0.9.0 -- original version. + 0.9.0a/b -- no changes in this file. + 0.9.0c -- made zero-length BZ_FLUSH work correctly in bzCompress(). + fixed bzWrite/bzRead to ignore zero-length requests. + fixed bzread to correctly handle read requests after EOF. + wrong parameter order in call to bzDecompressInit in + bzBuffToBuffDecompress. Fixed. +*/ + +#include "bzlib_private.h" + + +/*---------------------------------------------------*/ +/*--- Compression stuff ---*/ +/*---------------------------------------------------*/ + + +/*---------------------------------------------------*/ +#ifndef BZ_NO_STDIO +void BZ2_bz__AssertH__fail ( int errcode ) +{ + fprintf(stderr, + "\n\nbzip2/libbzip2: internal error number %d.\n" + "This is a bug in bzip2/libbzip2, %s.\n" + "Please report it to me at: jseward@bzip.org. If this happened\n" + "when you were using some program which uses libbzip2 as a\n" + "component, you should also report this bug to the author(s)\n" + "of that program. Please make an effort to report this bug;\n" + "timely and accurate bug reports eventually lead to higher\n" + "quality software. Thanks. Julian Seward, 10 December 2007.\n\n", + errcode, + BZ2_bzlibVersion() + ); + + if (errcode == 1007) { + fprintf(stderr, + "\n*** A special note about internal error number 1007 ***\n" + "\n" + "Experience suggests that a common cause of i.e. 1007\n" + "is unreliable memory or other hardware. The 1007 assertion\n" + "just happens to cross-check the results of huge numbers of\n" + "memory reads/writes, and so acts (unintendedly) as a stress\n" + "test of your memory system.\n" + "\n" + "I suggest the following: try compressing the file again,\n" + "possibly monitoring progress in detail with the -vv flag.\n" + "\n" + "* If the error cannot be reproduced, and/or happens at different\n" + " points in compression, you may have a flaky memory system.\n" + " Try a memory-test program. I have used Memtest86\n" + " (www.memtest86.com). At the time of writing it is free (GPLd).\n" + " Memtest86 tests memory much more thorougly than your BIOSs\n" + " power-on test, and may find failures that the BIOS doesn't.\n" + "\n" + "* If the error can be repeatably reproduced, this is a bug in\n" + " bzip2, and I would very much like to hear about it. Please\n" + " let me know, and, ideally, save a copy of the file causing the\n" + " problem -- without which I will be unable to investigate it.\n" + "\n" + ); + } + + exit(3); +} +#endif + + +/*---------------------------------------------------*/ +static +int bz_config_ok ( void ) +{ + if (sizeof(int) != 4) return 0; + if (sizeof(short) != 2) return 0; + if (sizeof(char) != 1) return 0; + return 1; +} + + +/*---------------------------------------------------*/ +static +void* default_bzalloc ( void* opaque, Int32 items, Int32 size ) +{ + void* v = malloc ( items * size ); + return v; +} + +static +void default_bzfree ( void* opaque, void* addr ) +{ + if (addr != NULL) free ( addr ); +} + + +/*---------------------------------------------------*/ +static +void prepare_new_block ( EState* s ) +{ + Int32 i; + s->nblock = 0; + s->numZ = 0; + s->state_out_pos = 0; + BZ_INITIALISE_CRC ( s->blockCRC ); + for (i = 0; i < 256; i++) s->inUse[i] = False; + s->blockNo++; +} + + +/*---------------------------------------------------*/ +static +void init_RL ( EState* s ) +{ + s->state_in_ch = 256; + s->state_in_len = 0; +} + + +static +Bool isempty_RL ( EState* s ) +{ + if (s->state_in_ch < 256 && s->state_in_len > 0) + return False; else + return True; +} + + +/*---------------------------------------------------*/ +int BZ_API(BZ2_bzCompressInit) + ( bz_stream* strm, + int blockSize100k, + int verbosity, + int workFactor ) +{ + Int32 n; + EState* s; + + if (!bz_config_ok()) return BZ_CONFIG_ERROR; + + if (strm == NULL || + blockSize100k < 1 || blockSize100k > 9 || + workFactor < 0 || workFactor > 250) + return BZ_PARAM_ERROR; + + if (workFactor == 0) workFactor = 30; + if (strm->bzalloc == NULL) strm->bzalloc = default_bzalloc; + if (strm->bzfree == NULL) strm->bzfree = default_bzfree; + + s = BZALLOC( sizeof(EState) ); + if (s == NULL) return BZ_MEM_ERROR; + s->strm = strm; + + s->arr1 = NULL; + s->arr2 = NULL; + s->ftab = NULL; + + n = 100000 * blockSize100k; + s->arr1 = BZALLOC( n * sizeof(UInt32) ); + s->arr2 = BZALLOC( (n+BZ_N_OVERSHOOT) * sizeof(UInt32) ); + s->ftab = BZALLOC( 65537 * sizeof(UInt32) ); + + if (s->arr1 == NULL || s->arr2 == NULL || s->ftab == NULL) { + if (s->arr1 != NULL) BZFREE(s->arr1); + if (s->arr2 != NULL) BZFREE(s->arr2); + if (s->ftab != NULL) BZFREE(s->ftab); + if (s != NULL) BZFREE(s); + return BZ_MEM_ERROR; + } + + s->blockNo = 0; + s->state = BZ_S_INPUT; + s->mode = BZ_M_RUNNING; + s->combinedCRC = 0; + s->blockSize100k = blockSize100k; + s->nblockMAX = 100000 * blockSize100k - 19; + s->verbosity = verbosity; + s->workFactor = workFactor; + + s->block = (UChar*)s->arr2; + s->mtfv = (UInt16*)s->arr1; + s->zbits = NULL; + s->ptr = (UInt32*)s->arr1; + + strm->state = s; + strm->total_in_lo32 = 0; + strm->total_in_hi32 = 0; + strm->total_out_lo32 = 0; + strm->total_out_hi32 = 0; + init_RL ( s ); + prepare_new_block ( s ); + return BZ_OK; +} + + +/*---------------------------------------------------*/ +static +void add_pair_to_block ( EState* s ) +{ + Int32 i; + UChar ch = (UChar)(s->state_in_ch); + for (i = 0; i < s->state_in_len; i++) { + BZ_UPDATE_CRC( s->blockCRC, ch ); + } + s->inUse[s->state_in_ch] = True; + switch (s->state_in_len) { + case 1: + s->block[s->nblock] = (UChar)ch; s->nblock++; + break; + case 2: + s->block[s->nblock] = (UChar)ch; s->nblock++; + s->block[s->nblock] = (UChar)ch; s->nblock++; + break; + case 3: + s->block[s->nblock] = (UChar)ch; s->nblock++; + s->block[s->nblock] = (UChar)ch; s->nblock++; + s->block[s->nblock] = (UChar)ch; s->nblock++; + break; + default: + s->inUse[s->state_in_len-4] = True; + s->block[s->nblock] = (UChar)ch; s->nblock++; + s->block[s->nblock] = (UChar)ch; s->nblock++; + s->block[s->nblock] = (UChar)ch; s->nblock++; + s->block[s->nblock] = (UChar)ch; s->nblock++; + s->block[s->nblock] = ((UChar)(s->state_in_len-4)); + s->nblock++; + break; + } +} + + +/*---------------------------------------------------*/ +static +void flush_RL ( EState* s ) +{ + if (s->state_in_ch < 256) add_pair_to_block ( s ); + init_RL ( s ); +} + + +/*---------------------------------------------------*/ +#define ADD_CHAR_TO_BLOCK(zs,zchh0) \ +{ \ + UInt32 zchh = (UInt32)(zchh0); \ + /*-- fast track the common case --*/ \ + if (zchh != zs->state_in_ch && \ + zs->state_in_len == 1) { \ + UChar ch = (UChar)(zs->state_in_ch); \ + BZ_UPDATE_CRC( zs->blockCRC, ch ); \ + zs->inUse[zs->state_in_ch] = True; \ + zs->block[zs->nblock] = (UChar)ch; \ + zs->nblock++; \ + zs->state_in_ch = zchh; \ + } \ + else \ + /*-- general, uncommon cases --*/ \ + if (zchh != zs->state_in_ch || \ + zs->state_in_len == 255) { \ + if (zs->state_in_ch < 256) \ + add_pair_to_block ( zs ); \ + zs->state_in_ch = zchh; \ + zs->state_in_len = 1; \ + } else { \ + zs->state_in_len++; \ + } \ +} + + +/*---------------------------------------------------*/ +static +Bool copy_input_until_stop ( EState* s ) +{ + Bool progress_in = False; + + if (s->mode == BZ_M_RUNNING) { + + /*-- fast track the common case --*/ + while (True) { + /*-- block full? --*/ + if (s->nblock >= s->nblockMAX) break; + /*-- no input? --*/ + if (s->strm->avail_in == 0) break; + progress_in = True; + ADD_CHAR_TO_BLOCK ( s, (UInt32)(*((UChar*)(s->strm->next_in))) ); + s->strm->next_in++; + s->strm->avail_in--; + s->strm->total_in_lo32++; + if (s->strm->total_in_lo32 == 0) s->strm->total_in_hi32++; + } + + } else { + + /*-- general, uncommon case --*/ + while (True) { + /*-- block full? --*/ + if (s->nblock >= s->nblockMAX) break; + /*-- no input? --*/ + if (s->strm->avail_in == 0) break; + /*-- flush/finish end? --*/ + if (s->avail_in_expect == 0) break; + progress_in = True; + ADD_CHAR_TO_BLOCK ( s, (UInt32)(*((UChar*)(s->strm->next_in))) ); + s->strm->next_in++; + s->strm->avail_in--; + s->strm->total_in_lo32++; + if (s->strm->total_in_lo32 == 0) s->strm->total_in_hi32++; + s->avail_in_expect--; + } + } + return progress_in; +} + + +/*---------------------------------------------------*/ +static +Bool copy_output_until_stop ( EState* s ) +{ + Bool progress_out = False; + + while (True) { + + /*-- no output space? --*/ + if (s->strm->avail_out == 0) break; + + /*-- block done? --*/ + if (s->state_out_pos >= s->numZ) break; + + progress_out = True; + *(s->strm->next_out) = s->zbits[s->state_out_pos]; + s->state_out_pos++; + s->strm->avail_out--; + s->strm->next_out++; + s->strm->total_out_lo32++; + if (s->strm->total_out_lo32 == 0) s->strm->total_out_hi32++; + } + + return progress_out; +} + + +/*---------------------------------------------------*/ +static +Bool handle_compress ( bz_stream* strm ) +{ + Bool progress_in = False; + Bool progress_out = False; + EState* s = strm->state; + + while (True) { + + if (s->state == BZ_S_OUTPUT) { + progress_out |= copy_output_until_stop ( s ); + if (s->state_out_pos < s->numZ) break; + if (s->mode == BZ_M_FINISHING && + s->avail_in_expect == 0 && + isempty_RL(s)) break; + prepare_new_block ( s ); + s->state = BZ_S_INPUT; + if (s->mode == BZ_M_FLUSHING && + s->avail_in_expect == 0 && + isempty_RL(s)) break; + } + + if (s->state == BZ_S_INPUT) { + progress_in |= copy_input_until_stop ( s ); + if (s->mode != BZ_M_RUNNING && s->avail_in_expect == 0) { + flush_RL ( s ); + BZ2_compressBlock ( s, (Bool)(s->mode == BZ_M_FINISHING) ); + s->state = BZ_S_OUTPUT; + } + else + if (s->nblock >= s->nblockMAX) { + BZ2_compressBlock ( s, False ); + s->state = BZ_S_OUTPUT; + } + else + if (s->strm->avail_in == 0) { + break; + } + } + + } + + return progress_in || progress_out; +} + + +/*---------------------------------------------------*/ +int BZ_API(BZ2_bzCompress) ( bz_stream *strm, int action ) +{ + Bool progress; + EState* s; + if (strm == NULL) return BZ_PARAM_ERROR; + s = strm->state; + if (s == NULL) return BZ_PARAM_ERROR; + if (s->strm != strm) return BZ_PARAM_ERROR; + + preswitch: + switch (s->mode) { + + case BZ_M_IDLE: + return BZ_SEQUENCE_ERROR; + + case BZ_M_RUNNING: + if (action == BZ_RUN) { + progress = handle_compress ( strm ); + return progress ? BZ_RUN_OK : BZ_PARAM_ERROR; + } + else + if (action == BZ_FLUSH) { + s->avail_in_expect = strm->avail_in; + s->mode = BZ_M_FLUSHING; + goto preswitch; + } + else + if (action == BZ_FINISH) { + s->avail_in_expect = strm->avail_in; + s->mode = BZ_M_FINISHING; + goto preswitch; + } + else + return BZ_PARAM_ERROR; + + case BZ_M_FLUSHING: + if (action != BZ_FLUSH) return BZ_SEQUENCE_ERROR; + if (s->avail_in_expect != s->strm->avail_in) + return BZ_SEQUENCE_ERROR; + progress = handle_compress ( strm ); + if (s->avail_in_expect > 0 || !isempty_RL(s) || + s->state_out_pos < s->numZ) return BZ_FLUSH_OK; + s->mode = BZ_M_RUNNING; + return BZ_RUN_OK; + + case BZ_M_FINISHING: + if (action != BZ_FINISH) return BZ_SEQUENCE_ERROR; + if (s->avail_in_expect != s->strm->avail_in) + return BZ_SEQUENCE_ERROR; + progress = handle_compress ( strm ); + if (!progress) return BZ_SEQUENCE_ERROR; + if (s->avail_in_expect > 0 || !isempty_RL(s) || + s->state_out_pos < s->numZ) return BZ_FINISH_OK; + s->mode = BZ_M_IDLE; + return BZ_STREAM_END; + } + return BZ_OK; /*--not reached--*/ +} + + +/*---------------------------------------------------*/ +int BZ_API(BZ2_bzCompressEnd) ( bz_stream *strm ) +{ + EState* s; + if (strm == NULL) return BZ_PARAM_ERROR; + s = strm->state; + if (s == NULL) return BZ_PARAM_ERROR; + if (s->strm != strm) return BZ_PARAM_ERROR; + + if (s->arr1 != NULL) BZFREE(s->arr1); + if (s->arr2 != NULL) BZFREE(s->arr2); + if (s->ftab != NULL) BZFREE(s->ftab); + BZFREE(strm->state); + + strm->state = NULL; + + return BZ_OK; +} + + +/*---------------------------------------------------*/ +/*--- Decompression stuff ---*/ +/*---------------------------------------------------*/ + +/*---------------------------------------------------*/ +int BZ_API(BZ2_bzDecompressInit) + ( bz_stream* strm, + int verbosity, + int small ) +{ + DState* s; + + if (!bz_config_ok()) return BZ_CONFIG_ERROR; + + if (strm == NULL) return BZ_PARAM_ERROR; + if (small != 0 && small != 1) return BZ_PARAM_ERROR; + if (verbosity < 0 || verbosity > 4) return BZ_PARAM_ERROR; + + if (strm->bzalloc == NULL) strm->bzalloc = default_bzalloc; + if (strm->bzfree == NULL) strm->bzfree = default_bzfree; + + s = BZALLOC( sizeof(DState) ); + if (s == NULL) return BZ_MEM_ERROR; + s->strm = strm; + strm->state = s; + s->state = BZ_X_MAGIC_1; + s->bsLive = 0; + s->bsBuff = 0; + s->calculatedCombinedCRC = 0; + strm->total_in_lo32 = 0; + strm->total_in_hi32 = 0; + strm->total_out_lo32 = 0; + strm->total_out_hi32 = 0; + s->smallDecompress = (Bool)small; + s->ll4 = NULL; + s->ll16 = NULL; + s->tt = NULL; + s->currBlockNo = 0; + s->verbosity = verbosity; + + return BZ_OK; +} + + +/*---------------------------------------------------*/ +/* Return True iff data corruption is discovered. + Returns False if there is no problem. +*/ +static +Bool unRLE_obuf_to_output_FAST ( DState* s ) +{ + UChar k1; + + if (s->blockRandomised) { + + while (True) { + /* try to finish existing run */ + while (True) { + if (s->strm->avail_out == 0) return False; + if (s->state_out_len == 0) break; + *( (UChar*)(s->strm->next_out) ) = s->state_out_ch; + BZ_UPDATE_CRC ( s->calculatedBlockCRC, s->state_out_ch ); + s->state_out_len--; + s->strm->next_out++; + s->strm->avail_out--; + s->strm->total_out_lo32++; + if (s->strm->total_out_lo32 == 0) s->strm->total_out_hi32++; + } + + /* can a new run be started? */ + if (s->nblock_used == s->save_nblock+1) return False; + + /* Only caused by corrupt data stream? */ + if (s->nblock_used > s->save_nblock+1) + return True; + + s->state_out_len = 1; + s->state_out_ch = s->k0; + BZ_GET_FAST(k1); BZ_RAND_UPD_MASK; + k1 ^= BZ_RAND_MASK; s->nblock_used++; + if (s->nblock_used == s->save_nblock+1) continue; + if (k1 != s->k0) { s->k0 = k1; continue; }; + + s->state_out_len = 2; + BZ_GET_FAST(k1); BZ_RAND_UPD_MASK; + k1 ^= BZ_RAND_MASK; s->nblock_used++; + if (s->nblock_used == s->save_nblock+1) continue; + if (k1 != s->k0) { s->k0 = k1; continue; }; + + s->state_out_len = 3; + BZ_GET_FAST(k1); BZ_RAND_UPD_MASK; + k1 ^= BZ_RAND_MASK; s->nblock_used++; + if (s->nblock_used == s->save_nblock+1) continue; + if (k1 != s->k0) { s->k0 = k1; continue; }; + + BZ_GET_FAST(k1); BZ_RAND_UPD_MASK; + k1 ^= BZ_RAND_MASK; s->nblock_used++; + s->state_out_len = ((Int32)k1) + 4; + BZ_GET_FAST(s->k0); BZ_RAND_UPD_MASK; + s->k0 ^= BZ_RAND_MASK; s->nblock_used++; + } + + } else { + + /* restore */ + UInt32 c_calculatedBlockCRC = s->calculatedBlockCRC; + UChar c_state_out_ch = s->state_out_ch; + Int32 c_state_out_len = s->state_out_len; + Int32 c_nblock_used = s->nblock_used; + Int32 c_k0 = s->k0; + UInt32* c_tt = s->tt; + UInt32 c_tPos = s->tPos; + char* cs_next_out = s->strm->next_out; + unsigned int cs_avail_out = s->strm->avail_out; + Int32 ro_blockSize100k = s->blockSize100k; + /* end restore */ + + UInt32 avail_out_INIT = cs_avail_out; + Int32 s_save_nblockPP = s->save_nblock+1; + unsigned int total_out_lo32_old; + + while (True) { + + /* try to finish existing run */ + if (c_state_out_len > 0) { + while (True) { + if (cs_avail_out == 0) goto return_notr; + if (c_state_out_len == 1) break; + *( (UChar*)(cs_next_out) ) = c_state_out_ch; + BZ_UPDATE_CRC ( c_calculatedBlockCRC, c_state_out_ch ); + c_state_out_len--; + cs_next_out++; + cs_avail_out--; + } + s_state_out_len_eq_one: + { + if (cs_avail_out == 0) { + c_state_out_len = 1; goto return_notr; + }; + *( (UChar*)(cs_next_out) ) = c_state_out_ch; + BZ_UPDATE_CRC ( c_calculatedBlockCRC, c_state_out_ch ); + cs_next_out++; + cs_avail_out--; + } + } + /* Only caused by corrupt data stream? */ + if (c_nblock_used > s_save_nblockPP) + return True; + + /* can a new run be started? */ + if (c_nblock_used == s_save_nblockPP) { + c_state_out_len = 0; goto return_notr; + }; + c_state_out_ch = c_k0; + BZ_GET_FAST_C(k1); c_nblock_used++; + if (k1 != c_k0) { + c_k0 = k1; goto s_state_out_len_eq_one; + }; + if (c_nblock_used == s_save_nblockPP) + goto s_state_out_len_eq_one; + + c_state_out_len = 2; + BZ_GET_FAST_C(k1); c_nblock_used++; + if (c_nblock_used == s_save_nblockPP) continue; + if (k1 != c_k0) { c_k0 = k1; continue; }; + + c_state_out_len = 3; + BZ_GET_FAST_C(k1); c_nblock_used++; + if (c_nblock_used == s_save_nblockPP) continue; + if (k1 != c_k0) { c_k0 = k1; continue; }; + + BZ_GET_FAST_C(k1); c_nblock_used++; + c_state_out_len = ((Int32)k1) + 4; + BZ_GET_FAST_C(c_k0); c_nblock_used++; + } + + return_notr: + total_out_lo32_old = s->strm->total_out_lo32; + s->strm->total_out_lo32 += (avail_out_INIT - cs_avail_out); + if (s->strm->total_out_lo32 < total_out_lo32_old) + s->strm->total_out_hi32++; + + /* save */ + s->calculatedBlockCRC = c_calculatedBlockCRC; + s->state_out_ch = c_state_out_ch; + s->state_out_len = c_state_out_len; + s->nblock_used = c_nblock_used; + s->k0 = c_k0; + s->tt = c_tt; + s->tPos = c_tPos; + s->strm->next_out = cs_next_out; + s->strm->avail_out = cs_avail_out; + /* end save */ + } + return False; +} + + + +/*---------------------------------------------------*/ +__inline__ Int32 BZ2_indexIntoF ( Int32 indx, Int32 *cftab ) +{ + Int32 nb, na, mid; + nb = 0; + na = 256; + do { + mid = (nb + na) >> 1; + if (indx >= cftab[mid]) nb = mid; else na = mid; + } + while (na - nb != 1); + return nb; +} + + +/*---------------------------------------------------*/ +/* Return True iff data corruption is discovered. + Returns False if there is no problem. +*/ +static +Bool unRLE_obuf_to_output_SMALL ( DState* s ) +{ + UChar k1; + + if (s->blockRandomised) { + + while (True) { + /* try to finish existing run */ + while (True) { + if (s->strm->avail_out == 0) return False; + if (s->state_out_len == 0) break; + *( (UChar*)(s->strm->next_out) ) = s->state_out_ch; + BZ_UPDATE_CRC ( s->calculatedBlockCRC, s->state_out_ch ); + s->state_out_len--; + s->strm->next_out++; + s->strm->avail_out--; + s->strm->total_out_lo32++; + if (s->strm->total_out_lo32 == 0) s->strm->total_out_hi32++; + } + + /* can a new run be started? */ + if (s->nblock_used == s->save_nblock+1) return False; + + /* Only caused by corrupt data stream? */ + if (s->nblock_used > s->save_nblock+1) + return True; + + s->state_out_len = 1; + s->state_out_ch = s->k0; + BZ_GET_SMALL(k1); BZ_RAND_UPD_MASK; + k1 ^= BZ_RAND_MASK; s->nblock_used++; + if (s->nblock_used == s->save_nblock+1) continue; + if (k1 != s->k0) { s->k0 = k1; continue; }; + + s->state_out_len = 2; + BZ_GET_SMALL(k1); BZ_RAND_UPD_MASK; + k1 ^= BZ_RAND_MASK; s->nblock_used++; + if (s->nblock_used == s->save_nblock+1) continue; + if (k1 != s->k0) { s->k0 = k1; continue; }; + + s->state_out_len = 3; + BZ_GET_SMALL(k1); BZ_RAND_UPD_MASK; + k1 ^= BZ_RAND_MASK; s->nblock_used++; + if (s->nblock_used == s->save_nblock+1) continue; + if (k1 != s->k0) { s->k0 = k1; continue; }; + + BZ_GET_SMALL(k1); BZ_RAND_UPD_MASK; + k1 ^= BZ_RAND_MASK; s->nblock_used++; + s->state_out_len = ((Int32)k1) + 4; + BZ_GET_SMALL(s->k0); BZ_RAND_UPD_MASK; + s->k0 ^= BZ_RAND_MASK; s->nblock_used++; + } + + } else { + + while (True) { + /* try to finish existing run */ + while (True) { + if (s->strm->avail_out == 0) return False; + if (s->state_out_len == 0) break; + *( (UChar*)(s->strm->next_out) ) = s->state_out_ch; + BZ_UPDATE_CRC ( s->calculatedBlockCRC, s->state_out_ch ); + s->state_out_len--; + s->strm->next_out++; + s->strm->avail_out--; + s->strm->total_out_lo32++; + if (s->strm->total_out_lo32 == 0) s->strm->total_out_hi32++; + } + + /* can a new run be started? */ + if (s->nblock_used == s->save_nblock+1) return False; + + /* Only caused by corrupt data stream? */ + if (s->nblock_used > s->save_nblock+1) + return True; + + s->state_out_len = 1; + s->state_out_ch = s->k0; + BZ_GET_SMALL(k1); s->nblock_used++; + if (s->nblock_used == s->save_nblock+1) continue; + if (k1 != s->k0) { s->k0 = k1; continue; }; + + s->state_out_len = 2; + BZ_GET_SMALL(k1); s->nblock_used++; + if (s->nblock_used == s->save_nblock+1) continue; + if (k1 != s->k0) { s->k0 = k1; continue; }; + + s->state_out_len = 3; + BZ_GET_SMALL(k1); s->nblock_used++; + if (s->nblock_used == s->save_nblock+1) continue; + if (k1 != s->k0) { s->k0 = k1; continue; }; + + BZ_GET_SMALL(k1); s->nblock_used++; + s->state_out_len = ((Int32)k1) + 4; + BZ_GET_SMALL(s->k0); s->nblock_used++; + } + + } +} + + +/*---------------------------------------------------*/ +int BZ_API(BZ2_bzDecompress) ( bz_stream *strm ) +{ + Bool corrupt; + DState* s; + if (strm == NULL) return BZ_PARAM_ERROR; + s = strm->state; + if (s == NULL) return BZ_PARAM_ERROR; + if (s->strm != strm) return BZ_PARAM_ERROR; + + while (True) { + if (s->state == BZ_X_IDLE) return BZ_SEQUENCE_ERROR; + if (s->state == BZ_X_OUTPUT) { + if (s->smallDecompress) + corrupt = unRLE_obuf_to_output_SMALL ( s ); else + corrupt = unRLE_obuf_to_output_FAST ( s ); + if (corrupt) return BZ_DATA_ERROR; + if (s->nblock_used == s->save_nblock+1 && s->state_out_len == 0) { + BZ_FINALISE_CRC ( s->calculatedBlockCRC ); + if (s->verbosity >= 3) + VPrintf2 ( " {0x%08x, 0x%08x}", s->storedBlockCRC, + s->calculatedBlockCRC ); + if (s->verbosity >= 2) VPrintf0 ( "]" ); + if (s->calculatedBlockCRC != s->storedBlockCRC) + return BZ_DATA_ERROR; + s->calculatedCombinedCRC + = (s->calculatedCombinedCRC << 1) | + (s->calculatedCombinedCRC >> 31); + s->calculatedCombinedCRC ^= s->calculatedBlockCRC; + s->state = BZ_X_BLKHDR_1; + } else { + return BZ_OK; + } + } + if (s->state >= BZ_X_MAGIC_1) { + Int32 r = BZ2_decompress ( s ); + if (r == BZ_STREAM_END) { + if (s->verbosity >= 3) + VPrintf2 ( "\n combined CRCs: stored = 0x%08x, computed = 0x%08x", + s->storedCombinedCRC, s->calculatedCombinedCRC ); + if (s->calculatedCombinedCRC != s->storedCombinedCRC) + return BZ_DATA_ERROR; + return r; + } + if (s->state != BZ_X_OUTPUT) return r; + } + } + + AssertH ( 0, 6001 ); + + return 0; /*NOTREACHED*/ +} + + +/*---------------------------------------------------*/ +int BZ_API(BZ2_bzDecompressEnd) ( bz_stream *strm ) +{ + DState* s; + if (strm == NULL) return BZ_PARAM_ERROR; + s = strm->state; + if (s == NULL) return BZ_PARAM_ERROR; + if (s->strm != strm) return BZ_PARAM_ERROR; + + if (s->tt != NULL) BZFREE(s->tt); + if (s->ll16 != NULL) BZFREE(s->ll16); + if (s->ll4 != NULL) BZFREE(s->ll4); + + BZFREE(strm->state); + strm->state = NULL; + + return BZ_OK; +} + + +#ifndef BZ_NO_STDIO +/*---------------------------------------------------*/ +/*--- File I/O stuff ---*/ +/*---------------------------------------------------*/ + +#define BZ_SETERR(eee) \ +{ \ + if (bzerror != NULL) *bzerror = eee; \ + if (bzf != NULL) bzf->lastErr = eee; \ +} + +typedef + struct { + FILE* handle; + Char buf[BZ_MAX_UNUSED]; + Int32 bufN; + Bool writing; + bz_stream strm; + Int32 lastErr; + Bool initialisedOk; + } + bzFile; + + +/*---------------------------------------------*/ +static Bool myfeof ( FILE* f ) +{ + Int32 c = fgetc ( f ); + if (c == EOF) return True; + ungetc ( c, f ); + return False; +} + + +/*---------------------------------------------------*/ +BZFILE* BZ_API(BZ2_bzWriteOpen) + ( int* bzerror, + FILE* f, + int blockSize100k, + int verbosity, + int workFactor ) +{ + Int32 ret; + bzFile* bzf = NULL; + + BZ_SETERR(BZ_OK); + + if (f == NULL || + (blockSize100k < 1 || blockSize100k > 9) || + (workFactor < 0 || workFactor > 250) || + (verbosity < 0 || verbosity > 4)) + { BZ_SETERR(BZ_PARAM_ERROR); return NULL; }; + + if (ferror(f)) + { BZ_SETERR(BZ_IO_ERROR); return NULL; }; + + bzf = malloc ( sizeof(bzFile) ); + if (bzf == NULL) + { BZ_SETERR(BZ_MEM_ERROR); return NULL; }; + + BZ_SETERR(BZ_OK); + bzf->initialisedOk = False; + bzf->bufN = 0; + bzf->handle = f; + bzf->writing = True; + bzf->strm.bzalloc = NULL; + bzf->strm.bzfree = NULL; + bzf->strm.opaque = NULL; + + if (workFactor == 0) workFactor = 30; + ret = BZ2_bzCompressInit ( &(bzf->strm), blockSize100k, + verbosity, workFactor ); + if (ret != BZ_OK) + { BZ_SETERR(ret); free(bzf); return NULL; }; + + bzf->strm.avail_in = 0; + bzf->initialisedOk = True; + return bzf; +} + + + +/*---------------------------------------------------*/ +void BZ_API(BZ2_bzWrite) + ( int* bzerror, + BZFILE* b, + void* buf, + int len ) +{ + Int32 n, n2, ret; + bzFile* bzf = (bzFile*)b; + + BZ_SETERR(BZ_OK); + if (bzf == NULL || buf == NULL || len < 0) + { BZ_SETERR(BZ_PARAM_ERROR); return; }; + if (!(bzf->writing)) + { BZ_SETERR(BZ_SEQUENCE_ERROR); return; }; + if (ferror(bzf->handle)) + { BZ_SETERR(BZ_IO_ERROR); return; }; + + if (len == 0) + { BZ_SETERR(BZ_OK); return; }; + + bzf->strm.avail_in = len; + bzf->strm.next_in = buf; + + while (True) { + bzf->strm.avail_out = BZ_MAX_UNUSED; + bzf->strm.next_out = bzf->buf; + ret = BZ2_bzCompress ( &(bzf->strm), BZ_RUN ); + if (ret != BZ_RUN_OK) + { BZ_SETERR(ret); return; }; + + if (bzf->strm.avail_out < BZ_MAX_UNUSED) { + n = BZ_MAX_UNUSED - bzf->strm.avail_out; + n2 = fwrite ( (void*)(bzf->buf), sizeof(UChar), + n, bzf->handle ); + if (n != n2 || ferror(bzf->handle)) + { BZ_SETERR(BZ_IO_ERROR); return; }; + } + + if (bzf->strm.avail_in == 0) + { BZ_SETERR(BZ_OK); return; }; + } +} + + +/*---------------------------------------------------*/ +void BZ_API(BZ2_bzWriteClose) + ( int* bzerror, + BZFILE* b, + int abandon, + unsigned int* nbytes_in, + unsigned int* nbytes_out ) +{ + BZ2_bzWriteClose64 ( bzerror, b, abandon, + nbytes_in, NULL, nbytes_out, NULL ); +} + + +void BZ_API(BZ2_bzWriteClose64) + ( int* bzerror, + BZFILE* b, + int abandon, + unsigned int* nbytes_in_lo32, + unsigned int* nbytes_in_hi32, + unsigned int* nbytes_out_lo32, + unsigned int* nbytes_out_hi32 ) +{ + Int32 n, n2, ret; + bzFile* bzf = (bzFile*)b; + + if (bzf == NULL) + { BZ_SETERR(BZ_OK); return; }; + if (!(bzf->writing)) + { BZ_SETERR(BZ_SEQUENCE_ERROR); return; }; + if (ferror(bzf->handle)) + { BZ_SETERR(BZ_IO_ERROR); return; }; + + if (nbytes_in_lo32 != NULL) *nbytes_in_lo32 = 0; + if (nbytes_in_hi32 != NULL) *nbytes_in_hi32 = 0; + if (nbytes_out_lo32 != NULL) *nbytes_out_lo32 = 0; + if (nbytes_out_hi32 != NULL) *nbytes_out_hi32 = 0; + + if ((!abandon) && bzf->lastErr == BZ_OK) { + while (True) { + bzf->strm.avail_out = BZ_MAX_UNUSED; + bzf->strm.next_out = bzf->buf; + ret = BZ2_bzCompress ( &(bzf->strm), BZ_FINISH ); + if (ret != BZ_FINISH_OK && ret != BZ_STREAM_END) + { BZ_SETERR(ret); return; }; + + if (bzf->strm.avail_out < BZ_MAX_UNUSED) { + n = BZ_MAX_UNUSED - bzf->strm.avail_out; + n2 = fwrite ( (void*)(bzf->buf), sizeof(UChar), + n, bzf->handle ); + if (n != n2 || ferror(bzf->handle)) + { BZ_SETERR(BZ_IO_ERROR); return; }; + } + + if (ret == BZ_STREAM_END) break; + } + } + + if ( !abandon && !ferror ( bzf->handle ) ) { + fflush ( bzf->handle ); + if (ferror(bzf->handle)) + { BZ_SETERR(BZ_IO_ERROR); return; }; + } + + if (nbytes_in_lo32 != NULL) + *nbytes_in_lo32 = bzf->strm.total_in_lo32; + if (nbytes_in_hi32 != NULL) + *nbytes_in_hi32 = bzf->strm.total_in_hi32; + if (nbytes_out_lo32 != NULL) + *nbytes_out_lo32 = bzf->strm.total_out_lo32; + if (nbytes_out_hi32 != NULL) + *nbytes_out_hi32 = bzf->strm.total_out_hi32; + + BZ_SETERR(BZ_OK); + BZ2_bzCompressEnd ( &(bzf->strm) ); + free ( bzf ); +} + + +/*---------------------------------------------------*/ +BZFILE* BZ_API(BZ2_bzReadOpen) + ( int* bzerror, + FILE* f, + int verbosity, + int small, + void* unused, + int nUnused ) +{ + bzFile* bzf = NULL; + int ret; + + BZ_SETERR(BZ_OK); + + if (f == NULL || + (small != 0 && small != 1) || + (verbosity < 0 || verbosity > 4) || + (unused == NULL && nUnused != 0) || + (unused != NULL && (nUnused < 0 || nUnused > BZ_MAX_UNUSED))) + { BZ_SETERR(BZ_PARAM_ERROR); return NULL; }; + + if (ferror(f)) + { BZ_SETERR(BZ_IO_ERROR); return NULL; }; + + bzf = malloc ( sizeof(bzFile) ); + if (bzf == NULL) + { BZ_SETERR(BZ_MEM_ERROR); return NULL; }; + + BZ_SETERR(BZ_OK); + + bzf->initialisedOk = False; + bzf->handle = f; + bzf->bufN = 0; + bzf->writing = False; + bzf->strm.bzalloc = NULL; + bzf->strm.bzfree = NULL; + bzf->strm.opaque = NULL; + + while (nUnused > 0) { + bzf->buf[bzf->bufN] = *((UChar*)(unused)); bzf->bufN++; + unused = ((void*)( 1 + ((UChar*)(unused)) )); + nUnused--; + } + + ret = BZ2_bzDecompressInit ( &(bzf->strm), verbosity, small ); + if (ret != BZ_OK) + { BZ_SETERR(ret); free(bzf); return NULL; }; + + bzf->strm.avail_in = bzf->bufN; + bzf->strm.next_in = bzf->buf; + + bzf->initialisedOk = True; + return bzf; +} + + +/*---------------------------------------------------*/ +void BZ_API(BZ2_bzReadClose) ( int *bzerror, BZFILE *b ) +{ + bzFile* bzf = (bzFile*)b; + + BZ_SETERR(BZ_OK); + if (bzf == NULL) + { BZ_SETERR(BZ_OK); return; }; + + if (bzf->writing) + { BZ_SETERR(BZ_SEQUENCE_ERROR); return; }; + + if (bzf->initialisedOk) + (void)BZ2_bzDecompressEnd ( &(bzf->strm) ); + free ( bzf ); +} + + +/*---------------------------------------------------*/ +int BZ_API(BZ2_bzRead) + ( int* bzerror, + BZFILE* b, + void* buf, + int len ) +{ + Int32 n, ret; + bzFile* bzf = (bzFile*)b; + + BZ_SETERR(BZ_OK); + + if (bzf == NULL || buf == NULL || len < 0) + { BZ_SETERR(BZ_PARAM_ERROR); return 0; }; + + if (bzf->writing) + { BZ_SETERR(BZ_SEQUENCE_ERROR); return 0; }; + + if (len == 0) + { BZ_SETERR(BZ_OK); return 0; }; + + bzf->strm.avail_out = len; + bzf->strm.next_out = buf; + + while (True) { + + if (ferror(bzf->handle)) + { BZ_SETERR(BZ_IO_ERROR); return 0; }; + + if (bzf->strm.avail_in == 0 && !myfeof(bzf->handle)) { + n = fread ( bzf->buf, sizeof(UChar), + BZ_MAX_UNUSED, bzf->handle ); + if (ferror(bzf->handle)) + { BZ_SETERR(BZ_IO_ERROR); return 0; }; + bzf->bufN = n; + bzf->strm.avail_in = bzf->bufN; + bzf->strm.next_in = bzf->buf; + } + + ret = BZ2_bzDecompress ( &(bzf->strm) ); + + if (ret != BZ_OK && ret != BZ_STREAM_END) + { BZ_SETERR(ret); return 0; }; + + if (ret == BZ_OK && myfeof(bzf->handle) && + bzf->strm.avail_in == 0 && bzf->strm.avail_out > 0) + { BZ_SETERR(BZ_UNEXPECTED_EOF); return 0; }; + + if (ret == BZ_STREAM_END) + { BZ_SETERR(BZ_STREAM_END); + return len - bzf->strm.avail_out; }; + if (bzf->strm.avail_out == 0) + { BZ_SETERR(BZ_OK); return len; }; + + } + + return 0; /*not reached*/ +} + + +/*---------------------------------------------------*/ +void BZ_API(BZ2_bzReadGetUnused) + ( int* bzerror, + BZFILE* b, + void** unused, + int* nUnused ) +{ + bzFile* bzf = (bzFile*)b; + if (bzf == NULL) + { BZ_SETERR(BZ_PARAM_ERROR); return; }; + if (bzf->lastErr != BZ_STREAM_END) + { BZ_SETERR(BZ_SEQUENCE_ERROR); return; }; + if (unused == NULL || nUnused == NULL) + { BZ_SETERR(BZ_PARAM_ERROR); return; }; + + BZ_SETERR(BZ_OK); + *nUnused = bzf->strm.avail_in; + *unused = bzf->strm.next_in; +} +#endif + + +/*---------------------------------------------------*/ +/*--- Misc convenience stuff ---*/ +/*---------------------------------------------------*/ + +/*---------------------------------------------------*/ +int BZ_API(BZ2_bzBuffToBuffCompress) + ( char* dest, + unsigned int* destLen, + char* source, + unsigned int sourceLen, + int blockSize100k, + int verbosity, + int workFactor ) +{ + bz_stream strm; + int ret; + + if (dest == NULL || destLen == NULL || + source == NULL || + blockSize100k < 1 || blockSize100k > 9 || + verbosity < 0 || verbosity > 4 || + workFactor < 0 || workFactor > 250) + return BZ_PARAM_ERROR; + + if (workFactor == 0) workFactor = 30; + strm.bzalloc = NULL; + strm.bzfree = NULL; + strm.opaque = NULL; + ret = BZ2_bzCompressInit ( &strm, blockSize100k, + verbosity, workFactor ); + if (ret != BZ_OK) return ret; + + strm.next_in = source; + strm.next_out = dest; + strm.avail_in = sourceLen; + strm.avail_out = *destLen; + + ret = BZ2_bzCompress ( &strm, BZ_FINISH ); + if (ret == BZ_FINISH_OK) goto output_overflow; + if (ret != BZ_STREAM_END) goto errhandler; + + /* normal termination */ + *destLen -= strm.avail_out; + BZ2_bzCompressEnd ( &strm ); + return BZ_OK; + + output_overflow: + BZ2_bzCompressEnd ( &strm ); + return BZ_OUTBUFF_FULL; + + errhandler: + BZ2_bzCompressEnd ( &strm ); + return ret; +} + + +/*---------------------------------------------------*/ +int BZ_API(BZ2_bzBuffToBuffDecompress) + ( char* dest, + unsigned int* destLen, + char* source, + unsigned int sourceLen, + int small, + int verbosity ) +{ + bz_stream strm; + int ret; + + if (dest == NULL || destLen == NULL || + source == NULL || + (small != 0 && small != 1) || + verbosity < 0 || verbosity > 4) + return BZ_PARAM_ERROR; + + strm.bzalloc = NULL; + strm.bzfree = NULL; + strm.opaque = NULL; + ret = BZ2_bzDecompressInit ( &strm, verbosity, small ); + if (ret != BZ_OK) return ret; + + strm.next_in = source; + strm.next_out = dest; + strm.avail_in = sourceLen; + strm.avail_out = *destLen; + + ret = BZ2_bzDecompress ( &strm ); + if (ret == BZ_OK) goto output_overflow_or_eof; + if (ret != BZ_STREAM_END) goto errhandler; + + /* normal termination */ + *destLen -= strm.avail_out; + BZ2_bzDecompressEnd ( &strm ); + return BZ_OK; + + output_overflow_or_eof: + if (strm.avail_out > 0) { + BZ2_bzDecompressEnd ( &strm ); + return BZ_UNEXPECTED_EOF; + } else { + BZ2_bzDecompressEnd ( &strm ); + return BZ_OUTBUFF_FULL; + }; + + errhandler: + BZ2_bzDecompressEnd ( &strm ); + return ret; +} + + +/*---------------------------------------------------*/ +/*-- + Code contributed by Yoshioka Tsuneo (tsuneo@rr.iij4u.or.jp) + to support better zlib compatibility. + This code is not _officially_ part of libbzip2 (yet); + I haven't tested it, documented it, or considered the + threading-safeness of it. + If this code breaks, please contact both Yoshioka and me. +--*/ +/*---------------------------------------------------*/ + +/*---------------------------------------------------*/ +/*-- + return version like "0.9.5d, 4-Sept-1999". +--*/ +const char * BZ_API(BZ2_bzlibVersion)(void) +{ + return BZ_VERSION; +} + + +#ifndef BZ_NO_STDIO +/*---------------------------------------------------*/ + +#if defined(_WIN32) || defined(OS2) || defined(MSDOS) +# include <fcntl.h> +# include <io.h> +# define SET_BINARY_MODE(file) setmode(fileno(file),O_BINARY) +#else +# define SET_BINARY_MODE(file) +#endif +static +BZFILE * bzopen_or_bzdopen + ( const char *path, /* no use when bzdopen */ + int fd, /* no use when bzdopen */ + const char *mode, + int open_mode) /* bzopen: 0, bzdopen:1 */ +{ + int bzerr; + char unused[BZ_MAX_UNUSED]; + int blockSize100k = 9; + int writing = 0; + char mode2[10] = ""; + FILE *fp = NULL; + BZFILE *bzfp = NULL; + int verbosity = 0; + int workFactor = 30; + int smallMode = 0; + int nUnused = 0; + + if (mode == NULL) return NULL; + while (*mode) { + switch (*mode) { + case 'r': + writing = 0; break; + case 'w': + writing = 1; break; + case 's': + smallMode = 1; break; + default: + if (isdigit((int)(*mode))) { + blockSize100k = *mode-BZ_HDR_0; + } + } + mode++; + } + strcat(mode2, writing ? "w" : "r" ); + strcat(mode2,"b"); /* binary mode */ + + if (open_mode==0) { + if (path==NULL || strcmp(path,"")==0) { + fp = (writing ? stdout : stdin); + SET_BINARY_MODE(fp); + } else { + fp = fopen(path,mode2); + } + } else { +#ifdef BZ_STRICT_ANSI + fp = NULL; +#else + fp = fdopen(fd,mode2); +#endif + } + if (fp == NULL) return NULL; + + if (writing) { + /* Guard against total chaos and anarchy -- JRS */ + if (blockSize100k < 1) blockSize100k = 1; + if (blockSize100k > 9) blockSize100k = 9; + bzfp = BZ2_bzWriteOpen(&bzerr,fp,blockSize100k, + verbosity,workFactor); + } else { + bzfp = BZ2_bzReadOpen(&bzerr,fp,verbosity,smallMode, + unused,nUnused); + } + if (bzfp == NULL) { + if (fp != stdin && fp != stdout) fclose(fp); + return NULL; + } + return bzfp; +} + + +/*---------------------------------------------------*/ +/*-- + open file for read or write. + ex) bzopen("file","w9") + case path="" or NULL => use stdin or stdout. +--*/ +BZFILE * BZ_API(BZ2_bzopen) + ( const char *path, + const char *mode ) +{ + return bzopen_or_bzdopen(path,-1,mode,/*bzopen*/0); +} + + +/*---------------------------------------------------*/ +BZFILE * BZ_API(BZ2_bzdopen) + ( int fd, + const char *mode ) +{ + return bzopen_or_bzdopen(NULL,fd,mode,/*bzdopen*/1); +} + + +/*---------------------------------------------------*/ +int BZ_API(BZ2_bzread) (BZFILE* b, void* buf, int len ) +{ + int bzerr, nread; + if (((bzFile*)b)->lastErr == BZ_STREAM_END) return 0; + nread = BZ2_bzRead(&bzerr,b,buf,len); + if (bzerr == BZ_OK || bzerr == BZ_STREAM_END) { + return nread; + } else { + return -1; + } +} + + +/*---------------------------------------------------*/ +int BZ_API(BZ2_bzwrite) (BZFILE* b, void* buf, int len ) +{ + int bzerr; + + BZ2_bzWrite(&bzerr,b,buf,len); + if(bzerr == BZ_OK){ + return len; + }else{ + return -1; + } +} + + +/*---------------------------------------------------*/ +int BZ_API(BZ2_bzflush) (BZFILE *b) +{ + /* do nothing now... */ + return 0; +} + + +/*---------------------------------------------------*/ +void BZ_API(BZ2_bzclose) (BZFILE* b) +{ + int bzerr; + FILE *fp; + + if (b==NULL) {return;} + fp = ((bzFile *)b)->handle; + if(((bzFile*)b)->writing){ + BZ2_bzWriteClose(&bzerr,b,0,NULL,NULL); + if(bzerr != BZ_OK){ + BZ2_bzWriteClose(NULL,b,1,NULL,NULL); + } + }else{ + BZ2_bzReadClose(&bzerr,b); + } + if(fp!=stdin && fp!=stdout){ + fclose(fp); + } +} + + +/*---------------------------------------------------*/ +/*-- + return last error code +--*/ +static const char *bzerrorstrings[] = { + "OK" + ,"SEQUENCE_ERROR" + ,"PARAM_ERROR" + ,"MEM_ERROR" + ,"DATA_ERROR" + ,"DATA_ERROR_MAGIC" + ,"IO_ERROR" + ,"UNEXPECTED_EOF" + ,"OUTBUFF_FULL" + ,"CONFIG_ERROR" + ,"???" /* for future */ + ,"???" /* for future */ + ,"???" /* for future */ + ,"???" /* for future */ + ,"???" /* for future */ + ,"???" /* for future */ +}; + + +const char * BZ_API(BZ2_bzerror) (BZFILE *b, int *errnum) +{ + int err = ((bzFile *)b)->lastErr; + + if(err>0) err = 0; + *errnum = err; + return bzerrorstrings[err*-1]; +} +#endif + + +/*-------------------------------------------------------------*/ +/*--- end bzlib.c ---*/ +/*-------------------------------------------------------------*/ @@ -0,0 +1,282 @@ + +/*-------------------------------------------------------------*/ +/*--- Public header file for the library. ---*/ +/*--- bzlib.h ---*/ +/*-------------------------------------------------------------*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + + +#ifndef _BZLIB_H +#define _BZLIB_H + +#ifdef __cplusplus +extern "C" { +#endif + +#define BZ_RUN 0 +#define BZ_FLUSH 1 +#define BZ_FINISH 2 + +#define BZ_OK 0 +#define BZ_RUN_OK 1 +#define BZ_FLUSH_OK 2 +#define BZ_FINISH_OK 3 +#define BZ_STREAM_END 4 +#define BZ_SEQUENCE_ERROR (-1) +#define BZ_PARAM_ERROR (-2) +#define BZ_MEM_ERROR (-3) +#define BZ_DATA_ERROR (-4) +#define BZ_DATA_ERROR_MAGIC (-5) +#define BZ_IO_ERROR (-6) +#define BZ_UNEXPECTED_EOF (-7) +#define BZ_OUTBUFF_FULL (-8) +#define BZ_CONFIG_ERROR (-9) + +typedef + struct { + char *next_in; + unsigned int avail_in; + unsigned int total_in_lo32; + unsigned int total_in_hi32; + + char *next_out; + unsigned int avail_out; + unsigned int total_out_lo32; + unsigned int total_out_hi32; + + void *state; + + void *(*bzalloc)(void *,int,int); + void (*bzfree)(void *,void *); + void *opaque; + } + bz_stream; + + +#ifndef BZ_IMPORT +#define BZ_EXPORT +#endif + +#ifndef BZ_NO_STDIO +/* Need a definitition for FILE */ +#include <stdio.h> +#endif + +#ifdef _WIN32 +# include <windows.h> +# ifdef small + /* windows.h define small to char */ +# undef small +# endif +# ifdef BZ_EXPORT +# define BZ_API(func) WINAPI func +# define BZ_EXTERN extern +# else + /* import windows dll dynamically */ +# define BZ_API(func) (WINAPI * func) +# define BZ_EXTERN +# endif +#else +# define BZ_API(func) func +# define BZ_EXTERN extern +#endif + + +/*-- Core (low-level) library functions --*/ + +BZ_EXTERN int BZ_API(BZ2_bzCompressInit) ( + bz_stream* strm, + int blockSize100k, + int verbosity, + int workFactor + ); + +BZ_EXTERN int BZ_API(BZ2_bzCompress) ( + bz_stream* strm, + int action + ); + +BZ_EXTERN int BZ_API(BZ2_bzCompressEnd) ( + bz_stream* strm + ); + +BZ_EXTERN int BZ_API(BZ2_bzDecompressInit) ( + bz_stream *strm, + int verbosity, + int small + ); + +BZ_EXTERN int BZ_API(BZ2_bzDecompress) ( + bz_stream* strm + ); + +BZ_EXTERN int BZ_API(BZ2_bzDecompressEnd) ( + bz_stream *strm + ); + + + +/*-- High(er) level library functions --*/ + +#ifndef BZ_NO_STDIO +#define BZ_MAX_UNUSED 5000 + +typedef void BZFILE; + +BZ_EXTERN BZFILE* BZ_API(BZ2_bzReadOpen) ( + int* bzerror, + FILE* f, + int verbosity, + int small, + void* unused, + int nUnused + ); + +BZ_EXTERN void BZ_API(BZ2_bzReadClose) ( + int* bzerror, + BZFILE* b + ); + +BZ_EXTERN void BZ_API(BZ2_bzReadGetUnused) ( + int* bzerror, + BZFILE* b, + void** unused, + int* nUnused + ); + +BZ_EXTERN int BZ_API(BZ2_bzRead) ( + int* bzerror, + BZFILE* b, + void* buf, + int len + ); + +BZ_EXTERN BZFILE* BZ_API(BZ2_bzWriteOpen) ( + int* bzerror, + FILE* f, + int blockSize100k, + int verbosity, + int workFactor + ); + +BZ_EXTERN void BZ_API(BZ2_bzWrite) ( + int* bzerror, + BZFILE* b, + void* buf, + int len + ); + +BZ_EXTERN void BZ_API(BZ2_bzWriteClose) ( + int* bzerror, + BZFILE* b, + int abandon, + unsigned int* nbytes_in, + unsigned int* nbytes_out + ); + +BZ_EXTERN void BZ_API(BZ2_bzWriteClose64) ( + int* bzerror, + BZFILE* b, + int abandon, + unsigned int* nbytes_in_lo32, + unsigned int* nbytes_in_hi32, + unsigned int* nbytes_out_lo32, + unsigned int* nbytes_out_hi32 + ); +#endif + + +/*-- Utility functions --*/ + +BZ_EXTERN int BZ_API(BZ2_bzBuffToBuffCompress) ( + char* dest, + unsigned int* destLen, + char* source, + unsigned int sourceLen, + int blockSize100k, + int verbosity, + int workFactor + ); + +BZ_EXTERN int BZ_API(BZ2_bzBuffToBuffDecompress) ( + char* dest, + unsigned int* destLen, + char* source, + unsigned int sourceLen, + int small, + int verbosity + ); + + +/*-- + Code contributed by Yoshioka Tsuneo (tsuneo@rr.iij4u.or.jp) + to support better zlib compatibility. + This code is not _officially_ part of libbzip2 (yet); + I haven't tested it, documented it, or considered the + threading-safeness of it. + If this code breaks, please contact both Yoshioka and me. +--*/ + +BZ_EXTERN const char * BZ_API(BZ2_bzlibVersion) ( + void + ); + +#ifndef BZ_NO_STDIO +BZ_EXTERN BZFILE * BZ_API(BZ2_bzopen) ( + const char *path, + const char *mode + ); + +BZ_EXTERN BZFILE * BZ_API(BZ2_bzdopen) ( + int fd, + const char *mode + ); + +BZ_EXTERN int BZ_API(BZ2_bzread) ( + BZFILE* b, + void* buf, + int len + ); + +BZ_EXTERN int BZ_API(BZ2_bzwrite) ( + BZFILE* b, + void* buf, + int len + ); + +BZ_EXTERN int BZ_API(BZ2_bzflush) ( + BZFILE* b + ); + +BZ_EXTERN void BZ_API(BZ2_bzclose) ( + BZFILE* b + ); + +BZ_EXTERN const char * BZ_API(BZ2_bzerror) ( + BZFILE *b, + int *errnum + ); +#endif + +#ifdef __cplusplus +} +#endif + +#endif + +/*-------------------------------------------------------------*/ +/*--- end bzlib.h ---*/ +/*-------------------------------------------------------------*/ diff --git a/bzlib_private.h b/bzlib_private.h new file mode 100644 index 0000000..2342787 --- /dev/null +++ b/bzlib_private.h @@ -0,0 +1,509 @@ + +/*-------------------------------------------------------------*/ +/*--- Private header file for the library. ---*/ +/*--- bzlib_private.h ---*/ +/*-------------------------------------------------------------*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + + +#ifndef _BZLIB_PRIVATE_H +#define _BZLIB_PRIVATE_H + +#include <stdlib.h> + +#ifndef BZ_NO_STDIO +#include <stdio.h> +#include <ctype.h> +#include <string.h> +#endif + +#include "bzlib.h" + + + +/*-- General stuff. --*/ + +#define BZ_VERSION "1.0.5, 10-Dec-2007" + +typedef char Char; +typedef unsigned char Bool; +typedef unsigned char UChar; +typedef int Int32; +typedef unsigned int UInt32; +typedef short Int16; +typedef unsigned short UInt16; + +#define True ((Bool)1) +#define False ((Bool)0) + +#ifndef __GNUC__ +#define __inline__ /* */ +#endif + +#ifndef BZ_NO_STDIO + +extern void BZ2_bz__AssertH__fail ( int errcode ); +#define AssertH(cond,errcode) \ + { if (!(cond)) BZ2_bz__AssertH__fail ( errcode ); } + +#if BZ_DEBUG +#define AssertD(cond,msg) \ + { if (!(cond)) { \ + fprintf ( stderr, \ + "\n\nlibbzip2(debug build): internal error\n\t%s\n", msg );\ + exit(1); \ + }} +#else +#define AssertD(cond,msg) /* */ +#endif + +#define VPrintf0(zf) \ + fprintf(stderr,zf) +#define VPrintf1(zf,za1) \ + fprintf(stderr,zf,za1) +#define VPrintf2(zf,za1,za2) \ + fprintf(stderr,zf,za1,za2) +#define VPrintf3(zf,za1,za2,za3) \ + fprintf(stderr,zf,za1,za2,za3) +#define VPrintf4(zf,za1,za2,za3,za4) \ + fprintf(stderr,zf,za1,za2,za3,za4) +#define VPrintf5(zf,za1,za2,za3,za4,za5) \ + fprintf(stderr,zf,za1,za2,za3,za4,za5) + +#else + +extern void bz_internal_error ( int errcode ); +#define AssertH(cond,errcode) \ + { if (!(cond)) bz_internal_error ( errcode ); } +#define AssertD(cond,msg) do { } while (0) +#define VPrintf0(zf) do { } while (0) +#define VPrintf1(zf,za1) do { } while (0) +#define VPrintf2(zf,za1,za2) do { } while (0) +#define VPrintf3(zf,za1,za2,za3) do { } while (0) +#define VPrintf4(zf,za1,za2,za3,za4) do { } while (0) +#define VPrintf5(zf,za1,za2,za3,za4,za5) do { } while (0) + +#endif + + +#define BZALLOC(nnn) (strm->bzalloc)(strm->opaque,(nnn),1) +#define BZFREE(ppp) (strm->bzfree)(strm->opaque,(ppp)) + + +/*-- Header bytes. --*/ + +#define BZ_HDR_B 0x42 /* 'B' */ +#define BZ_HDR_Z 0x5a /* 'Z' */ +#define BZ_HDR_h 0x68 /* 'h' */ +#define BZ_HDR_0 0x30 /* '0' */ + +/*-- Constants for the back end. --*/ + +#define BZ_MAX_ALPHA_SIZE 258 +#define BZ_MAX_CODE_LEN 23 + +#define BZ_RUNA 0 +#define BZ_RUNB 1 + +#define BZ_N_GROUPS 6 +#define BZ_G_SIZE 50 +#define BZ_N_ITERS 4 + +#define BZ_MAX_SELECTORS (2 + (900000 / BZ_G_SIZE)) + + + +/*-- Stuff for randomising repetitive blocks. --*/ + +extern Int32 BZ2_rNums[512]; + +#define BZ_RAND_DECLS \ + Int32 rNToGo; \ + Int32 rTPos \ + +#define BZ_RAND_INIT_MASK \ + s->rNToGo = 0; \ + s->rTPos = 0 \ + +#define BZ_RAND_MASK ((s->rNToGo == 1) ? 1 : 0) + +#define BZ_RAND_UPD_MASK \ + if (s->rNToGo == 0) { \ + s->rNToGo = BZ2_rNums[s->rTPos]; \ + s->rTPos++; \ + if (s->rTPos == 512) s->rTPos = 0; \ + } \ + s->rNToGo--; + + + +/*-- Stuff for doing CRCs. --*/ + +extern UInt32 BZ2_crc32Table[256]; + +#define BZ_INITIALISE_CRC(crcVar) \ +{ \ + crcVar = 0xffffffffL; \ +} + +#define BZ_FINALISE_CRC(crcVar) \ +{ \ + crcVar = ~(crcVar); \ +} + +#define BZ_UPDATE_CRC(crcVar,cha) \ +{ \ + crcVar = (crcVar << 8) ^ \ + BZ2_crc32Table[(crcVar >> 24) ^ \ + ((UChar)cha)]; \ +} + + + +/*-- States and modes for compression. --*/ + +#define BZ_M_IDLE 1 +#define BZ_M_RUNNING 2 +#define BZ_M_FLUSHING 3 +#define BZ_M_FINISHING 4 + +#define BZ_S_OUTPUT 1 +#define BZ_S_INPUT 2 + +#define BZ_N_RADIX 2 +#define BZ_N_QSORT 12 +#define BZ_N_SHELL 18 +#define BZ_N_OVERSHOOT (BZ_N_RADIX + BZ_N_QSORT + BZ_N_SHELL + 2) + + + + +/*-- Structure holding all the compression-side stuff. --*/ + +typedef + struct { + /* pointer back to the struct bz_stream */ + bz_stream* strm; + + /* mode this stream is in, and whether inputting */ + /* or outputting data */ + Int32 mode; + Int32 state; + + /* remembers avail_in when flush/finish requested */ + UInt32 avail_in_expect; + + /* for doing the block sorting */ + UInt32* arr1; + UInt32* arr2; + UInt32* ftab; + Int32 origPtr; + + /* aliases for arr1 and arr2 */ + UInt32* ptr; + UChar* block; + UInt16* mtfv; + UChar* zbits; + + /* for deciding when to use the fallback sorting algorithm */ + Int32 workFactor; + + /* run-length-encoding of the input */ + UInt32 state_in_ch; + Int32 state_in_len; + BZ_RAND_DECLS; + + /* input and output limits and current posns */ + Int32 nblock; + Int32 nblockMAX; + Int32 numZ; + Int32 state_out_pos; + + /* map of bytes used in block */ + Int32 nInUse; + Bool inUse[256]; + UChar unseqToSeq[256]; + + /* the buffer for bit stream creation */ + UInt32 bsBuff; + Int32 bsLive; + + /* block and combined CRCs */ + UInt32 blockCRC; + UInt32 combinedCRC; + + /* misc administratium */ + Int32 verbosity; + Int32 blockNo; + Int32 blockSize100k; + + /* stuff for coding the MTF values */ + Int32 nMTF; + Int32 mtfFreq [BZ_MAX_ALPHA_SIZE]; + UChar selector [BZ_MAX_SELECTORS]; + UChar selectorMtf[BZ_MAX_SELECTORS]; + + UChar len [BZ_N_GROUPS][BZ_MAX_ALPHA_SIZE]; + Int32 code [BZ_N_GROUPS][BZ_MAX_ALPHA_SIZE]; + Int32 rfreq [BZ_N_GROUPS][BZ_MAX_ALPHA_SIZE]; + /* second dimension: only 3 needed; 4 makes index calculations faster */ + UInt32 len_pack[BZ_MAX_ALPHA_SIZE][4]; + + } + EState; + + + +/*-- externs for compression. --*/ + +extern void +BZ2_blockSort ( EState* ); + +extern void +BZ2_compressBlock ( EState*, Bool ); + +extern void +BZ2_bsInitWrite ( EState* ); + +extern void +BZ2_hbAssignCodes ( Int32*, UChar*, Int32, Int32, Int32 ); + +extern void +BZ2_hbMakeCodeLengths ( UChar*, Int32*, Int32, Int32 ); + + + +/*-- states for decompression. --*/ + +#define BZ_X_IDLE 1 +#define BZ_X_OUTPUT 2 + +#define BZ_X_MAGIC_1 10 +#define BZ_X_MAGIC_2 11 +#define BZ_X_MAGIC_3 12 +#define BZ_X_MAGIC_4 13 +#define BZ_X_BLKHDR_1 14 +#define BZ_X_BLKHDR_2 15 +#define BZ_X_BLKHDR_3 16 +#define BZ_X_BLKHDR_4 17 +#define BZ_X_BLKHDR_5 18 +#define BZ_X_BLKHDR_6 19 +#define BZ_X_BCRC_1 20 +#define BZ_X_BCRC_2 21 +#define BZ_X_BCRC_3 22 +#define BZ_X_BCRC_4 23 +#define BZ_X_RANDBIT 24 +#define BZ_X_ORIGPTR_1 25 +#define BZ_X_ORIGPTR_2 26 +#define BZ_X_ORIGPTR_3 27 +#define BZ_X_MAPPING_1 28 +#define BZ_X_MAPPING_2 29 +#define BZ_X_SELECTOR_1 30 +#define BZ_X_SELECTOR_2 31 +#define BZ_X_SELECTOR_3 32 +#define BZ_X_CODING_1 33 +#define BZ_X_CODING_2 34 +#define BZ_X_CODING_3 35 +#define BZ_X_MTF_1 36 +#define BZ_X_MTF_2 37 +#define BZ_X_MTF_3 38 +#define BZ_X_MTF_4 39 +#define BZ_X_MTF_5 40 +#define BZ_X_MTF_6 41 +#define BZ_X_ENDHDR_2 42 +#define BZ_X_ENDHDR_3 43 +#define BZ_X_ENDHDR_4 44 +#define BZ_X_ENDHDR_5 45 +#define BZ_X_ENDHDR_6 46 +#define BZ_X_CCRC_1 47 +#define BZ_X_CCRC_2 48 +#define BZ_X_CCRC_3 49 +#define BZ_X_CCRC_4 50 + + + +/*-- Constants for the fast MTF decoder. --*/ + +#define MTFA_SIZE 4096 +#define MTFL_SIZE 16 + + + +/*-- Structure holding all the decompression-side stuff. --*/ + +typedef + struct { + /* pointer back to the struct bz_stream */ + bz_stream* strm; + + /* state indicator for this stream */ + Int32 state; + + /* for doing the final run-length decoding */ + UChar state_out_ch; + Int32 state_out_len; + Bool blockRandomised; + BZ_RAND_DECLS; + + /* the buffer for bit stream reading */ + UInt32 bsBuff; + Int32 bsLive; + + /* misc administratium */ + Int32 blockSize100k; + Bool smallDecompress; + Int32 currBlockNo; + Int32 verbosity; + + /* for undoing the Burrows-Wheeler transform */ + Int32 origPtr; + UInt32 tPos; + Int32 k0; + Int32 unzftab[256]; + Int32 nblock_used; + Int32 cftab[257]; + Int32 cftabCopy[257]; + + /* for undoing the Burrows-Wheeler transform (FAST) */ + UInt32 *tt; + + /* for undoing the Burrows-Wheeler transform (SMALL) */ + UInt16 *ll16; + UChar *ll4; + + /* stored and calculated CRCs */ + UInt32 storedBlockCRC; + UInt32 storedCombinedCRC; + UInt32 calculatedBlockCRC; + UInt32 calculatedCombinedCRC; + + /* map of bytes used in block */ + Int32 nInUse; + Bool inUse[256]; + Bool inUse16[16]; + UChar seqToUnseq[256]; + + /* for decoding the MTF values */ + UChar mtfa [MTFA_SIZE]; + Int32 mtfbase[256 / MTFL_SIZE]; + UChar selector [BZ_MAX_SELECTORS]; + UChar selectorMtf[BZ_MAX_SELECTORS]; + UChar len [BZ_N_GROUPS][BZ_MAX_ALPHA_SIZE]; + + Int32 limit [BZ_N_GROUPS][BZ_MAX_ALPHA_SIZE]; + Int32 base [BZ_N_GROUPS][BZ_MAX_ALPHA_SIZE]; + Int32 perm [BZ_N_GROUPS][BZ_MAX_ALPHA_SIZE]; + Int32 minLens[BZ_N_GROUPS]; + + /* save area for scalars in the main decompress code */ + Int32 save_i; + Int32 save_j; + Int32 save_t; + Int32 save_alphaSize; + Int32 save_nGroups; + Int32 save_nSelectors; + Int32 save_EOB; + Int32 save_groupNo; + Int32 save_groupPos; + Int32 save_nextSym; + Int32 save_nblockMAX; + Int32 save_nblock; + Int32 save_es; + Int32 save_N; + Int32 save_curr; + Int32 save_zt; + Int32 save_zn; + Int32 save_zvec; + Int32 save_zj; + Int32 save_gSel; + Int32 save_gMinlen; + Int32* save_gLimit; + Int32* save_gBase; + Int32* save_gPerm; + + } + DState; + + + +/*-- Macros for decompression. --*/ + +#define BZ_GET_FAST(cccc) \ + /* c_tPos is unsigned, hence test < 0 is pointless. */ \ + if (s->tPos >= (UInt32)100000 * (UInt32)s->blockSize100k) return True; \ + s->tPos = s->tt[s->tPos]; \ + cccc = (UChar)(s->tPos & 0xff); \ + s->tPos >>= 8; + +#define BZ_GET_FAST_C(cccc) \ + /* c_tPos is unsigned, hence test < 0 is pointless. */ \ + if (c_tPos >= (UInt32)100000 * (UInt32)ro_blockSize100k) return True; \ + c_tPos = c_tt[c_tPos]; \ + cccc = (UChar)(c_tPos & 0xff); \ + c_tPos >>= 8; + +#define SET_LL4(i,n) \ + { if (((i) & 0x1) == 0) \ + s->ll4[(i) >> 1] = (s->ll4[(i) >> 1] & 0xf0) | (n); else \ + s->ll4[(i) >> 1] = (s->ll4[(i) >> 1] & 0x0f) | ((n) << 4); \ + } + +#define GET_LL4(i) \ + ((((UInt32)(s->ll4[(i) >> 1])) >> (((i) << 2) & 0x4)) & 0xF) + +#define SET_LL(i,n) \ + { s->ll16[i] = (UInt16)(n & 0x0000ffff); \ + SET_LL4(i, n >> 16); \ + } + +#define GET_LL(i) \ + (((UInt32)s->ll16[i]) | (GET_LL4(i) << 16)) + +#define BZ_GET_SMALL(cccc) \ + /* c_tPos is unsigned, hence test < 0 is pointless. */ \ + if (s->tPos >= (UInt32)100000 * (UInt32)s->blockSize100k) return True; \ + cccc = BZ2_indexIntoF ( s->tPos, s->cftab ); \ + s->tPos = GET_LL(s->tPos); + + +/*-- externs for decompression. --*/ + +extern Int32 +BZ2_indexIntoF ( Int32, Int32* ); + +extern Int32 +BZ2_decompress ( DState* ); + +extern void +BZ2_hbCreateDecodeTables ( Int32*, Int32*, Int32*, UChar*, + Int32, Int32, Int32 ); + + +#endif + + +/*-- BZ_NO_STDIO seems to make NULL disappear on some platforms. --*/ + +#ifdef BZ_NO_STDIO +#ifndef NULL +#define NULL 0 +#endif +#endif + + +/*-------------------------------------------------------------*/ +/*--- end bzlib_private.h ---*/ +/*-------------------------------------------------------------*/ @@ -0,0 +1,61 @@ +#!/bin/sh + +# Bzmore wrapped for bzip2, +# adapted from zmore by Philippe Troin <phil@fifi.org> for Debian GNU/Linux. + +PATH="/usr/bin:$PATH"; export PATH + +prog=`echo $0 | sed 's|.*/||'` +case "$prog" in + *less) more=less ;; + *) more=more ;; +esac + +if test "`echo -n a`" = "-n a"; then + # looks like a SysV system: + n1=''; n2='\c' +else + n1='-n'; n2='' +fi +oldtty=`stty -g 2>/dev/null` +if stty -cbreak 2>/dev/null; then + cb='cbreak'; ncb='-cbreak' +else + # 'stty min 1' resets eof to ^a on both SunOS and SysV! + cb='min 1 -icanon'; ncb='icanon eof ^d' +fi +if test $? -eq 0 -a -n "$oldtty"; then + trap 'stty $oldtty 2>/dev/null; exit' 0 2 3 5 10 13 15 +else + trap 'stty $ncb echo 2>/dev/null; exit' 0 2 3 5 10 13 15 +fi + +if test $# = 0; then + if test -t 0; then + echo usage: $prog files... + else + bzip2 -cdfq | eval $more + fi +else + FIRST=1 + for FILE + do + if test $FIRST -eq 0; then + echo $n1 "--More--(Next file: $FILE)$n2" + stty $cb -echo 2>/dev/null + ANS=`dd bs=1 count=1 2>/dev/null` + stty $ncb echo 2>/dev/null + echo " " + if test "$ANS" = 'e' -o "$ANS" = 'q'; then + exit + fi + fi + if test "$ANS" != 's'; then + echo "------> $FILE <------" + bzip2 -cdfq "$FILE" | eval $more + fi + if test -t; then + FIRST=0 + fi + done +fi diff --git a/bzmore.1 b/bzmore.1 new file mode 100644 index 0000000..b437d3b --- /dev/null +++ b/bzmore.1 @@ -0,0 +1,152 @@ +.\"Shamelessly copied from zmore.1 by Philippe Troin <phil@fifi.org> +.\"for Debian GNU/Linux +.TH BZMORE 1 +.SH NAME +bzmore, bzless \- file perusal filter for crt viewing of bzip2 compressed text +.SH SYNOPSIS +.B bzmore +[ name ... ] +.br +.B bzless +[ name ... ] +.SH NOTE +In the following description, +.I bzless +and +.I less +can be used interchangeably with +.I bzmore +and +.I more. +.SH DESCRIPTION +.I Bzmore +is a filter which allows examination of compressed or plain text files +one screenful at a time on a soft-copy terminal. +.I bzmore +works on files compressed with +.I bzip2 +and also on uncompressed files. +If a file does not exist, +.I bzmore +looks for a file of the same name with the addition of a .bz2 suffix. +.PP +.I Bzmore +normally pauses after each screenful, printing --More-- +at the bottom of the screen. +If the user then types a carriage return, one more line is displayed. +If the user hits a space, +another screenful is displayed. Other possibilities are enumerated later. +.PP +.I Bzmore +looks in the file +.I /etc/termcap +to determine terminal characteristics, +and to determine the default window size. +On a terminal capable of displaying 24 lines, +the default window size is 22 lines. +Other sequences which may be typed when +.I bzmore +pauses, and their effects, are as follows (\fIi\fP is an optional integer +argument, defaulting to 1) : +.PP +.IP \fIi\|\fP<space> +display +.I i +more lines, (or another screenful if no argument is given) +.PP +.IP ^D +display 11 more lines (a ``scroll''). +If +.I i +is given, then the scroll size is set to \fIi\|\fP. +.PP +.IP d +same as ^D (control-D) +.PP +.IP \fIi\|\fPz +same as typing a space except that \fIi\|\fP, if present, becomes the new +window size. Note that the window size reverts back to the default at the +end of the current file. +.PP +.IP \fIi\|\fPs +skip \fIi\|\fP lines and print a screenful of lines +.PP +.IP \fIi\|\fPf +skip \fIi\fP screenfuls and print a screenful of lines +.PP +.IP "q or Q" +quit reading the current file; go on to the next (if any) +.PP +.IP "e or q" +When the prompt --More--(Next file: +.IR file ) +is printed, this command causes bzmore to exit. +.PP +.IP s +When the prompt --More--(Next file: +.IR file ) +is printed, this command causes bzmore to skip the next file and continue. +.PP +.IP = +Display the current line number. +.PP +.IP \fIi\|\fP/expr +search for the \fIi\|\fP-th occurrence of the regular expression \fIexpr.\fP +If the pattern is not found, +.I bzmore +goes on to the next file (if any). +Otherwise, a screenful is displayed, starting two lines before the place +where the expression was found. +The user's erase and kill characters may be used to edit the regular +expression. +Erasing back past the first column cancels the search command. +.PP +.IP \fIi\|\fPn +search for the \fIi\|\fP-th occurrence of the last regular expression entered. +.PP +.IP !command +invoke a shell with \fIcommand\|\fP. +The character `!' in "command" are replaced with the +previous shell command. The sequence "\\!" is replaced by "!". +.PP +.IP ":q or :Q" +quit reading the current file; go on to the next (if any) +(same as q or Q). +.PP +.IP . +(dot) repeat the previous command. +.PP +The commands take effect immediately, i.e., it is not necessary to +type a carriage return. +Up to the time when the command character itself is given, +the user may hit the line kill character to cancel the numerical +argument being formed. +In addition, the user may hit the erase character to redisplay the +--More-- message. +.PP +At any time when output is being sent to the terminal, the user can +hit the quit key (normally control\-\\). +.I Bzmore +will stop sending output, and will display the usual --More-- +prompt. +The user may then enter one of the above commands in the normal manner. +Unfortunately, some output is lost when this is done, due to the +fact that any characters waiting in the terminal's output queue +are flushed when the quit signal occurs. +.PP +The terminal is set to +.I noecho +mode by this program so that the output can be continuous. +What you type will thus not show on your terminal, except for the / and ! +commands. +.PP +If the standard output is not a teletype, then +.I bzmore +acts just like +.I bzcat, +except that a header is printed before each file. +.SH FILES +.DT +/etc/termcap Terminal data base +.SH "SEE ALSO" +more(1), less(1), bzip2(1), bzdiff(1), bzgrep(1) diff --git a/compress.c b/compress.c new file mode 100644 index 0000000..8c80a07 --- /dev/null +++ b/compress.c @@ -0,0 +1,672 @@ + +/*-------------------------------------------------------------*/ +/*--- Compression machinery (not incl block sorting) ---*/ +/*--- compress.c ---*/ +/*-------------------------------------------------------------*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + + +/* CHANGES + 0.9.0 -- original version. + 0.9.0a/b -- no changes in this file. + 0.9.0c -- changed setting of nGroups in sendMTFValues() + so as to do a bit better on small files +*/ + +#include "bzlib_private.h" + + +/*---------------------------------------------------*/ +/*--- Bit stream I/O ---*/ +/*---------------------------------------------------*/ + +/*---------------------------------------------------*/ +void BZ2_bsInitWrite ( EState* s ) +{ + s->bsLive = 0; + s->bsBuff = 0; +} + + +/*---------------------------------------------------*/ +static +void bsFinishWrite ( EState* s ) +{ + while (s->bsLive > 0) { + s->zbits[s->numZ] = (UChar)(s->bsBuff >> 24); + s->numZ++; + s->bsBuff <<= 8; + s->bsLive -= 8; + } +} + + +/*---------------------------------------------------*/ +#define bsNEEDW(nz) \ +{ \ + while (s->bsLive >= 8) { \ + s->zbits[s->numZ] \ + = (UChar)(s->bsBuff >> 24); \ + s->numZ++; \ + s->bsBuff <<= 8; \ + s->bsLive -= 8; \ + } \ +} + + +/*---------------------------------------------------*/ +static +__inline__ +void bsW ( EState* s, Int32 n, UInt32 v ) +{ + bsNEEDW ( n ); + s->bsBuff |= (v << (32 - s->bsLive - n)); + s->bsLive += n; +} + + +/*---------------------------------------------------*/ +static +void bsPutUInt32 ( EState* s, UInt32 u ) +{ + bsW ( s, 8, (u >> 24) & 0xffL ); + bsW ( s, 8, (u >> 16) & 0xffL ); + bsW ( s, 8, (u >> 8) & 0xffL ); + bsW ( s, 8, u & 0xffL ); +} + + +/*---------------------------------------------------*/ +static +void bsPutUChar ( EState* s, UChar c ) +{ + bsW( s, 8, (UInt32)c ); +} + + +/*---------------------------------------------------*/ +/*--- The back end proper ---*/ +/*---------------------------------------------------*/ + +/*---------------------------------------------------*/ +static +void makeMaps_e ( EState* s ) +{ + Int32 i; + s->nInUse = 0; + for (i = 0; i < 256; i++) + if (s->inUse[i]) { + s->unseqToSeq[i] = s->nInUse; + s->nInUse++; + } +} + + +/*---------------------------------------------------*/ +static +void generateMTFValues ( EState* s ) +{ + UChar yy[256]; + Int32 i, j; + Int32 zPend; + Int32 wr; + Int32 EOB; + + /* + After sorting (eg, here), + s->arr1 [ 0 .. s->nblock-1 ] holds sorted order, + and + ((UChar*)s->arr2) [ 0 .. s->nblock-1 ] + holds the original block data. + + The first thing to do is generate the MTF values, + and put them in + ((UInt16*)s->arr1) [ 0 .. s->nblock-1 ]. + Because there are strictly fewer or equal MTF values + than block values, ptr values in this area are overwritten + with MTF values only when they are no longer needed. + + The final compressed bitstream is generated into the + area starting at + (UChar*) (&((UChar*)s->arr2)[s->nblock]) + + These storage aliases are set up in bzCompressInit(), + except for the last one, which is arranged in + compressBlock(). + */ + UInt32* ptr = s->ptr; + UChar* block = s->block; + UInt16* mtfv = s->mtfv; + + makeMaps_e ( s ); + EOB = s->nInUse+1; + + for (i = 0; i <= EOB; i++) s->mtfFreq[i] = 0; + + wr = 0; + zPend = 0; + for (i = 0; i < s->nInUse; i++) yy[i] = (UChar) i; + + for (i = 0; i < s->nblock; i++) { + UChar ll_i; + AssertD ( wr <= i, "generateMTFValues(1)" ); + j = ptr[i]-1; if (j < 0) j += s->nblock; + ll_i = s->unseqToSeq[block[j]]; + AssertD ( ll_i < s->nInUse, "generateMTFValues(2a)" ); + + if (yy[0] == ll_i) { + zPend++; + } else { + + if (zPend > 0) { + zPend--; + while (True) { + if (zPend & 1) { + mtfv[wr] = BZ_RUNB; wr++; + s->mtfFreq[BZ_RUNB]++; + } else { + mtfv[wr] = BZ_RUNA; wr++; + s->mtfFreq[BZ_RUNA]++; + } + if (zPend < 2) break; + zPend = (zPend - 2) / 2; + }; + zPend = 0; + } + { + register UChar rtmp; + register UChar* ryy_j; + register UChar rll_i; + rtmp = yy[1]; + yy[1] = yy[0]; + ryy_j = &(yy[1]); + rll_i = ll_i; + while ( rll_i != rtmp ) { + register UChar rtmp2; + ryy_j++; + rtmp2 = rtmp; + rtmp = *ryy_j; + *ryy_j = rtmp2; + }; + yy[0] = rtmp; + j = ryy_j - &(yy[0]); + mtfv[wr] = j+1; wr++; s->mtfFreq[j+1]++; + } + + } + } + + if (zPend > 0) { + zPend--; + while (True) { + if (zPend & 1) { + mtfv[wr] = BZ_RUNB; wr++; + s->mtfFreq[BZ_RUNB]++; + } else { + mtfv[wr] = BZ_RUNA; wr++; + s->mtfFreq[BZ_RUNA]++; + } + if (zPend < 2) break; + zPend = (zPend - 2) / 2; + }; + zPend = 0; + } + + mtfv[wr] = EOB; wr++; s->mtfFreq[EOB]++; + + s->nMTF = wr; +} + + +/*---------------------------------------------------*/ +#define BZ_LESSER_ICOST 0 +#define BZ_GREATER_ICOST 15 + +static +void sendMTFValues ( EState* s ) +{ + Int32 v, t, i, j, gs, ge, totc, bt, bc, iter; + Int32 nSelectors, alphaSize, minLen, maxLen, selCtr; + Int32 nGroups, nBytes; + + /*-- + UChar len [BZ_N_GROUPS][BZ_MAX_ALPHA_SIZE]; + is a global since the decoder also needs it. + + Int32 code[BZ_N_GROUPS][BZ_MAX_ALPHA_SIZE]; + Int32 rfreq[BZ_N_GROUPS][BZ_MAX_ALPHA_SIZE]; + are also globals only used in this proc. + Made global to keep stack frame size small. + --*/ + + + UInt16 cost[BZ_N_GROUPS]; + Int32 fave[BZ_N_GROUPS]; + + UInt16* mtfv = s->mtfv; + + if (s->verbosity >= 3) + VPrintf3( " %d in block, %d after MTF & 1-2 coding, " + "%d+2 syms in use\n", + s->nblock, s->nMTF, s->nInUse ); + + alphaSize = s->nInUse+2; + for (t = 0; t < BZ_N_GROUPS; t++) + for (v = 0; v < alphaSize; v++) + s->len[t][v] = BZ_GREATER_ICOST; + + /*--- Decide how many coding tables to use ---*/ + AssertH ( s->nMTF > 0, 3001 ); + if (s->nMTF < 200) nGroups = 2; else + if (s->nMTF < 600) nGroups = 3; else + if (s->nMTF < 1200) nGroups = 4; else + if (s->nMTF < 2400) nGroups = 5; else + nGroups = 6; + + /*--- Generate an initial set of coding tables ---*/ + { + Int32 nPart, remF, tFreq, aFreq; + + nPart = nGroups; + remF = s->nMTF; + gs = 0; + while (nPart > 0) { + tFreq = remF / nPart; + ge = gs-1; + aFreq = 0; + while (aFreq < tFreq && ge < alphaSize-1) { + ge++; + aFreq += s->mtfFreq[ge]; + } + + if (ge > gs + && nPart != nGroups && nPart != 1 + && ((nGroups-nPart) % 2 == 1)) { + aFreq -= s->mtfFreq[ge]; + ge--; + } + + if (s->verbosity >= 3) + VPrintf5( " initial group %d, [%d .. %d], " + "has %d syms (%4.1f%%)\n", + nPart, gs, ge, aFreq, + (100.0 * (float)aFreq) / (float)(s->nMTF) ); + + for (v = 0; v < alphaSize; v++) + if (v >= gs && v <= ge) + s->len[nPart-1][v] = BZ_LESSER_ICOST; else + s->len[nPart-1][v] = BZ_GREATER_ICOST; + + nPart--; + gs = ge+1; + remF -= aFreq; + } + } + + /*--- + Iterate up to BZ_N_ITERS times to improve the tables. + ---*/ + for (iter = 0; iter < BZ_N_ITERS; iter++) { + + for (t = 0; t < nGroups; t++) fave[t] = 0; + + for (t = 0; t < nGroups; t++) + for (v = 0; v < alphaSize; v++) + s->rfreq[t][v] = 0; + + /*--- + Set up an auxiliary length table which is used to fast-track + the common case (nGroups == 6). + ---*/ + if (nGroups == 6) { + for (v = 0; v < alphaSize; v++) { + s->len_pack[v][0] = (s->len[1][v] << 16) | s->len[0][v]; + s->len_pack[v][1] = (s->len[3][v] << 16) | s->len[2][v]; + s->len_pack[v][2] = (s->len[5][v] << 16) | s->len[4][v]; + } + } + + nSelectors = 0; + totc = 0; + gs = 0; + while (True) { + + /*--- Set group start & end marks. --*/ + if (gs >= s->nMTF) break; + ge = gs + BZ_G_SIZE - 1; + if (ge >= s->nMTF) ge = s->nMTF-1; + + /*-- + Calculate the cost of this group as coded + by each of the coding tables. + --*/ + for (t = 0; t < nGroups; t++) cost[t] = 0; + + if (nGroups == 6 && 50 == ge-gs+1) { + /*--- fast track the common case ---*/ + register UInt32 cost01, cost23, cost45; + register UInt16 icv; + cost01 = cost23 = cost45 = 0; + +# define BZ_ITER(nn) \ + icv = mtfv[gs+(nn)]; \ + cost01 += s->len_pack[icv][0]; \ + cost23 += s->len_pack[icv][1]; \ + cost45 += s->len_pack[icv][2]; \ + + BZ_ITER(0); BZ_ITER(1); BZ_ITER(2); BZ_ITER(3); BZ_ITER(4); + BZ_ITER(5); BZ_ITER(6); BZ_ITER(7); BZ_ITER(8); BZ_ITER(9); + BZ_ITER(10); BZ_ITER(11); BZ_ITER(12); BZ_ITER(13); BZ_ITER(14); + BZ_ITER(15); BZ_ITER(16); BZ_ITER(17); BZ_ITER(18); BZ_ITER(19); + BZ_ITER(20); BZ_ITER(21); BZ_ITER(22); BZ_ITER(23); BZ_ITER(24); + BZ_ITER(25); BZ_ITER(26); BZ_ITER(27); BZ_ITER(28); BZ_ITER(29); + BZ_ITER(30); BZ_ITER(31); BZ_ITER(32); BZ_ITER(33); BZ_ITER(34); + BZ_ITER(35); BZ_ITER(36); BZ_ITER(37); BZ_ITER(38); BZ_ITER(39); + BZ_ITER(40); BZ_ITER(41); BZ_ITER(42); BZ_ITER(43); BZ_ITER(44); + BZ_ITER(45); BZ_ITER(46); BZ_ITER(47); BZ_ITER(48); BZ_ITER(49); + +# undef BZ_ITER + + cost[0] = cost01 & 0xffff; cost[1] = cost01 >> 16; + cost[2] = cost23 & 0xffff; cost[3] = cost23 >> 16; + cost[4] = cost45 & 0xffff; cost[5] = cost45 >> 16; + + } else { + /*--- slow version which correctly handles all situations ---*/ + for (i = gs; i <= ge; i++) { + UInt16 icv = mtfv[i]; + for (t = 0; t < nGroups; t++) cost[t] += s->len[t][icv]; + } + } + + /*-- + Find the coding table which is best for this group, + and record its identity in the selector table. + --*/ + bc = 999999999; bt = -1; + for (t = 0; t < nGroups; t++) + if (cost[t] < bc) { bc = cost[t]; bt = t; }; + totc += bc; + fave[bt]++; + s->selector[nSelectors] = bt; + nSelectors++; + + /*-- + Increment the symbol frequencies for the selected table. + --*/ + if (nGroups == 6 && 50 == ge-gs+1) { + /*--- fast track the common case ---*/ + +# define BZ_ITUR(nn) s->rfreq[bt][ mtfv[gs+(nn)] ]++ + + BZ_ITUR(0); BZ_ITUR(1); BZ_ITUR(2); BZ_ITUR(3); BZ_ITUR(4); + BZ_ITUR(5); BZ_ITUR(6); BZ_ITUR(7); BZ_ITUR(8); BZ_ITUR(9); + BZ_ITUR(10); BZ_ITUR(11); BZ_ITUR(12); BZ_ITUR(13); BZ_ITUR(14); + BZ_ITUR(15); BZ_ITUR(16); BZ_ITUR(17); BZ_ITUR(18); BZ_ITUR(19); + BZ_ITUR(20); BZ_ITUR(21); BZ_ITUR(22); BZ_ITUR(23); BZ_ITUR(24); + BZ_ITUR(25); BZ_ITUR(26); BZ_ITUR(27); BZ_ITUR(28); BZ_ITUR(29); + BZ_ITUR(30); BZ_ITUR(31); BZ_ITUR(32); BZ_ITUR(33); BZ_ITUR(34); + BZ_ITUR(35); BZ_ITUR(36); BZ_ITUR(37); BZ_ITUR(38); BZ_ITUR(39); + BZ_ITUR(40); BZ_ITUR(41); BZ_ITUR(42); BZ_ITUR(43); BZ_ITUR(44); + BZ_ITUR(45); BZ_ITUR(46); BZ_ITUR(47); BZ_ITUR(48); BZ_ITUR(49); + +# undef BZ_ITUR + + } else { + /*--- slow version which correctly handles all situations ---*/ + for (i = gs; i <= ge; i++) + s->rfreq[bt][ mtfv[i] ]++; + } + + gs = ge+1; + } + if (s->verbosity >= 3) { + VPrintf2 ( " pass %d: size is %d, grp uses are ", + iter+1, totc/8 ); + for (t = 0; t < nGroups; t++) + VPrintf1 ( "%d ", fave[t] ); + VPrintf0 ( "\n" ); + } + + /*-- + Recompute the tables based on the accumulated frequencies. + --*/ + /* maxLen was changed from 20 to 17 in bzip2-1.0.3. See + comment in huffman.c for details. */ + for (t = 0; t < nGroups; t++) + BZ2_hbMakeCodeLengths ( &(s->len[t][0]), &(s->rfreq[t][0]), + alphaSize, 17 /*20*/ ); + } + + + AssertH( nGroups < 8, 3002 ); + AssertH( nSelectors < 32768 && + nSelectors <= (2 + (900000 / BZ_G_SIZE)), + 3003 ); + + + /*--- Compute MTF values for the selectors. ---*/ + { + UChar pos[BZ_N_GROUPS], ll_i, tmp2, tmp; + for (i = 0; i < nGroups; i++) pos[i] = i; + for (i = 0; i < nSelectors; i++) { + ll_i = s->selector[i]; + j = 0; + tmp = pos[j]; + while ( ll_i != tmp ) { + j++; + tmp2 = tmp; + tmp = pos[j]; + pos[j] = tmp2; + }; + pos[0] = tmp; + s->selectorMtf[i] = j; + } + }; + + /*--- Assign actual codes for the tables. --*/ + for (t = 0; t < nGroups; t++) { + minLen = 32; + maxLen = 0; + for (i = 0; i < alphaSize; i++) { + if (s->len[t][i] > maxLen) maxLen = s->len[t][i]; + if (s->len[t][i] < minLen) minLen = s->len[t][i]; + } + AssertH ( !(maxLen > 17 /*20*/ ), 3004 ); + AssertH ( !(minLen < 1), 3005 ); + BZ2_hbAssignCodes ( &(s->code[t][0]), &(s->len[t][0]), + minLen, maxLen, alphaSize ); + } + + /*--- Transmit the mapping table. ---*/ + { + Bool inUse16[16]; + for (i = 0; i < 16; i++) { + inUse16[i] = False; + for (j = 0; j < 16; j++) + if (s->inUse[i * 16 + j]) inUse16[i] = True; + } + + nBytes = s->numZ; + for (i = 0; i < 16; i++) + if (inUse16[i]) bsW(s,1,1); else bsW(s,1,0); + + for (i = 0; i < 16; i++) + if (inUse16[i]) + for (j = 0; j < 16; j++) { + if (s->inUse[i * 16 + j]) bsW(s,1,1); else bsW(s,1,0); + } + + if (s->verbosity >= 3) + VPrintf1( " bytes: mapping %d, ", s->numZ-nBytes ); + } + + /*--- Now the selectors. ---*/ + nBytes = s->numZ; + bsW ( s, 3, nGroups ); + bsW ( s, 15, nSelectors ); + for (i = 0; i < nSelectors; i++) { + for (j = 0; j < s->selectorMtf[i]; j++) bsW(s,1,1); + bsW(s,1,0); + } + if (s->verbosity >= 3) + VPrintf1( "selectors %d, ", s->numZ-nBytes ); + + /*--- Now the coding tables. ---*/ + nBytes = s->numZ; + + for (t = 0; t < nGroups; t++) { + Int32 curr = s->len[t][0]; + bsW ( s, 5, curr ); + for (i = 0; i < alphaSize; i++) { + while (curr < s->len[t][i]) { bsW(s,2,2); curr++; /* 10 */ }; + while (curr > s->len[t][i]) { bsW(s,2,3); curr--; /* 11 */ }; + bsW ( s, 1, 0 ); + } + } + + if (s->verbosity >= 3) + VPrintf1 ( "code lengths %d, ", s->numZ-nBytes ); + + /*--- And finally, the block data proper ---*/ + nBytes = s->numZ; + selCtr = 0; + gs = 0; + while (True) { + if (gs >= s->nMTF) break; + ge = gs + BZ_G_SIZE - 1; + if (ge >= s->nMTF) ge = s->nMTF-1; + AssertH ( s->selector[selCtr] < nGroups, 3006 ); + + if (nGroups == 6 && 50 == ge-gs+1) { + /*--- fast track the common case ---*/ + UInt16 mtfv_i; + UChar* s_len_sel_selCtr + = &(s->len[s->selector[selCtr]][0]); + Int32* s_code_sel_selCtr + = &(s->code[s->selector[selCtr]][0]); + +# define BZ_ITAH(nn) \ + mtfv_i = mtfv[gs+(nn)]; \ + bsW ( s, \ + s_len_sel_selCtr[mtfv_i], \ + s_code_sel_selCtr[mtfv_i] ) + + BZ_ITAH(0); BZ_ITAH(1); BZ_ITAH(2); BZ_ITAH(3); BZ_ITAH(4); + BZ_ITAH(5); BZ_ITAH(6); BZ_ITAH(7); BZ_ITAH(8); BZ_ITAH(9); + BZ_ITAH(10); BZ_ITAH(11); BZ_ITAH(12); BZ_ITAH(13); BZ_ITAH(14); + BZ_ITAH(15); BZ_ITAH(16); BZ_ITAH(17); BZ_ITAH(18); BZ_ITAH(19); + BZ_ITAH(20); BZ_ITAH(21); BZ_ITAH(22); BZ_ITAH(23); BZ_ITAH(24); + BZ_ITAH(25); BZ_ITAH(26); BZ_ITAH(27); BZ_ITAH(28); BZ_ITAH(29); + BZ_ITAH(30); BZ_ITAH(31); BZ_ITAH(32); BZ_ITAH(33); BZ_ITAH(34); + BZ_ITAH(35); BZ_ITAH(36); BZ_ITAH(37); BZ_ITAH(38); BZ_ITAH(39); + BZ_ITAH(40); BZ_ITAH(41); BZ_ITAH(42); BZ_ITAH(43); BZ_ITAH(44); + BZ_ITAH(45); BZ_ITAH(46); BZ_ITAH(47); BZ_ITAH(48); BZ_ITAH(49); + +# undef BZ_ITAH + + } else { + /*--- slow version which correctly handles all situations ---*/ + for (i = gs; i <= ge; i++) { + bsW ( s, + s->len [s->selector[selCtr]] [mtfv[i]], + s->code [s->selector[selCtr]] [mtfv[i]] ); + } + } + + + gs = ge+1; + selCtr++; + } + AssertH( selCtr == nSelectors, 3007 ); + + if (s->verbosity >= 3) + VPrintf1( "codes %d\n", s->numZ-nBytes ); +} + + +/*---------------------------------------------------*/ +void BZ2_compressBlock ( EState* s, Bool is_last_block ) +{ + if (s->nblock > 0) { + + BZ_FINALISE_CRC ( s->blockCRC ); + s->combinedCRC = (s->combinedCRC << 1) | (s->combinedCRC >> 31); + s->combinedCRC ^= s->blockCRC; + if (s->blockNo > 1) s->numZ = 0; + + if (s->verbosity >= 2) + VPrintf4( " block %d: crc = 0x%08x, " + "combined CRC = 0x%08x, size = %d\n", + s->blockNo, s->blockCRC, s->combinedCRC, s->nblock ); + + BZ2_blockSort ( s ); + } + + s->zbits = (UChar*) (&((UChar*)s->arr2)[s->nblock]); + + /*-- If this is the first block, create the stream header. --*/ + if (s->blockNo == 1) { + BZ2_bsInitWrite ( s ); + bsPutUChar ( s, BZ_HDR_B ); + bsPutUChar ( s, BZ_HDR_Z ); + bsPutUChar ( s, BZ_HDR_h ); + bsPutUChar ( s, (UChar)(BZ_HDR_0 + s->blockSize100k) ); + } + + if (s->nblock > 0) { + + bsPutUChar ( s, 0x31 ); bsPutUChar ( s, 0x41 ); + bsPutUChar ( s, 0x59 ); bsPutUChar ( s, 0x26 ); + bsPutUChar ( s, 0x53 ); bsPutUChar ( s, 0x59 ); + + /*-- Now the block's CRC, so it is in a known place. --*/ + bsPutUInt32 ( s, s->blockCRC ); + + /*-- + Now a single bit indicating (non-)randomisation. + As of version 0.9.5, we use a better sorting algorithm + which makes randomisation unnecessary. So always set + the randomised bit to 'no'. Of course, the decoder + still needs to be able to handle randomised blocks + so as to maintain backwards compatibility with + older versions of bzip2. + --*/ + bsW(s,1,0); + + bsW ( s, 24, s->origPtr ); + generateMTFValues ( s ); + sendMTFValues ( s ); + } + + + /*-- If this is the last block, add the stream trailer. --*/ + if (is_last_block) { + + bsPutUChar ( s, 0x17 ); bsPutUChar ( s, 0x72 ); + bsPutUChar ( s, 0x45 ); bsPutUChar ( s, 0x38 ); + bsPutUChar ( s, 0x50 ); bsPutUChar ( s, 0x90 ); + bsPutUInt32 ( s, s->combinedCRC ); + if (s->verbosity >= 2) + VPrintf1( " final combined CRC = 0x%08x\n ", s->combinedCRC ); + bsFinishWrite ( s ); + } +} + + +/*-------------------------------------------------------------*/ +/*--- end compress.c ---*/ +/*-------------------------------------------------------------*/ diff --git a/crctable.c b/crctable.c new file mode 100644 index 0000000..215687b --- /dev/null +++ b/crctable.c @@ -0,0 +1,104 @@ + +/*-------------------------------------------------------------*/ +/*--- Table for doing CRCs ---*/ +/*--- crctable.c ---*/ +/*-------------------------------------------------------------*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + + +#include "bzlib_private.h" + +/*-- + I think this is an implementation of the AUTODIN-II, + Ethernet & FDDI 32-bit CRC standard. Vaguely derived + from code by Rob Warnock, in Section 51 of the + comp.compression FAQ. +--*/ + +UInt32 BZ2_crc32Table[256] = { + + /*-- Ugly, innit? --*/ + + 0x00000000L, 0x04c11db7L, 0x09823b6eL, 0x0d4326d9L, + 0x130476dcL, 0x17c56b6bL, 0x1a864db2L, 0x1e475005L, + 0x2608edb8L, 0x22c9f00fL, 0x2f8ad6d6L, 0x2b4bcb61L, + 0x350c9b64L, 0x31cd86d3L, 0x3c8ea00aL, 0x384fbdbdL, + 0x4c11db70L, 0x48d0c6c7L, 0x4593e01eL, 0x4152fda9L, + 0x5f15adacL, 0x5bd4b01bL, 0x569796c2L, 0x52568b75L, + 0x6a1936c8L, 0x6ed82b7fL, 0x639b0da6L, 0x675a1011L, + 0x791d4014L, 0x7ddc5da3L, 0x709f7b7aL, 0x745e66cdL, + 0x9823b6e0L, 0x9ce2ab57L, 0x91a18d8eL, 0x95609039L, + 0x8b27c03cL, 0x8fe6dd8bL, 0x82a5fb52L, 0x8664e6e5L, + 0xbe2b5b58L, 0xbaea46efL, 0xb7a96036L, 0xb3687d81L, + 0xad2f2d84L, 0xa9ee3033L, 0xa4ad16eaL, 0xa06c0b5dL, + 0xd4326d90L, 0xd0f37027L, 0xddb056feL, 0xd9714b49L, + 0xc7361b4cL, 0xc3f706fbL, 0xceb42022L, 0xca753d95L, + 0xf23a8028L, 0xf6fb9d9fL, 0xfbb8bb46L, 0xff79a6f1L, + 0xe13ef6f4L, 0xe5ffeb43L, 0xe8bccd9aL, 0xec7dd02dL, + 0x34867077L, 0x30476dc0L, 0x3d044b19L, 0x39c556aeL, + 0x278206abL, 0x23431b1cL, 0x2e003dc5L, 0x2ac12072L, + 0x128e9dcfL, 0x164f8078L, 0x1b0ca6a1L, 0x1fcdbb16L, + 0x018aeb13L, 0x054bf6a4L, 0x0808d07dL, 0x0cc9cdcaL, + 0x7897ab07L, 0x7c56b6b0L, 0x71159069L, 0x75d48ddeL, + 0x6b93dddbL, 0x6f52c06cL, 0x6211e6b5L, 0x66d0fb02L, + 0x5e9f46bfL, 0x5a5e5b08L, 0x571d7dd1L, 0x53dc6066L, + 0x4d9b3063L, 0x495a2dd4L, 0x44190b0dL, 0x40d816baL, + 0xaca5c697L, 0xa864db20L, 0xa527fdf9L, 0xa1e6e04eL, + 0xbfa1b04bL, 0xbb60adfcL, 0xb6238b25L, 0xb2e29692L, + 0x8aad2b2fL, 0x8e6c3698L, 0x832f1041L, 0x87ee0df6L, + 0x99a95df3L, 0x9d684044L, 0x902b669dL, 0x94ea7b2aL, + 0xe0b41de7L, 0xe4750050L, 0xe9362689L, 0xedf73b3eL, + 0xf3b06b3bL, 0xf771768cL, 0xfa325055L, 0xfef34de2L, + 0xc6bcf05fL, 0xc27dede8L, 0xcf3ecb31L, 0xcbffd686L, + 0xd5b88683L, 0xd1799b34L, 0xdc3abdedL, 0xd8fba05aL, + 0x690ce0eeL, 0x6dcdfd59L, 0x608edb80L, 0x644fc637L, + 0x7a089632L, 0x7ec98b85L, 0x738aad5cL, 0x774bb0ebL, + 0x4f040d56L, 0x4bc510e1L, 0x46863638L, 0x42472b8fL, + 0x5c007b8aL, 0x58c1663dL, 0x558240e4L, 0x51435d53L, + 0x251d3b9eL, 0x21dc2629L, 0x2c9f00f0L, 0x285e1d47L, + 0x36194d42L, 0x32d850f5L, 0x3f9b762cL, 0x3b5a6b9bL, + 0x0315d626L, 0x07d4cb91L, 0x0a97ed48L, 0x0e56f0ffL, + 0x1011a0faL, 0x14d0bd4dL, 0x19939b94L, 0x1d528623L, + 0xf12f560eL, 0xf5ee4bb9L, 0xf8ad6d60L, 0xfc6c70d7L, + 0xe22b20d2L, 0xe6ea3d65L, 0xeba91bbcL, 0xef68060bL, + 0xd727bbb6L, 0xd3e6a601L, 0xdea580d8L, 0xda649d6fL, + 0xc423cd6aL, 0xc0e2d0ddL, 0xcda1f604L, 0xc960ebb3L, + 0xbd3e8d7eL, 0xb9ff90c9L, 0xb4bcb610L, 0xb07daba7L, + 0xae3afba2L, 0xaafbe615L, 0xa7b8c0ccL, 0xa379dd7bL, + 0x9b3660c6L, 0x9ff77d71L, 0x92b45ba8L, 0x9675461fL, + 0x8832161aL, 0x8cf30badL, 0x81b02d74L, 0x857130c3L, + 0x5d8a9099L, 0x594b8d2eL, 0x5408abf7L, 0x50c9b640L, + 0x4e8ee645L, 0x4a4ffbf2L, 0x470cdd2bL, 0x43cdc09cL, + 0x7b827d21L, 0x7f436096L, 0x7200464fL, 0x76c15bf8L, + 0x68860bfdL, 0x6c47164aL, 0x61043093L, 0x65c52d24L, + 0x119b4be9L, 0x155a565eL, 0x18197087L, 0x1cd86d30L, + 0x029f3d35L, 0x065e2082L, 0x0b1d065bL, 0x0fdc1becL, + 0x3793a651L, 0x3352bbe6L, 0x3e119d3fL, 0x3ad08088L, + 0x2497d08dL, 0x2056cd3aL, 0x2d15ebe3L, 0x29d4f654L, + 0xc5a92679L, 0xc1683bceL, 0xcc2b1d17L, 0xc8ea00a0L, + 0xd6ad50a5L, 0xd26c4d12L, 0xdf2f6bcbL, 0xdbee767cL, + 0xe3a1cbc1L, 0xe760d676L, 0xea23f0afL, 0xeee2ed18L, + 0xf0a5bd1dL, 0xf464a0aaL, 0xf9278673L, 0xfde69bc4L, + 0x89b8fd09L, 0x8d79e0beL, 0x803ac667L, 0x84fbdbd0L, + 0x9abc8bd5L, 0x9e7d9662L, 0x933eb0bbL, 0x97ffad0cL, + 0xafb010b1L, 0xab710d06L, 0xa6322bdfL, 0xa2f33668L, + 0xbcb4666dL, 0xb8757bdaL, 0xb5365d03L, 0xb1f740b4L +}; + + +/*-------------------------------------------------------------*/ +/*--- end crctable.c ---*/ +/*-------------------------------------------------------------*/ diff --git a/decompress.c b/decompress.c new file mode 100644 index 0000000..bba5e0f --- /dev/null +++ b/decompress.c @@ -0,0 +1,626 @@ + +/*-------------------------------------------------------------*/ +/*--- Decompression machinery ---*/ +/*--- decompress.c ---*/ +/*-------------------------------------------------------------*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + + +#include "bzlib_private.h" + + +/*---------------------------------------------------*/ +static +void makeMaps_d ( DState* s ) +{ + Int32 i; + s->nInUse = 0; + for (i = 0; i < 256; i++) + if (s->inUse[i]) { + s->seqToUnseq[s->nInUse] = i; + s->nInUse++; + } +} + + +/*---------------------------------------------------*/ +#define RETURN(rrr) \ + { retVal = rrr; goto save_state_and_return; }; + +#define GET_BITS(lll,vvv,nnn) \ + case lll: s->state = lll; \ + while (True) { \ + if (s->bsLive >= nnn) { \ + UInt32 v; \ + v = (s->bsBuff >> \ + (s->bsLive-nnn)) & ((1 << nnn)-1); \ + s->bsLive -= nnn; \ + vvv = v; \ + break; \ + } \ + if (s->strm->avail_in == 0) RETURN(BZ_OK); \ + s->bsBuff \ + = (s->bsBuff << 8) | \ + ((UInt32) \ + (*((UChar*)(s->strm->next_in)))); \ + s->bsLive += 8; \ + s->strm->next_in++; \ + s->strm->avail_in--; \ + s->strm->total_in_lo32++; \ + if (s->strm->total_in_lo32 == 0) \ + s->strm->total_in_hi32++; \ + } + +#define GET_UCHAR(lll,uuu) \ + GET_BITS(lll,uuu,8) + +#define GET_BIT(lll,uuu) \ + GET_BITS(lll,uuu,1) + +/*---------------------------------------------------*/ +#define GET_MTF_VAL(label1,label2,lval) \ +{ \ + if (groupPos == 0) { \ + groupNo++; \ + if (groupNo >= nSelectors) \ + RETURN(BZ_DATA_ERROR); \ + groupPos = BZ_G_SIZE; \ + gSel = s->selector[groupNo]; \ + gMinlen = s->minLens[gSel]; \ + gLimit = &(s->limit[gSel][0]); \ + gPerm = &(s->perm[gSel][0]); \ + gBase = &(s->base[gSel][0]); \ + } \ + groupPos--; \ + zn = gMinlen; \ + GET_BITS(label1, zvec, zn); \ + while (1) { \ + if (zn > 20 /* the longest code */) \ + RETURN(BZ_DATA_ERROR); \ + if (zvec <= gLimit[zn]) break; \ + zn++; \ + GET_BIT(label2, zj); \ + zvec = (zvec << 1) | zj; \ + }; \ + if (zvec - gBase[zn] < 0 \ + || zvec - gBase[zn] >= BZ_MAX_ALPHA_SIZE) \ + RETURN(BZ_DATA_ERROR); \ + lval = gPerm[zvec - gBase[zn]]; \ +} + + +/*---------------------------------------------------*/ +Int32 BZ2_decompress ( DState* s ) +{ + UChar uc; + Int32 retVal; + Int32 minLen, maxLen; + bz_stream* strm = s->strm; + + /* stuff that needs to be saved/restored */ + Int32 i; + Int32 j; + Int32 t; + Int32 alphaSize; + Int32 nGroups; + Int32 nSelectors; + Int32 EOB; + Int32 groupNo; + Int32 groupPos; + Int32 nextSym; + Int32 nblockMAX; + Int32 nblock; + Int32 es; + Int32 N; + Int32 curr; + Int32 zt; + Int32 zn; + Int32 zvec; + Int32 zj; + Int32 gSel; + Int32 gMinlen; + Int32* gLimit; + Int32* gBase; + Int32* gPerm; + + if (s->state == BZ_X_MAGIC_1) { + /*initialise the save area*/ + s->save_i = 0; + s->save_j = 0; + s->save_t = 0; + s->save_alphaSize = 0; + s->save_nGroups = 0; + s->save_nSelectors = 0; + s->save_EOB = 0; + s->save_groupNo = 0; + s->save_groupPos = 0; + s->save_nextSym = 0; + s->save_nblockMAX = 0; + s->save_nblock = 0; + s->save_es = 0; + s->save_N = 0; + s->save_curr = 0; + s->save_zt = 0; + s->save_zn = 0; + s->save_zvec = 0; + s->save_zj = 0; + s->save_gSel = 0; + s->save_gMinlen = 0; + s->save_gLimit = NULL; + s->save_gBase = NULL; + s->save_gPerm = NULL; + } + + /*restore from the save area*/ + i = s->save_i; + j = s->save_j; + t = s->save_t; + alphaSize = s->save_alphaSize; + nGroups = s->save_nGroups; + nSelectors = s->save_nSelectors; + EOB = s->save_EOB; + groupNo = s->save_groupNo; + groupPos = s->save_groupPos; + nextSym = s->save_nextSym; + nblockMAX = s->save_nblockMAX; + nblock = s->save_nblock; + es = s->save_es; + N = s->save_N; + curr = s->save_curr; + zt = s->save_zt; + zn = s->save_zn; + zvec = s->save_zvec; + zj = s->save_zj; + gSel = s->save_gSel; + gMinlen = s->save_gMinlen; + gLimit = s->save_gLimit; + gBase = s->save_gBase; + gPerm = s->save_gPerm; + + retVal = BZ_OK; + + switch (s->state) { + + GET_UCHAR(BZ_X_MAGIC_1, uc); + if (uc != BZ_HDR_B) RETURN(BZ_DATA_ERROR_MAGIC); + + GET_UCHAR(BZ_X_MAGIC_2, uc); + if (uc != BZ_HDR_Z) RETURN(BZ_DATA_ERROR_MAGIC); + + GET_UCHAR(BZ_X_MAGIC_3, uc) + if (uc != BZ_HDR_h) RETURN(BZ_DATA_ERROR_MAGIC); + + GET_BITS(BZ_X_MAGIC_4, s->blockSize100k, 8) + if (s->blockSize100k < (BZ_HDR_0 + 1) || + s->blockSize100k > (BZ_HDR_0 + 9)) RETURN(BZ_DATA_ERROR_MAGIC); + s->blockSize100k -= BZ_HDR_0; + + if (s->smallDecompress) { + s->ll16 = BZALLOC( s->blockSize100k * 100000 * sizeof(UInt16) ); + s->ll4 = BZALLOC( + ((1 + s->blockSize100k * 100000) >> 1) * sizeof(UChar) + ); + if (s->ll16 == NULL || s->ll4 == NULL) RETURN(BZ_MEM_ERROR); + } else { + s->tt = BZALLOC( s->blockSize100k * 100000 * sizeof(Int32) ); + if (s->tt == NULL) RETURN(BZ_MEM_ERROR); + } + + GET_UCHAR(BZ_X_BLKHDR_1, uc); + + if (uc == 0x17) goto endhdr_2; + if (uc != 0x31) RETURN(BZ_DATA_ERROR); + GET_UCHAR(BZ_X_BLKHDR_2, uc); + if (uc != 0x41) RETURN(BZ_DATA_ERROR); + GET_UCHAR(BZ_X_BLKHDR_3, uc); + if (uc != 0x59) RETURN(BZ_DATA_ERROR); + GET_UCHAR(BZ_X_BLKHDR_4, uc); + if (uc != 0x26) RETURN(BZ_DATA_ERROR); + GET_UCHAR(BZ_X_BLKHDR_5, uc); + if (uc != 0x53) RETURN(BZ_DATA_ERROR); + GET_UCHAR(BZ_X_BLKHDR_6, uc); + if (uc != 0x59) RETURN(BZ_DATA_ERROR); + + s->currBlockNo++; + if (s->verbosity >= 2) + VPrintf1 ( "\n [%d: huff+mtf ", s->currBlockNo ); + + s->storedBlockCRC = 0; + GET_UCHAR(BZ_X_BCRC_1, uc); + s->storedBlockCRC = (s->storedBlockCRC << 8) | ((UInt32)uc); + GET_UCHAR(BZ_X_BCRC_2, uc); + s->storedBlockCRC = (s->storedBlockCRC << 8) | ((UInt32)uc); + GET_UCHAR(BZ_X_BCRC_3, uc); + s->storedBlockCRC = (s->storedBlockCRC << 8) | ((UInt32)uc); + GET_UCHAR(BZ_X_BCRC_4, uc); + s->storedBlockCRC = (s->storedBlockCRC << 8) | ((UInt32)uc); + + GET_BITS(BZ_X_RANDBIT, s->blockRandomised, 1); + + s->origPtr = 0; + GET_UCHAR(BZ_X_ORIGPTR_1, uc); + s->origPtr = (s->origPtr << 8) | ((Int32)uc); + GET_UCHAR(BZ_X_ORIGPTR_2, uc); + s->origPtr = (s->origPtr << 8) | ((Int32)uc); + GET_UCHAR(BZ_X_ORIGPTR_3, uc); + s->origPtr = (s->origPtr << 8) | ((Int32)uc); + + if (s->origPtr < 0) + RETURN(BZ_DATA_ERROR); + if (s->origPtr > 10 + 100000*s->blockSize100k) + RETURN(BZ_DATA_ERROR); + + /*--- Receive the mapping table ---*/ + for (i = 0; i < 16; i++) { + GET_BIT(BZ_X_MAPPING_1, uc); + if (uc == 1) + s->inUse16[i] = True; else + s->inUse16[i] = False; + } + + for (i = 0; i < 256; i++) s->inUse[i] = False; + + for (i = 0; i < 16; i++) + if (s->inUse16[i]) + for (j = 0; j < 16; j++) { + GET_BIT(BZ_X_MAPPING_2, uc); + if (uc == 1) s->inUse[i * 16 + j] = True; + } + makeMaps_d ( s ); + if (s->nInUse == 0) RETURN(BZ_DATA_ERROR); + alphaSize = s->nInUse+2; + + /*--- Now the selectors ---*/ + GET_BITS(BZ_X_SELECTOR_1, nGroups, 3); + if (nGroups < 2 || nGroups > 6) RETURN(BZ_DATA_ERROR); + GET_BITS(BZ_X_SELECTOR_2, nSelectors, 15); + if (nSelectors < 1) RETURN(BZ_DATA_ERROR); + for (i = 0; i < nSelectors; i++) { + j = 0; + while (True) { + GET_BIT(BZ_X_SELECTOR_3, uc); + if (uc == 0) break; + j++; + if (j >= nGroups) RETURN(BZ_DATA_ERROR); + } + s->selectorMtf[i] = j; + } + + /*--- Undo the MTF values for the selectors. ---*/ + { + UChar pos[BZ_N_GROUPS], tmp, v; + for (v = 0; v < nGroups; v++) pos[v] = v; + + for (i = 0; i < nSelectors; i++) { + v = s->selectorMtf[i]; + tmp = pos[v]; + while (v > 0) { pos[v] = pos[v-1]; v--; } + pos[0] = tmp; + s->selector[i] = tmp; + } + } + + /*--- Now the coding tables ---*/ + for (t = 0; t < nGroups; t++) { + GET_BITS(BZ_X_CODING_1, curr, 5); + for (i = 0; i < alphaSize; i++) { + while (True) { + if (curr < 1 || curr > 20) RETURN(BZ_DATA_ERROR); + GET_BIT(BZ_X_CODING_2, uc); + if (uc == 0) break; + GET_BIT(BZ_X_CODING_3, uc); + if (uc == 0) curr++; else curr--; + } + s->len[t][i] = curr; + } + } + + /*--- Create the Huffman decoding tables ---*/ + for (t = 0; t < nGroups; t++) { + minLen = 32; + maxLen = 0; + for (i = 0; i < alphaSize; i++) { + if (s->len[t][i] > maxLen) maxLen = s->len[t][i]; + if (s->len[t][i] < minLen) minLen = s->len[t][i]; + } + BZ2_hbCreateDecodeTables ( + &(s->limit[t][0]), + &(s->base[t][0]), + &(s->perm[t][0]), + &(s->len[t][0]), + minLen, maxLen, alphaSize + ); + s->minLens[t] = minLen; + } + + /*--- Now the MTF values ---*/ + + EOB = s->nInUse+1; + nblockMAX = 100000 * s->blockSize100k; + groupNo = -1; + groupPos = 0; + + for (i = 0; i <= 255; i++) s->unzftab[i] = 0; + + /*-- MTF init --*/ + { + Int32 ii, jj, kk; + kk = MTFA_SIZE-1; + for (ii = 256 / MTFL_SIZE - 1; ii >= 0; ii--) { + for (jj = MTFL_SIZE-1; jj >= 0; jj--) { + s->mtfa[kk] = (UChar)(ii * MTFL_SIZE + jj); + kk--; + } + s->mtfbase[ii] = kk + 1; + } + } + /*-- end MTF init --*/ + + nblock = 0; + GET_MTF_VAL(BZ_X_MTF_1, BZ_X_MTF_2, nextSym); + + while (True) { + + if (nextSym == EOB) break; + + if (nextSym == BZ_RUNA || nextSym == BZ_RUNB) { + + es = -1; + N = 1; + do { + if (nextSym == BZ_RUNA) es = es + (0+1) * N; else + if (nextSym == BZ_RUNB) es = es + (1+1) * N; + N = N * 2; + GET_MTF_VAL(BZ_X_MTF_3, BZ_X_MTF_4, nextSym); + } + while (nextSym == BZ_RUNA || nextSym == BZ_RUNB); + + es++; + uc = s->seqToUnseq[ s->mtfa[s->mtfbase[0]] ]; + s->unzftab[uc] += es; + + if (s->smallDecompress) + while (es > 0) { + if (nblock >= nblockMAX) RETURN(BZ_DATA_ERROR); + s->ll16[nblock] = (UInt16)uc; + nblock++; + es--; + } + else + while (es > 0) { + if (nblock >= nblockMAX) RETURN(BZ_DATA_ERROR); + s->tt[nblock] = (UInt32)uc; + nblock++; + es--; + }; + + continue; + + } else { + + if (nblock >= nblockMAX) RETURN(BZ_DATA_ERROR); + + /*-- uc = MTF ( nextSym-1 ) --*/ + { + Int32 ii, jj, kk, pp, lno, off; + UInt32 nn; + nn = (UInt32)(nextSym - 1); + + if (nn < MTFL_SIZE) { + /* avoid general-case expense */ + pp = s->mtfbase[0]; + uc = s->mtfa[pp+nn]; + while (nn > 3) { + Int32 z = pp+nn; + s->mtfa[(z) ] = s->mtfa[(z)-1]; + s->mtfa[(z)-1] = s->mtfa[(z)-2]; + s->mtfa[(z)-2] = s->mtfa[(z)-3]; + s->mtfa[(z)-3] = s->mtfa[(z)-4]; + nn -= 4; + } + while (nn > 0) { + s->mtfa[(pp+nn)] = s->mtfa[(pp+nn)-1]; nn--; + }; + s->mtfa[pp] = uc; + } else { + /* general case */ + lno = nn / MTFL_SIZE; + off = nn % MTFL_SIZE; + pp = s->mtfbase[lno] + off; + uc = s->mtfa[pp]; + while (pp > s->mtfbase[lno]) { + s->mtfa[pp] = s->mtfa[pp-1]; pp--; + }; + s->mtfbase[lno]++; + while (lno > 0) { + s->mtfbase[lno]--; + s->mtfa[s->mtfbase[lno]] + = s->mtfa[s->mtfbase[lno-1] + MTFL_SIZE - 1]; + lno--; + } + s->mtfbase[0]--; + s->mtfa[s->mtfbase[0]] = uc; + if (s->mtfbase[0] == 0) { + kk = MTFA_SIZE-1; + for (ii = 256 / MTFL_SIZE-1; ii >= 0; ii--) { + for (jj = MTFL_SIZE-1; jj >= 0; jj--) { + s->mtfa[kk] = s->mtfa[s->mtfbase[ii] + jj]; + kk--; + } + s->mtfbase[ii] = kk + 1; + } + } + } + } + /*-- end uc = MTF ( nextSym-1 ) --*/ + + s->unzftab[s->seqToUnseq[uc]]++; + if (s->smallDecompress) + s->ll16[nblock] = (UInt16)(s->seqToUnseq[uc]); else + s->tt[nblock] = (UInt32)(s->seqToUnseq[uc]); + nblock++; + + GET_MTF_VAL(BZ_X_MTF_5, BZ_X_MTF_6, nextSym); + continue; + } + } + + /* Now we know what nblock is, we can do a better sanity + check on s->origPtr. + */ + if (s->origPtr < 0 || s->origPtr >= nblock) + RETURN(BZ_DATA_ERROR); + + /*-- Set up cftab to facilitate generation of T^(-1) --*/ + s->cftab[0] = 0; + for (i = 1; i <= 256; i++) s->cftab[i] = s->unzftab[i-1]; + for (i = 1; i <= 256; i++) s->cftab[i] += s->cftab[i-1]; + for (i = 0; i <= 256; i++) { + if (s->cftab[i] < 0 || s->cftab[i] > nblock) { + /* s->cftab[i] can legitimately be == nblock */ + RETURN(BZ_DATA_ERROR); + } + } + + s->state_out_len = 0; + s->state_out_ch = 0; + BZ_INITIALISE_CRC ( s->calculatedBlockCRC ); + s->state = BZ_X_OUTPUT; + if (s->verbosity >= 2) VPrintf0 ( "rt+rld" ); + + if (s->smallDecompress) { + + /*-- Make a copy of cftab, used in generation of T --*/ + for (i = 0; i <= 256; i++) s->cftabCopy[i] = s->cftab[i]; + + /*-- compute the T vector --*/ + for (i = 0; i < nblock; i++) { + uc = (UChar)(s->ll16[i]); + SET_LL(i, s->cftabCopy[uc]); + s->cftabCopy[uc]++; + } + + /*-- Compute T^(-1) by pointer reversal on T --*/ + i = s->origPtr; + j = GET_LL(i); + do { + Int32 tmp = GET_LL(j); + SET_LL(j, i); + i = j; + j = tmp; + } + while (i != s->origPtr); + + s->tPos = s->origPtr; + s->nblock_used = 0; + if (s->blockRandomised) { + BZ_RAND_INIT_MASK; + BZ_GET_SMALL(s->k0); s->nblock_used++; + BZ_RAND_UPD_MASK; s->k0 ^= BZ_RAND_MASK; + } else { + BZ_GET_SMALL(s->k0); s->nblock_used++; + } + + } else { + + /*-- compute the T^(-1) vector --*/ + for (i = 0; i < nblock; i++) { + uc = (UChar)(s->tt[i] & 0xff); + s->tt[s->cftab[uc]] |= (i << 8); + s->cftab[uc]++; + } + + s->tPos = s->tt[s->origPtr] >> 8; + s->nblock_used = 0; + if (s->blockRandomised) { + BZ_RAND_INIT_MASK; + BZ_GET_FAST(s->k0); s->nblock_used++; + BZ_RAND_UPD_MASK; s->k0 ^= BZ_RAND_MASK; + } else { + BZ_GET_FAST(s->k0); s->nblock_used++; + } + + } + + RETURN(BZ_OK); + + + + endhdr_2: + + GET_UCHAR(BZ_X_ENDHDR_2, uc); + if (uc != 0x72) RETURN(BZ_DATA_ERROR); + GET_UCHAR(BZ_X_ENDHDR_3, uc); + if (uc != 0x45) RETURN(BZ_DATA_ERROR); + GET_UCHAR(BZ_X_ENDHDR_4, uc); + if (uc != 0x38) RETURN(BZ_DATA_ERROR); + GET_UCHAR(BZ_X_ENDHDR_5, uc); + if (uc != 0x50) RETURN(BZ_DATA_ERROR); + GET_UCHAR(BZ_X_ENDHDR_6, uc); + if (uc != 0x90) RETURN(BZ_DATA_ERROR); + + s->storedCombinedCRC = 0; + GET_UCHAR(BZ_X_CCRC_1, uc); + s->storedCombinedCRC = (s->storedCombinedCRC << 8) | ((UInt32)uc); + GET_UCHAR(BZ_X_CCRC_2, uc); + s->storedCombinedCRC = (s->storedCombinedCRC << 8) | ((UInt32)uc); + GET_UCHAR(BZ_X_CCRC_3, uc); + s->storedCombinedCRC = (s->storedCombinedCRC << 8) | ((UInt32)uc); + GET_UCHAR(BZ_X_CCRC_4, uc); + s->storedCombinedCRC = (s->storedCombinedCRC << 8) | ((UInt32)uc); + + s->state = BZ_X_IDLE; + RETURN(BZ_STREAM_END); + + default: AssertH ( False, 4001 ); + } + + AssertH ( False, 4002 ); + + save_state_and_return: + + s->save_i = i; + s->save_j = j; + s->save_t = t; + s->save_alphaSize = alphaSize; + s->save_nGroups = nGroups; + s->save_nSelectors = nSelectors; + s->save_EOB = EOB; + s->save_groupNo = groupNo; + s->save_groupPos = groupPos; + s->save_nextSym = nextSym; + s->save_nblockMAX = nblockMAX; + s->save_nblock = nblock; + s->save_es = es; + s->save_N = N; + s->save_curr = curr; + s->save_zt = zt; + s->save_zn = zn; + s->save_zvec = zvec; + s->save_zj = zj; + s->save_gSel = gSel; + s->save_gMinlen = gMinlen; + s->save_gLimit = gLimit; + s->save_gBase = gBase; + s->save_gPerm = gPerm; + + return retVal; +} + + +/*-------------------------------------------------------------*/ +/*--- end decompress.c ---*/ +/*-------------------------------------------------------------*/ diff --git a/dlltest.c b/dlltest.c new file mode 100644 index 0000000..4e27da2 --- /dev/null +++ b/dlltest.c @@ -0,0 +1,175 @@ +/* + minibz2 + libbz2.dll test program. + by Yoshioka Tsuneo (tsuneo@rr.iij4u.or.jp) + This file is Public Domain. Welcome any email to me. + + usage: minibz2 [-d] [-{1,2,..9}] [[srcfilename] destfilename] +*/ + +#define BZ_IMPORT +#include <stdio.h> +#include <stdlib.h> +#include "bzlib.h" +#ifdef _WIN32 +#include <io.h> +#endif + + +#ifdef _WIN32 + +#define BZ2_LIBNAME "libbz2-1.0.2.DLL" + +#include <windows.h> +static int BZ2DLLLoaded = 0; +static HINSTANCE BZ2DLLhLib; +int BZ2DLLLoadLibrary(void) +{ + HINSTANCE hLib; + + if(BZ2DLLLoaded==1){return 0;} + hLib=LoadLibrary(BZ2_LIBNAME); + if(hLib == NULL){ + fprintf(stderr,"Can't load %s\n",BZ2_LIBNAME); + return -1; + } + BZ2_bzlibVersion=GetProcAddress(hLib,"BZ2_bzlibVersion"); + BZ2_bzopen=GetProcAddress(hLib,"BZ2_bzopen"); + BZ2_bzdopen=GetProcAddress(hLib,"BZ2_bzdopen"); + BZ2_bzread=GetProcAddress(hLib,"BZ2_bzread"); + BZ2_bzwrite=GetProcAddress(hLib,"BZ2_bzwrite"); + BZ2_bzflush=GetProcAddress(hLib,"BZ2_bzflush"); + BZ2_bzclose=GetProcAddress(hLib,"BZ2_bzclose"); + BZ2_bzerror=GetProcAddress(hLib,"BZ2_bzerror"); + + if (!BZ2_bzlibVersion || !BZ2_bzopen || !BZ2_bzdopen + || !BZ2_bzread || !BZ2_bzwrite || !BZ2_bzflush + || !BZ2_bzclose || !BZ2_bzerror) { + fprintf(stderr,"GetProcAddress failed.\n"); + return -1; + } + BZ2DLLLoaded=1; + BZ2DLLhLib=hLib; + return 0; + +} +int BZ2DLLFreeLibrary(void) +{ + if(BZ2DLLLoaded==0){return 0;} + FreeLibrary(BZ2DLLhLib); + BZ2DLLLoaded=0; +} +#endif /* WIN32 */ + +void usage(void) +{ + puts("usage: minibz2 [-d] [-{1,2,..9}] [[srcfilename] destfilename]"); +} + +int main(int argc,char *argv[]) +{ + int decompress = 0; + int level = 9; + char *fn_r = NULL; + char *fn_w = NULL; + +#ifdef _WIN32 + if(BZ2DLLLoadLibrary()<0){ + fprintf(stderr,"Loading of %s failed. Giving up.\n", BZ2_LIBNAME); + exit(1); + } + printf("Loading of %s succeeded. Library version is %s.\n", + BZ2_LIBNAME, BZ2_bzlibVersion() ); +#endif + while(++argv,--argc){ + if(**argv =='-' || **argv=='/'){ + char *p; + + for(p=*argv+1;*p;p++){ + if(*p=='d'){ + decompress = 1; + }else if('1'<=*p && *p<='9'){ + level = *p - '0'; + }else{ + usage(); + exit(1); + } + } + }else{ + break; + } + } + if(argc>=1){ + fn_r = *argv; + argc--;argv++; + }else{ + fn_r = NULL; + } + if(argc>=1){ + fn_w = *argv; + argc--;argv++; + }else{ + fn_w = NULL; + } + { + int len; + char buff[0x1000]; + char mode[10]; + + if(decompress){ + BZFILE *BZ2fp_r = NULL; + FILE *fp_w = NULL; + + if(fn_w){ + if((fp_w = fopen(fn_w,"wb"))==NULL){ + printf("can't open [%s]\n",fn_w); + perror("reason:"); + exit(1); + } + }else{ + fp_w = stdout; + } + if((fn_r == NULL && (BZ2fp_r = BZ2_bzdopen(fileno(stdin),"rb"))==NULL) + || (fn_r != NULL && (BZ2fp_r = BZ2_bzopen(fn_r,"rb"))==NULL)){ + printf("can't bz2openstream\n"); + exit(1); + } + while((len=BZ2_bzread(BZ2fp_r,buff,0x1000))>0){ + fwrite(buff,1,len,fp_w); + } + BZ2_bzclose(BZ2fp_r); + if(fp_w != stdout) fclose(fp_w); + }else{ + BZFILE *BZ2fp_w = NULL; + FILE *fp_r = NULL; + + if(fn_r){ + if((fp_r = fopen(fn_r,"rb"))==NULL){ + printf("can't open [%s]\n",fn_r); + perror("reason:"); + exit(1); + } + }else{ + fp_r = stdin; + } + mode[0]='w'; + mode[1] = '0' + level; + mode[2] = '\0'; + + if((fn_w == NULL && (BZ2fp_w = BZ2_bzdopen(fileno(stdout),mode))==NULL) + || (fn_w !=NULL && (BZ2fp_w = BZ2_bzopen(fn_w,mode))==NULL)){ + printf("can't bz2openstream\n"); + exit(1); + } + while((len=fread(buff,1,0x1000,fp_r))>0){ + BZ2_bzwrite(BZ2fp_w,buff,len); + } + BZ2_bzclose(BZ2fp_w); + if(fp_r!=stdin)fclose(fp_r); + } + } +#ifdef _WIN32 + BZ2DLLFreeLibrary(); +#endif + return 0; +} diff --git a/dlltest.dsp b/dlltest.dsp new file mode 100644 index 0000000..04819a4 --- /dev/null +++ b/dlltest.dsp @@ -0,0 +1,93 @@ +# Microsoft Developer Studio Project File - Name="dlltest" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 5.00 +# ** •ÒW‚µ‚È‚¢‚Å‚‚¾‚³‚¢ ** + +# TARGTYPE "Win32 (x86) Console Application" 0x0103 + +CFG=dlltest - Win32 Debug +!MESSAGE ‚±‚ê‚Í—LŒø‚ÈÒ²¸Ì§²Ù‚ł͂ ‚è‚Ü‚¹‚ñB ‚±‚ÌÌßÛ¼Þª¸Ä‚ðËÞÙÄÞ‚·‚邽‚ß‚É‚Í NMAKE ‚ðŽg—p‚µ‚Ä‚‚¾‚³‚¢B +!MESSAGE [Ò²¸Ì§²Ù‚Ì´¸½Îß°Ä] ºÏÝÄÞ‚ðŽg—p‚µ‚ÄŽÀs‚µ‚Ä‚‚¾‚³‚¢ +!MESSAGE +!MESSAGE NMAKE /f "dlltest.mak". +!MESSAGE +!MESSAGE NMAKE ‚ÌŽÀsŽž‚É\¬‚ðŽw’è‚Å‚«‚Ü‚· +!MESSAGE ºÏÝÄÞ ×²Ýã‚ÅϸۂÌÝ’è‚ð’è‹`‚µ‚Ü‚·B—á: +!MESSAGE +!MESSAGE NMAKE /f "dlltest.mak" CFG="dlltest - Win32 Debug" +!MESSAGE +!MESSAGE ‘I‘ð‰Â”\‚ÈËÞÙÄÞ Ó°ÄÞ: +!MESSAGE +!MESSAGE "dlltest - Win32 Release" ("Win32 (x86) Console Application" —p) +!MESSAGE "dlltest - Win32 Debug" ("Win32 (x86) Console Application" —p) +!MESSAGE + +# Begin Project +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "dlltest - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c +# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c +# ADD BASE RSC /l 0x411 /d "NDEBUG" +# ADD RSC /l 0x411 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 /out:"minibz2.exe" + +!ELSEIF "$(CFG)" == "dlltest - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "dlltest_" +# PROP BASE Intermediate_Dir "dlltest_" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "dlltest_" +# PROP Intermediate_Dir "dlltest_" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c +# ADD CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c +# ADD BASE RSC /l 0x411 /d "_DEBUG" +# ADD RSC /l 0x411 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /out:"minibz2.exe" /pdbtype:sept + +!ENDIF + +# Begin Target + +# Name "dlltest - Win32 Release" +# Name "dlltest - Win32 Debug" +# Begin Source File + +SOURCE=.\bzlib.h +# End Source File +# Begin Source File + +SOURCE=.\dlltest.c +# End Source File +# End Target +# End Project diff --git a/entities.xml b/entities.xml new file mode 100644 index 0000000..e9e0553 --- /dev/null +++ b/entities.xml @@ -0,0 +1,9 @@ +<!-- misc. strings --> +<!ENTITY bz-url "http://www.bzip.org"> +<!ENTITY bz-email "jseward@bzip.org"> +<!ENTITY bz-lifespan "1996-2007"> + +<!ENTITY bz-version "1.0.5"> +<!ENTITY bz-date "10 December 2007"> + +<!ENTITY manual-title "bzip2 Manual"> diff --git a/format.pl b/format.pl new file mode 100755 index 0000000..1928d15 --- /dev/null +++ b/format.pl @@ -0,0 +1,68 @@ +#!/usr/bin/perl -w +# +# ------------------------------------------------------------------ +# This file is part of bzip2/libbzip2, a program and library for +# lossless, block-sorting data compression. +# +# bzip2/libbzip2 version 1.0.5 of 10 December 2007 +# Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> +# +# Please read the WARNING, DISCLAIMER and PATENTS sections in the +# README file. +# +# This program is released under the terms of the license contained +# in the file LICENSE. +# ------------------------------------------------------------------ +# +use strict; + +# get command line values: +if ( $#ARGV !=1 ) { + die "Usage: $0 xml_infile xml_outfile\n"; +} + +my $infile = shift; +# check infile exists +die "Can't find file \"$infile\"" + unless -f $infile; +# check we can read infile +if (! -r $infile) { + die "Can't read input $infile\n"; +} +# check we can open infile +open( INFILE,"<$infile" ) or + die "Can't input $infile $!"; + +#my $outfile = 'fmt-manual.xml'; +my $outfile = shift; +#print "Infile: $infile, Outfile: $outfile\n"; +# check we can write to outfile +open( OUTFILE,">$outfile" ) or + die "Can't output $outfile $! for writing"; + +my ($prev, $curr, $str); +$prev = ''; $curr = ''; +while ( <INFILE> ) { + + print OUTFILE $prev; + $prev = $curr; + $curr = $_; + $str = ''; + + if ( $prev =~ /<programlisting>$|<screen>$/ ) { + chomp $prev; + $curr = join( '', $prev, "<![CDATA[", $curr ); + $prev = ''; + next; + } + elsif ( $curr =~ /<\/programlisting>|<\/screen>/ ) { + chomp $prev; + $curr = join( '', $prev, "]]>", $curr ); + $prev = ''; + next; + } +} +print OUTFILE $curr; +close INFILE; +close OUTFILE; +exit; diff --git a/huffman.c b/huffman.c new file mode 100644 index 0000000..87e79e3 --- /dev/null +++ b/huffman.c @@ -0,0 +1,205 @@ + +/*-------------------------------------------------------------*/ +/*--- Huffman coding low-level stuff ---*/ +/*--- huffman.c ---*/ +/*-------------------------------------------------------------*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + + +#include "bzlib_private.h" + +/*---------------------------------------------------*/ +#define WEIGHTOF(zz0) ((zz0) & 0xffffff00) +#define DEPTHOF(zz1) ((zz1) & 0x000000ff) +#define MYMAX(zz2,zz3) ((zz2) > (zz3) ? (zz2) : (zz3)) + +#define ADDWEIGHTS(zw1,zw2) \ + (WEIGHTOF(zw1)+WEIGHTOF(zw2)) | \ + (1 + MYMAX(DEPTHOF(zw1),DEPTHOF(zw2))) + +#define UPHEAP(z) \ +{ \ + Int32 zz, tmp; \ + zz = z; tmp = heap[zz]; \ + while (weight[tmp] < weight[heap[zz >> 1]]) { \ + heap[zz] = heap[zz >> 1]; \ + zz >>= 1; \ + } \ + heap[zz] = tmp; \ +} + +#define DOWNHEAP(z) \ +{ \ + Int32 zz, yy, tmp; \ + zz = z; tmp = heap[zz]; \ + while (True) { \ + yy = zz << 1; \ + if (yy > nHeap) break; \ + if (yy < nHeap && \ + weight[heap[yy+1]] < weight[heap[yy]]) \ + yy++; \ + if (weight[tmp] < weight[heap[yy]]) break; \ + heap[zz] = heap[yy]; \ + zz = yy; \ + } \ + heap[zz] = tmp; \ +} + + +/*---------------------------------------------------*/ +void BZ2_hbMakeCodeLengths ( UChar *len, + Int32 *freq, + Int32 alphaSize, + Int32 maxLen ) +{ + /*-- + Nodes and heap entries run from 1. Entry 0 + for both the heap and nodes is a sentinel. + --*/ + Int32 nNodes, nHeap, n1, n2, i, j, k; + Bool tooLong; + + Int32 heap [ BZ_MAX_ALPHA_SIZE + 2 ]; + Int32 weight [ BZ_MAX_ALPHA_SIZE * 2 ]; + Int32 parent [ BZ_MAX_ALPHA_SIZE * 2 ]; + + for (i = 0; i < alphaSize; i++) + weight[i+1] = (freq[i] == 0 ? 1 : freq[i]) << 8; + + while (True) { + + nNodes = alphaSize; + nHeap = 0; + + heap[0] = 0; + weight[0] = 0; + parent[0] = -2; + + for (i = 1; i <= alphaSize; i++) { + parent[i] = -1; + nHeap++; + heap[nHeap] = i; + UPHEAP(nHeap); + } + + AssertH( nHeap < (BZ_MAX_ALPHA_SIZE+2), 2001 ); + + while (nHeap > 1) { + n1 = heap[1]; heap[1] = heap[nHeap]; nHeap--; DOWNHEAP(1); + n2 = heap[1]; heap[1] = heap[nHeap]; nHeap--; DOWNHEAP(1); + nNodes++; + parent[n1] = parent[n2] = nNodes; + weight[nNodes] = ADDWEIGHTS(weight[n1], weight[n2]); + parent[nNodes] = -1; + nHeap++; + heap[nHeap] = nNodes; + UPHEAP(nHeap); + } + + AssertH( nNodes < (BZ_MAX_ALPHA_SIZE * 2), 2002 ); + + tooLong = False; + for (i = 1; i <= alphaSize; i++) { + j = 0; + k = i; + while (parent[k] >= 0) { k = parent[k]; j++; } + len[i-1] = j; + if (j > maxLen) tooLong = True; + } + + if (! tooLong) break; + + /* 17 Oct 04: keep-going condition for the following loop used + to be 'i < alphaSize', which missed the last element, + theoretically leading to the possibility of the compressor + looping. However, this count-scaling step is only needed if + one of the generated Huffman code words is longer than + maxLen, which up to and including version 1.0.2 was 20 bits, + which is extremely unlikely. In version 1.0.3 maxLen was + changed to 17 bits, which has minimal effect on compression + ratio, but does mean this scaling step is used from time to + time, enough to verify that it works. + + This means that bzip2-1.0.3 and later will only produce + Huffman codes with a maximum length of 17 bits. However, in + order to preserve backwards compatibility with bitstreams + produced by versions pre-1.0.3, the decompressor must still + handle lengths of up to 20. */ + + for (i = 1; i <= alphaSize; i++) { + j = weight[i] >> 8; + j = 1 + (j / 2); + weight[i] = j << 8; + } + } +} + + +/*---------------------------------------------------*/ +void BZ2_hbAssignCodes ( Int32 *code, + UChar *length, + Int32 minLen, + Int32 maxLen, + Int32 alphaSize ) +{ + Int32 n, vec, i; + + vec = 0; + for (n = minLen; n <= maxLen; n++) { + for (i = 0; i < alphaSize; i++) + if (length[i] == n) { code[i] = vec; vec++; }; + vec <<= 1; + } +} + + +/*---------------------------------------------------*/ +void BZ2_hbCreateDecodeTables ( Int32 *limit, + Int32 *base, + Int32 *perm, + UChar *length, + Int32 minLen, + Int32 maxLen, + Int32 alphaSize ) +{ + Int32 pp, i, j, vec; + + pp = 0; + for (i = minLen; i <= maxLen; i++) + for (j = 0; j < alphaSize; j++) + if (length[j] == i) { perm[pp] = j; pp++; }; + + for (i = 0; i < BZ_MAX_CODE_LEN; i++) base[i] = 0; + for (i = 0; i < alphaSize; i++) base[length[i]+1]++; + + for (i = 1; i < BZ_MAX_CODE_LEN; i++) base[i] += base[i-1]; + + for (i = 0; i < BZ_MAX_CODE_LEN; i++) limit[i] = 0; + vec = 0; + + for (i = minLen; i <= maxLen; i++) { + vec += (base[i+1] - base[i]); + limit[i] = vec-1; + vec <<= 1; + } + for (i = minLen + 1; i <= maxLen; i++) + base[i] = ((limit[i-1] + 1) << 1) - base[i]; +} + + +/*-------------------------------------------------------------*/ +/*--- end huffman.c ---*/ +/*-------------------------------------------------------------*/ diff --git a/libbz2.def b/libbz2.def new file mode 100644 index 0000000..4f83fcc --- /dev/null +++ b/libbz2.def @@ -0,0 +1,27 @@ +LIBRARY LIBBZ2 +DESCRIPTION "libbzip2: library for data compression" +EXPORTS + BZ2_bzCompressInit + BZ2_bzCompress + BZ2_bzCompressEnd + BZ2_bzDecompressInit + BZ2_bzDecompress + BZ2_bzDecompressEnd + BZ2_bzReadOpen + BZ2_bzReadClose + BZ2_bzReadGetUnused + BZ2_bzRead + BZ2_bzWriteOpen + BZ2_bzWrite + BZ2_bzWriteClose + BZ2_bzWriteClose64 + BZ2_bzBuffToBuffCompress + BZ2_bzBuffToBuffDecompress + BZ2_bzlibVersion + BZ2_bzopen + BZ2_bzdopen + BZ2_bzread + BZ2_bzwrite + BZ2_bzflush + BZ2_bzclose + BZ2_bzerror diff --git a/libbz2.dsp b/libbz2.dsp new file mode 100644 index 0000000..06c1d37 --- /dev/null +++ b/libbz2.dsp @@ -0,0 +1,130 @@ +# Microsoft Developer Studio Project File - Name="libbz2" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 5.00 +# ** •ÒW‚µ‚È‚¢‚Å‚‚¾‚³‚¢ ** + +# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 + +CFG=libbz2 - Win32 Debug +!MESSAGE ‚±‚ê‚Í—LŒø‚ÈÒ²¸Ì§²Ù‚ł͂ ‚è‚Ü‚¹‚ñB ‚±‚ÌÌßÛ¼Þª¸Ä‚ðËÞÙÄÞ‚·‚邽‚ß‚É‚Í NMAKE ‚ðŽg—p‚µ‚Ä‚‚¾‚³‚¢B +!MESSAGE [Ò²¸Ì§²Ù‚Ì´¸½Îß°Ä] ºÏÝÄÞ‚ðŽg—p‚µ‚ÄŽÀs‚µ‚Ä‚‚¾‚³‚¢ +!MESSAGE +!MESSAGE NMAKE /f "libbz2.mak". +!MESSAGE +!MESSAGE NMAKE ‚ÌŽÀsŽž‚É\¬‚ðŽw’è‚Å‚«‚Ü‚· +!MESSAGE ºÏÝÄÞ ×²Ýã‚ÅϸۂÌÝ’è‚ð’è‹`‚µ‚Ü‚·B—á: +!MESSAGE +!MESSAGE NMAKE /f "libbz2.mak" CFG="libbz2 - Win32 Debug" +!MESSAGE +!MESSAGE ‘I‘ð‰Â”\‚ÈËÞÙÄÞ Ó°ÄÞ: +!MESSAGE +!MESSAGE "libbz2 - Win32 Release" ("Win32 (x86) Dynamic-Link Library" —p) +!MESSAGE "libbz2 - Win32 Debug" ("Win32 (x86) Dynamic-Link Library" —p) +!MESSAGE + +# Begin Project +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +CPP=cl.exe +MTL=midl.exe +RSC=rc.exe + +!IF "$(CFG)" == "libbz2 - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c +# ADD CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o NUL /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o NUL /win32 +# ADD BASE RSC /l 0x411 /d "NDEBUG" +# ADD RSC /l 0x411 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386 +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386 /out:"libbz2.dll" + +!ELSEIF "$(CFG)" == "libbz2 - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c +# ADD CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o NUL /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o NUL /win32 +# ADD BASE RSC /l 0x411 /d "_DEBUG" +# ADD RSC /l 0x411 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /out:"libbz2.dll" /pdbtype:sept + +!ENDIF + +# Begin Target + +# Name "libbz2 - Win32 Release" +# Name "libbz2 - Win32 Debug" +# Begin Source File + +SOURCE=.\blocksort.c +# End Source File +# Begin Source File + +SOURCE=.\bzlib.c +# End Source File +# Begin Source File + +SOURCE=.\bzlib.h +# End Source File +# Begin Source File + +SOURCE=.\bzlib_private.h +# End Source File +# Begin Source File + +SOURCE=.\compress.c +# End Source File +# Begin Source File + +SOURCE=.\crctable.c +# End Source File +# Begin Source File + +SOURCE=.\decompress.c +# End Source File +# Begin Source File + +SOURCE=.\huffman.c +# End Source File +# Begin Source File + +SOURCE=.\libbz2.def +# End Source File +# Begin Source File + +SOURCE=.\randtable.c +# End Source File +# End Target +# End Project diff --git a/makefile.msc b/makefile.msc new file mode 100644 index 0000000..6a628a7 --- /dev/null +++ b/makefile.msc @@ -0,0 +1,63 @@ +# Makefile for Microsoft Visual C++ 6.0 +# usage: nmake -f makefile.msc +# K.M. Syring (syring@gsf.de) +# Fixed up by JRS for bzip2-0.9.5d release. + +CC=cl +CFLAGS= -DWIN32 -MD -Ox -D_FILE_OFFSET_BITS=64 -nologo + +OBJS= blocksort.obj \ + huffman.obj \ + crctable.obj \ + randtable.obj \ + compress.obj \ + decompress.obj \ + bzlib.obj + +all: lib bzip2 test + +bzip2: lib + $(CC) $(CFLAGS) -o bzip2 bzip2.c libbz2.lib setargv.obj + $(CC) $(CFLAGS) -o bzip2recover bzip2recover.c + +lib: $(OBJS) + lib /out:libbz2.lib $(OBJS) + +test: bzip2 + type words1 + .\\bzip2 -1 < sample1.ref > sample1.rb2 + .\\bzip2 -2 < sample2.ref > sample2.rb2 + .\\bzip2 -3 < sample3.ref > sample3.rb2 + .\\bzip2 -d < sample1.bz2 > sample1.tst + .\\bzip2 -d < sample2.bz2 > sample2.tst + .\\bzip2 -ds < sample3.bz2 > sample3.tst + @echo All six of the fc's should find no differences. + @echo If fc finds an error on sample3.bz2, this could be + @echo because WinZip's 'TAR file smart CR/LF conversion' + @echo is too clever for its own good. Disable this option. + @echo The correct size for sample3.ref is 120,244. If it + @echo is 150,251, WinZip has messed it up. + fc sample1.bz2 sample1.rb2 + fc sample2.bz2 sample2.rb2 + fc sample3.bz2 sample3.rb2 + fc sample1.tst sample1.ref + fc sample2.tst sample2.ref + fc sample3.tst sample3.ref + + + +clean: + del *.obj + del libbz2.lib + del bzip2.exe + del bzip2recover.exe + del sample1.rb2 + del sample2.rb2 + del sample3.rb2 + del sample1.tst + del sample2.tst + del sample3.tst + +.c.obj: + $(CC) $(CFLAGS) -c $*.c -o $*.obj + diff --git a/manual.html b/manual.html new file mode 100644 index 0000000..bd9eac8 --- /dev/null +++ b/manual.html @@ -0,0 +1,2540 @@ +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> +<title>bzip2 and libbzip2, version 1.0.5</title> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> +<style type="text/css" media="screen">/* Colours: +#74240f dark brown h1, h2, h3, h4 +#336699 medium blue links +#339999 turquoise link hover colour +#202020 almost black general text +#761596 purple md5sum text +#626262 dark gray pre border +#eeeeee very light gray pre background +#f2f2f9 very light blue nav table background +#3366cc medium blue nav table border +*/ + +a, a:link, a:visited, a:active { color: #336699; } +a:hover { color: #339999; } + +body { font: 80%/126% sans-serif; } +h1, h2, h3, h4 { color: #74240f; } + +dt { color: #336699; font-weight: bold } +dd { + margin-left: 1.5em; + padding-bottom: 0.8em; +} + +/* -- ruler -- */ +div.hr_blue { + height: 3px; + background:#ffffff url("/images/hr_blue.png") repeat-x; } +div.hr_blue hr { display:none; } + +/* release styles */ +#release p { margin-top: 0.4em; } +#release .md5sum { color: #761596; } + + +/* ------ styles for docs|manuals|howto ------ */ +/* -- lists -- */ +ul { + margin: 0px 4px 16px 16px; + padding: 0px; + list-style: url("/images/li-blue.png"); +} +ul li { + margin-bottom: 10px; +} +ul ul { + list-style-type: none; + list-style-image: none; + margin-left: 0px; +} + +/* header / footer nav tables */ +table.nav { + border: solid 1px #3366cc; + background: #f2f2f9; + background-color: #f2f2f9; + margin-bottom: 0.5em; +} +/* don't have underlined links in chunked nav menus */ +table.nav a { text-decoration: none; } +table.nav a:hover { text-decoration: underline; } +table.nav td { font-size: 85%; } + +code, tt, pre { font-size: 120%; } +code, tt { color: #761596; } + +div.literallayout, pre.programlisting, pre.screen { + color: #000000; + padding: 0.5em; + background: #eeeeee; + border: 1px solid #626262; + background-color: #eeeeee; + margin: 4px 0px 4px 0px; +} +</style> +</head> +<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="book" lang="en"> +<div class="titlepage"> +<div> +<div><h1 class="title"> +<a name="userman"></a>bzip2 and libbzip2, version 1.0.5</h1></div> +<div><h2 class="subtitle">A program and library for data compression</h2></div> +<div><div class="authorgroup"><div class="author"> +<h3 class="author"> +<span class="firstname">Julian</span> <span class="surname">Seward</span> +</h3> +<div class="affiliation"><span class="orgname">http://www.bzip.org<br></span></div> +</div></div></div> +<div><p class="releaseinfo">Version 1.0.5 of 10 December 2007</p></div> +<div><p class="copyright">Copyright © 1996-2007 Julian Seward</p></div> +<div><div class="legalnotice"> +<a name="id2499833"></a><p>This program, <code class="computeroutput">bzip2</code>, the + associated library <code class="computeroutput">libbzip2</code>, and + all documentation, are copyright © 1996-2007 Julian Seward. + All rights reserved.</p> +<p>Redistribution and use in source and binary forms, with + or without modification, are permitted provided that the + following conditions are met:</p> +<div class="itemizedlist"><ul type="bullet"> +<li style="list-style-type: disc"><p>Redistributions of source code must retain the + above copyright notice, this list of conditions and the + following disclaimer.</p></li> +<li style="list-style-type: disc"><p>The origin of this software must not be + misrepresented; you must not claim that you wrote the original + software. If you use this software in a product, an + acknowledgment in the product documentation would be + appreciated but is not required.</p></li> +<li style="list-style-type: disc"><p>Altered source versions must be plainly marked + as such, and must not be misrepresented as being the original + software.</p></li> +<li style="list-style-type: disc"><p>The name of the author may not be used to + endorse or promote products derived from this software without + specific prior written permission.</p></li> +</ul></div> +<p>THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY + EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + THE POSSIBILITY OF SUCH DAMAGE.</p> +<p>PATENTS: To the best of my knowledge, + <code class="computeroutput">bzip2</code> and + <code class="computeroutput">libbzip2</code> do not use any patented + algorithms. However, I do not have the resources to carry + out a patent search. Therefore I cannot give any guarantee of + the above statement. + </p> +</div></div> +</div> +<hr> +</div> +<div class="toc"> +<p><b>Table of Contents</b></p> +<dl> +<dt><span class="chapter"><a href="#intro">1. Introduction</a></span></dt> +<dt><span class="chapter"><a href="#using">2. How to use bzip2</a></span></dt> +<dd><dl> +<dt><span class="sect1"><a href="#name">2.1. NAME</a></span></dt> +<dt><span class="sect1"><a href="#synopsis">2.2. SYNOPSIS</a></span></dt> +<dt><span class="sect1"><a href="#description">2.3. DESCRIPTION</a></span></dt> +<dt><span class="sect1"><a href="#options">2.4. OPTIONS</a></span></dt> +<dt><span class="sect1"><a href="#memory-management">2.5. MEMORY MANAGEMENT</a></span></dt> +<dt><span class="sect1"><a href="#recovering">2.6. RECOVERING DATA FROM DAMAGED FILES</a></span></dt> +<dt><span class="sect1"><a href="#performance">2.7. PERFORMANCE NOTES</a></span></dt> +<dt><span class="sect1"><a href="#caveats">2.8. CAVEATS</a></span></dt> +<dt><span class="sect1"><a href="#author">2.9. AUTHOR</a></span></dt> +</dl></dd> +<dt><span class="chapter"><a href="#libprog">3. +Programming with <code class="computeroutput">libbzip2</code> +</a></span></dt> +<dd><dl> +<dt><span class="sect1"><a href="#top-level">3.1. Top-level structure</a></span></dt> +<dd><dl> +<dt><span class="sect2"><a href="#ll-summary">3.1.1. Low-level summary</a></span></dt> +<dt><span class="sect2"><a href="#hl-summary">3.1.2. High-level summary</a></span></dt> +<dt><span class="sect2"><a href="#util-fns-summary">3.1.3. Utility functions summary</a></span></dt> +</dl></dd> +<dt><span class="sect1"><a href="#err-handling">3.2. Error handling</a></span></dt> +<dt><span class="sect1"><a href="#low-level">3.3. Low-level interface</a></span></dt> +<dd><dl> +<dt><span class="sect2"><a href="#bzcompress-init">3.3.1. <code class="computeroutput">BZ2_bzCompressInit</code></a></span></dt> +<dt><span class="sect2"><a href="#bzCompress">3.3.2. <code class="computeroutput">BZ2_bzCompress</code></a></span></dt> +<dt><span class="sect2"><a href="#bzCompress-end">3.3.3. <code class="computeroutput">BZ2_bzCompressEnd</code></a></span></dt> +<dt><span class="sect2"><a href="#bzDecompress-init">3.3.4. <code class="computeroutput">BZ2_bzDecompressInit</code></a></span></dt> +<dt><span class="sect2"><a href="#bzDecompress">3.3.5. <code class="computeroutput">BZ2_bzDecompress</code></a></span></dt> +<dt><span class="sect2"><a href="#bzDecompress-end">3.3.6. <code class="computeroutput">BZ2_bzDecompressEnd</code></a></span></dt> +</dl></dd> +<dt><span class="sect1"><a href="#hl-interface">3.4. High-level interface</a></span></dt> +<dd><dl> +<dt><span class="sect2"><a href="#bzreadopen">3.4.1. <code class="computeroutput">BZ2_bzReadOpen</code></a></span></dt> +<dt><span class="sect2"><a href="#bzread">3.4.2. <code class="computeroutput">BZ2_bzRead</code></a></span></dt> +<dt><span class="sect2"><a href="#bzreadgetunused">3.4.3. <code class="computeroutput">BZ2_bzReadGetUnused</code></a></span></dt> +<dt><span class="sect2"><a href="#bzreadclose">3.4.4. <code class="computeroutput">BZ2_bzReadClose</code></a></span></dt> +<dt><span class="sect2"><a href="#bzwriteopen">3.4.5. <code class="computeroutput">BZ2_bzWriteOpen</code></a></span></dt> +<dt><span class="sect2"><a href="#bzwrite">3.4.6. <code class="computeroutput">BZ2_bzWrite</code></a></span></dt> +<dt><span class="sect2"><a href="#bzwriteclose">3.4.7. <code class="computeroutput">BZ2_bzWriteClose</code></a></span></dt> +<dt><span class="sect2"><a href="#embed">3.4.8. Handling embedded compressed data streams</a></span></dt> +<dt><span class="sect2"><a href="#std-rdwr">3.4.9. Standard file-reading/writing code</a></span></dt> +</dl></dd> +<dt><span class="sect1"><a href="#util-fns">3.5. Utility functions</a></span></dt> +<dd><dl> +<dt><span class="sect2"><a href="#bzbufftobuffcompress">3.5.1. <code class="computeroutput">BZ2_bzBuffToBuffCompress</code></a></span></dt> +<dt><span class="sect2"><a href="#bzbufftobuffdecompress">3.5.2. <code class="computeroutput">BZ2_bzBuffToBuffDecompress</code></a></span></dt> +</dl></dd> +<dt><span class="sect1"><a href="#zlib-compat">3.6. <code class="computeroutput">zlib</code> compatibility functions</a></span></dt> +<dt><span class="sect1"><a href="#stdio-free">3.7. Using the library in a <code class="computeroutput">stdio</code>-free environment</a></span></dt> +<dd><dl> +<dt><span class="sect2"><a href="#stdio-bye">3.7.1. Getting rid of <code class="computeroutput">stdio</code></a></span></dt> +<dt><span class="sect2"><a href="#critical-error">3.7.2. Critical error handling</a></span></dt> +</dl></dd> +<dt><span class="sect1"><a href="#win-dll">3.8. Making a Windows DLL</a></span></dt> +</dl></dd> +<dt><span class="chapter"><a href="#misc">4. Miscellanea</a></span></dt> +<dd><dl> +<dt><span class="sect1"><a href="#limits">4.1. Limitations of the compressed file format</a></span></dt> +<dt><span class="sect1"><a href="#port-issues">4.2. Portability issues</a></span></dt> +<dt><span class="sect1"><a href="#bugs">4.3. Reporting bugs</a></span></dt> +<dt><span class="sect1"><a href="#package">4.4. Did you get the right package?</a></span></dt> +<dt><span class="sect1"><a href="#reading">4.5. Further Reading</a></span></dt> +</dl></dd> +</dl> +</div> +<div class="chapter" lang="en"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="intro"></a>1. Introduction</h2></div></div></div> +<p><code class="computeroutput">bzip2</code> compresses files +using the Burrows-Wheeler block-sorting text compression +algorithm, and Huffman coding. Compression is generally +considerably better than that achieved by more conventional +LZ77/LZ78-based compressors, and approaches the performance of +the PPM family of statistical compressors.</p> +<p><code class="computeroutput">bzip2</code> is built on top of +<code class="computeroutput">libbzip2</code>, a flexible library for +handling compressed data in the +<code class="computeroutput">bzip2</code> format. This manual +describes both how to use the program and how to work with the +library interface. Most of the manual is devoted to this +library, not the program, which is good news if your interest is +only in the program.</p> +<div class="itemizedlist"><ul type="bullet"> +<li style="list-style-type: disc"><p><a href="#using">How to use bzip2</a> describes how to use + <code class="computeroutput">bzip2</code>; this is the only part + you need to read if you just want to know how to operate the + program.</p></li> +<li style="list-style-type: disc"><p><a href="#libprog">Programming with libbzip2</a> describes the + programming interfaces in detail, and</p></li> +<li style="list-style-type: disc"><p><a href="#misc">Miscellanea</a> records some + miscellaneous notes which I thought ought to be recorded + somewhere.</p></li> +</ul></div> +</div> +<div class="chapter" lang="en"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="using"></a>2. How to use bzip2</h2></div></div></div> +<div class="toc"> +<p><b>Table of Contents</b></p> +<dl> +<dt><span class="sect1"><a href="#name">2.1. NAME</a></span></dt> +<dt><span class="sect1"><a href="#synopsis">2.2. SYNOPSIS</a></span></dt> +<dt><span class="sect1"><a href="#description">2.3. DESCRIPTION</a></span></dt> +<dt><span class="sect1"><a href="#options">2.4. OPTIONS</a></span></dt> +<dt><span class="sect1"><a href="#memory-management">2.5. MEMORY MANAGEMENT</a></span></dt> +<dt><span class="sect1"><a href="#recovering">2.6. RECOVERING DATA FROM DAMAGED FILES</a></span></dt> +<dt><span class="sect1"><a href="#performance">2.7. PERFORMANCE NOTES</a></span></dt> +<dt><span class="sect1"><a href="#caveats">2.8. CAVEATS</a></span></dt> +<dt><span class="sect1"><a href="#author">2.9. AUTHOR</a></span></dt> +</dl> +</div> +<p>This chapter contains a copy of the +<code class="computeroutput">bzip2</code> man page, and nothing +else.</p> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="name"></a>2.1. NAME</h2></div></div></div> +<div class="itemizedlist"><ul type="bullet"> +<li style="list-style-type: disc"><p><code class="computeroutput">bzip2</code>, + <code class="computeroutput">bunzip2</code> - a block-sorting file + compressor, v1.0.4</p></li> +<li style="list-style-type: disc"><p><code class="computeroutput">bzcat</code> - + decompresses files to stdout</p></li> +<li style="list-style-type: disc"><p><code class="computeroutput">bzip2recover</code> - + recovers data from damaged bzip2 files</p></li> +</ul></div> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="synopsis"></a>2.2. SYNOPSIS</h2></div></div></div> +<div class="itemizedlist"><ul type="bullet"> +<li style="list-style-type: disc"><p><code class="computeroutput">bzip2</code> [ + -cdfkqstvzVL123456789 ] [ filenames ... ]</p></li> +<li style="list-style-type: disc"><p><code class="computeroutput">bunzip2</code> [ + -fkvsVL ] [ filenames ... ]</p></li> +<li style="list-style-type: disc"><p><code class="computeroutput">bzcat</code> [ -s ] [ + filenames ... ]</p></li> +<li style="list-style-type: disc"><p><code class="computeroutput">bzip2recover</code> + filename</p></li> +</ul></div> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="description"></a>2.3. DESCRIPTION</h2></div></div></div> +<p><code class="computeroutput">bzip2</code> compresses files +using the Burrows-Wheeler block sorting text compression +algorithm, and Huffman coding. Compression is generally +considerably better than that achieved by more conventional +LZ77/LZ78-based compressors, and approaches the performance of +the PPM family of statistical compressors.</p> +<p>The command-line options are deliberately very similar to +those of GNU <code class="computeroutput">gzip</code>, but they are +not identical.</p> +<p><code class="computeroutput">bzip2</code> expects a list of +file names to accompany the command-line flags. Each file is +replaced by a compressed version of itself, with the name +<code class="computeroutput">original_name.bz2</code>. Each +compressed file has the same modification date, permissions, and, +when possible, ownership as the corresponding original, so that +these properties can be correctly restored at decompression time. +File name handling is naive in the sense that there is no +mechanism for preserving original file names, permissions, +ownerships or dates in filesystems which lack these concepts, or +have serious file name length restrictions, such as +MS-DOS.</p> +<p><code class="computeroutput">bzip2</code> and +<code class="computeroutput">bunzip2</code> will by default not +overwrite existing files. If you want this to happen, specify +the <code class="computeroutput">-f</code> flag.</p> +<p>If no file names are specified, +<code class="computeroutput">bzip2</code> compresses from standard +input to standard output. In this case, +<code class="computeroutput">bzip2</code> will decline to write +compressed output to a terminal, as this would be entirely +incomprehensible and therefore pointless.</p> +<p><code class="computeroutput">bunzip2</code> (or +<code class="computeroutput">bzip2 -d</code>) decompresses all +specified files. Files which were not created by +<code class="computeroutput">bzip2</code> will be detected and +ignored, and a warning issued. +<code class="computeroutput">bzip2</code> attempts to guess the +filename for the decompressed file from that of the compressed +file as follows:</p> +<div class="itemizedlist"><ul type="bullet"> +<li style="list-style-type: disc"><p><code class="computeroutput">filename.bz2 </code> + becomes + <code class="computeroutput">filename</code></p></li> +<li style="list-style-type: disc"><p><code class="computeroutput">filename.bz </code> + becomes + <code class="computeroutput">filename</code></p></li> +<li style="list-style-type: disc"><p><code class="computeroutput">filename.tbz2</code> + becomes + <code class="computeroutput">filename.tar</code></p></li> +<li style="list-style-type: disc"><p><code class="computeroutput">filename.tbz </code> + becomes + <code class="computeroutput">filename.tar</code></p></li> +<li style="list-style-type: disc"><p><code class="computeroutput">anyothername </code> + becomes + <code class="computeroutput">anyothername.out</code></p></li> +</ul></div> +<p>If the file does not end in one of the recognised endings, +<code class="computeroutput">.bz2</code>, +<code class="computeroutput">.bz</code>, +<code class="computeroutput">.tbz2</code> or +<code class="computeroutput">.tbz</code>, +<code class="computeroutput">bzip2</code> complains that it cannot +guess the name of the original file, and uses the original name +with <code class="computeroutput">.out</code> appended.</p> +<p>As with compression, supplying no filenames causes +decompression from standard input to standard output.</p> +<p><code class="computeroutput">bunzip2</code> will correctly +decompress a file which is the concatenation of two or more +compressed files. The result is the concatenation of the +corresponding uncompressed files. Integrity testing +(<code class="computeroutput">-t</code>) of concatenated compressed +files is also supported.</p> +<p>You can also compress or decompress files to the standard +output by giving the <code class="computeroutput">-c</code> flag. +Multiple files may be compressed and decompressed like this. The +resulting outputs are fed sequentially to stdout. Compression of +multiple files in this manner generates a stream containing +multiple compressed file representations. Such a stream can be +decompressed correctly only by +<code class="computeroutput">bzip2</code> version 0.9.0 or later. +Earlier versions of <code class="computeroutput">bzip2</code> will +stop after decompressing the first file in the stream.</p> +<p><code class="computeroutput">bzcat</code> (or +<code class="computeroutput">bzip2 -dc</code>) decompresses all +specified files to the standard output.</p> +<p><code class="computeroutput">bzip2</code> will read arguments +from the environment variables +<code class="computeroutput">BZIP2</code> and +<code class="computeroutput">BZIP</code>, in that order, and will +process them before any arguments read from the command line. +This gives a convenient way to supply default arguments.</p> +<p>Compression is always performed, even if the compressed +file is slightly larger than the original. Files of less than +about one hundred bytes tend to get larger, since the compression +mechanism has a constant overhead in the region of 50 bytes. +Random data (including the output of most file compressors) is +coded at about 8.05 bits per byte, giving an expansion of around +0.5%.</p> +<p>As a self-check for your protection, +<code class="computeroutput">bzip2</code> uses 32-bit CRCs to make +sure that the decompressed version of a file is identical to the +original. This guards against corruption of the compressed data, +and against undetected bugs in +<code class="computeroutput">bzip2</code> (hopefully very unlikely). +The chances of data corruption going undetected is microscopic, +about one chance in four billion for each file processed. Be +aware, though, that the check occurs upon decompression, so it +can only tell you that something is wrong. It can't help you +recover the original uncompressed data. You can use +<code class="computeroutput">bzip2recover</code> to try to recover +data from damaged files.</p> +<p>Return values: 0 for a normal exit, 1 for environmental +problems (file not found, invalid flags, I/O errors, etc.), 2 +to indicate a corrupt compressed file, 3 for an internal +consistency error (eg, bug) which caused +<code class="computeroutput">bzip2</code> to panic.</p> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="options"></a>2.4. OPTIONS</h2></div></div></div> +<div class="variablelist"><dl> +<dt><span class="term"><code class="computeroutput">-c --stdout</code></span></dt> +<dd><p>Compress or decompress to standard + output.</p></dd> +<dt><span class="term"><code class="computeroutput">-d --decompress</code></span></dt> +<dd><p>Force decompression. + <code class="computeroutput">bzip2</code>, + <code class="computeroutput">bunzip2</code> and + <code class="computeroutput">bzcat</code> are really the same + program, and the decision about what actions to take is done on + the basis of which name is used. This flag overrides that + mechanism, and forces bzip2 to decompress.</p></dd> +<dt><span class="term"><code class="computeroutput">-z --compress</code></span></dt> +<dd><p>The complement to + <code class="computeroutput">-d</code>: forces compression, + regardless of the invokation name.</p></dd> +<dt><span class="term"><code class="computeroutput">-t --test</code></span></dt> +<dd><p>Check integrity of the specified file(s), but + don't decompress them. This really performs a trial + decompression and throws away the result.</p></dd> +<dt><span class="term"><code class="computeroutput">-f --force</code></span></dt> +<dd> +<p>Force overwrite of output files. Normally, + <code class="computeroutput">bzip2</code> will not overwrite + existing output files. Also forces + <code class="computeroutput">bzip2</code> to break hard links to + files, which it otherwise wouldn't do.</p> +<p><code class="computeroutput">bzip2</code> normally declines + to decompress files which don't have the correct magic header + bytes. If forced (<code class="computeroutput">-f</code>), + however, it will pass such files through unmodified. This is + how GNU <code class="computeroutput">gzip</code> behaves.</p> +</dd> +<dt><span class="term"><code class="computeroutput">-k --keep</code></span></dt> +<dd><p>Keep (don't delete) input files during + compression or decompression.</p></dd> +<dt><span class="term"><code class="computeroutput">-s --small</code></span></dt> +<dd> +<p>Reduce memory usage, for compression, + decompression and testing. Files are decompressed and tested + using a modified algorithm which only requires 2.5 bytes per + block byte. This means any file can be decompressed in 2300k + of memory, albeit at about half the normal speed.</p> +<p>During compression, <code class="computeroutput">-s</code> + selects a block size of 200k, which limits memory use to around + the same figure, at the expense of your compression ratio. In + short, if your machine is low on memory (8 megabytes or less), + use <code class="computeroutput">-s</code> for everything. See + <a href="#memory-management">MEMORY MANAGEMENT</a> below.</p> +</dd> +<dt><span class="term"><code class="computeroutput">-q --quiet</code></span></dt> +<dd><p>Suppress non-essential warning messages. + Messages pertaining to I/O errors and other critical events + will not be suppressed.</p></dd> +<dt><span class="term"><code class="computeroutput">-v --verbose</code></span></dt> +<dd><p>Verbose mode -- show the compression ratio for + each file processed. Further + <code class="computeroutput">-v</code>'s increase the verbosity + level, spewing out lots of information which is primarily of + interest for diagnostic purposes.</p></dd> +<dt><span class="term"><code class="computeroutput">-L --license -V --version</code></span></dt> +<dd><p>Display the software version, license terms and + conditions.</p></dd> +<dt><span class="term"><code class="computeroutput">-1</code> (or + <code class="computeroutput">--fast</code>) to + <code class="computeroutput">-9</code> (or + <code class="computeroutput">-best</code>)</span></dt> +<dd><p>Set the block size to 100 k, 200 k ... 900 k + when compressing. Has no effect when decompressing. See <a href="#memory-management">MEMORY MANAGEMENT</a> below. The + <code class="computeroutput">--fast</code> and + <code class="computeroutput">--best</code> aliases are primarily + for GNU <code class="computeroutput">gzip</code> compatibility. + In particular, <code class="computeroutput">--fast</code> doesn't + make things significantly faster. And + <code class="computeroutput">--best</code> merely selects the + default behaviour.</p></dd> +<dt><span class="term"><code class="computeroutput">--</code></span></dt> +<dd><p>Treats all subsequent arguments as file names, + even if they start with a dash. This is so you can handle + files with names beginning with a dash, for example: + <code class="computeroutput">bzip2 -- + -myfilename</code>.</p></dd> +<dt> +<span class="term"><code class="computeroutput">--repetitive-fast</code>, </span><span class="term"><code class="computeroutput">--repetitive-best</code></span> +</dt> +<dd><p>These flags are redundant in versions 0.9.5 and + above. They provided some coarse control over the behaviour of + the sorting algorithm in earlier versions, which was sometimes + useful. 0.9.5 and above have an improved algorithm which + renders these flags irrelevant.</p></dd> +</dl></div> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="memory-management"></a>2.5. MEMORY MANAGEMENT</h2></div></div></div> +<p><code class="computeroutput">bzip2</code> compresses large +files in blocks. The block size affects both the compression +ratio achieved, and the amount of memory needed for compression +and decompression. The flags <code class="computeroutput">-1</code> +through <code class="computeroutput">-9</code> specify the block +size to be 100,000 bytes through 900,000 bytes (the default) +respectively. At decompression time, the block size used for +compression is read from the header of the compressed file, and +<code class="computeroutput">bunzip2</code> then allocates itself +just enough memory to decompress the file. Since block sizes are +stored in compressed files, it follows that the flags +<code class="computeroutput">-1</code> to +<code class="computeroutput">-9</code> are irrelevant to and so +ignored during decompression.</p> +<p>Compression and decompression requirements, in bytes, can be +estimated as:</p> +<pre class="programlisting">Compression: 400k + ( 8 x block size ) + +Decompression: 100k + ( 4 x block size ), or + 100k + ( 2.5 x block size )</pre> +<p>Larger block sizes give rapidly diminishing marginal +returns. Most of the compression comes from the first two or +three hundred k of block size, a fact worth bearing in mind when +using <code class="computeroutput">bzip2</code> on small machines. +It is also important to appreciate that the decompression memory +requirement is set at compression time by the choice of block +size.</p> +<p>For files compressed with the default 900k block size, +<code class="computeroutput">bunzip2</code> will require about 3700 +kbytes to decompress. To support decompression of any file on a +4 megabyte machine, <code class="computeroutput">bunzip2</code> has +an option to decompress using approximately half this amount of +memory, about 2300 kbytes. Decompression speed is also halved, +so you should use this option only where necessary. The relevant +flag is <code class="computeroutput">-s</code>.</p> +<p>In general, try and use the largest block size memory +constraints allow, since that maximises the compression achieved. +Compression and decompression speed are virtually unaffected by +block size.</p> +<p>Another significant point applies to files which fit in a +single block -- that means most files you'd encounter using a +large block size. The amount of real memory touched is +proportional to the size of the file, since the file is smaller +than a block. For example, compressing a file 20,000 bytes long +with the flag <code class="computeroutput">-9</code> will cause the +compressor to allocate around 7600k of memory, but only touch +400k + 20000 * 8 = 560 kbytes of it. Similarly, the decompressor +will allocate 3700k but only touch 100k + 20000 * 4 = 180 +kbytes.</p> +<p>Here is a table which summarises the maximum memory usage +for different block sizes. Also recorded is the total compressed +size for 14 files of the Calgary Text Compression Corpus +totalling 3,141,622 bytes. This column gives some feel for how +compression varies with block size. These figures tend to +understate the advantage of larger block sizes for larger files, +since the Corpus is dominated by smaller files.</p> +<pre class="programlisting"> Compress Decompress Decompress Corpus +Flag usage usage -s usage Size + + -1 1200k 500k 350k 914704 + -2 2000k 900k 600k 877703 + -3 2800k 1300k 850k 860338 + -4 3600k 1700k 1100k 846899 + -5 4400k 2100k 1350k 845160 + -6 5200k 2500k 1600k 838626 + -7 6100k 2900k 1850k 834096 + -8 6800k 3300k 2100k 828642 + -9 7600k 3700k 2350k 828642</pre> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="recovering"></a>2.6. RECOVERING DATA FROM DAMAGED FILES</h2></div></div></div> +<p><code class="computeroutput">bzip2</code> compresses files in +blocks, usually 900kbytes long. Each block is handled +independently. If a media or transmission error causes a +multi-block <code class="computeroutput">.bz2</code> file to become +damaged, it may be possible to recover data from the undamaged +blocks in the file.</p> +<p>The compressed representation of each block is delimited by +a 48-bit pattern, which makes it possible to find the block +boundaries with reasonable certainty. Each block also carries +its own 32-bit CRC, so damaged blocks can be distinguished from +undamaged ones.</p> +<p><code class="computeroutput">bzip2recover</code> is a simple +program whose purpose is to search for blocks in +<code class="computeroutput">.bz2</code> files, and write each block +out into its own <code class="computeroutput">.bz2</code> file. You +can then use <code class="computeroutput">bzip2 -t</code> to test +the integrity of the resulting files, and decompress those which +are undamaged.</p> +<p><code class="computeroutput">bzip2recover</code> takes a +single argument, the name of the damaged file, and writes a +number of files <code class="computeroutput">rec0001file.bz2</code>, +<code class="computeroutput">rec0002file.bz2</code>, etc, containing +the extracted blocks. The output filenames are designed so that +the use of wildcards in subsequent processing -- for example, +<code class="computeroutput">bzip2 -dc rec*file.bz2 > +recovered_data</code> -- lists the files in the correct +order.</p> +<p><code class="computeroutput">bzip2recover</code> should be of +most use dealing with large <code class="computeroutput">.bz2</code> +files, as these will contain many blocks. It is clearly futile +to use it on damaged single-block files, since a damaged block +cannot be recovered. If you wish to minimise any potential data +loss through media or transmission errors, you might consider +compressing with a smaller block size.</p> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="performance"></a>2.7. PERFORMANCE NOTES</h2></div></div></div> +<p>The sorting phase of compression gathers together similar +strings in the file. Because of this, files containing very long +runs of repeated symbols, like "aabaabaabaab ..." (repeated +several hundred times) may compress more slowly than normal. +Versions 0.9.5 and above fare much better than previous versions +in this respect. The ratio between worst-case and average-case +compression time is in the region of 10:1. For previous +versions, this figure was more like 100:1. You can use the +<code class="computeroutput">-vvvv</code> option to monitor progress +in great detail, if you want.</p> +<p>Decompression speed is unaffected by these +phenomena.</p> +<p><code class="computeroutput">bzip2</code> usually allocates +several megabytes of memory to operate in, and then charges all +over it in a fairly random fashion. This means that performance, +both for compressing and decompressing, is largely determined by +the speed at which your machine can service cache misses. +Because of this, small changes to the code to reduce the miss +rate have been observed to give disproportionately large +performance improvements. I imagine +<code class="computeroutput">bzip2</code> will perform best on +machines with very large caches.</p> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="caveats"></a>2.8. CAVEATS</h2></div></div></div> +<p>I/O error messages are not as helpful as they could be. +<code class="computeroutput">bzip2</code> tries hard to detect I/O +errors and exit cleanly, but the details of what the problem is +sometimes seem rather misleading.</p> +<p>This manual page pertains to version 1.0.5 of +<code class="computeroutput">bzip2</code>. Compressed data created by +this version is entirely forwards and backwards compatible with the +previous public releases, versions 0.1pl2, 0.9.0 and 0.9.5, 1.0.0, +1.0.1, 1.0.2 and 1.0.3, but with the following exception: 0.9.0 and +above can correctly decompress multiple concatenated compressed files. +0.1pl2 cannot do this; it will stop after decompressing just the first +file in the stream.</p> +<p><code class="computeroutput">bzip2recover</code> versions +prior to 1.0.2 used 32-bit integers to represent bit positions in +compressed files, so it could not handle compressed files more +than 512 megabytes long. Versions 1.0.2 and above use 64-bit ints +on some platforms which support them (GNU supported targets, and +Windows). To establish whether or not +<code class="computeroutput">bzip2recover</code> was built with such +a limitation, run it without arguments. In any event you can +build yourself an unlimited version if you can recompile it with +<code class="computeroutput">MaybeUInt64</code> set to be an +unsigned 64-bit integer.</p> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="author"></a>2.9. AUTHOR</h2></div></div></div> +<p>Julian Seward, +<code class="computeroutput">jseward@bzip.org</code></p> +<p>The ideas embodied in +<code class="computeroutput">bzip2</code> are due to (at least) the +following people: Michael Burrows and David Wheeler (for the +block sorting transformation), David Wheeler (again, for the +Huffman coder), Peter Fenwick (for the structured coding model in +the original <code class="computeroutput">bzip</code>, and many +refinements), and Alistair Moffat, Radford Neal and Ian Witten +(for the arithmetic coder in the original +<code class="computeroutput">bzip</code>). I am much indebted for +their help, support and advice. See the manual in the source +distribution for pointers to sources of documentation. Christian +von Roques encouraged me to look for faster sorting algorithms, +so as to speed up compression. Bela Lubkin encouraged me to +improve the worst-case compression performance. +Donna Robinson XMLised the documentation. +Many people sent +patches, helped with portability problems, lent machines, gave +advice and were generally helpful.</p> +</div> +</div> +<div class="chapter" lang="en"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="libprog"></a>3. +Programming with <code class="computeroutput">libbzip2</code> +</h2></div></div></div> +<div class="toc"> +<p><b>Table of Contents</b></p> +<dl> +<dt><span class="sect1"><a href="#top-level">3.1. Top-level structure</a></span></dt> +<dd><dl> +<dt><span class="sect2"><a href="#ll-summary">3.1.1. Low-level summary</a></span></dt> +<dt><span class="sect2"><a href="#hl-summary">3.1.2. High-level summary</a></span></dt> +<dt><span class="sect2"><a href="#util-fns-summary">3.1.3. Utility functions summary</a></span></dt> +</dl></dd> +<dt><span class="sect1"><a href="#err-handling">3.2. Error handling</a></span></dt> +<dt><span class="sect1"><a href="#low-level">3.3. Low-level interface</a></span></dt> +<dd><dl> +<dt><span class="sect2"><a href="#bzcompress-init">3.3.1. <code class="computeroutput">BZ2_bzCompressInit</code></a></span></dt> +<dt><span class="sect2"><a href="#bzCompress">3.3.2. <code class="computeroutput">BZ2_bzCompress</code></a></span></dt> +<dt><span class="sect2"><a href="#bzCompress-end">3.3.3. <code class="computeroutput">BZ2_bzCompressEnd</code></a></span></dt> +<dt><span class="sect2"><a href="#bzDecompress-init">3.3.4. <code class="computeroutput">BZ2_bzDecompressInit</code></a></span></dt> +<dt><span class="sect2"><a href="#bzDecompress">3.3.5. <code class="computeroutput">BZ2_bzDecompress</code></a></span></dt> +<dt><span class="sect2"><a href="#bzDecompress-end">3.3.6. <code class="computeroutput">BZ2_bzDecompressEnd</code></a></span></dt> +</dl></dd> +<dt><span class="sect1"><a href="#hl-interface">3.4. High-level interface</a></span></dt> +<dd><dl> +<dt><span class="sect2"><a href="#bzreadopen">3.4.1. <code class="computeroutput">BZ2_bzReadOpen</code></a></span></dt> +<dt><span class="sect2"><a href="#bzread">3.4.2. <code class="computeroutput">BZ2_bzRead</code></a></span></dt> +<dt><span class="sect2"><a href="#bzreadgetunused">3.4.3. <code class="computeroutput">BZ2_bzReadGetUnused</code></a></span></dt> +<dt><span class="sect2"><a href="#bzreadclose">3.4.4. <code class="computeroutput">BZ2_bzReadClose</code></a></span></dt> +<dt><span class="sect2"><a href="#bzwriteopen">3.4.5. <code class="computeroutput">BZ2_bzWriteOpen</code></a></span></dt> +<dt><span class="sect2"><a href="#bzwrite">3.4.6. <code class="computeroutput">BZ2_bzWrite</code></a></span></dt> +<dt><span class="sect2"><a href="#bzwriteclose">3.4.7. <code class="computeroutput">BZ2_bzWriteClose</code></a></span></dt> +<dt><span class="sect2"><a href="#embed">3.4.8. Handling embedded compressed data streams</a></span></dt> +<dt><span class="sect2"><a href="#std-rdwr">3.4.9. Standard file-reading/writing code</a></span></dt> +</dl></dd> +<dt><span class="sect1"><a href="#util-fns">3.5. Utility functions</a></span></dt> +<dd><dl> +<dt><span class="sect2"><a href="#bzbufftobuffcompress">3.5.1. <code class="computeroutput">BZ2_bzBuffToBuffCompress</code></a></span></dt> +<dt><span class="sect2"><a href="#bzbufftobuffdecompress">3.5.2. <code class="computeroutput">BZ2_bzBuffToBuffDecompress</code></a></span></dt> +</dl></dd> +<dt><span class="sect1"><a href="#zlib-compat">3.6. <code class="computeroutput">zlib</code> compatibility functions</a></span></dt> +<dt><span class="sect1"><a href="#stdio-free">3.7. Using the library in a <code class="computeroutput">stdio</code>-free environment</a></span></dt> +<dd><dl> +<dt><span class="sect2"><a href="#stdio-bye">3.7.1. Getting rid of <code class="computeroutput">stdio</code></a></span></dt> +<dt><span class="sect2"><a href="#critical-error">3.7.2. Critical error handling</a></span></dt> +</dl></dd> +<dt><span class="sect1"><a href="#win-dll">3.8. Making a Windows DLL</a></span></dt> +</dl> +</div> +<p>This chapter describes the programming interface to +<code class="computeroutput">libbzip2</code>.</p> +<p>For general background information, particularly about +memory use and performance aspects, you'd be well advised to read +<a href="#using">How to use bzip2</a> as well.</p> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="top-level"></a>3.1. Top-level structure</h2></div></div></div> +<p><code class="computeroutput">libbzip2</code> is a flexible +library for compressing and decompressing data in the +<code class="computeroutput">bzip2</code> data format. Although +packaged as a single entity, it helps to regard the library as +three separate parts: the low level interface, and the high level +interface, and some utility functions.</p> +<p>The structure of +<code class="computeroutput">libbzip2</code>'s interfaces is similar +to that of Jean-loup Gailly's and Mark Adler's excellent +<code class="computeroutput">zlib</code> library.</p> +<p>All externally visible symbols have names beginning +<code class="computeroutput">BZ2_</code>. This is new in version +1.0. The intention is to minimise pollution of the namespaces of +library clients.</p> +<p>To use any part of the library, you need to +<code class="computeroutput">#include <bzlib.h></code> +into your sources.</p> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="ll-summary"></a>3.1.1. Low-level summary</h3></div></div></div> +<p>This interface provides services for compressing and +decompressing data in memory. There's no provision for dealing +with files, streams or any other I/O mechanisms, just straight +memory-to-memory work. In fact, this part of the library can be +compiled without inclusion of +<code class="computeroutput">stdio.h</code>, which may be helpful +for embedded applications.</p> +<p>The low-level part of the library has no global variables +and is therefore thread-safe.</p> +<p>Six routines make up the low level interface: +<code class="computeroutput">BZ2_bzCompressInit</code>, +<code class="computeroutput">BZ2_bzCompress</code>, and +<code class="computeroutput">BZ2_bzCompressEnd</code> for +compression, and a corresponding trio +<code class="computeroutput">BZ2_bzDecompressInit</code>, +<code class="computeroutput">BZ2_bzDecompress</code> and +<code class="computeroutput">BZ2_bzDecompressEnd</code> for +decompression. The <code class="computeroutput">*Init</code> +functions allocate memory for compression/decompression and do +other initialisations, whilst the +<code class="computeroutput">*End</code> functions close down +operations and release memory.</p> +<p>The real work is done by +<code class="computeroutput">BZ2_bzCompress</code> and +<code class="computeroutput">BZ2_bzDecompress</code>. These +compress and decompress data from a user-supplied input buffer to +a user-supplied output buffer. These buffers can be any size; +arbitrary quantities of data are handled by making repeated calls +to these functions. This is a flexible mechanism allowing a +consumer-pull style of activity, or producer-push, or a mixture +of both.</p> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="hl-summary"></a>3.1.2. High-level summary</h3></div></div></div> +<p>This interface provides some handy wrappers around the +low-level interface to facilitate reading and writing +<code class="computeroutput">bzip2</code> format files +(<code class="computeroutput">.bz2</code> files). The routines +provide hooks to facilitate reading files in which the +<code class="computeroutput">bzip2</code> data stream is embedded +within some larger-scale file structure, or where there are +multiple <code class="computeroutput">bzip2</code> data streams +concatenated end-to-end.</p> +<p>For reading files, +<code class="computeroutput">BZ2_bzReadOpen</code>, +<code class="computeroutput">BZ2_bzRead</code>, +<code class="computeroutput">BZ2_bzReadClose</code> and +<code class="computeroutput">BZ2_bzReadGetUnused</code> are +supplied. For writing files, +<code class="computeroutput">BZ2_bzWriteOpen</code>, +<code class="computeroutput">BZ2_bzWrite</code> and +<code class="computeroutput">BZ2_bzWriteFinish</code> are +available.</p> +<p>As with the low-level library, no global variables are used +so the library is per se thread-safe. However, if I/O errors +occur whilst reading or writing the underlying compressed files, +you may have to consult <code class="computeroutput">errno</code> to +determine the cause of the error. In that case, you'd need a C +library which correctly supports +<code class="computeroutput">errno</code> in a multithreaded +environment.</p> +<p>To make the library a little simpler and more portable, +<code class="computeroutput">BZ2_bzReadOpen</code> and +<code class="computeroutput">BZ2_bzWriteOpen</code> require you to +pass them file handles (<code class="computeroutput">FILE*</code>s) +which have previously been opened for reading or writing +respectively. That avoids portability problems associated with +file operations and file attributes, whilst not being much of an +imposition on the programmer.</p> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="util-fns-summary"></a>3.1.3. Utility functions summary</h3></div></div></div> +<p>For very simple needs, +<code class="computeroutput">BZ2_bzBuffToBuffCompress</code> and +<code class="computeroutput">BZ2_bzBuffToBuffDecompress</code> are +provided. These compress data in memory from one buffer to +another buffer in a single function call. You should assess +whether these functions fulfill your memory-to-memory +compression/decompression requirements before investing effort in +understanding the more general but more complex low-level +interface.</p> +<p>Yoshioka Tsuneo +(<code class="computeroutput">tsuneo@rr.iij4u.or.jp</code>) has +contributed some functions to give better +<code class="computeroutput">zlib</code> compatibility. These +functions are <code class="computeroutput">BZ2_bzopen</code>, +<code class="computeroutput">BZ2_bzread</code>, +<code class="computeroutput">BZ2_bzwrite</code>, +<code class="computeroutput">BZ2_bzflush</code>, +<code class="computeroutput">BZ2_bzclose</code>, +<code class="computeroutput">BZ2_bzerror</code> and +<code class="computeroutput">BZ2_bzlibVersion</code>. You may find +these functions more convenient for simple file reading and +writing, than those in the high-level interface. These functions +are not (yet) officially part of the library, and are minimally +documented here. If they break, you get to keep all the pieces. +I hope to document them properly when time permits.</p> +<p>Yoshioka also contributed modifications to allow the +library to be built as a Windows DLL.</p> +</div> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="err-handling"></a>3.2. Error handling</h2></div></div></div> +<p>The library is designed to recover cleanly in all +situations, including the worst-case situation of decompressing +random data. I'm not 100% sure that it can always do this, so +you might want to add a signal handler to catch segmentation +violations during decompression if you are feeling especially +paranoid. I would be interested in hearing more about the +robustness of the library to corrupted compressed data.</p> +<p>Version 1.0.3 more robust in this respect than any +previous version. Investigations with Valgrind (a tool for detecting +problems with memory management) indicate +that, at least for the few files I tested, all single-bit errors +in the decompressed data are caught properly, with no +segmentation faults, no uses of uninitialised data, no out of +range reads or writes, and no infinite looping in the decompressor. +So it's certainly pretty robust, although +I wouldn't claim it to be totally bombproof.</p> +<p>The file <code class="computeroutput">bzlib.h</code> contains +all definitions needed to use the library. In particular, you +should definitely not include +<code class="computeroutput">bzlib_private.h</code>.</p> +<p>In <code class="computeroutput">bzlib.h</code>, the various +return values are defined. The following list is not intended as +an exhaustive description of the circumstances in which a given +value may be returned -- those descriptions are given later. +Rather, it is intended to convey the rough meaning of each return +value. The first five actions are normal and not intended to +denote an error situation.</p> +<div class="variablelist"><dl> +<dt><span class="term"><code class="computeroutput">BZ_OK</code></span></dt> +<dd><p>The requested action was completed + successfully.</p></dd> +<dt><span class="term"><code class="computeroutput">BZ_RUN_OK, BZ_FLUSH_OK, + BZ_FINISH_OK</code></span></dt> +<dd><p>In + <code class="computeroutput">BZ2_bzCompress</code>, the requested + flush/finish/nothing-special action was completed + successfully.</p></dd> +<dt><span class="term"><code class="computeroutput">BZ_STREAM_END</code></span></dt> +<dd><p>Compression of data was completed, or the + logical stream end was detected during + decompression.</p></dd> +</dl></div> +<p>The following return values indicate an error of some +kind.</p> +<div class="variablelist"><dl> +<dt><span class="term"><code class="computeroutput">BZ_CONFIG_ERROR</code></span></dt> +<dd><p>Indicates that the library has been improperly + compiled on your platform -- a major configuration error. + Specifically, it means that + <code class="computeroutput">sizeof(char)</code>, + <code class="computeroutput">sizeof(short)</code> and + <code class="computeroutput">sizeof(int)</code> are not 1, 2 and + 4 respectively, as they should be. Note that the library + should still work properly on 64-bit platforms which follow + the LP64 programming model -- that is, where + <code class="computeroutput">sizeof(long)</code> and + <code class="computeroutput">sizeof(void*)</code> are 8. Under + LP64, <code class="computeroutput">sizeof(int)</code> is still 4, + so <code class="computeroutput">libbzip2</code>, which doesn't + use the <code class="computeroutput">long</code> type, is + OK.</p></dd> +<dt><span class="term"><code class="computeroutput">BZ_SEQUENCE_ERROR</code></span></dt> +<dd><p>When using the library, it is important to call + the functions in the correct sequence and with data structures + (buffers etc) in the correct states. + <code class="computeroutput">libbzip2</code> checks as much as it + can to ensure this is happening, and returns + <code class="computeroutput">BZ_SEQUENCE_ERROR</code> if not. + Code which complies precisely with the function semantics, as + detailed below, should never receive this value; such an event + denotes buggy code which you should + investigate.</p></dd> +<dt><span class="term"><code class="computeroutput">BZ_PARAM_ERROR</code></span></dt> +<dd><p>Returned when a parameter to a function call is + out of range or otherwise manifestly incorrect. As with + <code class="computeroutput">BZ_SEQUENCE_ERROR</code>, this + denotes a bug in the client code. The distinction between + <code class="computeroutput">BZ_PARAM_ERROR</code> and + <code class="computeroutput">BZ_SEQUENCE_ERROR</code> is a bit + hazy, but still worth making.</p></dd> +<dt><span class="term"><code class="computeroutput">BZ_MEM_ERROR</code></span></dt> +<dd><p>Returned when a request to allocate memory + failed. Note that the quantity of memory needed to decompress + a stream cannot be determined until the stream's header has + been read. So + <code class="computeroutput">BZ2_bzDecompress</code> and + <code class="computeroutput">BZ2_bzRead</code> may return + <code class="computeroutput">BZ_MEM_ERROR</code> even though some + of the compressed data has been read. The same is not true + for compression; once + <code class="computeroutput">BZ2_bzCompressInit</code> or + <code class="computeroutput">BZ2_bzWriteOpen</code> have + successfully completed, + <code class="computeroutput">BZ_MEM_ERROR</code> cannot + occur.</p></dd> +<dt><span class="term"><code class="computeroutput">BZ_DATA_ERROR</code></span></dt> +<dd><p>Returned when a data integrity error is + detected during decompression. Most importantly, this means + when stored and computed CRCs for the data do not match. This + value is also returned upon detection of any other anomaly in + the compressed data.</p></dd> +<dt><span class="term"><code class="computeroutput">BZ_DATA_ERROR_MAGIC</code></span></dt> +<dd><p>As a special case of + <code class="computeroutput">BZ_DATA_ERROR</code>, it is + sometimes useful to know when the compressed stream does not + start with the correct magic bytes (<code class="computeroutput">'B' 'Z' + 'h'</code>).</p></dd> +<dt><span class="term"><code class="computeroutput">BZ_IO_ERROR</code></span></dt> +<dd><p>Returned by + <code class="computeroutput">BZ2_bzRead</code> and + <code class="computeroutput">BZ2_bzWrite</code> when there is an + error reading or writing in the compressed file, and by + <code class="computeroutput">BZ2_bzReadOpen</code> and + <code class="computeroutput">BZ2_bzWriteOpen</code> for attempts + to use a file for which the error indicator (viz, + <code class="computeroutput">ferror(f)</code>) is set. On + receipt of <code class="computeroutput">BZ_IO_ERROR</code>, the + caller should consult <code class="computeroutput">errno</code> + and/or <code class="computeroutput">perror</code> to acquire + operating-system specific information about the + problem.</p></dd> +<dt><span class="term"><code class="computeroutput">BZ_UNEXPECTED_EOF</code></span></dt> +<dd><p>Returned by + <code class="computeroutput">BZ2_bzRead</code> when the + compressed file finishes before the logical end of stream is + detected.</p></dd> +<dt><span class="term"><code class="computeroutput">BZ_OUTBUFF_FULL</code></span></dt> +<dd><p>Returned by + <code class="computeroutput">BZ2_bzBuffToBuffCompress</code> and + <code class="computeroutput">BZ2_bzBuffToBuffDecompress</code> to + indicate that the output data will not fit into the output + buffer provided.</p></dd> +</dl></div> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="low-level"></a>3.3. Low-level interface</h2></div></div></div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzcompress-init"></a>3.3.1. <code class="computeroutput">BZ2_bzCompressInit</code></h3></div></div></div> +<pre class="programlisting">typedef struct { + char *next_in; + unsigned int avail_in; + unsigned int total_in_lo32; + unsigned int total_in_hi32; + + char *next_out; + unsigned int avail_out; + unsigned int total_out_lo32; + unsigned int total_out_hi32; + + void *state; + + void *(*bzalloc)(void *,int,int); + void (*bzfree)(void *,void *); + void *opaque; +} bz_stream; + +int BZ2_bzCompressInit ( bz_stream *strm, + int blockSize100k, + int verbosity, + int workFactor );</pre> +<p>Prepares for compression. The +<code class="computeroutput">bz_stream</code> structure holds all +data pertaining to the compression activity. A +<code class="computeroutput">bz_stream</code> structure should be +allocated and initialised prior to the call. The fields of +<code class="computeroutput">bz_stream</code> comprise the entirety +of the user-visible data. <code class="computeroutput">state</code> +is a pointer to the private data structures required for +compression.</p> +<p>Custom memory allocators are supported, via fields +<code class="computeroutput">bzalloc</code>, +<code class="computeroutput">bzfree</code>, and +<code class="computeroutput">opaque</code>. The value +<code class="computeroutput">opaque</code> is passed to as the first +argument to all calls to <code class="computeroutput">bzalloc</code> +and <code class="computeroutput">bzfree</code>, but is otherwise +ignored by the library. The call <code class="computeroutput">bzalloc ( +opaque, n, m )</code> is expected to return a pointer +<code class="computeroutput">p</code> to <code class="computeroutput">n * +m</code> bytes of memory, and <code class="computeroutput">bzfree ( +opaque, p )</code> should free that memory.</p> +<p>If you don't want to use a custom memory allocator, set +<code class="computeroutput">bzalloc</code>, +<code class="computeroutput">bzfree</code> and +<code class="computeroutput">opaque</code> to +<code class="computeroutput">NULL</code>, and the library will then +use the standard <code class="computeroutput">malloc</code> / +<code class="computeroutput">free</code> routines.</p> +<p>Before calling +<code class="computeroutput">BZ2_bzCompressInit</code>, fields +<code class="computeroutput">bzalloc</code>, +<code class="computeroutput">bzfree</code> and +<code class="computeroutput">opaque</code> should be filled +appropriately, as just described. Upon return, the internal +state will have been allocated and initialised, and +<code class="computeroutput">total_in_lo32</code>, +<code class="computeroutput">total_in_hi32</code>, +<code class="computeroutput">total_out_lo32</code> and +<code class="computeroutput">total_out_hi32</code> will have been +set to zero. These four fields are used by the library to inform +the caller of the total amount of data passed into and out of the +library, respectively. You should not try to change them. As of +version 1.0, 64-bit counts are maintained, even on 32-bit +platforms, using the <code class="computeroutput">_hi32</code> +fields to store the upper 32 bits of the count. So, for example, +the total amount of data in is <code class="computeroutput">(total_in_hi32 +<< 32) + total_in_lo32</code>.</p> +<p>Parameter <code class="computeroutput">blockSize100k</code> +specifies the block size to be used for compression. It should +be a value between 1 and 9 inclusive, and the actual block size +used is 100000 x this figure. 9 gives the best compression but +takes most memory.</p> +<p>Parameter <code class="computeroutput">verbosity</code> should +be set to a number between 0 and 4 inclusive. 0 is silent, and +greater numbers give increasingly verbose monitoring/debugging +output. If the library has been compiled with +<code class="computeroutput">-DBZ_NO_STDIO</code>, no such output +will appear for any verbosity setting.</p> +<p>Parameter <code class="computeroutput">workFactor</code> +controls how the compression phase behaves when presented with +worst case, highly repetitive, input data. If compression runs +into difficulties caused by repetitive data, the library switches +from the standard sorting algorithm to a fallback algorithm. The +fallback is slower than the standard algorithm by perhaps a +factor of three, but always behaves reasonably, no matter how bad +the input.</p> +<p>Lower values of <code class="computeroutput">workFactor</code> +reduce the amount of effort the standard algorithm will expend +before resorting to the fallback. You should set this parameter +carefully; too low, and many inputs will be handled by the +fallback algorithm and so compress rather slowly, too high, and +your average-to-worst case compression times can become very +large. The default value of 30 gives reasonable behaviour over a +wide range of circumstances.</p> +<p>Allowable values range from 0 to 250 inclusive. 0 is a +special case, equivalent to using the default value of 30.</p> +<p>Note that the compressed output generated is the same +regardless of whether or not the fallback algorithm is +used.</p> +<p>Be aware also that this parameter may disappear entirely in +future versions of the library. In principle it should be +possible to devise a good way to automatically choose which +algorithm to use. Such a mechanism would render the parameter +obsolete.</p> +<p>Possible return values:</p> +<pre class="programlisting">BZ_CONFIG_ERROR + if the library has been mis-compiled +BZ_PARAM_ERROR + if strm is NULL + or blockSize < 1 or blockSize > 9 + or verbosity < 0 or verbosity > 4 + or workFactor < 0 or workFactor > 250 +BZ_MEM_ERROR + if not enough memory is available +BZ_OK + otherwise</pre> +<p>Allowable next actions:</p> +<pre class="programlisting">BZ2_bzCompress + if BZ_OK is returned + no specific action needed in case of error</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzCompress"></a>3.3.2. <code class="computeroutput">BZ2_bzCompress</code></h3></div></div></div> +<pre class="programlisting">int BZ2_bzCompress ( bz_stream *strm, int action );</pre> +<p>Provides more input and/or output buffer space for the +library. The caller maintains input and output buffers, and +calls <code class="computeroutput">BZ2_bzCompress</code> to transfer +data between them.</p> +<p>Before each call to +<code class="computeroutput">BZ2_bzCompress</code>, +<code class="computeroutput">next_in</code> should point at the data +to be compressed, and <code class="computeroutput">avail_in</code> +should indicate how many bytes the library may read. +<code class="computeroutput">BZ2_bzCompress</code> updates +<code class="computeroutput">next_in</code>, +<code class="computeroutput">avail_in</code> and +<code class="computeroutput">total_in</code> to reflect the number +of bytes it has read.</p> +<p>Similarly, <code class="computeroutput">next_out</code> should +point to a buffer in which the compressed data is to be placed, +with <code class="computeroutput">avail_out</code> indicating how +much output space is available. +<code class="computeroutput">BZ2_bzCompress</code> updates +<code class="computeroutput">next_out</code>, +<code class="computeroutput">avail_out</code> and +<code class="computeroutput">total_out</code> to reflect the number +of bytes output.</p> +<p>You may provide and remove as little or as much data as you +like on each call of +<code class="computeroutput">BZ2_bzCompress</code>. In the limit, +it is acceptable to supply and remove data one byte at a time, +although this would be terribly inefficient. You should always +ensure that at least one byte of output space is available at +each call.</p> +<p>A second purpose of +<code class="computeroutput">BZ2_bzCompress</code> is to request a +change of mode of the compressed stream.</p> +<p>Conceptually, a compressed stream can be in one of four +states: IDLE, RUNNING, FLUSHING and FINISHING. Before +initialisation +(<code class="computeroutput">BZ2_bzCompressInit</code>) and after +termination (<code class="computeroutput">BZ2_bzCompressEnd</code>), +a stream is regarded as IDLE.</p> +<p>Upon initialisation +(<code class="computeroutput">BZ2_bzCompressInit</code>), the stream +is placed in the RUNNING state. Subsequent calls to +<code class="computeroutput">BZ2_bzCompress</code> should pass +<code class="computeroutput">BZ_RUN</code> as the requested action; +other actions are illegal and will result in +<code class="computeroutput">BZ_SEQUENCE_ERROR</code>.</p> +<p>At some point, the calling program will have provided all +the input data it wants to. It will then want to finish up -- in +effect, asking the library to process any data it might have +buffered internally. In this state, +<code class="computeroutput">BZ2_bzCompress</code> will no longer +attempt to read data from +<code class="computeroutput">next_in</code>, but it will want to +write data to <code class="computeroutput">next_out</code>. Because +the output buffer supplied by the user can be arbitrarily small, +the finishing-up operation cannot necessarily be done with a +single call of +<code class="computeroutput">BZ2_bzCompress</code>.</p> +<p>Instead, the calling program passes +<code class="computeroutput">BZ_FINISH</code> as an action to +<code class="computeroutput">BZ2_bzCompress</code>. This changes +the stream's state to FINISHING. Any remaining input (ie, +<code class="computeroutput">next_in[0 .. avail_in-1]</code>) is +compressed and transferred to the output buffer. To do this, +<code class="computeroutput">BZ2_bzCompress</code> must be called +repeatedly until all the output has been consumed. At that +point, <code class="computeroutput">BZ2_bzCompress</code> returns +<code class="computeroutput">BZ_STREAM_END</code>, and the stream's +state is set back to IDLE. +<code class="computeroutput">BZ2_bzCompressEnd</code> should then be +called.</p> +<p>Just to make sure the calling program does not cheat, the +library makes a note of <code class="computeroutput">avail_in</code> +at the time of the first call to +<code class="computeroutput">BZ2_bzCompress</code> which has +<code class="computeroutput">BZ_FINISH</code> as an action (ie, at +the time the program has announced its intention to not supply +any more input). By comparing this value with that of +<code class="computeroutput">avail_in</code> over subsequent calls +to <code class="computeroutput">BZ2_bzCompress</code>, the library +can detect any attempts to slip in more data to compress. Any +calls for which this is detected will return +<code class="computeroutput">BZ_SEQUENCE_ERROR</code>. This +indicates a programming mistake which should be corrected.</p> +<p>Instead of asking to finish, the calling program may ask +<code class="computeroutput">BZ2_bzCompress</code> to take all the +remaining input, compress it and terminate the current +(Burrows-Wheeler) compression block. This could be useful for +error control purposes. The mechanism is analogous to that for +finishing: call <code class="computeroutput">BZ2_bzCompress</code> +with an action of <code class="computeroutput">BZ_FLUSH</code>, +remove output data, and persist with the +<code class="computeroutput">BZ_FLUSH</code> action until the value +<code class="computeroutput">BZ_RUN</code> is returned. As with +finishing, <code class="computeroutput">BZ2_bzCompress</code> +detects any attempt to provide more input data once the flush has +begun.</p> +<p>Once the flush is complete, the stream returns to the +normal RUNNING state.</p> +<p>This all sounds pretty complex, but isn't really. Here's a +table which shows which actions are allowable in each state, what +action will be taken, what the next state is, and what the +non-error return values are. Note that you can't explicitly ask +what state the stream is in, but nor do you need to -- it can be +inferred from the values returned by +<code class="computeroutput">BZ2_bzCompress</code>.</p> +<pre class="programlisting">IDLE/any + Illegal. IDLE state only exists after BZ2_bzCompressEnd or + before BZ2_bzCompressInit. + Return value = BZ_SEQUENCE_ERROR + +RUNNING/BZ_RUN + Compress from next_in to next_out as much as possible. + Next state = RUNNING + Return value = BZ_RUN_OK + +RUNNING/BZ_FLUSH + Remember current value of next_in. Compress from next_in + to next_out as much as possible, but do not accept any more input. + Next state = FLUSHING + Return value = BZ_FLUSH_OK + +RUNNING/BZ_FINISH + Remember current value of next_in. Compress from next_in + to next_out as much as possible, but do not accept any more input. + Next state = FINISHING + Return value = BZ_FINISH_OK + +FLUSHING/BZ_FLUSH + Compress from next_in to next_out as much as possible, + but do not accept any more input. + If all the existing input has been used up and all compressed + output has been removed + Next state = RUNNING; Return value = BZ_RUN_OK + else + Next state = FLUSHING; Return value = BZ_FLUSH_OK + +FLUSHING/other + Illegal. + Return value = BZ_SEQUENCE_ERROR + +FINISHING/BZ_FINISH + Compress from next_in to next_out as much as possible, + but to not accept any more input. + If all the existing input has been used up and all compressed + output has been removed + Next state = IDLE; Return value = BZ_STREAM_END + else + Next state = FINISHING; Return value = BZ_FINISH_OK + +FINISHING/other + Illegal. + Return value = BZ_SEQUENCE_ERROR</pre> +<p>That still looks complicated? Well, fair enough. The +usual sequence of calls for compressing a load of data is:</p> +<div class="orderedlist"><ol type="1"> +<li><p>Get started with + <code class="computeroutput">BZ2_bzCompressInit</code>.</p></li> +<li><p>Shovel data in and shlurp out its compressed form + using zero or more calls of + <code class="computeroutput">BZ2_bzCompress</code> with action = + <code class="computeroutput">BZ_RUN</code>.</p></li> +<li><p>Finish up. Repeatedly call + <code class="computeroutput">BZ2_bzCompress</code> with action = + <code class="computeroutput">BZ_FINISH</code>, copying out the + compressed output, until + <code class="computeroutput">BZ_STREAM_END</code> is + returned.</p></li> +<li><p>Close up and go home. Call + <code class="computeroutput">BZ2_bzCompressEnd</code>.</p></li> +</ol></div> +<p>If the data you want to compress fits into your input +buffer all at once, you can skip the calls of +<code class="computeroutput">BZ2_bzCompress ( ..., BZ_RUN )</code> +and just do the <code class="computeroutput">BZ2_bzCompress ( ..., BZ_FINISH +)</code> calls.</p> +<p>All required memory is allocated by +<code class="computeroutput">BZ2_bzCompressInit</code>. The +compression library can accept any data at all (obviously). So +you shouldn't get any error return values from the +<code class="computeroutput">BZ2_bzCompress</code> calls. If you +do, they will be +<code class="computeroutput">BZ_SEQUENCE_ERROR</code>, and indicate +a bug in your programming.</p> +<p>Trivial other possible return values:</p> +<pre class="programlisting">BZ_PARAM_ERROR + if strm is NULL, or strm->s is NULL</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzCompress-end"></a>3.3.3. <code class="computeroutput">BZ2_bzCompressEnd</code></h3></div></div></div> +<pre class="programlisting">int BZ2_bzCompressEnd ( bz_stream *strm );</pre> +<p>Releases all memory associated with a compression +stream.</p> +<p>Possible return values:</p> +<pre class="programlisting">BZ_PARAM_ERROR if strm is NULL or strm->s is NULL +BZ_OK otherwise</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzDecompress-init"></a>3.3.4. <code class="computeroutput">BZ2_bzDecompressInit</code></h3></div></div></div> +<pre class="programlisting">int BZ2_bzDecompressInit ( bz_stream *strm, int verbosity, int small );</pre> +<p>Prepares for decompression. As with +<code class="computeroutput">BZ2_bzCompressInit</code>, a +<code class="computeroutput">bz_stream</code> record should be +allocated and initialised before the call. Fields +<code class="computeroutput">bzalloc</code>, +<code class="computeroutput">bzfree</code> and +<code class="computeroutput">opaque</code> should be set if a custom +memory allocator is required, or made +<code class="computeroutput">NULL</code> for the normal +<code class="computeroutput">malloc</code> / +<code class="computeroutput">free</code> routines. Upon return, the +internal state will have been initialised, and +<code class="computeroutput">total_in</code> and +<code class="computeroutput">total_out</code> will be zero.</p> +<p>For the meaning of parameter +<code class="computeroutput">verbosity</code>, see +<code class="computeroutput">BZ2_bzCompressInit</code>.</p> +<p>If <code class="computeroutput">small</code> is nonzero, the +library will use an alternative decompression algorithm which +uses less memory but at the cost of decompressing more slowly +(roughly speaking, half the speed, but the maximum memory +requirement drops to around 2300k). See <a href="#using">How to use bzip2</a> +for more information on memory management.</p> +<p>Note that the amount of memory needed to decompress a +stream cannot be determined until the stream's header has been +read, so even if +<code class="computeroutput">BZ2_bzDecompressInit</code> succeeds, a +subsequent <code class="computeroutput">BZ2_bzDecompress</code> +could fail with +<code class="computeroutput">BZ_MEM_ERROR</code>.</p> +<p>Possible return values:</p> +<pre class="programlisting">BZ_CONFIG_ERROR + if the library has been mis-compiled +BZ_PARAM_ERROR + if ( small != 0 && small != 1 ) + or (verbosity <; 0 || verbosity > 4) +BZ_MEM_ERROR + if insufficient memory is available</pre> +<p>Allowable next actions:</p> +<pre class="programlisting">BZ2_bzDecompress + if BZ_OK was returned + no specific action required in case of error</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzDecompress"></a>3.3.5. <code class="computeroutput">BZ2_bzDecompress</code></h3></div></div></div> +<pre class="programlisting">int BZ2_bzDecompress ( bz_stream *strm );</pre> +<p>Provides more input and/out output buffer space for the +library. The caller maintains input and output buffers, and uses +<code class="computeroutput">BZ2_bzDecompress</code> to transfer +data between them.</p> +<p>Before each call to +<code class="computeroutput">BZ2_bzDecompress</code>, +<code class="computeroutput">next_in</code> should point at the +compressed data, and <code class="computeroutput">avail_in</code> +should indicate how many bytes the library may read. +<code class="computeroutput">BZ2_bzDecompress</code> updates +<code class="computeroutput">next_in</code>, +<code class="computeroutput">avail_in</code> and +<code class="computeroutput">total_in</code> to reflect the number +of bytes it has read.</p> +<p>Similarly, <code class="computeroutput">next_out</code> should +point to a buffer in which the uncompressed output is to be +placed, with <code class="computeroutput">avail_out</code> +indicating how much output space is available. +<code class="computeroutput">BZ2_bzCompress</code> updates +<code class="computeroutput">next_out</code>, +<code class="computeroutput">avail_out</code> and +<code class="computeroutput">total_out</code> to reflect the number +of bytes output.</p> +<p>You may provide and remove as little or as much data as you +like on each call of +<code class="computeroutput">BZ2_bzDecompress</code>. In the limit, +it is acceptable to supply and remove data one byte at a time, +although this would be terribly inefficient. You should always +ensure that at least one byte of output space is available at +each call.</p> +<p>Use of <code class="computeroutput">BZ2_bzDecompress</code> is +simpler than +<code class="computeroutput">BZ2_bzCompress</code>.</p> +<p>You should provide input and remove output as described +above, and repeatedly call +<code class="computeroutput">BZ2_bzDecompress</code> until +<code class="computeroutput">BZ_STREAM_END</code> is returned. +Appearance of <code class="computeroutput">BZ_STREAM_END</code> +denotes that <code class="computeroutput">BZ2_bzDecompress</code> +has detected the logical end of the compressed stream. +<code class="computeroutput">BZ2_bzDecompress</code> will not +produce <code class="computeroutput">BZ_STREAM_END</code> until all +output data has been placed into the output buffer, so once +<code class="computeroutput">BZ_STREAM_END</code> appears, you are +guaranteed to have available all the decompressed output, and +<code class="computeroutput">BZ2_bzDecompressEnd</code> can safely +be called.</p> +<p>If case of an error return value, you should call +<code class="computeroutput">BZ2_bzDecompressEnd</code> to clean up +and release memory.</p> +<p>Possible return values:</p> +<pre class="programlisting">BZ_PARAM_ERROR + if strm is NULL or strm->s is NULL + or strm->avail_out < 1 +BZ_DATA_ERROR + if a data integrity error is detected in the compressed stream +BZ_DATA_ERROR_MAGIC + if the compressed stream doesn't begin with the right magic bytes +BZ_MEM_ERROR + if there wasn't enough memory available +BZ_STREAM_END + if the logical end of the data stream was detected and all + output in has been consumed, eg s-->avail_out > 0 +BZ_OK + otherwise</pre> +<p>Allowable next actions:</p> +<pre class="programlisting">BZ2_bzDecompress + if BZ_OK was returned +BZ2_bzDecompressEnd + otherwise</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzDecompress-end"></a>3.3.6. <code class="computeroutput">BZ2_bzDecompressEnd</code></h3></div></div></div> +<pre class="programlisting">int BZ2_bzDecompressEnd ( bz_stream *strm );</pre> +<p>Releases all memory associated with a decompression +stream.</p> +<p>Possible return values:</p> +<pre class="programlisting">BZ_PARAM_ERROR + if strm is NULL or strm->s is NULL +BZ_OK + otherwise</pre> +<p>Allowable next actions:</p> +<pre class="programlisting"> None.</pre> +</div> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="hl-interface"></a>3.4. High-level interface</h2></div></div></div> +<p>This interface provides functions for reading and writing +<code class="computeroutput">bzip2</code> format files. First, some +general points.</p> +<div class="itemizedlist"><ul type="bullet"> +<li style="list-style-type: disc"><p>All of the functions take an + <code class="computeroutput">int*</code> first argument, + <code class="computeroutput">bzerror</code>. After each call, + <code class="computeroutput">bzerror</code> should be consulted + first to determine the outcome of the call. If + <code class="computeroutput">bzerror</code> is + <code class="computeroutput">BZ_OK</code>, the call completed + successfully, and only then should the return value of the + function (if any) be consulted. If + <code class="computeroutput">bzerror</code> is + <code class="computeroutput">BZ_IO_ERROR</code>, there was an + error reading/writing the underlying compressed file, and you + should then consult <code class="computeroutput">errno</code> / + <code class="computeroutput">perror</code> to determine the cause + of the difficulty. <code class="computeroutput">bzerror</code> + may also be set to various other values; precise details are + given on a per-function basis below.</p></li> +<li style="list-style-type: disc"><p>If <code class="computeroutput">bzerror</code> indicates + an error (ie, anything except + <code class="computeroutput">BZ_OK</code> and + <code class="computeroutput">BZ_STREAM_END</code>), you should + immediately call + <code class="computeroutput">BZ2_bzReadClose</code> (or + <code class="computeroutput">BZ2_bzWriteClose</code>, depending on + whether you are attempting to read or to write) to free up all + resources associated with the stream. Once an error has been + indicated, behaviour of all calls except + <code class="computeroutput">BZ2_bzReadClose</code> + (<code class="computeroutput">BZ2_bzWriteClose</code>) is + undefined. The implication is that (1) + <code class="computeroutput">bzerror</code> should be checked + after each call, and (2) if + <code class="computeroutput">bzerror</code> indicates an error, + <code class="computeroutput">BZ2_bzReadClose</code> + (<code class="computeroutput">BZ2_bzWriteClose</code>) should then + be called to clean up.</p></li> +<li style="list-style-type: disc"><p>The <code class="computeroutput">FILE*</code> arguments + passed to <code class="computeroutput">BZ2_bzReadOpen</code> / + <code class="computeroutput">BZ2_bzWriteOpen</code> should be set + to binary mode. Most Unix systems will do this by default, but + other platforms, including Windows and Mac, will not. If you + omit this, you may encounter problems when moving code to new + platforms.</p></li> +<li style="list-style-type: disc"><p>Memory allocation requests are handled by + <code class="computeroutput">malloc</code> / + <code class="computeroutput">free</code>. At present there is no + facility for user-defined memory allocators in the file I/O + functions (could easily be added, though).</p></li> +</ul></div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzreadopen"></a>3.4.1. <code class="computeroutput">BZ2_bzReadOpen</code></h3></div></div></div> +<pre class="programlisting">typedef void BZFILE; + +BZFILE *BZ2_bzReadOpen( int *bzerror, FILE *f, + int verbosity, int small, + void *unused, int nUnused );</pre> +<p>Prepare to read compressed data from file handle +<code class="computeroutput">f</code>. +<code class="computeroutput">f</code> should refer to a file which +has been opened for reading, and for which the error indicator +(<code class="computeroutput">ferror(f)</code>)is not set. If +<code class="computeroutput">small</code> is 1, the library will try +to decompress using less memory, at the expense of speed.</p> +<p>For reasons explained below, +<code class="computeroutput">BZ2_bzRead</code> will decompress the +<code class="computeroutput">nUnused</code> bytes starting at +<code class="computeroutput">unused</code>, before starting to read +from the file <code class="computeroutput">f</code>. At most +<code class="computeroutput">BZ_MAX_UNUSED</code> bytes may be +supplied like this. If this facility is not required, you should +pass <code class="computeroutput">NULL</code> and +<code class="computeroutput">0</code> for +<code class="computeroutput">unused</code> and +n<code class="computeroutput">Unused</code> respectively.</p> +<p>For the meaning of parameters +<code class="computeroutput">small</code> and +<code class="computeroutput">verbosity</code>, see +<code class="computeroutput">BZ2_bzDecompressInit</code>.</p> +<p>The amount of memory needed to decompress a file cannot be +determined until the file's header has been read. So it is +possible that <code class="computeroutput">BZ2_bzReadOpen</code> +returns <code class="computeroutput">BZ_OK</code> but a subsequent +call of <code class="computeroutput">BZ2_bzRead</code> will return +<code class="computeroutput">BZ_MEM_ERROR</code>.</p> +<p>Possible assignments to +<code class="computeroutput">bzerror</code>:</p> +<pre class="programlisting">BZ_CONFIG_ERROR + if the library has been mis-compiled +BZ_PARAM_ERROR + if f is NULL + or small is neither 0 nor 1 + or ( unused == NULL && nUnused != 0 ) + or ( unused != NULL && !(0 <= nUnused <= BZ_MAX_UNUSED) ) +BZ_IO_ERROR + if ferror(f) is nonzero +BZ_MEM_ERROR + if insufficient memory is available +BZ_OK + otherwise.</pre> +<p>Possible return values:</p> +<pre class="programlisting">Pointer to an abstract BZFILE + if bzerror is BZ_OK +NULL + otherwise</pre> +<p>Allowable next actions:</p> +<pre class="programlisting">BZ2_bzRead + if bzerror is BZ_OK +BZ2_bzClose + otherwise</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzread"></a>3.4.2. <code class="computeroutput">BZ2_bzRead</code></h3></div></div></div> +<pre class="programlisting">int BZ2_bzRead ( int *bzerror, BZFILE *b, void *buf, int len );</pre> +<p>Reads up to <code class="computeroutput">len</code> +(uncompressed) bytes from the compressed file +<code class="computeroutput">b</code> into the buffer +<code class="computeroutput">buf</code>. If the read was +successful, <code class="computeroutput">bzerror</code> is set to +<code class="computeroutput">BZ_OK</code> and the number of bytes +read is returned. If the logical end-of-stream was detected, +<code class="computeroutput">bzerror</code> will be set to +<code class="computeroutput">BZ_STREAM_END</code>, and the number of +bytes read is returned. All other +<code class="computeroutput">bzerror</code> values denote an +error.</p> +<p><code class="computeroutput">BZ2_bzRead</code> will supply +<code class="computeroutput">len</code> bytes, unless the logical +stream end is detected or an error occurs. Because of this, it +is possible to detect the stream end by observing when the number +of bytes returned is less than the number requested. +Nevertheless, this is regarded as inadvisable; you should instead +check <code class="computeroutput">bzerror</code> after every call +and watch out for +<code class="computeroutput">BZ_STREAM_END</code>.</p> +<p>Internally, <code class="computeroutput">BZ2_bzRead</code> +copies data from the compressed file in chunks of size +<code class="computeroutput">BZ_MAX_UNUSED</code> bytes before +decompressing it. If the file contains more bytes than strictly +needed to reach the logical end-of-stream, +<code class="computeroutput">BZ2_bzRead</code> will almost certainly +read some of the trailing data before signalling +<code class="computeroutput">BZ_SEQUENCE_END</code>. To collect the +read but unused data once +<code class="computeroutput">BZ_SEQUENCE_END</code> has appeared, +call <code class="computeroutput">BZ2_bzReadGetUnused</code> +immediately before +<code class="computeroutput">BZ2_bzReadClose</code>.</p> +<p>Possible assignments to +<code class="computeroutput">bzerror</code>:</p> +<pre class="programlisting">BZ_PARAM_ERROR + if b is NULL or buf is NULL or len < 0 +BZ_SEQUENCE_ERROR + if b was opened with BZ2_bzWriteOpen +BZ_IO_ERROR + if there is an error reading from the compressed file +BZ_UNEXPECTED_EOF + if the compressed file ended before + the logical end-of-stream was detected +BZ_DATA_ERROR + if a data integrity error was detected in the compressed stream +BZ_DATA_ERROR_MAGIC + if the stream does not begin with the requisite header bytes + (ie, is not a bzip2 data file). This is really + a special case of BZ_DATA_ERROR. +BZ_MEM_ERROR + if insufficient memory was available +BZ_STREAM_END + if the logical end of stream was detected. +BZ_OK + otherwise.</pre> +<p>Possible return values:</p> +<pre class="programlisting">number of bytes read + if bzerror is BZ_OK or BZ_STREAM_END +undefined + otherwise</pre> +<p>Allowable next actions:</p> +<pre class="programlisting">collect data from buf, then BZ2_bzRead or BZ2_bzReadClose + if bzerror is BZ_OK +collect data from buf, then BZ2_bzReadClose or BZ2_bzReadGetUnused + if bzerror is BZ_SEQUENCE_END +BZ2_bzReadClose + otherwise</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzreadgetunused"></a>3.4.3. <code class="computeroutput">BZ2_bzReadGetUnused</code></h3></div></div></div> +<pre class="programlisting">void BZ2_bzReadGetUnused( int* bzerror, BZFILE *b, + void** unused, int* nUnused );</pre> +<p>Returns data which was read from the compressed file but +was not needed to get to the logical end-of-stream. +<code class="computeroutput">*unused</code> is set to the address of +the data, and <code class="computeroutput">*nUnused</code> to the +number of bytes. <code class="computeroutput">*nUnused</code> will +be set to a value between <code class="computeroutput">0</code> and +<code class="computeroutput">BZ_MAX_UNUSED</code> inclusive.</p> +<p>This function may only be called once +<code class="computeroutput">BZ2_bzRead</code> has signalled +<code class="computeroutput">BZ_STREAM_END</code> but before +<code class="computeroutput">BZ2_bzReadClose</code>.</p> +<p>Possible assignments to +<code class="computeroutput">bzerror</code>:</p> +<pre class="programlisting">BZ_PARAM_ERROR + if b is NULL + or unused is NULL or nUnused is NULL +BZ_SEQUENCE_ERROR + if BZ_STREAM_END has not been signalled + or if b was opened with BZ2_bzWriteOpen +BZ_OK + otherwise</pre> +<p>Allowable next actions:</p> +<pre class="programlisting">BZ2_bzReadClose</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzreadclose"></a>3.4.4. <code class="computeroutput">BZ2_bzReadClose</code></h3></div></div></div> +<pre class="programlisting">void BZ2_bzReadClose ( int *bzerror, BZFILE *b );</pre> +<p>Releases all memory pertaining to the compressed file +<code class="computeroutput">b</code>. +<code class="computeroutput">BZ2_bzReadClose</code> does not call +<code class="computeroutput">fclose</code> on the underlying file +handle, so you should do that yourself if appropriate. +<code class="computeroutput">BZ2_bzReadClose</code> should be called +to clean up after all error situations.</p> +<p>Possible assignments to +<code class="computeroutput">bzerror</code>:</p> +<pre class="programlisting">BZ_SEQUENCE_ERROR + if b was opened with BZ2_bzOpenWrite +BZ_OK + otherwise</pre> +<p>Allowable next actions:</p> +<pre class="programlisting">none</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzwriteopen"></a>3.4.5. <code class="computeroutput">BZ2_bzWriteOpen</code></h3></div></div></div> +<pre class="programlisting">BZFILE *BZ2_bzWriteOpen( int *bzerror, FILE *f, + int blockSize100k, int verbosity, + int workFactor );</pre> +<p>Prepare to write compressed data to file handle +<code class="computeroutput">f</code>. +<code class="computeroutput">f</code> should refer to a file which +has been opened for writing, and for which the error indicator +(<code class="computeroutput">ferror(f)</code>)is not set.</p> +<p>For the meaning of parameters +<code class="computeroutput">blockSize100k</code>, +<code class="computeroutput">verbosity</code> and +<code class="computeroutput">workFactor</code>, see +<code class="computeroutput">BZ2_bzCompressInit</code>.</p> +<p>All required memory is allocated at this stage, so if the +call completes successfully, +<code class="computeroutput">BZ_MEM_ERROR</code> cannot be signalled +by a subsequent call to +<code class="computeroutput">BZ2_bzWrite</code>.</p> +<p>Possible assignments to +<code class="computeroutput">bzerror</code>:</p> +<pre class="programlisting">BZ_CONFIG_ERROR + if the library has been mis-compiled +BZ_PARAM_ERROR + if f is NULL + or blockSize100k < 1 or blockSize100k > 9 +BZ_IO_ERROR + if ferror(f) is nonzero +BZ_MEM_ERROR + if insufficient memory is available +BZ_OK + otherwise</pre> +<p>Possible return values:</p> +<pre class="programlisting">Pointer to an abstract BZFILE + if bzerror is BZ_OK +NULL + otherwise</pre> +<p>Allowable next actions:</p> +<pre class="programlisting">BZ2_bzWrite + if bzerror is BZ_OK + (you could go directly to BZ2_bzWriteClose, but this would be pretty pointless) +BZ2_bzWriteClose + otherwise</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzwrite"></a>3.4.6. <code class="computeroutput">BZ2_bzWrite</code></h3></div></div></div> +<pre class="programlisting">void BZ2_bzWrite ( int *bzerror, BZFILE *b, void *buf, int len );</pre> +<p>Absorbs <code class="computeroutput">len</code> bytes from the +buffer <code class="computeroutput">buf</code>, eventually to be +compressed and written to the file.</p> +<p>Possible assignments to +<code class="computeroutput">bzerror</code>:</p> +<pre class="programlisting">BZ_PARAM_ERROR + if b is NULL or buf is NULL or len < 0 +BZ_SEQUENCE_ERROR + if b was opened with BZ2_bzReadOpen +BZ_IO_ERROR + if there is an error writing the compressed file. +BZ_OK + otherwise</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzwriteclose"></a>3.4.7. <code class="computeroutput">BZ2_bzWriteClose</code></h3></div></div></div> +<pre class="programlisting">void BZ2_bzWriteClose( int *bzerror, BZFILE* f, + int abandon, + unsigned int* nbytes_in, + unsigned int* nbytes_out ); + +void BZ2_bzWriteClose64( int *bzerror, BZFILE* f, + int abandon, + unsigned int* nbytes_in_lo32, + unsigned int* nbytes_in_hi32, + unsigned int* nbytes_out_lo32, + unsigned int* nbytes_out_hi32 );</pre> +<p>Compresses and flushes to the compressed file all data so +far supplied by <code class="computeroutput">BZ2_bzWrite</code>. +The logical end-of-stream markers are also written, so subsequent +calls to <code class="computeroutput">BZ2_bzWrite</code> are +illegal. All memory associated with the compressed file +<code class="computeroutput">b</code> is released. +<code class="computeroutput">fflush</code> is called on the +compressed file, but it is not +<code class="computeroutput">fclose</code>'d.</p> +<p>If <code class="computeroutput">BZ2_bzWriteClose</code> is +called to clean up after an error, the only action is to release +the memory. The library records the error codes issued by +previous calls, so this situation will be detected automatically. +There is no attempt to complete the compression operation, nor to +<code class="computeroutput">fflush</code> the compressed file. You +can force this behaviour to happen even in the case of no error, +by passing a nonzero value to +<code class="computeroutput">abandon</code>.</p> +<p>If <code class="computeroutput">nbytes_in</code> is non-null, +<code class="computeroutput">*nbytes_in</code> will be set to be the +total volume of uncompressed data handled. Similarly, +<code class="computeroutput">nbytes_out</code> will be set to the +total volume of compressed data written. For compatibility with +older versions of the library, +<code class="computeroutput">BZ2_bzWriteClose</code> only yields the +lower 32 bits of these counts. Use +<code class="computeroutput">BZ2_bzWriteClose64</code> if you want +the full 64 bit counts. These two functions are otherwise +absolutely identical.</p> +<p>Possible assignments to +<code class="computeroutput">bzerror</code>:</p> +<pre class="programlisting">BZ_SEQUENCE_ERROR + if b was opened with BZ2_bzReadOpen +BZ_IO_ERROR + if there is an error writing the compressed file +BZ_OK + otherwise</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="embed"></a>3.4.8. Handling embedded compressed data streams</h3></div></div></div> +<p>The high-level library facilitates use of +<code class="computeroutput">bzip2</code> data streams which form +some part of a surrounding, larger data stream.</p> +<div class="itemizedlist"><ul type="bullet"> +<li style="list-style-type: disc"><p>For writing, the library takes an open file handle, + writes compressed data to it, + <code class="computeroutput">fflush</code>es it but does not + <code class="computeroutput">fclose</code> it. The calling + application can write its own data before and after the + compressed data stream, using that same file handle.</p></li> +<li style="list-style-type: disc"><p>Reading is more complex, and the facilities are not as + general as they could be since generality is hard to reconcile + with efficiency. <code class="computeroutput">BZ2_bzRead</code> + reads from the compressed file in blocks of size + <code class="computeroutput">BZ_MAX_UNUSED</code> bytes, and in + doing so probably will overshoot the logical end of compressed + stream. To recover this data once decompression has ended, + call <code class="computeroutput">BZ2_bzReadGetUnused</code> after + the last call of <code class="computeroutput">BZ2_bzRead</code> + (the one returning + <code class="computeroutput">BZ_STREAM_END</code>) but before + calling + <code class="computeroutput">BZ2_bzReadClose</code>.</p></li> +</ul></div> +<p>This mechanism makes it easy to decompress multiple +<code class="computeroutput">bzip2</code> streams placed end-to-end. +As the end of one stream, when +<code class="computeroutput">BZ2_bzRead</code> returns +<code class="computeroutput">BZ_STREAM_END</code>, call +<code class="computeroutput">BZ2_bzReadGetUnused</code> to collect +the unused data (copy it into your own buffer somewhere). That +data forms the start of the next compressed stream. To start +uncompressing that next stream, call +<code class="computeroutput">BZ2_bzReadOpen</code> again, feeding in +the unused data via the <code class="computeroutput">unused</code> / +<code class="computeroutput">nUnused</code> parameters. Keep doing +this until <code class="computeroutput">BZ_STREAM_END</code> return +coincides with the physical end of file +(<code class="computeroutput">feof(f)</code>). In this situation +<code class="computeroutput">BZ2_bzReadGetUnused</code> will of +course return no data.</p> +<p>This should give some feel for how the high-level interface +can be used. If you require extra flexibility, you'll have to +bite the bullet and get to grips with the low-level +interface.</p> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="std-rdwr"></a>3.4.9. Standard file-reading/writing code</h3></div></div></div> +<p>Here's how you'd write data to a compressed file:</p> +<pre class="programlisting">FILE* f; +BZFILE* b; +int nBuf; +char buf[ /* whatever size you like */ ]; +int bzerror; +int nWritten; + +f = fopen ( "myfile.bz2", "w" ); +if ( !f ) { + /* handle error */ +} +b = BZ2_bzWriteOpen( &bzerror, f, 9 ); +if (bzerror != BZ_OK) { + BZ2_bzWriteClose ( b ); + /* handle error */ +} + +while ( /* condition */ ) { + /* get data to write into buf, and set nBuf appropriately */ + nWritten = BZ2_bzWrite ( &bzerror, b, buf, nBuf ); + if (bzerror == BZ_IO_ERROR) { + BZ2_bzWriteClose ( &bzerror, b ); + /* handle error */ + } +} + +BZ2_bzWriteClose( &bzerror, b ); +if (bzerror == BZ_IO_ERROR) { + /* handle error */ +}</pre> +<p>And to read from a compressed file:</p> +<pre class="programlisting">FILE* f; +BZFILE* b; +int nBuf; +char buf[ /* whatever size you like */ ]; +int bzerror; +int nWritten; + +f = fopen ( "myfile.bz2", "r" ); +if ( !f ) { + /* handle error */ +} +b = BZ2_bzReadOpen ( &bzerror, f, 0, NULL, 0 ); +if ( bzerror != BZ_OK ) { + BZ2_bzReadClose ( &bzerror, b ); + /* handle error */ +} + +bzerror = BZ_OK; +while ( bzerror == BZ_OK && /* arbitrary other conditions */) { + nBuf = BZ2_bzRead ( &bzerror, b, buf, /* size of buf */ ); + if ( bzerror == BZ_OK ) { + /* do something with buf[0 .. nBuf-1] */ + } +} +if ( bzerror != BZ_STREAM_END ) { + BZ2_bzReadClose ( &bzerror, b ); + /* handle error */ +} else { + BZ2_bzReadClose ( &bzerror, b ); +}</pre> +</div> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="util-fns"></a>3.5. Utility functions</h2></div></div></div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzbufftobuffcompress"></a>3.5.1. <code class="computeroutput">BZ2_bzBuffToBuffCompress</code></h3></div></div></div> +<pre class="programlisting">int BZ2_bzBuffToBuffCompress( char* dest, + unsigned int* destLen, + char* source, + unsigned int sourceLen, + int blockSize100k, + int verbosity, + int workFactor );</pre> +<p>Attempts to compress the data in <code class="computeroutput">source[0 +.. sourceLen-1]</code> into the destination buffer, +<code class="computeroutput">dest[0 .. *destLen-1]</code>. If the +destination buffer is big enough, +<code class="computeroutput">*destLen</code> is set to the size of +the compressed data, and <code class="computeroutput">BZ_OK</code> +is returned. If the compressed data won't fit, +<code class="computeroutput">*destLen</code> is unchanged, and +<code class="computeroutput">BZ_OUTBUFF_FULL</code> is +returned.</p> +<p>Compression in this manner is a one-shot event, done with a +single call to this function. The resulting compressed data is a +complete <code class="computeroutput">bzip2</code> format data +stream. There is no mechanism for making additional calls to +provide extra input data. If you want that kind of mechanism, +use the low-level interface.</p> +<p>For the meaning of parameters +<code class="computeroutput">blockSize100k</code>, +<code class="computeroutput">verbosity</code> and +<code class="computeroutput">workFactor</code>, see +<code class="computeroutput">BZ2_bzCompressInit</code>.</p> +<p>To guarantee that the compressed data will fit in its +buffer, allocate an output buffer of size 1% larger than the +uncompressed data, plus six hundred extra bytes.</p> +<p><code class="computeroutput">BZ2_bzBuffToBuffDecompress</code> +will not write data at or beyond +<code class="computeroutput">dest[*destLen]</code>, even in case of +buffer overflow.</p> +<p>Possible return values:</p> +<pre class="programlisting">BZ_CONFIG_ERROR + if the library has been mis-compiled +BZ_PARAM_ERROR + if dest is NULL or destLen is NULL + or blockSize100k < 1 or blockSize100k > 9 + or verbosity < 0 or verbosity > 4 + or workFactor < 0 or workFactor > 250 +BZ_MEM_ERROR + if insufficient memory is available +BZ_OUTBUFF_FULL + if the size of the compressed data exceeds *destLen +BZ_OK + otherwise</pre> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="bzbufftobuffdecompress"></a>3.5.2. <code class="computeroutput">BZ2_bzBuffToBuffDecompress</code></h3></div></div></div> +<pre class="programlisting">int BZ2_bzBuffToBuffDecompress( char* dest, + unsigned int* destLen, + char* source, + unsigned int sourceLen, + int small, + int verbosity );</pre> +<p>Attempts to decompress the data in <code class="computeroutput">source[0 +.. sourceLen-1]</code> into the destination buffer, +<code class="computeroutput">dest[0 .. *destLen-1]</code>. If the +destination buffer is big enough, +<code class="computeroutput">*destLen</code> is set to the size of +the uncompressed data, and <code class="computeroutput">BZ_OK</code> +is returned. If the compressed data won't fit, +<code class="computeroutput">*destLen</code> is unchanged, and +<code class="computeroutput">BZ_OUTBUFF_FULL</code> is +returned.</p> +<p><code class="computeroutput">source</code> is assumed to hold +a complete <code class="computeroutput">bzip2</code> format data +stream. +<code class="computeroutput">BZ2_bzBuffToBuffDecompress</code> tries +to decompress the entirety of the stream into the output +buffer.</p> +<p>For the meaning of parameters +<code class="computeroutput">small</code> and +<code class="computeroutput">verbosity</code>, see +<code class="computeroutput">BZ2_bzDecompressInit</code>.</p> +<p>Because the compression ratio of the compressed data cannot +be known in advance, there is no easy way to guarantee that the +output buffer will be big enough. You may of course make +arrangements in your code to record the size of the uncompressed +data, but such a mechanism is beyond the scope of this +library.</p> +<p><code class="computeroutput">BZ2_bzBuffToBuffDecompress</code> +will not write data at or beyond +<code class="computeroutput">dest[*destLen]</code>, even in case of +buffer overflow.</p> +<p>Possible return values:</p> +<pre class="programlisting">BZ_CONFIG_ERROR + if the library has been mis-compiled +BZ_PARAM_ERROR + if dest is NULL or destLen is NULL + or small != 0 && small != 1 + or verbosity < 0 or verbosity > 4 +BZ_MEM_ERROR + if insufficient memory is available +BZ_OUTBUFF_FULL + if the size of the compressed data exceeds *destLen +BZ_DATA_ERROR + if a data integrity error was detected in the compressed data +BZ_DATA_ERROR_MAGIC + if the compressed data doesn't begin with the right magic bytes +BZ_UNEXPECTED_EOF + if the compressed data ends unexpectedly +BZ_OK + otherwise</pre> +</div> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="zlib-compat"></a>3.6. <code class="computeroutput">zlib</code> compatibility functions</h2></div></div></div> +<p>Yoshioka Tsuneo has contributed some functions to give +better <code class="computeroutput">zlib</code> compatibility. +These functions are <code class="computeroutput">BZ2_bzopen</code>, +<code class="computeroutput">BZ2_bzread</code>, +<code class="computeroutput">BZ2_bzwrite</code>, +<code class="computeroutput">BZ2_bzflush</code>, +<code class="computeroutput">BZ2_bzclose</code>, +<code class="computeroutput">BZ2_bzerror</code> and +<code class="computeroutput">BZ2_bzlibVersion</code>. These +functions are not (yet) officially part of the library. If they +break, you get to keep all the pieces. Nevertheless, I think +they work ok.</p> +<pre class="programlisting">typedef void BZFILE; + +const char * BZ2_bzlibVersion ( void );</pre> +<p>Returns a string indicating the library version.</p> +<pre class="programlisting">BZFILE * BZ2_bzopen ( const char *path, const char *mode ); +BZFILE * BZ2_bzdopen ( int fd, const char *mode );</pre> +<p>Opens a <code class="computeroutput">.bz2</code> file for +reading or writing, using either its name or a pre-existing file +descriptor. Analogous to <code class="computeroutput">fopen</code> +and <code class="computeroutput">fdopen</code>.</p> +<pre class="programlisting">int BZ2_bzread ( BZFILE* b, void* buf, int len ); +int BZ2_bzwrite ( BZFILE* b, void* buf, int len );</pre> +<p>Reads/writes data from/to a previously opened +<code class="computeroutput">BZFILE</code>. Analogous to +<code class="computeroutput">fread</code> and +<code class="computeroutput">fwrite</code>.</p> +<pre class="programlisting">int BZ2_bzflush ( BZFILE* b ); +void BZ2_bzclose ( BZFILE* b );</pre> +<p>Flushes/closes a <code class="computeroutput">BZFILE</code>. +<code class="computeroutput">BZ2_bzflush</code> doesn't actually do +anything. Analogous to <code class="computeroutput">fflush</code> +and <code class="computeroutput">fclose</code>.</p> +<pre class="programlisting">const char * BZ2_bzerror ( BZFILE *b, int *errnum )</pre> +<p>Returns a string describing the more recent error status of +<code class="computeroutput">b</code>, and also sets +<code class="computeroutput">*errnum</code> to its numerical +value.</p> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="stdio-free"></a>3.7. Using the library in a <code class="computeroutput">stdio</code>-free environment</h2></div></div></div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="stdio-bye"></a>3.7.1. Getting rid of <code class="computeroutput">stdio</code></h3></div></div></div> +<p>In a deeply embedded application, you might want to use +just the memory-to-memory functions. You can do this +conveniently by compiling the library with preprocessor symbol +<code class="computeroutput">BZ_NO_STDIO</code> defined. Doing this +gives you a library containing only the following eight +functions:</p> +<p><code class="computeroutput">BZ2_bzCompressInit</code>, +<code class="computeroutput">BZ2_bzCompress</code>, +<code class="computeroutput">BZ2_bzCompressEnd</code> +<code class="computeroutput">BZ2_bzDecompressInit</code>, +<code class="computeroutput">BZ2_bzDecompress</code>, +<code class="computeroutput">BZ2_bzDecompressEnd</code> +<code class="computeroutput">BZ2_bzBuffToBuffCompress</code>, +<code class="computeroutput">BZ2_bzBuffToBuffDecompress</code></p> +<p>When compiled like this, all functions will ignore +<code class="computeroutput">verbosity</code> settings.</p> +</div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="critical-error"></a>3.7.2. Critical error handling</h3></div></div></div> +<p><code class="computeroutput">libbzip2</code> contains a number +of internal assertion checks which should, needless to say, never +be activated. Nevertheless, if an assertion should fail, +behaviour depends on whether or not the library was compiled with +<code class="computeroutput">BZ_NO_STDIO</code> set.</p> +<p>For a normal compile, an assertion failure yields the +message:</p> +<div class="blockquote"><blockquote class="blockquote"> +<p>bzip2/libbzip2: internal error number N.</p> +<p>This is a bug in bzip2/libbzip2, 1.0.5 of 10 December 2007. +Please report it to me at: jseward@bzip.org. If this happened +when you were using some program which uses libbzip2 as a +component, you should also report this bug to the author(s) +of that program. Please make an effort to report this bug; +timely and accurate bug reports eventually lead to higher +quality software. Thanks. Julian Seward, 10 December 2007. +</p> +</blockquote></div> +<p>where <code class="computeroutput">N</code> is some error code +number. If <code class="computeroutput">N == 1007</code>, it also +prints some extra text advising the reader that unreliable memory +is often associated with internal error 1007. (This is a +frequently-observed-phenomenon with versions 1.0.0/1.0.1).</p> +<p><code class="computeroutput">exit(3)</code> is then +called.</p> +<p>For a <code class="computeroutput">stdio</code>-free library, +assertion failures result in a call to a function declared +as:</p> +<pre class="programlisting">extern void bz_internal_error ( int errcode );</pre> +<p>The relevant code is passed as a parameter. You should +supply such a function.</p> +<p>In either case, once an assertion failure has occurred, any +<code class="computeroutput">bz_stream</code> records involved can +be regarded as invalid. You should not attempt to resume normal +operation with them.</p> +<p>You may, of course, change critical error handling to suit +your needs. As I said above, critical errors indicate bugs in +the library and should not occur. All "normal" error situations +are indicated via error return codes from functions, and can be +recovered from.</p> +</div> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="win-dll"></a>3.8. Making a Windows DLL</h2></div></div></div> +<p>Everything related to Windows has been contributed by +Yoshioka Tsuneo +(<code class="computeroutput">tsuneo@rr.iij4u.or.jp</code>), so +you should send your queries to him (but perhaps Cc: me, +<code class="computeroutput">jseward@bzip.org</code>).</p> +<p>My vague understanding of what to do is: using Visual C++ +5.0, open the project file +<code class="computeroutput">libbz2.dsp</code>, and build. That's +all.</p> +<p>If you can't open the project file for some reason, make a +new one, naming these files: +<code class="computeroutput">blocksort.c</code>, +<code class="computeroutput">bzlib.c</code>, +<code class="computeroutput">compress.c</code>, +<code class="computeroutput">crctable.c</code>, +<code class="computeroutput">decompress.c</code>, +<code class="computeroutput">huffman.c</code>, +<code class="computeroutput">randtable.c</code> and +<code class="computeroutput">libbz2.def</code>. You will also need +to name the header files <code class="computeroutput">bzlib.h</code> +and <code class="computeroutput">bzlib_private.h</code>.</p> +<p>If you don't use VC++, you may need to define the +proprocessor symbol +<code class="computeroutput">_WIN32</code>.</p> +<p>Finally, <code class="computeroutput">dlltest.c</code> is a +sample program using the DLL. It has a project file, +<code class="computeroutput">dlltest.dsp</code>.</p> +<p>If you just want a makefile for Visual C, have a look at +<code class="computeroutput">makefile.msc</code>.</p> +<p>Be aware that if you compile +<code class="computeroutput">bzip2</code> itself on Win32, you must +set <code class="computeroutput">BZ_UNIX</code> to 0 and +<code class="computeroutput">BZ_LCCWIN32</code> to 1, in the file +<code class="computeroutput">bzip2.c</code>, before compiling. +Otherwise the resulting binary won't work correctly.</p> +<p>I haven't tried any of this stuff myself, but it all looks +plausible.</p> +</div> +</div> +<div class="chapter" lang="en"> +<div class="titlepage"><div><div><h2 class="title"> +<a name="misc"></a>4. Miscellanea</h2></div></div></div> +<div class="toc"> +<p><b>Table of Contents</b></p> +<dl> +<dt><span class="sect1"><a href="#limits">4.1. Limitations of the compressed file format</a></span></dt> +<dt><span class="sect1"><a href="#port-issues">4.2. Portability issues</a></span></dt> +<dt><span class="sect1"><a href="#bugs">4.3. Reporting bugs</a></span></dt> +<dt><span class="sect1"><a href="#package">4.4. Did you get the right package?</a></span></dt> +<dt><span class="sect1"><a href="#reading">4.5. Further Reading</a></span></dt> +</dl> +</div> +<p>These are just some random thoughts of mine. Your mileage +may vary.</p> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="limits"></a>4.1. Limitations of the compressed file format</h2></div></div></div> +<p><code class="computeroutput">bzip2-1.0.X</code>, +<code class="computeroutput">0.9.5</code> and +<code class="computeroutput">0.9.0</code> use exactly the same file +format as the original version, +<code class="computeroutput">bzip2-0.1</code>. This decision was +made in the interests of stability. Creating yet another +incompatible compressed file format would create further +confusion and disruption for users.</p> +<p>Nevertheless, this is not a painless decision. Development +work since the release of +<code class="computeroutput">bzip2-0.1</code> in August 1997 has +shown complexities in the file format which slow down +decompression and, in retrospect, are unnecessary. These +are:</p> +<div class="itemizedlist"><ul type="bullet"> +<li style="list-style-type: disc"><p>The run-length encoder, which is the first of the + compression transformations, is entirely irrelevant. The + original purpose was to protect the sorting algorithm from the + very worst case input: a string of repeated symbols. But + algorithm steps Q6a and Q6b in the original Burrows-Wheeler + technical report (SRC-124) show how repeats can be handled + without difficulty in block sorting.</p></li> +<li style="list-style-type: disc"> +<p>The randomisation mechanism doesn't really need to be + there. Udi Manber and Gene Myers published a suffix array + construction algorithm a few years back, which can be employed + to sort any block, no matter how repetitive, in O(N log N) + time. Subsequent work by Kunihiko Sadakane has produced a + derivative O(N (log N)^2) algorithm which usually outperforms + the Manber-Myers algorithm.</p> +<p>I could have changed to Sadakane's algorithm, but I find + it to be slower than <code class="computeroutput">bzip2</code>'s + existing algorithm for most inputs, and the randomisation + mechanism protects adequately against bad cases. I didn't + think it was a good tradeoff to make. Partly this is due to + the fact that I was not flooded with email complaints about + <code class="computeroutput">bzip2-0.1</code>'s performance on + repetitive data, so perhaps it isn't a problem for real + inputs.</p> +<p>Probably the best long-term solution, and the one I have + incorporated into 0.9.5 and above, is to use the existing + sorting algorithm initially, and fall back to a O(N (log N)^2) + algorithm if the standard algorithm gets into + difficulties.</p> +</li> +<li style="list-style-type: disc"><p>The compressed file format was never designed to be + handled by a library, and I have had to jump though some hoops + to produce an efficient implementation of decompression. It's + a bit hairy. Try passing + <code class="computeroutput">decompress.c</code> through the C + preprocessor and you'll see what I mean. Much of this + complexity could have been avoided if the compressed size of + each block of data was recorded in the data stream.</p></li> +<li style="list-style-type: disc"><p>An Adler-32 checksum, rather than a CRC32 checksum, + would be faster to compute.</p></li> +</ul></div> +<p>It would be fair to say that the +<code class="computeroutput">bzip2</code> format was frozen before I +properly and fully understood the performance consequences of +doing so.</p> +<p>Improvements which I was able to incorporate into 0.9.0, +despite using the same file format, are:</p> +<div class="itemizedlist"><ul type="bullet"> +<li style="list-style-type: disc"><p>Single array implementation of the inverse BWT. This + significantly speeds up decompression, presumably because it + reduces the number of cache misses.</p></li> +<li style="list-style-type: disc"><p>Faster inverse MTF transform for large MTF values. + The new implementation is based on the notion of sliding blocks + of values.</p></li> +<li style="list-style-type: disc"><p><code class="computeroutput">bzip2-0.9.0</code> now reads + and writes files with <code class="computeroutput">fread</code> + and <code class="computeroutput">fwrite</code>; version 0.1 used + <code class="computeroutput">putc</code> and + <code class="computeroutput">getc</code>. Duh! Well, you live + and learn.</p></li> +</ul></div> +<p>Further ahead, it would be nice to be able to do random +access into files. This will require some careful design of +compressed file formats.</p> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="port-issues"></a>4.2. Portability issues</h2></div></div></div> +<p>After some consideration, I have decided not to use GNU +<code class="computeroutput">autoconf</code> to configure 0.9.5 or +1.0.</p> +<p><code class="computeroutput">autoconf</code>, admirable and +wonderful though it is, mainly assists with portability problems +between Unix-like platforms. But +<code class="computeroutput">bzip2</code> doesn't have much in the +way of portability problems on Unix; most of the difficulties +appear when porting to the Mac, or to Microsoft's operating +systems. <code class="computeroutput">autoconf</code> doesn't help +in those cases, and brings in a whole load of new +complexity.</p> +<p>Most people should be able to compile the library and +program under Unix straight out-of-the-box, so to speak, +especially if you have a version of GNU C available.</p> +<p>There are a couple of +<code class="computeroutput">__inline__</code> directives in the +code. GNU C (<code class="computeroutput">gcc</code>) should be +able to handle them. If you're not using GNU C, your C compiler +shouldn't see them at all. If your compiler does, for some +reason, see them and doesn't like them, just +<code class="computeroutput">#define</code> +<code class="computeroutput">__inline__</code> to be +<code class="computeroutput">/* */</code>. One easy way to do this +is to compile with the flag +<code class="computeroutput">-D__inline__=</code>, which should be +understood by most Unix compilers.</p> +<p>If you still have difficulties, try compiling with the +macro <code class="computeroutput">BZ_STRICT_ANSI</code> defined. +This should enable you to build the library in a strictly ANSI +compliant environment. Building the program itself like this is +dangerous and not supported, since you remove +<code class="computeroutput">bzip2</code>'s checks against +compressing directories, symbolic links, devices, and other +not-really-a-file entities. This could cause filesystem +corruption!</p> +<p>One other thing: if you create a +<code class="computeroutput">bzip2</code> binary for public distribution, +please consider linking it statically (<code class="computeroutput">gcc +-static</code>). This avoids all sorts of library-version +issues that others may encounter later on.</p> +<p>If you build <code class="computeroutput">bzip2</code> on +Win32, you must set <code class="computeroutput">BZ_UNIX</code> to 0 +and <code class="computeroutput">BZ_LCCWIN32</code> to 1, in the +file <code class="computeroutput">bzip2.c</code>, before compiling. +Otherwise the resulting binary won't work correctly.</p> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="bugs"></a>4.3. Reporting bugs</h2></div></div></div> +<p>I tried pretty hard to make sure +<code class="computeroutput">bzip2</code> is bug free, both by +design and by testing. Hopefully you'll never need to read this +section for real.</p> +<p>Nevertheless, if <code class="computeroutput">bzip2</code> dies +with a segmentation fault, a bus error or an internal assertion +failure, it will ask you to email me a bug report. Experience from +years of feedback of bzip2 users indicates that almost all these +problems can be traced to either compiler bugs or hardware +problems.</p> +<div class="itemizedlist"><ul type="bullet"> +<li style="list-style-type: disc"> +<p>Recompile the program with no optimisation, and + see if it works. And/or try a different compiler. I heard all + sorts of stories about various flavours of GNU C (and other + compilers) generating bad code for + <code class="computeroutput">bzip2</code>, and I've run across two + such examples myself.</p> +<p>2.7.X versions of GNU C are known to generate bad code + from time to time, at high optimisation levels. If you get + problems, try using the flags + <code class="computeroutput">-O2</code> + <code class="computeroutput">-fomit-frame-pointer</code> + <code class="computeroutput">-fno-strength-reduce</code>. You + should specifically <span class="emphasis"><em>not</em></span> use + <code class="computeroutput">-funroll-loops</code>.</p> +<p>You may notice that the Makefile runs six tests as part + of the build process. If the program passes all of these, it's + a pretty good (but not 100%) indication that the compiler has + done its job correctly.</p> +</li> +<li style="list-style-type: disc"> +<p>If <code class="computeroutput">bzip2</code> + crashes randomly, and the crashes are not repeatable, you may + have a flaky memory subsystem. + <code class="computeroutput">bzip2</code> really hammers your + memory hierarchy, and if it's a bit marginal, you may get these + problems. Ditto if your disk or I/O subsystem is slowly + failing. Yup, this really does happen.</p> +<p>Try using a different machine of the same type, and see + if you can repeat the problem.</p> +</li> +<li style="list-style-type: disc"><p>This isn't really a bug, but ... If + <code class="computeroutput">bzip2</code> tells you your file is + corrupted on decompression, and you obtained the file via FTP, + there is a possibility that you forgot to tell FTP to do a + binary mode transfer. That absolutely will cause the file to + be non-decompressible. You'll have to transfer it + again.</p></li> +</ul></div> +<p>If you've incorporated +<code class="computeroutput">libbzip2</code> into your own program +and are getting problems, please, please, please, check that the +parameters you are passing in calls to the library, are correct, +and in accordance with what the documentation says is allowable. +I have tried to make the library robust against such problems, +but I'm sure I haven't succeeded.</p> +<p>Finally, if the above comments don't help, you'll have to +send me a bug report. Now, it's just amazing how many people +will send me a bug report saying something like:</p> +<pre class="programlisting">bzip2 crashed with segmentation fault on my machine</pre> +<p>and absolutely nothing else. Needless to say, a such a +report is <span class="emphasis"><em>totally, utterly, completely and +comprehensively 100% useless; a waste of your time, my time, and +net bandwidth</em></span>. With no details at all, there's no way +I can possibly begin to figure out what the problem is.</p> +<p>The rules of the game are: facts, facts, facts. Don't omit +them because "oh, they won't be relevant". At the bare +minimum:</p> +<pre class="programlisting">Machine type. Operating system version. +Exact version of bzip2 (do bzip2 -V). +Exact version of the compiler used. +Flags passed to the compiler.</pre> +<p>However, the most important single thing that will help me +is the file that you were trying to compress or decompress at the +time the problem happened. Without that, my ability to do +anything more than speculate about the cause, is limited.</p> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="package"></a>4.4. Did you get the right package?</h2></div></div></div> +<p><code class="computeroutput">bzip2</code> is a resource hog. +It soaks up large amounts of CPU cycles and memory. Also, it +gives very large latencies. In the worst case, you can feed many +megabytes of uncompressed data into the library before getting +any compressed output, so this probably rules out applications +requiring interactive behaviour.</p> +<p>These aren't faults of my implementation, I hope, but more +an intrinsic property of the Burrows-Wheeler transform +(unfortunately). Maybe this isn't what you want.</p> +<p>If you want a compressor and/or library which is faster, +uses less memory but gets pretty good compression, and has +minimal latency, consider Jean-loup Gailly's and Mark Adler's +work, <code class="computeroutput">zlib-1.2.1</code> and +<code class="computeroutput">gzip-1.2.4</code>. Look for them at +<a href="http://www.zlib.org" target="_top">http://www.zlib.org</a> and +<a href="http://www.gzip.org" target="_top">http://www.gzip.org</a> +respectively.</p> +<p>For something faster and lighter still, you might try Markus F +X J Oberhumer's <code class="computeroutput">LZO</code> real-time +compression/decompression library, at +<a href="http://www.oberhumer.com/opensource" target="_top">http://www.oberhumer.com/opensource</a>.</p> +</div> +<div class="sect1" lang="en"> +<div class="titlepage"><div><div><h2 class="title" style="clear: both"> +<a name="reading"></a>4.5. Further Reading</h2></div></div></div> +<p><code class="computeroutput">bzip2</code> is not research +work, in the sense that it doesn't present any new ideas. +Rather, it's an engineering exercise based on existing +ideas.</p> +<p>Four documents describe essentially all the ideas behind +<code class="computeroutput">bzip2</code>:</p> +<div class="literallayout"><p>Michael Burrows and D. J. Wheeler:<br> + "A block-sorting lossless data compression algorithm"<br> + 10th May 1994. <br> + Digital SRC Research Report 124.<br> + ftp://ftp.digital.com/pub/DEC/SRC/research-reports/SRC-124.ps.gz<br> + If you have trouble finding it, try searching at the<br> + New Zealand Digital Library, http://www.nzdl.org.<br> +<br> +Daniel S. Hirschberg and Debra A. LeLewer<br> + "Efficient Decoding of Prefix Codes"<br> + Communications of the ACM, April 1990, Vol 33, Number 4.<br> + You might be able to get an electronic copy of this<br> + from the ACM Digital Library.<br> +<br> +David J. Wheeler<br> + Program bred3.c and accompanying document bred3.ps.<br> + This contains the idea behind the multi-table Huffman coding scheme.<br> + ftp://ftp.cl.cam.ac.uk/users/djw3/<br> +<br> +Jon L. Bentley and Robert Sedgewick<br> + "Fast Algorithms for Sorting and Searching Strings"<br> + Available from Sedgewick's web page,<br> + www.cs.princeton.edu/~rs<br> +</p></div> +<p>The following paper gives valuable additional insights into +the algorithm, but is not immediately the basis of any code used +in bzip2.</p> +<div class="literallayout"><p>Peter Fenwick:<br> + Block Sorting Text Compression<br> + Proceedings of the 19th Australasian Computer Science Conference,<br> + Melbourne, Australia. Jan 31 - Feb 2, 1996.<br> + ftp://ftp.cs.auckland.ac.nz/pub/peter-f/ACSC96paper.ps</p></div> +<p>Kunihiko Sadakane's sorting algorithm, mentioned above, is +available from:</p> +<div class="literallayout"><p>http://naomi.is.s.u-tokyo.ac.jp/~sada/papers/Sada98b.ps.gz<br> +</p></div> +<p>The Manber-Myers suffix array construction algorithm is +described in a paper available from:</p> +<div class="literallayout"><p>http://www.cs.arizona.edu/people/gene/PAPERS/suffix.ps<br> +</p></div> +<p>Finally, the following papers document some +investigations I made into the performance of sorting +and decompression algorithms:</p> +<div class="literallayout"><p>Julian Seward<br> + On the Performance of BWT Sorting Algorithms<br> + Proceedings of the IEEE Data Compression Conference 2000<br> + Snowbird, Utah. 28-30 March 2000.<br> +<br> +Julian Seward<br> + Space-time Tradeoffs in the Inverse B-W Transform<br> + Proceedings of the IEEE Data Compression Conference 2001<br> + Snowbird, Utah. 27-29 March 2001.<br> +</p></div> +</div> +</div> +</div></body> +</html> diff --git a/manual.pdf b/manual.pdf Binary files differnew file mode 100644 index 0000000..fe71a4c --- /dev/null +++ b/manual.pdf diff --git a/manual.ps b/manual.ps new file mode 100644 index 0000000..b8b610c --- /dev/null +++ b/manual.ps @@ -0,0 +1,82900 @@ +%!PS-Adobe-3.0 +%%Creator: xpdf/pdftops 3.01 +%%LanguageLevel: 2 +%%DocumentSuppliedResources: (atend) +%%DocumentMedia: plain 612 792 0 () () +%%BoundingBox: 0 0 612 792 +%%Pages: 38 +%%EndComments +%%BeginDefaults +%%PageMedia: plain +%%EndDefaults +%%BeginProlog +%%BeginResource: procset xpdf 3.01 0 +/xpdf 75 dict def xpdf begin +% PDF special state +/pdfDictSize 15 def +/pdfSetup { + 3 1 roll 2 array astore + /setpagedevice where { + pop 3 dict begin + /PageSize exch def + /ImagingBBox null def + /Policies 1 dict dup begin /PageSize 3 def end def + { /Duplex true def } if + currentdict end setpagedevice + } { + pop pop + } ifelse +} def +/pdfStartPage { + pdfDictSize dict begin + /pdfFillCS [] def + /pdfFillXform {} def + /pdfStrokeCS [] def + /pdfStrokeXform {} def + /pdfFill [0] def + /pdfStroke [0] def + /pdfFillOP false def + /pdfStrokeOP false def + /pdfLastFill false def + /pdfLastStroke false def + /pdfTextMat [1 0 0 1 0 0] def + /pdfFontSize 0 def + /pdfCharSpacing 0 def + /pdfTextRender 0 def + /pdfTextRise 0 def + /pdfWordSpacing 0 def + /pdfHorizScaling 1 def + /pdfTextClipPath [] def +} def +/pdfEndPage { end } def +% PDF color state +/cs { /pdfFillXform exch def dup /pdfFillCS exch def + setcolorspace } def +/CS { /pdfStrokeXform exch def dup /pdfStrokeCS exch def + setcolorspace } def +/sc { pdfLastFill not { pdfFillCS setcolorspace } if + dup /pdfFill exch def aload pop pdfFillXform setcolor + /pdfLastFill true def /pdfLastStroke false def } def +/SC { pdfLastStroke not { pdfStrokeCS setcolorspace } if + dup /pdfStroke exch def aload pop pdfStrokeXform setcolor + /pdfLastStroke true def /pdfLastFill false def } def +/op { /pdfFillOP exch def + pdfLastFill { pdfFillOP setoverprint } if } def +/OP { /pdfStrokeOP exch def + pdfLastStroke { pdfStrokeOP setoverprint } if } def +/fCol { + pdfLastFill not { + pdfFillCS setcolorspace + pdfFill aload pop pdfFillXform setcolor + pdfFillOP setoverprint + /pdfLastFill true def /pdfLastStroke false def + } if +} def +/sCol { + pdfLastStroke not { + pdfStrokeCS setcolorspace + pdfStroke aload pop pdfStrokeXform setcolor + pdfStrokeOP setoverprint + /pdfLastStroke true def /pdfLastFill false def + } if +} def +% build a font +/pdfMakeFont { + 4 3 roll findfont + 4 2 roll matrix scale makefont + dup length dict begin + { 1 index /FID ne { def } { pop pop } ifelse } forall + /Encoding exch def + currentdict + end + definefont pop +} def +/pdfMakeFont16 { + exch findfont + dup length dict begin + { 1 index /FID ne { def } { pop pop } ifelse } forall + /WMode exch def + currentdict + end + definefont pop +} def +% graphics state operators +/q { gsave pdfDictSize dict begin } def +/Q { + end grestore + /pdfLastFill where { + pop + pdfLastFill { + pdfFillOP setoverprint + } { + pdfStrokeOP setoverprint + } ifelse + } if +} def +/cm { concat } def +/d { setdash } def +/i { setflat } def +/j { setlinejoin } def +/J { setlinecap } def +/M { setmiterlimit } def +/w { setlinewidth } def +% path segment operators +/m { moveto } def +/l { lineto } def +/c { curveto } def +/re { 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } def +/h { closepath } def +% path painting operators +/S { sCol stroke } def +/Sf { fCol stroke } def +/f { fCol fill } def +/f* { fCol eofill } def +% clipping operators +/W { clip newpath } def +/W* { eoclip newpath } def +% text state operators +/Tc { /pdfCharSpacing exch def } def +/Tf { dup /pdfFontSize exch def + dup pdfHorizScaling mul exch matrix scale + pdfTextMat matrix concatmatrix dup 4 0 put dup 5 0 put + exch findfont exch makefont setfont } def +/Tr { /pdfTextRender exch def } def +/Ts { /pdfTextRise exch def } def +/Tw { /pdfWordSpacing exch def } def +/Tz { /pdfHorizScaling exch def } def +% text positioning operators +/Td { pdfTextMat transform moveto } def +/Tm { /pdfTextMat exch def } def +% text string operators +/cshow where { + pop + /cshow2 { + dup { + pop pop + 1 string dup 0 3 index put 3 index exec + } exch cshow + pop pop + } def +}{ + /cshow2 { + currentfont /FontType get 0 eq { + 0 2 2 index length 1 sub { + 2 copy get exch 1 add 2 index exch get + 2 copy exch 256 mul add + 2 string dup 0 6 5 roll put dup 1 5 4 roll put + 3 index exec + } for + } { + dup { + 1 string dup 0 3 index put 3 index exec + } forall + } ifelse + pop pop + } def +} ifelse +/awcp { + exch { + false charpath + 5 index 5 index rmoveto + 6 index eq { 7 index 7 index rmoveto } if + } exch cshow2 + 6 {pop} repeat +} def +/Tj { + fCol + 1 index stringwidth pdfTextMat idtransform pop + sub 1 index length dup 0 ne { div } { pop pop 0 } ifelse + pdfWordSpacing pdfHorizScaling mul 0 pdfTextMat dtransform 32 + 4 3 roll pdfCharSpacing pdfHorizScaling mul add 0 + pdfTextMat dtransform + 6 5 roll Tj1 +} def +/Tj16 { + fCol + 2 index stringwidth pdfTextMat idtransform pop + sub exch div + pdfWordSpacing pdfHorizScaling mul 0 pdfTextMat dtransform 32 + 4 3 roll pdfCharSpacing pdfHorizScaling mul add 0 + pdfTextMat dtransform + 6 5 roll Tj1 +} def +/Tj16V { + fCol + 2 index stringwidth pdfTextMat idtransform exch pop + sub exch div + 0 pdfWordSpacing pdfTextMat dtransform 32 + 4 3 roll pdfCharSpacing add 0 exch + pdfTextMat dtransform + 6 5 roll Tj1 +} def +/Tj1 { + 0 pdfTextRise pdfTextMat dtransform rmoveto + currentpoint 8 2 roll + pdfTextRender 1 and 0 eq { + 6 copy awidthshow + } if + pdfTextRender 3 and dup 1 eq exch 2 eq or { + 7 index 7 index moveto + 6 copy + currentfont /FontType get 3 eq { fCol } { sCol } ifelse + false awcp currentpoint stroke moveto + } if + pdfTextRender 4 and 0 ne { + 8 6 roll moveto + false awcp + /pdfTextClipPath [ pdfTextClipPath aload pop + {/moveto cvx} + {/lineto cvx} + {/curveto cvx} + {/closepath cvx} + pathforall ] def + currentpoint newpath moveto + } { + 8 {pop} repeat + } ifelse + 0 pdfTextRise neg pdfTextMat dtransform rmoveto +} def +/TJm { pdfFontSize 0.001 mul mul neg 0 + pdfTextMat dtransform rmoveto } def +/TJmV { pdfFontSize 0.001 mul mul neg 0 exch + pdfTextMat dtransform rmoveto } def +/Tclip { pdfTextClipPath cvx exec clip newpath + /pdfTextClipPath [] def } def +% Level 2 image operators +/pdfImBuf 100 string def +/pdfIm { + image + { currentfile pdfImBuf readline + not { pop exit } if + (%-EOD-) eq { exit } if } loop +} def +/pdfImM { + fCol imagemask + { currentfile pdfImBuf readline + not { pop exit } if + (%-EOD-) eq { exit } if } loop +} def +/pdfImClip { + gsave + 0 2 4 index length 1 sub { + dup 4 index exch 2 copy + get 5 index div put + 1 add 3 index exch 2 copy + get 3 index div put + } for + pop pop rectclip +} def +/pdfImClipEnd { grestore } def +% shading operators +/colordelta { + false 0 1 3 index length 1 sub { + dup 4 index exch get 3 index 3 2 roll get sub abs 0.004 gt { + pop true + } if + } for + exch pop exch pop +} def +/funcCol { func n array astore } def +/funcSH { + dup 0 eq { + true + } { + dup 6 eq { + false + } { + 4 index 4 index funcCol dup + 6 index 4 index funcCol dup + 3 1 roll colordelta 3 1 roll + 5 index 5 index funcCol dup + 3 1 roll colordelta 3 1 roll + 6 index 8 index funcCol dup + 3 1 roll colordelta 3 1 roll + colordelta or or or + } ifelse + } ifelse + { + 1 add + 4 index 3 index add 0.5 mul exch 4 index 3 index add 0.5 mul exch + 6 index 6 index 4 index 4 index 4 index funcSH + 2 index 6 index 6 index 4 index 4 index funcSH + 6 index 2 index 4 index 6 index 4 index funcSH + 5 3 roll 3 2 roll funcSH pop pop + } { + pop 3 index 2 index add 0.5 mul 3 index 2 index add 0.5 mul + funcCol sc + dup 4 index exch mat transform m + 3 index 3 index mat transform l + 1 index 3 index mat transform l + mat transform l pop pop h f* + } ifelse +} def +/axialCol { + dup 0 lt { + pop t0 + } { + dup 1 gt { + pop t1 + } { + dt mul t0 add + } ifelse + } ifelse + func n array astore +} def +/axialSH { + dup 0 eq { + true + } { + dup 8 eq { + false + } { + 2 index axialCol 2 index axialCol colordelta + } ifelse + } ifelse + { + 1 add 3 1 roll 2 copy add 0.5 mul + dup 4 3 roll exch 4 index axialSH + exch 3 2 roll axialSH + } { + pop 2 copy add 0.5 mul axialCol sc + exch dup dx mul x0 add exch dy mul y0 add + 3 2 roll dup dx mul x0 add exch dy mul y0 add + dx abs dy abs ge { + 2 copy yMin sub dy mul dx div add yMin m + yMax sub dy mul dx div add yMax l + 2 copy yMax sub dy mul dx div add yMax l + yMin sub dy mul dx div add yMin l + h f* + } { + exch 2 copy xMin sub dx mul dy div add xMin exch m + xMax sub dx mul dy div add xMax exch l + exch 2 copy xMax sub dx mul dy div add xMax exch l + xMin sub dx mul dy div add xMin exch l + h f* + } ifelse + } ifelse +} def +/radialCol { + dup t0 lt { + pop t0 + } { + dup t1 gt { + pop t1 + } if + } ifelse + func n array astore +} def +/radialSH { + dup 0 eq { + true + } { + dup 8 eq { + false + } { + 2 index dt mul t0 add radialCol + 2 index dt mul t0 add radialCol colordelta + } ifelse + } ifelse + { + 1 add 3 1 roll 2 copy add 0.5 mul + dup 4 3 roll exch 4 index radialSH + exch 3 2 roll radialSH + } { + pop 2 copy add 0.5 mul dt mul t0 add axialCol sc + exch dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add + 0 360 arc h + dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add + 0 360 arc h f* + } ifelse +} def +end +%%EndResource +%%EndProlog +%%BeginSetup +xpdf begin +%%BeginResource: font DTUUHP+NimbusSanL-Bold +%!PS-AdobeFont-1.0: NimbusSanL-Bold 1.05 +%%CreationDate: Wed Dec 22 1999 +% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development +% (URW)++,Copyright 1999 by (URW)++ Design & Development +% See the file COPYING (GNU General Public License) for license conditions. +% As a special exception, permission is granted to include this font +% program in a Postscript or PDF file that consists of a document that +% contains text to be displayed or printed using this font, regardless +% of the conditions or license applying to the document itself. +12 dict begin +/FontInfo 10 dict dup begin +/version (1.05) readonly def +/Notice ((URW)++,Copyright 1999 by (URW)++ Design & Development. See the file COPYING (GNU General Public License) for license conditions. As a special exception, permission is granted to include this font program in a Postscript or PDF file that consists of a document that contains text to be displayed or printed using this font, regardless of the conditions or license applying to the document itself.) readonly def +/Copyright (Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development) readonly def +/FullName (Nimbus Sans L Bold) readonly def +/FamilyName (Nimbus Sans L) readonly def +/Weight (Bold) readonly def +/ItalicAngle 0.0 def +/isFixedPitch false def +/UnderlinePosition -155 def +/UnderlineThickness 69 def +end readonly def +/FontName /DTUUHP+NimbusSanL-Bold def +/PaintType 0 def +/WMode 0 def +/FontBBox {-173 -307 1003 949} readonly def +/FontType 1 def +/FontMatrix [0.001 0.0 0.0 0.001 0.0 0.0] readonly def +/Encoding StandardEncoding def +currentdict end +currentfile eexec +d9d66f633b846a989b9974b0179fc6cc445bc2c03103c68570a7b354a4a280ae +6fbf7f9888e039ab60fcaf852eb4ce3afeb979d5ea70fde44a2ae5c8c0166c27 +bf9665eea11c7d2329c1a211dd26bb372be5822f5ea70d99eb578c7befd44cdf +045a363056e5e1cc51525ea6fc061dcebb337208eff729802376a2801424f670 +0e7e6397b28f15bc10b40012b0a3eaeb2693e8f7f627c4c9c7c6c5bff105c1e4 +1b2b9e8f09253b76040d268b80719e1b3f5a55ab7b8d62a63193c4ae94c086c1 +552833ddd8f116b5df33205ae709b3aa63da7bebb165b67281827b48fb5edbed +02a1a5c0784fc57d3487daa59520bada1be3fb9795669924321ce4f466cd8e3f +7e8ec2494aee80e2dd7a48a6861af5b9f0ccaa4a2fe2b03498eacacd6b9c39c6 +a8f2e39e06bbb061cf2ec380a32efad0b790974bb5cc3daf0992471456967362 +77de34813f27abe99302f86bb4d293a37f84667e7f3dfee4cfe9d1a676a5728c +aeb5222ff50da97e74b2cdebf725fbca7015a188891c8a376b9dd8a642c4b184 +b1bbf3f376a6d6e31ef1c8354ddf8039cb20faabcb34d4749b3c8c8d6972ceb1 +06b8a5aae3ae40a91f1f2b1155681a9cc933f87528c99a2b0268b43a3e829e7f +3bd863cb52950773bd9b0731dc4992541d7de7a055ca65ddd2317f1705c20d1f +93291bcc254cbaba425c032b3b15050d41da14ffe1b3d684eea428095a01e931 +98d4f849b239ad9d79f4502f0271affb0c297f2f347bfb9c137782646f648f77 +0076b85f5a929fcdea2703333f6918b8f125627f8b505c688e30f258ded1aecf +2c86edcd88c29249a8081731737195fab7adbb54743bd66511194dee2516959b +a20701e2d97342248297425491f6c9471ec9a98e630d734dac19721f0b324432 +c8d7a0b751453f89f7008ba37bc48e0831ee3ecbd8a0a292d63cfc890b28f695 +9e29ac3b4ddb78a6883b9272ce34a012a82adec0b6b641e3940a438a098ccfbf +c50544b94facfd9d7ae09ad0632015f81d2f77fc6d80a42ec11d67d8a91c376c +13c8e3444cdfde4d2a1ed021410f4d6a4e97804ae949bd913094d23108c9d384 +56f11025e2d24939114b6bcf579a0315c52f3ca1bcc2860fc1a0b9fb8a37ae2f +c20c0fd44d215fc2af737fd0339b070d54e664021240071c665de4170dfa182d +4e385685fb41a2d85888b1149e9a766cb4f309b4e2baa28cf1f8cc12c4b19e33 +f046ce97b53deb549fea96cf6ce66357c4904b7932f5b1ce03cfe3a10c976b9c +c9ad11d7a02816f8e11666ca8b3ee1411df2ca94172659bad929e3e3e5248f48 +0690cec6d8f7061608cf2672f65abdc96b4fca84d5c847440cf9523d3bf23f6b +d4365582e4b187b6a1a0282ed323bf221edd0a4ce11ce7eda738d1af48b2e19f +eb3da1664de99c447c35dfd45069fded1fcd70b4a6855e91ffbd7146efe88012 +0bff1d6d1acb53d5e07fb5795f561a4a3e953bba7c03a9762adae18e58dce6b3 +b1a703122ef3b16963ac7cb9682ce60e17947e7e675d19901c7e8272ce4c9fdf +536abdffa429b820a82aee9a73d7dcf77dde4d8e251cb3b3a5b0a91c0fcd7fbb +ead7a812ff194fd049f28b82f4c2d73e41cc73c1c9f668931a2c7eba5400a1b9 +0902efe6792f207136e1e16b41794e6cbf7316889a602d35c37ef36dec95af26 +e9bb0900456f2ebf2705ecce7b2ed90343d23e006ecb282d4b3629bb0c3892f3 +ff9c17fe6c5fab68358e1cd44aff021948ac9fb8410a3de22e0a01e367c52470 +2a8cfd284cf9e8f505d5dbd7bbe242fe071fea0094a55ed1cd7c9be6b7c56c98 +16ad1985fb7624f5e48cf6c0c2ed85b466f64c52f017b20cdabb85d24452e086 +3942362e764a2bda0f6c1b24426e302ddc4403a087efb2850cf3275c7b24275a +ae270f212831f4c4a5d95deab61923ca126e587e8f5ed4f2d5738f06e8c4f911 +b346b8ecdac481dedd2f546305a7cd63cb67d40093c618fbbdf498c8d7ead8c7 +1f5f022d0bbcfaa8670e3b3b999a1697c947af38d7e1a360e3f0825a9aa77840 +d7a9dfd575ce2f04d308f7c553ebf569ac84f2c12aa0869ce107c713a3cce624 +5059bfb3f5aa27d10e337086144ab09286be3825a3482c5422454c6a9cbbf205 +833316780eb88302796fc427a0fb9e53a7bf24577feb3fa5d85cb6344f908007 +183522d3c760c11fc7da8d14bb5dd800576a6b4d1b991c1bf3db0f9ca2ac5d22 +91079a199f2f6e6dc68213d33ea893b74f6aff30ed1b51f8b53a015ffd4d2076 +b71f73225b151cfcf11e2a2917cf1b3f60e2b4d442307c394e1625f7e60eb12a +f2eb9ca7b17b082f1664d09cb7a3f38aea99a13f659089426126f47fad5b6dc7 +64101cd437da3c22bc43e7a8de07253eb371470ee1e4e42a5d1fa2c4db5565ad +79d6271ae28e8fde5d4cb24064c145de44ed486a1e7df2df921f2b1be5fdb120 +d8b781c3655ea72dc22a2a2d37579f0af60b42320ab25c8d769124352448a154 +7a381b388a4d9a54e82f199ba35f1a3981823ab698e3f87d38d32addd4f13832 +77fcc9acee7fbd3285f689a85b76d0feb9e70f09bad0ce144770a6cc203ce40e +15912de0e3465dbc7918e3ea49ade57ee8c48c75937f5d25498c45170693067e +6902937c9b43ab6080111663d5dc6d88f72a39c5e7bad677229498323a3e7a22 +2fe2552b00cb91ce2848a1a53538b7af2503a3671903e10df0e9641dbb70577a +e828dd3cae98fa9e1a74f4377f908d3cd79461408ed29832bc4c9865550ccb00 +45359282255057a4bd4859915cf1e45ecdb7329f90bbf63e0a22a54b05c5acd1 +9c7c4dfc25482a27a20c7ab908546c3577e87ade93ea46436314a0a7c524b892 +4b012239e77cd65ae2949bbf7e46a5a2269b7ffb1cf8a5bc7eea1944d2b0bf37 +bfc36adad9a599fa133f77935f24ef518819d054345df144731dd2332b0f7f5e +84c46af486941cf1293e86ee719c9bab6263470c7009c3933f1857b0a863e36c +288d37e6ac85e6a1b4e6e91c0a9fe367bec427ea3713e8d1f0523ecff6067717 +244ca21c177968583815f023420a660f7aa4cdc8bf25ac3b3e429942b9f5123d +84234c186d9226487c76dfef5d26165771c0e75f0ace7e3882e49de831b46c12 +e30dc37395241d7619c05abc40f5a36f8042b461fb6c3a5181f77b14e9e6d978 +37356b4b31fac3850df1869063724316104c799b6a2f42c361a375e4d29eba7f +850fe29efbc2cef627a25db549a4d4c48f9fc9a2f32fa50c1ce6b5a545a95f7e +bf2e9ed710ae91ace1281a44e49aee4133ccc04926a6dba24b721c21188c89a5 +2a49745501cfaa4364cf49e3ec2a59d9ee46f33362634f9758827b199fd07dba +939bd7387124656831862f70a97c5a05959572c74865f5902e95093fecdbea3b +bba9b47dace807262de0c7ef04843259f58a323471237cd573298c5d0a0650ad +2acabd71cb44c63675192845e3d01b3b28af871f347d4a460cc28d9e94409443 +30e893d27b06132063ab727a38f447a2a4633d29adac01bdccc7634e64dfdc55 +9141f69e1202c4a0fd48479b0ed95a7605c94901373e1100a6cbfc113fcce445 +e0317cc94a8507dd637c37676954b9d34c6727aacf17285876db16dd0e11384c +2b996e85e82fd8fd2b8f9b83bccb398b997364f0ddb71e60ccc50cdd5d122eec +c36b86a89fbbb5bfb227fba3a7b7de7c907e58780fc276c24ff066982691a97a +50d14362d27d790375a47162decc53c5c11e8a7499788dfd86aefffe7e674aed +26706e2d079e9a571c6a32accc8c0dcf23508f58477d05f9a1fc679c0da64254 +27ae33293d02c9eca01daf2d0a1b07e5515d36e18caa3ab1b6c5736dfdefe384 +dbcd244f0c11087a873c4501c6de2a5a57e346fd3f92a0451e63fff6b99c6dfc +64ed8673dc54ef6509d0d043925bce39072fc64ddf2c49b8602d1a51ee822f19 +d7b2135aa84626bfe3ff321a6bec3a003ad97e7699cfa34bf41f9c2b38df4794 +cb5ae36c95f42b44212de67a96ca9d047587998636673a031c4eb03cf1a55326 +f5d94dde75086b44f095ede0068fb6b9d256759041cda04ecacbd8d7784159af +ae31a9c637d9a5c0c6840dd9e30eacc66d4d6fd6f12a603aa2db3e9866693070 +0d69cddc416d4b76cf6b835c7bebf914816b87edcd5a24e346eba2dded30f5a0 +dc033e93b040a6ee7f8ab3c44c61017c758c11c2e2fe3c4f18996287a48fa9f8 +fd068c42d0d3384ff27c5a88ef630125562663ee95a66b7b588b417b20d3ae84 +6ecf2693940d4733f9e70b0455b6097e73553eed34df8da712c29d76326670b7 +13f19d4b5ada1833d46fd6cfb92b85eb946cc74252718cc5e605cd6c3c5a46e8 +51536cddcc3cb244c78e629fab784fd76372ca9417fa67f292a7e780b78186d7 +f391cd91b6222e88c0bcff66208814965511967b2ed0d075c77b57701608b647 +b4e462d3e56e06c0403f858582a754dcbf8841fe81d39359d8c5a77c8ae6b795 +c11b84f702de09f22498a189a4c69d726a63260784066562a50544e5d07aebb5 +8265c1c6607bfc6008f2edfc9d0de71646548e59bb374996a4412ac22ab47dc8 +357153c7c9061e95952a729a80fb45f3650fb0c84a07c1956dcc0856d7b0fa71 +3f09c1b995b0c48c57c9367c0601a46cdaefd0460735682d5aafe8545cba587b +ca6e8144ff14a25b2fce9b23d8ebf715c5a544bd646d5460d2f8cbd44b6d8203 +54e4b7377db351ff26b7b9336a7dca3a610d3a92541054c544064447ac6d1a15 +cf1d1a3797cfe85fb55b56ac01fbb6f47e9c8e5c2929bdc7ee14f6d868464493 +df4759cc80405ef270a816607f248c5c1d5c56035a8ffc1fc1b5f69aabe2f964 +cba4c0ed5416a20f102c82bdfe59ddb4a16140c85d55af2aa52c92ee85c37881 +9c95865704b3cc39da6270dfaca8c3611edbb6da767bb50a03d6a06ed9890104 +da2a575ea45e16da2e1fdcd603c91af6beb934ea33023152c25c27c3c771b553 +1a9aa1ae684e1539e549972c97321fa0710759b6d4b9e55ef1b41bda01d77786 +87c22cb79310a9000bade74a8ac97b3eb2ff024bfd60c0ad7fdedb23c805f64e +fd139e015e0d1d3591be5930c356e6b8c1a4f0ad9af94eded4ee9aaa436d4cf9 +58c5897d06b7c97cdec22745c46e7b37695a8c66140f7f8421138892f4851c3f +d355b1de1d32145d39243d0590a90f1c4ec2c246d3f3779b319c38d4221576be +fd17d8bc8819cf8ec30075305f8637d1ddf0f7255ad456cc290f10ec39ddc2f5 +290092718e7d268531aaeb377701dafa933b94ce763c1954ef0cce19d77c9208 +157c38b279c578c56b7e523afccc91fe6819483de18ceebbe74b81844ddb84c6 +22d4f29661e89e5417ce43c28028e9e1c54063afd716088b6e8fe0cd1702c2c3 +31273573f5c3d760c8a2c7cbb362ed650ea8ff54f19e097f14af9739885af15b +46ed31cdef73db671b22efd41ff3f6bbd29625fae7571f9542fc06c77e28d2f6 +3ba2c9cf89da564de3a6fb3f0ff981c5c482a1e1de730041b7f1c890c4528bf1 +8e79f2fa4ed8a738f09a68a5b53edf6cbcf8861003917a89989146af7ab2e5a2 +836279643900c27a90463679a22f0ca5077728f6ae8a28324f9adcc19fa493b5 +e2465c6d98cb608f8dc52cdd6c52bad1a1502779b638df9336e12f035b3c310c +b92b3add047365f2d25b0ec7e05cc46f31c0575eaf4ebea0b660aa20d9e7edf9 +0aa077e3000e25176038ccc92d4f9fdbae6b05aa2e17ad004e13308464a20cdd +0271ed0f964e73cb11f18c2b795dba31c3ffd5648c63dab395238ba7c0cc7db6 +b206e6179c6ad7c2534c46a2b9c1d7fe6bc693df35118b708933677ab3a76cee +9ac0303c2c0967d718a1691f6a922abb6b37625fc01908c10242731b79a1a82c +fce9efbd1c6bd483fd867bc2938609ee52c0271a7ed1fde1b8667b98e22fd450 +86f515fd2ac2c11c50fce95f3e506ac6518dd4e532ddb100d87a9240bdcdafc2 +0c8bec467d76261165e9d8bdac9197ec798c81cfe80e3619f432674cadf44ff4 +3f61089abeb13d665e7901f4a1ba84115333210009d55e051b692aebee9d9bf3 +d0219c290191c17f7317aaf402b88ba353c25f126e2d32bef73d528c65af0840 +3ed4086daff574762531794fdbf637b765273911297b75338691e9ef4d2ad452 +22454c6a9cbbf205039d6d35c09a0ce284e9a776773a98e09e6a816dd71d80c3 +d80abcb006353b4b7c48c76bd9c1ed9db78bf62e9ad2222e5bee9fde0281f0e6 +11fd6f899938cee729a184be7cbdb0b84fc9c380d6c69cdd6e0f3f6780af684b +cec6361673853b400f47e00177ff1ee7f9eb8c285a49e137e08d5d7663df71ab +71ca71adc0857055686a04777a2e1408ce629e018c97524af5588991be92e4fa +4a27745aa950a72d479c48d6f8c30d4258a882f199b4359f92a963fc650230c5 +79edf743f2cfe86a197296dd675bf05f25ed969de77bfdd0b518cbb5c30b4e42 +27c5117f235b34f7fc32413a980a38968ff9b8151280a0259214790e421d0f39 +eeebe98adba820401c2d47d4132cc68cae0f59b049d7489f62259bfc55091c81 +89e2480dcb77f689965151b7f6706af675a871370d2195b07457af8809f7abfe +7d3672d76a74f55ec749ef40f755a3eed96cce000644ca0c497afaab7294afdc +13c3239f54f3eeee809bcd936ff447277d2f3613936e7b39e683f25b60505f2b +f4343ed0902badeb62495cef53789b9e74baf866be33efe66c1c5faa95f60ac9 +156a26bb9f72cb73e891ee4b905f72845b3ae05e025879f07a7b91fd06204148 +60832d64b6bd5abe0472aa7aff07fa05d23a01238b6f624ae8db25bb71ddd893 +1fc6003f23292a428a5a99df5861e0ae858c398d66d027a32a71d6e62d62b6a1 +a1db86b1ea3005a201618f22899cb1e7d70f65fdcfbf7962ee0d0d15412d006c +cfebd0e0892888f26238bd1f7f090de03c41ee4ba53548f469fda2d94f6b3da8 +a606fcc3554e3f261b8490a3b8cde3ee846542668ce3b371318f9864c45a4223 +fa2a86e12034bba867c4abeb461c609c8d47e184703bd6c891f39076ee06bfd3 +bffa679de07d8c8eed9b4b24ff74c6db2cf84108f28e4f0fdb78e0e726a9bd3f +2a1b94daee18fd20f2c902cbeba13c1b281d0a11a96b20800e4cf939dd32bda8 +25aa63d9f86f380af4dd379d80441dc4fbc0719a69ebc16e1617940a19eb0b44 +96581982d45b08e512000e3915490a1a79b908e1e63ae129750fa45dd33c0e9e +2e767a89c6f11e33f193da18dc6c820dbed8d370492c19ad9d6407e50cb62446 +d3ab009d9e8f3c51eac2139ab64ffa19b70405813652fbbe33fbe5bc95d40b5f +9ef833a4b1b51e56065abfef1036eeab8e04f096aac0d2813c2e721e0db97368 +c17f0cc971c9ca18a2db11745f67d42ce5148e2e8b2c0e13e4bb16a2789f0c4c +e7b65be454ea623212bb2ce5afc6b5b3ad5bfed65063354becbc1531389977e4 +6599896d9ddbdf3ad6fdd8a44b14ec8cc9f131d73cba91e28cb54b37655e4b44 +db0457ae7bfd3c6b73bacf09861a7fe4b664928230fa03cb99ebb763703ff8d2 +68877c3a3b1cf915891578aec60c1f7d1e447fc777d8eb3573ba2a9ce47c99ca +a9d52f2f12b101fe48658edc7543ef85dfe01b72dc4dda597951ea4298fd444a +ee33b14ff2f91b7297922daa7e346493080868f56aaa2176c9f2c1284e4b2672 +a3b75face39df1c8b7a825a3a5c25871d190e48574e1d03a5fb094d418c47ac1 +687e8347036cc44fed3d84fe5d4b84a61fac9968b8d004c28539a3681476ac45 +56538901ff2764c1c46f5ffe048cd3a7eafc6a9fe98ff9b3cfdf3ac035a9d3f6 +8d75440d43a1842cc1e8b6b9b6d49a9bd093620735c9c7c11c21652a5262a86f +c10413a373a9e02a488bd9a16a51fb51b027b2c5cde35cb1aed91ce58703e1e9 +ebdc1a161d754ee437412182f7d532426841e2455add22c031a2171426881bbe +4090d1cbfc498ef46749308b73ebf4dc5a06adde6f83bfb368388bf7c2d900cf +57932ba4c9db0f15faff7cbd701050a1db98bdc9a5f9f428980ecfb1e999f460 +231e59b5c62c7879278f10f6a61f79cc9da24d35a2d26996d8a4a106e081b8c8 +3fcc015b775acb00f78953a834018c146c65cd715bfb5f90c03feac01839c6ba +156e327c97350d2851dd77e8263b967742472dc1e3b8f0e980de9f1815007cea +51619d84375b777d5cf32a144affd8ef0f4fee2df1f839b2a5d900ec8e76363d +c829f1d03d211175ab982226616b19c51800e4b5d4b28aba82980eaac6131940 +026e3c2297e197fb8f130fb15d2c4098b97c84074d4e50b5c6606bb0f3230931 +52b39a58964b4ca44caf45f63af49b330ab3dd863f5ebfa8ab0db6cc37838a64 +72c601c215037e94ac89420fea13d52174ed5c933e8c8525f88e6ce482661861 +58b904ba7fdb864cfe04bd7ce6070fc5ef576b1de985a8c4eeca7fe32b90d320 +9091d8931bc21c6f969288b1cab44bc53755d8d8f257466803dfd5725dbb5830 +4be6c784fb6f8c5e66802028759c0597246fc103eb63b58f361b144668713570 +8c6be071b51fde425a0aa5724986ca67e87eacb8f517fb3103e52595ba002e02 +82e54cb82b04c993d991d70b5eaac7a639213ec0f82a1d7750f3f6e94d8ac7a0 +8a586b816a9fbe78ff96bf1e3cd52798089f279a0a0d93e0314883988bba0f78 +7ce5745f8b07eb3b750c1d0a13fa4b0338346220ff9ff10cfe04f29e2c24aef0 +f77f6748b63b0c6d53461536034450820c73116cc66feb9c7f7d08e0a47d4c92 +ec61c5342099c27d93a79d9c9f278142ba03b51d6e1e03944abe063baac32629 +1b5dc30de8512f0cb3a973cc43afc2be532ed012c3eb58266cbeebf611f91aa1 +489d0174e713b976f3a0b36c575df597a3d8b12d4c5441e3a478f0933eb129ea +e44484e084bdde7d2d9ba23a6bf1bbdd51d96ba4a5207af1044e917186b7e66d +accde1295b615f37f1395827e29e3a1711fb2b6c50374df468be421cc531eae4 +b3cd2473c979d11c11beaf14aa9b6cce4acc8208f22f9fbb6713bb8306e5b5a4 +d46d11e604114d9a5a4be0615a843d10de54ad62d582302fffcfab7f785b11c4 +83081286cfa04302f7b92f64dbb42f3f97cde0c047662be6a3e58986c54b7c3e +2ac1b0d19bc1490311150931aed3497abaa74303d3f0a3f3af8667c4b0b91385 +cdc9bd2ae98ac32a2d943e0583a0f3c74fcb803559fea211098b48385d3d8d32 +9e2cda61d7589e5383fa32abfcac50355549f1e819eb31531dadc47f5e759790 +d355444f1efa6b1dfc7713d446008225808fffbdc81a3b1b374c7f2901e27e2c +41c477de0e52e9005288b7175117b32c326b3ad2b9f9342865d0bdd0ba6044ac +395c2c69bf82a7aa9b77842a3bc7b4a675b0c32a4e4504d2a9fe8762170f54c3 +4dc3620cdea9d1877f274559ac6d37aa83f90346130472775858c18746db4558 +4f2fa7698926c4fb2eef0951579dae63c2d3c7b9e1fc811ee5dda4dc5b5e61fd +c0ed21724902532087dbef11b1fd0d71eca9f271a3d1bf8ded5df19db6761547 +97d0a12f94147d64bade52704f880d0fcb89f4958547c6839c9e111892797f29 +4e65f7a54e14ea3d3f50712979f84852e57b9c1d70474a3593d53f21603e00e0 +e79ff355914f9a3d4ab1e14410eac9926928e714248535b178d6fe9e0e84ce99 +59f66fb52f37a4e3dfa5488b76d9ae2f62d4495bca11cc148dc20e29a694fabd +e65c7629ebc40ff0c0fa109631655d3ef9848e16aa7c73cfd4aed02f8f125ab5 +0d628ce52fcae577c7ef0ab688a2f4fa9a0e2a9b10b93130f0b357f4679c1f7c +9bd270f34f0bfd86459b402c74224a621dfad6ed316d05e15d31707fae7a9b62 +f8f75537326742f1e9d0c7483489f4f4fa38e0f327f24fbfb26307ead2720bd9 +678f45875eb05036341ba38660630b7d005304d4388ff7eb3be9c2635c21af0a +02d12fd19a4e52181a9c7f2356b2a16eae4e8ed5b1ea0c01565c26856787fdfc +2aaaf11958ff3414ab62ca19e947db6b78030e2c528f3d1c0215cadbb0c34f72 +6751da03c604bae7b97f379864bb54be9799bd387e88d6c7053f83dbae1cfb04 +f2ac87d12dcbe17a5183780fab4589e8b0d70934e856f11629a91e6d13da7704 +73cc80e0b80bdd42a71eee5f43a4dab994ee7cfeff83d08169aa298c98a85477 +dfc729ed6db098b4ae47a25b8ae7587b8cb2d59cc0989c06129fc201e7c9b763 +f8b3f651a5c735edc975cec4ce461e81ac9d5e3b08a708fc536b46b9566a58c3 +0402aafd2b6018dd063877b880f85e09895dd4c9d89b5f264ad72cbea438c153 +054e1a5ece2091e1d4105f46b047b75ff3be86491e694c1e2e03bff36812d148 +d9923f5d89a28fbc4f45fbc3db74cc37bf3cf41b070d72a4cd571524fa6df788 +3153e77818641287ae22b1c72331fbff019ccecbc1709615ad749dc77cb6b331 +30ca3d0fa05cc47447c17d96cf6ded782ff6b505193915aebe31f1f7b95dc9fd +91a124f9551224117174ae1e05754dedcec813a8aa4934b73de1b20d7c10a20d +83a8b085cc2d431b87397e5f8286c0a80704101475ec9845b2bf7ecb9ae457fd +abad09e4e8ee411d4a20518597b08d5dd66afebba03f632ff2ed520270893f00 +35cf0716f4a092faf8a0c2a3f73ca46afd2a825eee041bbc2b649330fe821807 +707a06ed91847b434d34742844947d54e80422f5b5b56f6dbda934089c32ad12 +375b31af9aa91329c253fafd3cff4858c39ae5efbed4d590819d2f5963b7e08a +99e157ca1c18b20c62a8f7bd278f560e871b6126d9cdcec52c6839417bc70dd2 +49fa373ca6dd557540906729f2fc5476c38595d958ab2b6c14629f9e16a2a9ce +9f6e2dd760e55a38a3432e74126135364cec00a7b6dbf0cd48555df9f31e71aa +9d573bb077085030aa3146d0693fe683884ab380f052c38b31b0e3483d122c4d +d15a6a93eafec3523f4b2744935de9d1660fb4d8a76d82045862b59ea2183961 +f9868bf03e4a71db61e03fae93bea1092ac5ec83d71dad123d5663149d4bd0be +e643435aabc919942bbc60d4ab56ecdecad30d270589775a3ff718cef0e2ea46 +b8c75fa911752ef13410185e5cea25aee6fae74489355d3328e0cbe8d4c55d46 +4114b4a4c85309dff4f2a5c2b14fc4f4779f4e3a8bd29076baec35cd59ecadca +09e93d8dd4786052d970484ea3cb45b37c4a6f74249e9f5eb7583b018dcdabfe +67259769ae1a904f20b3ef352cd191bbed998f4b2c06465d7355e82ffa718e08 +9dfa5c8fdaac95d8e05cf8b5a899b8484c5ea104eef3e5b21436ed396662222c +8cfd00b5a854ba9338da205f16e5c0f451bc1c6cf34f0da069af5ccfb460cccb +b6f393a99f6138e0ece299e0c0f7f1d0c83e0b936cac2dc38f08292245e7afdc +6538c4fecc7d712ef83997088f73ae6ff0ab83d0ae76a7811cc07b41a57d1d34 +04681526d327b489094dd961f2f60a0c6c275f09f0a171e88056f58735d2f502 +65a167d12ff3395df58c3b901a68f0d96f8ef54ac5548086229adac495fbc256 +afe832991f1839aeddf1a87abc217835e58af4199823165fb9899fc831b47bfe +4c3c1f5a2696e9a5f310afb8138eea06fda0688e0d0d7cd1ceff93a72c57289d +332525c3bc60e51ab25526a4876affb2c64657caf14b34fca46a78e41b0c1955 +01fa1a0c0d77d5f7026234af489b316872e64b4d449efc540fb0da553063a71b +d8ee44b0f9a20adb9f60b99803f1760c0cde357784e87042133aa085e9a37a5b +b5685e73354ca0e9a48d886fd12841674bc0713d43301883f1c2f6190b47a4b9 +996c0e528b6572c96232ecbc57c57073463ae36b5b2974163cff75828a20c47f +926e99faab51f19fdbe0f89bb71ffba9eb95a82b3a712b54578f665a89edf193 +d575ed95bb883f9d6797029ff0cc8a75459fac0cca4530e17d93c9834a8d9c9b +376d3e40f3e44e6e895f25c90a803cf8b0f3056037809e3ed618475c199f43cb +a7eeff84d38f49aafa4e469aa78cddb87ea76a87da1b888c38e225499d1bb089 +32d599918227c97b1e4de521460f1a175ff2fc500bb95574d9eac64cd00896f6 +27589fe5351f46a46d1fe8ae16fdc945decb08c0b7d841c5516535ab65b84724 +04796bd7b7083a606977316dffaeec0e8681c10df4deef6335403e5b08889558 +48bfb1b8708a5c41c5147fbed3942ac26ce66357c4904b79147dca55f039b648 +ae18d0d6d330a621301e3c1d6e478fc6fcee4c3382d463491a167596ff51f17d +1afdd4ee7ab8f1b27b4ef2b665cb6818637b5e982447f6d7ab2806f769d254f9 +f5981812a9458a39f51366773a8980c7c6dced448d878af3bc088237815d2727 +40093cb7c3a4e6e86ec6cd61fa8ad13b20e270f97ee5be1799f2966a0ca2a7c9 +32de08bb021adf9466f1b88ffef315b818954057877d3d59f173c1b1874fffdd +e3749a0dba7d62d70483b1a7c7720c1e95c59faeed0c8be1913177c6dbaa6905 +a6bd1a153906aa1b6919ebd1befb9a54d9b84cd9d548b1abe83933670ea719b8 +6337d01283b95306db92fe059da52d107ec47819bd163b3830c989df4052614a +9866b057aeaed455fc9864df1960e97806cf95011394e2052861152024969836 +77be8008c246f14aea1c26e620fb331f96cd32a23b1c87d534d678181a198758 +4bffe069fb5a0c6b63ca8a9cfb6c3fd6ecf07c5bc59712ec7d02a5b988c3fbbf +695fc7068a644d8885ccd88987532539e5cefc64fb97ec1376ef0a97970db510 +4c19b7a64a1b4f7eedfec2515996238dadbbfa8afd8004f12867de20912c2774 +1ceca6f2956b340ccb5e30f2b1f5f6376e6d3a272be05c29125f6d74bbee7879 +8836ee673971ab724dc89867d5a939da0cb41678fbb8d8ed35efa28de86728f7 +953c9c5896b867e4b7df3322563aff8a31cca8901b5542af2c7254547c7c09d0 +15baa7cbdc7352960ac650a543f05e290341d245ddd331a556ac7fc0ee7eb246 +718b71073b9a32776f6215fd8fa2297a2e9be23728cbb24c53ea10a4544ddfb5 +7d6292640840c77bf03728c3e5d2665ed7db7410c9ecb32c249a45664f72f8f4 +2e81a2e086b535f6473b1a3319d134317edbd1864cba7b79f89ef99d16c8871a +28fbc4cb45f982bac6de81ef637a7e1022a5579f73867e40e31ec8903632e33f +b24abe53b1f3a3097779b977bbeb41c21857909d3e25f7bc88e6d3fe6f183da0 +0133a99ae39080012df8498b9ce322ea9b76343c2e8be3676f08602470da2761 +ed9de407fba38be82de624e1552be40a0e10b55ad74367b91c80b8bc5cf59f64 +b79072369d9e492ee6b9f9df0b91ae608a44020ed6874038974ccc9afa88d6b7 +8114af4de09e77e4b0a1a1fb27e226a62385b969bbebb657ea927fd86e050ff1 +3ebd001a022333f8caca13c54f9b345cd5b6553c90b4f7fb949d7d65d9bf9fd9 +46a3c7c531f6a6479aab0d5a7015b56959777892feea7990edbd2b423f6e9ce4 +583caac124c268628a9cb703dd96aacd35b1031e08a741d02adfd579267df790 +5ef26af14b2bbdc22a1eb33b58719a1e8463f28784f4c15cb3c25cfb2e20a508 +7854a53f4ab398b02177de500a049d6c9faa13fd40c19178e878f1cc26221c59 +b40545f5f4442abba06656ead5afd938adeb3ea50c699862d48e767c223c1f22 +246e58c5694d1e23511710817a9fd18a1620cc651345e6d3302d85139f7a5734 +7e423be145e165baf46019fe831f97602ec87b3cdfb8fea12869c98f115d1b66 +5aa588fa82484acded7ca2c13a17bda305f63ee226ee1f37cf247f1aea9ff92e +2fa4c1e0448a5dde45294699a9490a5ea94cf81c53491fc19e2ade5af005c300 +a5fc99b893ed1d469788e94de823006f8848dc9d021f19b934278d44e8c73da9 +3728f389563e10ae6017c5caf3b4b340be1d7d2b7f24a8cfcc1ed1eb920cd366 +6fa12f35e45673fb12b45a6ed7e84937576e5327c82d7f27f6c0255f75ef4b02 +cd492b23ec1f346bdf8e007042a82ab730ab2805569d7b978a4b114577514548 +0d426dc4a8ad86de85b23ab5aa8a50a30bbdd8ef5e9ff8e7954a69987fb5401e +a9d039d5e05ef245e3c70a85236969f32bd1e5d29d71a2013493945e803838dc +7241a73c4c1f14548eaadcba64aebc29fd2253fa59b6b039bb2edc9e4a7c8e83 +317ec39a07b8c8297e4b08d4e6f01a53e3d690f1d1db49f19640c16441be6ae8 +d1cbdf853394cf665f741938733fbc700e8d82c4cf1d72456008a0fe55c8b677 +a4f3e197aac9b976343923dd4c5a181454319fc509d499bf14740ef1387f354d +d71c3bc5b9d4d2d9e0e7a3bc60c79c8e6d344bebeb3b2dc2c3605fdf1002f061 +d52f718b57d1f6c1406b1fdf2ce37ee45693ba72284c5652b2d88b29ad55d9bd +78032a76ae6427c19749ca1503fdfa6eda4861f0b0c72684589efe6c01d9c964 +1201b79c5ce03520510e13bc5461fa3d2897e2b7c65ebb571e2d0ce319248d4a +fcde6d70c38d25f6bbf0c09b64553c3fdadc64c293deda6e2ed8c191d7f432ac +5bcc1ac3183c92d545abbd4da7e768140b9f5a5077b08dc8eae64727eade3e5c +05e07036b08c31ba5ae366c642f816b5fa60e148795d3d4ce050f09c443d6fe0 +d44f8859d43da39643d4fb8c5e2e34f1b32142ddef07b1c02c09f4cc9509eabe +99350ccd3a9d2d6fb809016dbe0c1a29fd1d25cc83125ba7d0143e09203f9e34 +99c6d07cc78bfdb82f72c577aff1045cd2ce2e3de0300283ae5ac540d498e467 +0e3718e3dac6dcdf1c7ab2d5f75c5b6e56bc32d8ddace4ce7f9272aae188f3b7 +d6d31b380592cfc0de45eabdd87cfaa15143cce738ede40bd9a06db0b3d5f570 +be5b21b328b3ac4ff46abb190ec17e73d31af389dc8e887280f84caf7b317c27 +38593005aa586b3c4918fa95a9435e45db40bb52d2f6034686463c87280b8085 +877297a871dd11fa1d782568fe813cbdab6daba828c1c264c3db809cb9da6635 +640c3e991dc41cb1841ea1556b7560d47526bdc012a8f1dacb30f38ed0f4721b +b98b107526258d66804fb0dd4c52d827850d8f0a764a53cd81f66269a8cc114c +06482a5b2b752416707d28e88291bca02b7746161794437f61e7e3353ecc92c4 +151af9a2f0b0e0e7b8be3106fa8b455e60d1b8e7a30a45922fe00f7ac9031be3 +b9e1dcae83017ffa27f196e1b8da6cff1bc25c0d776dbf675838c24c57a3078c +d2f6dad8722aa8997078f22bfab7e8f995538174d577c28d1660e5484270e63b +90ff29111a71bcfdda204034ad6df026ba9fe61c02bc99e0553cae82fc1f84a6 +f8c744cf34a92b3fa239b23fa2aa469c5765c02abeea272fc928d24714c14ea1 +2dc6871a82973f1b57a2063379dc471f0dd0684ab5ce9ab8088512b548c0e96c +59f314ee81f9ba0a793072325d5b2a478eca04739746 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndResource +/F122_0 /DTUUHP+NimbusSanL-Bold 1 1 +[ /.notdef/dotaccent/fi/fl/fraction/hungarumlaut/Lslash/lslash + /ogonek/ring/.notdef/breve/minus/.notdef/Zcaron/zcaron + /caron/dotlessi/dotlessj/ff/ffi/ffl/notequal/infinity + /lessequal/greaterequal/partialdiff/summation/product/pi/grave/quotesingle + /space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright + /parenleft/parenright/asterisk/plus/comma/hyphen/period/slash + /zero/one/two/three/four/five/six/seven + /eight/nine/colon/semicolon/less/equal/greater/question + /at/A/B/C/D/E/F/G + /H/I/J/K/L/M/N/O + /P/Q/R/S/T/U/V/W + /X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore + /quoteleft/a/b/c/d/e/f/g + /h/i/j/k/l/m/n/o + /p/q/r/s/t/u/v/w + /x/y/z/braceleft/bar/braceright/asciitilde/.notdef + /Euro/integral/quotesinglbase/florin/quotedblbase/ellipsis/dagger/daggerdbl + /circumflex/perthousand/Scaron/guilsinglleft/OE/Omega/radical/approxequal + /.notdef/.notdef/.notdef/quotedblleft/quotedblright/bullet/endash/emdash + /tilde/trademark/scaron/guilsinglright/oe/Delta/lozenge/Ydieresis + /.notdef/exclamdown/cent/sterling/currency/yen/brokenbar/section + /dieresis/copyright/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron + /degree/plusminus/twosuperior/threesuperior/acute/mu/paragraph/periodcentered + /cedilla/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters/questiondown + /Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla + /Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis + /Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply + /Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls + /agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla + /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis + /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide + /oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis] +pdfMakeFont +%%BeginResource: font VXAMRV+NimbusRomNo9L-Regu +%!PS-AdobeFont-1.0: NimbusRomNo9L-Regu 1.05 +%%CreationDate: Wed Dec 22 1999 +% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development +% (URW)++,Copyright 1999 by (URW)++ Design & Development +% See the file COPYING (GNU General Public License) for license conditions. +% As a special exception, permission is granted to include this font +% program in a Postscript or PDF file that consists of a document that +% contains text to be displayed or printed using this font, regardless +% of the conditions or license applying to the document itself. +12 dict begin +/FontInfo 10 dict dup begin +/version (1.05) readonly def +/Notice ((URW)++,Copyright 1999 by (URW)++ Design & Development. See the file COPYING (GNU General Public License) for license conditions. As a special exception, permission is granted to include this font program in a Postscript or PDF file that consists of a document that contains text to be displayed or printed using this font, regardless of the conditions or license applying to the document itself.) readonly def +/Copyright (Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development) readonly def +/FullName (Nimbus Roman No9 L Regular) readonly def +/FamilyName (Nimbus Roman No9 L) readonly def +/Weight (Regular) readonly def +/ItalicAngle 0.0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +end readonly def +/FontName /VXAMRV+NimbusRomNo9L-Regu def +/PaintType 0 def +/WMode 0 def +/FontBBox {-168 -281 1000 924} readonly def +/FontType 1 def +/FontMatrix [0.001 0.0 0.0 0.001 0.0 0.0] readonly def +/Encoding StandardEncoding def +currentdict end +currentfile eexec +d9d66f633b846a989b9974b0179fc6cc445bc2c03103c68570a7b354a4a280ae +6fbf7f9888e039ab60fcaf852eb4ce3afeb979d5ea70fde44a2ae5c8c0166c27 +bf9665eea11c7d2329c1a211dd26bb372be5822f5ea70d99eb578c7befd44cdf +045a363056e5e1cc51525ea6fc061dcebb337208eff729802376a2801424f670 +0e7e6397b28f15bc10b40012b0a3eaeb2693e8f7f627c4c9c7c6c5bff105c1e4 +1b2b9e8f09253b76040d268b80719e1b3f5a55ab7b8e152a40e590419249f2e4 +c36159f8e54b532468e36965a38646781ab0b7f6a3e851fd10caa49adfc1e546 +2fd2ec6150dc6e19523050f6148348a561ad8d2e2721eff8a570cb33460a745b +926c889304c09753c2d78fb0ca95dc6de5b8c524752c83601e7e9f73df660674 +f05ad83a166da9be89f22feabd4b2665960f6fb5bc32928e1230c212e5d69cee +0b3311a1738a11747ae263106916d8e95f25b25b4bc6afb03b79abb95dda518b +41a49458111d2a1433c043627ef9460d324ffe22935f4f6da88b8b91ae95b34e +08408a34ec8eac3f65b6ae3e3e2524867ee9d29068f81e4372f4470beeb4d6be +ee4df956becc0cb77f8490117b22b2fb75c938ed0a5e208d88bc38b2ab8b9cfb +f1d53084b6f43df336481eca0aa2d5317bc83fc0e1d4db01d0b7707eef217e94 +a7f985102ded27d8e8b009f7ef6db91b91e78bfae7bd688e10b3dc9ac77cdee8 +47aa4dc8ec78241e593d26ec7a60696151a2ae5325d736e99e01bdcbde69579f +92eeec224b6757eedc64a75455bb665df42a0e4ce7b99bf3e7d66f8ffc8c13f9 +d7a1ff7a9d5ff7ac43396779f11c9b008c33a2043d48b61b88b03104b1425f09 +675b559ca4302c001ee80d2b739cc0fd1023bf4f1ff9c01e892e59cca7c26011 +b8e0b6d29cc29fc72792fda5e7d5d88ef98f9dba960c96534c399c54865eab86 +0fa2e0d6c7c44b553eac1574d55e7970744d4792fffbdce6fb4365bdbc2965bb +2e9edad9e0ebf0b620db415ad98297f5ae83d9c710436657e74d26e83957c745 +89834337035a7501803947f6880b70e56a3a404c62d57b849d28804cbe0f5884 +435a0e12dcc9ba414abb732bfbae237001f557dea5e972ba0838a3c7c9eb75aa +4a050da0a529bdffbf9011c360564fd17a02c18860af6b86efd4e2c125686c9a +5e114e95c71fc89a5de9c589bfe5ac0480cff716345265d2435edae67cfc4801 +5bc08e7a48d683acdb91e05f469c0c8919d73a5d07a1ccb173e30e76680acb09 +02a40a3e11916198bd69f1a26e88330f50692d0d5917e99e7a01b327413e24aa +e98ea484e45897e6ae4d6997b6e8bbf61c9406e916d56985cb2bd297e8acfc6e +cf2d2281ad84696b7c6cb584bd85cc20ba14add3bc3e25db91124c0acf22e902 +3cfbf04cc40de331991e9075d22ab5ee0e849b340050e6c417c664a782d05549 +db2ef572f193b1c12b4635c2b358747046de5858ec32b3b2e79d42750657977f +acdd2ee5a7c9320d907438dba63aa05ed410fc7000f53549091be71be45da4ab +a315f95b724a60f17c70833e889cfe7ea206a7abc4393cb6ef47be3700ba5638 +6831391809ef8384aea8c22735e8062a9f9101add125a321fb65399cbcd9c9e6 +0f46fbf271b2b1ec80832cc054bab5ca80d4561da0a380d56d5cb3d90ae89a19 +48cd824eb1e7ac6127a6dba3e8ea40f00add89749d77ec0eebe26fd6ea5d8cce +f7239681b3d94898236ae92ff3912e0afe84b6c7e08134c158b640b4aecab5f2 +a90028e67d33df31b461a2846f83d90979bb22618e2a17c5d159fb59d5177e12 +edf1320f596e7a4c379329adb367f92bf2869a9a97398e0c20f5f017ca9db7ba +b3bab72b87a7b6bf4febd03132f9075c271f2054078396df8403dc91461325f6 +12cf1421f3099ccd799c2c099492c4f071336d985c0c360b2f5a5877fd00b6f9 +2e5911dddfb31d17a60124ee8da6cbda94196d7ed42804610e4f730daf2f2d5a +b767c320c62543e26534314facae006ba2064623902c8ac479eeebb609e8c3e4 +1516ce412cb410bd026231e22a9cd0f664d769e4e45cbb75b7341f06d8e37285 +beaa9ab71aabe3cbfe5a348681aa246047ca29ca6b442feade254c7582d32d3c +71b5e645c82e92f057eb5f859bee23daa95c575edaaf9896d6c10980a09db34e +084c8a754e31b618c6991baa856cb86877044e10c2f189b284e3195a2db6b910 +2574e2461d2fae65b7321c0093a2a34996c0b77123503e9edc623dd02c44fb76 +3c550840bdf969582d226510ebf89944e59684eb2e2c463e69702266fbcf8d1d +4c0be400495e227b9cb21c8086f328782ca7294dcf3ecdc1a62714143a4c1b98 +e5de1dd554fba60571188a58f0354a6b9ef580689b78a0c8515ca05a35832616 +7e0a90f68f3c306ab60aab20872fb167673f41e8e87ff0111f579cbd0da68b56 +3e35d2ebf9f28b104082e36187373efc7a33f62d3fe4a390b63a76e9b2531871 +6bd59861f51b561dcc115192a6fc22d15a5af03ba09cdfa66b660cf4288e9d79 +26e797256659b0ff64bb5d900990c3cb588e1e18810bcb009a91e5f4f8d9db1a +f2a063bdabd9c3332f4bdb701bb94b4fd24570b440ae74b8d924e48e7c2defb0 +53a19e5b4df39abf4f6fc6160b5fcca00608422a3091cd03e726b1ea1d203b3f +c44173460b490498eda3121881ebd21cb5b571d21a6228cc0a1b035ebe97f26b +0b58179bd22ac950ec3a98458051a874297cd6bfe731c5b413819503111f1f6e +ebfb5628c955f5fcaed76f2402ce351f77e471d1c9821dad627ff25131590577 +5ff9335dd28d85a11bf155765632b34a3aa1df9c01134bd8fe927e0064319951 +e2c1d374c9acfc30932712a5c3e0fe3c7e355e3356e9135a143f1b4e2738e208 +8f44633dd9300bafc770625a64b2bd20d4f672701310e5d1d5b2dd502802539a +65344601924c473b7618f9b87bf6eb49474fe62891097b9b381dfc9dd22f6ceb +340efd950b74e614a2908eea7b0d395e15943d0a9072e2c0e6c91d9141c84281 +6a59f02111333723db78c2c287675d73152ee3c63397f5ea6203c707568137e0 +12438b86ead16d71a0a56d00e6ace9d80aff646b05d829dcf08dce2fed1a17d3 +83a7c9e7c2a5caeb38bda802e6696bab17a5d1e5d6c51b6371c642d5588a2945 +1f3c8b0cd56806531579f7c0d10a9fbe254ea910522d955c86ddd693b8660bbd +17b2b23fea57af15b1720e42c6de537074c071c50c114ac54c45ba2fee00d13a +2573bb9243648a1be2569cf68ff78e4cacacdb34dad918a30005c31f17781633 +6b74af8b9931bec0c1892780020c1a92470e3ad7f1bb6ef26c835f13a9c56ded +51df4a7847c993b88b9fda9a8955d8bdbf6ba773d06645e292ce26d9df4bbd4f +3d20f52161853827837c837f33425990818b958adcc3ae79b5791ff04daa32fe +54050aa9d34606f16c7763de770cc33c9acb60e5354d5a27a687ca6e0fd74a4b +5cffeadf6ad0ba87b906c09201ff65ce6c3f620bbfaaccbe54da884b87e906b5 +f5285d3841ecf78f0a1ee4a80724da3a4fd49ffbaa66be3402a2480a6f8fc164 +343a369e2b8947fd5f58a4697234c742685421ce3d57398c5ed6f6b049fdf39f +6870236751d9ef2210e680b4d8a6daab758bd7fa7da9680604e5bf85d1826611 +2ca08e8922a1d46ac853f4bdca37f7fe80d2d27854012e4a8f70bd854ea4c189 +ea6939096b56168aeb971aaafe1bca667137a76761cba2fbffceafe3e98d5590 +db3dbc44b3f9d4ef0419cae23086898bb25a222eea19c1a760389672933ea7c2 +8b31025619bd108b79d51d54e23f401f42165f0d513bb2409ce66ba3e83fc000 +4372873eb8b4405a8f5bd88cc2f21d2d60fa4024707869c5fd40d94028ed13b2 +5762cc7924d100d3ce0dd32cfca124ec1fce4cce8c137070a18f05cd73809449 +bcdeb0ac24dcf63679d46aa8b3a4a5d0dbfa9342716619cd3683dfa7a9d6683e +5a7a03ddb47833fdff8935f2f004f58ede6447adce4fda1b734c75c52d16c406 +9428cdf68855946014584f7fe49b03f896e0054cffff5da4728bf4ce1d892052 +701b48b81f58f5ea344e8ebfe13baa70cb43ce4a979d8225ed78417648672e61 +07eb7b31f81cf52b4136288200e640654e83534eadf05301faf2f3a859772c3a +545fc20429119ff00c259aa582af4e3cde1c99769f4e433d9b178edcecf142ad +ffaa6da004a90f53e70048aa8d15a26bfcf7b02ed70bc262d165e99f87ca7424 +0eb98f3d7fc0d4926ae43c8d322bb9eca24a4c45f7dbb0feaa9a900e3521d6b3 +87b52a30acb29c914b06793f19a1efbe3be7d0b8e20cad99d292c315b12376d5 +655121189a833132715762ca7118685814f71aaa08b89e466c7468bca01bd98b +63ec7cc3ac41dd06c5bbda86227afcc1f7796b5f878946c135bfa75a98db1b57 +0f38c49770ae23986ffaedbf6644df58a252c29ac821f4584b96b5ddafa9b3a1 +aa0ef6d17fc1e75916753bc8c799497e1279ec783ea86df307cd54b58c2b3ebb +fd722006d127834b089670e5f1e7ba8bc4a0f6181bb4efbb8f99e4475181449f +2fcb255da4233f7ab097ef0108ba3fc12cda0618870eacb9fe4195dfab182242 +bae0956d09e388d10da2f940186e25c9926886e9806c70105dc75259fb1e5da2 +675e4e114f84862e6b822a10a9d364b1cd13dca3d385b83499c715ecd7598766 +b215910f002358d592fc36d0bd482ee9cc338378ea1566839526a5783f250818 +078b97d73b1d62a1aad3d5a9753bfef23f7b3e6d5bd318c463aa04490b9063a0 +e83e3e68109b182720d2b1c13b498f8f495661c0f4e6455b96a6a92ff806f1cb +3b1c6eac82d9a687b83c572c42df22beae31d1239719186f14ef637fe4e7c7b1 +fe8f4f1bd8367d76d467be95c394a818198d922bcaeeee371fe17e396b27cec5 +f0554778587fc7d78acdf317a8efdfc82c2f57b6411b3ab68f96e3e7cd321a6d +4783435056ab5a0095726435be6885bf2784fb2cbeffc0f8248dcd594d34b21c +98e67de50b6876c3d6d4d4ca7ce0b9013ebe754b104dcfc0719a10cdd9985e19 +2cdf4e88876c2dd4e79e23afa70ab5b4758af32ee87b8415b881ac15c5c3e1bc +d17a5b961efb3a8dc987deded6f28a240d66f004ad05ce1c551e29b45668db2b +305c9b1af5cd5388a0802d80f18e0f4bc8065baf393ffab9a4d674312c2033d2 +7c78b5e9461fb09b9b2caaab70ceb3afa574c89bc620328211c85656f63a8ddd +97c827297327b7980c2fe0acb1c34866aa3c5d7408e257eba3c53de8338bdf96 +cb7ba55fe31bddbf7807148c0a132bdbbe8a2c21a23e11889da13e429914f7f5 +7132936359a0cc65e5993caf52902f76f75d6cb46dd20a3c0be80d45f2c746bf +236733462080fbdc8c5c1dbe9781f45aba74af8033a6ef2bdb16f7b0930d6b6e +7ca7fac8cfb2dfab8c063d961077585d24e8fbb5e0b0bee9c4509b23361dd06a +dd25767833b9a770780b311f608cae7adde000297a2672211f0de8cf7f5fbc62 +78faba25d035fe3a7cc3a4743c0efe1c4a5e9cadf1e05bc7982648d5c9fb2992 +4a9ee1570ba2ab068cce168552299361d62a2bc2c0da48ee94d1cedf1e2d29bb +43864ab5b770a14c98a432ab76c17998904f052a50ef845100533ba5cfb24c84 +da53581ec4f2201ca9fdae76ef365515188ace4cfc939ad6d193413ca7ee225b +0137f4637f09952213be725cc7aec579b2fe85f7c6af18d70c4fda0557567e64 +d430f09aca7bf28984977ba0f5849a5a86729d5640bbe4c30b17ab03262a02bd +8ee077ead7fdaefd37af16007d83714aca07fcf882adc4792583aabb279579df +6741f637cdf8598fb5827528771444b0aa82dd5e00e70edefa7405a1d8a7797b +ef021a53ba68c7ff6780c94f1393d1745ab1fd7c728c6112766a3c2e21dff002 +9e45a5c5668f8b084f22cd6a6cfb056cf0f402a73b2c02118259352eff6d680b +877ce3024c37d532c186f3d4a97603704cc0ddb25cac00aeb4cf601f6fb45655 +8939ab962cb9e16a2400938d226056535ebe5707cf0a8678b54e6e3a103b2eff +0bb7306d7c7c3f523b2aec267a5f1e3f99208d8ec9ab27d658c26f635c2984ab +5a4d214768c6dc775bcc616838159aa10d5bd93cfc8b2d836eae5ed480fb6ddb +24253a62a1b798bfa51b068b6888b76d2233b6fb11794f166254cb3ac8cfb650 +429866dbeb8d09e6d03889899a4e8bfc9a855ea4660f928d0aae8247eec1668c +8e798398d53e52a5684caa59c47cb38c8f1009a8aa12a269a587593874c2dc78 +0ba989078910f3d70211147751e9f7264d6e64f1b05410ed3427bb7d0704443e +f2baeb0fb9e3f1c1c14b178e716feb4644240447a3f02211350e36e1a586a042 +9ab336c6b44c0d2977294e704e8695b6daf079bca033b6bd3485eb7a78582fb9 +373716136c63eadbab3a2577738f553f81135829f9118f4bfe20cd51190bd7c5 +17035ebe97f26b0b58973ea9b5e0d111d9eacf2fa54b223c4f40c139ab891a41 +c7d5ba5338bfd58090ea727c3fd9d0c0217c05798787881d07cefe019518ccdd +a7ad72305f06a98717cda80c5daaafc50e3c6d78d2b5d851beec46731a6c29ed +ddcb9089de5cc2ddb696d3b7de3b67f066527ae22cc1ae6285dd1ad42e0809ee +65812268d28e7105859262e9368a3aa7fd0207d47de5ea5591927f5e568386d3 +a61fcbe872945a272c75384be1e85b26aa094704715f1957de37a2fde2577ba3 +85000d0708fc918d52360cda828cedd17cb7d625155ceb6931a29025b44ec8fc +3678fa08027b20fb9649d07f01484f2fd2e1746f290e32434fcd4d15acf0708b +ee3fe9948d3ae141749b47810558d71d592735c1c86ee375be7413b2cf462660 +0b115cd043ede5612ab895cee0909da8d165408cd5c4c34114ee4d7fab4c37b6 +a31cb829c4bab2dd04b1a7097dec24c6429c13482667116522f94edc99de551c +a693362be4d277e12829bc466e13d09841b5d9af504be4ea59e9c2459eea5ac2 +c678e3fa30cdfc5ab855d56c1ad8374f9769a6b575a1dee5aaaab4f716dcebe0 +0fab8b0b5522294ce3164f8446679fcc7aff5bf49062cea58f5c661a895ae753 +8891536066f8416ff5e357fc34cc34d6b68abe2fb2c540a7123bbf90d2671f65 +90515b96cdd1bd2c1396bc15503caa4ccd3ce28e0361801bdc5da98887b2c39d +b84a0a4de7859c7da394acc497641ece12ad8a7d62ac5f8e6bda0577fe64d581 +35390a37a1570cb25b23b747b236f3f2606a3ff6e487a78069a068e7af13a8e9 +315016ebb2552f644065408a69f1bb6fed50486b2a05d403cd56ec5d3671c9ce +091995d384491b65eeaf33078529238342c32a4b81788c31e62ba0614bafcf9c +3c1cd422c605740a8939487e26bb9233d4cde68afe7a0cadc3aecd739c9c425d +09cb50b4b4be28115ba7fc59b541513cd6fd08039cf40a1f5b90a8bd1263806f +ec35aaa4100ecc05416ece2f061cfdbc321cf3324f1eda91976cabb8d2d9acc9 +b93c575c363fa691e18215311431841de8187a20d6664348c7a8adb06e867d02 +07bd48fe8067168c4412fc80cdba62f8b9209f5407670a26db1f7f5d67c4d227 +90bcd0f1e8640e5f9288c410487290808b88f9421d506386ac95cd959fd1ed07 +778de2f62958ff409d37332aa4ba88c735f2a56e4e746ee98b9667072874b21a +5f98225aeecabf5cc818f3fa54edde178b40a1b1d6e2f900365e2b503346b213 +ddb43a269c5a973d303dbf615ac3caabfc39fe2144681e7cd633056bc77d95a9 +16f54291575aff7a3a4c13eca61a8d261b3a74307aac38b50c0e55222626e717 +db6e122547b3b8a766fb877deeea52ece2e74ba02ca7676f0e037cffaf287340 +c19bbfd9378d8e898225eda3fbf814ad51f976241a7285dbcc62610fe998ebc9 +7dc5961af9d70a6786e8922e7932a539f1606101440c6855f2284eb34a895cae +44637b6a0b1c6386c21f11f2e7ee2adf012ea6ff35314981226505bd4b0ea25d +371be9fb6fc0425d8f374cc51fcb15600ff7a49a4104bc29a369c8336438bd4a +45b7c8fd52577a49acdb394cbbc16c844ad99f85b5af1e8018900d50862d7c7b +045ee4bf7972eb05aa5696a004f3ec9be95c4c14180c7c8098a3a0443c0dfaad +91e9c3a37509b29066af112db77107b9daf2e45e72dcd78660d5d56018cdf1e4 +ca787593c31a2d6ef925e37e4ee77e687e149bf506664975ccbf5fdc20b5c306 +984208ffb9ec2f79e76a7a029cf5981fd2d07176083d7fa0d9fa7b1e6c6da9fe +423bf29011478ba39fbdc7e77ba230ee7b89728c9312602dda359f1ee65ba362 +d1f36657943255d62f0c84fe8a630204a8e64d8f940e9ddaf3c2ddc16fd131c7 +f302a2f9fb65ecccad4616977b2ec724fc6a4c39417962e0de1dcfa69aec8a02 +07179266935b655d20af3d45228ac3796fd2b7b6e0580904a27fe0c8023f4fa0 +fd70e469e5f309690c6ab737e9e0dd1db57fb312362b64ff1955401395b42086 +07e7f9449a8953149f324b4d5785c2a0a4c28eb487fd0bfd65462a1a4a741be1 +b1876330912edefcace1dfacea7628d16a4716d3989e1b31830cbc2bf9fce144 +9f0e80bdcbcfcf477a2c30a72ec227b20a0af16fcb8356bc205f18c6088c1d6d +c579f1dcd23ffa147d72821b7a63fc011d5718fed41b16ea1d83ecd8d2ade289 +54eaa105f82f777b6635c160d0e3d67fbff2080db2a99d489a070d865c39ac9d +2a88ab5fbce010919edc0ab213a09038fac6d3c81a4972e3c5683f49480fa5fe +b8cd3279398028dab63ef7e8e1df85a63f93273f187f8f8619c14ab824c97c3c +70d06fbc0a1b4be1b2b7f11ef469adef71617b304b51c462ab3c6c0e831c9ad3 +cb80c5e0d0fafd079d7f4f245d542ea892c6fe3c3d6d1ac2c92371b7a33aab5a +ab8375b4cae9661c9d314999093b2a04ea1cb671c9f07ecefba615e023cb0f72 +b6eed231ad31b1f4d03e807e56c1e1663986eed65e3ee47a2dd11c1211236973 +4b4607a6570f534debc72ac06dbb2149f9efb793a917b3b604271fb764fab871 +f7aa5a5fcc54533951454fe7afa29cddef96e951aaa9b8eeb3f9b418bd132974 +c601b6fa29471dc34814fc81a1e1a5155951c12022aadce5826302220b18dfc3 +d30b2277d08e7cc7a87bf1b8ec4507b43cefb117119d86de3be51bf870390ea3 +d8daa3f74ccd3712d1c00261e853dc3078dd411189872a50d85d58cee8fffb1f +0288029490412f3e58f83dada08fa695b18efd0a4f289705385a411fcb2d7a47 +ffe38977fce18188c0043c448d27e160ee752be0d44d0f83b6bf642c694aa530 +e223aefa3fdb17ee7aeaba75b9a86d7cb0f50ad4d5ce68d4ed48cb0c188f9dc4 +34548b48403078f63079bce8529f910ab280ebcae7df9f824dca756f9d647dc4 +d42da412230a6231307e7495424f98c9f129cc4a326a3dd8e476e18d666f94fe +53edc87e47f6d84abb643ff3b4084437da26b4a298f819f4b6823eddac11bc85 +b9f5c5d0aa1e7b0ddca82c8e01944b3ea48978c1b8f4ff47779a5523f600d33b +896b659c31f4f6f7decbae0fe1f83dde18f77f53db140a36b0f6f4b883ebcbb2 +b6d353bf2ca6102173b6dfba0f452d011f6cf7d661a470c3c5dd189c1e83fc4b +9372ed67ef4ed9a5b98f85c8d73d490133b7362ab976a385cec705a2eb89d7f3 +2fbd60c08b86a30219aa2988f79e6386062be839c1f9d30affde82cade3494ee +13041755e76cc07ccb3a4a701461290b5b79728eddfc63b2ed5cd4bbe0c4c365 +75488d590258ce2084f898d7c58b3f65b09dea2f8d4f71e80b2a2f8f31d5fcef +7a7744b64d7baa701e473b85c65814b0a93e3ffbd7b2af85e00ffbfab9bb7766 +f444709a47902c919bd2a4becdce07b64053aea1058e26024b46153d6bb92c0b +59861b2ddaf3d38dbea5bfedcc49938eb98188a3c4dceefa1f308559f7712ccf +288219c6a3d4eefb81a2c5f154990fd8f09713a0531017d74b47e1f97aa6f0f3 +92ce5bb7475c676247d57bb14ff676f11a4b5b564ac26bfa9d85c9cb0414fafb +c35b46eacf74dd964fbddab28fd7bb304b9bf4e12cd15b3bbb163dd66e89f24e +6485c6ea63365d29907f6ba96d313f9b2ab7d175d549f4235653ef979a5c63cb +6ee50cc333387a0ed88d30d9fd2197d31a0894ed0a47b15d92dca463a8c84b3a +986d396e6530b2e9ba127bb5662ca948a8f0c563b9c868644b8d01064db6aa72 +090dda0521e6d778192a8c6d4d4639e80e309194cb76fc5d4615f396dd85b06f +71dfc7f39a259e322c5e7d28646310eac92e5f6afdd6071b21e6664e1cdd3848 +c864ce0e380fdc48b251d52b5094ead64d380b6818e2c8b1a4eb8f9c18adde6d +6e4ce1def2ae8f2649f1e5aaa05720a358a74e181568a10b536f68b7a0292787 +12c34acfa5bbafc4aa3eaa4d8ebb26e20bb00d228b4eac4a163e0b72899874a3 +f85e82c396d9e2891d8e0d6e5571d4ef116879cd2f5485dde4b9d40f638a3a95 +de5ddd14adbe72f5bbadf0d9950a195f64fd3209c6d47b46b7708f855da96cb5 +e9e1260f6699d945a611a7ea348db3c86be4b32fc2687f15c4c86957018d428d +f6244a1fb6a99122bf89d7add01c80f2b2bb2c7168b02c400bfc98d65394948d +c736741f9e0244fe096571f087c5d6d7d022c726a4cecf37cf2ddeb1e9d77098 +60c5d43121bc2e4b72a2d895a5ad2f449196aefe8c01784323de3804363b88c9 +1c86124f431e6dd0744c3d073fff4bbc2b98bdef713bdefc2da4e0e22eda76d0 +34424ce13529bc04c078dfbf8b3efd96cf662c4e151f15d4f8ea52641689d4a0 +5f7c9ec4efa5119db9e3a61e4a669c29348a1e71382c093499cd35d7d1227a5f +5bc3db96823c167100074c70040a55142148196567c20c7eecbb25ed6e31f563 +9add24d52aceea4b88114eb6dba9461c2e5262fb9529e9f6f0bde20d3e209a8f +0c9fd81b99b00d268f764593baa894f7ae50634766c922f751ed183aacaec03d +b7d96d012cd0d111904245be9537edb0f8769ad1a8abbd8d1cbbe5e79c53c00d +983c69d8865e93b6495a2f15ad9ab1da7503bd5b85ebe27aba01f71e56482be9 +d4342ac2562d8e6d1e4146447561ef5068d17306d66a52fa41644897a9b161c8 +5dd4161aa3d956e7961aa8020467e76a833e01c974e32aa2b8cf27d62fc81ee4 +d74649bf9530306481f430a539a95dcc2502f712947f6a68dda00589ef404132 +1dbc8b94afd827bbd5f77820353fddec5d98fdd256e858581054789781ab090a +816e65ad3dc4a68b4ef2356e7cd2f906a859dad680d649457bae159f91805d52 +fb6dcfa5d0ac6373fa8325a817563bc9ed89a17d8cdee9b7516f38908e426f05 +1517eec7941cbadb22390e3e2e17d62ca67f37d01377c5a1e09bef5b795b4446 +54b383193351e05ed8bbd8b0b138cf62a428c78744582eec90a41c3bd44a4e73 +c9b32ea4936c211269ba5f883d45b16681f8afa0646a4031ef69cf4936305336 +5758f50534e6974342f4d232b5024dba0eb297e3aa3e9ef0935bd47998370420 +ead844c7e336288356715ceb8cb8492ecdc8fd8f1183360fa32850051442f4d7 +c0250d658c633de21048f4676a1875df6a8a61f0fc7c25dd5acd0220798ca70e +f09a72b19595172afb9085b9a5971ad1b9a3a2508884a3bce88c984f58389620 +95584866c59f89120c7f491cde35b9d179f11db0d3c30370138852050cf14b18 +c06dadc218335bb465dd88304f1c1cd11062ca72649491fdc62d571c082cc816 +261444906d399760159f6b1e6df4b42a7a84750aa61c034b11a6e7eddcdeb54d +e1f5151042a8e9f6a23a81a235fbc3908a85a6b05d8162bbdf3a672715b6fcce +554e98df1f4583e03e456469890f07f83bc0a8954fc5edc7898f21f6917d30fa +36faee98f622ef313cc8431931d83d271cef880dba07b832a01384994e964233 +f2e29de305c3863191f877dfba44214da68bdbfbde1e3b8b9659d7800df5bd19 +28bb1425a51abc317efdda09d29e04ec8b17bd3b78085595120b58fb421916c6 +af4b92776ef8a8211cc376a37566422bf2e2a840be57a357ab9b9adaa20600d5 +c49f228d2f7bb606fcfa867342884fcd426a72ca4c5d09612bbe26a2d9d3c8fe +15a55e095b6705f2a2f2a00c9f1cbae16b91e13798b96d5ae66b5a8d1cd751cc +9747bd951a55ec3fcc11f58f8afb40913166ab60a01b697507fe0753d085e5a8 +8153cfcbb70e29b7073ab33f7be2b6bd070ed974d0cfe4d41f7f57f05cef38c4 +251aa826e4a1d37459212c1b411b6b51faa564da0ff48ee6402b3c9fb77d502f +61feeb32602da2b5fa880c537f60e1394571392c3fba4d110ff47a42d923c153 +f7a83bc1ffe67cd11ff1a763950f2d7b6d9575f45562c3a9de6d4ebf59482d7a +716f39eca97fd68be71aa73987d570ce2ddf953c6ec97cbb76b147ceb8973564 +7ee159434e3af6588f47ff9722b7e90f4d9fd0c5b9e9f3a14f9bfba60ca6556b +0473dc073a961731d322161500e15ada373d503552c0b76fc6576088e630cf29 +b9b0c82cb348259edd482520a84965a53cd673138aa57c32e41fcf50fe24a447 +4ed23401f43f5206de7fb3b6d1750223115919d85b54eae8298a19212e5c66e0 +c05c6dd7d7f8dd877123205b7e391a189e11fc30fdc6532fca87770985b357a4 +fbf9c5d261a4c998e2fe8eb96e27dac9daf1d3f0ec7422a85d9c7b241857209c +f372c03c1100d8ebf3ce4ab3c0efc1f979c5999bac6d4abb6abab1d059c53f7e +34f972f56df329bdb8485e39cc98cbf20ccb70a2a3cfdad4deb3267578b02f0b +0340f42bac749465951198d2ea2bf7995852a50b5876597e55e1a1977b9e2f0b +8a8fb0f03839dcf6bd5542827208d443ed4b9c0145e4522274a02e4420f738e7 +962c6d9fee17520ecf6d6772e5e77d6ed395304699dd65d7a610d793e38ce3dc +e461843d5af1e27bed5652bb84d5e85622b48bec72e1622ab11506ade702cb2e +8ca3ffb8add5c2470207bed74f2b34faf8cb61dd5e0bf54f2b8e1c7ea1fee81e +0e0a16747443630b04990ee1be9db5764a580222b27332072e74a60ab7b789da +aee741eb538e3ac7e38b333c7f6dadcad5b9383ab433359862dcb30ba53a413b +5e9947eb637e78eedc4b8b17cec6b82f4cb8d2d71a37921e69d428723823ec95 +0f683a6bfb55d22dfb161e1d6b6db49dacece6e43ad2c51a70e6342a85169fde +f8060d7da7e20b4db176bb862c29749077d7104bcb313e5c886a01cb16f11f62 +984c5f853516c1419df929d29eaf4490a3aebd24358eac006a594afcb839778f +d0925e2daabe74c7ddcce9a4f454633b52b445fea99105fb0699485956fc737f +25625d53dcf0b9e2386bbf0900e0e011e8adfe162d5876a850a6507512690d2d +d1f00992f4dbbca2c63cd70b16dce15d1c128b9d6881f3f7ffeb68d7174ae769 +3b6f5e02523c7f046de294e18255b689d2ef529e6dfe489956afc909284a4d43 +b0ca1d9f8b9be4e4da535522cd9b6e64841c81138ee358ef6768e7f78af8033a +6885457da6ba42cb4bdd4f35233b8e5ac02b7d8fbf2092bb8ce890decb6e99ca +152d2aa56c5ab4179ba7936c74dd6c342a392131fb96c14c3b24d9f0e4d8b1cb +862ea5e7b13e204c914bf95f55ff32e4308fe5b2949fa454560e8dec474ef52b +65bbbed017d5eaed0d89a3c86fc63bf01d3a6a10a5fe389b1af013ebcbff2a17 +7f6e854dfec5dbf19d4e977a07a42287a2dbd42a78e589a002cca47eb865bd5e +601a98bb3a8572f20ef1c0a2b3500f615b1b8f9b04215f91acec454312ec1dce +08f413b9e2ddddcfd2bd85125dc5a043a45c0b9d3c86ac30b21f34cae2d347a1 +e93586eb95fdd3d1db7157b21b7ed1702d31876a1cfce58d619a66df8ccc3116 +319854a57965fe23d2d2d7e02f4d95d810e8a13d29872274fa6f48b7333b743c +7af418c1fdaf467acd5483a47c5e99a7bd81e18ef98763ecc08820176a109145 +af183870faf171a3c24f603654896e2d1b0ac6224cfc765bf747e194cd18c740 +6c61fd10b6b7dce9c0a6577a87ae840e88f99cbf1c1d6cc83623d2fe80bd710c +ec79256f89f26b45f75281d3de9636a134f63e244df4a623c63a895fe66e1464 +1959655f235bd056d65e3a50f55a041447594422eeffacce6af7cc9768f72158 +18ed408e47358ad45fce20e4848cc38f70943755e9233ac711e663f2c7d77b46 +c878e70669ad30ed18b6f832e4d7f54a23c837ed440ae97883348a0b5fe95232 +779187e429b6f855ed7cffccc8d6784d8bcd92548e3257ac87231c36f119ddfb +f28ab8dc8b253a1fa09f016887fc29b6659b40bf3dd9db6ead8c8c3e504b10f8 +37dac82a816e06722397867df32fa25da0713e92ede9e4d41577ef58ac70b402 +a4427a7c86f7c1d7f378b62db43ca4bc3a8669f6e924d719f18799d1a9e5969d +76bde4fc976074f2d623721d38e3f5c73428d6824049dea9416a450be02dcb55 +908e37faf4a56a36519311ddb3d1cb66837c2964a2dd0d34a23dde43eb30c88d +b6ea541956b904db911d009f0b209bfdc139f48878c811ec38a21692f9b866c0 +a59d9d736d429de0db4b0526463d0348157019a262b2c3e0bf54095d06110593 +3646fcd24134d6b3a2a906a891187692967e93f69a54ff3ab8050418585ed1f5 +9822b134f8841589fe146d05ab00c8e22651c43723216c053851a5d1f9bdfaf8 +59c55523acf1e394d27500a1cdd551c773c9a6d7b3882f31f29c281fb6c6250d +8a1c3c8dd110c1910014da6fd1d57b8ae102b261fb65a3019bd75e81ccebde3f +3e23764e9a5dbe640ca98585da2a4af9de5a5045598a905ee7b82bbaabdd0d92 +bb5351d3a0b3071e8666fce45202af6000790c1c1d0a5bf0c4623b9815b8d3b7 +7c39970a509db6a4a0fface38a60e2dccab7f5b7ad1c0f42a74da16147589a2d +3dadde9bb1a63a4047ea20dde1109f8856bb81184f4256994b5005d654e49086 +7bb8396fc8d807ebdefbb74e9894bf0ec793699f0e68263885581a17c87d7082 +371d3d4884b50e1295c517fc56b91ebb6b4c23b150d542cd0768924232a5ac00 +8a98f5ce9adc8dd3e65f085b35640919767237d0f9703cbd691a987a0aa0444a +5ea0d887837482a7248865cd78b6f665301cb67cceb1f689198821227c1acd81 +3d0a50674832bd33b2672756d5186c89528180e190d1525c3e806caddc1e4157 +46055910cee4f60f40b1065f435be8a39eb454d88f5bc45ba818e5b006e5a38d +29974f68ee1962448f7a9fd83c7f107c7788eb8975dedee759a2bbca40c811b9 +d857cf8e510376d48abd60567f307d6ec471f99b03cc7b5e8140dc0450af3832 +242a353515b5b347774f32b8b6c033adc43b2bf7185480e47c868308f3906bee +e44131b11b2b14e77f33686307842337cd1f9695491bbbdf271b5345c44d6a75 +58c59d6d5bf8b24af38248368644e331a88cf73d0eba9dfa6f80f11af0293bb8 +40d9755540afd18fb03e0b26b6432277434166123d80044808f6f1115ca55b87 +60f82520eb81166f8363b150bac7f45983d1f4ea0b503fa8d041261e2fd14caa +c7db8e5b1bdb04a65cbb660526d8b21eeff68105486474803acc96e7b882bc9f +5a1d5f1e333b2b2aacf4272a05a41aea04b2c18a82b1c66a40753a3690aef089 +b9fe83dd0d86fb7b7045f041b690928b7b2b67162a1f5564117652fa7899a444 +bccc231189c60ceb72abb4038d7d0ab5a027bea7ee75542416b12a16ee00900c +db94b2c89b2345d209cd68307e101cd06dbb79e76c725dc7180becca0eab9f8c +ae1714c57bee7e7f54c84e7a2ab9a2b1ddd4d160cb4825b69c1bf5ee26b18391 +acd6fab3f890d8cbff5ba3666b8d7853652da2bd5db79ad8de358e55a5e02270 +e1a2d09adfed75088a71593ff0f54d5c527518cc767584e4380b8fce58b04ca2 +05a69ee280da655169029a16a3df3b86fc4ab635300397767c7d9ec3b3fbd60a +bbf51ad4a3cb348539fb9b7eb072ece9afb2b3c00e2b91bb40a82d2ddfa58e9d +f40699038c9a7bf930a83996afe9580c5338405108ac04fd713bb22ca2024475 +f540fe14290ab1818d9bb19483aba2f39a958ea417ec73792233ab538cb70e0a +455c6b7e0bc86eab1df73eec1e16a6f95cd23b8f695fd2b919dd282bd1129baa +93fb68080d90c29776bf27fa42dc0721e380ecf88286484417664e41c5b257ca +bd4835c1d64318507de5dc2f1060644b2b125f17aff1b95a37b9b667906d48c0 +9fa7d875d59cb6f7fef2e37ec418540f8f13c2d70cbe9566299dfb80c06df99e +b045dd3baefd87b24316700fa1c9f72157b927052cda3fd2b480df750298d645 +7c412ca39f6325d66c77be38bd8e491d8f710c5f91f432e13f89056940029532 +db065329782579b79d9f6ba60552dbd6a302e628f75e0d3582d25eb03e7deb33 +54790b02521553eb0c286cb415cde225b5d65cb79db060d13afe862d5885b567 +2430481620475f50546ac782370e3ea1c95600a524d288b5d4028be7cfbea855 +528953e607721b7488f7d7f9dd5ad14332b32bbef72240036a3e1646fe5418a7 +1fd206ad3fc75b7dcd9813caf5d29ddbb12d7ff94e37bccd72ba1086dc431b5b +713ed14ab7e9f1bff7dddfa9bf22624e4caf3cc0d4194f0b6a36b1c67e43f117 +4bb23054ed01209d28bc55224028648a4a3073d56835afa9e004fb999372f29a +d76db663c2a29b5638567058904a4933be88e75ca1f365739a65c27bdc195e7e +09cfb2426fa829ca3859306b556d1bfadb5d9493c66e34dd7f63583e4532a075 +532cee2d8976f785d7909093787e8aa5fc7912ca8fa89d346634ef71f98c9fa3 +cdfd931ccc699caa314c402ebcd6bbcfcd3ef7ede19e6c8b5ea9bbe73ae35b72 +e214974b2bbb26a115750327d20732b6f6795c25e4c0b1a63b5054383d428d2b +85ac1f719ce35a18de6f4753cb615aec6212a272d89b3750863536fcf5f791db +3b7b39a66ebbe9fb1876bb089ec2cba092d291aac88f09c720aac4dd8fdc22d6 +4367c4c5330d4e0ed7d454728af2b4801618edada4fa3e5357fb91458dc13288 +7650401bbca16d73bea8cd5127797f92c8b5314663e02cefabd1edd89e4486ba +4d371138ea6a07ce358d31bc9ecae64f409546e9101fff7ec710b45f910510aa +b51eb2374992009a28262a370d42109a0aa5ebbc16d2ec5d58e0a5e7e6f80a02 +5cf8a581f3bbf98752edf64feba585fbeb56b27a79384a22c868693c05084423 +f7cd396cb48e68f76bab6512f76da2772f3d137881ebaf1d3ca6e1c98d54732a +fc24bfe29efcd703c489dd8dcc69da4b86b5650788bfeab8bf66c5c1df7697af +ab33d0c14caf16b9810ea74c32ccb5bbac2613c6a3d946436ccf934a20b81cfe +5e712765d1983bd77cc45612a31c893a5583238c944f91f2d6d1069386621108 +108b0e65b4f6d76bfd0e1158005e8ba53ab48e865e9f6d07835d4e9e124b01b6 +41baaa6cff413e7ef8eed73f1cccaef55a87d71afb309ba162d3e15dda6f04da +2de8db583beabac1e5680df43bc063095de043b2ad4c8600ef63a8090b64785e +5288892b63a87d8c805d1000b6524109a41e05e517e07f0a76466125650b3d97 +008057de3d3380b0c352e70ac04fcc21108e619a707fbf7f59869cc9a2d571c9 +f77114250c1c41dcd527323edb2fb883dabf371dccf42389a260fbf53464bd24 +d5ae5be48163f142733b205e110d77de5cc07117d7d6d347cc8b035fa387b249 +fde3beeeac843c89bbb871114f5313437a784c051e021da4f80adb2d5e392f0e +46068df67f46afeca052378d97597f21c39db6a2ca7c10c57421499da8d5bdec +128109432f86a0ce63ca2be7fd64e29e8392bdd0013d4990884f7cf49e7b88ad +846af39a3aa1ec3c85f21db07952d1b45cfc20d6848536b63d2572f44ff718ad +c2cfacaf395cc64b34290bf19a19d756b38142c6a7471ab436c6b81abed86fbf +8553dd8d5a052f4d53d6124ea4ddf235f4a792f8aa485fb068d39c682eda37c3 +2fcc58da51f74c24bac8db5cf825407f88daba78f41d8ba078fceb0236c2deff +e61cc0abbdbec3bfa099b49cd1218dbff85cc705730ea545cdff4421ee5a5355 +9ccea2cf6257b757e4c6b853a476f0c97ece80a41fee4994b05eec575f87bba6 +9066eceb28ac92e1f4483f8744ede06a05ea038565096458785453b2462d103f +300aff3783f7a2ee1a27cb223e7145b6b74fb5a95a5445b5800d0b7e4451be83 +8a7679e3a29c9bd79be0ce900f8cede4f5fbfcf46b6354268087bb020914f246 +fe06d18cc7e9cb1003bc96fb5961043d919c9298e61dc5c7cb39886e65939fc9 +037e0484b62d1ee35842b3ddb879a7fe175f07451c4456361bb646e5dd87ad6d +ded8388fa78806f8c993bf16f539a4526503d8baf83d1f0a594db7fb1a11e7da +d2f9db98c5d8206ea4a44ed134d784b05ac0ca245b2a5adbd93efa4a566e93c4 +84fac7ef0ad46254101b308dc4e39c549942af85c96a5dd31e5d9a99149f49ff +99cfc5783d2cf9c320640a5029bbd61c86d4a6ae9fee690c5ac5e92d6b07aea0 +31c6110df41e63bd7039d6ba8ea9ef33beb3cdb415f4497245606963da60194a +8383663ba3f3be2d6e0b4865ddddb484f625beb57eadfc694125ee35480efadd +70248037bf40187f54cb53a51fd0a916d0b1a54311f43cb39856b5e4e17ddf0e +54466ad34cdbed8fee17c87f00bfe4832eea2acaf9e93aa5091b62febfba9b01 +5960618d7135ad546cf4d00c8c725c6da697406891b75361c81cfc2d13a03836 +8f2bc045495a1d24628606990f351b6f6f197ec7b52169495bc0047335c4a3d6 +1a7aaa63fba1aca730ba1fa90ca04a0fab27b145b2dd0b4c03f01c79bb77758b +fa630d02a5200c48499964fdac705d1f6b0aaddc58b47a35077f5ee2fbcab957 +919e5bf614a1468207592bfc36bdd62ea9389142350d0835243f485c99a49ee0 +b6fce33e9f1ca586f704d27c59621206abe70ac31608ca67a512dd60f07510cc +e0ab7715f3a662f824a011ec47e60f84664e474a255712aad0bbb1c7c1488a49 +0a75447e9feaba451fcd1106d7da535ad82757494620a195b2f0b1622c62351d +89b62f4f9bb812fed256952928d864147176ff0e03bdd2ba75977cbd0b5ec371 +4478c47d97601280566d937243a0c8b0b33450773897ed5535bea6d7eafd5413 +5c4a4976ee0153f4eb913aed8a1497b743e5e1ace625936b3da74119b49bb536 +1a6fefc0eb959394bd745cea919b1e62c8cac77754c59b725a26c606a7c5b3c1 +45fa3e24e5fd96e230497a0178f21cdd53c733a6bf29605879f61cd4b7ad1117 +1412b03ef42e4f8261df1544138958b3e96ac45e3a45c1bbd0a6d3f1fc4df057 +d0013bd3dea861453e54eb4721124ee277fa0eed1bdb6ca37e30dff04e91b88f +308edd43cb7dd7e9722e57dcc7f3633209505409a1f98a133874895e00b32c01 +85baefdb0b4e97f75488ea0f76424d9196a2437fc9f67fe2933ff34232768eac +722a84a7fc52fdf3ad248c69fd7d4c45fc33ffc6a04b562ce367d96b03c0ff8d +75174dbdc09bdb35a9f4840a6adc555f42d20bf5e2d3da34a991f63648ebe86f +3e155514afb82c1b3e37fcdcf8c594acf65fdfcf5965f42cb35543ffb1a1e40f +622e6ed20b4979a37835cf08e40b8bcb015db8eb1a044dced8f6bf6360d0fa20 +e656d90efbf461da451852f58439db9281f60edf5de4af016f8715eee83eb666 +d48784d39764e33008e5d9195ef62439f3af1b989bd952fe0a0d30a85708bb1b +a353efd6594a3ca201115b3659dc1a80619f155c6649f944dfa3e543971f8dd2 +b0a30afe77658ab82e630bcd4fcc33af8810da1360730055255aacc77fbe09dd +9b13d44a41e0a1d3789d94bd78494a33ae60b9ad7290e4d1ed6924820140e2a8 +ae5137fe7c2570af124263b99d11ece45cf80a6e11f56dc6d77e50fab50608fa +09eb1520f22ec16571e92a193f1699f81e352bcd9e0c838a8c1d5bfe80d76957 +7129c9c46fda7235dcc34f604171a75f069f9e00adf56e84ab1f74f093bb6995 +743f9e027fc4d9e6bcd647b2ec7f0d7af2e2efd2dbbb68c83ceb1c760fa71ed5 +0394d38963fdcbf3891934a4cbdab80107778a63f1101017becd233ba0c2e602 +e9075c5e509f2ace7b7d5c346dfb58d0ba3e005e38ea7428dfd0100b7e1fddb2 +7fe8cca96b04f9b349693acba904d44e143e03e82d16158beb36dfa21f57a039 +d6bb9bdd1a787fb9df968004388f8655e9d8b6f435117836bc910697aa1737d0 +55c73fcf23f8b56b58b09195b7cbff574a2418b1ab9f74dc607066fcb798b880 +5fb0d761cd5cca51f9ff0d2e67cabdb026f2a9b292fa472b97ab89af60cba974 +71fdef1417b14e6ff5440867aced2ff9837c1cd1e1aea23bc3cf3444e35f7cb5 +97c2f8d5576ffeaa83e06a9e6383e9225ffe0db4b1575e1f87f28b373716b668 +4f3e9e694d6d56495d21673d165cfae5c6ca112d16a40247216da4debabb7e8d +34fcb858707d82cb8868dcd8e956d1ddf8bbf6cd57c293f8e3427f14c99e910d +a7bef26c09e31ca66550496574c0c8f70e7efc9f74bb45fb1ff13b31d8982b44 +038c1218b874ac95ab907d01bca78f00fdec53773064be453a82efa3ce336c46 +69345e172763413f021d75570ddb0a16c806e444d8b9895af997ee7425d2ae29 +1d57d9aa91a5d9e992a7275381ac332a2396900e4d821f69a349d48a5197f98f +3534ab2a47926edacfc5281c09ea8ddff7ccbdec5b95857c9b2d82829376bec9 +79a6ed53c42f6be0c80a9fe6b90c06624a29adc0e268241e145b18dea609cf8e +e79720d031691f5912c7b4c1fd4358a6ed07abe23973f5b296ea3e36d8081d64 +50835e84fe95a56764117785baf8b08ac40dcf7453f4c67100445ea6a77ab755 +e3b4882dd0a9d74332f72322d36ab9dbf2199028eb6c6d0f43e79065e0fa47a7 +68bfe8609fe6ad82e7a1fadbe827d86ab6f3db8d0650c31e80c7b5ae24c703da +104ebb4cbf0d63b0248ac1c47a8ef14a095d902bb390c48760ba7da6fe56fb44 +df02ee166b522a550efab2006e814f4053d0f21f3ee790ca6d17e8ea5ae31083 +5889c2ca6b3fcd267131d33f3f71bbaa5d414479fd6c9e84ae481defa4eacf99 +93a6fe4ff57f5e09fb99b8fce71b958080971e61bf0ccbdd2a86448782aa9871 +0cb686013548fb3f691436501545d2ddb46a3424b643590da9b3069d76eefeda +946b6ae4a531f7d8b3bf98ab35d37ca5b36729548c06d230b597ab2cfd12dd01 +7fd2398830db4b4f2dd298e945659a564470b22656e28a2defb63714b5dcec1a +5cca4f9f3a07077c87c06bcc145edea8424d9f44ef8e73fa98fd216cf3fd8408 +52ec5988a7749f0d6923f6c0ef50e9b2a7a61c006316b49c51a0127004566d81 +066e7f1ed02f5f570cef07df070ee98d836ad6048fa77c8888dadea64b72d4ef +1404634b59cb590e5113d384e43ddcea459dec60c3f1cbec10e33100bc7eb8bc +7e339177105ad6a478ed9e096477601347e97c3916a3981920b16bf4d64d8fb8 +694341db499b9ca3cf34e140d7db4d6c5c291f100c2d419752e89ba7fac3e8f7 +5b4a63616197bcacae3e0170b7467670f67acd1acab2e0502f02f416b851a5cf +6f83c3cd9992dc925b388cf75b423edf1d5d234a341adf12cff88bec1da95ad5 +dcff92b3cca7418cc86ab1f1969ea85824d243bc5cf4fafd8f426556dd9017ee +0242046f909acaed3ff2a91564303d13c8df20ff52e25e60cb7168902daac679 +b794ef58e0ec9a5b5a97a1143b09157c97f9946d98077de28e8908b84f73a018 +e0c3bc6f4a6ee088edde6f1e0f568799d86765d843965381467a99c8b91632e5 +eed53fdeb8673bd6c9b3757773febbf86ee428d4b386985e810db8124f5bf974 +df99afad632f03e338642c9312787ac47a9d2f4a10fc5399b6ae9029a0336d89 +2aabb090e581b749473ff20815277881f985146a028f6dfb0acd19954a0bdbb8 +b4ed1a65d3b9866dac29c6aa8aed39d956433ba649f283aaea848f6cf8f96268 +cc669613981e4705d9220970608e67028de79d0b3668b4a3db70f61c9fc01078 +37ec51eab70d92a017d96cd8893eccbe23081dafeaf81ca2c9d45d38cf554c84 +99a6b479ebfbd96be8f7f4599b10dd45b4ac860ea6aa410f161df2b33c08586d +87218a790509800164b41e3cd0a7d30d9584813c42fe3935ee56c6f22cde9fd4 +05615ab2abac9dfcac550140c4540d6dff9ed67f530570744d0be3e56041e1d8 +ceb5a6925b3bc52c206f6dd87f2c4de70ec19487d2ddaf20ef6b26fcd60631ba +b1677d0ab695dd68b2a3b27a70b0b48fcc872991bd0b9688a966e72239b58d3b +2e58862eb4db390e169100e539c238299449bda356a0968c866ba0e0bf3b88f7 +6cfd39fe10ae30eb6ca7149b41e412cf556969b4c816a1945c0878e2a79e7ece +7e52754c8dfa755d79fb15e5576a8846307527460b6d9182154e23b84ea9d443 +7fcbb470e9833d2f3f90aa88d0e44b175a9358ad0d846ae6744c4b69a5e24692 +eb37b5b9678729be88cb9f84d2773ba99b29ad2056420328116840ccb475ab76 +27bc7efd2dbe6dcdf596e94c09aa959f2d43d48a80ce2faa7c30be324d18b8f8 +70f77be72199e931d5d5f3acf48ff8060e168b48d066b2354fea58713c1a5367 +330c9491fdb6fe9654a8fd66803fdb1990bcf5bf2d8665980d162f1be17663f6 +857563371b1056144cf54ad30f1fae5707f7bbe87fae41d2c683e8a02931de24 +29e66f35188ff3594f37f7ec5021e8ccf00248be459f80ef9a46d0344e153789 +69729194731a49135ae771aac663c0037db67200c9677bf1f39abbbc54802741 +23d36a35f128c1c35dfac1a29a9c1a488f6d7df23933488c858667bfe24948db +86bd0087f94b0c6325a403de4a434bf767c137f248c85257a72e39b51351d401 +8b530913ea8be8bfbeb039233bc3432db0b61aa281a0ce2f01b0399b066fde7e +abcafdd46c4d6bcf2924de2ed3972c01ae0213dc1553928895c2b541b1b254e7 +a1ae46069a110c55de12f66358815cfb07cf0de59865be85f1a8f2b61d0ebae2 +7d341bdc37eab342af148a05d0fa415b86cda706746c75e0fb71a610e455a64a +d8515705ec8d265f3e4ed9c0203744c86a1fe55ff52b6c8f4ba71e0a26651cd5 +fc38d93b2370b1e38c29343c96dd9b3d4a39b78f7bc7f2eed735f46bb46f96b1 +becbcaa7cd99ef23d16bcb3f38a605dbb908b28b1039d2ea1fc5d7afc11f1aa3 +798b407ec236421ccca18fc1f27a12d7e0b253039827104461c51ccb2283c9e2 +6fcb819b656a1aaf1b29821bcecc50b911d1a05330c43a0c6025ec90dc134042 +77ad9424c2d2e642a1223dc74ff16f70b54c0ff578157f0c701279facaeb2563 +cb3855872d3933c0a7be7b633e7e3ef053e1213e4cd7e1c57804eccd8026e581 +beb4c2fc59cacb4c1e7696d165316d7f3391ede443873c7ac48277e47eebc64e +3023d06ffccb05a1a71b64b7da4ce1b6256c4970b179c91e1b5d6ade81c151d4 +dc3cccff1d6ebd118285d56ff7631f2c7e2b89cd70b2ef7a3894366fd177c06a +39e3971747f671898a0109008e3190b0aef909597ffe91d7c7c2069b5680298e +eee7c04e58cd328c1bafac2a8bcb63f6d9a6a56f29f3551ce1d2512b5885d1b7 +8397e464b5f81f4803eebfc0cc632fb653f52fc7ebe2f64ab5ce16e840bd0577 +cdfa24a928e2888ef6171e43aedaf88616344cd64b3a2c0873dbbf8eb1fdc08c +cd86f324775672bc550241d139bdeca9e6ee36d49fbb117eb5eb456d99258067 +94ba27cc50585d2544b2f1f16c19ba41b0cb308c4f50039a843e66b20e04db1e +b0e99faa3556d8e95f4526f0a105d4b761df415148051c604077ce2025732152 +e6db72d810bb8d81c733ba78c0deb8799abaa20d3d77152b2dd109d70efb2bdd +7f17c1b79bcecf6b30cf0f852ac61197e0f601d2602205bc37708fb4306a782b +1f2a39bb03554a1d10100221f99ccb45b538bf2a94ddf8c4e0b10c62f4af712c +a44387b0038bf2474dbd2242c735db0d79246d73a43137d535eee525502ee440 +9021ae2414e9f443740cdacdaabcfaa0084a60ac34303dd559269eb088e2925c +632bdaae44dae0ae57f3080be448c56aa549b620d1729b6cc2974e571a5697b0 +4ff3e6f6542c4fcb2abc9261d97d6e6e60538d69b36c8189491a978a7d00b9b6 +3e62a1f51d6002e12d0604d53af0188e565ceec8ba572bfde122249dacc9d9d7 +75047c69ef0485adf9f0dcec0f0c926ab91b551ebd9b8f4aa03817c25ca92395 +518304be94b5d56bbdb833cee92c32b792c6a31f37448b319880e4cac35d2edf +dff530d0f7773e5148d41ae56e02633781cb2abb15ec2d94ae52d3c8fcfd3097 +45d95f67b560165f57393a42fc7474b5284c7cc0b893f84f8733768264ffa8dd +0bed83d99c035bd1a83597f0d614797c583ec8c5b96b9739f304edfe1e00ab42 +38f353a82e7c71d74877d8519add9b8c78f611174599512f11c22c10cb360307 +b262f1f78c7f9a85f1fd21e94d72abd413650ea6a69b057e021ada9787d06185 +c57c0947f9a2a81822054e855f802160649e25ddc82969d94c052c289f35bb57 +c77de5dfc63716c5b0a87bc7ed859663c457f080089e3d729b9bb1299050788a +79ada19db21011b01a47b278615be5359e71ecec7c06a67c4943e6106e152824 +ccb1fd39c485e90efebb1b2192d93c8bc52e356e51e5fc805cd7e43543e9c500 +d0ac85b7230350f9f403340a16bbdbbc3bdf0f7a571aaec4d6fdbecb288c210f +b7c244f1908305a0b1632a8123001175e36124b543ff92c16576d373b9bdece7 +67889128ffa3497ff846f8befaf5de3b7c339f049adc9116c9a7bb8bae435798 +08dca2d9c151d9329c345919930e8437054501bba38c2bd5102a20e4291203f6 +eece2f70bff3df08aeb8ddf1806e9657ee4a5e3fd5a8fd979d90d45734f14f71 +5d339ac91b7fa18a17be81583c08544a8a32729c17975014d629b139c0b3c236 +bc9a99231ffb339b7761a2586eac564be734ef37992cec6c06c2c93de2b340fb +3a27a52dabe69d9178d9a544430cff229335edd6f817bc52c690917fbf322852 +d4a7a709a593704568cf142b45eff164d817880cc93782c223247c65fa99aca3 +5c66a26093f9ffbc25ca9b3cf6b8ba478695c68212e80e3868a0db1a1c84bcdc +df05fe054733a1b794ed1cc483a57b97ca2e97fcb1ceb9cc2ae7d5e0e064cc8e +01cc628180359749622ac1cfbb57d51b25974ecb15dc83f99dbfba2d779adaf9 +6a9307bf3faef5d2ba5135a15d13c4215570e772376a4a4a3a5ec4028ef11004 +b93acaf38128de94531c23f114fec41cb2e2027e8ee138aef6ad017f5d97a600 +1063be706b65da0eda2234e7e9a9c27c084c4564b362ffa93ec9127cbc9366ce +7b74805943c9961be5a5b5ec87675b02f756af1b70074d03374ae931cff31757 +4145af416a9098bba84ed2d3ed44019257c0f34e7f94dbd10fd04fd15ffd1b64 +f65b2c02e581175436150a074de43f8e11fbc56e806486665cedbcf387504d6f +0687a13d668c69dddbc37adf91ad0091a770ee23850ae2fcbd6b9de9d8a8c8b8 +eccde66b7122c7b9602dbd0f6b7f7e4890933451c7a3904382d7801bcd992f76 +4cd41d74bc8723eba2647db7f813b465d11052e0f4ef593049942915c614ede3 +4f8f2b77bedec635eb3461d66cbfd4be1689a839b1feaa41c0f0fa23669806bb +52fea1fa5ab524a447ef3cfea4583a7790baa418ff8917388daadc5a3d1a9fcc +7f4a826c912eba5d4b82d4c29b639d56532b37ee9aed6bf06137a3af899c70a1 +ce4c9940e6ea87b6e274696c4a15d6aa3c17f9334aa84fcf1edb48e306640e57 +892b25e67c6f87e4e4cdf1a9cf12f69c0028b5fb768e839e1b8f75f3ab2d9763 +6e1be8c5a73bfa8675853695ee32887dd6df5f03f88e637d45f752d22f6c76b3 +71b9a514078c3200ddd2e998f33f1ae5c0a5fdc932f7c4727512caec232a681f +bbdec1a919bddaebf5efbd06869bcfe0637b72cefaac13f915f25cd3a926c0a5 +4875435ee6a413e2554fe4ecfcb96c1b5d8719e84dd34939dfd7795eedecbceb +786df32b6360bffed553a74b444a35e0ab0517cf7aa9c4e420e5bea4a5aac950 +54cfb55d1a1e57b58b8fb382e8ea2acbfb9b43d1ab67e0c1450ed3091758c1b3 +8155fd6996500a55fa5d134f17e55978d930425e0c03748364c46d3bef68a390 +649e09e48c2fab92108eef8603c70a977a388d4d24971296aaabcb932bc96033 +f648a6ada265aca938a6512f456fdc194f7186808deb3c16769d3faa850f78fb +58610c776c2ef3f208404def2940e484a801cdc45aeac88fa9852d1319159340 +3478b1b7f204ff297b67bddf1d38e256f864d3a83d6919ca7db1bbb1f5b8f6e7 +8ba272d1fb28d760618dac6f5633b9481645c9b8eb3a3384518103cc68aceb05 +5a91dd8def04b49d363b0c6daf63aef5d85b1e79504c23b3bb50a4b7194838d6 +b417b0ccbcd95a46834f9bbb2ac30fb2d9b9c31cf4b608e1379399a95f8dfa94 +53998a743c5a5bf33ed1e10177dc4a2a347f5fa4d09470cb5d71b07bf459c800 +0119a2164b143f03fce36c19384a01cec5b9080491b82b9ff115f795d969f480 +b7232d0375a9d46faff31fecc9351b42923e9ab6207d2723915d7843db279505 +280d70d9c80a1821a257aec764b7e85a1e8da7c40d42a0f77385ea66a7643435 +e20af708470f645046bbeac12d840fe3260ce75e20563014d9e2ebdaa57ef06c +0ddb55fdf6ec3e064312d13e25299b153169788e8a4decc095eb37eaf8e8ce2c +cd7174f44ee8f3875c5a3de3c7ce22296e99c44628f52cd3d18eb9215c34e563 +0ba85b5fcf3a211021a19945510c7e39ab56d977f74fd50ba8a70def82fa6777 +6930390700b4636330a998b535126d610e8a1cb63f618d69896fb47576857f5f +8926ddb4833966695a26402aecc48bbcadc04c2833afcedeee14254a9e77603a +5bb7b9de3c97007901143a7901c00b77a13e72940a6507a76164989e71d91eb2 +3080c585be2f8734909fa1efa7fc6a2464d95e4c5051fb8d6065a7d9a453cbdd +033626544b72108e4c4c087b4e4dd972893371ba7b8e8291ea4f98d03c61ce6d +d56734f17a66697f2260af9b3f8b9a36717b490e1ce649d839a66133da7742d2 +dbcaa22ff915fcadffa0383cf34c2290fa42fe23128e29e7bb1c59e55b7ac347 +fe66481f485d7bd09f55cb51d208d0765a510d5f6958fcd3ff5a5ed27d06a02a +f7ecadce4b4ac5f1d0210c5637f07382193d77945e249d2c4973aa43dea41dc0 +51cd72643bda4f749dd5846a9d3a7346d39f78eaad738d2d255df0f0cab5fb10 +96a0ac86bb013980dedfc84ddfef081700fc3c66b6d5a125c9e83df17d92658c +10d79a8aaa222004c20aaae6128132c64f96a7a7c869489a63860c15d53f958b +d6fb81cd165bf253d996c15295f7c2fc52c13b51aded1c774cb35a0ab258bca3 +ab438786ff7e648f42ab568fdd9cd598c52b5748b0c44458d4e0b8080ad19cbc +55d8aa1a78cafed7bd41a864488d8ab0bc12f6689027c65c70a2b26bd2590026 +3e80ba6189672adfe377e9fb516cc6bbb0f2e341dc9e2f34a8bb00b4079ea28f +7c8138c415306e00bdd8e71176faf06fac92e38e8e15dc6ec6cdb389d1a15310 +ca67408a9686f21bf6fbbfa7ce032974e2b860a3a72561508bcf22ede4122185 +b83532444134af2bac5ced1932c9cc06b70160d0cefc8f76ed1108b629e81060 +ce6c30e0bc9ac232fef7ab1c99e21792921bddc20f2afd3b083dba29641458a1 +1ba80613610b01543d336ebc45ae15c276c9ff18fecdc0cde3be18e044497217 +b9a812d926538fc42871f439282c1717833170bdbffbd7e2034d794eee9177ed +28045b2dc45959426e35d30fde +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndResource +/F130_0 /VXAMRV+NimbusRomNo9L-Regu 1 1 +[ /.notdef/dotaccent/fi/fl/fraction/hungarumlaut/Lslash/lslash + /ogonek/ring/.notdef/breve/minus/.notdef/Zcaron/zcaron + /caron/dotlessi/dotlessj/ff/ffi/ffl/notequal/infinity + /lessequal/greaterequal/partialdiff/summation/product/pi/grave/quotesingle + /space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright + /parenleft/parenright/asterisk/plus/comma/hyphen/period/slash + /zero/one/two/three/four/five/six/seven + /eight/nine/colon/semicolon/less/equal/greater/question + /at/A/B/C/D/E/F/G + /H/I/J/K/L/M/N/O + /P/Q/R/S/T/U/V/W + /X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore + /quoteleft/a/b/c/d/e/f/g + /h/i/j/k/l/m/n/o + /p/q/r/s/t/u/v/w + /x/y/z/braceleft/bar/braceright/asciitilde/.notdef + /Euro/integral/quotesinglbase/florin/quotedblbase/ellipsis/dagger/daggerdbl + /circumflex/perthousand/Scaron/guilsinglleft/OE/Omega/radical/approxequal + /.notdef/.notdef/.notdef/quotedblleft/quotedblright/bullet/endash/emdash + /tilde/trademark/scaron/guilsinglright/oe/Delta/lozenge/Ydieresis + /.notdef/exclamdown/cent/sterling/currency/yen/brokenbar/section + /dieresis/copyright/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron + /degree/plusminus/twosuperior/threesuperior/acute/mu/paragraph/periodcentered + /cedilla/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters/questiondown + /Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla + /Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis + /Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply + /Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls + /agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla + /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis + /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide + /oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis] +pdfMakeFont +%%BeginResource: font MFECUR+NimbusMonL-Regu +%!PS-AdobeFont-1.0: NimbusMonL-Regu 1.05 +%%CreationDate: Wed Dec 22 1999 +% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development +% (URW)++,Copyright 1999 by (URW)++ Design & Development +% See the file COPYING (GNU General Public License) for license conditions. +% As a special exception, permission is granted to include this font +% program in a Postscript or PDF file that consists of a document that +% contains text to be displayed or printed using this font, regardless +% of the conditions or license applying to the document itself. +12 dict begin +/FontInfo 10 dict dup begin +/version (1.05) readonly def +/Notice ((URW)++,Copyright 1999 by (URW)++ Design & Development. See the file COPYING (GNU General Public License) for license conditions. As a special exception, permission is granted to include this font program in a Postscript or PDF file that consists of a document that contains text to be displayed or printed using this font, regardless of the conditions or license applying to the document itself.) readonly def +/Copyright (Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development) readonly def +/FullName (Nimbus Mono L Regular) readonly def +/FamilyName (Nimbus Mono L) readonly def +/Weight (Regular) readonly def +/ItalicAngle 0.0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +end readonly def +/FontName /MFECUR+NimbusMonL-Regu def +/PaintType 0 def +/WMode 0 def +/FontBBox {-12 -237 650 811} readonly def +/FontType 1 def +/FontMatrix [0.001 0.0 0.0 0.001 0.0 0.0] readonly def +/Encoding StandardEncoding def +currentdict end +currentfile eexec +d9d66f633b846a989b9974b0179fc6cc445bc2c03103c68570a7b354a4a280ae +6fbf7f9888e039ab60fcaf852eb4ce3afeb979d5ea70fde44a2ae5c8c0166c27 +bf9665eea11c7d2329c1a211dd26bb372be5822f5ea70d99eb578c7befd44cdf +045a363056e5e1cc51525ea6fc061dcebb337208eff729802376a2801424f670 +0e7e6397b28f15bc10b40012b0a3eaeb2693e8f7f627c4c9c7c6c5bff105c1e4 +1b2b9e8f09253b76040d268b80719e1b3f5a55ab7b89290699b50c1bf1baeffe +1f57be7b5ea025241a248a6d4cfa5067a1da6eba4cfc940599ba3f3c934d7248 +b8e4ac5816f0d2ce8b3c4193ce39d19fffdb75254573173cb51ccd83c2f2d06b +2483cf9b07b21ec6f502f028c273887bb06dae2afac10e9fd3c7cf51bca7b277 +b706e425302dc78975ac0e43b87073257a5cd7424b6865fca89d886e8f95c4f6 +d457623dbbc0d16bafeb4c649f5d72b09b18502eeab687e915e9b536a361b4f1 +44c3cd4cc683b5f05a4ecb4823a5eb5179bb7eee8b76c21b2491a97808f6318b +585b0bad98f42fb4a755bcb74cd354f794c8bea5b90fb9681bd5849d45247e39 +930c882490230e1662d39cca875bffeac3e79a78de6e1298abe9817ae98675c4 +16220ad0d3a36580ee2f2a17aaa1246c416d58a4c52fbb26aaf3b6f75833af8e +3aa996218dafa571fbc7cad90ece9c883c813d8f168c5e86bbfa0f0a5cb36e35 +2de4caa0f8d3227f72c5056bfb5bca6bf9c60e037a0e44670a8d3cbc9a19f379 +ca8db30b711f518a8c7569211ac70c46eed2af62a37f238bd0bd12d60332e673 +c6e784b3eba3f2e71e9993b97e8a38f85048937e958f1cd8fc6e661048546135 +56b810fa1ff611b96495081c04542df7fef085dec619dc8c84cc57683d212813 +9d14728aa32723e1d15f2af8f03422cfafd8ea4c92dabfe00e6110bca39fc555 +bc066ef848e437b50688daf26d001aed7e74605ddf9c0ed36be45455aef92689 +8cf32baf2418e02118593f54fe1857807bfa0b93b5cdccd81d28bede22cda6ee +2e32422c1e8da8866e526300f9059e85ca54122ecbffdc011460913e0d28f7f5 +fbc9d7f9f6934b3d8efc1a91cba4128f6bbc5eb55e5e7b73647bff70662bafbb +145cfa65df3db858bc3fc577b1bd8bc74fb8a61bfa71b8304aeeb36d8efe12fa +6f5eee0eae0830e5177dc745250fc362f78231fc3ac9864559dba92dda2feb96 +2629293435bf4a89f913fd15702cf325981ca3a08b327f7ee35794a9e88326e0 +24559b547fc6da61b7a3b9357f72c767baa9c79c4e7b77f70ec01ac0b8596425 +5f7346dc8cedc702d3d57b09ef89cdd33756619af59acb9d17a3abeaa6c65218 +6d6855348a1095746b34af15df313091c59e5bf9e79b156cd7903c1c42e115e9 +c5203037c808bd295195e074fc4a46fbb1ff01c814878f0c177f552bdc9bb698 +349d73aec17997374ec90b69293a064442141a44c6fe8e3c283c02a4655c579b +f21b53d1fd37996c682745600785c7b52c4eeb47fa5fd640739e1f09d5c5dd2b +b7515a4cce0a21281d315563895972bee88bbc7401be9e20cb160b6bc81ed469 +6d66169bdc648aaae8a9495b072911cc814c19d53b95de0071e3a439d3c09c3c +1cd422c605740a8939487e26bb9233d4cdefcca49bbeb1b913570a51b2f96d30 +2ef8913c6bb60b54f7ea4b8ca16ad3b4194dcba28439eb31a9443caf061c4d88 +c22cec8d9d8d85d7aa225fd64bfae7376abd40f822ba1ecc9339e09403195752 +fc03a5c4742ad93064d975906ed63acb495aae324403d3bca118179e10256543 +1bc84d47e0c016234eec0c52255ae783417941cc884efadb63f8269876f00a8e +1e1f19eafffa00453203a0752750f8c876aaf87826baf77b81d336ffc29249c9 +a6a44f40381294447840632ee59a3c4530391f35da45c16a001f793782be488b +5e01d7f75dbd53fb31f956f16202d3d94a300866814ba44c79764cc25acb57f2 +333dfcf3d97a98fca949b1da71ab27885183d8baafc9bc743143f2f1002ad752 +1e55d207de23e97d1760cd918a55148e37e05f6347e8cc299eed28d7319abcdf +a4a279d5f64cc2151f91a0be9e8382a35b535a6b5f41f3708169881c243391c6 +67d9121ba21f6bb22be1ec9933d9af1dde9693d7704c1141ce2b977ff5181299 +6a57f7806814440a28b1dfb62c4dedb82f0ebaabef3367bebcd43246d54d8eb6 +7af07b164374998f06a0b7e271ad6ea974698a806002374d270c6dd5c9dfd5db +e056fe1b3d58482a0cc98d4d5603c59ec2e13b446023692b9ac2dd7cf767d2dc +a7c62bb3578847085cab79f139bd312cb07ce13e38c3fb8f695bcf4021c282b0 +9b20ba67f378cbb8832751b8f3eed370a572139431b9187893b592529fb1b6c5 +19f51798bce9e56ca50185d42fbd85819c3a1153d65997511b19acf87e69c07d +2ca1a7401c2b23f99c19f95da0df136472f9fb574b21aebbf0c2f892b9260001 +9a9173f108e72c3eb4a93719293e8be026b833cd709c7c05c1a2e7250cad2586 +ca70fb7d927e36a2e4a6f34e754c8dd8ea2571cd82054700d386cdf3420f37bc +b6a70b9a92e46cebee13f6641c67bc40979f9b86e052164612d3dce7be67fa71 +b26ee9f425b54b3577cb4acf3dad02f2e55d2986dea88a5a1955b78c0cd5decd +213c55c9c57183a7dd5832d49ee81724a19abb7da0779f1aa6a77d5d31434a09 +c6f53b7e27123dac042f58dc27653d940358bb8100b416b920aee20672559f62 +8b20c687d77ff83cca449e94fcf4f06614fc539802340619e3a791a18581ffb6 +9bb5961d1e70e55615cce5c9e1466d77435e486f15175cf87fff65e58127b5c3 +024b93c1c296aab24f29483aeba00736ed30be5bb5284d7afc43294b927bec1b +86814a5ac25a3b9cd1f25c813cae791f937375e013159624a360955a58e8fa94 +e49593a97150702c71dd8dbfc3774094df930414ffc68cbd4b4a25041cb3b657 +a54c9bf780142d2586eb5dd9ecc1eb5ea69245d5d9c2af868974ae5d46e3a544 +74e96780ae66023778659d9a45853c24da18dd5ca0489ccceff253b009c06cf5 +826adbd0e8fcf23edd75c3d3de8a4c789a895e06d20606e4f8e3c1bd77976e71 +de409203ef1342bdbf2c11bbab4af5a709f0462aa8fa3a02cbed6f23fb4d5e3d +1751acbd41eecd8571518a9e13889c221ba5568cadf730f9da026fb38e30a25e +87ef6a13484d6ee31c174bfa4b80cc38134d7b18c85c83b4f14d3c7b0a0b7069 +7baa1a397252ac47b67306e45d64061535d05540c86b9599df909e105bb55100 +3a0271c25bc5d596da2a446e35c019b5dead7b289614bd5085d49ecd0464b494 +cd1ab564a93ac9cbf438fa558bbef71c2fe003573a03979a10fe8bd54a053724 +a529f46ffe55cec8d6bbaf1f57d16185595c82a1ef42e3c81cbc55bf50587630 +404b2090df6d9d25468c1eb7a4b2b3da7f5b718157ef8b5f23af088301e46411 +b51e6e0d464096ce22bbc2028488d9af49792b4a17cbbba8ace8fc51e1de01b0 +97e6db05466bf66978305642b6790c08e59a7055f9442cc2cfc23095df2c27ea +decc1ba54d6b81ecc873a9c71796a1ece75765b878d12e4da9e19d026ac44dfa +2dc7e540506546aac70e7b82ae7fa98bf36549f4d540fffd53abaf7ed9044ca5 +6b4e9044a2b23c3e7c70152e96f4e64f6b1918946789d4f703675f3dd6e8e5a8 +f0add5f7e442c35cc782c92db2007596ec1a76d2d22ca5b00f7f9aa9819327a4 +db8d0b03369a05de96b8c4eaec254cba0f39ef6ca005c53afd0ec32f1c092367 +efd9f773bd00b95a60523bc0392b050b15ad70f7cb42f6d36587144cae2447ab +aa4b4d9377a7e86ac489685833e1c14c3e17638b00884a46c1efa2b158f6239b +1bbed6fc68ff606278fd4216c2a6d7888f0f0e5dfc9950962d4964901a47d6cc +2e3243e1dde9ce7f435a7dfb19349a3017ce44b87dc6baec18354a2042c87ed6 +c1e3a1a505cc679e32789f75780f84082cc653a010d14dba84da0191a510359c +1d24d700c58e54718f1d85396e7c5d3a365637085b6f79c061df17bfcd260ea0 +6b8416c9042c2831eb041346a22bc54f9d7ba43f8c4487fc240baec20ad4aaa8 +c03f180b614c59db6e5ec1531aefc908c46b93419b9f5b2d4eba0a67ba43d685 +1ad44d4b43b7796de5c9a11f726a90fb1a389a342143f98f49237fb451c43eb5 +981562d923d684923dcaee71b52ab4ce6269169a35f545e74584fa440c41eb82 +41ab194c78a5b980d021b3eb7994846d963b78eb6e149cca7713c12f77023002 +b8a797c9ccd0c2bd70dbe44f81f9d274a5ff3824ee34cb4317fa4971d67d90a2 +f3d1b1b84960f0fbee40e6341c5271b5b945b9098f3095986ab7db2e0714cca0 +301f6b8378559d86f0b0d95c2dfe94ac8e10df0c8c16dba12505a0d467dccb84 +16bfeb18784bdc10624f15da1a880ffbcbafbed0e1c7360962478006db59c78b +ddcee524b6f9b15a8849ee19aa00fa3f71a3c2c96e68dd0248a94ecc43a60ac3 +88e49e005250706880485df109ce1506c0a4edc40f5ae5fe347d52ff63b26c7c +185a698e171244aa1095620494949d526276175a7e120340d3247cbca4e3df53 +641d6d392abc61c85a22e06cdbc89cf37bffdf8a79361c6dd69e6774772f699b +92f7a7184a00fdd7f36fb8a08ccde5bbcab3731366c3b74072044d3ef2ebc1cb +33118b8c09c04174baef8df1bb4a1e1f848c1a5178ec58ea621f6f8a63d0fcf3 +13db79f885ac659c881ab7e40798a4339e6a78ba27cd9e6803c3d4df196c462b +d08555bed51d7cf5821204728356cf813f554517ac5e28e6c4047c0100610635 +7d25c33330758f71bd1043365bda5d1d9214c8b159d0f8fb69e40e6fb4ef4668 +a228938436dd209dda5925597151f8633297862799152b0317bf21f9572f503b +b10826aa7f8d15f5d780ea27f1b8ca0ba3dd732d3e3effcfad6e6ad8769db6c1 +df22ace8467481d16e8af6f56032c90c8f2500ce66afb94d378d893e84208048 +ec0cf900507f02e40da3e99386f939e05d9737b0b11b7dfae473496d056be5e0 +7f1cd25454f4b290cc43d936450c3d675ceef5da533db25ec07addc7e8355d8b +8abb095ddd61c91da2dbeac0574e9ec9d316ed13df03c997d7a4a9c7a6a3a165 +ec1ce316e820e13291132ae91660d5d1812146abfa137726e8700395b4274502 +7d53b1e5cba817beb577bddcb956e89aa2d1ab24128b9ae8e06d9f0a6dab93bd +f7ee8e2ff918255c3722a8b0e8520dd02ba7c92aba13ebad9ce0ad0f16f728d0 +ad49bcb12b429811d8ca1b5ae29b7d5393401eb5802db4d4497cad43ead218ec +c674f42143bc174c525bd736b77dc28bfc7e107366eb9091eeda60664a771782 +cb41506406dfd29c974c5a18da88b473ae58a2f1fbe5680a40138a9d2fb7955b +3fdda23b2cbe7e27c1dc4aea3069b1e7e25068c9051672b8c9a3a37d6e6fdb24 +3bc20d303198f9b8ad8154b3f4a4f2acb17c31a0489c1366eb8a13012c6b8cca +4d416b911de781563e26c08538e038dd8ef92435a054348add815687ddb99dda +88f1e2c5887707cd4be47f71ab81a3d6cc3e039bd09697734840f8bd0b88aac6 +191c6db089943f99ee4174e5fab3baf3a8429e273c4d1a5140e0073f86105402 +3f60df69e65809b7a1a5a8aee4d25bdde9fd6d05a3fcf4be5f253e41fc49e121 +df89f259ba981d2617209b53ebd92e430a69668995961177b159933501771905 +08f625b26b5085c04b325e7fb6bb45eebe3bc9f5c5114eb37f19937635d71a72 +39a0039003764d10cb403b58c61bf411aa8f5d717bcff23fb338da58d13ca81f +acb3316d2b5b675e86a95cfb525199a21af248a1245c92ee37688c6e76a95187 +3b411697a1ea6694e6ccaddef3d57114cfde70609de67972edd1db95d923e077 +4bce7cc77605f9ba5226fb792829b1b8eaa15361ff78f190a0563fd61aac4452 +ee1b0d293e695416c667735dd886d10e4467b613dd9bb899f2bd75f2f13193f0 +481fcd3b4e2aaec6cf2829b1521dd4b6471ba31aa0aa4d63a6456203896a111b +89c106f1ea85bfe0c0104b1292a1f8d49334578375b55deae2d7381f5cfcc023 +5ddfb3d8546054a0e6d5d81e4254383385ba593a7d3a8e0beb34285dd95d97ca +3eb598b643834644b611e6db4b8b4360c847120038768e218031e097ba0bdea7 +732f7e460155a496b91b3241c74f9ee0c99ec7adf6a87b701a0ceb07fef5fa44 +44e127de3e777c23a8d938f9879df1dabb7adb31247a53174f919a2a5a4f920c +9415f3976a8f4b739e114b2c49d67bcedc1852686cb041e3ee94ef94d9f2096e +76f1c558f40812444c6f0f4dac3a4bd22b82e32d8bbf1504f8232ef00dd2f3ff +5c4b8349a9d1becb8c59a9f4763f2566a7a513a6c11f54d1fdc1867ab741f3c6 +e2b44aa95479e4e9813350473bc7897b9ec592f01f97697a17967d344a4bc9a5 +62786f28f87e3639d091922f4994671b22efd41ff3f6b8a651117d0a2a97ccfc +80a69c974fb2ccb36dd6a4897bf88ebc67bfd892e35e6940e94893e1cdfd2799 +8cfcf2b3737a6232e4783eb4a8ae56b83ed7661377b30225a75a1b90b73079e2 +6aa33fd37b81f7d60de62931b6be9d16367a5fab1d14d281d3e8d09dc525f549 +ed03a449df4655802bc3265010f286df86602740d8a86aaa228b9c47e3e78c0b +22d2600d5cd55a3116058daa7e34174144f78a8f72e0dcb8cc64addcc52df0df +3f8c21d9cc04e187be53f8fed4f33633ba03afa178fa5ce769a7eb0e1b9bf5bd +de0ea74dc99598a66696bf6d5071da995a30b8144acdea116cfc447255a99cce +4ec01bc8a0b355c0881f6e9eb48725d61ee0b245e0f7cc35b9e76fe11f681017 +f794ed8d4c4c7a02e17bd16a02347f28318ccaafe0575734058121e3ad8064ec +a0086a58f216020a2dca29376981a2595bfac2a0394d448949b52ffb47e5c5e0 +d6371cb4a417ac834d6c9fa0018c5efb16e39e32c85088b266d74af5630b2544 +d4cf403482c490f86d35f81cc44b34200400c10c6dff035423e725d41d2b5ee0 +c3f03a603a161713216af97036ed38ff8d9b09f189ad191a0d03369c3fcd5a3a +f88a57338971d7bcb5f3fbf8735ad8459524d93a92eac1c2bf5f0e6e1cf675f1 +6d72b35ceaf34d8fac178a1dd823ca0448ee1fa2f616b803c38b89238aaa1ae7 +cb057ecdbad28147da46a34b8a1f1d389e082cc3e8eb1a7e5c0c932341824c21 +570e003d8c11c87d7082371d3d4804da32fde118c6c5b5b08828e5783200c6ea +0a7ab73343f5fd681a3116fd818c7054a5199212eb0f3a9a0d87bc364670ee2f +7a5081a1e48a58748d297e014dd5db7faaf7a27459f115741bf4facfa1b395e3 +e97452bdaff906af9c52c5908748f1e13cc85d165bc893c1eba728458b708f8a +9e8990a6f258bda0989aad0959e7326d1d6bccb50c4fab15a6ea3cbe94724fc2 +8f174df93fbff41adbb9d4fac0124d33151d06753d4d879ac4f15aec5d1cc0b7 +a9e861f790a16eb0821b2a7b7b42d6f3e389c51a1d7c652859ffbe66646d4199 +a62ed28a30c8932dc4d2855e7e6311d79cedba8beefe2cd529f4b45382f3e6e6 +a7659da9b786fe7bc2e431ee3f11873ab2709200b715343cc25c5365d06be9ac +829458ff77f4d509d9c3917237d759da6775e09c2eaf4ce966a14157ea2780bc +e3249446573c82b33ec5ca150022a83301f00f41eea3694059b14b2a9abcea30 +65cfd06b9dce3823477bf80938d355427666a8287a65e231a2357aed80d27a61 +58140c2cdb1f44caefd6b629fa661440c361dde7817154052436a36bbc1bf382 +e30285979c4568b180417740a17150952e3eb4091f583083d75a05a2d91009de +46da396794dbb5288e2a2e6191d3f22e335f0275f33e9af2154cddbcc99b149c +6d7aad7fdedb23c805f09725b60b5ec77e8ac9953a3578b23c6023a196f35333 +a36fab2ca195e397fc82318434e9f2844d17bbdc177989fd8af61ddb46512d2c +f5d7821941b18b7c1f1be16df6e6bed4a1655edcaf6300fa8765e903b03a95a7 +0a7e6d55457f451a8177e0e9c9f3aec8d174843e3a99ed698689019e96cb4683 +bb24c71e22f4895656acc67ecd671963abeffef53724a645b98e5d2680297fe5 +2d43ddfdfd5536f7c239a5092076512a2a9821f12338e388bd5115ff4f4d2c01 +d741f821874380838988c17bd975fc388a253c8c006c67963ce3c4404baa0750 +c56760e367b566ed129911eb056bee42f12bec9980177f1b3713068073cf34c3 +70d6ee202c49b42809afd1f8786e14a6c63794eb2ddf49d5a06f34de23356260 +96ea26d57b94a928e5312147ecc40bbc6a204c4b3ee9d4f4361f8df9e1c1ae68 +ef60fbeb99339842e652479362b19d33de080f9625b5c167bf2b11775929b12c +fa9e9a89cf84f249a1078f5584425e2ad8ac82adc298867ebea1ec6c0428fdc5 +01dccde39e5fc147959ea254217153c0b550ef96c229664c22286a7827ebbf15 +c7fcdc57dbb5914bb0460b6e0c0f58c98b264925d9996d9e0d31fb70e66eb9e4 +d928015f2c12acdb7d77a66408f2767c05f93292fae45492e5dcea337cbab346 +da82c905ddb016bba5d31e740b813c3d709d78d7ac50326f90d2e4af4c1dd893 +e26f9767db437b52a758d6237e52c4a2a71624d2b1f79dbe83b6b7839deb413b +f34b91b3dfbc88b7b0b78ab579594ac3d57471074f78e59a64d75b4e6ed3cf22 +33f6ebc86e289402dea3907b0a2406188246e8e44054f81854dae0fedaef8952 +c05c8f5c4591673102a0f24f7deea7e19e27863a27c00b510690b331413df839 +5ae5a37f8c6b25082073bcede7c8ecdbbba2c09467afcebb48f4a4e25cb069c2 +b7acc265f988955a79ba95b3f4d8c6cf94164941723601923409e9d81ba8aeea +64e8f1f09794779a1262020bc301b1966a789fa2f37d7521db536c0c8da36b7d +906398a8a41230cda975088fa5a6070d88882dd8dee7af696ef5ba2c5a525d61 +d35a6834907c4846cfc69b17edf77c58e501a0600a04ab4b36d9007ac54ccfb5 +14a47193ed01d4fd5e3c8cf04b3e38c4895de3eee14dfbe6351bbbea6530046f +89e913d022c0cafe528a33c4e84d465fe6fb031b48d904c5120d452a6c1fdfb9 +08e242a05d015a9ab2536dbadf0ffd0190d355edcd3174cfdda0974e2a33cbfb +2a3d557ed2f6f284cb3c990c3071b7efc678a5d27518ec1912cbaa890dd6bbc8 +824eb1e7ac6127a67e68428ffd67e650fd44c9ec448a309056ce45e4a4a2b769 +8183ac418981f617dc469a566e713aedce2bbc7cdddf1f7affc6d11e94757130 +c4ec7b55dba7356b21e5267c5ed99f427a19daf476e48993e856c852d35ca1bb +b32d59ce688ed184fa9ea1622c306cd788d6372c5b4a94b001f198e33209bb59 +46af1ef7b066d049825bb78318a38ca23ec9a93bc4b4b12806c1a0e5be179e3d +0c0e5bda654e506e74e0ef1a8b12c18bc3f041d5e61a8f03436f146e4daae3b9 +6b8c7ae139f42e8dcf772cb5742104aaf776f3dd19bad920df77b42aac654d32 +2de3779c42639b50059d13b81c3904df76a0ab47046a0132378f9201359f71c8 +12eb4837bcbf3f1498bf8c7b2298e6b2e528f9898ddfaf75b5358a73a67e6307 +707fb13b2360ffdc5659ed8e70ecbab711d89f8c6558622d67737b1108ad5139 +b126a6c7be8b25709fa7cc2a625a0796b7d08b11f098edb80f8aa08a5668ae91 +4ff1c470dbcc7775a73fbd857cdb9a5d0c122d4765caa8d9d35514390c9b339a +c04a78342e186e5c49dba4cd9ab165b4c139e76b88c807cc4b5db7b5063c2f81 +16721670497a0183c643c5a70ab2405d5d8b6773a4a2d39b3cd0d763c12ec296 +9b3c3ab916656fcca5d715e7dac796937b2b6d4adb251fb79b183e6eab23796a +0bd0bf5bcab03529467a265781716b0186573b862b2a2057c427d85d7b547c7a +9e7fdf7a674587df709ffd0a63d0852ea0d02c13e8038762de82362739de9ede +0db4296421d462d8286e2152aa67298c9ff511e8de1a26089d383bdbbf27066b +f322738cd2cf198bdefe566ced1808dafc015c8ae972117776594e9c506a3223 +d4ced495d6229c9bec17c47071415f80482f9ecaaeba6a135d2173254dde6be3 +f0ce9a7a81ec2e9af4add855b08309d34e780adf0f7c9029d2ce0d5f807ef0ee +531217450c82b7f3643456772549acc2ba6a5938c517fd775114ed44ec69a45f +d9110c969edd9e6f8b4bfb953aed79a1daf47c7238871e4d537100c4d8981d82 +a2344eb7df5baebad28e34870d52d97a66dfc75740cda6b403c1964c0feb034d +d3e5c8b4a37acb9f5718f7b6a3d267694df8baaabd38154d16c162ebe43b473f +ec1f060846ee8402d67942ee080dac9b18eb8b09d384ac24f85d287ea3e2c59a +0f2c1d6bad36e262e031acd399a2b9a7940908d65f142fb209416e891a6abeeb +389e2df002436d43fa1161b71382d1842788af1a9e6f39ed56e8bf63991fa790 +a52ce312aaede90df1be57e3c1151dd0350ffe7e476cac5f34cf8505bcbd25f3 +29aeed3a52bfe1f10366dfc4a15fe212b1cc9da76c8272d7ce85c2930d797b82 +4a67de55c50d45cb3640db2a79ecb647a2fd2d948114eea9bad6312319f8db5a +a29d60b22439d45760751904f5de5d8c5c9d0211ac9d30b9459dd05eeea240f0 +97f0c239068c514b8213609014e6bc50633d0ecf774c210aee7c75a5bac24e62 +813181e4d040ad1bd4bd4ec7b99b8a37abd694cb67483d1c5dd5c17f54ea7f20 +50d0ea8ce1cbfa5395e62e10c5d17a423ac76bfba25a38fd474b5b4117ccfccd +30a2ffa484af429168b1b5679b67542755e989b39387fcd9b1d8f8ba313a758c +58641f34ccbc8f2556ad1b17c33f601ea76ac75ee6b681aef12c0712a14e7b8e +a8a5bd316223d5142e8b53a6f81a8a608a3dc32f20c5e417a6aff0f725dd7867 +429fdcdc16a22ef6112fdfc5282c61a1aa9b134c1b420de7b359be8373cf3716 +d7b3ae832ec15e305ff6c8e9d4197f8b0150b30e1b9e7f15275b4b7a65dfc611 +97c0e5f91561f3e6203950edfd6cea20d0649071442b2916ebce5f4d3da73914 +5a2bfe6d055580af134b7dddbb9baf9477454eee8abc7b33eea500102e395212 +78d08c08ae455bc0fc5bf5a0a577e5f5fc71490add5a623ccca134b62c19d3a6 +4019415ecee0168621be2b4856ef3b3944c0db9aef7d3e933a034184934bfd4e +3fe21d4d2625e6464e9ff9cc25e793eb7b8701d3fa07ff9a3020f76d668d083f +59c6f6751179d60eb17b9c4e35f3815aa5ed3793a2030d317f1610215fa920a5 +5ff29a67e8e6f186f00b5ce164677eb1961eeee35b5a7891d4296967a9d096bc +76b0d072eabab7ea758da89fbdc25b8261d9fa08099b6e84494fe034c3edd5f0 +c45e67ffe588b2532efb3dd1c34be9ce299712eac0e4c4cbee6f30e958c9dea0 +15c5c4fef7cd440ea982f91c07928463807fe07f27ef61a5deefa47879847835 +d4e50aa1dd0ad2b3d01069cc7b4741b3f680131f7d5cafc6b3978c3c1d608ac9 +d24342092746628cb71fa01e3c675f14463f9edd4c339ada41ba4b6a0faa5117 +204463bc7b94d01edc1b3d5781898c85516617f29b4dce2d32c2686ddbfdb838 +f67b097be600f6aeefb6eca5f729b45be307232f92731c10c3330672c9584141 +7192e62a0ebae828fadd77bfc2ecdc1e562daf5660354e0edd5b7177bd8e9d24 +f77e526e649044cfd49633d48cea64de714e59438ad980e0b1ffd51ee19692ed +665e2ff332bb54bdbf75316c4b1a39c538312fd649e8c462994dc8f14bf056ff +0804de76474d0ee084e363c8b7081b1c08e252e05e49679e6c7ac81f42e9372d +e5af64f59c4fb62f3e2e7b16ff53bbbc006e3d9b0f29434db5a63210944053da +ab56b1075a0c3832220752d104fa1770d3acfbc31704a1b7852c077058f616e0 +a4373c1c92c7b60566691573502e9a92d583a3163bf31fc100c92e6405ee4d54 +09d23a83225bf6d1de2c7bead011ad64547d6835ac9a7378033c85592a0c3497 +a03c16190ebdabb792ca0bf803dcbc3bdf0f7a571aae00f596ee01eb476bad97 +3a27a219aafcc0fa245c6731a2e8e561c63b7bc3147b9433a8203fddb7138b0c +1611c7e62375f2a114f7bfab36cb1a94b9e10ca63833ab245af595217779bc7f +d12e68a65919eca4fae72f755669580ab0009452bf086ea835f91a0d5b384b40 +82bd515f006865bbee2c50db43b4457a793693806b86f68a2b2419fc3e937a72 +c6f414de148d2a62a71ee9fcab710d6dc08ad6c4ac443365e7a78843f80cd769 +c56efecc2d63487b5fcead1aaaf9481a7361723388f5b51c2d9cea90486cb9f9 +79f6f5ee718d4a49ed91cb091adcbd0e7b3ad963368c9cde877666a742cf5073 +aaf79428b3095f989fc1fa6f5ab1d724d92c33c1325c05a39423b8a83bba9359 +97793fda280740aeb6be3193be5f4feeca2a8f28efa9c8e016f0fc87c8f3392d +5715b9b9a7aa3c61ac84461e2c3220372568aaed851f1cc40481e326197ecab1 +f3cd792fbeb27a58a5f889a5f6321473148c6d311ca89be96039ac9423700d87 +ab0d7e8b89717d1a62ca14e01f51bd77832bb6dbf76b201a04d222852050cc5c +c6a4996789a0bfd6ce364592300282f102e66f4ae9e50d60d886cacb099df960 +c42e2213017c567f27326e677bbd04a239631950b566eb39e4f675d2e989f56f +74da3a0469d988ea0122ecc3670d458ad82bcf7ad04bf3ca9b00d76ee569f98b +a375285a1abbff253b8f179f71f496286330e364049c72ecad4d82a933af0189 +03de5e4abcfc637803167e56911f826735a7c41e7936f4bea148397bcfb18cda +fb03182ed7c511aa9de0c6e6c80b24cb535f03ee16bbcb514d65ca9ac2ef15c1 +aa1825759fc4ecafc7c0d9401f139b3f20ee915955268578a933b184a86f2017 +03cbf4db79be18c09c8cb07d85739b8653ad37b8c0b647161e5cac746b3c0b94 +2ae2a0540f38dbee122cad0cf739ef1b49b6dbbd5d08c97c04dca33030f18718 +583337a015395e1fa932df0328c7ddd9546b7812ba06d82a35f8110d55fa377d +fa6880f52645890d58478e4ee3b72f08b2d7113b2453729b37e4fffad13c5f62 +06b3c767a45c80bd479d1e24df660e46c83c48166fccec13b9cc4e62a6aaa813 +7c424885f83d7647b80849c0a77bed562f134034cda9fd6e8d7dec9e43f0c018 +9287de759676f20005556cedc67c31509a8bf56a5c972b5d247f21d8b6a58953 +7d92101841166d7781d4d80cdc35ca382d8c2dac3ea3a34f93dce0ff8c76ef12 +390d5d57d88f3bc00d46513f0358c43a22c413d9a6ba6b3e13913474b9e53bf5 +31136a5edf9192965aca98e06316c05fd3d6e88fe09cc08e327ed027b81eb146 +63e3073ea5d1d59b74149c5f5242d3cb253c36a84cc837d76b2ba36104aef0d8 +f9f4404d63c42f3d635dc9195ea582b589cb5b54ab01af9ae53f3ec95992c09f +a5bfe86e6ef6948bc387730a9cff0cdd365650aeaa5e1d52d8f88dd49d36e6f0 +786c7f4ef8c2a5a242e84cfd4dc50adfea0c2ac27839699b92fa8feb6436f2aa +d02710777083723ca7e481f83b637f19ffb7511de223a0a261324189edb38d88 +6ff5cb1356e8d567afe76f96cb72f88016e39e99af6aad499ac60c8a3205f253 +82c0312e1f2b6ee7b37d178bd4e67550276a7421b4f514fd293ad32bb1121234 +bff93d2297dd32dfdd7e7ba91c0544f79dfea965f4f67494f3ddd97d7881fcfb +20ed71f6b5cd27b12d04098a9293e273148590fbb65f6fba63e7bcf14dfe6f0b +51f870be20174f991329a5ef3d3c9fce206799a01ca102ee7999c2a97a19e796 +bb5f88922b76f922d302dd833ec532022b13ec573b375cf75e49718b2278f2b2 +4ce9865f20902d6358440efc9eab6e0e069ac7c193c88a044cf33f6a39388f6a +296f42c637533cc503adfc71c5f898c408a7e5479868ebd29c9ed02939ffd49a +2812baa355be429858e0c6aac60817d684778b71fb9a73e7ac4fcb078bb1a75a +b425ea09ad8585ab3fad79429321a8f96e2e1f02ad70e2fdbeee625bb434b0be +f8eb957f817c5699c7293e47daa4ead6d47f00fbb6c8674ef1f7729cdb19749a +ca9cd399a4abcf28ff71edececb2a955ffbe9ebf4bdab56256e7cd66304ed4ab +1b3fddf6431296aa641a8795a4006a049fd3b35074a865c901636b70619ec26d +aaaa8c8c9060938337144209f3e3de01e92293ca89583cbb4c2edec074bb4c05 +15130c3ebfd78dc687f0ad0981c0d27fcaeb28f470193ca13d98277dbfcfbf38 +f8353dbd04380abef7176b0b4199d7319ebfd88ece219ba6edec59fd158987e8 +9adc035b8fb2141be0e0f25d56e077e5992e4f95640abca7aeac3d929be02d40 +9a86dbcc043637c5e0f1a5a12579e57b042b386be96c9a8b3c4e79c8dd28a52b +a1159728785a75f2e579b8669a36a9f9e7807ff9d5aa0d8652609a47264a2003 +fd202bc8fe9cf80e2ef05ea5e5fbae676a77bbdc4308ab92eb0dd9a960f4865b +8305eef47abc2353287f52c766ea1c1b86fdacf0986e56a87462ac820e61051e +7f22cd8ea7dcc7838a45a08ea3fec105d80fe5ee5e87732bfc2e9d664a7ab43b +05321557d69ceed6b679797a67a0c38b9d101bbe870d746568325c52d4ca255b +b23f9672ce2b4e3fe944f5dbc388e575abd897d969ac2a81915e3fec3d7409ed +14de1e4cf7737b6e46f6c71142db06a799a7208539c649244ce73a58f2247e81 +4f241aba74d6ae593d47c227137ccddcf1f523a730a234c91ac3ae8a456cad1e +91a9480c438b047be40bb2e4038f8ebc34ecc3a8037454b7342c317871fc1d97 +42f26e3d956da7679a072cab96b27fb2ddf480d2f40ed88b2e5b0b82892c8314 +cec9bdc12433159714891b8591a051cf2cce7580af74d5096f53a65347488bcb +948fb028f310575d3429123ebecd9b09d83f30ab8c8ab65d49d691fac27e3612 +66ea08634f4c7d3a648ec068c2cf31f116951934864dca2755daacb6d22803f0 +9488117ef66e9b12663da9d00a3eb0280ba412e4b6f6397ee7800f250fbfa023 +3162addcca4dc23190a52397cda3285291842a2b269c4e07f17a0035fcbe785b +6a570e4b75692658ed47b6dbf297adf1b3b164740d1e851f08deca9c05a263a8 +3364c544cece706e77a32f6d5d10f8d4170d5246d92c2c9fae457e0f5e4ecd4d +08b4edfd42a1791cca41078d5e520807817206193d8a649eb39b64c80e126feb +240e1784da3c66378196828104c49e5fb86475a80c21de71e0aa36ac5e529ade +427c03c2236db0deca99c7c486ff463a72723efb519263916e73c25da625d0fb +e45258ad2abf3445b72cbf3e7e64d507198f666edec002e233cc0af6a8c1095c +3cd232e2ec50b2ede3e09b61e25996b4a64c0eec9d55025b1f47e53e0b128bef +a34646b4e2c13699d112c958590058e6b606cbd978cbb0ef69eee350bbf71ff1 +8213a42d135e77e2c53a8121aa3dd1e903dc0e961810d103bd70a2b448f29ec5 +c3d907d7243d76c6ae04c22a8fbc6c1a05f9b9ec97cbb0e76928f4aa26c913e0 +3f8c371efb61f370751eea6af25a3df4ab3da3e4aa263c2477343e4b19915219 +c4c52cf43dbf373c316b80619f479d9b531e62f26ef9fc6da13e9cf0bce74d13 +c2832f1c9d9432437d253dccf73cd699342521a3cfe8f85ccdcd23e9b240c961 +fce15ef77fad8438674b55da638df2492b29fc1a003859f382a776260ae5067f +93dd176181c10c4a45e8f237c5c9781e01d2e1e0890e1a6e75e2bbfda4d29613 +efdcdfb21317d770fa6c1ac3800f328bdb82b48b7320ddcf64add23374971af1 +50470fd002c01ef412c5bb4984737840da5c9e0e4d4b2b7747056a3865af6db4 +f4b9cd84d27dd2e45aa0d9f32d0cf58a5f1baa374359223cfdd07c18017660a2 +9227404eef0abbd0e29bd8698752e85448a5c3cf596dc805a87ff903ff890e48 +b7971764fcd8f921eefcc55b2d20cd5908a6fa35d56bea96a39ab521d985c50c +4e0213b30325d295a00d32d97e95646867122dbef37a3c866fd72e2f29ed8758 +a362a4f17875cba8be23d04a35714d4c27c4417039fc8bcd25365c8a4bb41815 +ce1f74949d6b6aa58fef0c4cbb8d54ce92d65d0a65f13ac6063de4a55ba5561d +509f2fec155b2181a169ecf14f1fab587569f260c0cacded8021ed8d7cae5ad1 +332f1061e166686b41277495597c16e728d6a8ff49f824df503a63322b442182 +665a12900dd48d1361342575fdd5c9d9ddd7bc73a937b2ac6257255414029a65 +9001199e9e1f16cf3cf876bee000302935493ae997e3f112420d7d3f06739b79 +eddc1bf7ecfc5316549d2ff228a4e28b522d6cfaae3148bea2755a45bc27dfc5 +128a9a38777cd3b07f91edacedba2565b55218d7891da863243cf68e7800b82f +0341740a1f5dc6dcf0125cda844867fe4945326f13a954430753a28ea8491bdd +c545e71e4d52cabc3f05dce434101d36a62328c5fe6b5df3864f9f5aec22f399 +43f72fed081d3724306477a06eb9b6fcc9faeb77e62ee4e20cc51600b1bb081a +1c5a00e064d5755838b251807ae57c85675cf04b69a66bef0c19c364969d3547 +55efcf31f8ae346582462e986e3a1d653c205e5d58d21de4553832c885e543bd +11eea2d3c08f883000966c99281251fbc2920917700037278d4934f3441dd535 +bdd3c52111ed0b282ca23cfa97ab25c8726acb13d50599245e532432572c35ac +b9391685d9e1deed1f95fcb151594cd63e79691b5972ba2c3a0c0a2ffaf3c9fa +5ac47d9177a691742e4634db6631c8696d0a30bce1d86a4fb737ab85296ea479 +fe90c51cce54d64087bfc80ae56abb5d04f5516bffb681e6b39f480767f2120e +97d1e8488f1f540e2ebf63eb74596670f5892f4c327971f697c7530778c3676f +2792289cb12486935c447d4eaf4afec65fe6c6962306449e33fb19fb9806f87a +8b91874ddf3e3138481fdc711f0954d73f11fba39efdeb55ed13b16b932525e9 +9f3c86ae60f9096efd4968759def8d629ff2838decbe4c68833ba0d64d1d3330 +b84cfe8ceb23f4b5d55aa5a9b51ee595aee0cd668b20c687d77ff83c803ab994 +c743b43d9882837c42a58cf704490fddcb5646d48cfd2e30464d710c1440513f +4417dfd66d39e0fa6c596e17d07964ebf2caecd0a9fd78e003541ba53468e719 +b7dac2685ccb9b7d857aff1d4432a72f61829010924781f5d15ffcf8d504e361 +6f86c6638469db4ad281d8ec365848b6f7ae1047114a2cd3cf3d1e46e0b4f40e +1a8d3e1df1c1b677702d7fbd5a5924f91c726de2e37b436250eb71610dd82cd5 +5c049fd044b4407784fd83387eb6a788103430fab4f682294b287dac43f3061e +d99c74309ae973bb998bbb2a691402843a1a28ee62ae8e8baf4d645d156b94ab +34680095425ad8b4dc27289e3c6818d6032f91535459d7595b2b9bfc2f44e782 +30f0af49c0a2223e1cee9e1289f682ed5e8ea7db99663a234719667bcffa8077 +e0118b0b9702538421dfada01d97d7a8f232464b9fc209cf278bd5fef80c14be +011a9f6fc78dd20ab012a30780db2507f4d5e1e493f30814ab1c70cda75ce959 +b5d515b2ee8640dd4bcda6710703a9e5670abadae856b86ef8e4143a5f03fc16 +a6c57ac7c3a96c50e45191b0b1c4f6acd622c400cd0f2ae9e9d51236f1b945d3 +71adc5feab8aa8422a28755b63978aaff787158a68c26fd29ab6e849b076b852 +2190caef1a86663f4e12cdf25ba7bf882ef2e0e21c77c14fdf940792d7bb28f8 +892a9ca0bbabe1c70c152f30f366bc86b5bb1eb3b54425617682a5463238c999 +aba3a7bf788a297d2a555dbb218b19ce501aac43d94a0bb6ae290628821efb0c +84ceecb30c140917a458db6fd011f3cbfb4a1cb5ea019db628c106e2a55f1c13 +448edd4a9a159ebb369d509da296da724f729fc7560c00c41f4309e32ea6fb71 +16f62325a5af317f106a8d8c2c01ecce6775d45fdbefdf6925e9a44604dda13b +27cc9a960a21eea2af9bdf6b3cd357d6097ad40df7403005746a30833e814eac +8db72c383fa42ba9fd007a263ce3b74c1356bd522d2611e4e960c9ff5204d46f +ee332f9f134e75c791a6d20923ece8d4dfedcf96ab45dfd751739dbd47b4863a +f0fda172848cd279afd9fac3cc5744c1fa8a5fb4955c6c1c952f56da06430aee +084507664f93c71d881b63041cdec58306100a0e8c77421d75679ce33e2a0a63 +ac2f813006cea69e00352ffd5f5914b63dbad5905a590ce0903ed9b9679779e2 +d9da62f478768776a173832a8f3cd66b6b62484d190baf2d834241000b0eec79 +f1e53b42a74b159bf781ee4415ab6acff86c5b0593cf463bf95d8fa82293a548 +84bb226f40f24591e5ad463ae4b672905e7a4222edf976e8ad889e71986b3818 +bd3eeb6a0c96787c6fdf3a4faed94f0ba0269fd082ac451531e3b0c01f996090 +3f821dcd64642868f07aa0feada34088a85e6644ef07f4402b4b293073e9d308 +bb298b0e44be36bdda218259b4f48f1b638f5007d3aa8ece802b485e7e9075d2 +6ec881fbdecb3cf58c8a3afe0d9835e7b468c648e52b2eddb81dcba4e9678bf4 +b173541dbec382423e80877ba2df94a605bbc2cdca2b76f74d2eb425d8191958 +804617f21172f397bb762aa7dfd0485cd020397a5d3e9fc9405ec7edccbcbdf4 +295a0057b7684a701bb7ea01e8978fb3367ecd089be19aab2828f6825d275d3f +60662c1e2ec5e98ecb99a96d6fe379e2fd158a7106b2190902f0ed71969b6daf +3f9e460f16f1b40cc2aa08330b9fc2e24802bed034b71de445a14bb33f642989 +4f76319eddee328319ee9577740fc803b81714a99bf0a5722981427ba0858546 +c0f77f3919070060704c3bd991d94909d2012146b88c0d35fba7c2de864e35b7 +caf0099c4630443625be3769b01526f3f0c8c821da9d546bc258c004a4d2b46b +886f1ef916f50d3f5fd139e0570b4151dd41f1f1b5dab0db7787105c77b86901 +73c562d3eef6ef741078659467f333450d7d80c67c91a26ba8c77adcee6f4c56 +c7f248dd92520db35768e703f7bd171f9e663b9daebeb9611cf48425b6b35c1e +8bc7a0b45441ad3854ac9b37061839f578256a8e41766d1a6b29a99a0195620f +a090d0ef4120667902b0587946206f294b78775d60ebec668f6e4fb9ca897e85 +76151b245aff8232a90f97a5a93e935c88579dc0f2e9da7cbd02426b3b15ed50 +30acf50107f7b4d4e2c32dd75d6d8c4539176a2244e761ebf1ffbf97d336fdd6 +ef9cf138326e10bdb57638235348eef8ffd33c84b426ec1c81fd8d4a3907d52d +1ba7e9b64dd56b8fbc2362e30f2451b69b0d7cbea1f3101afcd44242d3ff5b66 +89a7c05449b281035e983c6b8c68859734b232a73996a19d116ac4a94f7b482e +1f984371e7e9919c312250c35f6f7fee25ec23e562dcc25cb29ea79dff0e7c8c +fa19280288c26dd5c32f4aeb98c85afda533191809267f0555498da5688b7c20 +219a058efaa597125535871922ff9b20cfbf4c4b35bdfa4bde73ca8ce6abf14c +510ed2072a01c8adfada0064777509d4f97bd2baf66e7151ade76e407066efdd +2e08a15790c81d545b340019bd350c7b90b36adc8658c1848020a77f918e1527 +b3974710af503a79d7947dce93bd81161cd7e0b1125d2fe0edaeb91baf1279e7 +312fbed646472b352310fdfbefdcc4c20ccfed0d6626083b0261d7c47d966984 +8dca4298b9ddb58fe21bb391c7d45d9b562d38c4dc23acb5aa87e3ddf59ee238 +c91318db2491a24110af90539a16940141d1efdf4a13d202f9b9401bc89d7297 +5269cd5515f9a6186a6ef866cfa03730f726d7a4075e0bc6f094e9584a84cf1e +78489bb68dc09ee3f1356f4e45b8621e06078a6727eb72c36fca805213c1675d +4365255d90164f33ce6b2231113f64fdcf5a789cd61002b2a38d2ca5bf1f5361 +c9ae0f4efb51337e344fb7ce15f8edbdc9ec82a9435175f59b6c19ae2dd0b10a +944565e4b14bd1dcda02d42be27fb9f0330636091228e3b89709c8148932a5f8 +c5ba5bfecfef6de83eb414adc613d8534c4e4528d934c37e768d08e103b8ed2a +e1e49bb1b3e6cbcdc3ff63dac7994b8c09203d82a99710449277c20a34e01538 +67c5d5e6abebba650c441d3fe56de997e928193682e5f1faa93a5bc800862132 +ed3b6c005cc0e604231e3e61d17214ca38148c875c268a861a14b54e659dd932 +cbe6ea7109b273975d6ceed351f0b0876a0b647946d29097dd98b5f6bda7b43a +e6481f17743fda503b34a120c8c06f4798c1fcd4e521a30d76f2340df562b63d +dd4b27da8b583547d285f3848bb9fddb60d0ed22a4cb27a2784e8d7662e84ffa +eea50afc03b0815b72bbe9558c8959d0ccc00a8c8c9f740f95b671a66dfdfc68 +77fac12c1995d977495c9ccacd924e45a66f8739de156ee6962c7930f8aac374 +894f8bc396ff69f2249392c7c4248f9cf9ffff9eaf635e66a34511f39a066b88 +4866e776b8d6eca0319f23ca604ead742bb6f6f3b046454a1c0fc242551112b5 +c745e9b8f12723867b2b895c0f93c99df1d542b86c1c9db47390f2d6c3b57ecc +66b1a6ab514a47fd9aa6240b46c54a92fdf80fc44eeed4b8a136fb88b1fa5b9c +a2fe682cca4d0c5a3e994cfebdc270f48e3af91ae6bc9172bd9c73053a761364 +6ef9e68ef58c718a478e7d81e57f34a791c26269819c78574d7cc12632684219 +a1f8e1c5ce8b358d6fbf23984e59d9533ad310d158ab5baa9feda08717a7f5e0 +57684c455a7e3d833f82b4e13e9a92b0b8fba5cdd72a7e46709074ddc82e449a +c906474441066fdd9cb7f341f3a2ee9f2fbf5e4e1a350a45fcad6b2e05825b6c +89077d742619cf1f8434a3b5cc44998176667cfd5c5f4ee51326d1ee3e449915 +00bdaf57c88a107ac49c14cebf18d010c5b3206ec88fd06e3c5114581ee5a5e8 +c4ee5a5c3d48653fb23d28f26862c433ed083af01ed3df8e147548f9cdd882f8 +ca3088106b9c73b9e28786ffa643c343a940bf850f312666e635b8db95c6f70b +83d645fd947f6df322d26f8f9081cae71ba8b9d0de67d535b61146c956801d6b +ff9a69365bda9bc97d8d93142d4c367d5255587ada25e4fb061f8e430f73d2a9 +7142d9e4c17435b78805946e4fde624ea5d9b5c511c9afe2cfaf447cf08235b8 +575ddab8af93588e0c8206f08f883170ed4463da31a53cef67f01aab8f645acc +c2c764f24bf831dcf005833ccd1296025368b3d51a04efd095fd1355e93de563 +e71dd047ef49f5bf8c17b01b2884872257d743ac6fdd8f54e27a241d7c75b387 +a8841d8cede676e35d4f01acba2acebd8b22113bfbef80d5eab1e8cf56f649a4 +516ec097872a597e83519fc1397c7d4a4f6db7daf044835b17d085578f5a3776 +fd5ed9235c018354e801fac338aa7ee581e97d91df0196ea4bcb09f0e6f2e2bf +b5470827f1b6bb0b7133c19bf43bbe824ebdaf9526ab15ff8ae8848bf0decb3f +cfa7d3f5ed71191894c705a27cd9aa30fd384ce6a5f0bc51c5651dd2510a3481 +d086aa87595f885c4c0afcb02b1837cedf85c5e64d440e36581874a117043b75 +78da94a069cf2bd57ae70c230e8d1a0d4637223d14a9868835d8923feb404323 +43c22d0f0e8201c20247c78abf9267915069d6471862c2a0c51ee3ce3153e305 +4a4ec6ea52dcb55df358d1a0d8aafa79fe08ebe4d22e9ecb9d2e50a7f367cded +7169f84285c482fc1effbde6feea424ecdda2494127c7b896dd05f5e62f5fd1c +031de960d6ec59954e8405081601df741edd97f227fd426e0998ca7b9b498beb +4cda9a16715cb699c46d1386469958079ddf5ff174d70338206208f0b9ade386 +03e8dcf31e09f44976c1ad762896a615d9bfe54978b7c3914458c8af4d33dc62 +9f9af5171df3b9e548b24011ec5f02e31dc379582e16f3c999f047b82e7f27f0 +4bfdd827c9a1d19e4230695d4ec499afdb6147146cb6f5a8a26efbd6d0c5f205 +34cb9c37fa4c4b6122f55bacb756173282abd6a2e5219c25b86a5181021f0bac +6f17f89f3b8f74c281aeea7c1d4ffac602c2364c9e1ec8b0a623bd3541765cf7 +aa5febbb6e857810a564850259ac4ce6d641f7b765dd46584c43c8113c8583f9 +e7763d3f4f83649e12e15557f48dcb0a637140b2f7479f78f1f64bcf8a07acc0 +43b9d9ac1f8b2c3b00c36b46d8e514c998fcd47354b364e8c2434e774ac7098b +24c3bfadbaab5bdb8ab0a6b9773aea4175615241249a2a58222df8c53c32d01d +6adc5fb4a933605fff98c7d011266380b305403a79867936156240a5c555105b +95cec3873530fa6d37e8cfc286118a9618c60d6282412d0ccc5a8e3af47a42ec +29cee0176d1c4802144619a5bf1cdf9ec5b8d6f87c379c476ab941da24420a86 +04a0b1ad7884b5e05136139afccf0b7101cae4b8f0bfdbe276aad1b95e2c0d57 +3902bfdee651a202b99189cada176a22facd053bbc73af1c90cbda10635798e9 +8de05c338e90b3dc4afb8d29010590b641db4a9ab707294e55e44c97e275b52f +b88f52a6c7e545cdc73de46da699c8c3d895880368aa035a137fa8686ef4f64e +09167b9e523312b175a166de5e1297c60db361d9505c12b48c1780a00be2a9a1 +43bc6362c731eb26a61097c62c28d2cc8d75ba3c63e31a49b9cb5b8b7fe1fbbb +6153bc87b4538ef5cd4919811329ae933d86ef556883323ed5a6db5c98c11b2c +cc04c4f937289590e5f7ee8d57940f21373a81b8b92eb7ca978c1a07af7b1065 +3e6498a6e2fa734269d61cf0dedd647eddbbe395e1e8190552f9a4332082bee0 +87f28fd6bb19e48de8ad662f41b4a5de657511f2329fe6b541f50ec43be24d5e +e7336712535ece6a590426e10422d130f4fd8b0fe314c9fe068c6a45835994ae +7bfda8ae49fab23905e4d8b374fc654f336b36b2080df61abc288b26b9ca7b42 +68e46f120b82cdcb74715e6d09aac096fd117ace3383beaca52aa248cfe307ca +8930a34b7062fb153d968c93169dd223449ca68765480cfdc5df39be45055d37 +8ba14daa5a4745a9f7b76ab664ef3d5b2fba29c60a06d1a088c05eec6d95c080 +1974ec344b24dfd892db7874e3e9df0fd61ef8f59b525f92f2b374999f923f34 +668e55cc90ff2890107a7528853f44177fa52a071f0ce997ae94b590289411e4 +c0669c936d4b885de8427b60b2f8820bc9d6781bf275a95921d8cf4f55cc8cc7 +73ff7d001f4fc5c41ea1c755ee48c5550677755aee061a3ac85bc0d9c1e5b410 +f38ddb877fef4ad4142c87c42b6fead87f1daa99ee0fbe7e7eee948672373a3f +7ace2444607921c61cefa7360f3194685acf836165e19395c2b2c9cb5778d9a2 +6f35f91d61e5e4838aa23909b46a899a1e02e27ebfb5368f1080272f6ae9adc5 +44f512191bf17dba3eb22d98b9b934f359fc86c9e451d2d4194632a7db5b1270 +6a58cea47392fa8cc24f6b4ec5d172e9e5601617d8e22e837c0b35b4281364e5 +81757e2fccb98fa88879d7ccc568fa9b183504b491329320c968b5611eb1f337 +a6e50d6faac591da994aa47761865ab84651c328bf259be59bd752f110f89081 +7553823cc67e36721e95f1c4e2e372e020f2b2ffb045aa70ca4dd6d55d88e32d +c8a17492ef28a44d4a536fca8bd75b3dc392fc296377b2c4743897c32eb65283 +e776e8f8fd97c661c67c3f0d97343af141bf6b77499a13af4605e36d3f4c3fab +12bc5daa5db1d12dfe5915acf14409e9302b1bbc8c5861948eae329ea31132df +8494560e564bc16073c7a777fefb30cac6f4b8943c70195289946a60f06d4306 +4536c2740995b7247451c9e1619f7e277af4bcbfff6b68553ae23eef7b179c16 +cab6aae7b6f5fc72e0d7cac34611d1353716580948ba69dc534a3fa592984244 +c1bbd0a6d3f1fc4d9c8ff48e770f5c65be3b5a961e2ab8931e73c8222e6eb481 +86e92906bf2b44fef5a59b460bc88ad1837730515d82c337c349cd087329ffff +0718e22bd3f09fede7042992a191575008890c5966f1230ab186f019f1794671 +8e619ce8706fd94bf0fb1d6ec22513150c1b9496742a94e048df079bde5d7bf3 +9db82668e5f5453962990f4e3e0245cd2e767c5cf3754c1371bb37bb7e14db75 +a90fcd5de1a7d75748289177ebe65a397762b5b1dbd468e7cbb3fec66a6b3f2e +8e9a1802bb2cc4506b3ad1632d674f1d54a0c1c08787f274b48d60e9111d8035 +be3af44a3a12e16175ebbafdee5cfce2a9a26cb9826c86207f8ea895e5c2fd66 +216be83f81fa47f39dbaff3789865b1bef63bae463b7d166dfba5e3e9967697d +f6c91c7dbb765bdb91f4ee5920567a94199416484e75cb6b1c0d1bdd62e831f2 +4b6d7b1009bea14c78ca6b8f1020cb05c9bfd13076d5f335d0b8ae417fa26c75 +d04a28a778d8858e64736fa0a5ba789b58b4d05540ecdf28ee044ea18704076f +c3c92090d119bc67594021aaa4e89a063ac0e64f2198c5cdb3951c7681ababbf +6e96666f467a0fdc729efcd2f1d94e193d8fd56802063840696f3eca394c2841 +6b7e6bd4759aaceebdf82bb473d49256e653943469db71794ae96b3d130bf97d +752a9b3bc4449bb756039609a4f9fcc63c637d8672f2f24dbd49a5f9f5139c54 +23c4a1cba345784f28b7933dd3d2c9938b35e63678b045ec314fd9e9188f1b18 +ca034a26f5d7e2e779cfe4d16560ed2e4f3ac2bf1b5324c6b342e29b5ba3c9e0 +7bf1bff519f91bd9cbd4c198f0b98431d83d7309d0a4b62bcd450d62649e5b41 +335d87c297d288942a637999c2dbdaaaeda4f68d166265a37df001b1a4a5f561 +64a9a7af810851d98af3e01b0e4bbcdf33d3035b98118b48c6452da0caecca10 +228a308a0a3844d57628b2dfd7189f1fd252ea1ce3cbbab7e71329b886cc36ef +b40f642aa54698e87f4ce8b310f0ee29968ae04de003fbaff84d866e4220b607 +3b3c5fdfef88354a54d4318dd852ffeb9be81630c673e425fd3bb6ddec9f298f +a9982f8a5859b983bcc09b989f4a71ee4a54d38a220c3ce7491e7d996d8b0e11 +b085acb8f217be35f3eb7fa08bd8ea8c66df8ad00e329ae732ce12801aa8b1a9 +40db1a7b303967c185b90229a1188eeda3a1565dad1c08181fb35ba03667d513 +9f2b6a71dd27e11c7db9a7eced6404cb09250fa0ae2f0fe7fa61147039cb8685 +e7a1566e25b40b1f23ffda5515c107e3487ede0a148f2d8500f102b4f517c956 +87b2e0399387f4a9067ecc725bcb327ba5e98d5c68fb54ac99834146bbd7e91c +b04d9576bb16e39608c14c25aae446d250b388610b2714757631c18feb700057 +c0022456c9ea28140a150dc6fea0333ecf9c291d95505de3c053c1f957f76a06 +a5e96f792200eb5f1811e86d70c9bf1e0d28da28b8c6042555a27ddd0aa168b0 +0f3c113217d990f6ead0a6ecc4ff4c92c577121d2b1dcbff547c03184360a6b6 +3788919d20302f0c35541b48cb6e926be087b1f7308041dc8cb8f161d8a8bd32 +ecc861efd6ebe16568dd47b82fd1a02200733fef4176a7477185d79e44c128fd +c54f4f28cee76dcded7399bcfebbfa620a6f5e4df5350fe6005f84541a6e77cd +97ddcf704455f96435edb3666d9cb57521f35e258eeb2163944c90cbdb3d4a70 +c94b9d3905fff429f16560c6bc44aa27bb481e24d03f29f135eef38d973d12e9 +c251de1d9b976d4d7bb7b4f62dc7a6093d186d240db797432dfb5e71f8fa09d1 +b9b6cbde7b4674bb3f38967091b8b375c0e7dfddc0a206b0d8908707521254a3 +35be48528674c8597822a0a9e9ca84f0b3d2a44ec9deca0db51fa2ef3db16851 +7939ebef52b5af799ff6fe86b0cc459be94187af479e95651233f2515e01ccc9 +57130b01e6e97df375396f8499535a1fcc0dae920db25db41477263a847b578e +8ac94e59fcb69b97a1ebf8d84e2fab6925bd16077d5a58403539acb40adbb89a +55623d7e09a8481e71b47416751f01881ece4d94ea9cff6dabb3546ff2cde4cf +1ba77ecadcd4499637e26c5064a342d71cf50d725c40286ad352bf97e0da521d +58055ff97c68768b4435db372f0b3d23845d7709ac47b2a965327f62573a8fe9 +e9c5c435ddf12478bcdfde41c0e4303b03949446ec9291c553eebd9add6bfb9a +45165ce3820af4264dd3b54ac41e4b2df6ede1286973660e37281c7540beb69d +16a86ae03b8c5ce7ac142585f72a0cba8cfa3c71a54db60d1305790ffbaeee1f +f31774926a1da96a37574c9a5b66daad0a68adf9f104123941ac4d3342c13bac +b9b124ec9db917032e3f495107f3cab93d57751e88a5369e27358ecf4f9348ea +543fb55c0492862ce28cfb1f28e0e5ffaa32df8fdca241db555619583fad76d5 +04ef599f233c424359768f6e8f0cea95774901577277dfd8f90418598e +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndResource +/F134_0 /MFECUR+NimbusMonL-Regu 1 1 +[ /.notdef/dotaccent/fi/fl/fraction/hungarumlaut/Lslash/lslash + /ogonek/ring/.notdef/breve/minus/.notdef/Zcaron/zcaron + /caron/dotlessi/dotlessj/ff/ffi/ffl/notequal/infinity + /lessequal/greaterequal/partialdiff/summation/product/pi/grave/quotesingle + /space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright + /parenleft/parenright/asterisk/plus/comma/hyphen/period/slash + /zero/one/two/three/four/five/six/seven + /eight/nine/colon/semicolon/less/equal/greater/question + /at/A/B/C/D/E/F/G + /H/I/J/K/L/M/N/O + /P/Q/R/S/T/U/V/W + /X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore + /quoteleft/a/b/c/d/e/f/g + /h/i/j/k/l/m/n/o + /p/q/r/s/t/u/v/w + /x/y/z/braceleft/bar/braceright/asciitilde/.notdef + /Euro/integral/quotesinglbase/florin/quotedblbase/ellipsis/dagger/daggerdbl + /circumflex/perthousand/Scaron/guilsinglleft/OE/Omega/radical/approxequal + /.notdef/.notdef/.notdef/quotedblleft/quotedblright/bullet/endash/emdash + /tilde/trademark/scaron/guilsinglright/oe/Delta/lozenge/Ydieresis + /.notdef/exclamdown/cent/sterling/currency/yen/brokenbar/section + /dieresis/copyright/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron + /degree/plusminus/twosuperior/threesuperior/acute/mu/paragraph/periodcentered + /cedilla/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters/questiondown + /Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla + /Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis + /Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply + /Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls + /agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla + /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis + /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide + /oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis] +pdfMakeFont +%%BeginResource: font ZOVMRD+CMMI10 +%!PS-AdobeFont-1.1: CMMI10 1.100 +%%CreationDate: 1996 Jul 23 07:53:57 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.100) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMMI10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch false def +end readonly def +/FontName /ZOVMRD+CMMI10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 45 /arrowhookright put +dup 58 /period put +readonly def +/FontBBox{-32 -250 1048 750}readonly def +currentdict end +currentfile eexec +d9d66f633b846a97b686a97e45a3d0aa0529731c99a784ccbe85b4993b2eebde +3b12d472b7cf54651ef21185116a69ab1096ed4bad2f646635e019b6417cc77b +532f85d811c70d1429a19a5307ef63eb5c5e02c89fc6c20f6d9d89e7d91fe470 +b72befda23f5df76be05af4ce93137a219ed8a04a9d7d6fdf37e6b7fcde0d90b +986423e5960a5d9fbb4c956556e8df90cbfaec476fa36fd9a5c8175c9af513fe +d919c2ddd26bdc0d99398b9f4d03d5993dfc0930297866e1cd0a319b6b1fd958 +9e394a533a081c36d456a09920001a3d2199583eb9b84b4dee08e3d12939e321 +990cd249827d9648574955f61baaa11263a91b6c3d47a5190165b0c25abf6d3e +6ec187e4b05182126bb0d0323d943170b795255260f9fd25f2248d04f45dfbfb +def7ff8b19bfef637b210018ae02572b389b3f76282beb29cc301905d388c721 +59616893e774413f48de0b408bc66dce3fe17cb9f84d205839d58014d6a88823 +d9320ae93af96d97a02c4d5a2bb2b8c7925c4578003959c46e3ce1a2f0eac4bf +8b9b325e46435bde60bc54d72bc8acb5c0a34413ac87045dc7b84646a324b808 +6fd8e34217213e131c3b1510415ce45420688ed9c1d27890ec68bd7c1235faf9 +1dab3a369dd2fc3be5cf9655c7b7eda7361d7e05e5831b6b8e2eec542a7b38ee +03be4bac6079d038acb3c7c916279764547c2d51976baba94ba9866d79f13909 +95aa39b0f03103a07cbdf441b8c5669f729020af284b7ff52a29c6255fcaacf1 +74109050fba2602e72593fbcbfc26e726ee4aef97b7632bc4f5f353b5c67fed2 +3ea752a4a57b8f7feff1d7341d895f0a3a0be1d8e3391970457a967eff84f6d8 +47750b1145b8cc5bd96ee7aa99ddc9e06939e383bda41175233d58ad263ebf19 +afc0e2f840512d321166547b306c592b8a01e1fa2564b9a26dac14256414e4c8 +42616728d918c74d13c349f4186ec7b9708b86467425a6fdb3a396562f7ee4d8 +40b43621744cf8a23a6e532649b66c2a0002dd04f8f39618e4f572819dd34837 +b5a08e643fdca1505af6a1fa3ddfd1fa758013caed8acddbbb334d664dff5b53 +95601766777978d01677b8d19e1b10a078432d2884bb42d1f224976325883657 +05acb022d1e9cb556e37af91917c78e98229e3a4dbf03ae741998542977ad6df +1760fc1f1a479464922afda2cba7961e9da696b71205e19c542c97f25419c43c +fa1a042ba0cf5622ffbd3e775d0d564135d99b9ffba011eebc4066b003ce2f88 +825936d7393d05d3804601cee9d123120fdf73624a9d4e361a28e998acec53f8 +7a62a0aee33be2e96542534a8af24497d1c377cd7f723767b44857d94c6cda7a +c3d6f0087fa36655dd2b81eaecb31fe4f4a2fb1ea9fbe8b83d35826ac93fbb4f +2bee014f41f8f276510cf5ce35c3954e8cafc521d0c3ab80ea8c7fc29427a1d4 +42d6f6c1800919e58de9ae12304d718ad80febbb412da54153469cd51a288628 +ad109baa77981525b3d9b0efe593537fcbb8520d38cccbd5db171a0385a432c1 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndResource +/F147_0 /ZOVMRD+CMMI10 1 1 +[ /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/arrowhookright/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/period/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef] +pdfMakeFont +%%BeginResource: font ERVBFT+NimbusMonL-Bold +%!PS-AdobeFont-1.0: NimbusMonL-Bold 1.05 +%%CreationDate: Wed Dec 22 1999 +% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development +% (URW)++,Copyright 1999 by (URW)++ Design & Development +% See the file COPYING (GNU General Public License) for license conditions. +% As a special exception, permission is granted to include this font +% program in a Postscript or PDF file that consists of a document that +% contains text to be displayed or printed using this font, regardless +% of the conditions or license applying to the document itself. +12 dict begin +/FontInfo 10 dict dup begin +/version (1.05) readonly def +/Notice ((URW)++,Copyright 1999 by (URW)++ Design & Development. See the file COPYING (GNU General Public License) for license conditions. As a special exception, permission is granted to include this font program in a Postscript or PDF file that consists of a document that contains text to be displayed or printed using this font, regardless of the conditions or license applying to the document itself.) readonly def +/Copyright (Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development) readonly def +/FullName (Nimbus Mono L Bold) readonly def +/FamilyName (Nimbus Mono L) readonly def +/Weight (Bold) readonly def +/ItalicAngle 0.0 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +end readonly def +/FontName /ERVBFT+NimbusMonL-Bold def +/PaintType 0 def +/WMode 0 def +/FontBBox {-43 -278 681 871} readonly def +/FontType 1 def +/FontMatrix [0.001 0.0 0.0 0.001 0.0 0.0] readonly def +/Encoding StandardEncoding def +currentdict end +currentfile eexec +d9d66f633b846a989b9974b0179fc6cc445bc2c03103c68570a7b354a4a280ae +6fbf7f9888e039ab60fcaf852eb4ce3afeb979d5ea70fde44a2ae5c8c0166c27 +bf9665eea11c7d2329c1a211dd26bb372be5822f5ea70d99eb578c7befd44cdf +045a363056e5e1cc51525ea6fc061dcebb337208eff729802376a2801424f670 +0e7e6397b28f15bc10b40012b0a3eaeb2693e8f7f627c4c9c7c6c5bff105c1e4 +1b2b9e8f09253b76040d268b80719e1b3f5a55ab7b892ad5e69acacc6c1640eb +3067bfc64938f41636db8831883bddabc6777dee17f2e84f1d530bc76f51c621 +75ec6b727a82c193d1c0801ac492bbe281b46626bd21f2adbbfd144793ef754a +ea5f1cda3310e83d78a098160c66d6b0c68d4976898d9dc1a08d01740ac3e7f6 +8d3ce0a7e109104248cb86318400bd82ef894efd9c9456e97055286c144d3efc +d2625110f1ae76241079bec19939ac962e0ba813359c15b07c74d5e9868e2167 +ea1199d21ca8827cddf1be8357261bd32e79fea6bc475577c5f6848345bce58d +f5435281572ae6b33b53607ebee6f862d4c752aee43c00cdbfd258c7765b1358 +5d6165ee034e5815de79cc26c4a720607bafa6049710ee3782bc2cd84fe2473f +1335d20a3b6e9e8355af36673cdbe63c27d4f0e183fedab10031b1ee33b9573a +2e1961b7c6baa41f7c3ee707fe86071ede5756a00d7b3bf0a21b7c3cf41093cd +66eccccc22f4534912cb900b08e69574b07f246305dcbc238780278aeb8c9e55 +3d096a944ec7aa9f697f354aa137df90a9547efec1cbd568cb999979f5aec6af +a84edaee1564d178541cf4631081781608fd38964257cf89b1c8e0120b3f6af0 +793597ad553cee5cccd5c4f09cb0b4e998e6e76243191af7e93833d067833f0e +53670d7e996ed67cfe6699a6e3815932ad272af4829c2ee08a30d3938c928d1c +e89af71192ec1247ca233093aafa54ffa58f4aaf3fe9c62302e598f4ff8cc32c +4d318391f7a36d0d8b416dd36d776b301425cbaf82d520141238781111a14cce +7927e2af21ef837558002539aaeb170fa7e7e37efd447c37db455d2f08533155 +53f3c5c3be4817680efd0ba3a114db6aaba6c4d0d57b09ef8baad463996718c1 +9d155a62d7ae82eae4c82760c594a6ba3c7ee4290f0d898bb3e404ccaa91fea4 +eaa2146ac6a23f6c5a8aae834a0587d990024bbe8de485c71b916ad96dd66792 +a732a188e6a57c459ebbd7756cfd54770e2a8d81bd4618d916a30ec7084b2492 +5f77ab14169547eedfefb6f03c7d5365cef512df194628d5fbea6cf56d0f5346 +b6b6c1da1dd8d8321b88807b579bb6a0c8f69cd919e311b6ade903b470f4e0a3 +dd5015c6432452ecec048dcd14814e47def4a53c5ca6fa9e91d8a28c719f9348 +509c0e17d632f8cb3f7468bb0e7f7f6525c086dc7efb997a60e059d3d4938489 +23e60f7c67fa6aa8062594f122a48c54aa7c049859928a3dfc72752acad074aa +416c667fcd176da4d7d31a9f6be6f146d4a9dc78f419fab7c9e6c74d40ea659c +24098088bea26bf5a725fe56025d1fcf8465ed7103702aef74973f6fb697e645 +e902d65354a44bb3489007c555a6a08bb057eca27c93bfcee9de42e2782fed4d +664ad7f2d238b7eda1ca4ad473bb9559e11a9f214e258ce1a2a60512975b112b +336864238a36732c3adacbfd52c85a0dc809ff955f9c81401f72107f3d263999 +a69836d76d228ab4f954b00da07bc4a4e165f2dc5ecd8138cc408ac22217b15d +8baf04408d4b47e55129b0e596c93d10cd42372292e1ff483868e8510076f7f1 +ed8ead1bdee2b49533f87ddbef2abdcbca432307f7ad0b3c3d4721f3e67e609b +b06f8b7e66af7c843aa1f71bdadf0f4fb6baac84815c8154a0023cfb68282b4c +8e24e478f81f8d26ef82d6d0e1da4a65478f4a1f65a7dfb4d1700207850c33f8 +148158a784b452ac6874080039e2259431c05c4522f1d67522e273b443ae9820 +adb5303cd0d839ffd17eb1fc6957159a569f64873b4b3bf99349c486a3af2b20 +b6b9c41263300ab0844d24daf780b4f324eda854d4e210daedc0e34f4b67fca2 +1265ea3764f8f755007b62e9e18e80bd30f3b96124065198c0a5985ba2172550 +8c8eabe77b26df4451f5068956fce111041a7d23f681ff2c1b93344fe688708b +61a47674c318d078fc4bf79217659987dcd1bda1e1b74068960036c472906152 +cafe4a8a702d271a02c790ea3e440e4f415556ec703a23b7aaf7bc50c5a32f7f +fee6426433e945c28be038cbe5ee0e7933945f052757d480c58d4d7dc4ab924f +985e054fd553d1c037beaba29b14e823a4091b08ed602a69d1c3eb0fd63faa93 +36db22e6588d3d2fa727916163030958cc89b3ce99ddeda6190f97e039f9821d +ab4e4d9a15cb5094041790b995d8950412bbf049bd1d8afeb8bddafc6aef748a +f2523b8313e13f90f966c134e39d52e10b63e30aadca42bbac5962e4e3f71337 +bc2fd40679beb44e111250352f04cb0404158bad9f74416c94003bd12c88d9e9 +5cac3a3eb575733eb44a3c32946dacdb3405f5b4a2513fdf9e6bb2e6e21c5385 +6c527ccc120eaf95d400847dfc9e6a40806330442e1895b53a6188e57c65b466 +da203785fc322efd64f2e6f66f996bf7ca035bb2117648a8857f1b10469aee10 +dd22d785de27f01f1d725b56b380917004a06afc0046335f97a2ff20ea44f794 +c1dfd6b107549e39247a5cb3f9c37af849e9c5f06214a570113d91ad4e14d9cb +aadf8ef93a933795c0cbfb7204dc605b4b3b95b9fed0372d8df634f7293298a3 +6aa4abd1f212ecd5d4ac49d467567385f80e163b9464f6554e48ff78d45aa402 +b5ee093a8f96da45504e41bfb1a72f579031efa801690a32f4e248a5f773027d +da3f3721d4fb481fd1b8e81054aa4a700e9964a87871e01f03fe80ac4215cdf2 +7a4944cf89a893638730631261114f8aab967fe29e280124fa8d51fc94b1c552 +db58e038097172d5f634ceafb877d7caca03436cf6bf40afe4dc99ce08d3605a +78e2c90ffe766fd3ac0e8b2ab247c3f689a55e350cbe80a9a452bf8666d5710a +6fbbc45e4690afc625bb7a8a29bc17aa582b6e200bd5123e26b2d445992a3a5f +7aa128c3f6230588c41c6c456655961b823e65d7471ad16f9aea07c2b3d39c45 +726f023ea4780719a3656ae18670daa3bc084e60fdf2ba1ff0204f285d72d9a8 +269430e406cd36741bb227a1aa28cedf9484689a78dd5495337bde66b5a790fe +4af761c0b505ff974e4c7f67348eb1887b5b9315a7b3455d3677bc77b61d48ec +f5ebdc73b25eeaf12a6c896a54b499ba5f2897b7da9465c34561b23e0e740eec +fc7adf944329e003f5266b94a425f3864b167a34d0b9d259fcd8d741c9dc0fb5 +bffb8c8cef470f923d7962cb5806c67763358a9f6ccf78220f28e45a84b0ff35 +c585c18b19c61b51cbe58007fb852e0a92ed6d704f15ff0f863528db72ea3dd4 +3ea0af466fa5b60ac4490aa5db18a649c442a60b4f824e914915376a127dbe30 +85a3c56ef4233579b756eb62e04fea0a55503f88bfdf011436d9d5088e027c26 +daa8165842a4ddd43fc3ab8dadbb4d53c5ba9a5b51f33d505fe3ed168109f1f3 +9ac5c3357e48cd9e3adccf2daaad831000e27307d6cb2aa6ecf5f92cff39b266 +73b1d3587e029313101a9075ab35de260f23f3d3bab5f7a6134fd07c076dcd99 +7bf2e7c40ff0c0fa1096312b791d638b0038138ed5c578e51309444691c1b182 +8b346fe0286e13e3907beda13044177c788b4948a4dd398aa9fc317665b250a1 +3570a783821db58159b825b14c2a639f62995a049eeeb8904226a8f8e14a7959 +731a74dc4b215d7ec095ebe86a3bf07080cdb0dce6d06fcc2e3a57bb04944f90 +8f395bd65117984c1596303c2781e3997bbfb6ab9f354ebcea7404785d8dfb04 +b19a3a6792807fe5debd6eeec1ba9ba9a37473d6c435bdefd5b2ea9c21d9ec79 +0043b5ad1b0a50f9a24594d00f8fd155681c33df8f0c0b3cd5a4fc275da65dfc +6c65ed8713956bb94b6281a4f39c8ef72b932adf3f6ecfa697ff7d84f93e7a29 +8fab7b48172e32ba7b3135f4a2501961f4a1c50403fc38c715743b55095ecc1a +38f11f1475521fa00f950776279e8a377fb4ca4870c8daa4fc67efe4db8e37c0 +d56ad93cd334ebe18dd6d92a3ea48b29e7e76eec5e8aa0db20ad690869053422 +8567c4b72be2093426677988f8ac9f7fcde0dac8bae175066a485f3b1d0c2129 +9e38a93996a0eb7a3357ee43bcdf8749bcfd7e7e0a23c7d9e118c4da7fff5661 +07454fc1ab28a875af7e512b2432256c401ea462d9aeb0a2f97270cf2aa8ec53 +1e5248ad52b1b74a376faaf7772e948f433cea2f0ed4dabec00855a394fedb83 +1daff1d977e9b816ebd27801505dcaa51f9ab531e6c1358b275d3a6ba38f4f4c +528f2dceea3a404a6362e3cfef9d904b573571a4e634d4852f3b922495af19c3 +c63c736d1e8a5b15cfc4da58f26f22be233b4579377227110f8fe5b0df57b495 +2c14d2011b6215b855c36d901f001e24261089f5edd39f7e5bbb2bf90c6f5c5e +7ba8928434f52689365ed48123414ead2e00f8860e60afb5f59d2715c4ee2b3b +2b10399ca1c3f70259c63762f64a5a1cb6b1995030a7d775a04cd77a95436e4b +c3b1f3d1959ded9f35fdd7fcde9b051245446dcac11fb3d0228ce4c012a2f201 +81ec3dd2aa1bd66ec02c93e4784268f754c9f0eba42d27b755bc58ad00e09e04 +e05fd21ed0c160353d2f5467b5903b4e1d1b8666acce06ada99c063c684d8738 +3d338c579595d1e2ab301c4236183cf2c3be0320ee83cde4ea050160b58787f2 +bad8154825c9b29cc14682e15db5f53aba109799c10f25fa2e54560fdafe6c91 +c246ae56edebe0aa30e152b61fa64e517f6cc41ac7b3c25ecada33e3f6d6ee5f +562542e0e66d9c07aa9889505d51452cc2ee73e3683e3fabe26f003b87d9fbdc +a376e85ad9547c23e463fa073429d32ca0e58326385a89106d5b72cde3c00c11 +c5f40d1e8b61e6cb1cc6416e28afa6caa469682ec8365081a21d77a8b1df7167 +6344226bb9a7533c0fdfe153878a3af3088e520b94933d0099c2ff89974bf795 +d871b9e5d40cd7aac72a99f351d824f86d33cc89bd70dd41f1a866657bac3a58 +a4eedf997eb49f8d967e148f381e753d5e67080d2843d44a3585e078615bea47 +6c882773d995f4154fdb773a7d9e29fe46e464e602cd206063c96fc51c30ffed +cecdfa28a951dd5211acd684ed3efd9feaa5aa98b091aece8681999d7c8ce708 +1c64f09e18e64198b841d7824e03de11101493975ecb1b7d556714725a14bdb4 +5d9237ecf693202198964c1554a04ab3485bbf9ff863441da3511d8fe6363e32 +a38a11f4dc6a1ee18bfa3a1c2c93a90675b0c21959054b17b1af4d533c87ac69 +08d0c344fe817d6817a74fdb46f35d3b48b9128784f43a68d809425c6570c600 +9a76199111e88a1c9802de558332000dbb9d1211929d509af5915b7ae8ea1c3d +d2598f5007de8e7383f7453fc6a9c0b91c80e9b1742bf6418dca69450785fb73 +12dd228889cfbc3f6711a26022b29f9295ee1ca8459305fbf2b93cb3fff5b6e7 +2b5c1d2c4d453f0b9a53b6f361136b1048b30e7c90e0de8edda423e55ccb2e2e +ee7b502af2baf30a92af542869b8f26ee28509dc01492095e0c27ccaa30e0db6 +3f02f11dc0ce8a94b8a8a7ef735e4fab04830ef077a8d788b224c184339274fd +5f7b547b77f81bad985c73b05a79d3c8661a9c2b71c7313d8b9cb50ae03aee95 +2dbf1afc9ddfc00d59e6f99021dffbb66acddaedf48df5462fc528dfdafa5e5b +a039d6bb9bdd1a78e47684a3c53ca307abd566093c2a4f6b9f0be52d4f1f2758 +ec48370eab4e1e6ab393a23358bae52fed3b270124639dd0a56ca6afce77494b +34f46433cac90eb63e7e0d25de6c8a0670b14e83d08a531cf2148002f9a6df19 +7f87c989b831c509df23057b3ec569eb5f5f530edd047a53b5b59f483703bdcf +b578fdc44ca7487e3d39479ca4760457e7018af01116b29bbdf7c3e0f5c07a8f +7f502c15059d9635b7ce630194962e4183c3838d9401260a743d8ebae1665ce8 +73bcfe5d090a8984e98030fe6b21dbcb49398b6905ec04ed310e37cd069a85d3 +7cd9e3a02dd8e036b2a79192ec036cf7e10653e08928cb8bf4911122d27e195f +48d3dfaa34122ef2df8e023c9ea1f246af2879f5df632719bf7a91f266d823aa +caefce067bf74ee0d625cf128c3930ab83521380e0ceb5daa2384da4ab23c34d +0db8a4acce1a33b6deea3581efe521279147ac1b36e4f6b2c08df2b2dbab051d +264a250a06ed06aa906c2682ad2ecdccbfd880941bd824d021f086560bfbb359 +e2519a2708a4976f42913465e18872a93cda809a85730a4930ef1e3e733292c8 +06c80c8865645c6a69b128b1333c3ac8c616d3e3a0163aba54c7a51a063fbce1 +4018cabe1b1ebdafaefc27d2b22afc96449cd515cced671baa88d51c5c778bfe +00208127f1fc35db9c6afe4fc91dd0bb1277181508d7b9868a055025c65394e9 +ab7a95494118d20fbdd7ce0b5f11492df5e8c54c1ce1ecd2e7279e07fe6a62d5 +63d7ffd38f04ba75057cf190319634f57aa246f03f5f904ff952d7b1006d43bc +ce88d89ade52e861aefad538b644942b6b97e778000de2f2ac2b2280d85a823a +176d8387ca420a441980d3e866604325917f78572ec9ba14a0944e37480ad3ff +9c10590c0705840d09c8bb076a5aae81b5e315ca901e262b773143a554360fda +3dc799fd07482666f47c17d8a5bad6efa53f20707869c5fd40d940a885310cd6 +d5ca9c351731fa69fdf0bfb148e17ac26ff43bfbb38c101867ed95d789ed2b0f +61820249b398fac0c5eee32032984302eb1804b82bad515d721213732ad43b95 +d4a02e17b22159ca29e300042804b75807782b9bda49255cccf4e35c461ff59b +65e36f6c6345dbb2e8c2f5445031999c2d8f0444cf4198ac17db48199c3b3fec +02a130d230aba456406e1070178bdaafc422343ed9edbf471c965d2b891586db +a34bb2d66f98f716e605799f3800c68000941a52d691640583cce11b94cb5599 +29fd0d5e8a9307831fe15fcd232eb361721d0da9e7ce111ff1ebc256a407372a +253180e51f1800ffb0313c2c3f3c4fcddd59f824dcd0eaa1e59837487288b558 +7f8e6d27954208fb815ed1d54a36476a95c660751a2ce7d475c72ff1784c363f +a641595eb92e65d9e7bfe18eeffeddfe82d9f6f0cee37e6a9e60b44939263272 +4816df40ed24551f0d07d813aba49a80bd3560188e5d0170385fd15c34b45465 +3d5d59bf7624ab116452ac28dc9217b11c75a08d68e55b10e9567a9d3d8d5da8 +89116318aff25efab611da69e132ba2ff888d68c84c056544c0fe9137faa8344 +4008487c34ff2c2376558ce20108f76582965fb06c2129e607a0e60889d97fac +2c71a026299b071ea7f9995a542b7e31efede8a4d341210a37f7b4bb96aa7c31 +c873cc0c3edff7b23d8a22e7e601ffbbab0f671b02ba487cf6b588ebecd26f9b +b7e8de0cbda870662bcca90716c0ff768a9c7c69c1dcb4086f1e881c6dd5b3f5 +0ac517ca096f28b1c7ac9195f99e44d444017a3bd54a68f4588f0a7562553053 +8bfaf7788a7243c30446213bc987e3383913f24b36b33e4b082e507cae63358c +9675599f6d746305a417fe8848f37bf85f4535e28ddbc5868dd6dbd3148cdc1f +2c2d224f00c3af4c1ddbfd88bf79eec76e45ef546cae548825a0bca6bf93b0b1 +373af60a7b24a75079d6645d0908a9f55ed0fe7397100a730a6f4e55678714bd +90c887e46a2c7703b13b1dda74a819b97abfe6275a24e73901540168737a8b32 +ca1902b7577b8761b3c4a6b60dfad490e35d71c5f35d8ef382fe66433336951d +e4ee981f980168853438755f135c333b8723d5778e2e3067dc73b7fd99aafbe1 +d5a2d1cf443905fb45730ce8fff14674abded9f94b45756a646b4cb1f789c7e8 +0748f3641a22c01b10adbdc77760c0e2a0b9055c4f9107d935f5c2fb2fdd2845 +6d6d2d2096e4baf14bcc8d716adf053bfe40845f02c0d18fccc453f3f8e45458 +69f802f506ca21d0fab24d7f3d6d6c219637a2dcbc58614c1456a9c6b0b0f57d +09cce675fff4f626b1b68c0a63fb9a16145d58176cf27ff5d3513dbec6014f3a +2b5de7ce69c8ac2fc184bad23950b28cf0414801764967ff97022cd4865d994e +585ff2c992d480de31f549f26a18e4721133f3d88316976bdae41431d44ec8d7 +4eacb29aeb132ff49e3c646ef025eb541dcc54f38b8aeb562887ed6cdd07ffa6 +cf3b2f89e4b0fbb5226702068b8043b6e2f284e4350c97a7498e6440bc3c8d2d +27d8aa1eac980e960613180ae4224624b2c6f92ed4666e391ae5e159c0ce207a +7433e462cd92aeb67eb89fdcd20e46f17f3d15ee679c064176a2db0ad5c38eed +7595cf6ab9750fca76e8e5ea2443b9d13da375ca2a2dc87fbd3d81ed58e366ef +94952cbd918134ea08f90516854207a2fd92799c410ed1fb6a9c36877d0b777e +ef59b03f19bc6b8fda91ab8ae21c89d117825a1595466da10f20b86d6d223cdb +6976312c7fb7bffb58feadfcd019bacedce96ec239b5a799005e94bdefb9ec40 +e717a597326b5330f38fbf708d002c9eb8d8ea0834241a35e3a07a58a030e678 +5812bb5de1cb511426cf49ff39647db65d8a7f2f87ca5e903eb1478984abcc17 +c7ee0b1f7d1e9e3b81c663abcce77a90f1cff1b01f116d2995e65cba0b3f1a3e +80079ece2fc25e0f5cf24507c99e5b6e87a417cdf29a1a8c58aa747afa962c25 +14671fbe467e22931a723a236aedff5676acde6ee71dc9eec11301af96927274 +a732813a49a473edb7e9886b6c45605681a563f32745d60cb4a26a7064406756 +c9add724e9b400097377258e81cfe085b1abdb3a00354353b50c9bd11a6e655a +d264a203708f739a46e4322a1a8204e32ae385d4f7694d6ad63f975986ffd869 +355b7ea9c0feef8f6d7bcce3128a0e45853de0a5f442bb805166c7906c9f1023 +df70bca683907a0bbc11249670f81c522441aa6fc4e7889a38d15ead8cad4ccf +e95ff5438d0edc450e6399f0228ea318dc2979e7e5a36eb76f9d81061ec8c615 +217d9dc7a1d0924dd953ad2b741e48357953d43186da75f340c58b7d2a6c7eaa +3038fa4b66b0ccea51af9610e5558d82bf79a301d73d57b6feaef32d6f19e801 +e37a3c1ea341bee088e322faf9ab5ab1934b70f894853984abd5f34c4d3fea05 +5ab4fc70179cc9f1379f98b3d1f529f3c2aa4ae63b8d2bfd46afdbcda8ea11be +f32c93eb4d435fc37486a1cbaadc3c98de581ebad18f35175d7b3e67c9194d5b +bb3cd1918e86daacb86055a548fab07ce7c933bd984eb713405d2b3f48124432 +a88e10b97f7be3a270405594d3e06c17b47719e2678f0f069ff1abfe7d3672d7 +6a748a9e277ffdd25f5477d0c9d60d7e8da9e0ef30e5fd6c70d47d31637bc0cd +4d67f5ed2b103889a61fd11075aabce9f2517ec9b53d7db5b27790d9bb1e19c3 +d7c3a7e1b95516ee38062d4ea759151e4de0449e6aae79500c42b4efe4936d0d +000fb3391330c035d9d6b9e25671f9ac599a40c37b2439c06fdfd988abcbaf77 +0e42d324e8ca78613f35ea64aa88c3c43e51cebe8ed1067cad94ea0387783e03 +e76af474f739b9249d1e95eef85ab528e8cd2da99e33c7ef0ee9df694db43f3d +fe467e6fd1b5291ecbf6b1ac7a25c002dee8be0727ec5439715bfd8f854843ea +1d080677f64889d70165f1bad110a8baf3885629f8ddbc3d3b09c57dea28b4f6 +7a3c042ce64d636d0bdef920ab5ef9544f52ad533837867c4930fd4dd3213e18 +ae2ca622e0e218b1bd54bd60e01d4cddfc2e9b64c6c99e79ab2c3e52cbefa598 +434213d475b6292190b89be95b3c6660133e1b498bd7ff2fd14aab2aca0dffaf +62d9df30c19ca0e949007dcf8453e70e60a519674d305523d33bfc3119037236 +19cc4ab1707db2c4984c6d4fb4310932e9ede7808cfc7d343a7fda08068966d4 +7877d7de7c0f5ffbfaae5666be3bdb48de31c5ab6bcfa7d35816e5862bc4a13c +ecf2355935040fac37141f7bef7e58f7b025e187df3950edfd6cea20d0649071 +442b2916ebce5f4d3ce055efdabf1c2dc348ac0ae6777f679e2f62a0a3ee9124 +7fc855bfc6f0c337a74c44ea1f5dd32ce6183a4c80a6b967861f6101c28b72da +d6aa1128f196627e24179c18f384e27cf7f81f43138381d177f93f8082cc9d56 +1b3c99f1bea073a1a81f8bcea131e3587b397937c4029d486fe6842a709558f7 +43cd16c8f0a5e4fbb3e522663b82e2544a6fecefd3d8a2b222301fd4988c0136 +859e86087fad63292bc4187412731a966710ca9ccb86329560d64be31ca4b526 +82245c1a487046ad21dd9a270e3fae72fecdcf9608784f649a25474034ac744d +44e14e72d02ff17b2252aa5273de3ba3cd71a95070a9fed0dff80653b3d346c7 +56119529e5bcb6011d341e368827cddf22d4f99f1781829df808507e2b4ceb13 +211b08f55444e75a005639a20c33706f8985f3308c08f77e72dbfbe049ae8177 +c2da2e62eb58f0fbb369f5bab0fff49f9d4765f931fe66f8aa107d8116becdfb +466d282527bab6fa29721678837cb46d60148a7fd9cae63d6aa634d23ee21161 +ef9e834520f367903a65bef7996ab77d37ba97aeb2a7a8c3502aac988e7a0430 +9d67a06db4a90714fd1a933402df0830026920bf1f71cb0379bda8714415c9bc +e7795fa4ebc37e819b3d8ee65375bfdd6b36bda41b7791864389e9b589919ee6 +2872bac2e221b28150d3024a984033899e5372ab474b9b4494f7bb4331b6213e +7953565f35d2ea6da212956dab01571cbeeef86293c58a259860e294f69730e6 +f141680cf75d40e829f9679e98341fd1e0817cb8e40cd6c4fa691ac691fb59df +b78e87add951eac41ad1b4f4fa45d2e346e0fa73157a7d2b2df89ea56a80e885 +9e0d0331d216db4f1b95d662bad40e472f21bbe05576ce4a2d27af01880f438a +30c17bc65fb460ac1b3e01aa43aa3677ba05a437fcca3ce4c2864d99c701d79e +3a199dbc7e2f00be8d4347f96b61ba0f88e90b49d412d0ed162e82715ea04c27 +af3feb0a7b3e4dd17c875a51e9bbed3c9e10eaabeec0f029d94fa90d60605b52 +2dcff539fbc323e7f0e1cbfc1a192a44345efc070bd5d5939d9f4383897704f0 +e785126abd9f582f1afe88a727784afdac3dca49892c6beb52cb1adee18034e8 +e88a441890175575951fd87594b63751e69165496d566bd23c8db4b9239bbaa9 +ef5058f5b51c74cf70632f88f1a05e1b40078c183ea8433427f63a5f68a1b81c +bd46625b8ba2cf713c001cca4c74a186f93aaa3869a517dd64f1e81c71823239 +1934faea604cf4d9ddf974fb09c5786bde05978bb25209b5c7648602dd62c32c +61ec4b5ce1177185354dd5cdf15540121b6d82457ff3111db1aab1889fb0e3c8 +38cbc7a671ba16a4bc567d9cdd427205e8f4de7edc64c00bb6080071130b43d3 +6e7919a5b7c29c68ac505ff107d1e2ab66a3417612ba2f461548f1e72c702a19 +7a6311dae649e46768d85d759281429b97a35379b84c763d35cfd434a4e3bbb8 +4c6e5ee8dff3a7449bec14c785bce1d4c617217ee6315fda000f0c54d1054e80 +c8f9f452daaa465f633ffc3eeda9c76e7a77024eaf39bd5bc9562fa44f3da9ae +7e665a33bd22aae6dbc1d9efab63741e30775eeffb819ff933342c8e6b978f8a +2aa20c2f2810072c4f2437e7cc13861002ab6d5ee84a6f80549683a34da3cec9 +e3471d112332ea260153836fa24e22eec0cdb0a5b3b0773cfd237daa67c55aa4 +cbf1cc30f43183a93bf7d7068ead32ac8064bb1f0a8bb61cf5472bcab360cf71 +b61c3443eae4f1ec7fc0d883559f8a2ff2522dcd7dad5f395e9ab2454cca6dad +07bb58bdeb1e54f75816dabea8d170974909b2fad53f9a69d97eb11ff20c6aef +eb6d76e9fa93c317115602db90359be638da383d9e01f6bdacb5ac5bd7c77d42 +d80646ace9f2384774610f63f97d70c4e81a2871be0a5b028c88afd82a3b6376 +5d5064a6786a829a6e6320120395b1541bfd6e3ec182d50982d7bec4140f146a +06890a79b85a6f20f9bf616f5f56e02752c5d177a48aa2f8ecb67e42e2314850 +d2109c0965a55d1e0f470371443991f9b8859ac70bd6f049dbf57ccc8e2e3c67 +eb8d1b4f36c660746008460ebc0f7284c802925206b968477a503dfa6879794e +7ed82fcc58443fa1d95fd561bc9d3a2ccb2bfa19916d8a88e6f7eff0ce0a7d4d +90c77f63bc75f3368f7a97dea9d9392e3f499ae4b8e53602636cd53ebdb42213 +c2668a3c618a76f6f5a96fc33c0e41ef620a63e3c52512c66b59f810c6b85923 +d81ff8618f42ee19b10d4d088bd6b784e4f9bd6bffe083161181b2f79b374fd4 +b846650d4b95b6c3e58449d8f0a201aec72d87588c54fbb3112045040109a3d2 +d98c778ed3fe07f54010773b628baf29ad3b91072fbdef7cde0b969d0b695bf2 +5d386c6b8647bfd55c169374c57d5bd8fb29af5c5a6718d7cee318a06ad35d96 +fbf879929e28bd43b583aff2769688e087b00ea95b28629a71c6ea847f988357 +da9e23422fe2ebc4c33f183679233e0d1d8150ec58ca6ca0bda2a529e6f6d146 +92010b1eda6360aac940ed23410455209383b68c3a1fd68a0ef92d16cd4deda9 +9dbedb1ce18a79817fb3d043f919f1b98c62ecc70dc27886b258428ae2d1075e +ef8c1225f96be5ee3c1b4e127d26bc2abc6d457333a0d5cce99dff00f3f41e0b +a9fd7bac9e96691cd316abe913a6edf95c6c5d37086cf3cb960b82684ce473ed +574fd8c6ca059bd679441c22e6c39376d3a33c8011361c834bbd7b87c345a9f0 +c6cc1328b5af926f763bebc13be92238da171124de119a097d65e5d623cbf157 +a4e93e250a6bc34bc54feb2889da3f5993eff0bf38ef6e440d0bdb405746aa70 +4e5de570b0347d52b25ae9e0ffd758b8d6da1a57e47289a26d0ed30e31474273 +c2315c74a39e6b26f558dec140d384cd3bbd7246bf46a0f7becce45fe0c343ce +78016204e814dccc58061d48ffc808423452985b12d28c94eaba89eda793f7b2 +8d9fde11f30434bdf73c48484a814ebe541f4e6eb817de43146ae4e04fa7129a +ec0e4b92ae22a1d2344375f68314d839aade59c4ac1d556538fd7a9f7ee9a139 +f3620952c6c45f7181a6448a807a1bf62cb59f440199297cbc8a360d0168c153 +7c6b3ba56dd0f7f104271138846a6f305f2c8a7536512c54a1c46232606a6649 +81a8083d59a4b5e8ca2cd0b70dd0b44bef1c2ae9ebcbaeecbc7c4bfb2ce309f7 +830ba06f3c8e79fddf737451a67d8c4425c51e11f832d99198c16dee864b4c9a +e48863f5a3cd0e6f3c5b31a6bff527bce260aefbc40b1d8065d2f88f97dd9ff4 +8b21d069ae8cebaa511f0d00c1da76207821859bb191d5f9261adff3e6417788 +5b493db49420f472496a8207d3f2d64fa3304de0e78d6259a626d8fdf81c51d0 +f81ef8c619507f0544ebd3aa8d1f200a5ce240a1171441438d6bbb19c0850bdf +4a0147baf4787513752e4e052a09d6b94bec96107e64f6b2692bedf2a38863e1 +15ac2564c0eb10fb923ef3d505f750bfb6407856406cc92e9b2a3a810fb49ef8 +e8f445c2e32b30d352fba6fe345c8af241307e76c13ed376554b857b23f2b10e +9f4f1d6b25ee850d744332fb73349790426bc3adf811998f84f4721247ed9dc2 +cb33d343ed9fcbdd001d97708408a4885ef05908333546167859788124f50eaf +7f9cd5b7a9f4a77b2337f51569fe3fb45e41dc50394ec963851fef76ed67592c +bac68e378043d77137974cb61772228d63d46d92821662203dcc0dd1db375bd6 +95c9153c7226202ee545aa36b0bfba49bba59e918e3bcad377cb461d52442b9c +d159764090efaa0a887a12b0c9884d4eb0cbae8b2b5fe1d68b8b13abcde73223 +234063907a8012134dc42337f131ce012a98e582fcc50c9507c1f87b83d62dfc +bb951dd48c3fb078aaebfa25ae1908f87d97915d86bea53e23c2c4fd426210cb +a517ee3681183d327a5ab42c02977c3221213e76ed5f986ad6bcc14f50651367 +f142a4dc6379213974fb90a7be +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndResource +/F392_0 /ERVBFT+NimbusMonL-Bold 1 1 +[ /.notdef/dotaccent/fi/fl/fraction/hungarumlaut/Lslash/lslash + /ogonek/ring/.notdef/breve/minus/.notdef/Zcaron/zcaron + /caron/dotlessi/dotlessj/ff/ffi/ffl/notequal/infinity + /lessequal/greaterequal/partialdiff/summation/product/pi/grave/quotesingle + /space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright + /parenleft/parenright/asterisk/plus/comma/hyphen/period/slash + /zero/one/two/three/four/five/six/seven + /eight/nine/colon/semicolon/less/equal/greater/question + /at/A/B/C/D/E/F/G + /H/I/J/K/L/M/N/O + /P/Q/R/S/T/U/V/W + /X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore + /quoteleft/a/b/c/d/e/f/g + /h/i/j/k/l/m/n/o + /p/q/r/s/t/u/v/w + /x/y/z/braceleft/bar/braceright/asciitilde/.notdef + /Euro/integral/quotesinglbase/florin/quotedblbase/ellipsis/dagger/daggerdbl + /circumflex/perthousand/Scaron/guilsinglleft/OE/Omega/radical/approxequal + /.notdef/.notdef/.notdef/quotedblleft/quotedblright/bullet/endash/emdash + /tilde/trademark/scaron/guilsinglright/oe/Delta/lozenge/Ydieresis + /.notdef/exclamdown/cent/sterling/currency/yen/brokenbar/section + /dieresis/copyright/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron + /degree/plusminus/twosuperior/threesuperior/acute/mu/paragraph/periodcentered + /cedilla/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters/questiondown + /Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla + /Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis + /Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply + /Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls + /agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla + /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis + /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide + /oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis] +pdfMakeFont +%%BeginResource: font BZXIEB+CMSY10 +%!PS-AdobeFont-1.1: CMSY10 1.0 +%%CreationDate: 1991 Aug 15 07:20:57 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMSY10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.035 def +/isFixedPitch false def +end readonly def +/FontName /BZXIEB+CMSY10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 32 /arrowleft put +readonly def +/FontBBox{-29 -960 1116 775}readonly def +currentdict end +currentfile eexec +d9d66f633b846a97b686a97e45a3d0aa052f09f9c8ade9d907c058b87e9b6964 +7d53359e51216774a4eaa1e2b58ec3176bd1184a633b951372b4198d4e8c5ef4 +a213acb58aa0a658908035bf2ed8531779838a960dfe2b27ea49c37156989c85 +e21b3abf72e39a89232cd9f4237fc80c9e64e8425aa3bef7ded60b122a52922a +221a37d9a807dd01161779dde7d31ff2b87f97c73d63eecdda4c49501773468a +27d1663e0b62f461f6e40a5d6676d1d12b51e641c1d4e8e2771864fc104f8cbf +5b78ec1d88228725f1c453a678f58a7e1b7bd7ca700717d288eb8da1f57c4f09 +0abf1d42c5ddd0c384c7e22f8f8047be1d4c1cc8e33368fb1ac82b4e96146730 +de3302b2e6b819cb6ae455b1af3187ffe8071aa57ef8a6616b9cb7941d44ec7a +71a7bb3df755178d7d2e4bb69859efa4bbc30bd6bb1531133fd4d9438ff99f09 +4ecc068a324d75b5f696b8688eeb2f17e5ed34ccd6d047a4e3806d000c199d7c +515db70a8d4f6146fe068dc1e5de8bc5703711da090312ba3fc00a08c453c609 +c627a8bd98d9e826f964721e92bbdc978e88eea0a9c14802ebcc41f810428fa8 +b9972032a01769a7c72d1a65276f414deedaf1d22be23f4705bf5ef31b6a3b69 +0c896320f09e9875b50220a5bdbbd57c041b5ea97f421685a7256b0d9755edbe +d05190dabf1c3dbf558258163c8231d89167a816bba55fb1f14ad04320ae381d +f783a9eacee8ae5c1838775fe2380bdd1f3afcccc96d2a2dfc999b52a6689c51 +af82b8d63205b339103134dac7e3c45e6693940276041bb07ebdb9b729e8ef0d +ee8bf450fa42551be65217fea902e28decc09580b504f0f52f1e8fc5ce7ac28d +c4e47f908fdaeba23827a97a0aa741aa7708f7bbfec6fa69cc4f7c3bd4 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndResource +/F564_0 /BZXIEB+CMSY10 1 1 +[ /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /arrowleft/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef + /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef] +pdfMakeFont +%%BeginResource: font WWWUTU+NimbusRomNo9L-ReguItal +%!PS-AdobeFont-1.0: NimbusRomNo9L-ReguItal 1.05 +%%CreationDate: Wed Dec 22 1999 +% Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development +% (URW)++,Copyright 1999 by (URW)++ Design & Development +% See the file COPYING (GNU General Public License) for license conditions. +% As a special exception, permission is granted to include this font +% program in a Postscript or PDF file that consists of a document that +% contains text to be displayed or printed using this font, regardless +% of the conditions or license applying to the document itself. +12 dict begin +/FontInfo 10 dict dup begin +/version (1.05) readonly def +/Notice ((URW)++,Copyright 1999 by (URW)++ Design & Development. See the file COPYING (GNU General Public License) for license conditions. As a special exception, permission is granted to include this font program in a Postscript or PDF file that consists of a document that contains text to be displayed or printed using this font, regardless of the conditions or license applying to the document itself.) readonly def +/Copyright (Copyright (URW)++,Copyright 1999 by (URW)++ Design & Development) readonly def +/FullName (Nimbus Roman No9 L Regular Italic) readonly def +/FamilyName (Nimbus Roman No9 L) readonly def +/Weight (Regular) readonly def +/ItalicAngle -15.5 def +/isFixedPitch false def +/UnderlinePosition -100 def +/UnderlineThickness 50 def +end readonly def +/FontName /WWWUTU+NimbusRomNo9L-ReguItal def +/PaintType 0 def +/WMode 0 def +/FontBBox {-169 -270 1010 924} readonly def +/FontType 1 def +/FontMatrix [0.001 0.0 0.0 0.001 0.0 0.0] readonly def +/Encoding StandardEncoding def +currentdict end +currentfile eexec +d9d66f633b846a989b9974b0179fc6cc445bc2c03103c68570a7b354a4a280ae +6fbf7f9888e039ab60fcaf852eb4ce3afeb979d5ea70fde44a2ae5c8c0166c27 +bf9665eea11c7d2329c1a211dd26bb372be5822f5ea70d99eb578c7befd44cdf +045a363056e5e1cc51525ea6fc061dcebb337208eff729802376a2801424f670 +0e7e6397b28f15bc10b40012b0a3eaeb2693e8f7f627c4c9c7c6c5bff105c1e4 +1b2b9e8f09253b76040d268b80719e1b3f5a55ab7b8e134d4cb5abced39ac635 +da001e9934c198a7f9b9ed0028a85e9ae00421dfd8eaa3bb3b4b4ce45d209303 +237bd51809fe4d880900b1eeb236aca87b9ff6ebe6b994a60af5d67ccc42bd56 +77295c346eb4c62bdc1ef22ee07daad928dfb73455f091f32408ed6430b97417 +683af27a03718a156e3f6e7b6e4f2e8177503cd82ddbf4557a3ccff4c858ae7a +f7efed6cc521a28342436b953e4650b5792be85ea2f989eb6d986905a61fa38b +96e1bbc830b74469150fb0b598a794fd80d10870084a877273a9502c3456e5ef +74350e6e3be5863e8ba185eb59fb87b36566af71200b6ed389d1287d4e925e33 +b2383ed05d87d48586e698fbc5d562ed9d8a09ec3eaa1b1f300224af20c23f26 +a2eadc74562571da84b3914d1d80b127c6ff4706c7046bbb372a0013e0ab94f0 +c27946583871d272bf4f20fa84e89d745de7bba885cc09ba72e0f530ed4ef7d1 +864b3c67007ed98800284235372f0a70c912e21e851afbf812165b8df912cd1a +013e271f0b347967876c68ae4c4107ef8ad1f170916210034c66394a9d971b68 +fbfc1131e37fc178eb97c1b2a0f573add9d7c0bf944e6529734df8a7ef54485b +a3375cc30e9e328943733cbd352bc15b06c85bfb4a96994291c72a0eae84fb01 +0f1b24d0125fb8c16d60561df8bb7aa7ddfe9549afb70c1e89424214609fde41 +9a142892e30f02754fd234ceb3c59a2a04c06bab7ae40e8fdec50559b8347684 +391c750987802d5452c47c1e0b5f222de9a0eeafee19d796ff375a1e1ef0aeed +1bcac4f485fcaee18aec585d1a9d80f41871dda45fef1eae82c5893118987beb +4d9e345c27c7419fe65e4853b40537d822e34ff1e0bd2819d21ef607981259e8 +9f1040a2d708d7463858aa5381759ac49df4dddeb209a278fe60bd2508aca0f4 +6a249a05b652e4c7bf1b676943cdc4602910fa3ea7636985a10f637832a5abab +9c7a580d605929d6d7154506217252a755beb8462d30a798ffa9b26e500eab24 +7e9fd612c776ae60423995dc1852686cb041e66357a9acd4b6a4e9846b1dc803 +23dab6b7765205d82b50cc6394e725c19df00f7db427341d514047e4bc594efb +a262eb2c414e43d8acc9cb195d12f3b2a9748f38edb3ac3447d27d20d1e62bbe +22f6378e508f0cd6f17ef1c500407f6d442e92ef2e00b8de78660d87fd1c7209 +ea67cdb37076e1eaaed128814a948e27e1f2fa81fe54be6c57ef8c2b2e460f08 +6ff1bb529c9100b1d878dc9a077d21805e89d8b0fbc2a074e4b55a869c96fca7 +8117347b9cfa480ff4a37b34b040a99fba99942bd86ce4b46ff5c69babca7a3a +f5018da05556bff71ecc844b2b718598f0825cda3d19d714fb66472621113ad7 +bb240de7dfbd1f17ffd8f2ef4b85a8eb6e1bfdf26c7f98168197c02c4aa535c2 +0f9ef9b7cb7f1d174b2e94953f541c3b84d43366e0e00a028b98f990b4d01515 +3ccc2e1853473bb9b25857e4b8f9d6695ef332bd3baa9ee551a4b142defb7f03 +97cd075ef9cd41082ccbf63e849c48835e105923e725d41d2b5ee0c3f03a603a +161713216af97bd21aa87e3a80d75383603152011530b8abd2294d041e90a040 +f61baf86be97f8daa8326eb1a2b4511425785f35f75835683515af6cd0e73194 +2b25d5fa8c7e12ccde33aa193d61a35eba7f7e101843e35dfdf3e07a1442b0eb +f2a9084634736a21128843df49c84b1061d0826777a754076c4c3d0a68b32dba +ed4b5c0746ddecdd79fbcc7a4425eddaa7f49257148f05ff52ff6bac71cb65ca +8ad5869cc9fd7c4c194ae8d5d20a730a035234d8f9a6363e7a49fc22bbd34d08 +eb7fd43a678be52b95eccf029a6b18a512d30ceb0b6adf80ff1232dfda1a5752 +b5222edd9012b45cf0df0644b2e713afef21255a08232efbd5d5f7506bfd050a +f0daf55b5db595d29361f8253c26c37e09b4f87056edd8c90e0df4fc74072541 +8ad8ccea562e4ce72acc8e9f39284fca274c572ffec24ba30ef9db07054965bd +2205d717c9b3b0723061cd74ec688b915ab6689904d5762629c891f2fc0cdfb1 +8d8a4d2260dc93d7ac1107b197d7e8418bbacfc660d888697296b7cc6581024c +e583b0114ffe3b3a960d601ff23c0f633e2b85300042f717c4718c0547fd9b19 +e74d0e18f6908e4528065888c136dc8767b74025ef5faf470a272f57f548d738 +c5d2ff6def4366c1c08e0b09855e04ec3bbd8cb6b770f638ac7d852b7b2250f6 +cfbb5669c9112fbf73546a9c1e968a1e1a06128efee6422e41df1519c7346635 +31fea419bba8067c6d0e964143a0906762197b8de95502ae9bb54ced17de5ce8 +9d628716bf1e306aad09bd7f8cb2b7dae5bfa9ef53e716d5aa2ca014eae837c6 +c0f2d5f535ae93682e855b1bdd6ce955627284a4712f67c1d6de9f80d4dda43a +9fe34fe4fab544459a1dfa0d1383c50bb3e6c3df078acb88db37ecb38aaabbb3 +cc59d3fbe6a84f1f9521b6e05d0a0b2e0fceae8eeea4f41976945501f32bb383 +455467d21777796688e57ae9b7b392d167b63bfdc1102565649b53694f1eb3e8 +5ec2f094ab06d427b5e1e7412b3369336c766a7fc778190dd5aeebef9b6a034e +133314cb512667f1a4eef90a1251ca9e8aaf7966ec96004c09c4dfacbb0d4c45 +60d8df4183d3598fb9584a4433c9131f8602474f27e4916b43de80ed1d02f6e4 +d208b014c0a44d94ef709930eca646b2f07d8358d48d0a768b6f13492e3cb877 +fe38c58a7f5468af52ffc11b8c02bd91484cdc022abe678a7f2e298a7fad967a +2ea7dc427e6ac154766ca4ae15fd414a76064823f3145724184e30ec4f1494c8 +78f7f63edea60daf2448de8a79801ecfd86a06ef122451dd2380bb1a4256a7ea +806d131e66d5a6e3079f7c2d7c143e2879f5316ffebb1bfa166a088b8fa9cb7f +4a5f0875a8ff5d378e9e8205c6155ea85756475ca5149eb72643b4ae1f907c0c +fc8f63150cdc6209b1951af23ff68188360939501770eac39ed55dadc4dfb1c5 +b2ef39c93d0326a804f62e8f187a224444098835ff670ad55b49f3cd0aba2901 +293ae04427916ee14c81f4044a05d9c8ad14ad4b5567e8e0147780a0bd294c5a +10a50a5cc7656f901588419108d2570e804a5e590004008776c8cf20b56d5ef1 +fa32538c480bcc1955321f954008871ba180177dea952fefec536f6522582647 +bc205dd139a18d2a41956baa4b002169cf042ab2ebf91ff203dc2e2559171910 +2119e94673a275d73f3909d0834b170e2b62beedcca27afb44a35ac51dcb5719 +82706f101b216b4af3523974378a05c327702b132335ff288adf62578f30cdcc +cf826898361bd49238f368ae2182fbb631e375e903ed9efb911a047119b40830 +a39909494e86aee21694223df1a57ac8e5b4f0465d0868939ac77ccb448d3f58 +36631cebdc06bf2865c58437568cd734efbfa870214853232ccb48cc57c8c32e +97cdeb89cf5e0c032e81de377b368f7d57187f0828675a52382d41de6cd9fb52 +2a1ccfde3192c650fcd7d1f86db03c401e6eebd0d40bf23c10e021ed66bc5b7c +ae57d0905bd24925c8573f069139883bbde13df3ae05bec1771eddb9b003555f +9d69657ac718c065a32ef7ca8a1ff5880fc66196e8123050a47ebe4dd5c1a4a7 +40ce1cf340bf08021fceef8172d9cdeb063f4e4c2205ae4503c71aec1836f9bf +96ccd0a712e33407446ceab96221d7b3f4342fc74aafa802481acecee7243807 +390b2d12c844193560738e576d27b0f5a90b25e1b5a27de8a2c74b3303526191 +5ee0251065475f26bf0bbca5549f13e1357797a5728b46ba9570c095d938112c +b3ba212c26cd6bb569ea276e1d8397569f8d4c78528490187a172d2e30dd0228 +d69fdaa25fbdb477c88d52f0ba137280d68656036c17b8852b03c21621d0b21c +6c016f18cacfa9a998e972f40eda07278da54fe5119babf0145d6824f051cd63 +91bc93472f780f00e261dc74d6673da37d8d9291e25af279829f8d47bb524c19 +8b598ce1c576ac8542b5ead99b039ac2996a6d791a22a5d5bb0fa3eb65d1fa01 +401d5c7d44a9cfe082e9314ada6f4ac8ecea5be8e5a1cb6a1dba1c615e69ec9b +0f231b64ac31c545859f0195bb9b403121df7be1ea1488b413825d8e1d7afbfc +e5a8e1e52d9c3ea6de3ce75d013cb7396e825bac3a50d0bffd2d30c6f1c5dc0d +83c1b68dd8b6042382285812093db4c5d7f6eaa8a4acbeba794f63610456a641 +42fdfd0c4c5f0c4486a6170b7701ca64cd1408f686fbd2afb56ba307722b2bba +c542123f766171b43aae5ac053094a04ac4faa3cbdadcec81ab5aaac58d3a7b7 +1dbedcfe63d062b11dbcacefea89c6f8916389d3f7d93da89ebd8c37414c7db6 +d6512a4e8c76145ac170faf136a023b3c31cbae9775e436d6cb2835b77b56458 +6905d558a3cfab0f1f3426557a66bf775292df056cfaaca8c087b4c0bcc2aae1 +fa49f346602384f743be6b1aa26134ba2872366c17f1dd356221838a40be3a4d +0b8502a964d360ea9bc58e4ffbf283c8294679197faf5d23aad1c89c3da84902 +c95619fa0ab76ca0c7ae725a1c5d9c40e84cc84eba8fc95361f3a738ddbcb593 +b3110db2f69ecf9da21d788d36a1bf986e2dd78c9e62f643e6677f80991f90a0 +8bd35484fc4aef3243bc3b460f57bf6f0a503b57f84723738e1b94c3029520c1 +f8d787f99305ef87fe64293b5fbf0a378306459c022f4127f2e2207ba818aac4 +1c860b70833b92cb7228ab2c8f68d03b6ecb67d4f83cb160c170298e1bff339f +306505ea4fe86929f115b3c55c7fbdb7f09eb38f7c8ca86c9c89d9b92dae37a9 +5839a181e6e55835da3e81c8846980ec5c16646a31bbffe54a8505e005c9200c +cb2b476083d7e55e63648146e8e615d349ed779b787232605beb38346e3578bf +d043797edc00f6df91c9a02958ea01f55f00d576c8a8d236e81b59eaf96bdfe3 +4de4125a3893acea97aa8d6373b736d4cc0166095bbb75b7341f06d8e3fb732a +5539fa8a27abc1d82f1a86a76870450fdebbe889dd048cbf2f184dcca5377649 +9ca0053aa9a88ab4d6f279f8a3ba704ed057dc2a361d07e5af6c9c8ce4b08c05 +d06635afce1cd7fb1288df9ca1f9a556d1a120691297d8134214da14db45cdbf +5545abb75134d45257b1e373eaf23fb600370cf8e7de02e7211639b11f8fa0d5 +6627c5718f554ca3351ac95c04dbe894e20692065af2c7a9e239449df4a65917 +2e0fa2bd3ebffbffd9093569851a31db46c8c30c1fb8339a7f742a2c89212831 +15459844298972b8b06e2c699d6acaaf331a023047e5b2041fc39d830b0851a5 +8ef1e329b688034f9c91927cbaae2ec2c84f8502127055ade448d6dd7eea3aae +392dce03347141b3b85f3018b3396b9fb1e4a59c50d9e8b82610088575eec663 +5686e7234e72e4690ce386fcf9d16b54c9c692e9324427dee7e096b6d4c45501 +da2d0eda66a1f29e90c00fd2c62ae43a97f611794c4704d179ce0bd63ffc4f50 +ab3ca7086bf942283fb0d175888a13e5278aaaa25a26e3df4fbf13e64519ad94 +44af171207f3f89b369ccd6162c0ba1320d30d3a596d9f58976f94434c1fb773 +e70be87528a9bd5fb7e494e6cdba0a3cabab8dc2073ea7f5b956bf5d5ca1b258 +25a73e0824ce8d00f4c945c0afdc4b57f7c0162a14b30154b61ab030a73679af +d43e322a04fc7b3c814f3b2d07585eae6a5254b43bc836c6000bf23a56fbfbfe +8478f1cd00150ee39f0aad2c7ae3313b8d619b84ddd8cd3878a4b306950873da +9a592f520b7d7e0cf9b9c97d35139eef9c329763869e64d89a52fed016e1cd40 +4497359d9d4d6bb70222418282cd9ed7f12c16cc1aa6b3eea9c812b7c3910209 +2831b0f05e644f58e878c1eaa3d587c89b26db8b9952e0bead12c7db6aa5a042 +9e33012db0551fe6a589baa800905a7cb35d220efbb675a96444edd18ad89dbc +ebc4087162e977b4cc680a0e3490bfaf28a556c3bb9299935097e3e048679849 +a85ce906f55bdf564f3cca2b0a70b404d02520b77614e577231cb2310dde1ba5 +cea1ef926ad191c98a21ed76ebb8f407ea2ae2ff56014216abb118c0218590f5 +f3284f9a187a85b3f5091f05b21d747f6fe7384a27ae6a8ddb923df4f61900e9 +adb8be5d338613e1486d710e892b5b733061951d164ae233023a69e02457e90d +dfb6d8a53ea0a57f3c9e27614633ace3c6cf57dc8c81d0c079642c4a0745d281 +2bc6ac4587a56e65d6955e50f4380d94f9628c130102e2a3325d694865a0dd90 +01ab118f393fd86d01aedb5612fcb49e8b81fa6fadf7b69650fcef45a0a724d9 +ecf8ced5cf56913fb68a39c71350acd855433cc25b25ade198cda46bfccf1fac +f1c841a1e6058a73e26e580cb46384885c417799d92822689c2f58bc1e0a040a +9d7d3d73de3c18688d62581d54a0eadf9deffb3db34a9f052bce33d5fe8e8ae9 +78e4b0bdcc2a8ffdcaa5b4c0f4a0256d94364e70e1749dbc2b147d69ec539b47 +ef868ac4807f7ac1f01c93b3361942915581efc754453f221f4a70bb903ec310 +62cca7ac392f6f70b61f49822cfd65c668070babc1102322e4cf224902f0cc6e +26bb2c119c3c66434f4a85164c49ed51084a1f0795eb631f6d38123619cc5ced +c8c6908f380a4a3f7939d0b03187e448fa44333ed8d8c2504c3fce0235795d86 +f7a7bb423d1a7ca81b27b4f81c93ac95ba336a0d8e6bb90c96ae775ee34c07da +5cd019a73b7944424d242dd7d96ea0349307ed426fe0c7fb8b5cbe3d295a3069 +b975fafbe78109cab35ac2fa5154f66af9b9ea522cd4847408d1ce24cf7fc770 +4f222fedc962ff21d09aa2ae6cc1b14cfbcab5d0016607362d3c8f6347f7a54e +821327ddd475396b465b1bf5894703c6de1e9947e64867e68efb2620c7f46367 +c0c345f294b781943f0c96500688a08347b0272c60e5d6a7810a44c4e5654d09 +05931a57e1fe6ff7edd1e77a1e1c39070b49e4d72a62f06340f9a76d0553905b +35e5711434d25cc3b14557bbaf66a82a6ef543bbfd14c314ddee0ee99090482f +c1dd06eecf203ec9511a3ad6ccecdd1139ccf31dc72e407853d159c1622131df +f560bd84c30c58439b06aef79bf53ffaa90ab3727e59f164271a69c5bf36f0d8 +3f9c0099933b6bdfc2f613d4f3565dfbd0c85e8723491ead13697f8945f63a6a +612990613b54bb7a19c1d3a13c14f19694e3b1293293a51c64ebe436738eb61e +2ccef09ca77eeb35c7bf10db2a9b1eabbe4fb88ccefeae6359bf5e136ee974ea +a1a5c7152d54de8dfab89422943ad50e5884f330ad4078763ea071c6265e555d +a610d246133435db11c37e786302e3e8889ece1d9ec3670d82babfed7be2fb7e +fdb78e1b6e1c682b930f48bf0a28301b463a5ca77c368f7d57187f0828675a52 +382d41de6cd9fb522cf52d8792796fccac48d9528d6ba65cca775eea0d9e272c +084f8017bb4ff779b615a46518b256b2c43b27e28b988bf6b60d783d56905a5d +7794904c0cb95e2aa83512f47d2c393b778b7611053d31bbc4670c6ffe45ff25 +2b7064e4740e8895169607d57c89956b526a664b28a2a9f7c42d6a40c4a95aa6 +6be98967f52a855db02c498f141fd6afffc0a69b14bbd009a0c0f023d4d6706c +cc05401aa96d550b6ce0190281ba4cebf16acfa4fd94730cd977d6c120c124ba +ef8489e22a13c30552196e99046201ccff11cb3aff92a63e47a10a3a6433bfc0 +e77047453b71527f209c939d8516182ca5f0966ccbf971fede25e3fefd92cf8b +fd11ac59dff36c25aaa8c771a83d9cbb7dccb37f4f7572f11f702bc27ea9510b +a2d4baa94f5953beb927aaf2426421f0093c603bd63827e28f17d57cef476577 +c1f13eb8beeada42a1eb221cac3dccd5d84a6f74fa2b289c3cab6e2fc94dd92b +d96a015b218ca7facbe18f9c7a580610905847a649e4477773b87686f7f28b33 +24148f4213ccaac483b43be2a9763fdbbdbbd50a0f9d59fc31f5b7b2ac0f915a +89abd64d84faa62a4c3167fbbf651a6236ead6ad931c11435921cbdc4ed66f67 +fe83bc059fa0c625001ad5b3bf638293646d33076f3afafa8b8fd7307da5c53b +5845999c1624e9ed30cd48483403f9afdabbcbe80fa5025bea2cbc081e2b32c7 +42685421ce3d574a414b340075cb02e80d7427d4cc503ee02f5b33e509d76e0b +21b5d5a252757c4b7893dd9870f9371eca57ae78ac688ee28c31d597bc018496 +3fa54a8e160a77dc8b0627d7319885fb2ae0e2e2c9fbcde4b5a7acb04bf1e611 +b73b0dee3ac8f44c4ca15dbeca20c35a7a8805f3c22e6fba8e9b22722dd25ae3 +ba2dec2a0c9a13509f4c9fd3dba03ef6e49a632bf7de5ec45b64a1f4e3a36976 +1b7a9c7b95bd29b09b930b0d82f2c39f9bc3c24d99c58a664d4adedf7b74e13e +6d85e03e615a60a2aee9f790c6d0a2e6e82e6840e51b38c4579fb95337423fba +437d97ab42bafb1097b2e2952e86c88e94ba7020e83163b5d810de8f57625819 +d86d7ae834d7135e30f2e21dd061ff15f22de6c9243d2caaa5abf67abee3a6f5 +306273037adcd10e8f00818ee88ad2ea98d6b7f1ee7e3d1db49a57fa350664d6 +021078ee1ebfbdbe5aee9efab2acd9809ccfb180f8017a84ba6bfc1ba5940eca +3076c863f8d9df3e4afb32361acab13bacd3e465d094b64bece987be66fa501d +5deba893368ea3fdd3b3a4201d3bd68b3464ead10c6f0ddf513a630e0133fec8 +08630e4b3c8b0aad1bbeed508e7e03d41b3d060a92b1958407843e4cabd78d79 +ff72fc0e92f4903cfd05856f457dd15b1aab99c1d29804d2f3134c9817f45fd2 +efebb92545f056f4ca76ea74ad464cd041b7cbb8892f2dba833118b83e20c039 +99939ffc6cc50503bb871565797ec537e26eb622fd30303273748af2afd97e07 +a9c2a96f4ef8754dc3ea8f3348cb30d76bdaa84d2e933c94c99d13e74f19970f +5d2bd19712926e230dd02aeae6461edd83ac935ec2f420649f82d4160a072700 +10141602c3a6572740d8e97fd08e56b987062bb57237bbb3056a36e97e399a7a +cf9653743a9984ef36254d60772a0eedca800923461a3e4443a5ef469aefceec +aa1831e56b0d8ea6ccb76bb9dbb6ab7584ee268bdd0f5f0d57eddba9b97d74a2 +910f178f388a50fa32aad7b87b3235efcabd4b5009190d12e8c770f6e70dbe10 +e747e1984a1c41d701e6220b001fe25b9a677c996f8fd91bd40fa7e07f57e8bd +5d2381442b337924e56de4d18cdc352314caebf065f610b00b50302bae3ad612 +dad9059a3d7f3bd63827e28f17d57cef4a8cb8af1f080a993c3c74871e4b7bdb +2602d07587aed02aa783d80234b6eecc77d163847e63d3c9aa412d10acea7a5c +5ece5b893bb3031facee72701acd225d6b6a752cb2f84de3ceab2b97b606a0bf +c6874869a86e3a55a4e1d7abd94719f604ea68b1108ebb5bebc3ef465bdd2cdb +864ecfe0d6959d5114eaaf1612c970caa2c94729178e6af130a1df211a3795a9 +b5fb934e47f6c48155a19acce788036b4867f90d40c1e4ff7460399f1f08f98a +0aa3e0d8e354195a2563759dfe0183c8d67b449516ed8f5cf3288f7298d62092 +922f07027352bc7c9612cfca46f1cf2ed1417ab863c2615f2d26ee13d7a04a18 +8336ec9961e76af2f506e3db3d67a2a4fb2dbbb0ca34be6db9789a1cda607d9b +35f0eac47f488bbe74f8f04b49dc492ec8f096e6710ad59d248a0c98497541d8 +5f9134d5215b0a05fc29db1aa71e432a2c0b00106bf3124df0b72c144375a280 +9cc5ed8335b3e970eaad9178f43011b55d7f3e11d89be1058361893016254440 +353b88162a4e7913721092e05573497ed693f3120176dc08253d2356559041d8 +741a6b9c41f8eb695369633632ffc35a1e2e4ed6258f0a8eef0bf6bb028efed8 +a679be4bc197cc868255f748ca953312eef556d8fdae4e9706c3116e76140587 +db18492730a14e96c211fcd0aeb0d4324b1b4abd0150637c6c135fcca1823fde +20482dbbab536f87e1d3f0ac4b5154e33bfaade3ac4af8b8d2082658d35a251e +a0d718f702ed8d957555331c9593abbf64b2194dac9f098773ef4313cd8a48e7 +4d60513d6ee1c132e59ebf5dce2359b61efd16fb4cce810172abb3939e874792 +a862462c72895461ed4dd265abbf52c11c50e607fd3bebeff0397398f656066c +5f64fc4e67cf5f984fe818c9500cb10beadc1ac513c0c8e60701144b949ce67d +08cec1adeb70fb01f48abfea22412f4b07b710a8d774228ae156bfdd556c0f49 +bda072c0926a08150f77ee338b3b4303bd2186da21b89df804cd531c499ef953 +9b1ed325e5ef952af05cf67a9fe64b1af975c18348809161ad382debfde45495 +5b32472edf5098b6d1f8fc8807f81ee5be3659bd0f47542ee81e20cbaef168dd +4b991069cda2f850b1faa40e74fad79ed5f74a0fde1c060996a2280e9c9d21f5 +d23174d3ef4d9eb6e337d443cfccaeab8b0015e6427f9439c8473a1364faf782 +f58bd8bd775899092844ba570c427dff47b8cc4859fd9042ce78aa27ffea8b5a +c52be0d97cd01c7250a6eda489b5a17e23167239e0d7fd8f3429529ef02548e9 +b7bc1dcfc729600ff98d9f9b33ecdd10ff78baa313b7e35c51dfe8c6a17568fd +bfbd434860a8ef3821b336783fa328279c05b05aba37f8d26da43391c9cfbd71 +6b240148995a005448afbe45ef2c2853aa3c1cf3ba6434ec79e8dbacef443569 +8e6ef17bdf960e9a37f0b34f4aa39641492bcce95afe55d168e510f934288da7 +c61eb3e1a42f18abc608995cd8c9afcc591751bcd9759387d3924751b1a2c79a +0cf18b53d3ed8096e2c559dd001e8bf6824b3eedafedd8b89fa23f4aeed14435 +a7d05da7b0607edf2aab0816e866f6791e834bff5f5c6699edb97df199549d54 +3d039671a481d094352ec76d2f7e5119887ee3ad1117f749a85b3b6f37e3d25f +25397d1d019da9c5c6fbbfbaeb4fdf0a423f6394968f2eabc560f76e75b07b54 +a6d87328604fc86be37a1e8e5790eb845cca88bbc2e01eab28a6d6615229658b +7554a85064aacf698949e4f56f2bd61bd5af31bd6012ef0c1bb627cbeec71b52 +e99af95f699617a8462e14e144424a64e4c1cda80a13cf7b20929041b2df6686 +15c2f77a73f9cdbca33cd11188a9a608b240b27e7cfc5234fdad6db5d6565787 +d99f45709674690ee704de4ce6accc37343eaac02dd8ca368221d607c4ea24dc +05aaa5162120301a8fb4c3166ef0e813aab536200a8d54d3e0679cbad59cae0d +d9c251016336c63243b42f4a439af0f1b4d4cc3ee9c24dae5ec87c10b4b046eb +3877eae636101c3231319957690cf7cd562fb48e44abd46bfd8640de5348a01d +8389dbe26165729c3ea1023b354cc6b6928922cffb2df9ea60d853a74067b442 +a7d4938296e2ffdeee8b33dae2ecf5be2451fbe3829f9c1d45820c9849176a43 +22694f059367670d68ad12080a84603821f867ca37dc727c3c5254103af21cd9 +034f679aea5d4bc81366245725fa46cd671ac9251817e8abbe9f06f182b738e9 +05769b0d6a504170334d09bb7b809c249ca9678658b36fef98a0f8936cc9167f +31837fb2e92319b8e4df5168494fe90a12a88b93bae098fac2f3af2c087759cf +0fdc3d901e921222a19e53c654d13e52a6f272bd65e3deee14e3e59c6dd9b794 +dbd476ccd4deb50e94d207123a5bb6276e40177c13adee9227e283b51bdc8e50 +2af8d9f3d4cdf61a9bffdb5047aa305f7c61fbb49440b70993c9620020fadf15 +4b5248e8e2a6fd5638a447a593b320039eb53a709e992a481c0de5f19640c17f +cdcfacfbf7b5252c0274c53f6de78a11db640076e01a11be6a63c3a8be0e3fb0 +f0c1f40b379b80399771b0b23aa0fb934ee3184f0c18d5cb40285510a4eb92f1 +6f089ce3cf32b52add23b0f6a436637a17a71f90e8c91adeaff7eb97220a17b7 +354ea80c678e158c1ecd586f0e2e6d7ab5a179500d404e19a65db6c9568b0799 +330d69b254d29e704196964553817ab428be257c5d51aac61ee9cffcd3ec4615 +1d6e9992ad91a791d1c2465df24757dcbc64f3788b15868b905e53ccd04625c7 +f04fa267d68a6aeb59443ead9bc171f845b2b0d7ac7e788c21411a1d4b3935d6 +ef2093333ce092da5d06fcf6c1f1afc68db00cc1d0090f21046b54694f5162cc +cb07ac6e81a3b657871db0692cd70edcfb645c335167e08eb15caa6cbf6419b0 +1cb28d3beb8c5ab6c8f77663a2c258177a1feb9abb560e903b45a1d14644a08d +778a0db918b36ed5a2d6d409adf41a21b13211679094cf290c4652633d861e1e +2cf20b69ccdcf17ac7d4bc15febe037998b98c176369d225995e578f62f6e548 +049da929686caf8b58bf1baf99bfd7196c8084419d381078ad0bc6bffbe163de +15a4d0e6fb53208aff06f08967882b17c0696f060218ae037682036cb39365b7 +33d8c2b0f2414f3c919473a6abc8d419f70b541a62082602990c3c35a55217d5 +96fea82048181950779a3fc5f67bdad8df84e5433fa67bccd05ec886d857b789 +18ffbf083fa0b9f98cf5cfc9ae29d607d2ed11fa02131fd7c258431b20f7b113 +c316b7163644fdef029d33366200e9c4b5727940490a81aa139dddf9493f6b32 +0ee84950a6a549460032d0ba7fb3b2ded2e4028bd3ef456005bfc1456c681f25 +82dad6da15127a1ef14550d9557b86c2bc37440d538ee5146f320c9db07aed68 +70f6fa748a5b87fde0e3ef4cf1567e743eea26076ba668b46f3f7ad99f4df367 +fd40d87cca35267a09a3a33f8212655b747323e9d5f184cde766906f6f85ef2b +3ad0dc0edcd150e589dae9c0e19d464ad618c32e14a5dbcaa6ecbcd990cc49ad +c6de19129debd2de99b506adf4dbdea4ff1364e300447c9c0deda2cdf1d3648b +1a83bd4be46e1797fb5b6216077a54f12c7ace9c28320026a19492e58193d082 +c0b5473a5a603ce22ea377511b725ad9c23b1a1b906b465fa02d0fb620e23074 +66c9d077730916850cd2abcc2412a364f4a0efde3fb741dea91fbba138e74dcb +809627282be317d8f1dbb22220c9696bf39a27fc38aff90eaf458151a00a8a88 +9d4f5d933b1eee63054c65798ad32079ce573d53c620b6a0f81fd931b5a24707 +ebb30cf01b0c63b55ee8c08b805a9a45aea8aacf49982ce6d3e8726c6a122437 +1b9b116a56de605482449dabbb83d353ebdf355fcb8cde5658c699b8a55718a8 +6e051b42221dda48257e9f56d09f31a77630930abb0fce0d49ec9cb27c6ce480 +4c3b36d45ec195e7f78dc930370ed66cd4b6763085ec4c626693e69b39e993b1 +70b2289f29dcf94d5d2763a8211a92c40442371aa2f4297c9958c833421ee693 +a74b256e425979afe86b286bbda0983e14194250d9fecd03a8ba1fe615e93ae1 +d60d43f6858ea9cd47ddf88a1bfb5e90b60a28cdb269d9e1e43b0cf470a95b48 +aa5299e7159e7ccb18200914b93c3b0df79f181789fdfd6693613d0d42778883 +88847927f59d40f0cb5334f62eafe4f380076cfb7720174eceab1eb5050ea12c +e4293db115c4f9bd4d21910a69d566a706f5c0e1bcb344203503855e6643b125 +17b6db03c41f13a347ad39e47a46d626f8a31a163bda6d23264657b412bdec99 +c87a103d26 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndResource +/F637_0 /WWWUTU+NimbusRomNo9L-ReguItal 1 1 +[ /.notdef/dotaccent/fi/fl/fraction/hungarumlaut/Lslash/lslash + /ogonek/ring/.notdef/breve/minus/.notdef/Zcaron/zcaron + /caron/dotlessi/dotlessj/ff/ffi/ffl/notequal/infinity + /lessequal/greaterequal/partialdiff/summation/product/pi/grave/quotesingle + /space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright + /parenleft/parenright/asterisk/plus/comma/hyphen/period/slash + /zero/one/two/three/four/five/six/seven + /eight/nine/colon/semicolon/less/equal/greater/question + /at/A/B/C/D/E/F/G + /H/I/J/K/L/M/N/O + /P/Q/R/S/T/U/V/W + /X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore + /quoteleft/a/b/c/d/e/f/g + /h/i/j/k/l/m/n/o + /p/q/r/s/t/u/v/w + /x/y/z/braceleft/bar/braceright/asciitilde/.notdef + /Euro/integral/quotesinglbase/florin/quotedblbase/ellipsis/dagger/daggerdbl + /circumflex/perthousand/Scaron/guilsinglleft/OE/Omega/radical/approxequal + /.notdef/.notdef/.notdef/quotedblleft/quotedblright/bullet/endash/emdash + /tilde/trademark/scaron/guilsinglright/oe/Delta/lozenge/Ydieresis + /.notdef/exclamdown/cent/sterling/currency/yen/brokenbar/section + /dieresis/copyright/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron + /degree/plusminus/twosuperior/threesuperior/acute/mu/paragraph/periodcentered + /cedilla/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters/questiondown + /Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla + /Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis + /Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply + /Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls + /agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla + /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis + /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide + /oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis] +pdfMakeFont +612 792 false pdfSetup +%%EndSetup +%%Page: 1 1 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 756] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 463.019 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -36] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +117.436 701.916 Td +/F122_0 24.7902 Tf +(bzip2) 63.3638 Tj +-278 TJm +(and) 44.077 Tj +-278 TJm +(libbzip2,) 99.1856 Tj +-278 TJm +(ver) 37.2101 Tj +15 TJm +(sion) 50.9687 Tj +-278 TJm +(1.0.5) 55.1334 Tj +[1 0 0 1 72 696.784] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -15.4939] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -681.29] cm +[1 0 0 1 0 0] Tm +0 0 Td +90.4929 661.631 Td +/F122_0 20.6585 Tf +(A) 14.9154 Tj +-278 TJm +(pr) 20.6585 Tj +20 TJm +(ogram) 63.1324 Tj +-278 TJm +(and) 36.7308 Tj +-278 TJm +(librar) 51.6669 Tj +-10 TJm +(y) 11.4861 Tj +-278 TJm +(f) 6.87928 Tj +20 TJm +(or) 20.6585 Tj +-278 TJm +(data) 42.4739 Tj +-278 TJm +(compression) 128.579 Tj +[1 0 0 1 72 657.035] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -144] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -513.035] cm +[1 0 0 1 0 0] Tm +0 0 Td +207.676 503.285 Td +/F122_0 11.9552 Tf +(J) 6.64709 Tj +20 TJm +(ulian) 27.9034 Tj +-278 TJm +(Se) 14.6212 Tj +15 TJm +(war) 20.5988 Tj +20 TJm +(d,) 10.6282 Tj +-278 TJm +(http://www) 61.103 Tj +40 TJm +(.bzip.or) 42.5127 Tj +15 TJm +(g) 7.30463 Tj +[1 0 0 1 72 500.625] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -435.826] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 463.019 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 2 2 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 140.398 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -140.398 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -13.9477] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 709.534 Td +/F122_0 14.3462 Tf +(bzip2) 36.6689 Tj +-489 TJm +(and) 25.5075 Tj +-488 TJm +(libbzip2,) 57.3991 Tj +-542 TJm +(ver) 21.5336 Tj +15 TJm +(sion) 29.4958 Tj +-488 TJm +(1.0.5:) 36.6832 Tj +-766 TJm +(A) 10.358 Tj +-488 TJm +(pr) 14.3462 Tj +20 TJm +(ogram) 43.842 Tj +-489 TJm +(and) 25.5075 Tj +-489 TJm +(librar) 35.8798 Tj +-10 TJm +(y) 7.97649 Tj +-488 TJm +(f) 4.77728 Tj +20 TJm +(or) 14.3462 Tj +-489 TJm +(data) 29.4958 Tj +72 692.319 Td +(compression) 89.2907 Tj +[1 0 0 1 72 689.349] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -689.349] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 680.364 Td +/F130_0 9.9626 Tf +(by) 9.9626 Tj +-250 TJm +(Julian) 23.8007 Tj +-250 TJm +(Se) 9.9626 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(ard) 12.7222 Tj +[1 0 0 1 72 678.207] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -678.207] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 668.409 Td +/F130_0 9.9626 Tf +(Cop) 16.6077 Tj +10 TJm +(yright) 23.8007 Tj +[1 0 0 1 114.799 668.409] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -114.799 -668.409] cm +[1 0 0 1 0 0] Tm +0 0 Td +114.799 668.409 Td +/F130_0 9.9626 Tf +(\251) 7.57158 Tj +[1 0 0 1 122.371 668.409] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -122.371 -668.409] cm +[1 0 0 1 0 0] Tm +0 0 Td +124.861 668.409 Td +/F130_0 9.9626 Tf +(1996-2007) 43.1679 Tj +-250 TJm +(Julian) 23.8007 Tj +-250 TJm +(Se) 9.9626 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(ard) 12.7222 Tj +[1 0 0 1 72 666.252] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -7.9701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -658.282] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 650.875 Td +/F130_0 7.9701 Tf +(This) 14.1708 Tj +-250 TJm +(program,) 28.9952 Tj +[1 0 0 1 119.151 650.875] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.151 -650.875] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.151 650.875 Td +/F134_0 7.9701 Tf +(bzip2) 23.9103 Tj +[1 0 0 1 143.061 650.875] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -143.061 -650.875] cm +[1 0 0 1 0 0] Tm +0 0 Td +143.061 650.875 Td +/F130_0 7.9701 Tf +(,) 1.99253 Tj +-250 TJm +(the) 9.73946 Tj +-250 TJm +(associated) 32.7571 Tj +-250 TJm +(library) 21.2483 Tj +[1 0 0 1 216.768 650.875] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -216.768 -650.875] cm +[1 0 0 1 0 0] Tm +0 0 Td +216.768 650.875 Td +/F134_0 7.9701 Tf +(libbzip2) 38.2565 Tj +[1 0 0 1 255.024 650.875] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -255.024 -650.875] cm +[1 0 0 1 0 0] Tm +0 0 Td +255.024 650.875 Td +/F130_0 7.9701 Tf +(,) 1.99253 Tj +-250 TJm +(and) 11.5088 Tj +-250 TJm +(all) 7.9701 Tj +-250 TJm +(documentation,) 49.3668 Tj +-250 TJm +(are) 9.73149 Tj +-250 TJm +(cop) 11.5088 Tj +10 TJm +(yright) 19.0406 Tj +-250 TJm +(\251) 6.05728 Tj +-250 TJm +(1996-2007) 34.5344 Tj +-250 TJm +(Julian) 19.0406 Tj +-250 TJm +(Se) 7.9701 Tj +25 TJm +(w) 5.75441 Tj +10 TJm +(ard.) 12.1703 Tj +-310 TJm +(All) 10.1858 Tj +-250 TJm +(rights) 18.1559 Tj +-250 TJm +(reserv) 19.471 Tj +15 TJm +(ed.) 9.5163 Tj +[1 0 0 1 72 649.149] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -7.9701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -641.179] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 633.34 Td +/F130_0 7.9701 Tf +(Redistrib) 29.2264 Tj +20 TJm +(ution) 16.3865 Tj +-250 TJm +(and) 11.5088 Tj +-250 TJm +(use) 10.6241 Tj +-250 TJm +(in) 6.20074 Tj +-250 TJm +(source) 20.802 Tj +-250 TJm +(and) 11.5088 Tj +-250 TJm +(binary) 20.3636 Tj +-250 TJm +(forms,) 20.5868 Tj +-250 TJm +(with) 14.1708 Tj +-250 TJm +(or) 6.63909 Tj +-250 TJm +(without) 24.3566 Tj +-250 TJm +(modi\002cation,) 42.2894 Tj +-250 TJm +(are) 9.73149 Tj +-250 TJm +(permitted) 30.5494 Tj +-250 TJm +(pro) 10.6241 Tj +15 TJm +(vided) 17.7096 Tj +-250 TJm +(that) 11.9551 Tj +-250 TJm +(the) 9.73946 Tj +-250 TJm +(follo) 15.0555 Tj +25 TJm +(wing) 15.9402 Tj +-250 TJm +(conditions) 33.2114 Tj +-250 TJm +(are) 9.73149 Tj +-250 TJm +(met:) 14.1708 Tj +[1 0 0 1 72 631.615] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -23.7789] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 5.5791 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -77.5791 -607.836] cm +[1 0 0 1 0 0] Tm +0 0 Td +77.5791 607.836 Td +/F130_0 7.9701 Tf +(\225) 2.78954 Tj +[1 0 0 1 80.3686 607.836] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9926 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.594 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -83.9552 -607.836] cm +[1 0 0 1 0 0] Tm +0 0 Td +83.9552 607.836 Td +/F130_0 7.9701 Tf +(Redistrib) 29.2264 Tj +20 TJm +(utions) 19.4869 Tj +-250 TJm +(of) 6.63909 Tj +-250 TJm +(source) 20.802 Tj +-250 TJm +(code) 15.0475 Tj +-250 TJm +(must) 15.5018 Tj +-250 TJm +(retain) 18.1479 Tj +-250 TJm +(the) 9.73946 Tj +-250 TJm +(abo) 11.5088 Tj +15 TJm +(v) 3.98505 Tj +15 TJm +(e) 3.53872 Tj +-250 TJm +(cop) 11.5088 Tj +10 TJm +(yright) 19.0406 Tj +-250 TJm +(notice,) 21.4714 Tj +-250 TJm +(this) 11.5168 Tj +-250 TJm +(list) 9.74743 Tj +-250 TJm +(of) 6.63909 Tj +-250 TJm +(conditions) 33.2114 Tj +-250 TJm +(and) 11.5088 Tj +-250 TJm +(the) 9.73946 Tj +-250 TJm +(follo) 15.0555 Tj +25 TJm +(wing) 15.9402 Tj +-250 TJm +(disclaimer) 33.2034 Tj +55 TJm +(.) 1.99253 Tj +[1 0 0 1 470.908 607.836] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -398.908 -17.5343] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 5.5791 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -77.5791 -590.302] cm +[1 0 0 1 0 0] Tm +0 0 Td +77.5791 590.302 Td +/F130_0 7.9701 Tf +(\225) 2.78954 Tj +[1 0 0 1 80.3686 590.302] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9926 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.594 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -83.9552 -590.302] cm +[1 0 0 1 0 0] Tm +0 0 Td +83.9552 590.302 Td +/F130_0 7.9701 Tf +(The) 12.3935 Tj +-270 TJm +(origin) 19.0406 Tj +-270 TJm +(of) 6.63909 Tj +-270 TJm +(this) 11.5168 Tj +-270 TJm +(softw) 17.7096 Tj +10 TJm +(are) 9.73149 Tj +-270 TJm +(must) 15.5018 Tj +-270 TJm +(not) 10.1858 Tj +-270 TJm +(be) 7.52377 Tj +-270 TJm +(misrepresented;) 50.4667 Tj +-279 TJm +(you) 11.9551 Tj +-270 TJm +(must) 15.5018 Tj +-270 TJm +(not) 10.1858 Tj +-270 TJm +(claim) 17.7096 Tj +-270 TJm +(that) 11.9551 Tj +-270 TJm +(you) 11.9551 Tj +-270 TJm +(wrote) 18.1479 Tj +-270 TJm +(the) 9.73946 Tj +-270 TJm +(original) 24.795 Tj +-270 TJm +(softw) 17.7096 Tj +10 TJm +(are.) 11.724 Tj +-740 TJm +(If) 5.30809 Tj +-270 TJm +(you) 11.9551 Tj +-270 TJm +(use) 10.6241 Tj +-270 TJm +(this) 11.5168 Tj +-270 TJm +(softw) 17.7096 Tj +10 TJm +(are) 9.73149 Tj +-270 TJm +(in) 6.20074 Tj +-269 TJm +(a) 3.53872 Tj +83.9552 580.737 Td +(product,) 26.3412 Tj +-250 TJm +(an) 7.52377 Tj +-250 TJm +(ackno) 19.0326 Tj +25 TJm +(wledgment) 35.4191 Tj +-250 TJm +(in) 6.20074 Tj +-250 TJm +(the) 9.73946 Tj +-250 TJm +(product) 24.3487 Tj +-250 TJm +(documentation) 47.3743 Tj +-250 TJm +(w) 5.75441 Tj +10 TJm +(ould) 14.1708 Tj +-250 TJm +(be) 7.52377 Tj +-250 TJm +(appreciated) 36.7342 Tj +-250 TJm +(b) 3.98505 Tj +20 TJm +(ut) 6.20074 Tj +-250 TJm +(is) 5.31606 Tj +-250 TJm +(not) 10.1858 Tj +-250 TJm +(required.) 28.5489 Tj +[1 0 0 1 403.817 580.737] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -331.817 -17.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 5.5791 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -77.5791 -563.203] cm +[1 0 0 1 0 0] Tm +0 0 Td +77.5791 563.203 Td +/F130_0 7.9701 Tf +(\225) 2.78954 Tj +[1 0 0 1 80.3686 563.203] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9926 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.594 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -83.9552 -563.203] cm +[1 0 0 1 0 0] Tm +0 0 Td +83.9552 563.203 Td +/F130_0 7.9701 Tf +(Altered) 23.9023 Tj +-250 TJm +(source) 20.802 Tj +-250 TJm +(v) 3.98505 Tj +15 TJm +(ersions) 22.5793 Tj +-250 TJm +(must) 15.5018 Tj +-250 TJm +(be) 7.52377 Tj +-250 TJm +(plainly) 22.1409 Tj +-250 TJm +(mark) 16.3786 Tj +10 TJm +(ed) 7.52377 Tj +-250 TJm +(as) 6.63909 Tj +-250 TJm +(such,) 16.6017 Tj +-250 TJm +(and) 11.5088 Tj +-250 TJm +(must) 15.5018 Tj +-250 TJm +(not) 10.1858 Tj +-250 TJm +(be) 7.52377 Tj +-250 TJm +(misrepresented) 48.251 Tj +-250 TJm +(as) 6.63909 Tj +-250 TJm +(being) 17.7096 Tj +-250 TJm +(the) 9.73946 Tj +-250 TJm +(original) 24.795 Tj +-250 TJm +(softw) 17.7096 Tj +10 TJm +(are.) 11.724 Tj +[1 0 0 1 464.405 563.203] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -392.405 -17.5343] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 5.5791 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -77.5791 -545.669] cm +[1 0 0 1 0 0] Tm +0 0 Td +77.5791 545.669 Td +/F130_0 7.9701 Tf +(\225) 2.78954 Tj +[1 0 0 1 80.3686 545.669] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9926 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.594 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -83.9552 -545.669] cm +[1 0 0 1 0 0] Tm +0 0 Td +83.9552 545.669 Td +/F130_0 7.9701 Tf +(The) 12.3935 Tj +-250 TJm +(name) 17.2632 Tj +-250 TJm +(of) 6.63909 Tj +-250 TJm +(the) 9.73946 Tj +-250 TJm +(author) 20.3636 Tj +-250 TJm +(may) 13.7245 Tj +-250 TJm +(not) 10.1858 Tj +-250 TJm +(be) 7.52377 Tj +-250 TJm +(used) 14.6092 Tj +-250 TJm +(to) 6.20074 Tj +-250 TJm +(endorse) 24.787 Tj +-250 TJm +(or) 6.63909 Tj +-250 TJm +(promote) 26.5643 Tj +-250 TJm +(products) 27.449 Tj +-250 TJm +(deri) 12.3935 Tj +25 TJm +(v) 3.98505 Tj +15 TJm +(ed) 7.52377 Tj +-250 TJm +(from) 15.4939 Tj +-250 TJm +(this) 11.5168 Tj +-250 TJm +(softw) 17.7096 Tj +10 TJm +(are) 9.73149 Tj +-250 TJm +(without) 24.3566 Tj +-250 TJm +(speci\002c) 24.3487 Tj +-250 TJm +(prior) 15.4939 Tj +-250 TJm +(written) 22.5793 Tj +-250 TJm +(permission.) 36.9733 Tj +[1 0 0 1 533.577 545.669] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -461.577 -9.6956] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -535.973] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 528.135 Td +/F130_0 7.9701 Tf +(THIS) 17.7096 Tj +-401 TJm +(SOFTW) 27.0107 Tj +120 TJm +(ARE) 15.9402 Tj +-401 TJm +(IS) 7.08542 Tj +-400 TJm +(PR) 9.74743 Tj +40 TJm +(O) 5.75441 Tj +50 TJm +(VIDED) 24.787 Tj +-401 TJm +(BY) 11.0705 Tj +-401 TJm +(THE) 15.4939 Tj +-401 TJm +(A) 5.75441 Tj +55 TJm +(UTHOR) 27.449 Tj +-401 TJm +("AS) 13.4376 Tj +-401 TJm +(IS") 10.3372 Tj +-401 TJm +(AND) 17.2632 Tj +-400 TJm +(ANY) 17.2632 Tj +-401 TJm +(EXPRESS) 34.1041 Tj +-401 TJm +(OR) 11.0705 Tj +-401 TJm +(IMPLIED) 32.3188 Tj +-401 TJm +(W) 7.52377 Tj +120 TJm +(ARRANTIES,) 46.7128 Tj +-401 TJm +(INCLUDING,) 46.2585 Tj +-400 TJm +(B) 5.31606 Tj +10 TJm +(UT) 10.6241 Tj +72 518.571 Td +(NO) 11.5088 Tj +40 TJm +(T) 4.86973 Tj +-304 TJm +(LIMITED) 32.7571 Tj +-304 TJm +(T) 4.86973 Tj +18 TJm +(O,) 7.74694 Tj +-305 TJm +(THE) 15.4939 Tj +-304 TJm +(IMPLIED) 32.3188 Tj +-304 TJm +(W) 7.52377 Tj +120 TJm +(ARRANTIES) 44.7202 Tj +-304 TJm +(OF) 10.1858 Tj +-304 TJm +(MERCHANT) 44.7202 Tj +93 TJm +(ABILITY) 31.8724 Tj +-304 TJm +(AND) 17.2632 Tj +-305 TJm +(FITNESS) 31.442 Tj +-304 TJm +(FOR) 15.5018 Tj +-304 TJm +(A) 5.75441 Tj +-304 TJm +(P) 4.43138 Tj +92 TJm +(AR) 11.0705 Tj +60 TJm +(TICULAR) 34.5344 Tj +-304 TJm +(PURPOSE) 34.9887 Tj +-304 TJm +(ARE) 15.9402 Tj +-305 TJm +(DI) 8.40846 Tj +1 TJm +(S-) 7.08542 Tj +72 509.006 Td +(CLAIMED.) 38.2963 Tj +-576 TJm +(IN) 8.40846 Tj +-287 TJm +(NO) 11.5088 Tj +-288 TJm +(EVENT) 26.118 Tj +-288 TJm +(SHALL) 25.6797 Tj +-288 TJm +(THE) 15.4939 Tj +-287 TJm +(A) 5.75441 Tj +55 TJm +(UTHOR) 27.449 Tj +-288 TJm +(BE) 10.1858 Tj +-288 TJm +(LIABLE) 28.3337 Tj +-288 TJm +(FOR) 15.5018 Tj +-288 TJm +(ANY) 17.2632 Tj +-287 TJm +(DIRECT) 28.78 Tj +74 TJm +(,) 1.99253 Tj +-288 TJm +(INDIRECT) 37.1885 Tj +74 TJm +(,) 1.99253 Tj +-288 TJm +(INCIDENT) 37.6268 Tj +93 TJm +(AL,) 12.6167 Tj +-288 TJm +(SPECIAL,) 34.3193 Tj +-288 TJm +(EXEMPLAR) 42.9509 Tj +65 TJm +(Y) 5.75441 Tj +129 TJm +(,) 1.99253 Tj +72 499.442 Td +(OR) 11.0705 Tj +-299 TJm +(CONSEQ) 31.8804 Tj +10 TJm +(UENTIAL) 34.5265 Tj +-300 TJm +(D) 5.75441 Tj +40 TJm +(AMA) 18.5942 Tj +40 TJm +(GES) 15.0555 Tj +-299 TJm +(\(INCLUDING,) 48.9125 Tj +-299 TJm +(B) 5.31606 Tj +10 TJm +(UT) 10.6241 Tj +-299 TJm +(NO) 11.5088 Tj +40 TJm +(T) 4.86973 Tj +-300 TJm +(LIMITED) 32.7571 Tj +-299 TJm +(T) 4.86973 Tj +18 TJm +(O,) 7.74694 Tj +-299 TJm +(PR) 9.74743 Tj +40 TJm +(OCUREMENT) 49.59 Tj +-299 TJm +(OF) 10.1858 Tj +-300 TJm +(SUBSTITUTE) 47.8206 Tj +-299 TJm +(GOODS) 27.449 Tj +-299 TJm +(OR) 11.0705 Tj +-300 TJm +(SER) 14.6172 Tj +80 TJm +(VICES) 23.0256 Tj +1 TJm +(;) 2.21569 Tj +72 489.878 Td +(LOSS) 19.4869 Tj +-360 TJm +(OF) 10.1858 Tj +-360 TJm +(USE,) 17.048 Tj +-360 TJm +(D) 5.75441 Tj +40 TJm +(A) 5.75441 Tj +111 TJm +(T) 4.86973 Tj +93 TJm +(A,) 7.74694 Tj +-360 TJm +(OR) 11.0705 Tj +-359 TJm +(PR) 9.74743 Tj +40 TJm +(OFITS;) 24.3566 Tj +-360 TJm +(OR) 11.0705 Tj +-360 TJm +(B) 5.31606 Tj +10 TJm +(USINESS) 32.3267 Tj +-360 TJm +(INTERR) 28.78 Tj +40 TJm +(UPTION\)) 31.8724 Tj +-360 TJm +(HO) 11.5088 Tj +35 TJm +(WEVER) 28.3337 Tj +-360 TJm +(CA) 11.0705 Tj +55 TJm +(USED) 20.8099 Tj +-359 TJm +(AND) 17.2632 Tj +-360 TJm +(ON) 11.5088 Tj +-360 TJm +(ANY) 17.2632 Tj +-360 TJm +(THEOR) 26.5643 Tj +65 TJm +(Y) 5.75441 Tj +-360 TJm +(OF) 10.1858 Tj +-360 TJm +(LIAB) 18.5942 Tj +1 TJm +(ILITY) 20.802 Tj +128 TJm +(,) 1.99253 Tj +72 480.314 Td +(WHETHER) 38.9578 Tj +-247 TJm +(IN) 8.40846 Tj +-247 TJm +(CONTRA) 32.7651 Tj +40 TJm +(CT) 10.1858 Tj +74 TJm +(,) 1.99253 Tj +-247 TJm +(STRICT) 27.457 Tj +-247 TJm +(LIABILITY) 39.3962 Tj +129 TJm +(,) 1.99253 Tj +-246 TJm +(OR) 11.0705 Tj +-247 TJm +(T) 4.86973 Tj +18 TJm +(OR) 11.0705 Tj +60 TJm +(T) 4.86973 Tj +-247 TJm +(\(INCLUDING) 46.92 Tj +-247 TJm +(NEGLIGENCE) 50.4667 Tj +-247 TJm +(OR) 11.0705 Tj +-247 TJm +(O) 5.75441 Tj +40 TJm +(THER) 20.8099 Tj +55 TJm +(WISE\)) 22.133 Tj +-247 TJm +(ARISING) 32.3188 Tj +-247 TJm +(IN) 8.40846 Tj +-247 TJm +(ANY) 17.2632 Tj +-247 TJm +(W) 7.52377 Tj +120 TJm +(A) 5.75441 Tj +105 TJm +(Y) 5.75441 Tj +-247 TJm +(OUT) 16.3786 Tj +72 470.75 Td +(OF) 10.1858 Tj +-250 TJm +(THE) 15.4939 Tj +-250 TJm +(USE) 15.0555 Tj +-250 TJm +(OF) 10.1858 Tj +-250 TJm +(THIS) 17.7096 Tj +-250 TJm +(SOFTW) 27.0107 Tj +120 TJm +(ARE,) 17.9327 Tj +-250 TJm +(EVEN) 21.2483 Tj +-250 TJm +(IF) 7.08542 Tj +-250 TJm +(AD) 11.5088 Tj +40 TJm +(VISED) 23.464 Tj +-250 TJm +(OF) 10.1858 Tj +-250 TJm +(THE) 15.4939 Tj +-250 TJm +(POSSIBILITY) 47.8206 Tj +-250 TJm +(OF) 10.1858 Tj +-250 TJm +(SUCH) 21.2563 Tj +-250 TJm +(D) 5.75441 Tj +40 TJm +(AMA) 18.5942 Tj +40 TJm +(GE.) 12.6167 Tj +[1 0 0 1 72 469.598] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -7.9701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -461.628] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 453.216 Td +/F130_0 7.9701 Tf +(P) 4.43138 Tj +92 TJm +(A) 5.75441 Tj +111 TJm +(TENTS:) 27.0107 Tj +-296 TJm +(T) 4.86973 Tj +80 TJm +(o) 3.98505 Tj +-295 TJm +(the) 9.73946 Tj +-296 TJm +(best) 12.8398 Tj +-295 TJm +(of) 6.63909 Tj +-296 TJm +(my) 10.1858 Tj +-295 TJm +(kno) 11.9551 Tj +25 TJm +(wledge,) 25.0102 Tj +[1 0 0 1 208.544 453.216] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -208.544 -453.216] cm +[1 0 0 1 0 0] Tm +0 0 Td +208.544 453.216 Td +/F134_0 7.9701 Tf +(bzip2) 23.9103 Tj +[1 0 0 1 232.454 453.216] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -232.454 -453.216] cm +[1 0 0 1 0 0] Tm +0 0 Td +234.81 453.216 Td +/F130_0 7.9701 Tf +(and) 11.5088 Tj +[1 0 0 1 248.674 453.216] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -248.674 -453.216] cm +[1 0 0 1 0 0] Tm +0 0 Td +248.674 453.216 Td +/F134_0 7.9701 Tf +(libbzip2) 38.2565 Tj +[1 0 0 1 286.931 453.216] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -286.931 -453.216] cm +[1 0 0 1 0 0] Tm +0 0 Td +289.286 453.216 Td +/F130_0 7.9701 Tf +(do) 7.9701 Tj +-296 TJm +(not) 10.1858 Tj +-295 TJm +(use) 10.6241 Tj +-296 TJm +(an) 7.52377 Tj +15 TJm +(y) 3.98505 Tj +-295 TJm +(patented) 27.0027 Tj +-296 TJm +(algorithms.) 36.0886 Tj +-893 TJm +(Ho) 9.73946 Tj +25 TJm +(we) 9.29314 Tj +25 TJm +(v) 3.98505 Tj +15 TJm +(er) 6.19277 Tj +40 TJm +(,) 1.99253 Tj +-307 TJm +(I) 2.65404 Tj +-295 TJm +(do) 7.9701 Tj +-296 TJm +(not) 10.1858 Tj +-295 TJm +(ha) 7.52377 Tj +20 TJm +(v) 3.98505 Tj +15 TJm +(e) 3.53872 Tj +-296 TJm +(the) 9.73946 Tj +-295 TJm +(resources) 30.0951 Tj +-296 TJm +(to) 6.20074 Tj +72 443.652 Td +(carry) 16.3706 Tj +-250 TJm +(out) 10.1858 Tj +-250 TJm +(a) 3.53872 Tj +-250 TJm +(patent) 19.4789 Tj +-250 TJm +(search.) 22.3482 Tj +-620 TJm +(Therefore) 31.4181 Tj +-250 TJm +(I) 2.65404 Tj +-250 TJm +(cannot) 21.2483 Tj +-250 TJm +(gi) 6.20074 Tj +25 TJm +(v) 3.98505 Tj +15 TJm +(e) 3.53872 Tj +-250 TJm +(an) 7.52377 Tj +15 TJm +(y) 3.98505 Tj +-250 TJm +(guarantee) 30.9798 Tj +-250 TJm +(of) 6.63909 Tj +-250 TJm +(the) 9.73946 Tj +-250 TJm +(abo) 11.5088 Tj +15 TJm +(v) 3.98505 Tj +15 TJm +(e) 3.53872 Tj +-250 TJm +(statement.) 32.5419 Tj +[1 0 0 1 72 441.926] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -391.074] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 46.7993 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -46.7993 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5986 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 3 3 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 140.398 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -140.398 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -13.9477] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 707.441 Td +/F122_0 17.2154 Tf +(T) 10.5186 Tj +80 TJm +(ab) 20.0904 Tj +10 TJm +(le) 14.3576 Tj +-278 TJm +(of) 16.2513 Tj +-278 TJm +(Contents) 74.5943 Tj +[1 0 0 1 72 698.619] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.7401] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -686.879] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 686.879 Td +/F130_0 9.9626 Tf +(1.) 7.47195 Tj +-310 TJm +(Introduction) 49.2551 Tj +[1 0 0 1 131.815 686.879] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -136.796 -686.879] cm +[1 0 0 1 0 0] Tm +0 0 Td +145.733 686.879 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 686.879] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -686.879] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 686.879 Td +/F130_0 9.9626 Tf +(1) 4.9813 Tj +[1 0 0 1 516.09 686.879] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0996] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8556] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -674.923] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 674.923 Td +/F130_0 9.9626 Tf +(2.) 7.47195 Tj +-310 TJm +(Ho) 12.1743 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(bzip2) 22.1369 Tj +[1 0 0 1 152.318 674.923] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -157.3 -674.923] cm +[1 0 0 1 0 0] Tm +0 0 Td +167.054 674.923 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 674.923] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -674.923] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 674.923 Td +/F130_0 9.9626 Tf +(2) 4.9813 Tj +[1 0 0 1 516.09 674.923] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -662.968] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 662.968 Td +/F130_0 9.9626 Tf +(2.1.) 14.9439 Tj +-310 TJm +(N) 7.193 Tj +35 TJm +(AME) 22.1369 Tj +[1 0 0 1 119.014 662.968] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -123.995 -662.968] cm +[1 0 0 1 0 0] Tm +0 0 Td +132.691 662.968 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 662.968] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -662.968] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 662.968 Td +/F130_0 9.9626 Tf +(2) 4.9813 Tj +[1 0 0 1 516.09 662.968] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8556] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -651.013] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 651.013 Td +/F130_0 9.9626 Tf +(2.2.) 14.9439 Tj +-310 TJm +(SYNOPSIS) 47.0534 Tj +[1 0 0 1 137.085 651.013] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -142.067 -651.013] cm +[1 0 0 1 0 0] Tm +0 0 Td +150.582 651.013 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 651.013] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -651.013] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 651.013 Td +/F130_0 9.9626 Tf +(2) 4.9813 Tj +[1 0 0 1 516.09 651.013] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0996] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8556] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -639.058] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 639.058 Td +/F130_0 9.9626 Tf +(2.3.) 14.9439 Tj +-310 TJm +(DESCRIPTION) 64.7569 Tj +[1 0 0 1 154.789 639.058] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -159.77 -639.058] cm +[1 0 0 1 0 0] Tm +0 0 Td +168.29 639.058 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 639.058] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -639.058] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 639.058 Td +/F130_0 9.9626 Tf +(3) 4.9813 Tj +[1 0 0 1 516.09 639.058] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8557] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -627.103] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 627.103 Td +/F130_0 9.9626 Tf +(2.4.) 14.9439 Tj +-310 TJm +(OPTIONS) 42.0621 Tj +[1 0 0 1 132.094 627.103] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -137.076 -627.103] cm +[1 0 0 1 0 0] Tm +0 0 Td +145.873 627.103 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 627.103] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -627.103] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 627.103 Td +/F130_0 9.9626 Tf +(4) 4.9813 Tj +[1 0 0 1 516.09 627.103] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8556] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -615.147] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 615.147 Td +/F130_0 9.9626 Tf +(2.5.) 14.9439 Tj +-310 TJm +(MEMOR) 37.6387 Tj +65 TJm +(Y) 7.193 Tj +-250 TJm +(MAN) 23.2427 Tj +35 TJm +(A) 7.193 Tj +40 TJm +(GEMENT) 41.5042 Tj +[1 0 0 1 207.9 615.147] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -212.881 -615.147] cm +[1 0 0 1 0 0] Tm +0 0 Td +221.412 615.147 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 615.147] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -615.147] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 615.147 Td +/F130_0 9.9626 Tf +(5) 4.9813 Tj +[1 0 0 1 516.09 615.147] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0996] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8556] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -603.192] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 603.192 Td +/F130_0 9.9626 Tf +(2.6.) 14.9439 Tj +-310 TJm +(RECO) 26.5703 Tj +50 TJm +(VERING) 37.6287 Tj +-250 TJm +(D) 7.193 Tj +40 TJm +(A) 7.193 Tj +111 TJm +(T) 6.08715 Tj +93 TJm +(A) 7.193 Tj +-250 TJm +(FR) 12.1843 Tj +40 TJm +(OM) 16.0497 Tj +-250 TJm +(D) 7.193 Tj +40 TJm +(AMA) 23.2427 Tj +40 TJm +(GED) 20.4731 Tj +-250 TJm +(FILES) 26.5703 Tj +[1 0 0 1 293.449 603.192] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -298.43 -603.192] cm +[1 0 0 1 0 0] Tm +0 0 Td +308.464 603.192 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 603.192] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -603.192] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 603.192 Td +/F130_0 9.9626 Tf +(6) 4.9813 Tj +[1 0 0 1 516.09 603.192] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8557] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -591.237] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 591.237 Td +/F130_0 9.9626 Tf +(2.7.) 14.9439 Tj +-310 TJm +(PERFORMANCE) 73.6236 Tj +-250 TJm +(NO) 14.386 Tj +40 TJm +(TES) 17.7135 Tj +[1 0 0 1 197.847 591.237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -202.829 -591.237] cm +[1 0 0 1 0 0] Tm +0 0 Td +211.958 591.237 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 591.237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -591.237] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 591.237 Td +/F130_0 9.9626 Tf +(6) 4.9813 Tj +[1 0 0 1 516.09 591.237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8557] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -579.282] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 579.282 Td +/F130_0 9.9626 Tf +(2.8.) 14.9439 Tj +-310 TJm +(CA) 13.8381 Tj +135 TJm +(VEA) 20.4731 Tj +111 TJm +(TS) 11.6264 Tj +[1 0 0 1 133.519 579.282] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -138.5 -579.282] cm +[1 0 0 1 0 0] Tm +0 0 Td +148.799 579.282 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 579.282] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -579.282] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 579.282 Td +/F130_0 9.9626 Tf +(7) 4.9813 Tj +[1 0 0 1 516.09 579.282] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8556] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -567.327] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 567.327 Td +/F130_0 9.9626 Tf +(2.9.) 14.9439 Tj +-310 TJm +(A) 7.193 Tj +55 TJm +(UTHOR) 34.3112 Tj +[1 0 0 1 130.989 567.327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -135.97 -567.327] cm +[1 0 0 1 0 0] Tm +0 0 Td +145.32 567.327 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 567.327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -567.327] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 567.327 Td +/F130_0 9.9626 Tf +(7) 4.9813 Tj +[1 0 0 1 516.09 567.327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.2192] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.736] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -555.372] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 555.372 Td +/F130_0 9.9626 Tf +(3.) 7.47195 Tj +-310 TJm +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 160.049 555.372] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -160.049 -555.372] cm +[1 0 0 1 0 0] Tm +0 0 Td +160.049 555.372 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 207.87 555.372] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -215.342 -555.372] cm +[1 0 0 1 0 0] Tm +0 0 Td +224.856 555.372 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 555.372] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -555.372] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 555.372 Td +/F130_0 9.9626 Tf +(8) 4.9813 Tj +[1 0 0 1 516.09 555.372] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -543.416] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 543.416 Td +/F130_0 9.9626 Tf +(3.1.) 14.9439 Tj +-310 TJm +(T) 6.08715 Tj +80 TJm +(op-le) 20.4731 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(structure) 34.8591 Tj +[1 0 0 1 164.921 543.416] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -169.902 -543.416] cm +[1 0 0 1 0 0] Tm +0 0 Td +179.997 543.416 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 543.416] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -543.416] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 543.416 Td +/F130_0 9.9626 Tf +(8) 4.9813 Tj +[1 0 0 1 516.09 543.416] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -531.461] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 531.461 Td +/F130_0 9.9626 Tf +(3.1.1.) 22.4159 Tj +-310 TJm +(Lo) 11.0684 Tj +25 TJm +(w-le) 17.7035 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(summary) 37.0808 Tj +[1 0 0 1 177.374 531.461] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -182.355 -531.461] cm +[1 0 0 1 0 0] Tm +0 0 Td +192.866 531.461 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 531.461] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -531.461] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 531.461 Td +/F130_0 9.9626 Tf +(9) 4.9813 Tj +[1 0 0 1 516.09 531.461] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -519.506] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 519.506 Td +/F130_0 9.9626 Tf +(3.1.2.) 22.4159 Tj +-310 TJm +(High-le) 30.4357 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(summary) 37.0808 Tj +[1 0 0 1 179.287 519.506] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -184.268 -519.506] cm +[1 0 0 1 0 0] Tm +0 0 Td +193.822 519.506 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 519.506] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -519.506] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 519.506 Td +/F130_0 9.9626 Tf +(9) 4.9813 Tj +[1 0 0 1 516.09 519.506] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -507.551] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 507.551 Td +/F130_0 9.9626 Tf +(3.1.3.) 22.4159 Tj +-310 TJm +(Utility) 26.0223 Tj +-250 TJm +(functions) 37.0808 Tj +-250 TJm +(summary) 37.0808 Tj +[1 0 0 1 202.669 507.551] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -207.65 -507.551] cm +[1 0 0 1 0 0] Tm +0 0 Td +216.582 507.551 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 507.551] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -507.551] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 507.551 Td +/F130_0 9.9626 Tf +(9) 4.9813 Tj +[1 0 0 1 516.09 507.551] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -495.596] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 495.596 Td +/F130_0 9.9626 Tf +(3.2.) 14.9439 Tj +-310 TJm +(Error) 21.0211 Tj +-250 TJm +(handling) 34.8691 Tj +[1 0 0 1 148.413 495.596] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -153.394 -495.596] cm +[1 0 0 1 0 0] Tm +0 0 Td +162.611 495.596 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 495.596] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -495.596] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 495.596 Td +/F130_0 9.9626 Tf +(10) 9.9626 Tj +[1 0 0 1 516.09 495.596] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -483.641] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 483.641 Td +/F130_0 9.9626 Tf +(3.3.) 14.9439 Tj +-310 TJm +(Lo) 11.0684 Tj +25 TJm +(w-le) 17.7035 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(interf) 21.579 Tj +10 TJm +(ace) 13.2702 Tj +[1 0 0 1 167.571 483.641] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -172.552 -483.641] cm +[1 0 0 1 0 0] Tm +0 0 Td +181.045 483.641 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 483.641] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -483.641] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 483.641 Td +/F130_0 9.9626 Tf +(11) 9.9626 Tj +[1 0 0 1 516.09 483.641] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8557] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -471.685] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 471.685 Td +/F130_0 9.9626 Tf +(3.3.1.) 22.4159 Tj +[1 0 0 1 97.5043 471.685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -471.685] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 471.685 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 205.101 471.685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.082 -471.685] cm +[1 0 0 1 0 0] Tm +0 0 Td +219.736 471.685 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 471.685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -471.685] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 471.685 Td +/F130_0 9.9626 Tf +(11) 9.9626 Tj +[1 0 0 1 516.09 471.685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5341] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -459.73] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 459.73 Td +/F130_0 9.9626 Tf +(3.3.2.) 22.4159 Tj +[1 0 0 1 97.5043 459.73] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -459.73] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 459.73 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 181.19 459.73] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -186.172 -459.73] cm +[1 0 0 1 0 0] Tm +0 0 Td +194.497 459.73 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 459.73] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -459.73] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 459.73 Td +/F130_0 9.9626 Tf +(13) 9.9626 Tj +[1 0 0 1 516.09 459.73] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -447.775] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 447.775 Td +/F130_0 9.9626 Tf +(3.3.3.) 22.4159 Tj +[1 0 0 1 97.5043 447.775] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -447.775] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 447.775 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressEnd) 101.619 Tj +[1 0 0 1 199.123 447.775] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -204.105 -447.775] cm +[1 0 0 1 0 0] Tm +0 0 Td +214.533 447.775 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 447.775] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -447.775] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 447.775 Td +/F130_0 9.9626 Tf +(16) 9.9626 Tj +[1 0 0 1 516.09 447.775] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -435.82] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 435.82 Td +/F130_0 9.9626 Tf +(3.3.4.) 22.4159 Tj +[1 0 0 1 97.5043 435.82] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -435.82] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 435.82 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressInit) 119.551 Tj +[1 0 0 1 217.056 435.82] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -222.037 -435.82] cm +[1 0 0 1 0 0] Tm +0 0 Td +232.355 435.82 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 435.82] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -435.82] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 435.82 Td +/F130_0 9.9626 Tf +(16) 9.9626 Tj +[1 0 0 1 516.09 435.82] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5341] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -423.865] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 423.865 Td +/F130_0 9.9626 Tf +(3.3.5.) 22.4159 Tj +[1 0 0 1 97.5043 423.865] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -423.865] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 423.865 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 193.146 423.865] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -198.127 -423.865] cm +[1 0 0 1 0 0] Tm +0 0 Td +207.116 423.865 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 423.865] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -423.865] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 423.865 Td +/F130_0 9.9626 Tf +(17) 9.9626 Tj +[1 0 0 1 516.09 423.865] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -411.91] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 411.91 Td +/F130_0 9.9626 Tf +(3.3.6.) 22.4159 Tj +[1 0 0 1 97.5043 411.91] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -411.91] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 411.91 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressEnd) 113.574 Tj +[1 0 0 1 211.078 411.91] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -216.06 -411.91] cm +[1 0 0 1 0 0] Tm +0 0 Td +224.938 411.91 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 411.91] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -411.91] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 411.91 Td +/F130_0 9.9626 Tf +(18) 9.9626 Tj +[1 0 0 1 516.09 411.91] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -399.954] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 399.954 Td +/F130_0 9.9626 Tf +(3.4.) 14.9439 Tj +-310 TJm +(High-le) 30.4357 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(interf) 21.579 Tj +10 TJm +(ace) 13.2702 Tj +[1 0 0 1 169.483 399.954] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -174.465 -399.954] cm +[1 0 0 1 0 0] Tm +0 0 Td +184.216 399.954 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 399.954] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -399.954] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 399.954 Td +/F130_0 9.9626 Tf +(18) 9.9626 Tj +[1 0 0 1 516.09 399.954] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -387.999] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 387.999 Td +/F130_0 9.9626 Tf +(3.4.1.) 22.4159 Tj +[1 0 0 1 97.5043 387.999] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -387.999] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 387.999 Td +/F134_0 9.9626 Tf +(BZ2_bzReadOpen) 83.6858 Tj +[1 0 0 1 181.19 387.999] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -186.172 -387.999] cm +[1 0 0 1 0 0] Tm +0 0 Td +194.497 387.999 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 387.999] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -387.999] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 387.999 Td +/F130_0 9.9626 Tf +(19) 9.9626 Tj +[1 0 0 1 516.09 387.999] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -376.044] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 376.044 Td +/F130_0 9.9626 Tf +(3.4.2.) 22.4159 Tj +[1 0 0 1 97.5043 376.044] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -376.044] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 376.044 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 157.28 376.044] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -162.261 -376.044] cm +[1 0 0 1 0 0] Tm +0 0 Td +171.472 376.044 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 376.044] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -376.044] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 376.044 Td +/F130_0 9.9626 Tf +(20) 9.9626 Tj +[1 0 0 1 516.09 376.044] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.6452] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -364.089] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 364.089 Td +/F130_0 9.9626 Tf +(3.4.3.) 22.4159 Tj +[1 0 0 1 97.5043 364.089] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -364.089] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 364.089 Td +/F134_0 9.9626 Tf +(BZ2_bzReadGetUnused) 113.574 Tj +[1 0 0 1 211.078 364.089] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -216.06 -364.089] cm +[1 0 0 1 0 0] Tm +0 0 Td +224.938 364.089 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 364.089] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -364.089] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 364.089 Td +/F130_0 9.9626 Tf +(21) 9.9626 Tj +[1 0 0 1 516.09 364.089] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.6452] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -352.134] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 352.134 Td +/F130_0 9.9626 Tf +(3.4.4.) 22.4159 Tj +[1 0 0 1 97.5043 352.134] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -352.134] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 352.134 Td +/F134_0 9.9626 Tf +(BZ2_bzReadClose) 89.6634 Tj +[1 0 0 1 187.168 352.134] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -192.149 -352.134] cm +[1 0 0 1 0 0] Tm +0 0 Td +201.914 352.134 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 352.134] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -352.134] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 352.134 Td +/F130_0 9.9626 Tf +(22) 9.9626 Tj +[1 0 0 1 516.09 352.134] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.6451] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -340.179] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 340.179 Td +/F130_0 9.9626 Tf +(3.4.5.) 22.4159 Tj +[1 0 0 1 97.5043 340.179] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -340.179] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 340.179 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteOpen) 89.6634 Tj +[1 0 0 1 187.168 340.179] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -192.149 -340.179] cm +[1 0 0 1 0 0] Tm +0 0 Td +201.914 340.179 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 340.179] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -340.179] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 340.179 Td +/F130_0 9.9626 Tf +(22) 9.9626 Tj +[1 0 0 1 516.09 340.179] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -328.223] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 328.223 Td +/F130_0 9.9626 Tf +(3.4.6.) 22.4159 Tj +[1 0 0 1 97.5043 328.223] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -328.223] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 328.223 Td +/F134_0 9.9626 Tf +(BZ2_bzWrite) 65.7532 Tj +[1 0 0 1 163.258 328.223] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -168.239 -328.223] cm +[1 0 0 1 0 0] Tm +0 0 Td +176.675 328.223 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 328.223] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -328.223] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 328.223 Td +/F130_0 9.9626 Tf +(23) 9.9626 Tj +[1 0 0 1 516.09 328.223] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.6452] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -316.268] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 316.268 Td +/F130_0 9.9626 Tf +(3.4.7.) 22.4159 Tj +[1 0 0 1 97.5043 316.268] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -316.268] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 316.268 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteClose) 95.641 Tj +[1 0 0 1 193.146 316.268] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -198.127 -316.268] cm +[1 0 0 1 0 0] Tm +0 0 Td +207.116 316.268 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 316.268] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -316.268] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 316.268 Td +/F130_0 9.9626 Tf +(23) 9.9626 Tj +[1 0 0 1 516.09 316.268] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.6451] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -304.313] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 304.313 Td +/F130_0 9.9626 Tf +(3.4.8.) 22.4159 Tj +-310 TJm +(Handling) 37.0808 Tj +-250 TJm +(embedded) 40.9463 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(streams) 30.4357 Tj +[1 0 0 1 279.56 304.313] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -284.541 -304.313] cm +[1 0 0 1 0 0] Tm +0 0 Td +294.601 304.313 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 304.313] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -304.313] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 304.313 Td +/F130_0 9.9626 Tf +(24) 9.9626 Tj +[1 0 0 1 516.09 304.313] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -292.358] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 292.358 Td +/F130_0 9.9626 Tf +(3.4.9.) 22.4159 Tj +-310 TJm +(Standard) 35.417 Tj +-250 TJm +(\002le-reading/writing) 77.4791 Tj +-250 TJm +(code) 18.8094 Tj +[1 0 0 1 234.19 292.358] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -239.172 -292.358] cm +[1 0 0 1 0 0] Tm +0 0 Td +247.564 292.358 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 292.358] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -292.358] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 292.358 Td +/F130_0 9.9626 Tf +(25) 9.9626 Tj +[1 0 0 1 516.09 292.358] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -280.403] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 280.403 Td +/F130_0 9.9626 Tf +(3.5.) 14.9439 Tj +-310 TJm +(Utility) 26.0223 Tj +-250 TJm +(functions) 37.0808 Tj +[1 0 0 1 155.625 280.403] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -160.607 -280.403] cm +[1 0 0 1 0 0] Tm +0 0 Td +170.645 280.403 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 280.403] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -280.403] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 280.403 Td +/F130_0 9.9626 Tf +(26) 9.9626 Tj +[1 0 0 1 516.09 280.403] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -268.448] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 268.448 Td +/F130_0 9.9626 Tf +(3.5.1.) 22.4159 Tj +[1 0 0 1 97.5043 268.448] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -268.448] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 268.448 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffCompress) 143.461 Tj +[1 0 0 1 240.966 268.448] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -245.948 -268.448] cm +[1 0 0 1 0 0] Tm +0 0 Td +255.38 268.448 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 268.448] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -268.448] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 268.448 Td +/F130_0 9.9626 Tf +(26) 9.9626 Tj +[1 0 0 1 516.09 268.448] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -256.492] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 256.492 Td +/F130_0 9.9626 Tf +(3.5.2.) 22.4159 Tj +[1 0 0 1 97.5043 256.492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -256.492] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 256.492 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffDecompress) 155.417 Tj +[1 0 0 1 252.922 256.492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -257.903 -256.492] cm +[1 0 0 1 0 0] Tm +0 0 Td +267.999 256.492 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 256.492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -256.492] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 256.492 Td +/F130_0 9.9626 Tf +(27) 9.9626 Tj +[1 0 0 1 516.09 256.492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -244.537] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 244.537 Td +/F130_0 9.9626 Tf +(3.6.) 14.9439 Tj +[1 0 0 1 90.0324 244.537] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90.0324 -244.537] cm +[1 0 0 1 0 0] Tm +0 0 Td +90.0324 244.537 Td +/F134_0 9.9626 Tf +(zlib) 23.9102 Tj +[1 0 0 1 113.943 244.537] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -113.943 -244.537] cm +[1 0 0 1 0 0] Tm +0 0 Td +116.433 244.537 Td +/F130_0 9.9626 Tf +(compatibility) 53.1405 Tj +-250 TJm +(functions) 37.0808 Tj +[1 0 0 1 209.144 244.537] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -214.126 -244.537] cm +[1 0 0 1 0 0] Tm +0 0 Td +223.971 244.537 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 244.537] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -244.537] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 244.537 Td +/F130_0 9.9626 Tf +(28) 9.9626 Tj +[1 0 0 1 516.09 244.537] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -232.582] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 232.582 Td +/F130_0 9.9626 Tf +(3.7.) 14.9439 Tj +-310 TJm +(Using) 23.8007 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(library) 26.5603 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(a) 4.42339 Tj +[1 0 0 1 177.195 232.582] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -177.195 -232.582] cm +[1 0 0 1 0 0] Tm +0 0 Td +177.195 232.582 Td +/F134_0 9.9626 Tf +(stdio) 29.8878 Tj +[1 0 0 1 207.083 232.582] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -207.083 -232.582] cm +[1 0 0 1 0 0] Tm +0 0 Td +207.083 232.582 Td +/F130_0 9.9626 Tf +(-free) 18.7994 Tj +-250 TJm +(en) 9.40469 Tj +40 TJm +(vironment) 40.9562 Tj +[1 0 0 1 278.335 232.582] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -283.316 -232.582] cm +[1 0 0 1 0 0] Tm +0 0 Td +291.775 232.582 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 232.582] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -232.582] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 232.582 Td +/F130_0 9.9626 Tf +(28) 9.9626 Tj +[1 0 0 1 516.09 232.582] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -220.627] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 220.627 Td +/F130_0 9.9626 Tf +(3.7.1.) 22.4159 Tj +-310 TJm +(Getting) 29.8878 Tj +-250 TJm +(rid) 11.0684 Tj +-250 TJm +(of) 8.29885 Tj +[1 0 0 1 154.231 220.627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -154.231 -220.627] cm +[1 0 0 1 0 0] Tm +0 0 Td +154.231 220.627 Td +/F134_0 9.9626 Tf +(stdio) 29.8878 Tj +[1 0 0 1 184.119 220.627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -189.1 -220.627] cm +[1 0 0 1 0 0] Tm +0 0 Td +198.175 220.627 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 220.627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -220.627] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 220.627 Td +/F130_0 9.9626 Tf +(29) 9.9626 Tj +[1 0 0 1 516.09 220.627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -208.672] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 208.672 Td +/F130_0 9.9626 Tf +(3.7.2.) 22.4159 Tj +-310 TJm +(Critical) 29.8878 Tj +-250 TJm +(error) 19.3573 Tj +-250 TJm +(handling) 34.8691 Tj +[1 0 0 1 186.599 208.672] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -191.58 -208.672] cm +[1 0 0 1 0 0] Tm +0 0 Td +201.629 208.672 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 208.672] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -208.672] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 208.672 Td +/F130_0 9.9626 Tf +(29) 9.9626 Tj +[1 0 0 1 516.09 208.672] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -196.717] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 196.717 Td +/F130_0 9.9626 Tf +(3.8.) 14.9439 Tj +-310 TJm +(Making) 30.9936 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(W) 9.40469 Tj +40 TJm +(indo) 17.7135 Tj +25 TJm +(ws) 11.0684 Tj +-250 TJm +(DLL) 19.3673 Tj +[1 0 0 1 189.828 196.717] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -194.809 -196.717] cm +[1 0 0 1 0 0] Tm +0 0 Td +203.243 196.717 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 196.717] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -196.717] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 196.717 Td +/F130_0 9.9626 Tf +(29) 9.9626 Tj +[1 0 0 1 516.09 196.717] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1569] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -184.761] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 184.761 Td +/F130_0 9.9626 Tf +(4.) 7.47195 Tj +-310 TJm +(Miscellanea) 48.1393 Tj +[1 0 0 1 130.699 184.761] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -135.68 -184.761] cm +[1 0 0 1 0 0] Tm +0 0 Td +144.898 184.761 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 184.761] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -184.761] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 184.761 Td +/F130_0 9.9626 Tf +(31) 9.9626 Tj +[1 0 0 1 516.09 184.761] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8557] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -172.806] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 172.806 Td +/F130_0 9.9626 Tf +(4.1.) 14.9439 Tj +-310 TJm +(Limitations) 45.9475 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(\002le) 12.7322 Tj +-250 TJm +(format) 26.5603 Tj +[1 0 0 1 255.231 172.806] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -260.212 -172.806] cm +[1 0 0 1 0 0] Tm +0 0 Td +269.154 172.806 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 172.806] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -172.806] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 172.806 Td +/F130_0 9.9626 Tf +(31) 9.9626 Tj +[1 0 0 1 516.09 172.806] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -160.851] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 160.851 Td +/F130_0 9.9626 Tf +(4.2.) 14.9439 Tj +-310 TJm +(Portability) 42.0721 Tj +-250 TJm +(issues) 23.8007 Tj +[1 0 0 1 158.395 160.851] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -163.376 -160.851] cm +[1 0 0 1 0 0] Tm +0 0 Td +172.03 160.851 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 160.851] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -160.851] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 160.851 Td +/F130_0 9.9626 Tf +(32) 9.9626 Tj +[1 0 0 1 516.09 160.851] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1569] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -148.896] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 148.896 Td +/F130_0 9.9626 Tf +(4.3.) 14.9439 Tj +-310 TJm +(Reporting) 39.8504 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ugs) 13.8381 Tj +[1 0 0 1 150.993 148.896] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -155.975 -148.896] cm +[1 0 0 1 0 0] Tm +0 0 Td +166.115 148.896 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 148.896] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -148.896] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 148.896 Td +/F130_0 9.9626 Tf +(32) 9.9626 Tj +[1 0 0 1 516.09 148.896] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -136.941] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 136.941 Td +/F130_0 9.9626 Tf +(4.4.) 14.9439 Tj +-310 TJm +(Did) 14.9439 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(get) 12.1743 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(right) 18.8194 Tj +-250 TJm +(package?) 37.0609 Tj +[1 0 0 1 212.602 136.941] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 3.0884 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 3.0884 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -218.778 -136.941] cm +[1 0 0 1 0 0] Tm +0 0 Td +229.109 136.941 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 136.941] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -136.941] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 136.941 Td +/F130_0 9.9626 Tf +(33) 9.9626 Tj +[1 0 0 1 516.09 136.941] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -124.986] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 124.986 Td +/F130_0 9.9626 Tf +(4.5.) 14.9439 Tj +-310 TJm +(Further) 29.3299 Tj +-250 TJm +(Reading) 33.2053 Tj +[1 0 0 1 155.058 124.986] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -160.039 -124.986] cm +[1 0 0 1 0 0] Tm +0 0 Td +170.361 124.986 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 124.986] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -124.986] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 124.986 Td +/F130_0 9.9626 Tf +(34) 9.9626 Tj +[1 0 0 1 516.09 124.986] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1569] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -62.0143] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 41.3997 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -494.668 -50.8518] cm +[1 0 0 1 0 0] Tm +0 0 Td +536.068 50.8518 Td +/F130_0 9.9626 Tf +(iii) 8.30881 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 4 4 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 140.398 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -140.398 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -13.9477] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 701.916 Td +/F122_0 24.7902 Tf +(1.) 20.675 Tj +-278 TJm +(Intr) 39.937 Tj +20 TJm +(oduction) 104.664 Tj +[1 0 0 1 72 701.606] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -691.643] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 679.998 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 101.888 679.998] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -101.888 -679.998] cm +[1 0 0 1 0 0] Tm +0 0 Td +104.507 679.998 Td +/F130_0 9.9626 Tf +(compresses) 45.9276 Tj +-263 TJm +(\002les) 16.6077 Tj +-263 TJm +(using) 21.589 Tj +-263 TJm +(the) 12.1743 Tj +-262 TJm +(Burro) 23.2427 Tj +25 TJm +(ws-Wheeler) 48.1293 Tj +-263 TJm +(block-sorting) 53.1305 Tj +-263 TJm +(te) 7.193 Tj +15 TJm +(xt) 7.7509 Tj +-263 TJm +(compression) 50.3609 Tj +-263 TJm +(algorithm,) 41.2352 Tj +-266 TJm +(and) 14.386 Tj +-263 TJm +(Huf) 15.4918 Tj +25 TJm +(fman) 20.4731 Tj +-263 TJm +(coding.) 29.6088 Tj +72 668.043 Td +(Compression) 52.5826 Tj +-203 TJm +(is) 6.64505 Tj +-204 TJm +(generally) 37.0708 Tj +-203 TJm +(considerably) 50.9089 Tj +-203 TJm +(better) 22.6848 Tj +-204 TJm +(t) 2.7696 Tj +1 TJm +(han) 14.386 Tj +-204 TJm +(that) 14.9439 Tj +-203 TJm +(achie) 21.0211 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ed) 9.40469 Tj +-203 TJm +(by) 9.9626 Tj +-204 TJm +(more) 20.4731 Tj +-203 TJm +(con) 14.386 Tj +40 TJm +(v) 4.9813 Tj +15 TJm +(entional) 32.0995 Tj +-203 TJm +(LZ77/LZ78-based) 73.0458 Tj +-204 TJm +(compressors,) 52.2937 Tj +72 656.087 Td +(and) 14.386 Tj +-250 TJm +(approaches) 44.8118 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(performance) 50.341 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(PPM) 19.9352 Tj +-250 TJm +(f) 3.31755 Tj +10 TJm +(amily) 22.6948 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(statistical) 37.6387 Tj +-250 TJm +(compressors.) 52.2937 Tj +[1 0 0 1 72 653.931] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -643.968] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 634.17 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 101.888 634.17] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -101.888 -634.17] cm +[1 0 0 1 0 0] Tm +0 0 Td +105.073 634.17 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-320 TJm +(b) 4.9813 Tj +20 TJm +(uilt) 13.2901 Tj +-319 TJm +(on) 9.9626 Tj +-320 TJm +(top) 12.7322 Tj +-320 TJm +(of) 8.29885 Tj +[1 0 0 1 176.712 634.17] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -176.712 -634.17] cm +[1 0 0 1 0 0] Tm +0 0 Td +176.712 634.17 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 224.533 634.17] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -224.533 -634.17] cm +[1 0 0 1 0 0] Tm +0 0 Td +224.533 634.17 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-337 TJm +(a) 4.42339 Tj +-320 TJm +(\003e) 9.9626 Tj +15 TJm +(xible) 19.9252 Tj +-320 TJm +(library) 26.5603 Tj +-319 TJm +(for) 11.6164 Tj +-320 TJm +(handling) 34.8691 Tj +-320 TJm +(compressed) 47.0334 Tj +-320 TJm +(data) 16.5977 Tj +-319 TJm +(in) 7.7509 Tj +-320 TJm +(the) 12.1743 Tj +[1 0 0 1 449.816 634.17] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -449.816 -634.17] cm +[1 0 0 1 0 0] Tm +0 0 Td +449.816 634.17 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 479.704 634.17] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -479.704 -634.17] cm +[1 0 0 1 0 0] Tm +0 0 Td +482.889 634.17 Td +/F130_0 9.9626 Tf +(format.) 29.0509 Tj +-1039 TJm +(This) 17.7135 Tj +72 622.214 Td +(manual) 29.3299 Tj +-316 TJm +(describes) 37.0708 Tj +-316 TJm +(both) 17.7135 Tj +-317 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-316 TJm +(to) 7.7509 Tj +-316 TJm +(use) 13.2801 Tj +-316 TJm +(the) 12.1743 Tj +-316 TJm +(program) 33.7533 Tj +-316 TJm +(and) 14.386 Tj +-317 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-316 TJm +(to) 7.7509 Tj +-316 TJm +(w) 7.193 Tj +10 TJm +(ork) 13.2801 Tj +-316 TJm +(with) 17.7135 Tj +-316 TJm +(the) 12.1743 Tj +-317 TJm +(library) 26.5603 Tj +-316 TJm +(interf) 21.579 Tj +10 TJm +(ace.) 15.7608 Tj +-1017 TJm +(Most) 20.4831 Tj +-316 TJm +(of) 8.29885 Tj +-316 TJm +(the) 12.1743 Tj +-317 TJm +(manual) 29.3299 Tj +-316 TJm +(is) 6.64505 Tj +72 610.259 Td +(de) 9.40469 Tj +25 TJm +(v) 4.9813 Tj +20 TJm +(oted) 17.1556 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(this) 14.396 Tj +-250 TJm +(library) 26.5603 Tj +65 TJm +(,) 2.49065 Tj +-250 TJm +(not) 12.7322 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(program,) 36.2439 Tj +-250 TJm +(which) 24.3486 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(good) 19.9252 Tj +-250 TJm +(ne) 9.40469 Tj +25 TJm +(ws) 11.0684 Tj +-250 TJm +(if) 6.08715 Tj +-250 TJm +(your) 18.2614 Tj +-250 TJm +(interest) 29.3299 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(only) 17.7135 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(program.) 36.2439 Tj +[1 0 0 1 72 608.102] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -29.7236] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -578.379] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 578.379 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 578.379] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 2.4907 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -86.944 -578.379] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 578.379 Td +/F130_0 9.9626 Tf +(Ho) 12.1743 Tj +25 TJm +(w) 7.193 Tj +-259 TJm +(to) 7.7509 Tj +-260 TJm +(use) 13.2801 Tj +-259 TJm +(bzip2) 22.1369 Tj +[1 0 0 1 156.985 578.379] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -156.985 -578.379] cm +[1 0 0 1 0 0] Tm +0 0 Td +159.57 578.379 Td +/F130_0 9.9626 Tf +([2]) 11.6164 Tj +[1 0 0 1 171.186 578.379] cm +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -171.186 -578.379] cm +[1 0 0 1 0 0] Tm +0 0 Td +173.771 578.379 Td +/F130_0 9.9626 Tf +(describes) 37.0708 Tj +-259 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-260 TJm +(to) 7.7509 Tj +-259 TJm +(use) 13.2801 Tj +[1 0 0 1 259.119 578.379] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -259.119 -578.379] cm +[1 0 0 1 0 0] Tm +0 0 Td +259.119 578.379 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 289.007 578.379] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -289.007 -578.379] cm +[1 0 0 1 0 0] Tm +0 0 Td +289.007 578.379 Td +/F130_0 9.9626 Tf +(;) 2.7696 Tj +-264 TJm +(this) 14.396 Tj +-260 TJm +(is) 6.64505 Tj +-259 TJm +(the) 12.1743 Tj +-260 TJm +(only) 17.7135 Tj +-259 TJm +(part) 15.4918 Tj +-259 TJm +(you) 14.9439 Tj +-260 TJm +(need) 18.8094 Tj +-259 TJm +(to) 7.7509 Tj +-260 TJm +(read) 17.1456 Tj +-259 TJm +(if) 6.08715 Tj +-260 TJm +(you) 14.9439 Tj +-259 TJm +(just) 14.396 Tj +-260 TJm +(w) 7.193 Tj +10 TJm +(ant) 12.1743 Tj +-259 TJm +(to) 7.7509 Tj +-260 TJm +(kno) 14.9439 Tj +25 TJm +(w) 7.193 Tj +86.944 566.424 Td +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(operate) 29.3199 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(program.) 36.2439 Tj +[1 0 0 1 199.302 566.424] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -127.302 -21.9178] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -544.506] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 544.506 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 544.506] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 2.4907 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -86.944 -544.506] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 544.506 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +-250 TJm +(libbzip2) 32.6574 Tj +[1 0 0 1 197.09 544.506] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -197.09 -544.506] cm +[1 0 0 1 0 0] Tm +0 0 Td +199.58 544.506 Td +/F130_0 9.9626 Tf +([8]) 11.6164 Tj +[1 0 0 1 211.197 544.506] cm +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -211.197 -544.506] cm +[1 0 0 1 0 0] Tm +0 0 Td +213.687 544.506 Td +/F130_0 9.9626 Tf +(describes) 37.0708 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(programming) 54.2364 Tj +-250 TJm +(interf) 21.579 Tj +10 TJm +(aces) 17.1456 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(detail,) 24.6275 Tj +-250 TJm +(and) 14.386 Tj +[1 0 0 1 417.501 544.506] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -345.501 -21.9178] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -522.588] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 522.588 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 522.588] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 2.4907 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -86.944 -522.588] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 522.588 Td +/F130_0 9.9626 Tf +(Miscellanea) 48.1393 Tj +[1 0 0 1 135.083 522.588] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -135.083 -522.588] cm +[1 0 0 1 0 0] Tm +0 0 Td +137.573 522.588 Td +/F130_0 9.9626 Tf +([31]) 16.5977 Tj +[1 0 0 1 154.171 522.588] cm +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -154.171 -522.588] cm +[1 0 0 1 0 0] Tm +0 0 Td +156.662 522.588 Td +/F130_0 9.9626 Tf +(records) 29.3199 Tj +-250 TJm +(some) 21.031 Tj +-250 TJm +(miscellaneous) 56.4481 Tj +-250 TJm +(notes) 21.031 Tj +-250 TJm +(which) 24.3486 Tj +-250 TJm +(I) 3.31755 Tj +-250 TJm +(thought) 30.4457 Tj +-250 TJm +(ought) 22.6948 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(recorded) 34.8492 Tj +-250 TJm +(some) 21.031 Tj +25 TJm +(where.) 26.8293 Tj +[1 0 0 1 492.31 522.588] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -420.31 -471.736] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 43.0633 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.332 -50.8518] cm +[1 0 0 1 0 0] Tm +0 0 Td +539.395 50.8518 Td +/F130_0 9.9626 Tf +(1) 4.9813 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 5 5 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 140.398 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -140.398 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -13.9477] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 701.916 Td +/F122_0 24.7902 Tf +(2.) 20.675 Tj +-278 TJm +(Ho) 33.0453 Tj +15 TJm +(w) 19.2868 Tj +-278 TJm +(to) 23.4019 Tj +-278 TJm +(use) 42.7135 Tj +-278 TJm +(bzip2) 63.3638 Tj +[1 0 0 1 72 696.784] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -14.944] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -671.877] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 656.35 Td +/F122_0 17.2154 Tf +(T) 10.5186 Tj +80 TJm +(ab) 20.0904 Tj +10 TJm +(le) 14.3576 Tj +-278 TJm +(of) 16.2513 Tj +-278 TJm +(Contents) 74.5943 Tj +[1 0 0 1 72 647.528] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.7401] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -635.788] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 635.788 Td +/F130_0 9.9626 Tf +(2.1.) 14.9439 Tj +-310 TJm +(N) 7.193 Tj +35 TJm +(AME) 22.1369 Tj +[1 0 0 1 119.014 635.788] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -123.995 -635.788] cm +[1 0 0 1 0 0] Tm +0 0 Td +132.691 635.788 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 635.788] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -635.788] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 635.788 Td +/F130_0 9.9626 Tf +(2) 4.9813 Tj +[1 0 0 1 516.09 635.788] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8556] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -623.832] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 623.832 Td +/F130_0 9.9626 Tf +(2.2.) 14.9439 Tj +-310 TJm +(SYNOPSIS) 47.0534 Tj +[1 0 0 1 137.085 623.832] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -142.067 -623.832] cm +[1 0 0 1 0 0] Tm +0 0 Td +150.582 623.832 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 623.832] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -623.832] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 623.832 Td +/F130_0 9.9626 Tf +(2) 4.9813 Tj +[1 0 0 1 516.09 623.832] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0996] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8556] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -611.877] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 611.877 Td +/F130_0 9.9626 Tf +(2.3.) 14.9439 Tj +-310 TJm +(DESCRIPTION) 64.7569 Tj +[1 0 0 1 154.789 611.877] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -159.77 -611.877] cm +[1 0 0 1 0 0] Tm +0 0 Td +168.29 611.877 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 611.877] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -611.877] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 611.877 Td +/F130_0 9.9626 Tf +(3) 4.9813 Tj +[1 0 0 1 516.09 611.877] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8557] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -599.922] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 599.922 Td +/F130_0 9.9626 Tf +(2.4.) 14.9439 Tj +-310 TJm +(OPTIONS) 42.0621 Tj +[1 0 0 1 132.094 599.922] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -137.076 -599.922] cm +[1 0 0 1 0 0] Tm +0 0 Td +145.873 599.922 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 599.922] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -599.922] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 599.922 Td +/F130_0 9.9626 Tf +(4) 4.9813 Tj +[1 0 0 1 516.09 599.922] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8556] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -587.967] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 587.967 Td +/F130_0 9.9626 Tf +(2.5.) 14.9439 Tj +-310 TJm +(MEMOR) 37.6387 Tj +65 TJm +(Y) 7.193 Tj +-250 TJm +(MAN) 23.2427 Tj +35 TJm +(A) 7.193 Tj +40 TJm +(GEMENT) 41.5042 Tj +[1 0 0 1 207.9 587.967] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -212.881 -587.967] cm +[1 0 0 1 0 0] Tm +0 0 Td +221.412 587.967 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 587.967] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -587.967] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 587.967 Td +/F130_0 9.9626 Tf +(5) 4.9813 Tj +[1 0 0 1 516.09 587.967] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0996] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8556] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -576.012] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 576.012 Td +/F130_0 9.9626 Tf +(2.6.) 14.9439 Tj +-310 TJm +(RECO) 26.5703 Tj +50 TJm +(VERING) 37.6287 Tj +-250 TJm +(D) 7.193 Tj +40 TJm +(A) 7.193 Tj +111 TJm +(T) 6.08715 Tj +93 TJm +(A) 7.193 Tj +-250 TJm +(FR) 12.1843 Tj +40 TJm +(OM) 16.0497 Tj +-250 TJm +(D) 7.193 Tj +40 TJm +(AMA) 23.2427 Tj +40 TJm +(GED) 20.4731 Tj +-250 TJm +(FILES) 26.5703 Tj +[1 0 0 1 293.449 576.012] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -298.43 -576.012] cm +[1 0 0 1 0 0] Tm +0 0 Td +308.464 576.012 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 576.012] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -576.012] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 576.012 Td +/F130_0 9.9626 Tf +(6) 4.9813 Tj +[1 0 0 1 516.09 576.012] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8557] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -564.056] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 564.056 Td +/F130_0 9.9626 Tf +(2.7.) 14.9439 Tj +-310 TJm +(PERFORMANCE) 73.6236 Tj +-250 TJm +(NO) 14.386 Tj +40 TJm +(TES) 17.7135 Tj +[1 0 0 1 197.847 564.056] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -202.829 -564.056] cm +[1 0 0 1 0 0] Tm +0 0 Td +211.958 564.056 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 564.056] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -564.056] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 564.056 Td +/F130_0 9.9626 Tf +(6) 4.9813 Tj +[1 0 0 1 516.09 564.056] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8556] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -552.101] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 552.101 Td +/F130_0 9.9626 Tf +(2.8.) 14.9439 Tj +-310 TJm +(CA) 13.8381 Tj +135 TJm +(VEA) 20.4731 Tj +111 TJm +(TS) 11.6264 Tj +[1 0 0 1 133.519 552.101] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -138.5 -552.101] cm +[1 0 0 1 0 0] Tm +0 0 Td +148.799 552.101 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 552.101] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -552.101] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 552.101 Td +/F130_0 9.9626 Tf +(7) 4.9813 Tj +[1 0 0 1 516.09 552.101] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0996] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8556] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -540.146] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 540.146 Td +/F130_0 9.9626 Tf +(2.9.) 14.9439 Tj +-310 TJm +(A) 7.193 Tj +55 TJm +(UTHOR) 34.3112 Tj +[1 0 0 1 130.989 540.146] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -135.97 -540.146] cm +[1 0 0 1 0 0] Tm +0 0 Td +145.32 540.146 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 540.146] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -540.146] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 540.146 Td +/F130_0 9.9626 Tf +(7) 4.9813 Tj +[1 0 0 1 516.09 540.146] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.2191] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -520.002] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 508.266 Td +/F130_0 9.9626 Tf +(This) 17.7135 Tj +-250 TJm +(chapter) 29.3199 Tj +-250 TJm +(contains) 33.2053 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(cop) 14.386 Tj +10 TJm +(y) 4.9813 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +[1 0 0 1 213.837 508.266] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -213.837 -508.266] cm +[1 0 0 1 0 0] Tm +0 0 Td +213.837 508.266 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 243.725 508.266] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -243.725 -508.266] cm +[1 0 0 1 0 0] Tm +0 0 Td +246.215 508.266 Td +/F130_0 9.9626 Tf +(man) 17.1556 Tj +-250 TJm +(page,) 21.3 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(nothing) 30.4457 Tj +-250 TJm +(else.) 17.9825 Tj +[1 0 0 1 72 506.109] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -496.146] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 473.513 Td +/F122_0 20.6585 Tf +(2.1.) 34.4584 Tj +-278 TJm +(NAME) 60.8186 Tj +[1 0 0 1 72 473.513] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -31.8804] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -441.632] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 441.632 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 441.632] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -441.632] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 441.632 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 116.832 441.632] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -116.832 -441.632] cm +[1 0 0 1 0 0] Tm +0 0 Td +116.832 441.632 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 121.813 441.632] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -121.813 -441.632] cm +[1 0 0 1 0 0] Tm +0 0 Td +121.813 441.632 Td +/F134_0 9.9626 Tf +(bunzip2) 41.8429 Tj +[1 0 0 1 163.656 441.632] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -163.656 -441.632] cm +[1 0 0 1 0 0] Tm +0 0 Td +166.147 441.632 Td +/F130_0 9.9626 Tf +(-) 3.31755 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(block-sorting) 53.1305 Tj +-250 TJm +(\002le) 12.7322 Tj +-250 TJm +(compressor) 45.9276 Tj +40 TJm +(,) 2.49065 Tj +-250 TJm +(v1.0.4) 24.9065 Tj +[1 0 0 1 325.129 441.632] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -253.129 -21.9179] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -419.715] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 419.715 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 419.715] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -419.715] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 419.715 Td +/F134_0 9.9626 Tf +(bzcat) 29.8878 Tj +[1 0 0 1 116.832 419.715] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -116.832 -419.715] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.322 419.715 Td +/F130_0 9.9626 Tf +(-) 3.31755 Tj +-250 TJm +(decompresses) 55.3323 Tj +-250 TJm +(\002les) 16.6077 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(stdout) 24.3586 Tj +[1 0 0 1 236.651 419.715] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -164.651 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -397.797] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 397.797 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 397.797] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -397.797] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 397.797 Td +/F134_0 9.9626 Tf +(bzip2recover) 71.7307 Tj +[1 0 0 1 158.675 397.797] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -158.675 -397.797] cm +[1 0 0 1 0 0] Tm +0 0 Td +161.166 397.797 Td +/F130_0 9.9626 Tf +(-) 3.31755 Tj +-250 TJm +(reco) 17.1456 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(ers) 11.6164 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(from) 19.3673 Tj +-250 TJm +(damaged) 35.965 Tj +-250 TJm +(bzip2) 22.1369 Tj +-250 TJm +(\002les) 16.6077 Tj +[1 0 0 1 323.545 397.797] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -251.545 -12.1195] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -375.715] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 353.081 Td +/F122_0 20.6585 Tf +(2.2.) 34.4584 Tj +-278 TJm +(SYNOPSIS) 105.627 Tj +[1 0 0 1 72 352.823] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -31.6223] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -321.201] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 321.201 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 321.201] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -321.201] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 321.201 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 116.832 321.201] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -116.832 -321.201] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.322 321.201 Td +/F130_0 9.9626 Tf +([) 3.31755 Tj +-250 TJm +(-cdfkqstvzVL123456789) 100.164 Tj +-250 TJm +(]) 3.31755 Tj +-250 TJm +([) 3.31755 Tj +-250 TJm +(\002lenames) 38.1866 Tj +-250 TJm +(...) 7.47195 Tj +-620 TJm +(]) 3.31755 Tj +[1 0 0 1 297.045 321.201] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -225.045 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -299.283] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 299.283 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 299.283] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -299.283] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 299.283 Td +/F134_0 9.9626 Tf +(bunzip2) 41.8429 Tj +[1 0 0 1 128.787 299.283] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -128.787 -299.283] cm +[1 0 0 1 0 0] Tm +0 0 Td +131.278 299.283 Td +/F130_0 9.9626 Tf +([) 3.31755 Tj +-250 TJm +(-fkvsVL) 33.7533 Tj +-250 TJm +(]) 3.31755 Tj +-250 TJm +([) 3.31755 Tj +-250 TJm +(\002lenames) 38.1866 Tj +-250 TJm +(...) 7.47195 Tj +-620 TJm +(]) 3.31755 Tj +[1 0 0 1 242.589 299.283] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -170.589 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -277.365] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 277.365 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 277.365] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -277.365] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 277.365 Td +/F134_0 9.9626 Tf +(bzcat) 29.8878 Tj +[1 0 0 1 116.832 277.365] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -116.832 -277.365] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.322 277.365 Td +/F130_0 9.9626 Tf +([) 3.31755 Tj +-250 TJm +(-s) 7.193 Tj +-250 TJm +(]) 3.31755 Tj +-250 TJm +([) 3.31755 Tj +-250 TJm +(\002lenames) 38.1866 Tj +-250 TJm +(...) 7.47195 Tj +-620 TJm +(]) 3.31755 Tj +[1 0 0 1 204.074 277.365] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -132.074 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -255.447] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 255.447 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 255.447] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -255.447] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 255.447 Td +/F134_0 9.9626 Tf +(bzip2recover) 71.7307 Tj +[1 0 0 1 158.675 255.447] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -158.675 -255.447] cm +[1 0 0 1 0 0] Tm +0 0 Td +161.166 255.447 Td +/F130_0 9.9626 Tf +(\002lename) 34.3112 Tj +[1 0 0 1 195.476 255.447] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -123.477 -204.596] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 43.0633 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.332 -50.8519] cm +[1 0 0 1 0 0] Tm +0 0 Td +539.395 50.8519 Td +/F130_0 9.9626 Tf +(2) 4.9813 Tj +[1 0 0 1 453.269 50.8519] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 6 6 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 105.519 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -371.59 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +477.109 749.245 Td +/F130_0 9.9626 Tf +(Ho) 12.1743 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(bzip2) 22.1369 Tj +[1 0 0 1 266.071 747.089] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 704.93 Td +/F122_0 20.6585 Tf +(2.3.) 34.4584 Tj +-278 TJm +(DESCRIPTION) 141.18 Tj +[1 0 0 1 72 704.672] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -694.709] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 683.012 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 101.888 683.012] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -101.888 -683.012] cm +[1 0 0 1 0 0] Tm +0 0 Td +104.56 683.012 Td +/F130_0 9.9626 Tf +(compresses) 45.9276 Tj +-268 TJm +(\002les) 16.6077 Tj +-268 TJm +(using) 21.589 Tj +-268 TJm +(the) 12.1743 Tj +-269 TJm +(Burro) 23.2427 Tj +25 TJm +(ws-Wheeler) 48.1293 Tj +-268 TJm +(block) 22.1369 Tj +-268 TJm +(sorting) 27.6761 Tj +-268 TJm +(te) 7.193 Tj +15 TJm +(xt) 7.7509 Tj +-268 TJm +(compression) 50.3609 Tj +-268 TJm +(algorithm,) 41.2352 Tj +-273 TJm +(and) 14.386 Tj +-268 TJm +(Huf) 15.4918 Tj +25 TJm +(fman) 20.4731 Tj +-269 TJm +(c) 4.42339 Tj +1 TJm +(od) 9.9626 Tj +-1 TJm +(i) 2.7696 Tj +1 TJm +(ng.) 12.4533 Tj +72 671.057 Td +(Compression) 52.5826 Tj +-203 TJm +(is) 6.64505 Tj +-204 TJm +(generally) 37.0708 Tj +-203 TJm +(considerably) 50.9089 Tj +-203 TJm +(better) 22.6848 Tj +-204 TJm +(t) 2.7696 Tj +1 TJm +(han) 14.386 Tj +-204 TJm +(that) 14.9439 Tj +-203 TJm +(achie) 21.0211 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ed) 9.40469 Tj +-203 TJm +(by) 9.9626 Tj +-204 TJm +(more) 20.4731 Tj +-203 TJm +(con) 14.386 Tj +40 TJm +(v) 4.9813 Tj +15 TJm +(entional) 32.0995 Tj +-203 TJm +(LZ77/LZ78-based) 73.0458 Tj +-204 TJm +(compressors,) 52.2937 Tj +72 659.101 Td +(and) 14.386 Tj +-250 TJm +(approaches) 44.8118 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(performance) 50.341 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(PPM) 19.9352 Tj +-250 TJm +(f) 3.31755 Tj +10 TJm +(amily) 22.6948 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(statistical) 37.6387 Tj +-250 TJm +(compressors.) 52.2937 Tj +[1 0 0 1 72 656.945] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -646.982] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 637.184 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-250 TJm +(command-line) 57.5539 Tj +-250 TJm +(options) 29.3399 Tj +-250 TJm +(are) 12.1643 Tj +-250 TJm +(deliberately) 47.0334 Tj +-250 TJm +(v) 4.9813 Tj +15 TJm +(ery) 12.7222 Tj +-250 TJm +(similar) 27.6761 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(those) 21.031 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(GNU) 21.579 Tj +[1 0 0 1 364.869 637.184] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -364.869 -637.184] cm +[1 0 0 1 0 0] Tm +0 0 Td +364.869 637.184 Td +/F134_0 9.9626 Tf +(gzip) 23.9102 Tj +[1 0 0 1 388.779 637.184] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -388.779 -637.184] cm +[1 0 0 1 0 0] Tm +0 0 Td +388.779 637.184 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +15 TJm +(y) 4.9813 Tj +-250 TJm +(are) 12.1643 Tj +-250 TJm +(not) 12.7322 Tj +-250 TJm +(identical.) 36.8018 Tj +[1 0 0 1 72 635.027] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -625.064] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 615.266 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 101.888 615.266] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -101.888 -615.266] cm +[1 0 0 1 0 0] Tm +0 0 Td +105.175 615.266 Td +/F130_0 9.9626 Tf +(e) 4.42339 Tj +15 TJm +(xpects) 25.4544 Tj +-330 TJm +(a) 4.42339 Tj +-330 TJm +(list) 12.1843 Tj +-330 TJm +(of) 8.29885 Tj +-330 TJm +(\002le) 12.7322 Tj +-329 TJm +(names) 25.4544 Tj +-330 TJm +(to) 7.7509 Tj +-330 TJm +(accompan) 40.3884 Tj +15 TJm +(y) 4.9813 Tj +-330 TJm +(the) 12.1743 Tj +-330 TJm +(command-line) 57.5539 Tj +-330 TJm +(\003ags.) 21.31 Tj +-1099 TJm +(Each) 19.9152 Tj +-330 TJm +(\002le) 12.7322 Tj +-330 TJm +(is) 6.64505 Tj +-330 TJm +(replaced) 33.7433 Tj +-330 TJm +(by) 9.9626 Tj +-330 TJm +(a) 4.42339 Tj +-330 TJm +(compressed) 47.0334 Tj +72 603.311 Td +(v) 4.9813 Tj +15 TJm +(ersion) 24.3486 Tj +-349 TJm +(of) 8.29885 Tj +-348 TJm +(itself,) 22.4159 Tj +-373 TJm +(with) 17.7135 Tj +-349 TJm +(the) 12.1743 Tj +-349 TJm +(name) 21.579 Tj +[1 0 0 1 204.444 603.311] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -204.444 -603.311] cm +[1 0 0 1 0 0] Tm +0 0 Td +204.444 603.311 Td +/F134_0 9.9626 Tf +(original_name.bz2) 101.619 Tj +[1 0 0 1 306.063 603.311] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -306.063 -603.311] cm +[1 0 0 1 0 0] Tm +0 0 Td +306.063 603.311 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-1212 TJm +(Each) 19.9152 Tj +-348 TJm +(compressed) 47.0334 Tj +-349 TJm +(\002le) 12.7322 Tj +-348 TJm +(has) 13.2801 Tj +-349 TJm +(the) 12.1743 Tj +-348 TJm +(same) 20.4731 Tj +-349 TJm +(modi\002cation) 50.3709 Tj +-349 TJm +(date,) 19.0883 Tj +72 591.356 Td +(permissions,) 50.092 Tj +-344 TJm +(and,) 16.8766 Tj +-344 TJm +(when) 21.579 Tj +-325 TJm +(possible,) 35.1481 Tj +-344 TJm +(o) 4.9813 Tj +25 TJm +(wnership) 36.5229 Tj +-325 TJm +(as) 8.29885 Tj +-325 TJm +(the) 12.1743 Tj +-326 TJm +(corresponding) 56.996 Tj +-325 TJm +(original,) 33.4843 Tj +-344 TJm +(so) 8.85675 Tj +-325 TJm +(that) 14.9439 Tj +-325 TJm +(these) 20.4731 Tj +-325 TJm +(properties) 39.8404 Tj +-325 TJm +(can) 13.8281 Tj +-326 TJm +(be) 9.40469 Tj +-325 TJm +(correctly) 35.4071 Tj +72 579.4 Td +(restored) 32.0895 Tj +-308 TJm +(at) 7.193 Tj +-308 TJm +(decompression) 59.7656 Tj +-307 TJm +(time.) 20.2042 Tj +-484 TJm +(File) 15.5018 Tj +-308 TJm +(name) 21.579 Tj +-308 TJm +(handling) 34.8691 Tj +-308 TJm +(is) 6.64505 Tj +-307 TJm +(nai) 12.1743 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-308 TJm +(in) 7.7509 Tj +-308 TJm +(the) 12.1743 Tj +-308 TJm +(sense) 21.579 Tj +-308 TJm +(that) 14.9439 Tj +-308 TJm +(there) 19.9152 Tj +-307 TJm +(is) 6.64505 Tj +-308 TJm +(no) 9.9626 Tj +-308 TJm +(mechanism) 45.3796 Tj +-308 TJm +(for) 11.6164 Tj +-308 TJm +(preserving) 42.0521 Tj +72 567.445 Td +(original) 30.9936 Tj +-334 TJm +(\002le) 12.7322 Tj +-333 TJm +(names,) 27.9451 Tj +-355 TJm +(permissions,) 50.092 Tj +-355 TJm +(o) 4.9813 Tj +25 TJm +(wnerships) 40.3983 Tj +-333 TJm +(or) 8.29885 Tj +-334 TJm +(dates) 20.4731 Tj +-334 TJm +(in) 7.7509 Tj +-333 TJm +(\002lesystems) 44.2838 Tj +-334 TJm +(which) 24.3486 Tj +-334 TJm +(lack) 16.5977 Tj +-333 TJm +(these) 20.4731 Tj +-334 TJm +(concepts,) 37.3498 Tj +-355 TJm +(or) 8.29885 Tj +-333 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-334 TJm +(serious) 28.224 Tj +-334 TJm +(\002le) 12.7322 Tj +72 555.49 Td +(name) 21.579 Tj +-250 TJm +(length) 24.9065 Tj +-250 TJm +(restrictions,) 46.7644 Tj +-250 TJm +(such) 18.2614 Tj +-250 TJm +(as) 8.29885 Tj +-250 TJm +(MS-DOS.) 40.1294 Tj +[1 0 0 1 72 553.333] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -543.371] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 533.572 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 101.888 533.572] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -101.888 -533.572] cm +[1 0 0 1 0 0] Tm +0 0 Td +104.379 533.572 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 121.255 533.572] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -121.255 -533.572] cm +[1 0 0 1 0 0] Tm +0 0 Td +121.255 533.572 Td +/F134_0 9.9626 Tf +(bunzip2) 41.8429 Tj +[1 0 0 1 163.098 533.572] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -163.098 -533.572] cm +[1 0 0 1 0 0] Tm +0 0 Td +165.589 533.572 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-250 TJm +(by) 9.9626 Tj +-250 TJm +(def) 12.7222 Tj +10 TJm +(ault) 14.9439 Tj +-250 TJm +(not) 12.7322 Tj +-250 TJm +(o) 4.9813 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(erwrite) 28.2141 Tj +-250 TJm +(e) 4.42339 Tj +15 TJm +(xisting) 27.1282 Tj +-250 TJm +(\002les.) 19.0983 Tj +-620 TJm +(If) 6.63509 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ant) 12.1743 Tj +-250 TJm +(this) 14.396 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(happen,) 31.2626 Tj +-250 TJm +(specify) 28.772 Tj +-250 TJm +(the) 12.1743 Tj +[1 0 0 1 495.977 533.572] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -495.977 -533.572] cm +[1 0 0 1 0 0] Tm +0 0 Td +495.977 533.572 Td +/F134_0 9.9626 Tf +(-f) 11.9551 Tj +[1 0 0 1 507.932 533.572] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -507.932 -533.572] cm +[1 0 0 1 0 0] Tm +0 0 Td +510.423 533.572 Td +/F130_0 9.9626 Tf +(\003ag.) 17.4346 Tj +[1 0 0 1 72 531.415] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -521.453] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 511.654 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +-284 TJm +(no) 9.9626 Tj +-285 TJm +(\002le) 12.7322 Tj +-284 TJm +(names) 25.4544 Tj +-284 TJm +(are) 12.1643 Tj +-284 TJm +(speci\002ed,) 37.9077 Tj +[1 0 0 1 193.935 511.654] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -193.935 -511.654] cm +[1 0 0 1 0 0] Tm +0 0 Td +193.935 511.654 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 223.823 511.654] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -223.823 -511.654] cm +[1 0 0 1 0 0] Tm +0 0 Td +226.655 511.654 Td +/F130_0 9.9626 Tf +(compresses) 45.9276 Tj +-284 TJm +(from) 19.3673 Tj +-285 TJm +(standard) 33.7533 Tj +-284 TJm +(input) 20.4831 Tj +-284 TJm +(to) 7.7509 Tj +-284 TJm +(standard) 33.7533 Tj +-285 TJm +(output.) 27.9551 Tj +-825 TJm +(In) 8.29885 Tj +-285 TJm +(this) 14.396 Tj +-284 TJm +(case,) 19.6363 Tj +[1 0 0 1 491.778 511.654] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -491.778 -511.654] cm +[1 0 0 1 0 0] Tm +0 0 Td +491.778 511.654 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 521.666 511.654] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -521.666 -511.654] cm +[1 0 0 1 0 0] Tm +0 0 Td +524.499 511.654 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +72 499.699 Td +(decline) 28.772 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(write) 20.4731 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(output) 25.4644 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(terminal,) 35.696 Tj +-250 TJm +(as) 8.29885 Tj +-250 TJm +(this) 14.396 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ould) 17.7135 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(entirely) 30.4357 Tj +-250 TJm +(incomprehensible) 70.8341 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(therefore) 35.955 Tj +-250 TJm +(pointless.) 37.9177 Tj +[1 0 0 1 72 497.542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -487.58] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 477.781 Td +/F134_0 9.9626 Tf +(bunzip2) 41.8429 Tj +[1 0 0 1 113.843 477.781] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -113.843 -477.781] cm +[1 0 0 1 0 0] Tm +0 0 Td +116.176 477.781 Td +/F130_0 9.9626 Tf +(\(or) 11.6164 Tj +[1 0 0 1 130.125 477.781] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -130.125 -477.781] cm +[1 0 0 1 0 0] Tm +0 0 Td +130.125 477.781 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +-600 TJm +(-d) 11.9551 Tj +[1 0 0 1 177.946 477.781] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -177.946 -477.781] cm +[1 0 0 1 0 0] Tm +0 0 Td +177.946 477.781 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +-234 TJm +(decompresses) 55.3323 Tj +-234 TJm +(all) 9.9626 Tj +-234 TJm +(speci\002ed) 35.417 Tj +-235 TJm +(\002les.) 19.0983 Tj +-609 TJm +(Files) 19.3773 Tj +-234 TJm +(which) 24.3486 Tj +-234 TJm +(were) 19.3573 Tj +-234 TJm +(not) 12.7322 Tj +-235 TJm +(created) 28.762 Tj +-234 TJm +(by) 9.9626 Tj +[1 0 0 1 445.012 477.781] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -445.012 -477.781] cm +[1 0 0 1 0 0] Tm +0 0 Td +445.012 477.781 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 474.9 477.781] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -474.9 -477.781] cm +[1 0 0 1 0 0] Tm +0 0 Td +477.233 477.781 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-234 TJm +(be) 9.40469 Tj +-234 TJm +(detected) 33.1954 Tj +72 465.826 Td +(and) 14.386 Tj +-280 TJm +(i) 2.7696 Tj +1 TJm +(gnored,) 30.1568 Tj +-287 TJm +(and) 14.386 Tj +-280 TJm +(a) 4.42339 Tj +-279 TJm +(w) 7.193 Tj +10 TJm +(arning) 25.4544 Tj +-280 TJm +(issued.) 27.3972 Tj +[1 0 0 1 216.033 465.826] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -216.033 -465.826] cm +[1 0 0 1 0 0] Tm +0 0 Td +216.033 465.826 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 245.921 465.826] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -245.921 -465.826] cm +[1 0 0 1 0 0] Tm +0 0 Td +248.705 465.826 Td +/F130_0 9.9626 Tf +(attempts) 33.7633 Tj +-279 TJm +(to) 7.7509 Tj +-280 TJm +(guess) 22.1369 Tj +-279 TJm +(the) 12.1743 Tj +-280 TJm +(\002lename) 34.3112 Tj +-279 TJm +(for) 11.6164 Tj +-280 TJm +(the) 12.1743 Tj +-279 TJm +(decompressed) 56.4381 Tj +-280 TJm +(\002le) 12.7322 Tj +-279 TJm +(from) 19.3673 Tj +-280 TJm +(that) 14.9439 Tj +-279 TJm +(of) 8.29885 Tj +-280 TJm +(the) 12.1743 Tj +72 453.871 Td +(compressed) 47.0334 Tj +-250 TJm +(\002le) 12.7322 Tj +-250 TJm +(as) 8.29885 Tj +-250 TJm +(follo) 18.8194 Tj +25 TJm +(ws:) 13.8381 Tj +[1 0 0 1 72 451.714] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -29.7236] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -421.991] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 421.991 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 421.991] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -421.991] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 421.991 Td +/F134_0 9.9626 Tf +(filename.bz2) 71.7307 Tj +[1 0 0 1 164.653 421.991] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -164.653 -421.991] cm +[1 0 0 1 0 0] Tm +0 0 Td +167.143 421.991 Td +/F130_0 9.9626 Tf +(becomes) 34.8591 Tj +[1 0 0 1 204.493 421.991] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -204.493 -421.991] cm +[1 0 0 1 0 0] Tm +0 0 Td +204.493 421.991 Td +/F134_0 9.9626 Tf +(filename) 47.8205 Tj +[1 0 0 1 252.313 421.991] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -180.313 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -400.073] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 400.073 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 400.073] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -400.073] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 400.073 Td +/F134_0 9.9626 Tf +(filename.bz) 65.7532 Tj +[1 0 0 1 158.675 400.073] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -158.675 -400.073] cm +[1 0 0 1 0 0] Tm +0 0 Td +161.166 400.073 Td +/F130_0 9.9626 Tf +(becomes) 34.8591 Tj +[1 0 0 1 198.515 400.073] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -198.515 -400.073] cm +[1 0 0 1 0 0] Tm +0 0 Td +198.515 400.073 Td +/F134_0 9.9626 Tf +(filename) 47.8205 Tj +[1 0 0 1 246.336 400.073] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -174.336 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -378.155] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 378.155 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 378.155] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -378.155] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 378.155 Td +/F134_0 9.9626 Tf +(filename.tbz2) 77.7083 Tj +[1 0 0 1 164.653 378.155] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -164.653 -378.155] cm +[1 0 0 1 0 0] Tm +0 0 Td +167.143 378.155 Td +/F130_0 9.9626 Tf +(becomes) 34.8591 Tj +[1 0 0 1 204.493 378.155] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -204.493 -378.155] cm +[1 0 0 1 0 0] Tm +0 0 Td +204.493 378.155 Td +/F134_0 9.9626 Tf +(filename.tar) 71.7307 Tj +[1 0 0 1 276.224 378.155] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -204.224 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -356.237] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 356.237 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 356.237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -356.237] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 356.237 Td +/F134_0 9.9626 Tf +(filename.tbz) 71.7307 Tj +[1 0 0 1 164.653 356.237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -164.653 -356.237] cm +[1 0 0 1 0 0] Tm +0 0 Td +167.143 356.237 Td +/F130_0 9.9626 Tf +(becomes) 34.8591 Tj +[1 0 0 1 204.493 356.237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -204.493 -356.237] cm +[1 0 0 1 0 0] Tm +0 0 Td +204.493 356.237 Td +/F134_0 9.9626 Tf +(filename.tar) 71.7307 Tj +[1 0 0 1 276.224 356.237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -204.224 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -334.319] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 334.319 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 334.319] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -334.319] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 334.319 Td +/F134_0 9.9626 Tf +(anyothername) 71.7307 Tj +[1 0 0 1 164.653 334.319] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -164.653 -334.319] cm +[1 0 0 1 0 0] Tm +0 0 Td +167.143 334.319 Td +/F130_0 9.9626 Tf +(becomes) 34.8591 Tj +[1 0 0 1 204.493 334.319] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -204.493 -334.319] cm +[1 0 0 1 0 0] Tm +0 0 Td +204.493 334.319 Td +/F134_0 9.9626 Tf +(anyothername.out) 95.641 Tj +[1 0 0 1 300.134 334.319] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -228.134 -11.4968] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -322.823] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 312.402 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +-342 TJm +(the) 12.1743 Tj +-342 TJm +(\002le) 12.7322 Tj +-342 TJm +(does) 18.2614 Tj +-342 TJm +(not) 12.7322 Tj +-343 TJm +(end) 14.386 Tj +-342 TJm +(in) 7.7509 Tj +-342 TJm +(one) 14.386 Tj +-342 TJm +(of) 8.29885 Tj +-342 TJm +(the) 12.1743 Tj +-342 TJm +(recognised) 43.158 Tj +-342 TJm +(endings,) 33.4843 Tj +[1 0 0 1 309.305 312.402] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -309.305 -312.402] cm +[1 0 0 1 0 0] Tm +0 0 Td +309.305 312.402 Td +/F134_0 9.9626 Tf +(.bz2) 23.9102 Tj +[1 0 0 1 333.215 312.402] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -333.215 -312.402] cm +[1 0 0 1 0 0] Tm +0 0 Td +333.215 312.402 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 339.344 312.402] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -339.344 -312.402] cm +[1 0 0 1 0 0] Tm +0 0 Td +339.344 312.402 Td +/F134_0 9.9626 Tf +(.bz) 17.9327 Tj +[1 0 0 1 357.276 312.402] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -357.276 -312.402] cm +[1 0 0 1 0 0] Tm +0 0 Td +357.276 312.402 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 363.405 312.402] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -363.405 -312.402] cm +[1 0 0 1 0 0] Tm +0 0 Td +363.405 312.402 Td +/F134_0 9.9626 Tf +(.tbz2) 29.8878 Tj +[1 0 0 1 393.293 312.402] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -393.293 -312.402] cm +[1 0 0 1 0 0] Tm +0 0 Td +396.701 312.402 Td +/F130_0 9.9626 Tf +(or) 8.29885 Tj +[1 0 0 1 408.409 312.402] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -408.409 -312.402] cm +[1 0 0 1 0 0] Tm +0 0 Td +408.409 312.402 Td +/F134_0 9.9626 Tf +(.tbz) 23.9102 Tj +[1 0 0 1 432.319 312.402] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -432.319 -312.402] cm +[1 0 0 1 0 0] Tm +0 0 Td +432.319 312.402 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 438.448 312.402] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -438.448 -312.402] cm +[1 0 0 1 0 0] Tm +0 0 Td +438.448 312.402 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 468.336 312.402] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468.336 -312.402] cm +[1 0 0 1 0 0] Tm +0 0 Td +471.744 312.402 Td +/F130_0 9.9626 Tf +(complains) 40.9562 Tj +-342 TJm +(that) 14.9439 Tj +-342 TJm +(it) 5.53921 Tj +72 300.446 Td +(cannot) 26.5603 Tj +-250 TJm +(guess) 22.1369 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(name) 21.579 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(original) 30.9936 Tj +-250 TJm +(\002le,) 15.2229 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(uses) 17.1556 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(original) 30.9936 Tj +-250 TJm +(name) 21.579 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 370.009 300.446] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -370.009 -300.446] cm +[1 0 0 1 0 0] Tm +0 0 Td +370.009 300.446 Td +/F134_0 9.9626 Tf +(.out) 23.9102 Tj +[1 0 0 1 393.92 300.446] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -393.92 -300.446] cm +[1 0 0 1 0 0] Tm +0 0 Td +396.41 300.446 Td +/F130_0 9.9626 Tf +(appended.) 40.6673 Tj +[1 0 0 1 72 298.29] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -288.327] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 278.529 Td +/F130_0 9.9626 Tf +(As) 11.0684 Tj +-250 TJm +(with) 17.7135 Tj +-250 TJm +(compression,) 52.8516 Tj +-250 TJm +(supplying) 39.3025 Tj +-250 TJm +(no) 9.9626 Tj +-250 TJm +(\002lenames) 38.1866 Tj +-250 TJm +(causes) 26.0024 Tj +-250 TJm +(decompression) 59.7656 Tj +-250 TJm +(from) 19.3673 Tj +-250 TJm +(standard) 33.7533 Tj +-250 TJm +(input) 20.4831 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(standard) 33.7533 Tj +-250 TJm +(output.) 27.9551 Tj +[1 0 0 1 72 276.372] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -266.409] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 256.611 Td +/F134_0 9.9626 Tf +(bunzip2) 41.8429 Tj +[1 0 0 1 113.843 256.611] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -113.843 -256.611] cm +[1 0 0 1 0 0] Tm +0 0 Td +116.409 256.611 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-257 TJm +(correctly) 35.4071 Tj +-258 TJm +(decompress) 47.0334 Tj +-257 TJm +(a) 4.42339 Tj +-258 TJm +(\002le) 12.7322 Tj +-257 TJm +(which) 24.3486 Tj +-258 TJm +(is) 6.64505 Tj +-258 TJm +(the) 12.1743 Tj +-257 TJm +(concatenation) 55.3323 Tj +-258 TJm +(of) 8.29885 Tj +-257 TJm +(tw) 9.9626 Tj +10 TJm +(o) 4.9813 Tj +-258 TJm +(or) 8.29885 Tj +-257 TJm +(more) 20.4731 Tj +-258 TJm +(compressed) 47.0334 Tj +-257 TJm +(\002les.) 19.0983 Tj +-665 TJm +(The) 15.4918 Tj +-258 TJm +(result) 22.1369 Tj +-257 TJm +(is) 6.64505 Tj +72 244.656 Td +(the) 12.1743 Tj +-239 TJm +(concatenation) 55.3323 Tj +-238 TJm +(of) 8.29885 Tj +-239 TJm +(the) 12.1743 Tj +-239 TJm +(corresponding) 56.996 Tj +-239 TJm +(uncompressed) 56.996 Tj +-238 TJm +(\002les.) 19.0983 Tj +-613 TJm +(Inte) 15.4918 Tj +15 TJm +(grity) 18.8194 Tj +-238 TJm +(testing) 26.5703 Tj +-239 TJm +(\() 3.31755 Tj +[1 0 0 1 382.247 244.656] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -382.247 -244.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +382.247 244.656 Td +/F134_0 9.9626 Tf +(-t) 11.9551 Tj +[1 0 0 1 394.202 244.656] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -394.202 -244.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +394.202 244.656 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +-239 TJm +(of) 8.29885 Tj +-238 TJm +(concatenated) 52.0048 Tj +-239 TJm +(compressed) 47.0334 Tj +-239 TJm +(\002les) 16.6077 Tj +-239 TJm +(is) 6.64505 Tj +72 232.7 Td +(also) 16.0497 Tj +-250 TJm +(supported.) 41.7831 Tj +[1 0 0 1 72 230.544] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -220.581] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 210.783 Td +/F130_0 9.9626 Tf +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-399 TJm +(can) 13.8281 Tj +-399 TJm +(also) 16.0497 Tj +-399 TJm +(compress) 37.6287 Tj +-400 TJm +(or) 8.29885 Tj +-399 TJm +(decompress) 47.0334 Tj +-399 TJm +(\002les) 16.6077 Tj +-399 TJm +(to) 7.7509 Tj +-399 TJm +(the) 12.1743 Tj +-399 TJm +(standard) 33.7533 Tj +-399 TJm +(output) 25.4644 Tj +-399 TJm +(by) 9.9626 Tj +-400 TJm +(gi) 7.7509 Tj +25 TJm +(ving) 17.7135 Tj +-399 TJm +(the) 12.1743 Tj +[1 0 0 1 409.67 210.783] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -409.67 -210.783] cm +[1 0 0 1 0 0] Tm +0 0 Td +409.67 210.783 Td +/F134_0 9.9626 Tf +(-c) 11.9551 Tj +[1 0 0 1 421.625 210.783] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -421.625 -210.783] cm +[1 0 0 1 0 0] Tm +0 0 Td +425.602 210.783 Td +/F130_0 9.9626 Tf +(\003ag.) 17.4346 Tj +-757 TJm +(Multiple) 34.3212 Tj +-400 TJm +(\002l) 8.30881 Tj +1 TJm +(es) 8.29885 Tj +-400 TJm +(may) 17.1556 Tj +-399 TJm +(be) 9.40469 Tj +72 198.828 Td +(compressed) 47.0334 Tj +-367 TJm +(and) 14.386 Tj +-367 TJm +(decompressed) 56.4381 Tj +-367 TJm +(lik) 10.5205 Tj +10 TJm +(e) 4.42339 Tj +-367 TJm +(this.) 16.8866 Tj +-1321 TJm +(The) 15.4918 Tj +-367 TJm +(resulting) 34.8691 Tj +-367 TJm +(outputs) 29.3399 Tj +-367 TJm +(are) 12.1643 Tj +-367 TJm +(fed) 12.7222 Tj +-367 TJm +(sequentially) 48.1492 Tj +-366 TJm +(to) 7.7509 Tj +-367 TJm +(stdout.) 26.8492 Tj +-1322 TJm +(Compression) 52.5826 Tj +-367 TJm +(of) 8.29885 Tj +72 186.872 Td +(multiple) 33.2153 Tj +-289 TJm +(\002les) 16.6077 Tj +-289 TJm +(in) 7.7509 Tj +-289 TJm +(this) 14.396 Tj +-289 TJm +(manner) 29.8778 Tj +-288 TJm +(generates) 37.6188 Tj +-289 TJm +(a) 4.42339 Tj +-289 TJm +(stream) 26.5603 Tj +-289 TJm +(containing) 42.0621 Tj +-289 TJm +(multiple) 33.2153 Tj +-289 TJm +(compressed) 47.0334 Tj +-289 TJm +(\002le) 12.7322 Tj +-289 TJm +(representations.) 62.8042 Tj +-853 TJm +(Such) 19.9252 Tj +-289 TJm +(a) 4.42339 Tj +-289 TJm +(stream) 26.5603 Tj +72 174.917 Td +(can) 13.8281 Tj +-391 TJm +(be) 9.40469 Tj +-391 TJm +(decompressed) 56.4381 Tj +-390 TJm +(correctly) 35.4071 Tj +-391 TJm +(only) 17.7135 Tj +-391 TJm +(by) 9.9626 Tj +[1 0 0 1 238.116 174.917] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -238.116 -174.917] cm +[1 0 0 1 0 0] Tm +0 0 Td +238.116 174.917 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 268.004 174.917] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -268.004 -174.917] cm +[1 0 0 1 0 0] Tm +0 0 Td +271.897 174.917 Td +/F130_0 9.9626 Tf +(v) 4.9813 Tj +15 TJm +(ersion) 24.3486 Tj +-391 TJm +(0.9.0) 19.9252 Tj +-391 TJm +(or) 8.29885 Tj +-391 TJm +(l) 2.7696 Tj +1 TJm +(ater) 14.9339 Tj +55 TJm +(.) 2.49065 Tj +-733 TJm +(Earlier) 27.1082 Tj +-391 TJm +(v) 4.9813 Tj +15 TJm +(ersions) 28.224 Tj +-391 TJm +(of) 8.29885 Tj +[1 0 0 1 448.071 174.917] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -448.071 -174.917] cm +[1 0 0 1 0 0] Tm +0 0 Td +448.071 174.917 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 477.958 174.917] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -477.958 -174.917] cm +[1 0 0 1 0 0] Tm +0 0 Td +481.852 174.917 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-391 TJm +(stop) 16.6077 Tj +-391 TJm +(after) 18.2515 Tj +72 162.962 Td +(decompressing) 59.7656 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(\002rst) 15.5018 Tj +-250 TJm +(\002le) 12.7322 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(stream.) 29.0509 Tj +[1 0 0 1 72 160.805] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -150.843] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 141.044 Td +/F134_0 9.9626 Tf +(bzcat) 29.8878 Tj +[1 0 0 1 101.888 141.044] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -101.888 -141.044] cm +[1 0 0 1 0 0] Tm +0 0 Td +104.379 141.044 Td +/F130_0 9.9626 Tf +(\(or) 11.6164 Tj +[1 0 0 1 118.486 141.044] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -118.486 -141.044] cm +[1 0 0 1 0 0] Tm +0 0 Td +118.486 141.044 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +-600 TJm +(-dc) 17.9327 Tj +[1 0 0 1 172.284 141.044] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -172.284 -141.044] cm +[1 0 0 1 0 0] Tm +0 0 Td +172.284 141.044 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +-250 TJm +(decompresses) 55.3323 Tj +-250 TJm +(all) 9.9626 Tj +-250 TJm +(speci\002ed) 35.417 Tj +-250 TJm +(\002les) 16.6077 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(standard) 33.7533 Tj +-250 TJm +(output.) 27.9551 Tj +[1 0 0 1 72 138.887] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -128.925] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 119.126 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 101.888 119.126] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -101.888 -119.126] cm +[1 0 0 1 0 0] Tm +0 0 Td +104.866 119.126 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-299 TJm +(read) 17.1456 Tj +-299 TJm +(ar) 7.74094 Tj +18 TJm +(guments) 33.7633 Tj +-299 TJm +(from) 19.3673 Tj +-299 TJm +(the) 12.1743 Tj +-299 TJm +(en) 9.40469 Tj +40 TJm +(vironment) 40.9562 Tj +-298 TJm +(v) 4.9813 Tj +25 TJm +(ariables) 30.9837 Tj +[1 0 0 1 316.903 119.126] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -316.903 -119.126] cm +[1 0 0 1 0 0] Tm +0 0 Td +316.903 119.126 Td +/F134_0 9.9626 Tf +(BZIP2) 29.8878 Tj +[1 0 0 1 346.791 119.126] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -346.791 -119.126] cm +[1 0 0 1 0 0] Tm +0 0 Td +349.769 119.126 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 367.133 119.126] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -367.133 -119.126] cm +[1 0 0 1 0 0] Tm +0 0 Td +367.133 119.126 Td +/F134_0 9.9626 Tf +(BZIP) 23.9102 Tj +[1 0 0 1 391.043 119.126] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -391.043 -119.126] cm +[1 0 0 1 0 0] Tm +0 0 Td +391.043 119.126 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-299 TJm +(in) 7.7509 Tj +-299 TJm +(that) 14.9439 Tj +-299 TJm +(order) 21.0211 Tj +40 TJm +(,) 2.49065 Tj +-311 TJm +(and) 14.386 Tj +-299 TJm +(will) 15.5018 Tj +-299 TJm +(process) 29.8778 Tj +-299 TJm +(them) 19.9252 Tj +72 107.171 Td +(before) 25.4445 Tj +-250 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-250 TJm +(ar) 7.74094 Tj +18 TJm +(guments) 33.7633 Tj +-250 TJm +(read) 17.1456 Tj +-250 TJm +(from) 19.3673 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(command) 39.2925 Tj +-250 TJm +(line.) 17.4346 Tj +-310 TJm +(This) 17.7135 Tj +-250 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(es) 8.29885 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(con) 14.386 Tj +40 TJm +(v) 4.9813 Tj +15 TJm +(enient) 24.3486 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ay) 9.40469 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(supply) 26.5703 Tj +-250 TJm +(def) 12.7222 Tj +10 TJm +(ault) 14.9439 Tj +-250 TJm +(ar) 7.74094 Tj +18 TJm +(guments.) 36.2539 Tj +[1 0 0 1 72 105.014] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -95.0517] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 85.2534 Td +/F130_0 9.9626 Tf +(Compression) 52.5826 Tj +-294 TJm +(is) 6.64505 Tj +-294 TJm +(al) 7.193 Tj +10 TJm +(w) 7.193 Tj +10 TJm +(ays) 13.2801 Tj +-294 TJm +(performed,) 43.9849 Tj +-305 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(en) 9.40469 Tj +-294 TJm +(if) 6.08715 Tj +-294 TJm +(the) 12.1743 Tj +-294 TJm +(compressed) 47.0334 Tj +-294 TJm +(\002le) 12.7322 Tj +-293 TJm +(is) 6.64505 Tj +-294 TJm +(slightly) 29.8978 Tj +-294 TJm +(lar) 10.5105 Tj +18 TJm +(ger) 12.7222 Tj +-294 TJm +(than) 17.1556 Tj +-294 TJm +(the) 12.1743 Tj +-294 TJm +(original.) 33.4843 Tj +-884 TJm +(Files) 19.3773 Tj +-294 TJm +(of) 8.29885 Tj +-294 TJm +(less) 14.9439 Tj +-294 TJm +(than) 17.1556 Tj +72 73.2982 Td +(about) 22.1369 Tj +-246 TJm +(one) 14.386 Tj +-246 TJm +(hundred) 32.6474 Tj +-245 TJm +(bytes) 21.031 Tj +-246 TJm +(tend) 17.1556 Tj +-246 TJm +(to) 7.7509 Tj +-246 TJm +(get) 12.1743 Tj +-246 TJm +(l) 2.7696 Tj +1 TJm +(ar) 7.74094 Tj +18 TJm +(ger) 12.7222 Tj +40 TJm +(,) 2.49065 Tj +-247 TJm +(since) 20.4731 Tj +-246 TJm +(the) 12.1743 Tj +-246 TJm +(compression) 50.3609 Tj +-245 TJm +(mechanism) 45.3796 Tj +-246 TJm +(has) 13.2801 Tj +-246 TJm +(a) 4.42339 Tj +-246 TJm +(constant) 33.2053 Tj +-246 TJm +(o) 4.9813 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(erhead) 26.5503 Tj +-245 TJm +(in) 7.7509 Tj +-246 TJm +(the) 12.1743 Tj +-246 TJm +(re) 7.74094 Tj +15 TJm +(gion) 17.7135 Tj +-246 TJm +(of) 8.29885 Tj +[1 0 0 1 72 50.8518] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 43.0633 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.332 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +539.395 50.9514 Td +/F130_0 9.9626 Tf +(3) 4.9813 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 7 7 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 105.519 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -371.59 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +477.109 749.245 Td +/F130_0 9.9626 Tf +(Ho) 12.1743 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(bzip2) 22.1369 Tj +[1 0 0 1 266.071 747.089] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -741.554] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F130_0 9.9626 Tf +(50) 9.9626 Tj +-264 TJm +(bytes.) 23.5217 Tj +-351 TJm +(Random) 33.7633 Tj +-264 TJm +(dat) 12.1743 Tj +1 TJm +(a) 4.42339 Tj +-264 TJm +(\(including) 40.9562 Tj +-264 TJm +(the) 12.1743 Tj +-264 TJm +(output) 25.4644 Tj +-263 TJm +(of) 8.29885 Tj +-264 TJm +(most) 19.3773 Tj +-264 TJm +(\002le) 12.7322 Tj +-263 TJm +(compressors\)) 53.1206 Tj +-264 TJm +(is) 6.64505 Tj +-264 TJm +(coded) 23.7907 Tj +-263 TJm +(at) 7.193 Tj +-264 TJm +(about) 22.1369 Tj +-264 TJm +(8.05) 17.4346 Tj +-263 TJm +(bits) 14.396 Tj +-264 TJm +(per) 12.7222 Tj +-264 TJm +(byte,) 19.6462 Tj +-267 TJm +(gi) 7.7509 Tj +25 TJm +(ving) 17.7135 Tj +-264 TJm +(an) 9.40469 Tj +72 698.082 Td +(e) 4.42339 Tj +15 TJm +(xpansion) 35.9749 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(around) 27.6661 Tj +-250 TJm +(0.5%.) 23.2427 Tj +[1 0 0 1 72 695.925] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -686.081] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 676.283 Td +/F130_0 9.9626 Tf +(As) 11.0684 Tj +-268 TJm +(a) 4.42339 Tj +-268 TJm +(self-check) 40.9363 Tj +-269 TJm +(for) 11.6164 Tj +-268 TJm +(your) 18.2614 Tj +-268 TJm +(protection,) 42.889 Tj +[1 0 0 1 217.273 676.283] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -217.273 -676.283] cm +[1 0 0 1 0 0] Tm +0 0 Td +217.273 676.283 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 247.161 676.283] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -247.161 -676.283] cm +[1 0 0 1 0 0] Tm +0 0 Td +249.833 676.283 Td +/F130_0 9.9626 Tf +(uses) 17.1556 Tj +-268 TJm +(32-bit) 23.8007 Tj +-268 TJm +(CRCs) 23.8106 Tj +-269 TJm +(to) 7.7509 Tj +-268 TJm +(mak) 17.1556 Tj +10 TJm +(e) 4.42339 Tj +-268 TJm +(sure) 16.5977 Tj +-268 TJm +(that) 14.9439 Tj +-268 TJm +(the) 12.1743 Tj +-269 TJm +(decompressed) 56.4381 Tj +-268 TJm +(v) 4.9813 Tj +15 TJm +(ersion) 24.3486 Tj +-268 TJm +(of) 8.29885 Tj +-268 TJm +(a) 4.42339 Tj +-268 TJm +(\002le) 12.7322 Tj +-269 TJm +(is) 6.64505 Tj +72 664.328 Td +(identical) 34.3112 Tj +-200 TJm +(to) 7.7509 Tj +-199 TJm +(the) 12.1743 Tj +-200 TJm +(original.) 33.4843 Tj +-586 TJm +(This) 17.7135 Tj +-200 TJm +(guards) 26.5603 Tj +-199 TJm +(ag) 9.40469 Tj +5 TJm +(ainst) 18.8194 Tj +-200 TJm +(corruption) 41.5042 Tj +-199 TJm +(of) 8.29885 Tj +-200 TJm +(the) 12.1743 Tj +-200 TJm +(compressed) 47.0334 Tj +-199 TJm +(data,) 19.0883 Tj +-210 TJm +(and) 14.386 Tj +-199 TJm +(ag) 9.40469 Tj +5 TJm +(ainst) 18.8194 Tj +-200 TJm +(undetected) 43.158 Tj +-200 TJm +(b) 4.9813 Tj +20 TJm +(ugs) 13.8381 Tj +-199 TJm +(in) 7.7509 Tj +[1 0 0 1 510.112 664.328] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -510.112 -664.328] cm +[1 0 0 1 0 0] Tm +0 0 Td +510.112 664.328 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 540 664.328] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -664.328] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 652.373 Td +/F130_0 9.9626 Tf +(\(hopefully) 41.5042 Tj +-275 TJm +(v) 4.9813 Tj +15 TJm +(ery) 12.7222 Tj +-274 TJm +(unlik) 20.4831 Tj +10 TJm +(ely\).) 17.9825 Tj +-384 TJm +(The) 15.4918 Tj +-275 TJm +(chances) 31.5316 Tj +-275 TJm +(of) 8.29885 Tj +-275 TJm +(data) 16.5977 Tj +-274 TJm +(corruption) 41.5042 Tj +-275 TJm +(going) 22.6948 Tj +-275 TJm +(undetected) 43.158 Tj +-274 TJm +(is) 6.64505 Tj +-275 TJm +(microscopic,) 51.1878 Tj +-281 TJm +(about) 22.1369 Tj +-275 TJm +(one) 14.386 Tj +-274 TJm +(chance) 27.6562 Tj +-275 TJm +(in) 7.7509 Tj +-275 TJm +(four) 16.5977 Tj +72 640.417 Td +(billion) 26.0223 Tj +-279 TJm +(for) 11.6164 Tj +-279 TJm +(each) 18.2515 Tj +-279 TJm +(\002le) 12.7322 Tj +-280 TJm +(processed.) 41.7732 Tj +-795 TJm +(Be) 11.0684 Tj +-279 TJm +(a) 4.42339 Tj +15 TJm +(w) 7.193 Tj +10 TJm +(are,) 14.655 Tj +-286 TJm +(though,) 30.1668 Tj +-287 TJm +(that) 14.9439 Tj +-279 TJm +(the) 12.1743 Tj +-279 TJm +(check) 23.2328 Tj +-279 TJm +(occurs) 26.0024 Tj +-279 TJm +(upon) 19.9252 Tj +-279 TJm +(decompression,) 62.2563 Tj +-287 TJm +(so) 8.85675 Tj +-279 TJm +(it) 5.53921 Tj +-279 TJm +(can) 13.8281 Tj +-279 TJm +(only) 17.7135 Tj +-280 TJm +(tell) 12.7322 Tj +-279 TJm +(you) 14.9439 Tj +72 628.462 Td +(that) 14.9439 Tj +-237 TJm +(something) 41.5142 Tj +-236 TJm +(is) 6.64505 Tj +-237 TJm +(wrong.) 27.9451 Tj +-611 TJm +(It) 6.08715 Tj +-237 TJm +(can') 17.1456 Tj +18 TJm +(t) 2.7696 Tj +-237 TJm +(help) 17.1556 Tj +-237 TJm +(you) 14.9439 Tj +-236 TJm +(reco) 17.1456 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-237 TJm +(the) 12.1743 Tj +-237 TJm +(original) 30.9936 Tj +-237 TJm +(uncompressed) 56.996 Tj +-236 TJm +(data.) 19.0883 Tj +-612 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-236 TJm +(can) 13.8281 Tj +-237 TJm +(use) 13.2801 Tj +[1 0 0 1 458.159 628.462] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -458.159 -628.462] cm +[1 0 0 1 0 0] Tm +0 0 Td +458.159 628.462 Td +/F134_0 9.9626 Tf +(bzip2recover) 71.7307 Tj +[1 0 0 1 529.89 628.462] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -529.89 -628.462] cm +[1 0 0 1 0 0] Tm +0 0 Td +532.249 628.462 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +72 616.507 Td +(try) 11.0684 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(reco) 17.1456 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(from) 19.3673 Tj +-250 TJm +(damaged) 35.965 Tj +-250 TJm +(\002les.) 19.0983 Tj +[1 0 0 1 72 614.35] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -604.506] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 594.708 Td +/F130_0 9.9626 Tf +(Return) 27.1182 Tj +-298 TJm +(v) 4.9813 Tj +25 TJm +(alues:) 23.2427 Tj +-406 TJm +(0) 4.9813 Tj +-298 TJm +(for) 11.6164 Tj +-298 TJm +(a) 4.42339 Tj +-298 TJm +(normal) 28.224 Tj +-298 TJm +(e) 4.42339 Tj +15 TJm +(xit,) 13.0112 Tj +-310 TJm +(1) 4.9813 Tj +-298 TJm +(for) 11.6164 Tj +-297 TJm +(en) 9.40469 Tj +40 TJm +(vironmental) 48.1492 Tj +-298 TJm +(problems) 37.0808 Tj +-298 TJm +(\(\002le) 16.0497 Tj +-298 TJm +(not) 12.7322 Tj +-298 TJm +(found,) 25.7334 Tj +-310 TJm +(in) 7.7509 Tj +40 TJm +(v) 4.9813 Tj +25 TJm +(alid) 14.9439 Tj +-298 TJm +(\003ags,) 21.31 Tj +-310 TJm +(I/O) 13.2801 Tj +-298 TJm +(errors,) 25.7234 Tj +-310 TJm +(etc.\),) 19.9152 Tj +-310 TJm +(2) 4.9813 Tj +-298 TJm +(to) 7.7509 Tj +72 582.753 Td +(indicate) 31.5416 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(corrupt) 28.772 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(\002le,) 15.2229 Tj +-250 TJm +(3) 4.9813 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(an) 9.40469 Tj +-250 TJm +(internal) 30.4357 Tj +-250 TJm +(consistenc) 41.5042 Tj +15 TJm +(y) 4.9813 Tj +-250 TJm +(error) 19.3573 Tj +-250 TJm +(\(e) 7.74094 Tj +15 TJm +(g,) 7.47195 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ug\)) 13.2801 Tj +-250 TJm +(which) 24.3486 Tj +-250 TJm +(caused) 27.1082 Tj +[1 0 0 1 443.065 582.753] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -443.065 -582.753] cm +[1 0 0 1 0 0] Tm +0 0 Td +443.065 582.753 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 472.953 582.753] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.953 -582.753] cm +[1 0 0 1 0 0] Tm +0 0 Td +475.444 582.753 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-250 TJm +(panic.) 24.0696 Tj +[1 0 0 1 72 580.596] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -570.752] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 548.118 Td +/F122_0 20.6585 Tf +(2.4.) 34.4584 Tj +-278 TJm +(OPTIONS) 92.9839 Tj +[1 0 0 1 72 547.86] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -528.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 516.475 Td +/F134_0 9.9626 Tf +(-c) 11.9551 Tj +-600 TJm +(--stdout) 47.8205 Tj +[1 0 0 1 137.753 516.475] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -68.2441 -0.1544] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -516.32] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 504.52 Td +/F130_0 9.9626 Tf +(Compress) 39.8504 Tj +-250 TJm +(or) 8.29885 Tj +-250 TJm +(decompress) 47.0334 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(standard) 33.7533 Tj +-250 TJm +(output.) 27.9551 Tj +[1 0 0 1 72 502.363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.8664] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -488.652] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 478.854 Td +/F134_0 9.9626 Tf +(-d) 11.9551 Tj +-600 TJm +(--decompress) 71.7307 Tj +[1 0 0 1 161.664 478.854] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -92.1544 -1.5341] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -477.32] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 466.899 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(orce) 17.1456 Tj +-296 TJm +(decompression.) 62.2563 Tj +[1 0 0 1 200.214 466.899] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -200.214 -466.899] cm +[1 0 0 1 0 0] Tm +0 0 Td +200.214 466.899 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 230.102 466.899] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -230.102 -466.899] cm +[1 0 0 1 0 0] Tm +0 0 Td +230.102 466.899 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 235.659 466.899] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -235.659 -466.899] cm +[1 0 0 1 0 0] Tm +0 0 Td +235.659 466.899 Td +/F134_0 9.9626 Tf +(bunzip2) 41.8429 Tj +[1 0 0 1 277.502 466.899] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -277.502 -466.899] cm +[1 0 0 1 0 0] Tm +0 0 Td +280.454 466.899 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 297.791 466.899] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -297.791 -466.899] cm +[1 0 0 1 0 0] Tm +0 0 Td +297.791 466.899 Td +/F134_0 9.9626 Tf +(bzcat) 29.8878 Tj +[1 0 0 1 327.679 466.899] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -327.679 -466.899] cm +[1 0 0 1 0 0] Tm +0 0 Td +330.631 466.899 Td +/F130_0 9.9626 Tf +(are) 12.1643 Tj +-296 TJm +(really) 22.6848 Tj +-296 TJm +(the) 12.1743 Tj +-297 TJm +(same) 20.4731 Tj +-296 TJm +(program,) 36.2439 Tj +-308 TJm +(and) 14.386 Tj +-296 TJm +(the) 12.1743 Tj +-296 TJm +(decision) 33.2053 Tj +-297 TJm +(about) 22.1369 Tj +108 454.944 Td +(what) 19.3673 Tj +-303 TJm +(actions) 28.224 Tj +-303 TJm +(to) 7.7509 Tj +-303 TJm +(tak) 12.1743 Tj +10 TJm +(e) 4.42339 Tj +-303 TJm +(is) 6.64505 Tj +-303 TJm +(done) 19.3673 Tj +-303 TJm +(on) 9.9626 Tj +-304 TJm +(the) 12.1743 Tj +-303 TJm +(basis) 19.9252 Tj +-303 TJm +(of) 8.29885 Tj +-303 TJm +(which) 24.3486 Tj +-303 TJm +(name) 21.579 Tj +-303 TJm +(is) 6.64505 Tj +-303 TJm +(used.) 20.7521 Tj +-939 TJm +(This) 17.7135 Tj +-303 TJm +(\003ag) 14.9439 Tj +-303 TJm +(o) 4.9813 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(errides) 27.1082 Tj +-303 TJm +(that) 14.9439 Tj +-303 TJm +(mechanism,) 47.8703 Tj +-316 TJm +(and) 14.386 Tj +108 442.988 Td +(forces) 24.3386 Tj +-250 TJm +(bzip2) 22.1369 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(decompress.) 49.5241 Tj +[1 0 0 1 72 440.832] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.8665] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -427.121] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 417.323 Td +/F134_0 9.9626 Tf +(-z) 11.9551 Tj +-600 TJm +(--compress) 59.7756 Tj +[1 0 0 1 149.709 417.323] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -80.1993 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -415.789] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 405.368 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-250 TJm +(complement) 49.2551 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 187.969 405.368] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -187.969 -405.368] cm +[1 0 0 1 0 0] Tm +0 0 Td +187.969 405.368 Td +/F134_0 9.9626 Tf +(-d) 11.9551 Tj +[1 0 0 1 199.924 405.368] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -199.924 -405.368] cm +[1 0 0 1 0 0] Tm +0 0 Td +199.924 405.368 Td +/F130_0 9.9626 Tf +(:) 2.7696 Tj +-310 TJm +(forces) 24.3386 Tj +-250 TJm +(compression,) 52.8516 Tj +-250 TJm +(re) 7.74094 Tj +15 TJm +(g) 4.9813 Tj +5 TJm +(ardless) 27.6661 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(in) 7.7509 Tj +40 TJm +(v) 4.9813 Tj +20 TJm +(okation) 29.8878 Tj +-250 TJm +(name.) 24.0696 Tj +[1 0 0 1 72 403.211] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.8665] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -389.5] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 379.702 Td +/F134_0 9.9626 Tf +(-t) 11.9551 Tj +-600 TJm +(--test) 35.8654 Tj +[1 0 0 1 125.798 379.702] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -56.2889 -0.1544] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -379.548] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 367.747 Td +/F130_0 9.9626 Tf +(Check) 25.4544 Tj +-270 TJm +(inte) 14.9439 Tj +15 TJm +(grity) 18.8194 Tj +-271 TJm +(of) 8.29885 Tj +-270 TJm +(the) 12.1743 Tj +-271 TJm +(speci\002ed) 35.417 Tj +-270 TJm +(\002le\(s\),) 25.7334 Tj +-276 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-270 TJm +(don') 18.2614 Tj +18 TJm +(t) 2.7696 Tj +-270 TJm +(decompress) 47.0334 Tj +-271 TJm +(them.) 22.4159 Tj +-742 TJm +(This) 17.7135 Tj +-271 TJm +(really) 22.6848 Tj +-270 TJm +(performs) 35.965 Tj +-270 TJm +(a) 4.42339 Tj +-271 TJm +(trial) 16.0497 Tj +-270 TJm +(decompres-) 46.4755 Tj +108 355.791 Td +(sion) 16.6077 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(thro) 16.0497 Tj +25 TJm +(ws) 11.0684 Tj +-250 TJm +(a) 4.42339 Tj +15 TJm +(w) 7.193 Tj +10 TJm +(ay) 9.40469 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(result.) 24.6275 Tj +[1 0 0 1 72 353.635] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.8664] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -339.924] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 330.126 Td +/F134_0 9.9626 Tf +(-f) 11.9551 Tj +-600 TJm +(--force) 41.8429 Tj +[1 0 0 1 131.776 330.126] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -62.2665 -0.1544] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -329.971] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 318.171 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(orce) 17.1456 Tj +-338 TJm +(o) 4.9813 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(erwrite) 28.2141 Tj +-339 TJm +(of) 8.29885 Tj +-338 TJm +(output) 25.4644 Tj +-338 TJm +(\002les.) 19.0983 Tj +-1150 TJm +(Normally) 38.1866 Tj +65 TJm +(,) 2.49065 Tj +[1 0 0 1 289.831 318.171] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -289.831 -318.171] cm +[1 0 0 1 0 0] Tm +0 0 Td +289.831 318.171 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 319.719 318.171] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -319.719 -318.171] cm +[1 0 0 1 0 0] Tm +0 0 Td +323.089 318.171 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-338 TJm +(not) 12.7322 Tj +-339 TJm +(o) 4.9813 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(erwrite) 28.2141 Tj +-338 TJm +(e) 4.42339 Tj +15 TJm +(xisting) 27.1282 Tj +-338 TJm +(output) 25.4644 Tj +-338 TJm +(\002les.) 19.0983 Tj +-1150 TJm +(Also) 18.8194 Tj +-339 TJm +(forces) 24.3386 Tj +[1 0 0 1 108 306.215] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -108 -306.215] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 306.215 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 137.888 306.215] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -137.888 -306.215] cm +[1 0 0 1 0 0] Tm +0 0 Td +140.379 306.215 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-250 TJm +(break) 22.1269 Tj +-250 TJm +(hard) 17.7035 Tj +-250 TJm +(links) 19.3773 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(\002les,) 19.0983 Tj +-250 TJm +(which) 24.3486 Tj +-250 TJm +(it) 5.53921 Tj +-250 TJm +(otherwise) 38.7346 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ouldn') 26.0123 Tj +18 TJm +(t) 2.7696 Tj +-250 TJm +(do.) 12.4533 Tj +[1 0 0 1 72 304.681] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -294.837] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 284.416 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 137.888 284.416] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -137.888 -284.416] cm +[1 0 0 1 0 0] Tm +0 0 Td +141.211 284.416 Td +/F130_0 9.9626 Tf +(normally) 35.9749 Tj +-334 TJm +(declines) 32.6474 Tj +-333 TJm +(to) 7.7509 Tj +-334 TJm +(decompress) 47.0334 Tj +-333 TJm +(\002les) 16.6077 Tj +-334 TJm +(which) 24.3486 Tj +-333 TJm +(don') 18.2614 Tj +18 TJm +(t) 2.7696 Tj +-334 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-333 TJm +(the) 12.1743 Tj +-334 TJm +(correct) 27.6562 Tj +-333 TJm +(magic) 24.3486 Tj +-334 TJm +(header) 26.5503 Tj +-333 TJm +(bytes.) 23.5217 Tj +-561 TJm +(If) 6.63509 Tj +-334 TJm +(forced) 25.4445 Tj +108 272.461 Td +(\() 3.31755 Tj +[1 0 0 1 111.318 272.461] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -111.318 -272.461] cm +[1 0 0 1 0 0] Tm +0 0 Td +111.318 272.461 Td +/F134_0 9.9626 Tf +(-f) 11.9551 Tj +[1 0 0 1 123.273 272.461] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -123.273 -272.461] cm +[1 0 0 1 0 0] Tm +0 0 Td +123.273 272.461 Td +/F130_0 9.9626 Tf +(\),) 5.8082 Tj +-250 TJm +(ho) 9.9626 Tj +25 TJm +(we) 11.6164 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +40 TJm +(,) 2.49065 Tj +-250 TJm +(it) 5.53921 Tj +-250 TJm +(will) 15.5018 Tj +-250 TJm +(pass) 17.1556 Tj +-250 TJm +(such) 18.2614 Tj +-250 TJm +(\002les) 16.6077 Tj +-250 TJm +(through) 30.9936 Tj +-250 TJm +(unmodi\002ed.) 47.8803 Tj +-310 TJm +(This) 17.7135 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(GNU) 21.579 Tj +[1 0 0 1 412.585 272.461] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -412.585 -272.461] cm +[1 0 0 1 0 0] Tm +0 0 Td +412.585 272.461 Td +/F134_0 9.9626 Tf +(gzip) 23.9102 Tj +[1 0 0 1 436.496 272.461] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -436.496 -272.461] cm +[1 0 0 1 0 0] Tm +0 0 Td +438.986 272.461 Td +/F130_0 9.9626 Tf +(beha) 18.8094 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(es.) 10.7895 Tj +[1 0 0 1 72 270.304] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.8665] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -256.594] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 246.795 Td +/F134_0 9.9626 Tf +(-k) 11.9551 Tj +-600 TJm +(--keep) 35.8654 Tj +[1 0 0 1 125.798 246.795] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -56.2889 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -245.261] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 234.84 Td +/F130_0 9.9626 Tf +(K) 7.193 Tj +25 TJm +(eep) 13.8281 Tj +-250 TJm +(\(don') 21.579 Tj +18 TJm +(t) 2.7696 Tj +-250 TJm +(delete\)) 27.1082 Tj +-250 TJm +(input) 20.4831 Tj +-250 TJm +(\002les) 16.6077 Tj +-250 TJm +(during) 26.0123 Tj +-250 TJm +(compression) 50.3609 Tj +-250 TJm +(or) 8.29885 Tj +-250 TJm +(decompression.) 62.2563 Tj +[1 0 0 1 72 232.683] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.8665] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -218.973] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 209.174 Td +/F134_0 9.9626 Tf +(-s) 11.9551 Tj +-600 TJm +(--small) 41.8429 Tj +[1 0 0 1 131.776 209.174] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -62.2665 -0.1544] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -209.02] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 197.219 Td +/F130_0 9.9626 Tf +(Reduce) 29.8778 Tj +-347 TJm +(memory) 33.2053 Tj +-347 TJm +(usage,) 25.1755 Tj +-371 TJm +(for) 11.6164 Tj +-346 TJm +(compression,) 52.8516 Tj +-371 TJm +(decompression) 59.7656 Tj +-347 TJm +(and) 14.386 Tj +-347 TJm +(testing.) 29.0609 Tj +-1201 TJm +(Files) 19.3773 Tj +-347 TJm +(are) 12.1643 Tj +-347 TJm +(decompressed) 56.4381 Tj +-346 TJm +(and) 14.386 Tj +-347 TJm +(tested) 23.2427 Tj +108 185.264 Td +(using) 21.589 Tj +-388 TJm +(a) 4.42339 Tj +-388 TJm +(modi\002ed) 35.427 Tj +-388 TJm +(algorithm) 38.7446 Tj +-389 TJm +(which) 24.3486 Tj +-388 TJm +(only) 17.7135 Tj +-388 TJm +(requires) 32.0895 Tj +-388 TJm +(2.5) 12.4533 Tj +-388 TJm +(bytes) 21.031 Tj +-388 TJm +(per) 12.7222 Tj +-388 TJm +(block) 22.1369 Tj +-389 TJm +(byte.) 19.6462 Tj +-1448 TJm +(This) 17.7135 Tj +-389 TJm +(means) 25.4544 Tj +-388 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-388 TJm +(\002le) 12.7322 Tj +-388 TJm +(can) 13.8281 Tj +-388 TJm +(be) 9.40469 Tj +108 173.309 Td +(decompressed) 56.4381 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(2300k) 24.9065 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(memory) 33.2053 Tj +65 TJm +(,) 2.49065 Tj +-250 TJm +(albeit) 22.1369 Tj +-250 TJm +(at) 7.193 Tj +-250 TJm +(about) 22.1369 Tj +-250 TJm +(half) 15.4918 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(normal) 28.224 Tj +-250 TJm +(speed.) 25.1755 Tj +[1 0 0 1 72 171.152] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -161.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 151.51 Td +/F130_0 9.9626 Tf +(During) 28.224 Tj +-252 TJm +(compr) 25.4544 Tj +1 TJm +(ession,) 27.3972 Tj +[1 0 0 1 194.09 151.51] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -194.09 -151.51] cm +[1 0 0 1 0 0] Tm +0 0 Td +194.09 151.51 Td +/F134_0 9.9626 Tf +(-s) 11.9551 Tj +[1 0 0 1 206.046 151.51] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -206.046 -151.51] cm +[1 0 0 1 0 0] Tm +0 0 Td +208.551 151.51 Td +/F130_0 9.9626 Tf +(selects) 26.5603 Tj +-251 TJm +(a) 4.42339 Tj +-252 TJm +(block) 22.1369 Tj +-251 TJm +(size) 15.4918 Tj +-252 TJm +(of) 8.29885 Tj +-252 TJm +(200k,) 22.4159 Tj +-251 TJm +(which) 24.3486 Tj +-252 TJm +(limits) 22.7048 Tj +-251 TJm +(memory) 33.2053 Tj +-252 TJm +(use) 13.2801 Tj +-251 TJm +(to) 7.7509 Tj +-252 TJm +(around) 27.6661 Tj +-251 TJm +(the) 12.1743 Tj +-252 TJm +(same) 20.4731 Tj +-251 TJm +(\002gure,) 25.7334 Tj +-252 TJm +(at) 7.193 Tj +108 139.554 Td +(the) 12.1743 Tj +-287 TJm +(e) 4.42339 Tj +15 TJm +(xpense) 27.6661 Tj +-287 TJm +(of) 8.29885 Tj +-288 TJm +(your) 18.2614 Tj +-287 TJm +(compression) 50.3609 Tj +-287 TJm +(ratio.) 20.7521 Tj +-843 TJm +(In) 8.29885 Tj +-287 TJm +(short,) 22.4159 Tj +-297 TJm +(if) 6.08715 Tj +-287 TJm +(your) 18.2614 Tj +-287 TJm +(machine) 33.7533 Tj +-287 TJm +(is) 6.64505 Tj +-287 TJm +(lo) 7.7509 Tj +25 TJm +(w) 7.193 Tj +-287 TJm +(on) 9.9626 Tj +-288 TJm +(memory) 33.2053 Tj +-287 TJm +(\(8) 8.29885 Tj +-287 TJm +(me) 12.1743 Tj +15 TJm +(g) 4.9813 Tj +5 TJm +(abytes) 25.4544 Tj +-287 TJm +(or) 8.29885 Tj +-287 TJm +(less\),) 20.7521 Tj +108 127.599 Td +(use) 13.2801 Tj +[1 0 0 1 123.771 127.599] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -123.771 -127.599] cm +[1 0 0 1 0 0] Tm +0 0 Td +123.771 127.599 Td +/F134_0 9.9626 Tf +(-s) 11.9551 Tj +[1 0 0 1 135.726 127.599] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -135.726 -127.599] cm +[1 0 0 1 0 0] Tm +0 0 Td +138.216 127.599 Td +/F130_0 9.9626 Tf +(for) 11.6164 Tj +-250 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(erything.) 35.696 Tj +-620 TJm +(See) 14.386 Tj +[1 0 0 1 220.079 127.599] cm +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -220.079 -127.599] cm +[1 0 0 1 0 0] Tm +0 0 Td +220.079 127.599 Td +/F130_0 9.9626 Tf +(MEMOR) 37.6387 Tj +65 TJm +(Y) 7.193 Tj +-250 TJm +(MAN) 23.2427 Tj +35 TJm +(A) 7.193 Tj +40 TJm +(GEMENT) 41.5042 Tj +[1 0 0 1 337.946 127.599] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -337.946 -127.599] cm +[1 0 0 1 0 0] Tm +0 0 Td +340.437 127.599 Td +/F130_0 9.9626 Tf +([5]) 11.6164 Tj +[1 0 0 1 352.053 127.599] cm +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -352.053 -127.599] cm +[1 0 0 1 0 0] Tm +0 0 Td +354.544 127.599 Td +/F130_0 9.9626 Tf +(belo) 17.1556 Tj +25 TJm +(w) 7.193 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 125.443] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.8665] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -111.732] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 101.934 Td +/F134_0 9.9626 Tf +(-q) 11.9551 Tj +-600 TJm +(--quiet) 41.8429 Tj +[1 0 0 1 131.776 101.934] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -62.2665 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -100.399] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 89.9784 Td +/F130_0 9.9626 Tf +(Suppress) 35.9749 Tj +-221 TJm +(non-essential) 52.5726 Tj +-220 TJm +(w) 7.193 Tj +10 TJm +(arning) 25.4544 Tj +-221 TJm +(messages.) 40.1194 Tj +-300 TJm +(Messages) 38.7346 Tj +-221 TJm +(pertaining) 40.3983 Tj +-221 TJm +(to) 7.7509 Tj +-220 TJm +(I/O) 13.2801 Tj +-221 TJm +(errors) 23.2328 Tj +-221 TJm +(and) 14.386 Tj +-220 TJm +(other) 20.4731 Tj +-221 TJm +(critical) 27.6661 Tj +-221 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ents) 16.0497 Tj +-221 TJm +(wi) 9.9626 Tj +1 TJm +(ll) 5.53921 Tj +-221 TJm +(not) 12.7322 Tj +108 78.0232 Td +(be) 9.40469 Tj +-250 TJm +(suppressed.) 46.2065 Tj +[1 0 0 1 72 75.8664] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.8664] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -21.1482] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 43.0633 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.332 -50.8518] cm +[1 0 0 1 0 0] Tm +0 0 Td +539.395 50.8518 Td +/F130_0 9.9626 Tf +(4) 4.9813 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 8 8 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 105.519 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -371.59 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +477.109 749.245 Td +/F130_0 9.9626 Tf +(Ho) 12.1743 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(bzip2) 22.1369 Tj +[1 0 0 1 266.071 747.089] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F134_0 9.9626 Tf +(-v) 11.9551 Tj +-600 TJm +(--verbose) 53.798 Tj +[1 0 0 1 143.731 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -74.2217 -0.1544] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -709.883] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 698.082 Td +/F130_0 9.9626 Tf +(V) 7.193 Tj +111 TJm +(erbose) 26.0024 Tj +-323 TJm +(mode) 22.1369 Tj +-322 TJm +(--) 6.63509 Tj +-323 TJm +(sho) 13.8381 Tj +25 TJm +(w) 7.193 Tj +-322 TJm +(the) 12.1743 Tj +-323 TJm +(compression) 50.3609 Tj +-323 TJm +(ratio) 18.2614 Tj +-322 TJm +(for) 11.6164 Tj +-323 TJm +(each) 18.2515 Tj +-322 TJm +(\002le) 12.7322 Tj +-323 TJm +(processed.) 41.7732 Tj +-1056 TJm +(Further) 29.3299 Tj +[1 0 0 1 430.015 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -430.015 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +430.015 698.082 Td +/F134_0 9.9626 Tf +(-v) 11.9551 Tj +[1 0 0 1 441.97 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -441.97 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +441.97 698.082 Td +/F130_0 9.9626 Tf +(') 3.31755 Tj +55 TJm +(s) 3.87545 Tj +-323 TJm +(increase) 32.6375 Tj +-322 TJm +(the) 12.1743 Tj +-323 TJm +(v) 4.9813 Tj +15 TJm +(erbosity) 32.0995 Tj +108 686.127 Td +(le) 7.193 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el,) 9.68365 Tj +-250 TJm +(spe) 13.2801 Tj +25 TJm +(wing) 19.9252 Tj +-250 TJm +(out) 12.7322 Tj +-250 TJm +(lots) 14.396 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(information) 47.0434 Tj +-250 TJm +(which) 24.3486 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(primarily) 37.0808 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(interest) 29.3299 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(diagnostic) 40.9562 Tj +-250 TJm +(purposes.) 37.9077 Tj +[1 0 0 1 72 683.97] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.985] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -670.023] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 660.224 Td +/F134_0 9.9626 Tf +(-L) 11.9551 Tj +-600 TJm +(--license) 53.798 Tj +-600 TJm +(-V) 11.9551 Tj +-600 TJm +(--version) 53.798 Tj +[1 0 0 1 221.44 660.224] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -151.93 -0.1544] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -660.07] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 648.269 Td +/F130_0 9.9626 Tf +(Display) 30.9936 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(softw) 22.1369 Tj +10 TJm +(are) 12.1643 Tj +-250 TJm +(v) 4.9813 Tj +15 TJm +(ersion,) 26.8392 Tj +-250 TJm +(license) 27.6661 Tj +-250 TJm +(terms) 22.1369 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(conditions.) 44.0048 Tj +[1 0 0 1 72 646.112] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.985] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -632.165] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 622.366 Td +/F134_0 9.9626 Tf +(-1) 11.9551 Tj +[1 0 0 1 83.9552 622.366] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -83.9552 -622.366] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.4458 622.366 Td +/F130_0 9.9626 Tf +(\(or) 11.6164 Tj +[1 0 0 1 100.553 622.366] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -100.553 -622.366] cm +[1 0 0 1 0 0] Tm +0 0 Td +100.553 622.366 Td +/F134_0 9.9626 Tf +(--fast) 35.8654 Tj +[1 0 0 1 136.418 622.366] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -136.418 -622.366] cm +[1 0 0 1 0 0] Tm +0 0 Td +136.418 622.366 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 152.468 622.366] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -152.468 -622.366] cm +[1 0 0 1 0 0] Tm +0 0 Td +152.468 622.366 Td +/F134_0 9.9626 Tf +(-9) 11.9551 Tj +[1 0 0 1 164.423 622.366] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -164.423 -622.366] cm +[1 0 0 1 0 0] Tm +0 0 Td +166.914 622.366 Td +/F130_0 9.9626 Tf +(\(or) 11.6164 Tj +[1 0 0 1 181.021 622.366] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -181.021 -622.366] cm +[1 0 0 1 0 0] Tm +0 0 Td +181.021 622.366 Td +/F134_0 9.9626 Tf +(-best) 29.8878 Tj +[1 0 0 1 210.909 622.366] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.909 -622.366] cm +[1 0 0 1 0 0] Tm +0 0 Td +210.909 622.366 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +[1 0 0 1 214.226 622.366] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -142.226 -1.7832] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -620.583] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 610.411 Td +/F130_0 9.9626 Tf +(Set) 12.7322 Tj +-288 TJm +(the) 12.1743 Tj +-289 TJm +(block) 22.1369 Tj +-288 TJm +(size) 15.4918 Tj +-288 TJm +(to) 7.7509 Tj +-288 TJm +(100) 14.9439 Tj +-289 TJm +(k,) 7.47195 Tj +-298 TJm +(200) 14.9439 Tj +-288 TJm +(k) 4.9813 Tj +-288 TJm +(...) 7.47195 Tj +-850 TJm +(900) 14.9439 Tj +-288 TJm +(k) 4.9813 Tj +-288 TJm +(when) 21.579 Tj +-289 TJm +(compressing.) 52.8516 Tj +-849 TJm +(Has) 15.4918 Tj +-289 TJm +(no) 9.9626 Tj +-288 TJm +(ef) 7.74094 Tj +25 TJm +(fect) 14.9339 Tj +-288 TJm +(when) 21.579 Tj +-288 TJm +(decompressing.) 62.2563 Tj +-850 TJm +(See) 14.386 Tj +[1 0 0 1 108 598.456] cm +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -108 -598.456] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 598.456 Td +/F130_0 9.9626 Tf +(MEMOR) 37.6387 Tj +65 TJm +(Y) 7.193 Tj +-297 TJm +(MAN) 23.2427 Tj +35 TJm +(A) 7.193 Tj +40 TJm +(GEMENT) 41.5042 Tj +[1 0 0 1 226.338 598.456] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -226.338 -598.456] cm +[1 0 0 1 0 0] Tm +0 0 Td +229.3 598.456 Td +/F130_0 9.9626 Tf +([5]) 11.6164 Tj +[1 0 0 1 240.916 598.456] cm +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -240.916 -598.456] cm +[1 0 0 1 0 0] Tm +0 0 Td +243.878 598.456 Td +/F130_0 9.9626 Tf +(belo) 17.1556 Tj +25 TJm +(w) 7.193 Tj +65 TJm +(.) 2.49065 Tj +-904 TJm +(The) 15.4918 Tj +[1 0 0 1 297.278 598.456] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -297.278 -598.456] cm +[1 0 0 1 0 0] Tm +0 0 Td +297.278 598.456 Td +/F134_0 9.9626 Tf +(--fast) 35.8654 Tj +[1 0 0 1 333.144 598.456] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -333.144 -598.456] cm +[1 0 0 1 0 0] Tm +0 0 Td +336.106 598.456 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 353.454 598.456] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -353.454 -598.456] cm +[1 0 0 1 0 0] Tm +0 0 Td +353.454 598.456 Td +/F134_0 9.9626 Tf +(--best) 35.8654 Tj +[1 0 0 1 389.319 598.456] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -389.319 -598.456] cm +[1 0 0 1 0 0] Tm +0 0 Td +392.281 598.456 Td +/F130_0 9.9626 Tf +(aliases) 26.5603 Tj +-297 TJm +(are) 12.1643 Tj +-298 TJm +(primarily) 37.0808 Tj +-297 TJm +(for) 11.6164 Tj +-297 TJm +(GNU) 21.579 Tj +[1 0 0 1 516.09 598.456] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -516.09 -598.456] cm +[1 0 0 1 0 0] Tm +0 0 Td +516.09 598.456 Td +/F134_0 9.9626 Tf +(gzip) 23.9102 Tj +[1 0 0 1 540 598.456] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -598.456] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 586.501 Td +/F130_0 9.9626 Tf +(compatibility) 53.1405 Tj +65 TJm +(.) 2.49065 Tj +-356 TJm +(In) 8.29885 Tj +-265 TJm +(particular) 38.1767 Tj +40 TJm +(,) 2.49065 Tj +[1 0 0 1 220.423 586.501] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -220.423 -586.501] cm +[1 0 0 1 0 0] Tm +0 0 Td +220.423 586.501 Td +/F134_0 9.9626 Tf +(--fast) 35.8654 Tj +[1 0 0 1 256.288 586.501] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -256.288 -586.501] cm +[1 0 0 1 0 0] Tm +0 0 Td +258.932 586.501 Td +/F130_0 9.9626 Tf +(doesn') 26.5603 Tj +18 TJm +(t) 2.7696 Tj +-265 TJm +(mak) 17.1556 Tj +10 TJm +(e) 4.42339 Tj +-266 TJm +(things) 24.3586 Tj +-265 TJm +(signi\002cantly) 49.2651 Tj +-265 TJm +(f) 3.31755 Tj +10 TJm +(aster) 18.8094 Tj +55 TJm +(.) 2.49065 Tj +-712 TJm +(And) 17.1556 Tj +[1 0 0 1 444.622 586.501] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.622 -586.501] cm +[1 0 0 1 0 0] Tm +0 0 Td +444.622 586.501 Td +/F134_0 9.9626 Tf +(--best) 35.8654 Tj +[1 0 0 1 480.487 586.501] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -480.487 -586.501] cm +[1 0 0 1 0 0] Tm +0 0 Td +483.131 586.501 Td +/F130_0 9.9626 Tf +(merely) 27.6661 Tj +-265 TJm +(selects) 26.5603 Tj +108 574.546 Td +(the) 12.1743 Tj +-250 TJm +(def) 12.7222 Tj +10 TJm +(ault) 14.9439 Tj +-250 TJm +(beha) 18.8094 Tj +20 TJm +(viour) 21.031 Tj +55 TJm +(.) 2.49065 Tj +[1 0 0 1 72 574.446] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.985] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -560.498] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 548.643 Td +/F134_0 9.9626 Tf +(--) 11.9551 Tj +[1 0 0 1 83.9552 548.643] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -14.4458 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -548.643] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 536.688 Td +/F130_0 9.9626 Tf +(T) 6.08715 Tj +35 TJm +(reats) 18.8094 Tj +-261 TJm +(all) 9.9626 Tj +-261 TJm +(subsequent) 44.2738 Tj +-260 TJm +(ar) 7.74094 Tj +18 TJm +(guments) 33.7633 Tj +-261 TJm +(as) 8.29885 Tj +-261 TJm +(\002le) 12.7322 Tj +-261 TJm +(names,) 27.9451 Tj +-263 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(en) 9.40469 Tj +-261 TJm +(if) 6.08715 Tj +-261 TJm +(the) 12.1743 Tj +15 TJm +(y) 4.9813 Tj +-260 TJm +(start) 17.1556 Tj +-261 TJm +(with) 17.7135 Tj +-261 TJm +(a) 4.42339 Tj +-261 TJm +(dash.) 20.7521 Tj +-685 TJm +(This) 17.7135 Tj +-260 TJm +(is) 6.64505 Tj +-261 TJm +(so) 8.85675 Tj +-261 TJm +(you) 14.9439 Tj +-261 TJm +(can) 13.8281 Tj +-260 TJm +(handle) 26.5603 Tj +-261 TJm +(\002les) 16.6077 Tj +108 524.732 Td +(with) 17.7135 Tj +-250 TJm +(names) 25.4544 Tj +-250 TJm +(be) 9.40469 Tj +15 TJm +(ginning) 30.4457 Tj +-250 TJm +(with) 17.7135 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(dash,) 20.7521 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(e) 4.42339 Tj +15 TJm +(xample:) 32.0995 Tj +[1 0 0 1 302.27 524.732] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -302.27 -524.732] cm +[1 0 0 1 0 0] Tm +0 0 Td +302.27 524.732 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +-600 TJm +(--) 11.9551 Tj +-600 TJm +(-myfilename) 65.7532 Tj +[1 0 0 1 421.821 524.732] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -421.821 -524.732] cm +[1 0 0 1 0 0] Tm +0 0 Td +421.821 524.732 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 522.576] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.985] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -508.628] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 498.83 Td +/F134_0 9.9626 Tf +(--repetitive-fast) 101.619 Tj +[1 0 0 1 173.619 498.83] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -173.619 -498.83] cm +[1 0 0 1 0 0] Tm +0 0 Td +173.619 498.83 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 178.6 498.83] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -183.582 -498.83] cm +[1 0 0 1 0 0] Tm +0 0 Td +183.582 498.83 Td +/F134_0 9.9626 Tf +(--repetitive-best) 101.619 Tj +[1 0 0 1 285.2 498.83] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -215.691 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -497.295] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 486.874 Td +/F130_0 9.9626 Tf +(These) 23.7907 Tj +-207 TJm +(\003ags) 18.8194 Tj +-206 TJm +(are) 12.1643 Tj +-207 TJm +(redundant) 39.8404 Tj +-207 TJm +(in) 7.7509 Tj +-206 TJm +(v) 4.9813 Tj +15 TJm +(ersions) 28.224 Tj +-207 TJm +(0.9.5) 19.9252 Tj +-207 TJm +(and) 14.386 Tj +-206 TJm +(abo) 14.386 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e.) 6.91404 Tj +-591 TJm +(The) 15.4918 Tj +15 TJm +(y) 4.9813 Tj +-207 TJm +(pro) 13.2801 Tj +15 TJm +(vided) 22.1369 Tj +-207 TJm +(some) 21.031 Tj +-207 TJm +(c) 4.42339 Tj +1 TJm +(o) 4.9813 Tj +-1 TJm +(a) 4.42339 Tj +1 TJm +(rse) 11.6164 Tj +-207 TJm +(control) 28.224 Tj +-207 TJm +(o) 4.9813 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-207 TJm +(the) 12.1743 Tj +-206 TJm +(beha) 18.8094 Tj +20 TJm +(viour) 21.031 Tj +108 474.919 Td +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-251 TJm +(sorting) 27.6761 Tj +-250 TJm +(algorithm) 38.7446 Tj +-250 TJm +(in) 7.7509 Tj +-251 TJm +(earlier) 25.4445 Tj +-250 TJm +(v) 4.9813 Tj +15 TJm +(ersions,) 30.7147 Tj +-250 TJm +(which) 24.3486 Tj +-251 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-250 TJm +(sometimes) 42.62 Tj +-250 TJm +(useful.) 26.8392 Tj +-622 TJm +(0.9.5) 19.9252 Tj +-251 TJm +(and) 14.386 Tj +-250 TJm +(abo) 14.386 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-250 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-251 TJm +(an) 9.40469 Tj +-250 TJm +(impro) 23.8007 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(ed) 9.40469 Tj +108 462.964 Td +(algorithm) 38.7446 Tj +-250 TJm +(which) 24.3486 Tj +-250 TJm +(renders) 29.3199 Tj +-250 TJm +(these) 20.4731 Tj +-250 TJm +(\003ags) 18.8194 Tj +-250 TJm +(irrele) 21.0211 Tj +25 TJm +(v) 4.9813 Tj +25 TJm +(ant.) 14.6649 Tj +[1 0 0 1 72 460.807] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.985] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -436.897] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 414.264 Td +/F122_0 20.6585 Tf +(2.5.) 34.4584 Tj +-278 TJm +(MEMOR) 79.184 Tj +50 TJm +(Y) 13.7792 Tj +-278 TJm +(MANA) 61.9548 Tj +50 TJm +(GEMENT) 88.3771 Tj +[1 0 0 1 72 414.005] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -404.043] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 392.346 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 101.888 392.346] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -101.888 -392.346] cm +[1 0 0 1 0 0] Tm +0 0 Td +104.454 392.346 Td +/F130_0 9.9626 Tf +(compresses) 45.9276 Tj +-258 TJm +(lar) 10.5105 Tj +18 TJm +(ge) 9.40469 Tj +-257 TJm +(\002les) 16.6077 Tj +-258 TJm +(in) 7.7509 Tj +-257 TJm +(blocks.) 28.503 Tj +-666 TJm +(The) 15.4918 Tj +-257 TJm +(block) 22.1369 Tj +-258 TJm +(size) 15.4918 Tj +-258 TJm +(af) 7.74094 Tj +25 TJm +(fects) 18.8094 Tj +-257 TJm +(both) 17.7135 Tj +-258 TJm +(the) 12.1743 Tj +-257 TJm +(compression) 50.3609 Tj +-258 TJm +(ratio) 18.2614 Tj +-257 TJm +(achie) 21.0211 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ed,) 11.8953 Tj +-260 TJm +(and) 14.386 Tj +-258 TJm +(the) 12.1743 Tj +-257 TJm +(amount) 29.8878 Tj +72 380.391 Td +(of) 8.29885 Tj +-215 TJm +(memory) 33.2053 Tj +-215 TJm +(needed) 28.2141 Tj +-215 TJm +(for) 11.6164 Tj +-215 TJm +(compression) 50.3609 Tj +-214 TJm +(and) 14.386 Tj +-215 TJm +(decompression.) 62.2563 Tj +-597 TJm +(The) 15.4918 Tj +-215 TJm +(\003ags) 18.8194 Tj +[1 0 0 1 337.719 380.391] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -337.719 -380.391] cm +[1 0 0 1 0 0] Tm +0 0 Td +337.719 380.391 Td +/F134_0 9.9626 Tf +(-1) 11.9551 Tj +[1 0 0 1 349.674 380.391] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -349.674 -380.391] cm +[1 0 0 1 0 0] Tm +0 0 Td +351.815 380.391 Td +/F130_0 9.9626 Tf +(through) 30.9936 Tj +[1 0 0 1 384.95 380.391] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -384.95 -380.391] cm +[1 0 0 1 0 0] Tm +0 0 Td +384.95 380.391 Td +/F134_0 9.9626 Tf +(-9) 11.9551 Tj +[1 0 0 1 396.905 380.391] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -396.905 -380.391] cm +[1 0 0 1 0 0] Tm +0 0 Td +399.046 380.391 Td +/F130_0 9.9626 Tf +(specify) 28.772 Tj +-215 TJm +(the) 12.1743 Tj +-215 TJm +(block) 22.1369 Tj +-215 TJm +(size) 15.4918 Tj +-215 TJm +(to) 7.7509 Tj +-214 TJm +(be) 9.40469 Tj +-215 TJm +(100,000) 32.3785 Tj +72 368.435 Td +(bytes) 21.031 Tj +-278 TJm +(through) 30.9936 Tj +-277 TJm +(900,000) 32.3785 Tj +-278 TJm +(bytes) 21.031 Tj +-278 TJm +(\(the) 15.4918 Tj +-277 TJm +(def) 12.7222 Tj +10 TJm +(ault\)) 18.2614 Tj +-278 TJm +(respecti) 30.9837 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ely) 12.1743 Tj +65 TJm +(.) 2.49065 Tj +-786 TJm +(At) 9.9626 Tj +-278 TJm +(decompression) 59.7656 Tj +-278 TJm +(time,) 20.2042 Tj +-284 TJm +(the) 12.1743 Tj +-278 TJm +(block) 22.1369 Tj +-278 TJm +(size) 15.4918 Tj +-277 TJm +(used) 18.2614 Tj +-278 TJm +(for) 11.6164 Tj +-278 TJm +(compression) 50.3609 Tj +72 356.48 Td +(is) 6.64505 Tj +-243 TJm +(read) 17.1456 Tj +-242 TJm +(from) 19.3673 Tj +-243 TJm +(the) 12.1743 Tj +-242 TJm +(header) 26.5503 Tj +-243 TJm +(of) 8.29885 Tj +-242 TJm +(the) 12.1743 Tj +-243 TJm +(compressed) 47.0334 Tj +-242 TJm +(\002le,) 15.2229 Tj +-244 TJm +(and) 14.386 Tj +[1 0 0 1 275.174 356.48] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -275.174 -356.48] cm +[1 0 0 1 0 0] Tm +0 0 Td +275.174 356.48 Td +/F134_0 9.9626 Tf +(bunzip2) 41.8429 Tj +[1 0 0 1 317.017 356.48] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -317.017 -356.48] cm +[1 0 0 1 0 0] Tm +0 0 Td +319.433 356.48 Td +/F130_0 9.9626 Tf +(then) 17.1556 Tj +-243 TJm +(all) 9.9626 Tj +1 TJm +(o) 4.9813 Tj +-1 TJm +(c) 4.42339 Tj +1 TJm +(ates) 15.4918 Tj +-243 TJm +(itself) 19.9252 Tj +-242 TJm +(just) 14.396 Tj +-243 TJm +(enough) 29.3299 Tj +-243 TJm +(memory) 33.2053 Tj +-242 TJm +(to) 7.7509 Tj +-243 TJm +(decompress) 47.0334 Tj +72 344.525 Td +(the) 12.1743 Tj +-303 TJm +(\002le.) 15.2229 Tj +-940 TJm +(Since) 22.1369 Tj +-304 TJm +(block) 22.1369 Tj +-303 TJm +(sizes) 19.3673 Tj +-303 TJm +(are) 12.1643 Tj +-303 TJm +(stored) 24.3486 Tj +-304 TJm +(in) 7.7509 Tj +-303 TJm +(compressed) 47.0334 Tj +-303 TJm +(\002les,) 19.0983 Tj +-317 TJm +(it) 5.53921 Tj +-303 TJm +(follo) 18.8194 Tj +25 TJm +(ws) 11.0684 Tj +-304 TJm +(that) 14.9439 Tj +-303 TJm +(the) 12.1743 Tj +-303 TJm +(\003ags) 18.8194 Tj +[1 0 0 1 406.35 344.525] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -406.35 -344.525] cm +[1 0 0 1 0 0] Tm +0 0 Td +406.35 344.525 Td +/F134_0 9.9626 Tf +(-1) 11.9551 Tj +[1 0 0 1 418.305 344.525] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -418.305 -344.525] cm +[1 0 0 1 0 0] Tm +0 0 Td +421.327 344.525 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +[1 0 0 1 432.1 344.525] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -432.1 -344.525] cm +[1 0 0 1 0 0] Tm +0 0 Td +432.1 344.525 Td +/F134_0 9.9626 Tf +(-9) 11.9551 Tj +[1 0 0 1 444.055 344.525] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.055 -344.525] cm +[1 0 0 1 0 0] Tm +0 0 Td +447.077 344.525 Td +/F130_0 9.9626 Tf +(are) 12.1643 Tj +-303 TJm +(irrele) 21.0211 Tj +25 TJm +(v) 4.9813 Tj +25 TJm +(ant) 12.1743 Tj +-304 TJm +(to) 7.7509 Tj +-303 TJm +(and) 14.386 Tj +-303 TJm +(so) 8.85675 Tj +72 332.57 Td +(ignored) 30.4357 Tj +-250 TJm +(during) 26.0123 Tj +-250 TJm +(decompression.) 62.2563 Tj +[1 0 0 1 72 330.413] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -320.45] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 310.652 Td +/F130_0 9.9626 Tf +(Compression) 52.5826 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(decompression) 59.7656 Tj +-250 TJm +(requirements,) 54.5054 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(bytes,) 23.5217 Tj +-250 TJm +(can) 13.8281 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(estimated) 38.1866 Tj +-250 TJm +(as:) 11.0684 Tj +[1 0 0 1 72 308.495] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -60.7721] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 59.7758 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 56.1893] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -299.13] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 299.13 Td +/F134_0 9.9626 Tf +(Compression:) 71.7307 Tj +-1278 TJm +(400k) 23.9102 Tj +-426 TJm +(+) 5.97756 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(8) 5.97756 Tj +-426 TJm +(x) 5.97756 Tj +-426 TJm +(block) 29.8878 Tj +-426 TJm +(size) 23.9102 Tj +-426 TJm +(\)) 5.97756 Tj +90 275.22 Td +(Decompression:) 83.6858 Tj +-426 TJm +(100k) 23.9102 Tj +-426 TJm +(+) 5.97756 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(4) 5.97756 Tj +-426 TJm +(x) 5.97756 Tj +-426 TJm +(block) 29.8878 Tj +-426 TJm +(size) 23.9102 Tj +-426 TJm +(\),) 11.9551 Tj +-426 TJm +(or) 11.9551 Tj +153.66 263.265 Td +(100k) 23.9102 Tj +-426 TJm +(+) 5.97756 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(2.5) 17.9327 Tj +-426 TJm +(x) 5.97756 Tj +-426 TJm +(block) 29.8878 Tj +-426 TJm +(size) 23.9102 Tj +-426 TJm +(\)) 5.97756 Tj +[1 0 0 1 72 247.723] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -237.761] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 225.805 Td +/F130_0 9.9626 Tf +(Lar) 13.8281 Tj +18 TJm +(ger) 12.7222 Tj +-292 TJm +(block) 22.1369 Tj +-292 TJm +(sizes) 19.3673 Tj +-291 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-292 TJm +(rapidly) 28.224 Tj +-292 TJm +(diminishing) 47.6113 Tj +-292 TJm +(mar) 15.4918 Tj +18 TJm +(ginal) 19.9252 Tj +-291 TJm +(returns.) 30.1568 Tj +-871 TJm +(Most) 20.4831 Tj +-292 TJm +(of) 8.29885 Tj +-291 TJm +(the) 12.1743 Tj +-292 TJm +(compression) 50.3609 Tj +-292 TJm +(comes) 25.4544 Tj +-292 TJm +(from) 19.3673 Tj +-291 TJm +(the) 12.1743 Tj +-292 TJm +(\002rst) 15.5018 Tj +-292 TJm +(tw) 9.9626 Tj +10 TJm +(o) 4.9813 Tj +-292 TJm +(or) 8.29885 Tj +72 213.85 Td +(three) 19.9152 Tj +-232 TJm +(hundred) 32.6474 Tj +-232 TJm +(k) 4.9813 Tj +-232 TJm +(of) 8.29885 Tj +-232 TJm +(block) 22.1369 Tj +-232 TJm +(size,) 17.9825 Tj +-235 TJm +(a) 4.42339 Tj +-232 TJm +(f) 3.31755 Tj +10 TJm +(act) 11.6164 Tj +-232 TJm +(w) 7.193 Tj +10 TJm +(orth) 16.0497 Tj +-232 TJm +(bearing) 29.8778 Tj +-232 TJm +(in) 7.7509 Tj +-232 TJm +(mind) 20.4831 Tj +-232 TJm +(when) 21.579 Tj +-231 TJm +(using) 21.589 Tj +[1 0 0 1 354.025 213.85] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -354.025 -213.85] cm +[1 0 0 1 0 0] Tm +0 0 Td +354.025 213.85 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 383.913 213.85] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -383.913 -213.85] cm +[1 0 0 1 0 0] Tm +0 0 Td +386.223 213.85 Td +/F130_0 9.9626 Tf +(on) 9.9626 Tj +-232 TJm +(small) 21.589 Tj +-232 TJm +(machines.) 40.1194 Tj +-304 TJm +(It) 6.08715 Tj +-232 TJm +(is) 6.64505 Tj +-232 TJm +(also) 16.0497 Tj +-231 TJm +(important) 38.7446 Tj +72 201.895 Td +(to) 7.7509 Tj +-250 TJm +(appreciate) 40.9363 Tj +-250 TJm +(that) 14.9439 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(decompression) 59.7656 Tj +-250 TJm +(memory) 33.2053 Tj +-250 TJm +(requirement) 48.1393 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(set) 11.0684 Tj +-250 TJm +(at) 7.193 Tj +-250 TJm +(compression) 50.3609 Tj +-250 TJm +(time) 17.7135 Tj +-250 TJm +(by) 9.9626 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(choice) 26.0024 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(block) 22.1369 Tj +-250 TJm +(size.) 17.9825 Tj +[1 0 0 1 72 199.738] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -189.776] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 179.977 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-388 TJm +(\002les) 16.6077 Tj +-389 TJm +(compressed) 47.0334 Tj +-388 TJm +(with) 17.7135 Tj +-389 TJm +(the) 12.1743 Tj +-388 TJm +(def) 12.7222 Tj +10 TJm +(ault) 14.9439 Tj +-389 TJm +(900k) 19.9252 Tj +-388 TJm +(block) 22.1369 Tj +-389 TJm +(size,) 17.9825 Tj +[1 0 0 1 302.002 179.977] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -302.002 -179.977] cm +[1 0 0 1 0 0] Tm +0 0 Td +302.002 179.977 Td +/F134_0 9.9626 Tf +(bunzip2) 41.8429 Tj +[1 0 0 1 343.846 179.977] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -343.846 -179.977] cm +[1 0 0 1 0 0] Tm +0 0 Td +347.715 179.977 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-388 TJm +(require) 28.2141 Tj +-389 TJm +(about) 22.1369 Tj +-388 TJm +(3700) 19.9252 Tj +-389 TJm +(kbytes) 26.0123 Tj +-388 TJm +(to) 7.7509 Tj +-389 TJm +(decompress.) 49.5241 Tj +72 168.022 Td +(T) 6.08715 Tj +80 TJm +(o) 4.9813 Tj +-424 TJm +(support) 29.8878 Tj +-425 TJm +(decompression) 59.7656 Tj +-424 TJm +(of) 8.29885 Tj +-424 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-425 TJm +(\002l) 8.30881 Tj +1 TJm +(e) 4.42339 Tj +-425 TJm +(on) 9.9626 Tj +-424 TJm +(a) 4.42339 Tj +-424 TJm +(4) 4.9813 Tj +-425 TJm +(me) 12.1743 Tj +15 TJm +(g) 4.9813 Tj +5 TJm +(abyte) 21.579 Tj +-424 TJm +(machine,) 36.2439 Tj +[1 0 0 1 348.272 168.022] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -348.272 -168.022] cm +[1 0 0 1 0 0] Tm +0 0 Td +348.272 168.022 Td +/F134_0 9.9626 Tf +(bunzip2) 41.8429 Tj +[1 0 0 1 390.115 168.022] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -390.115 -168.022] cm +[1 0 0 1 0 0] Tm +0 0 Td +394.342 168.022 Td +/F130_0 9.9626 Tf +(has) 13.2801 Tj +-424 TJm +(an) 9.40469 Tj +-425 TJm +(option) 25.4644 Tj +-424 TJm +(to) 7.7509 Tj +-424 TJm +(decompress) 47.0334 Tj +-424 TJm +(using) 21.589 Tj +72 156.067 Td +(approximately) 57.5539 Tj +-281 TJm +(half) 15.4918 Tj +-281 TJm +(this) 14.396 Tj +-280 TJm +(amount) 29.8878 Tj +-281 TJm +(of) 8.29885 Tj +-281 TJm +(memory) 33.2053 Tj +65 TJm +(,) 2.49065 Tj +-288 TJm +(about) 22.1369 Tj +-281 TJm +(2300) 19.9252 Tj +-281 TJm +(kbytes.) 28.503 Tj +-805 TJm +(Decompression) 61.9773 Tj +-280 TJm +(speed) 22.6848 Tj +-281 TJm +(is) 6.64505 Tj +-281 TJm +(also) 16.0497 Tj +-281 TJm +(halv) 17.1556 Tj +15 TJm +(ed,) 11.8953 Tj +-288 TJm +(so) 8.85675 Tj +-281 TJm +(you) 14.9439 Tj +-281 TJm +(should) 26.5703 Tj +72 144.112 Td +(use) 13.2801 Tj +-250 TJm +(this) 14.396 Tj +-250 TJm +(option) 25.4644 Tj +-250 TJm +(only) 17.7135 Tj +-250 TJm +(where) 24.3386 Tj +-250 TJm +(necessary) 38.7246 Tj +65 TJm +(.) 2.49065 Tj +-620 TJm +(The) 15.4918 Tj +-250 TJm +(rele) 14.9339 Tj +25 TJm +(v) 4.9813 Tj +25 TJm +(ant) 12.1743 Tj +-250 TJm +(\003ag) 14.9439 Tj +-250 TJm +(is) 6.64505 Tj +[1 0 0 1 305.024 144.112] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -305.024 -144.112] cm +[1 0 0 1 0 0] Tm +0 0 Td +305.024 144.112 Td +/F134_0 9.9626 Tf +(-s) 11.9551 Tj +[1 0 0 1 316.979 144.112] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -316.979 -144.112] cm +[1 0 0 1 0 0] Tm +0 0 Td +316.979 144.112 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 141.955] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -131.992] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 122.194 Td +/F130_0 9.9626 Tf +(In) 8.29885 Tj +-204 TJm +(general,) 31.8106 Tj +-214 TJm +(try) 11.0684 Tj +-204 TJm +(and) 14.386 Tj +-205 TJm +(use) 13.2801 Tj +-204 TJm +(the) 12.1743 Tj +-204 TJm +(lar) 10.5105 Tj +18 TJm +(gest) 16.0497 Tj +-205 TJm +(block) 22.1369 Tj +-204 TJm +(size) 15.4918 Tj +-205 TJm +(memory) 33.2053 Tj +-204 TJm +(constraints) 43.1679 Tj +-204 TJm +(allo) 14.9439 Tj +25 TJm +(w) 7.193 Tj +65 TJm +(,) 2.49065 Tj +-214 TJm +(since) 20.4731 Tj +-204 TJm +(that) 14.9439 Tj +-205 TJm +(maximises) 42.62 Tj +-204 TJm +(the) 12.1743 Tj +-204 TJm +(compression) 50.3609 Tj +-205 TJm +(achie) 21.0211 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ed.) 11.8953 Tj +72 110.239 Td +(Compression) 52.5826 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(decompression) 59.7656 Tj +-250 TJm +(speed) 22.6848 Tj +-250 TJm +(are) 12.1643 Tj +-250 TJm +(virtually) 33.7633 Tj +-250 TJm +(unaf) 17.7035 Tj +25 TJm +(fected) 24.3386 Tj +-250 TJm +(by) 9.9626 Tj +-250 TJm +(block) 22.1369 Tj +-250 TJm +(size.) 17.9825 Tj +[1 0 0 1 72 108.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -98.1193] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 88.321 Td +/F130_0 9.9626 Tf +(Another) 32.6474 Tj +-296 TJm +(signi\002cant) 41.5142 Tj +-296 TJm +(point) 20.4831 Tj +-295 TJm +(applies) 28.224 Tj +-296 TJm +(to) 7.7509 Tj +-296 TJm +(\002les) 16.6077 Tj +-296 TJm +(which) 24.3486 Tj +-296 TJm +(\002t) 8.30881 Tj +-296 TJm +(in) 7.7509 Tj +-296 TJm +(a) 4.42339 Tj +-295 TJm +(single) 23.8007 Tj +-296 TJm +(block) 22.1369 Tj +-296 TJm +(--) 6.63509 Tj +-296 TJm +(that) 14.9439 Tj +-296 TJm +(means) 25.4544 Tj +-296 TJm +(most) 19.3773 Tj +-295 TJm +(\002les) 16.6077 Tj +-296 TJm +(you') 18.2614 Tj +50 TJm +(d) 4.9813 Tj +-296 TJm +(encounter) 39.2825 Tj +-296 TJm +(using) 21.589 Tj +-296 TJm +(a) 4.42339 Tj +72 76.3658 Td +(lar) 10.5105 Tj +18 TJm +(ge) 9.40469 Tj +-290 TJm +(block) 22.1369 Tj +-290 TJm +(size.) 17.9825 Tj +-859 TJm +(The) 15.4918 Tj +-290 TJm +(amount) 29.8878 Tj +-290 TJm +(of) 8.29885 Tj +-290 TJm +(real) 14.9339 Tj +-290 TJm +(memory) 33.2053 Tj +-289 TJm +(touched) 31.5416 Tj +-290 TJm +(is) 6.64505 Tj +-290 TJm +(proportional) 49.2551 Tj +-290 TJm +(to) 7.7509 Tj +-290 TJm +(the) 12.1743 Tj +-290 TJm +(size) 15.4918 Tj +-290 TJm +(of) 8.29885 Tj +-290 TJm +(the) 12.1743 Tj +-289 TJm +(\002le,) 15.2229 Tj +-300 TJm +(since) 20.4731 Tj +-290 TJm +(the) 12.1743 Tj +-290 TJm +(\002le) 12.7322 Tj +-290 TJm +(is) 6.64505 Tj +-290 TJm +(smaller) 29.3299 Tj +[1 0 0 1 72 50.8518] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 43.0633 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.332 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +539.395 50.9514 Td +/F130_0 9.9626 Tf +(5) 4.9813 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 9 9 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 105.519 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -371.59 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +477.109 749.245 Td +/F130_0 9.9626 Tf +(Ho) 12.1743 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(bzip2) 22.1369 Tj +[1 0 0 1 266.071 747.089] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -741.554] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F130_0 9.9626 Tf +(than) 17.1556 Tj +-362 TJm +(a) 4.42339 Tj +-362 TJm +(block.) 24.6275 Tj +-1293 TJm +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-362 TJm +(e) 4.42339 Tj +15 TJm +(xample,) 31.8205 Tj +-390 TJm +(compressing) 50.3609 Tj +-362 TJm +(a) 4.42339 Tj +-362 TJm +(\002le) 12.7322 Tj +-362 TJm +(20,000) 27.3972 Tj +-362 TJm +(bytes) 21.031 Tj +-362 TJm +(long) 17.7135 Tj +-362 TJm +(with) 17.7135 Tj +-362 TJm +(the) 12.1743 Tj +-362 TJm +(\003ag) 14.9439 Tj +[1 0 0 1 406.528 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -406.528 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +406.528 710.037 Td +/F134_0 9.9626 Tf +(-9) 11.9551 Tj +[1 0 0 1 418.483 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -418.483 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +422.09 710.037 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-362 TJm +(cause) 22.1269 Tj +-362 TJm +(the) 12.1743 Tj +-362 TJm +(compressor) 45.9276 Tj +-362 TJm +(to) 7.7509 Tj +72 698.082 Td +(allocate) 30.9837 Tj +-271 TJm +(around) 27.6661 Tj +-272 TJm +(7600k) 24.9065 Tj +-271 TJm +(of) 8.29885 Tj +-272 TJm +(memory) 33.2053 Tj +65 TJm +(,) 2.49065 Tj +-277 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-271 TJm +(only) 17.7135 Tj +-272 TJm +(touch) 22.1369 Tj +-271 TJm +(400k) 19.9252 Tj +-272 TJm +(+) 5.61891 Tj +-271 TJm +(20000) 24.9065 Tj +-272 TJm +(*) 4.9813 Tj +-271 TJm +(8) 4.9813 Tj +-272 TJm +(=) 5.61891 Tj +-271 TJm +(560) 14.9439 Tj +-272 TJm +(kbytes) 26.0123 Tj +-271 TJm +(of) 8.29885 Tj +-272 TJm +(it.) 8.02986 Tj +-748 TJm +(Similarly) 37.0908 Tj +65 TJm +(,) 2.49065 Tj +-277 TJm +(the) 12.1743 Tj +-272 TJm +(decompressor) 55.3323 Tj +72 686.127 Td +(will) 15.5018 Tj +-250 TJm +(allocate) 30.9837 Tj +-250 TJm +(3700k) 24.9065 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-250 TJm +(only) 17.7135 Tj +-250 TJm +(touch) 22.1369 Tj +-250 TJm +(100k) 19.9252 Tj +-250 TJm +(+) 5.61891 Tj +-250 TJm +(20000) 24.9065 Tj +-250 TJm +(*) 4.9813 Tj +-250 TJm +(4) 4.9813 Tj +-250 TJm +(=) 5.61891 Tj +-250 TJm +(180) 14.9439 Tj +-250 TJm +(kbytes.) 28.503 Tj +[1 0 0 1 72 683.97] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -674.008] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 664.209 Td +/F130_0 9.9626 Tf +(Here) 19.3573 Tj +-293 TJm +(is) 6.64505 Tj +-294 TJm +(a) 4.42339 Tj +-293 TJm +(table) 19.3673 Tj +-294 TJm +(which) 24.3486 Tj +-293 TJm +(summarises) 47.0434 Tj +-294 TJm +(the) 12.1743 Tj +-293 TJm +(maximum) 40.4083 Tj +-294 TJm +(memory) 33.2053 Tj +-293 TJm +(usage) 22.6848 Tj +-294 TJm +(for) 11.6164 Tj +-293 TJm +(dif) 11.0684 Tj +25 TJm +(ferent) 23.2328 Tj +-294 TJm +(block) 22.1369 Tj +-293 TJm +(sizes.) 21.8579 Tj +-881 TJm +(Also) 18.8194 Tj +-293 TJm +(recorded) 34.8492 Tj +-294 TJm +(is) 6.64505 Tj +-293 TJm +(the) 12.1743 Tj +-294 TJm +(total) 17.7135 Tj +72 652.254 Td +(compressed) 47.0334 Tj +-289 TJm +(size) 15.4918 Tj +-289 TJm +(for) 11.6164 Tj +-289 TJm +(14) 9.9626 Tj +-289 TJm +(\002les) 16.6077 Tj +-290 TJm +(of) 8.29885 Tj +-289 TJm +(the) 12.1743 Tj +-289 TJm +(Calg) 18.8194 Tj +5 TJm +(ary) 12.7222 Tj +-289 TJm +(T) 6.08715 Tj +70 TJm +(e) 4.42339 Tj +15 TJm +(xt) 7.7509 Tj +-289 TJm +(Compression) 52.5826 Tj +-289 TJm +(Corpus) 28.782 Tj +-289 TJm +(totalling) 33.2153 Tj +-289 TJm +(3,141,622) 39.8504 Tj +-290 TJm +(bytes.) 23.5217 Tj +-854 TJm +(This) 17.7135 Tj +-290 TJm +(column) 29.8878 Tj +-289 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(es) 8.29885 Tj +72 640.299 Td +(some) 21.031 Tj +-253 TJm +(feel) 14.9339 Tj +-253 TJm +(for) 11.6164 Tj +-253 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-253 TJm +(compression) 50.3609 Tj +-253 TJm +(v) 4.9813 Tj +25 TJm +(aries) 18.8094 Tj +-253 TJm +(with) 17.7135 Tj +-253 TJm +(block) 22.1369 Tj +-253 TJm +(size.) 17.9825 Tj +-638 TJm +(These) 23.7907 Tj +-253 TJm +(\002gures) 27.1182 Tj +-253 TJm +(tend) 17.1556 Tj +-254 TJm +(to) 7.7509 Tj +-253 TJm +(understate) 40.9463 Tj +-253 TJm +(the) 12.1743 Tj +-253 TJm +(adv) 14.386 Tj +25 TJm +(antage) 26.0024 Tj +-253 TJm +(of) 8.29885 Tj +-253 TJm +(lar) 10.5105 Tj +18 TJm +(ger) 12.7222 Tj +-253 TJm +(block) 22.1369 Tj +72 628.344 Td +(sizes) 19.3673 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(lar) 10.5105 Tj +18 TJm +(ger) 12.7222 Tj +-250 TJm +(\002les,) 19.0983 Tj +-250 TJm +(since) 20.4731 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(Corpus) 28.782 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(dominated) 42.0621 Tj +-250 TJm +(by) 9.9626 Tj +-250 TJm +(smaller) 29.3299 Tj +-250 TJm +(\002les.) 19.0983 Tj +[1 0 0 1 72 626.187] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -156.413] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 155.417 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5865] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 151.831] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -616.822] cm +[1 0 0 1 0 0] Tm +0 0 Td +123.952 616.822 Td +/F134_0 9.9626 Tf +(Compress) 47.8205 Tj +-1278 TJm +(Decompress) 59.7756 Tj +-1278 TJm +(Decompress) 59.7756 Tj +-1278 TJm +(Corpus) 35.8654 Tj +90 604.867 Td +(Flag) 23.9102 Tj +-2130 TJm +(usage) 29.8878 Tj +-2556 TJm +(usage) 29.8878 Tj +-2982 TJm +(-s) 11.9551 Tj +-426 TJm +(usage) 29.8878 Tj +-2130 TJm +(Size) 23.9102 Tj +94.244 580.956 Td +(-1) 11.9551 Tj +-2556 TJm +(1200k) 29.8878 Tj +-2982 TJm +(500k) 23.9102 Tj +-3834 TJm +(350k) 23.9102 Tj +-2556 TJm +(914704) 35.8654 Tj +94.244 569.001 Td +(-2) 11.9551 Tj +-2556 TJm +(2000k) 29.8878 Tj +-2982 TJm +(900k) 23.9102 Tj +-3834 TJm +(600k) 23.9102 Tj +-2556 TJm +(877703) 35.8654 Tj +94.244 557.046 Td +(-3) 11.9551 Tj +-2556 TJm +(2800k) 29.8878 Tj +-2556 TJm +(1300k) 29.8878 Tj +-3834 TJm +(850k) 23.9102 Tj +-2556 TJm +(860338) 35.8654 Tj +94.244 545.091 Td +(-4) 11.9551 Tj +-2556 TJm +(3600k) 29.8878 Tj +-2556 TJm +(1700k) 29.8878 Tj +-3408 TJm +(1100k) 29.8878 Tj +-2556 TJm +(846899) 35.8654 Tj +94.244 533.136 Td +(-5) 11.9551 Tj +-2556 TJm +(4400k) 29.8878 Tj +-2556 TJm +(2100k) 29.8878 Tj +-3408 TJm +(1350k) 29.8878 Tj +-2556 TJm +(845160) 35.8654 Tj +94.244 521.181 Td +(-6) 11.9551 Tj +-2556 TJm +(5200k) 29.8878 Tj +-2556 TJm +(2500k) 29.8878 Tj +-3408 TJm +(1600k) 29.8878 Tj +-2556 TJm +(838626) 35.8654 Tj +94.244 509.225 Td +(-7) 11.9551 Tj +-2556 TJm +(6100k) 29.8878 Tj +-2556 TJm +(2900k) 29.8878 Tj +-3408 TJm +(1850k) 29.8878 Tj +-2556 TJm +(834096) 35.8654 Tj +94.244 497.27 Td +(-8) 11.9551 Tj +-2556 TJm +(6800k) 29.8878 Tj +-2556 TJm +(3300k) 29.8878 Tj +-3408 TJm +(2100k) 29.8878 Tj +-2556 TJm +(828642) 35.8654 Tj +94.244 485.315 Td +(-9) 11.9551 Tj +-2556 TJm +(7600k) 29.8878 Tj +-2556 TJm +(3700k) 29.8878 Tj +-3408 TJm +(2350k) 29.8878 Tj +-2556 TJm +(828642) 35.8654 Tj +[1 0 0 1 72 469.773] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -459.811] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 435.021 Td +/F122_0 20.6585 Tf +(2.6.) 34.4584 Tj +-278 TJm +(RECO) 59.6824 Tj +50 TJm +(VERING) 79.2047 Tj +-278 TJm +(D) 14.9154 Tj +40 TJm +(A) 14.9154 Tj +90 TJm +(T) 12.6223 Tj +90 TJm +(A) 14.9154 Tj +-278 TJm +(FR) 27.5378 Tj +20 TJm +(OM) 33.2808 Tj +-278 TJm +(D) 14.9154 Tj +40 TJm +(AMA) 47.0394 Tj +50 TJm +(GED) 44.767 Tj +72 410.23 Td +(FILES) 58.5462 Tj +[1 0 0 1 72 409.972] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -400.01] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 388.312 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 101.888 388.312] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -101.888 -388.312] cm +[1 0 0 1 0 0] Tm +0 0 Td +105.138 388.312 Td +/F130_0 9.9626 Tf +(compresses) 45.9276 Tj +-326 TJm +(\002les) 16.6077 Tj +-326 TJm +(in) 7.7509 Tj +-326 TJm +(blocks,) 28.503 Tj +-346 TJm +(usually) 28.782 Tj +-326 TJm +(900kbytes) 40.9562 Tj +-326 TJm +(long.) 20.2042 Tj +-1077 TJm +(Each) 19.9152 Tj +-326 TJm +(block) 22.1369 Tj +-327 TJm +(is) 6.64505 Tj +-326 TJm +(handled) 31.5416 Tj +-326 TJm +(independently) 56.4481 Tj +65 TJm +(.) 2.49065 Tj +-1077 TJm +(If) 6.63509 Tj +-326 TJm +(a) 4.42339 Tj +-326 TJm +(media) 24.3486 Tj +-326 TJm +(or) 8.29885 Tj +72 376.357 Td +(transmission) 50.3709 Tj +-319 TJm +(error) 19.3573 Tj +-318 TJm +(causes) 26.0024 Tj +-319 TJm +(a) 4.42339 Tj +-318 TJm +(multi-block) 46.4955 Tj +[1 0 0 1 234.518 376.357] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -234.518 -376.357] cm +[1 0 0 1 0 0] Tm +0 0 Td +234.518 376.357 Td +/F134_0 9.9626 Tf +(.bz2) 23.9102 Tj +[1 0 0 1 258.429 376.357] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -258.429 -376.357] cm +[1 0 0 1 0 0] Tm +0 0 Td +261.603 376.357 Td +/F130_0 9.9626 Tf +(\002le) 12.7322 Tj +-319 TJm +(to) 7.7509 Tj +-318 TJm +(become) 30.9837 Tj +-319 TJm +(damaged,) 38.4556 Tj +-336 TJm +(it) 5.53921 Tj +-318 TJm +(may) 17.1556 Tj +-319 TJm +(be) 9.40469 Tj +-318 TJm +(possible) 32.6574 Tj +-319 TJm +(to) 7.7509 Tj +-318 TJm +(reco) 17.1456 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-319 TJm +(data) 16.5977 Tj +-319 TJm +(from) 19.3673 Tj +-318 TJm +(the) 12.1743 Tj +72 364.402 Td +(undamaged) 45.9276 Tj +-250 TJm +(blocks) 26.0123 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(\002le.) 15.2229 Tj +[1 0 0 1 72 362.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -352.283] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 342.484 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-358 TJm +(compressed) 47.0334 Tj +-357 TJm +(representation) 56.4381 Tj +-358 TJm +(of) 8.29885 Tj +-357 TJm +(each) 18.2515 Tj +-358 TJm +(block) 22.1369 Tj +-358 TJm +(is) 6.64505 Tj +-357 TJm +(delimited) 37.6387 Tj +-358 TJm +(by) 9.9626 Tj +-357 TJm +(a) 4.42339 Tj +-358 TJm +(48-bit) 23.8007 Tj +-358 TJm +(pattern,) 30.1568 Tj +-384 TJm +(which) 24.3486 Tj +-358 TJm +(mak) 17.1556 Tj +10 TJm +(es) 8.29885 Tj +-357 TJm +(it) 5.53921 Tj +-358 TJm +(possible) 32.6574 Tj +-357 TJm +(to) 7.7509 Tj +-358 TJm +(\002nd) 15.5018 Tj +-358 TJm +(the) 12.1743 Tj +72 330.529 Td +(block) 22.1369 Tj +-286 TJm +(boundaries) 43.7159 Tj +-286 TJm +(wit) 12.7322 Tj +1 TJm +(h) 4.9813 Tj +-286 TJm +(reasonable) 42.6001 Tj +-286 TJm +(certainty) 34.8591 Tj +65 TJm +(.) 2.49065 Tj +-835 TJm +(Each) 19.9152 Tj +-285 TJm +(block) 22.1369 Tj +-286 TJm +(also) 16.0497 Tj +-286 TJm +(carries) 26.5503 Tj +-286 TJm +(its) 9.41466 Tj +-285 TJm +(o) 4.9813 Tj +25 TJm +(wn) 12.1743 Tj +-286 TJm +(32-bit) 23.8007 Tj +-286 TJm +(CRC,) 22.4258 Tj +-286 TJm +(so) 8.85675 Tj +-285 TJm +(damaged) 35.965 Tj +-286 TJm +(blocks) 26.0123 Tj +-286 TJm +(can) 13.8281 Tj +-286 TJm +(be) 9.40469 Tj +72 318.574 Td +(distinguished) 53.1405 Tj +-250 TJm +(from) 19.3673 Tj +-250 TJm +(undamaged) 45.9276 Tj +-250 TJm +(ones.) 20.7521 Tj +[1 0 0 1 72 316.417] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -306.455] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 296.656 Td +/F134_0 9.9626 Tf +(bzip2recover) 71.7307 Tj +[1 0 0 1 143.731 296.656] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -143.731 -296.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +146.448 296.656 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-273 TJm +(a) 4.42339 Tj +-272 TJm +(simple) 26.5703 Tj +-273 TJm +(program) 33.7533 Tj +-273 TJm +(whose) 25.4544 Tj +-272 TJm +(purpose) 31.5416 Tj +-273 TJm +(is) 6.64505 Tj +-273 TJm +(to) 7.7509 Tj +-272 TJm +(search) 25.4445 Tj +-273 TJm +(for) 11.6164 Tj +-273 TJm +(blocks) 26.0123 Tj +-272 TJm +(in) 7.7509 Tj +[1 0 0 1 392.655 296.656] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -392.655 -296.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +392.655 296.656 Td +/F134_0 9.9626 Tf +(.bz2) 23.9102 Tj +[1 0 0 1 416.566 296.656] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -416.566 -296.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.282 296.656 Td +/F130_0 9.9626 Tf +(\002les,) 19.0983 Tj +-278 TJm +(and) 14.386 Tj +-273 TJm +(write) 20.4731 Tj +-273 TJm +(each) 18.2515 Tj +-272 TJm +(block) 22.1369 Tj +-273 TJm +(out) 12.7322 Tj +72 284.701 Td +(into) 15.5018 Tj +-254 TJm +(its) 9.41466 Tj +-255 TJm +(o) 4.9813 Tj +25 TJm +(wn) 12.1743 Tj +[1 0 0 1 121.43 284.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -121.43 -284.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +121.43 284.701 Td +/F134_0 9.9626 Tf +(.bz2) 23.9102 Tj +[1 0 0 1 145.34 284.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -145.34 -284.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +147.875 284.701 Td +/F130_0 9.9626 Tf +(\002le.) 15.2229 Tj +-647 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-255 TJm +(can) 13.8281 Tj +-254 TJm +(then) 17.1556 Tj +-255 TJm +(use) 13.2801 Tj +[1 0 0 1 240.01 284.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -240.01 -284.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +240.01 284.701 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +-600 TJm +(-t) 11.9551 Tj +[1 0 0 1 287.831 284.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -287.831 -284.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +290.367 284.701 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-255 TJm +(t) 2.7696 Tj +1 TJm +(est) 11.0684 Tj +-255 TJm +(the) 12.1743 Tj +-254 TJm +(inte) 14.9439 Tj +15 TJm +(grity) 18.8194 Tj +-255 TJm +(of) 8.29885 Tj +-254 TJm +(the) 12.1743 Tj +-255 TJm +(resulting) 34.8691 Tj +-254 TJm +(\002les,) 19.0983 Tj +-256 TJm +(and) 14.386 Tj +-255 TJm +(decompress) 47.0334 Tj +-254 TJm +(those) 21.031 Tj +72 272.746 Td +(which) 24.3486 Tj +-250 TJm +(are) 12.1643 Tj +-250 TJm +(undamaged.) 48.4182 Tj +[1 0 0 1 72 270.589] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -260.626] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 250.828 Td +/F134_0 9.9626 Tf +(bzip2recover) 71.7307 Tj +[1 0 0 1 143.731 250.828] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -143.731 -250.828] cm +[1 0 0 1 0 0] Tm +0 0 Td +150.099 250.828 Td +/F130_0 9.9626 Tf +(tak) 12.1743 Tj +10 TJm +(es) 8.29885 Tj +-639 TJm +(a) 4.42339 Tj +-639 TJm +(single) 23.8007 Tj +-639 TJm +(ar) 7.74094 Tj +18 TJm +(gument,) 32.3785 Tj +-737 TJm +(the) 12.1743 Tj +-639 TJm +(name) 21.579 Tj +-639 TJm +(of) 8.29885 Tj +-639 TJm +(the) 12.1743 Tj +-639 TJm +(damaged) 35.965 Tj +-639 TJm +(\002le,) 15.2229 Tj +-737 TJm +(and) 14.386 Tj +-639 TJm +(writes) 24.3486 Tj +-639 TJm +(a) 4.42339 Tj +-639 TJm +(number) 30.4357 Tj +-639 TJm +(of) 8.29885 Tj +-640 TJm +(\002les) 16.6077 Tj +[1 0 0 1 72 238.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -238.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 238.873 Td +/F134_0 9.9626 Tf +(rec0001file.bz2) 89.6634 Tj +[1 0 0 1 161.664 238.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -161.664 -238.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +161.664 238.873 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 169.072 238.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -169.072 -238.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +169.072 238.873 Td +/F134_0 9.9626 Tf +(rec0002file.bz2) 89.6634 Tj +[1 0 0 1 258.736 238.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -258.736 -238.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +258.736 238.873 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-494 TJm +(etc,) 14.107 Tj +-493 TJm +(containing) 42.0621 Tj +-445 TJm +(the) 12.1743 Tj +-445 TJm +(e) 4.42339 Tj +15 TJm +(xtracted) 32.0895 Tj +-445 TJm +(blocks.) 28.503 Tj +-1789 TJm +(The) 15.4918 Tj +-445 TJm +(output) 25.4644 Tj +-445 TJm +(\002lenames) 38.1866 Tj +-445 TJm +(are) 12.1643 Tj +72 226.918 Td +(designed) 35.417 Tj +-337 TJm +(so) 8.85675 Tj +-337 TJm +(that) 14.9439 Tj +-337 TJm +(the) 12.1743 Tj +-337 TJm +(use) 13.2801 Tj +-337 TJm +(of) 8.29885 Tj +-337 TJm +(wildc) 22.1369 Tj +1 TJm +(ards) 16.5977 Tj +-337 TJm +(in) 7.7509 Tj +-337 TJm +(subsequent) 44.2738 Tj +-337 TJm +(processing) 42.61 Tj +-337 TJm +(--) 6.63509 Tj +-337 TJm +(for) 11.6164 Tj +-337 TJm +(e) 4.42339 Tj +15 TJm +(xample,) 31.8205 Tj +[1 0 0 1 396.538 226.918] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -396.538 -226.918] cm +[1 0 0 1 0 0] Tm +0 0 Td +396.538 226.918 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +-600 TJm +(-dc) 17.9327 Tj +-600 TJm +(rec) 17.9327 Tj +474.247 225.174 Td +(*) 5.97756 Tj +480.224 226.918 Td +(file.bz2) 47.8205 Tj +-600 TJm +(>) 5.97756 Tj +72 214.963 Td +(recovered_data) 83.6858 Tj +[1 0 0 1 155.686 214.963] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -155.686 -214.963] cm +[1 0 0 1 0 0] Tm +0 0 Td +158.177 214.963 Td +/F130_0 9.9626 Tf +(--) 6.63509 Tj +-250 TJm +(lists) 16.0597 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(\002les) 16.6077 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(correct) 27.6562 Tj +-250 TJm +(order) 21.0211 Tj +55 TJm +(.) 2.49065 Tj +[1 0 0 1 72 213.653] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -203.69] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 193.045 Td +/F134_0 9.9626 Tf +(bzip2recover) 71.7307 Tj +[1 0 0 1 143.731 193.045] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -143.731 -193.045] cm +[1 0 0 1 0 0] Tm +0 0 Td +145.93 193.045 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-221 TJm +(be) 9.40469 Tj +-220 TJm +(of) 8.29885 Tj +-221 TJm +(most) 19.3773 Tj +-221 TJm +(use) 13.2801 Tj +-220 TJm +(dealing) 29.3299 Tj +-221 TJm +(with) 17.7135 Tj +-221 TJm +(lar) 10.5105 Tj +18 TJm +(ge) 9.40469 Tj +[1 0 0 1 307.229 193.045] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -307.229 -193.045] cm +[1 0 0 1 0 0] Tm +0 0 Td +307.229 193.045 Td +/F134_0 9.9626 Tf +(.bz2) 23.9102 Tj +[1 0 0 1 331.14 193.045] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -331.14 -193.045] cm +[1 0 0 1 0 0] Tm +0 0 Td +333.338 193.045 Td +/F130_0 9.9626 Tf +(\002les,) 19.0983 Tj +-227 TJm +(as) 8.29885 Tj +-220 TJm +(these) 20.4731 Tj +-221 TJm +(will) 15.5018 Tj +-221 TJm +(contain) 29.3299 Tj +-220 TJm +(man) 17.1556 Tj +15 TJm +(y) 4.9813 Tj +-221 TJm +(blocks.) 28.503 Tj +-600 TJm +(It) 6.08715 Tj +-221 TJm +(is) 6.64505 Tj +-221 TJm +(clearly) 27.1082 Tj +72 181.09 Td +(futile) 21.031 Tj +-289 TJm +(to) 7.7509 Tj +-289 TJm +(use) 13.2801 Tj +-289 TJm +(it) 5.53921 Tj +-289 TJm +(on) 9.9626 Tj +-289 TJm +(damaged) 35.965 Tj +-289 TJm +(single-block) 49.2551 Tj +-290 TJm +(\002les) 16.6077 Tj +1 TJm +(,) 2.49065 Tj +-299 TJm +(since) 20.4731 Tj +-289 TJm +(a) 4.42339 Tj +-290 TJm +(damaged) 35.965 Tj +-289 TJm +(block) 22.1369 Tj +-289 TJm +(cannot) 26.5603 Tj +-289 TJm +(be) 9.40469 Tj +-289 TJm +(reco) 17.1456 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(ered.) 19.6363 Tj +-854 TJm +(If) 6.63509 Tj +-289 TJm +(you) 14.9439 Tj +-290 TJm +(wish) 18.8194 Tj +-289 TJm +(to) 7.7509 Tj +-289 TJm +(minimise) 37.0908 Tj +72 169.135 Td +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-320 TJm +(potential) 34.8691 Tj +-320 TJm +(data) 16.5977 Tj +-319 TJm +(loss) 15.5018 Tj +-320 TJm +(through) 30.9936 Tj +-320 TJm +(media) 24.3486 Tj +-320 TJm +(or) 8.29885 Tj +-319 TJm +(transmission) 50.3709 Tj +-320 TJm +(errors,) 25.7234 Tj +-337 TJm +(you) 14.9439 Tj +-320 TJm +(might) 23.2527 Tj +-320 TJm +(consider) 33.7533 Tj +-320 TJm +(compressing) 50.3609 Tj +-319 TJm +(with) 17.7135 Tj +-320 TJm +(a) 4.42339 Tj +-320 TJm +(smaller) 29.3299 Tj +-320 TJm +(block) 22.1369 Tj +72 157.179 Td +(size.) 17.9825 Tj +[1 0 0 1 72 157.08] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -147.117] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 122.426 Td +/F122_0 20.6585 Tf +(2.7.) 34.4584 Tj +-278 TJm +(PERFORMANCE) 161.818 Tj +-278 TJm +(NO) 30.9877 Tj +40 TJm +(TES) 40.1808 Tj +[1 0 0 1 72 122.168] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -112.206] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 100.509 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-305 TJm +(sorting) 27.6761 Tj +-304 TJm +(phase) 22.6848 Tj +-305 TJm +(of) 8.29885 Tj +-304 TJm +(compression) 50.3609 Tj +-305 TJm +(g) 4.9813 Tj +5 TJm +(athers) 23.7907 Tj +-304 TJm +(together) 32.6474 Tj +-305 TJm +(similar) 27.6761 Tj +-304 TJm +(strings) 26.5703 Tj +-305 TJm +(in) 7.7509 Tj +-304 TJm +(the) 12.1743 Tj +-305 TJm +(\002le.) 15.2229 Tj +-947 TJm +(Because) 33.1954 Tj +-305 TJm +(of) 8.29885 Tj +-304 TJm +(this,) 16.8866 Tj +-319 TJm +(\002les) 16.6077 Tj +-304 TJm +(containing) 42.0621 Tj +-305 TJm +(v) 4.9813 Tj +15 TJm +(ery) 12.7222 Tj +72 88.5534 Td +(long) 17.7135 Tj +-286 TJm +(runs) 17.1556 Tj +-285 TJm +(of) 8.29885 Tj +-286 TJm +(repeated) 33.7433 Tj +-285 TJm +(symbols,) 35.706 Tj +-295 TJm +(lik) 10.5205 Tj +10 TJm +(e) 4.42339 Tj +-286 TJm +("aabaabaabaab) 59.3771 Tj +-285 TJm +(...") 11.5367 Tj +-571 TJm +(\(repeated) 37.0609 Tj +-286 TJm +(se) 8.29885 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(eral) 14.9339 Tj +-286 TJm +(hundred) 32.6474 Tj +-285 TJm +(times\)) 24.9065 Tj +-286 TJm +(may) 17.1556 Tj +-286 TJm +(com) 17.1556 Tj +1 TJm +(press) 20.4731 Tj +-286 TJm +(more) 20.4731 Tj +-286 TJm +(slo) 11.6264 Tj +25 TJm +(wly) 14.9439 Tj +72 76.5983 Td +(than) 17.1556 Tj +-322 TJm +(normal.) 30.7147 Tj +-524 TJm +(V) 7.193 Tj +111 TJm +(ersions) 28.224 Tj +-322 TJm +(0.9.5) 19.9252 Tj +-321 TJm +(and) 14.386 Tj +-322 TJm +(abo) 14.386 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-322 TJm +(f) 3.31755 Tj +10 TJm +(are) 12.1643 Tj +-321 TJm +(much) 22.1369 Tj +-322 TJm +(better) 22.6848 Tj +-321 TJm +(than) 17.1556 Tj +-322 TJm +(pre) 12.7222 Tj +25 TJm +(vious) 21.589 Tj +-321 TJm +(v) 4.9813 Tj +15 TJm +(ersions) 28.224 Tj +-322 TJm +(in) 7.7509 Tj +-322 TJm +(this) 14.396 Tj +-321 TJm +(respect.) 30.7047 Tj +-1050 TJm +(The) 15.4918 Tj +-321 TJm +(ratio) 18.2614 Tj +-322 TJm +(between) 33.1954 Tj +[1 0 0 1 72 50.8518] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 43.0633 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.332 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +539.395 50.9514 Td +/F130_0 9.9626 Tf +(6) 4.9813 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 10 10 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 105.519 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -371.59 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +477.109 749.245 Td +/F130_0 9.9626 Tf +(Ho) 12.1743 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(bzip2) 22.1369 Tj +[1 0 0 1 266.071 747.089] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -540 -741.554] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F130_0 9.9626 Tf +(w) 7.193 Tj +10 TJm +(orst-case) 35.4071 Tj +-289 TJm +(and) 14.386 Tj +-290 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(erage-case) 42.0322 Tj +-289 TJm +(compression) 50.3609 Tj +-290 TJm +(time) 17.7135 Tj +-289 TJm +(is) 6.64505 Tj +-290 TJm +(in) 7.7509 Tj +-289 TJm +(the) 12.1743 Tj +-290 TJm +(re) 7.74094 Tj +15 TJm +(gion) 17.7135 Tj +-289 TJm +(of) 8.29885 Tj +-289 TJm +(10:1.) 20.2042 Tj +-857 TJm +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-290 TJm +(pre) 12.7222 Tj +25 TJm +(vious) 21.589 Tj +-289 TJm +(v) 4.9813 Tj +15 TJm +(ersions,) 30.7147 Tj +-299 TJm +(this) 14.396 Tj +-290 TJm +(\002gure) 23.2427 Tj +-289 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-290 TJm +(more) 20.4731 Tj +72 698.082 Td +(lik) 10.5205 Tj +10 TJm +(e) 4.42339 Tj +-250 TJm +(100:1.) 25.1855 Tj +-620 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-250 TJm +(can) 13.8281 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(the) 12.1743 Tj +[1 0 0 1 186.002 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -186.002 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +186.002 698.082 Td +/F134_0 9.9626 Tf +(-vvvv) 29.8878 Tj +[1 0 0 1 215.889 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -215.889 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +218.38 698.082 Td +/F130_0 9.9626 Tf +(option) 25.4644 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(monitor) 31.5516 Tj +-250 TJm +(progress) 33.7533 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(great) 19.9152 Tj +-250 TJm +(detail,) 24.6275 Tj +-250 TJm +(if) 6.08715 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ant.) 14.6649 Tj +[1 0 0 1 72 695.925] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -685.963] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 676.164 Td +/F130_0 9.9626 Tf +(Decompression) 61.9773 Tj +-250 TJm +(speed) 22.6848 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(unaf) 17.7035 Tj +25 TJm +(fected) 24.3386 Tj +-250 TJm +(by) 9.9626 Tj +-250 TJm +(these) 20.4731 Tj +-250 TJm +(phenomena.) 48.4182 Tj +[1 0 0 1 72 674.007] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -664.045] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 654.247 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 101.888 654.247] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -101.888 -654.247] cm +[1 0 0 1 0 0] Tm +0 0 Td +104.863 654.247 Td +/F130_0 9.9626 Tf +(usually) 28.782 Tj +-299 TJm +(allocates) 34.8591 Tj +-298 TJm +(se) 8.29885 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(eral) 14.9339 Tj +-299 TJm +(me) 12.1743 Tj +15 TJm +(g) 4.9813 Tj +5 TJm +(abytes) 25.4544 Tj +-298 TJm +(of) 8.29885 Tj +-299 TJm +(memory) 33.2053 Tj +-299 TJm +(to) 7.7509 Tj +-298 TJm +(operate) 29.3199 Tj +-299 TJm +(in,) 10.2416 Tj +-311 TJm +(and) 14.386 Tj +-298 TJm +(then) 17.1556 Tj +-299 TJm +(char) 17.1456 Tj +18 TJm +(ges) 13.2801 Tj +-298 TJm +(all) 9.9626 Tj +-299 TJm +(o) 4.9813 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-299 TJm +(it) 5.53921 Tj +-298 TJm +(in) 7.7509 Tj +-299 TJm +(a) 4.42339 Tj +-298 TJm +(f) 3.31755 Tj +10 TJm +(airly) 18.2614 Tj +-299 TJm +(random) 30.4357 Tj +72 642.291 Td +(f) 3.31755 Tj +10 TJm +(ashion.) 28.503 Tj +-743 TJm +(This) 17.7135 Tj +-270 TJm +(means) 25.4544 Tj +-271 TJm +(that) 14.9439 Tj +-270 TJm +(performance,) 52.8317 Tj +-276 TJm +(both) 17.7135 Tj +-270 TJm +(for) 11.6164 Tj +-271 TJm +(compressing) 50.3609 Tj +-270 TJm +(and) 14.386 Tj +-271 TJm +(decompressing,) 62.2563 Tj +-275 TJm +(is) 6.64505 Tj +-271 TJm +(lar) 10.5105 Tj +18 TJm +(gely) 17.1556 Tj +-270 TJm +(determined) 44.8217 Tj +-271 TJm +(by) 9.9626 Tj +-270 TJm +(the) 12.1743 Tj +-271 TJm +(speed) 22.6848 Tj +72 630.336 Td +(at) 7.193 Tj +-294 TJm +(which) 24.3486 Tj +-294 TJm +(your) 18.2614 Tj +-294 TJm +(machine) 33.7533 Tj +-295 TJm +(ca) 8.84679 Tj +1 TJm +(n) 4.9813 Tj +-295 TJm +(service) 28.2141 Tj +-294 TJm +(cache) 22.6749 Tj +-294 TJm +(misses.) 29.0609 Tj +-442 TJm +(Because) 33.1954 Tj +-294 TJm +(of) 8.29885 Tj +-294 TJm +(this,) 16.8866 Tj +-306 TJm +(small) 21.589 Tj +-294 TJm +(changes) 32.0895 Tj +-294 TJm +(to) 7.7509 Tj +-294 TJm +(the) 12.1743 Tj +-294 TJm +(code) 18.8094 Tj +-294 TJm +(to) 7.7509 Tj +-294 TJm +(reduce) 26.5503 Tj +-294 TJm +(the) 12.1743 Tj +-295 TJm +(miss) 18.2714 Tj +-294 TJm +(rate) 14.9339 Tj +72 618.381 Td +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-253 TJm +(been) 18.8094 Tj +-253 TJm +(observ) 26.5603 Tj +15 TJm +(ed) 9.40469 Tj +-253 TJm +(to) 7.7509 Tj +-253 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-253 TJm +(disproportionately) 73.0557 Tj +-253 TJm +(lar) 10.5105 Tj +18 TJm +(ge) 9.40469 Tj +-253 TJm +(performance) 50.341 Tj +-253 TJm +(impro) 23.8007 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(ements.) 30.7147 Tj +-639 TJm +(I) 3.31755 Tj +-253 TJm +(imagine) 32.0995 Tj +[1 0 0 1 438.909 618.381] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -438.909 -618.381] cm +[1 0 0 1 0 0] Tm +0 0 Td +438.909 618.381 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 468.796 618.381] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468.796 -618.381] cm +[1 0 0 1 0 0] Tm +0 0 Td +471.318 618.381 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-253 TJm +(perform) 32.0895 Tj +-253 TJm +(best) 16.0497 Tj +72 606.426 Td +(on) 9.9626 Tj +-250 TJm +(machines) 37.6287 Tj +-250 TJm +(with) 17.7135 Tj +-250 TJm +(v) 4.9813 Tj +15 TJm +(ery) 12.7222 Tj +-250 TJm +(lar) 10.5105 Tj +18 TJm +(ge) 9.40469 Tj +-250 TJm +(caches.) 29.041 Tj +[1 0 0 1 72 604.269] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -594.306] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 571.673 Td +/F122_0 20.6585 Tf +(2.8.) 34.4584 Tj +-278 TJm +(CA) 29.8309 Tj +80 TJm +(VEA) 42.4739 Tj +90 TJm +(TS) 26.4016 Tj +[1 0 0 1 72 571.415] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -561.452] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 549.755 Td +/F130_0 9.9626 Tf +(I/O) 13.2801 Tj +-268 TJm +(error) 19.3573 Tj +-267 TJm +(messages) 37.6287 Tj +-268 TJm +(are) 12.1643 Tj +-268 TJm +(not) 12.7322 Tj +-268 TJm +(as) 8.29885 Tj +-267 TJm +(helpful) 28.224 Tj +-268 TJm +(as) 8.29885 Tj +-268 TJm +(the) 12.1743 Tj +15 TJm +(y) 4.9813 Tj +-267 TJm +(could) 22.1369 Tj +-268 TJm +(be.) 11.8953 Tj +[1 0 0 1 293.313 549.755] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -293.313 -549.755] cm +[1 0 0 1 0 0] Tm +0 0 Td +293.313 549.755 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 323.201 549.755] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -323.201 -549.755] cm +[1 0 0 1 0 0] Tm +0 0 Td +325.868 549.755 Td +/F130_0 9.9626 Tf +(tries) 17.1556 Tj +-268 TJm +(hard) 17.7035 Tj +-267 TJm +(to) 7.7509 Tj +-268 TJm +(detect) 23.7907 Tj +-268 TJm +(I/O) 13.2801 Tj +-268 TJm +(errors) 23.2328 Tj +-267 TJm +(and) 14.386 Tj +-268 TJm +(e) 4.42339 Tj +15 TJm +(xit) 10.5205 Tj +-268 TJm +(cleanly) 28.772 Tj +65 TJm +(,) 2.49065 Tj +-272 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-268 TJm +(the) 12.1743 Tj +72 537.8 Td +(details) 26.0123 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(what) 19.3673 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(problem) 33.2053 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(sometimes) 42.62 Tj +-250 TJm +(seem) 20.4731 Tj +-250 TJm +(rather) 23.2328 Tj +-250 TJm +(misleading.) 46.2165 Tj +[1 0 0 1 72 535.643] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -525.681] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 515.882 Td +/F130_0 9.9626 Tf +(This) 17.7135 Tj +-280 TJm +(manual) 29.3299 Tj +-279 TJm +(page) 18.8094 Tj +-280 TJm +(pertains) 31.5416 Tj +-280 TJm +(to) 7.7509 Tj +-279 TJm +(v) 4.9813 Tj +15 TJm +(ersion) 24.3486 Tj +-280 TJm +(1.0.5) 19.9252 Tj +-280 TJm +(of) 8.29885 Tj +[1 0 0 1 256.84 515.882] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -256.84 -515.882] cm +[1 0 0 1 0 0] Tm +0 0 Td +256.84 515.882 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 286.728 515.882] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -286.728 -515.882] cm +[1 0 0 1 0 0] Tm +0 0 Td +286.728 515.882 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-798 TJm +(Compressed) 49.2551 Tj +-280 TJm +(data) 16.5977 Tj +-279 TJm +(created) 28.762 Tj +-280 TJm +(by) 9.9626 Tj +-280 TJm +(this) 14.396 Tj +-279 TJm +(v) 4.9813 Tj +15 TJm +(ersion) 24.3486 Tj +-280 TJm +(is) 6.64505 Tj +-280 TJm +(entirely) 30.4357 Tj +-279 TJm +(forw) 18.8094 Tj +10 TJm +(ards) 16.5977 Tj +72 503.927 Td +(and) 14.386 Tj +-294 TJm +(backw) 26.0024 Tj +10 TJm +(ards) 16.5977 Tj +-293 TJm +(compatible) 44.2738 Tj +-294 TJm +(with) 17.7135 Tj +-294 TJm +(the) 12.1743 Tj +-293 TJm +(pre) 12.7222 Tj +25 TJm +(vious) 21.589 Tj +-294 TJm +(public) 24.9065 Tj +-294 TJm +(releases,) 34.0223 Tj +-304 TJm +(v) 4.9813 Tj +15 TJm +(ersions) 28.224 Tj +-294 TJm +(0.1pl2,) 27.6761 Tj +-305 TJm +(0.9.0) 19.9252 Tj +-293 TJm +(and) 14.386 Tj +-294 TJm +(0.9.5,) 22.4159 Tj +-305 TJm +(1.0.0,) 22.4159 Tj +-304 TJm +(1.0.1,) 22.4159 Tj +-305 TJm +(1.0.2) 19.9252 Tj +-294 TJm +(and) 14.386 Tj +72 491.972 Td +(1.0.3,) 22.4159 Tj +-263 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-260 TJm +(with) 17.7135 Tj +-260 TJm +(the) 12.1743 Tj +-260 TJm +(follo) 18.8194 Tj +25 TJm +(wing) 19.9252 Tj +-260 TJm +(e) 4.42339 Tj +15 TJm +(xception:) 37.0808 Tj +-330 TJm +(0.9.0) 19.9252 Tj +-260 TJm +(and) 14.386 Tj +-260 TJm +(abo) 14.386 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-260 TJm +(can) 13.8281 Tj +-260 TJm +(correctly) 35.4071 Tj +-260 TJm +(decompress) 47.0334 Tj +-260 TJm +(multiple) 33.2153 Tj +-260 TJm +(concatenated) 52.0048 Tj +-260 TJm +(compressed) 47.0334 Tj +72 480.017 Td +(\002les.) 19.0983 Tj +-310 TJm +(0.1pl2) 25.1855 Tj +-250 TJm +(cannot) 26.5603 Tj +-250 TJm +(do) 9.9626 Tj +-250 TJm +(this;) 17.1656 Tj +-250 TJm +(it) 5.53921 Tj +-250 TJm +(will) 15.5018 Tj +-250 TJm +(stop) 16.6077 Tj +-250 TJm +(after) 18.2515 Tj +-250 TJm +(decompressing) 59.7656 Tj +-250 TJm +(just) 14.396 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(\002rst) 15.5018 Tj +-250 TJm +(\002le) 12.7322 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(stream.) 29.0509 Tj +[1 0 0 1 72 477.86] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -467.897] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 458.099 Td +/F134_0 9.9626 Tf +(bzip2recover) 71.7307 Tj +[1 0 0 1 143.731 458.099] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -143.731 -458.099] cm +[1 0 0 1 0 0] Tm +0 0 Td +146.174 458.099 Td +/F130_0 9.9626 Tf +(v) 4.9813 Tj +15 TJm +(ersions) 28.224 Tj +-245 TJm +(prior) 19.3673 Tj +-245 TJm +(to) 7.7509 Tj +-245 TJm +(1.0.2) 19.9252 Tj +-246 TJm +(used) 18.2614 Tj +-245 TJm +(32-bit) 23.8007 Tj +-245 TJm +(inte) 14.9439 Tj +15 TJm +(gers) 16.5977 Tj +-245 TJm +(to) 7.7509 Tj +-245 TJm +(represent) 36.5129 Tj +-245 TJm +(bit) 10.5205 Tj +-246 TJm +(positions) 35.9849 Tj +-245 TJm +(in) 7.7509 Tj +-245 TJm +(compressed) 47.0334 Tj +-245 TJm +(\002les,) 19.0983 Tj +-246 TJm +(so) 8.85675 Tj +-245 TJm +(it) 5.53921 Tj +-245 TJm +(could) 22.1369 Tj +72 446.144 Td +(not) 12.7322 Tj +-384 TJm +(handle) 26.5603 Tj +-383 TJm +(compressed) 47.0334 Tj +-384 TJm +(\002les) 16.6077 Tj +-383 TJm +(more) 20.4731 Tj +-384 TJm +(than) 17.1556 Tj +-383 TJm +(512) 14.9439 Tj +-384 TJm +(me) 12.1743 Tj +15 TJm +(g) 4.9813 Tj +5 TJm +(abytes) 25.4544 Tj +-383 TJm +(long.) 20.2042 Tj +-1421 TJm +(V) 7.193 Tj +111 TJm +(ersions) 28.224 Tj +-384 TJm +(1.0.2) 19.9252 Tj +-383 TJm +(and) 14.386 Tj +-384 TJm +(abo) 14.386 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-384 TJm +(use) 13.2801 Tj +-383 TJm +(64-bit) 23.8007 Tj +-384 TJm +(ints) 14.396 Tj +-383 TJm +(on) 9.9626 Tj +-384 TJm +(some) 21.031 Tj +72 434.189 Td +(platforms) 38.1866 Tj +-245 TJm +(which) 24.3486 Tj +-246 TJm +(support) 29.8878 Tj +-245 TJm +(them) 19.9252 Tj +-246 TJm +(\(GNU) 24.8965 Tj +-245 TJm +(supported) 39.2925 Tj +-245 TJm +(tar) 10.5105 Tj +18 TJm +(gets,) 18.5404 Tj +-247 TJm +(and) 14.386 Tj +-245 TJm +(W) 9.40469 Tj +40 TJm +(indo) 17.7135 Tj +25 TJm +(ws\).) 16.8766 Tj +-309 TJm +(T) 6.08715 Tj +80 TJm +(o) 4.9813 Tj +-245 TJm +(establish) 34.8691 Tj +-245 TJm +(whether) 32.0895 Tj +-246 TJm +(or) 8.29885 Tj +-245 TJm +(not) 12.7322 Tj +[1 0 0 1 468.269 434.189] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468.269 -434.189] cm +[1 0 0 1 0 0] Tm +0 0 Td +468.269 434.189 Td +/F134_0 9.9626 Tf +(bzip2recover) 71.7307 Tj +[1 0 0 1 540 434.189] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -434.189] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 422.233 Td +/F130_0 9.9626 Tf +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-255 TJm +(b) 4.9813 Tj +20 TJm +(uilt) 13.2901 Tj +-255 TJm +(with) 17.7135 Tj +-255 TJm +(such) 18.2614 Tj +-255 TJm +(a) 4.42339 Tj +-255 TJm +(limitation,) 41.2452 Tj +-256 TJm +(run) 13.2801 Tj +-255 TJm +(it) 5.53921 Tj +-255 TJm +(without) 30.4457 Tj +-255 TJm +(ar) 7.74094 Tj +18 TJm +(guments.) 36.2539 Tj +-325 TJm +(In) 8.29885 Tj +-255 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-256 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ent) 12.1743 Tj +-255 TJm +(you) 14.9439 Tj +-255 TJm +(can) 13.8281 Tj +-255 TJm +(b) 4.9813 Tj +20 TJm +(uild) 15.5018 Tj +-255 TJm +(yourself) 32.6474 Tj +-255 TJm +(an) 9.40469 Tj +-255 TJm +(unlimited) 38.1966 Tj +-255 TJm +(v) 4.9813 Tj +15 TJm +(ersion) 24.3486 Tj +-255 TJm +(if) 6.08715 Tj +72 410.278 Td +(you) 14.9439 Tj +-250 TJm +(can) 13.8281 Tj +-250 TJm +(recompile) 39.8404 Tj +-250 TJm +(it) 5.53921 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 176.318 410.278] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -176.318 -410.278] cm +[1 0 0 1 0 0] Tm +0 0 Td +176.318 410.278 Td +/F134_0 9.9626 Tf +(MaybeUInt64) 65.7532 Tj +[1 0 0 1 242.071 410.278] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -242.071 -410.278] cm +[1 0 0 1 0 0] Tm +0 0 Td +244.562 410.278 Td +/F130_0 9.9626 Tf +(set) 11.0684 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(an) 9.40469 Tj +-250 TJm +(unsigned) 35.9749 Tj +-250 TJm +(64-bit) 23.8007 Tj +-250 TJm +(inte) 14.9439 Tj +15 TJm +(ger) 12.7222 Tj +55 TJm +(.) 2.49065 Tj +[1 0 0 1 72 408.121] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -398.159] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 375.525 Td +/F122_0 20.6585 Tf +(2.9.) 34.4584 Tj +-278 TJm +(A) 14.9154 Tj +50 TJm +(UTHOR) 73.441 Tj +[1 0 0 1 72 375.267] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -365.305] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 353.608 Td +/F130_0 9.9626 Tf +(Julian) 23.8007 Tj +-250 TJm +(Se) 9.9626 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(ard,) 15.2129 Tj +[1 0 0 1 132.801 353.608] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -132.801 -353.608] cm +[1 0 0 1 0 0] Tm +0 0 Td +132.801 353.608 Td +/F134_0 9.9626 Tf +(jseward@bzip.org) 95.641 Tj +[1 0 0 1 228.443 353.608] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -156.443 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -342.111] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 331.69 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-299 TJm +(ideas) 20.4731 Tj +-300 TJm +(embodied) 39.2925 Tj +-299 TJm +(in) 7.7509 Tj +[1 0 0 1 166.942 331.69] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -166.942 -331.69] cm +[1 0 0 1 0 0] Tm +0 0 Td +166.942 331.69 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 196.83 331.69] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -196.83 -331.69] cm +[1 0 0 1 0 0] Tm +0 0 Td +199.813 331.69 Td +/F130_0 9.9626 Tf +(are) 12.1643 Tj +-299 TJm +(due) 14.386 Tj +-300 TJm +(to) 7.7509 Tj +-299 TJm +(\(at) 10.5105 Tj +-300 TJm +(least\)) 21.579 Tj +-299 TJm +(the) 12.1743 Tj +-300 TJm +(follo) 18.8194 Tj +25 TJm +(wing) 19.9252 Tj +-299 TJm +(people:) 29.3299 Tj +-409 TJm +(Michael) 32.6474 Tj +-300 TJm +(Burro) 23.2427 Tj +25 TJm +(ws) 11.0684 Tj +-299 TJm +(and) 14.386 Tj +-299 TJm +(Da) 11.6164 Tj +20 TJm +(vid) 12.7322 Tj +-300 TJm +(Wheeler) 33.7433 Tj +-299 TJm +(\(for) 14.9339 Tj +72 319.735 Td +(the) 12.1743 Tj +-312 TJm +(block) 22.1369 Tj +-313 TJm +(sorting) 27.6761 Tj +-312 TJm +(transformation\),) 64.468 Tj +-328 TJm +(Da) 11.6164 Tj +20 TJm +(vid) 12.7322 Tj +-312 TJm +(Wheeler) 33.7433 Tj +-313 TJm +(\(ag) 12.7222 Tj +5 TJm +(ain,) 14.6649 Tj +-327 TJm +(for) 11.6164 Tj +-313 TJm +(the) 12.1743 Tj +-312 TJm +(Huf) 15.4918 Tj +25 TJm +(fman) 20.4731 Tj +-312 TJm +(coder\),) 27.9351 Tj +-328 TJm +(Peter) 20.4731 Tj +-313 TJm +(Fenwick) 34.3112 Tj +-312 TJm +(\(for) 14.9339 Tj +-312 TJm +(the) 12.1743 Tj +-313 TJm +(structured) 39.8404 Tj +72 307.78 Td +(coding) 27.1182 Tj +-325 TJm +(model) 24.9065 Tj +-326 TJm +(in) 7.7509 Tj +-325 TJm +(the) 12.1743 Tj +-326 TJm +(original) 30.9936 Tj +[1 0 0 1 191.156 307.779] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -191.156 -307.779] cm +[1 0 0 1 0 0] Tm +0 0 Td +191.156 307.779 Td +/F134_0 9.9626 Tf +(bzip) 23.9102 Tj +[1 0 0 1 215.067 307.779] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -215.067 -307.779] cm +[1 0 0 1 0 0] Tm +0 0 Td +215.067 307.779 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-344 TJm +(and) 14.386 Tj +-326 TJm +(man) 17.1556 Tj +15 TJm +(y) 4.9813 Tj +-325 TJm +(re\002nements\),) 52.2937 Tj +-345 TJm +(and) 14.386 Tj +-325 TJm +(Alistair) 29.8878 Tj +-326 TJm +(Mof) 17.1556 Tj +25 TJm +(f) 3.31755 Tj +10 TJm +(at,) 9.68365 Tj +-344 TJm +(Radford) 32.6474 Tj +-325 TJm +(Neal) 18.8094 Tj +-326 TJm +(and) 14.386 Tj +-325 TJm +(Ian) 12.7222 Tj +-326 TJm +(W) 9.40469 Tj +40 TJm +(itten) 17.7135 Tj +-325 TJm +(\(for) 14.9339 Tj +72 295.824 Td +(the) 12.1743 Tj +-277 TJm +(arithmetic) 40.3983 Tj +-277 TJm +(coder) 22.1269 Tj +-277 TJm +(in) 7.7509 Tj +-277 TJm +(the) 12.1743 Tj +-277 TJm +(original) 30.9936 Tj +[1 0 0 1 214.171 295.824] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -214.171 -295.824] cm +[1 0 0 1 0 0] Tm +0 0 Td +214.171 295.824 Td +/F134_0 9.9626 Tf +(bzip) 23.9102 Tj +[1 0 0 1 238.082 295.824] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -238.082 -295.824] cm +[1 0 0 1 0 0] Tm +0 0 Td +238.082 295.824 Td +/F130_0 9.9626 Tf +(\).) 5.8082 Tj +-782 TJm +(I) 3.31755 Tj +-277 TJm +(am) 12.1743 Tj +-276 TJm +(much) 22.1369 Tj +-277 TJm +(indebted) 34.3112 Tj +-277 TJm +(for) 11.6164 Tj +-277 TJm +(their) 18.2614 Tj +-277 TJm +(help,) 19.6462 Tj +-284 TJm +(support) 29.8878 Tj +-277 TJm +(and) 14.386 Tj +-277 TJm +(advice.) 28.493 Tj +-781 TJm +(See) 14.386 Tj +-277 TJm +(the) 12.1743 Tj +-277 TJm +(manual) 29.3299 Tj +72 283.869 Td +(in) 7.7509 Tj +-330 TJm +(the) 12.1743 Tj +-330 TJm +(source) 26.0024 Tj +-330 TJm +(distrib) 25.4644 Tj +20 TJm +(ution) 20.4831 Tj +-330 TJm +(for) 11.6164 Tj +-329 TJm +(pointers) 32.0995 Tj +-330 TJm +(to) 7.7509 Tj +-330 TJm +(sources) 29.8778 Tj +-330 TJm +(of) 8.29885 Tj +-330 TJm +(documentation.) 61.7083 Tj +-1099 TJm +(Christian) 36.5329 Tj +-330 TJm +(v) 4.9813 Tj +20 TJm +(on) 9.9626 Tj +-330 TJm +(Roques) 29.8878 Tj +-330 TJm +(encouraged) 45.9176 Tj +-330 TJm +(me) 12.1743 Tj +-330 TJm +(to) 7.7509 Tj +-330 TJm +(look) 17.7135 Tj +72 271.914 Td +(for) 11.6164 Tj +-271 TJm +(f) 3.31755 Tj +10 TJm +(aster) 18.8094 Tj +-271 TJm +(sorting) 27.6761 Tj +-271 TJm +(algorithms,) 45.1107 Tj +-276 TJm +(so) 8.85675 Tj +-272 TJm +(as) 8.29885 Tj +-271 TJm +(to) 7.7509 Tj +-271 TJm +(speed) 22.6848 Tj +-271 TJm +(up) 9.9626 Tj +-271 TJm +(compression.) 52.8516 Tj +-746 TJm +(Bela) 18.2614 Tj +-271 TJm +(Lubkin) 28.782 Tj +-271 TJm +(encouraged) 45.9176 Tj +-271 TJm +(me) 12.1743 Tj +-272 TJm +(to) 7.7509 Tj +-271 TJm +(impro) 23.8007 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-271 TJm +(the) 12.1743 Tj +-271 TJm +(w) 7.193 Tj +10 TJm +(orst-case) 35.4071 Tj +72 259.959 Td +(compression) 50.3609 Tj +-340 TJm +(performance.) 52.8317 Tj +-580 TJm +(Donna) 26.5603 Tj +-339 TJm +(Robinson) 38.1966 Tj +-340 TJm +(XMLised) 38.1866 Tj +-340 TJm +(the) 12.1743 Tj +-340 TJm +(documentation.) 61.7083 Tj +-580 TJm +(Man) 18.2614 Tj +15 TJm +(y) 4.9813 Tj +-340 TJm +(people) 26.5603 Tj +-340 TJm +(sent) 16.0497 Tj +-339 TJm +(patches,) 32.3685 Tj +-363 TJm +(helped) 26.5603 Tj +-340 TJm +(with) 17.7135 Tj +72 248.004 Td +(portability) 41.5142 Tj +-250 TJm +(problems,) 39.5714 Tj +-250 TJm +(lent) 14.9439 Tj +-250 TJm +(machines,) 40.1194 Tj +-250 TJm +(g) 4.9813 Tj +5 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-250 TJm +(advice) 26.0024 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(were) 19.3573 Tj +-250 TJm +(generally) 37.0708 Tj +-250 TJm +(helpful.) 30.7147 Tj +[1 0 0 1 72 245.847] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -194.995] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.5851] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 43.0633 -6.4855] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.332 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +539.395 50.9514 Td +/F130_0 9.9626 Tf +(7) 4.9813 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 11 11 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 4.3836 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 141.643 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -141.643 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -13.9477] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -15.0365 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 701.916 Td +/F122_0 24.7902 Tf +(3.) 20.675 Tj +-556 TJm +(Pr) 26.1785 Tj +20 TJm +(ogramming) 134.983 Tj +-278 TJm +(with) 49.5804 Tj +[1 0 0 1 330.484 701.916] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -330.484 -701.916] cm +[1 0 0 1 0 0] Tm +0 0 Td +330.484 701.916 Td +/F392_0 24.7902 Tf +(libbzip2) 118.993 Tj +[1 0 0 1 449.477 701.916] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -377.477 -5.5156] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -14.9439] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -671.493] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 656.35 Td +/F122_0 17.2154 Tf +(T) 10.5186 Tj +80 TJm +(ab) 20.0904 Tj +10 TJm +(le) 14.3576 Tj +-278 TJm +(of) 16.2513 Tj +-278 TJm +(Contents) 74.5943 Tj +[1 0 0 1 72 647.528] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.7401] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -635.788] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 635.788 Td +/F130_0 9.9626 Tf +(3.1.) 14.9439 Tj +-310 TJm +(T) 6.08715 Tj +80 TJm +(op-le) 20.4731 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(structure) 34.8591 Tj +[1 0 0 1 164.921 635.788] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -169.902 -635.788] cm +[1 0 0 1 0 0] Tm +0 0 Td +179.997 635.788 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 635.788] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -635.788] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 635.788 Td +/F130_0 9.9626 Tf +(8) 4.9813 Tj +[1 0 0 1 516.09 635.788] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -623.832] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 623.832 Td +/F130_0 9.9626 Tf +(3.1.1.) 22.4159 Tj +-310 TJm +(Lo) 11.0684 Tj +25 TJm +(w-le) 17.7035 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(summary) 37.0808 Tj +[1 0 0 1 177.374 623.832] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -182.355 -623.832] cm +[1 0 0 1 0 0] Tm +0 0 Td +192.866 623.832 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 623.832] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -623.832] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 623.832 Td +/F130_0 9.9626 Tf +(9) 4.9813 Tj +[1 0 0 1 516.09 623.832] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1569] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -611.877] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 611.877 Td +/F130_0 9.9626 Tf +(3.1.2.) 22.4159 Tj +-310 TJm +(High-le) 30.4357 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(summary) 37.0808 Tj +[1 0 0 1 179.287 611.877] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -184.268 -611.877] cm +[1 0 0 1 0 0] Tm +0 0 Td +193.822 611.877 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 611.877] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -611.877] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 611.877 Td +/F130_0 9.9626 Tf +(9) 4.9813 Tj +[1 0 0 1 516.09 611.877] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -599.922] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 599.922 Td +/F130_0 9.9626 Tf +(3.1.3.) 22.4159 Tj +-310 TJm +(Utility) 26.0223 Tj +-250 TJm +(functions) 37.0808 Tj +-250 TJm +(summary) 37.0808 Tj +[1 0 0 1 202.669 599.922] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -207.65 -599.922] cm +[1 0 0 1 0 0] Tm +0 0 Td +216.582 599.922 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 511.108 599.922] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.108 -599.922] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.108 599.922 Td +/F130_0 9.9626 Tf +(9) 4.9813 Tj +[1 0 0 1 516.09 599.922] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -587.967] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 587.967 Td +/F130_0 9.9626 Tf +(3.2.) 14.9439 Tj +-310 TJm +(Error) 21.0211 Tj +-250 TJm +(handling) 34.8691 Tj +[1 0 0 1 148.413 587.967] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -153.394 -587.967] cm +[1 0 0 1 0 0] Tm +0 0 Td +162.611 587.967 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 587.967] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -587.967] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 587.967 Td +/F130_0 9.9626 Tf +(10) 9.9626 Tj +[1 0 0 1 516.09 587.967] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1569] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -576.012] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 576.012 Td +/F130_0 9.9626 Tf +(3.3.) 14.9439 Tj +-310 TJm +(Lo) 11.0684 Tj +25 TJm +(w-le) 17.7035 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(interf) 21.579 Tj +10 TJm +(ace) 13.2702 Tj +[1 0 0 1 167.571 576.012] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -172.552 -576.012] cm +[1 0 0 1 0 0] Tm +0 0 Td +181.045 576.012 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 576.012] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -576.012] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 576.012 Td +/F130_0 9.9626 Tf +(11) 9.9626 Tj +[1 0 0 1 516.09 576.012] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -0.0995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.8557] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -564.056] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 564.056 Td +/F130_0 9.9626 Tf +(3.3.1.) 22.4159 Tj +[1 0 0 1 97.5043 564.056] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -564.056] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 564.056 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 205.101 564.056] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.082 -564.056] cm +[1 0 0 1 0 0] Tm +0 0 Td +219.736 564.056 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 564.056] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -564.056] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 564.056 Td +/F130_0 9.9626 Tf +(11) 9.9626 Tj +[1 0 0 1 516.09 564.056] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5341] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -552.101] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 552.101 Td +/F130_0 9.9626 Tf +(3.3.2.) 22.4159 Tj +[1 0 0 1 97.5043 552.101] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -552.101] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 552.101 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 181.19 552.101] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -186.172 -552.101] cm +[1 0 0 1 0 0] Tm +0 0 Td +194.497 552.101 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 552.101] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -552.101] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 552.101 Td +/F130_0 9.9626 Tf +(13) 9.9626 Tj +[1 0 0 1 516.09 552.101] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -540.146] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 540.146 Td +/F130_0 9.9626 Tf +(3.3.3.) 22.4159 Tj +[1 0 0 1 97.5043 540.146] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -540.146] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 540.146 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressEnd) 101.619 Tj +[1 0 0 1 199.123 540.146] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -204.105 -540.146] cm +[1 0 0 1 0 0] Tm +0 0 Td +214.533 540.146 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 540.146] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -540.146] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 540.146 Td +/F130_0 9.9626 Tf +(16) 9.9626 Tj +[1 0 0 1 516.09 540.146] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -528.191] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 528.191 Td +/F130_0 9.9626 Tf +(3.3.4.) 22.4159 Tj +[1 0 0 1 97.5043 528.191] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -528.191] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 528.191 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressInit) 119.551 Tj +[1 0 0 1 217.056 528.191] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -222.037 -528.191] cm +[1 0 0 1 0 0] Tm +0 0 Td +232.355 528.191 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 528.191] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -528.191] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 528.191 Td +/F130_0 9.9626 Tf +(16) 9.9626 Tj +[1 0 0 1 516.09 528.191] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5341] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -516.236] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 516.236 Td +/F130_0 9.9626 Tf +(3.3.5.) 22.4159 Tj +[1 0 0 1 97.5043 516.236] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -516.236] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 516.236 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 193.146 516.236] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -198.127 -516.236] cm +[1 0 0 1 0 0] Tm +0 0 Td +207.116 516.236 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 516.236] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -516.236] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 516.236 Td +/F130_0 9.9626 Tf +(17) 9.9626 Tj +[1 0 0 1 516.09 516.236] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -504.281] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 504.281 Td +/F130_0 9.9626 Tf +(3.3.6.) 22.4159 Tj +[1 0 0 1 97.5043 504.281] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -504.281] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 504.281 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressEnd) 113.574 Tj +[1 0 0 1 211.078 504.281] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -216.06 -504.281] cm +[1 0 0 1 0 0] Tm +0 0 Td +224.938 504.281 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 504.281] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -504.281] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 504.281 Td +/F130_0 9.9626 Tf +(18) 9.9626 Tj +[1 0 0 1 516.09 504.281] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -492.325] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 492.325 Td +/F130_0 9.9626 Tf +(3.4.) 14.9439 Tj +-310 TJm +(High-le) 30.4357 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(interf) 21.579 Tj +10 TJm +(ace) 13.2702 Tj +[1 0 0 1 169.483 492.325] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -174.465 -492.325] cm +[1 0 0 1 0 0] Tm +0 0 Td +184.216 492.325 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 492.325] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -492.325] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 492.325 Td +/F130_0 9.9626 Tf +(18) 9.9626 Tj +[1 0 0 1 516.09 492.325] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -480.37] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 480.37 Td +/F130_0 9.9626 Tf +(3.4.1.) 22.4159 Tj +[1 0 0 1 97.5043 480.37] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -480.37] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 480.37 Td +/F134_0 9.9626 Tf +(BZ2_bzReadOpen) 83.6858 Tj +[1 0 0 1 181.19 480.37] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -186.172 -480.37] cm +[1 0 0 1 0 0] Tm +0 0 Td +194.497 480.37 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 480.37] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -480.37] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 480.37 Td +/F130_0 9.9626 Tf +(19) 9.9626 Tj +[1 0 0 1 516.09 480.37] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -468.415] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 468.415 Td +/F130_0 9.9626 Tf +(3.4.2.) 22.4159 Tj +[1 0 0 1 97.5043 468.415] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -468.415] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 468.415 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 157.28 468.415] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -162.261 -468.415] cm +[1 0 0 1 0 0] Tm +0 0 Td +171.472 468.415 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 468.415] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -468.415] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 468.415 Td +/F130_0 9.9626 Tf +(20) 9.9626 Tj +[1 0 0 1 516.09 468.415] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.6452] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -456.46] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 456.46 Td +/F130_0 9.9626 Tf +(3.4.3.) 22.4159 Tj +[1 0 0 1 97.5043 456.46] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -456.46] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 456.46 Td +/F134_0 9.9626 Tf +(BZ2_bzReadGetUnused) 113.574 Tj +[1 0 0 1 211.078 456.46] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -216.06 -456.46] cm +[1 0 0 1 0 0] Tm +0 0 Td +224.938 456.46 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 456.46] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -456.46] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 456.46 Td +/F130_0 9.9626 Tf +(21) 9.9626 Tj +[1 0 0 1 516.09 456.46] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.6452] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -444.505] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 444.505 Td +/F130_0 9.9626 Tf +(3.4.4.) 22.4159 Tj +[1 0 0 1 97.5043 444.505] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -444.505] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 444.505 Td +/F134_0 9.9626 Tf +(BZ2_bzReadClose) 89.6634 Tj +[1 0 0 1 187.168 444.505] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -192.149 -444.505] cm +[1 0 0 1 0 0] Tm +0 0 Td +201.914 444.505 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 444.505] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -444.505] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 444.505 Td +/F130_0 9.9626 Tf +(22) 9.9626 Tj +[1 0 0 1 516.09 444.505] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.6451] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -432.55] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 432.55 Td +/F130_0 9.9626 Tf +(3.4.5.) 22.4159 Tj +[1 0 0 1 97.5043 432.55] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -432.55] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 432.55 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteOpen) 89.6634 Tj +[1 0 0 1 187.168 432.55] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -192.149 -432.55] cm +[1 0 0 1 0 0] Tm +0 0 Td +201.914 432.55 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 432.55] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -432.55] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 432.55 Td +/F130_0 9.9626 Tf +(22) 9.9626 Tj +[1 0 0 1 516.09 432.55] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -420.594] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 420.594 Td +/F130_0 9.9626 Tf +(3.4.6.) 22.4159 Tj +[1 0 0 1 97.5043 420.594] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -420.594] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 420.594 Td +/F134_0 9.9626 Tf +(BZ2_bzWrite) 65.7532 Tj +[1 0 0 1 163.258 420.594] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -168.239 -420.594] cm +[1 0 0 1 0 0] Tm +0 0 Td +176.675 420.594 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 420.594] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -420.594] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 420.594 Td +/F130_0 9.9626 Tf +(23) 9.9626 Tj +[1 0 0 1 516.09 420.594] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.6452] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -408.639] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 408.639 Td +/F130_0 9.9626 Tf +(3.4.7.) 22.4159 Tj +[1 0 0 1 97.5043 408.639] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -408.639] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 408.639 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteClose) 95.641 Tj +[1 0 0 1 193.146 408.639] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -198.127 -408.639] cm +[1 0 0 1 0 0] Tm +0 0 Td +207.116 408.639 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 408.639] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -408.639] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 408.639 Td +/F130_0 9.9626 Tf +(23) 9.9626 Tj +[1 0 0 1 516.09 408.639] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.6451] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -396.684] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 396.684 Td +/F130_0 9.9626 Tf +(3.4.8.) 22.4159 Tj +-310 TJm +(Handling) 37.0808 Tj +-250 TJm +(embedded) 40.9463 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(streams) 30.4357 Tj +[1 0 0 1 279.56 396.684] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -284.541 -396.684] cm +[1 0 0 1 0 0] Tm +0 0 Td +294.601 396.684 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 396.684] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -396.684] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 396.684 Td +/F130_0 9.9626 Tf +(24) 9.9626 Tj +[1 0 0 1 516.09 396.684] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -384.729] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 384.729 Td +/F130_0 9.9626 Tf +(3.4.9.) 22.4159 Tj +-310 TJm +(Standard) 35.417 Tj +-250 TJm +(\002le-reading/writing) 77.4791 Tj +-250 TJm +(code) 18.8094 Tj +[1 0 0 1 234.19 384.729] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -239.172 -384.729] cm +[1 0 0 1 0 0] Tm +0 0 Td +247.564 384.729 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 384.729] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -384.729] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 384.729 Td +/F130_0 9.9626 Tf +(25) 9.9626 Tj +[1 0 0 1 516.09 384.729] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -372.774] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 372.774 Td +/F130_0 9.9626 Tf +(3.5.) 14.9439 Tj +-310 TJm +(Utility) 26.0223 Tj +-250 TJm +(functions) 37.0808 Tj +[1 0 0 1 155.625 372.774] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -160.607 -372.774] cm +[1 0 0 1 0 0] Tm +0 0 Td +170.645 372.774 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 372.774] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -372.774] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 372.774 Td +/F130_0 9.9626 Tf +(26) 9.9626 Tj +[1 0 0 1 516.09 372.774] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -360.819] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 360.819 Td +/F130_0 9.9626 Tf +(3.5.1.) 22.4159 Tj +[1 0 0 1 97.5043 360.819] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -360.819] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 360.819 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffCompress) 143.461 Tj +[1 0 0 1 240.966 360.819] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -245.948 -360.819] cm +[1 0 0 1 0 0] Tm +0 0 Td +255.38 360.819 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 360.819] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -360.819] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 360.819 Td +/F130_0 9.9626 Tf +(26) 9.9626 Tj +[1 0 0 1 516.09 360.819] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -348.863] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 348.863 Td +/F130_0 9.9626 Tf +(3.5.2.) 22.4159 Tj +[1 0 0 1 97.5043 348.863] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -97.5043 -348.863] cm +[1 0 0 1 0 0] Tm +0 0 Td +97.5043 348.863 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffDecompress) 155.417 Tj +[1 0 0 1 252.922 348.863] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -257.903 -348.863] cm +[1 0 0 1 0 0] Tm +0 0 Td +267.999 348.863 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 348.863] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -348.863] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 348.863 Td +/F130_0 9.9626 Tf +(27) 9.9626 Tj +[1 0 0 1 516.09 348.863] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -1.5342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -10.421] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -336.908] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 336.908 Td +/F130_0 9.9626 Tf +(3.6.) 14.9439 Tj +[1 0 0 1 90.0324 336.908] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90.0324 -336.908] cm +[1 0 0 1 0 0] Tm +0 0 Td +90.0324 336.908 Td +/F134_0 9.9626 Tf +(zlib) 23.9102 Tj +[1 0 0 1 113.943 336.908] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -113.943 -336.908] cm +[1 0 0 1 0 0] Tm +0 0 Td +116.433 336.908 Td +/F130_0 9.9626 Tf +(compatibility) 53.1405 Tj +-250 TJm +(functions) 37.0808 Tj +[1 0 0 1 209.144 336.908] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -214.126 -336.908] cm +[1 0 0 1 0 0] Tm +0 0 Td +223.971 336.908 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 336.908] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -336.908] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 336.908 Td +/F130_0 9.9626 Tf +(28) 9.9626 Tj +[1 0 0 1 516.09 336.908] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -324.953] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 324.953 Td +/F130_0 9.9626 Tf +(3.7.) 14.9439 Tj +-310 TJm +(Using) 23.8007 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(library) 26.5603 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(a) 4.42339 Tj +[1 0 0 1 177.195 324.953] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -177.195 -324.953] cm +[1 0 0 1 0 0] Tm +0 0 Td +177.195 324.953 Td +/F134_0 9.9626 Tf +(stdio) 29.8878 Tj +[1 0 0 1 207.083 324.953] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -207.083 -324.953] cm +[1 0 0 1 0 0] Tm +0 0 Td +207.083 324.953 Td +/F130_0 9.9626 Tf +(-free) 18.7994 Tj +-250 TJm +(en) 9.40469 Tj +40 TJm +(vironment) 40.9562 Tj +[1 0 0 1 278.335 324.953] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -283.316 -324.953] cm +[1 0 0 1 0 0] Tm +0 0 Td +291.775 324.953 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 324.953] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -324.953] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 324.953 Td +/F130_0 9.9626 Tf +(28) 9.9626 Tj +[1 0 0 1 516.09 324.953] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1569] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -312.998] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 312.998 Td +/F130_0 9.9626 Tf +(3.7.1.) 22.4159 Tj +-310 TJm +(Getting) 29.8878 Tj +-250 TJm +(rid) 11.0684 Tj +-250 TJm +(of) 8.29885 Tj +[1 0 0 1 154.231 312.998] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -154.231 -312.998] cm +[1 0 0 1 0 0] Tm +0 0 Td +154.231 312.998 Td +/F134_0 9.9626 Tf +(stdio) 29.8878 Tj +[1 0 0 1 184.119 312.998] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -189.1 -312.998] cm +[1 0 0 1 0 0] Tm +0 0 Td +198.175 312.998 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 312.998] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -312.998] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 312.998 Td +/F130_0 9.9626 Tf +(29) 9.9626 Tj +[1 0 0 1 516.09 312.998] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -301.043] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 301.043 Td +/F130_0 9.9626 Tf +(3.7.2.) 22.4159 Tj +-310 TJm +(Critical) 29.8878 Tj +-250 TJm +(error) 19.3573 Tj +-250 TJm +(handling) 34.8691 Tj +[1 0 0 1 186.599 301.043] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -191.58 -301.043] cm +[1 0 0 1 0 0] Tm +0 0 Td +201.629 301.043 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 301.043] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -301.043] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 301.043 Td +/F130_0 9.9626 Tf +(29) 9.9626 Tj +[1 0 0 1 516.09 301.043] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -289.088] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 289.088 Td +/F130_0 9.9626 Tf +(3.8.) 14.9439 Tj +-310 TJm +(Making) 30.9936 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(W) 9.40469 Tj +40 TJm +(indo) 17.7135 Tj +25 TJm +(ws) 11.0684 Tj +-250 TJm +(DLL) 19.3673 Tj +[1 0 0 1 189.828 289.088] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -194.809 -289.088] cm +[1 0 0 1 0 0] Tm +0 0 Td +203.243 289.088 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 289.088] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -289.088] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 289.088 Td +/F130_0 9.9626 Tf +(29) 9.9626 Tj +[1 0 0 1 516.09 289.088] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1569] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -267.006] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 257.207 Td +/F130_0 9.9626 Tf +(This) 17.7135 Tj +-250 TJm +(chapter) 29.3199 Tj +-250 TJm +(describes) 37.0708 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(programming) 54.2364 Tj +-250 TJm +(interf) 21.579 Tj +10 TJm +(ace) 13.2702 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 282.448 257.207] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -282.448 -257.207] cm +[1 0 0 1 0 0] Tm +0 0 Td +282.448 257.207 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 330.269 257.207] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -330.269 -257.207] cm +[1 0 0 1 0 0] Tm +0 0 Td +330.269 257.207 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 255.05] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -245.088] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 235.289 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-273 TJm +(general) 29.3199 Tj +-272 TJm +(background) 47.0334 Tj +-273 TJm +(information,) 49.534 Tj +-278 TJm +(particularly) 45.9276 Tj +-273 TJm +(about) 22.1369 Tj +-273 TJm +(memory) 33.2053 Tj +-272 TJm +(use) 13.2801 Tj +-273 TJm +(and) 14.386 Tj +-273 TJm +(performance) 50.341 Tj +-272 TJm +(aspects,) 31.2626 Tj +-279 TJm +(you') 18.2614 Tj +50 TJm +(d) 4.9813 Tj +-272 TJm +(be) 9.40469 Tj +-273 TJm +(well) 17.1556 Tj +-273 TJm +(advised) 30.4357 Tj +72 223.334 Td +(to) 7.7509 Tj +-250 TJm +(read) 17.1456 Tj +[1 0 0 1 101.878 223.334] cm +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -101.878 -223.334] cm +[1 0 0 1 0 0] Tm +0 0 Td +101.878 223.334 Td +/F130_0 9.9626 Tf +(Ho) 12.1743 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(bzip2) 22.1369 Tj +[1 0 0 1 171.636 223.334] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -171.636 -223.334] cm +[1 0 0 1 0 0] Tm +0 0 Td +174.126 223.334 Td +/F130_0 9.9626 Tf +([2]) 11.6164 Tj +[1 0 0 1 185.743 223.334] cm +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -185.743 -223.334] cm +[1 0 0 1 0 0] Tm +0 0 Td +188.233 223.334 Td +/F130_0 9.9626 Tf +(as) 8.29885 Tj +-250 TJm +(well.) 19.6462 Tj +[1 0 0 1 72 221.177] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -211.215] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 188.581 Td +/F122_0 20.6585 Tf +(3.1.) 34.4584 Tj +-278 TJm +(T) 12.6223 Tj +80 TJm +(op-le) 49.3532 Tj +15 TJm +(vel) 28.7153 Tj +-278 TJm +(structure) 89.5339 Tj +[1 0 0 1 72 184.305] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -174.343] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 166.664 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 119.821 166.664] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.821 -166.664] cm +[1 0 0 1 0 0] Tm +0 0 Td +123.608 166.664 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-380 TJm +(a) 4.42339 Tj +-380 TJm +(\003e) 9.9626 Tj +15 TJm +(xible) 19.9252 Tj +-381 TJm +(library) 26.5603 Tj +-380 TJm +(for) 11.6164 Tj +-380 TJm +(compressing) 50.3609 Tj +-380 TJm +(and) 14.386 Tj +-380 TJm +(decompressing) 59.7656 Tj +-380 TJm +(data) 16.5977 Tj +-381 TJm +(in) 7.7509 Tj +-380 TJm +(the) 12.1743 Tj +[1 0 0 1 405.291 166.664] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -405.291 -166.664] cm +[1 0 0 1 0 0] Tm +0 0 Td +405.291 166.664 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 435.178 166.664] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -435.178 -166.664] cm +[1 0 0 1 0 0] Tm +0 0 Td +438.966 166.664 Td +/F130_0 9.9626 Tf +(data) 16.5977 Tj +-380 TJm +(format.) 29.0509 Tj +-1401 TJm +(Although) 37.6387 Tj +72 154.708 Td +(packaged) 37.6188 Tj +-285 TJm +(as) 8.29885 Tj +-284 TJm +(a) 4.42339 Tj +-285 TJm +(single) 23.8007 Tj +-285 TJm +(entity) 22.6948 Tj +65 TJm +(,) 2.49065 Tj +-293 TJm +(it) 5.53921 Tj +-285 TJm +(helps) 21.031 Tj +-285 TJm +(to) 7.7509 Tj +-284 TJm +(re) 7.74094 Tj +15 TJm +(g) 4.9813 Tj +5 TJm +(ard) 12.7222 Tj +-285 TJm +(the) 12.1743 Tj +-285 TJm +(library) 26.5603 Tj +-284 TJm +(as) 8.29885 Tj +-285 TJm +(three) 19.9152 Tj +-285 TJm +(separate) 32.6375 Tj +-284 TJm +(parts:) 22.1369 Tj +-380 TJm +(the) 12.1743 Tj +-285 TJm +(lo) 7.7509 Tj +25 TJm +(w) 7.193 Tj +-284 TJm +(le) 7.193 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-285 TJm +(interf) 21.579 Tj +10 TJm +(ace,) 15.7608 Tj +-293 TJm +(and) 14.386 Tj +-285 TJm +(the) 12.1743 Tj +-285 TJm +(high) 17.7135 Tj +72 142.753 Td +(le) 7.193 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(interf) 21.579 Tj +10 TJm +(ace,) 15.7608 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(some) 21.031 Tj +-250 TJm +(utility) 23.8106 Tj +-250 TJm +(functions.) 39.5714 Tj +[1 0 0 1 72 140.596] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -130.634] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 120.835 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-349 TJm +(structure) 34.8591 Tj +-349 TJm +(of) 8.29885 Tj +[1 0 0 1 141.082 120.835] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -141.082 -120.835] cm +[1 0 0 1 0 0] Tm +0 0 Td +141.082 120.835 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 188.903 120.835] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -188.903 -120.835] cm +[1 0 0 1 0 0] Tm +0 0 Td +188.903 120.835 Td +/F130_0 9.9626 Tf +(') 3.31755 Tj +55 TJm +(s) 3.87545 Tj +-349 TJm +(interf) 21.579 Tj +10 TJm +(aces) 17.1456 Tj +-349 TJm +(is) 6.64505 Tj +-349 TJm +(similar) 27.6761 Tj +-349 TJm +(to) 7.7509 Tj +-349 TJm +(that) 14.9439 Tj +-349 TJm +(of) 8.29885 Tj +-349 TJm +(Jean-loup) 38.7346 Tj +-349 TJm +(Gailly') 28.224 Tj +55 TJm +(s) 3.87545 Tj +-349 TJm +(and) 14.386 Tj +-349 TJm +(Mark) 21.579 Tj +-349 TJm +(Adler') 26.0024 Tj +55 TJm +(s) 3.87545 Tj +-349 TJm +(e) 4.42339 Tj +15 TJm +(xcellent) 31.5416 Tj +[1 0 0 1 516.09 120.835] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -516.09 -120.835] cm +[1 0 0 1 0 0] Tm +0 0 Td +516.09 120.835 Td +/F134_0 9.9626 Tf +(zlib) 23.9102 Tj +[1 0 0 1 540 120.835] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -120.835] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 108.88 Td +/F130_0 9.9626 Tf +(library) 26.5603 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 106.723] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -96.7608] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 86.9624 Td +/F130_0 9.9626 Tf +(All) 12.7322 Tj +-242 TJm +(e) 4.42339 Tj +15 TJm +(xternally) 35.417 Tj +-242 TJm +(visible) 26.5703 Tj +-241 TJm +(symbols) 33.2153 Tj +-242 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-242 TJm +(names) 25.4544 Tj +-242 TJm +(be) 9.40469 Tj +15 TJm +(ginning) 30.4457 Tj +[1 0 0 1 284.687 86.9624] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -284.687 -86.9624] cm +[1 0 0 1 0 0] Tm +0 0 Td +284.687 86.9624 Td +/F134_0 9.9626 Tf +(BZ2_) 23.9102 Tj +[1 0 0 1 308.597 86.9624] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -308.597 -86.9624] cm +[1 0 0 1 0 0] Tm +0 0 Td +308.597 86.9624 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-615 TJm +(This) 17.7135 Tj +-241 TJm +(is) 6.64505 Tj +-242 TJm +(ne) 9.40469 Tj +25 TJm +(w) 7.193 Tj +-242 TJm +(in) 7.7509 Tj +-242 TJm +(v) 4.9813 Tj +15 TJm +(ersion) 24.3486 Tj +-242 TJm +(1.0.) 14.9439 Tj +-614 TJm +(The) 15.4918 Tj +-242 TJm +(intention) 35.427 Tj +-242 TJm +(is) 6.64505 Tj +-241 TJm +(to) 7.7509 Tj +-242 TJm +(minimise) 37.0908 Tj +72 75.0073 Td +(pollution) 35.9849 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(namespaces) 47.5814 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(library) 26.5603 Tj +-250 TJm +(clients.) 28.503 Tj +[1 0 0 1 72 72.8505] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -21.9987] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 4.3836 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 43.0633 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -498.225 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +541.288 50.9514 Td +/F130_0 9.9626 Tf +(8) 4.9813 Tj +[1 0 0 1 455.161 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5986 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -15.0366 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 12 12 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 4.3836 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -344.462 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +420.96 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 498.449 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -498.449 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +498.449 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 546.269 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -15.0365 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F130_0 9.9626 Tf +(T) 6.08715 Tj +80 TJm +(o) 4.9813 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-250 TJm +(part) 15.4918 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(library) 26.5603 Tj +65 TJm +(,) 2.49065 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(need) 18.8094 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 240.567 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -240.567 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +240.567 710.037 Td +/F134_0 9.9626 Tf +(#include) 47.8205 Tj +-600 TJm +(<bzlib.h>) 53.798 Tj +[1 0 0 1 348.163 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -348.163 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +350.654 710.037 Td +/F130_0 9.9626 Tf +(into) 15.5018 Tj +-250 TJm +(your) 18.2614 Tj +-250 TJm +(sources.) 32.3685 Tj +[1 0 0 1 72 707.88] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -697.918] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 679.416 Td +/F122_0 17.2154 Tf +(3.1.1.) 43.0729 Tj +-278 TJm +(Lo) 21.0372 Tj +15 TJm +(w-le) 33.484 Tj +15 TJm +(vel) 23.9294 Tj +-278 TJm +(summar) 66.9679 Tj +-10 TJm +(y) 9.57176 Tj +[1 0 0 1 72 675.853] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -665.89] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 657.498 Td +/F130_0 9.9626 Tf +(This) 17.7135 Tj +-212 TJm +(interf) 21.579 Tj +10 TJm +(ace) 13.2702 Tj +-212 TJm +(pro) 13.2801 Tj +15 TJm +(vides) 21.031 Tj +-212 TJm +(services) 32.0895 Tj +-212 TJm +(for) 11.6164 Tj +-212 TJm +(compressing) 50.3609 Tj +-212 TJm +(and) 14.386 Tj +-212 TJm +(decompress) 47.0334 Tj +1 TJm +(ing) 12.7322 Tj +-212 TJm +(data) 16.5977 Tj +-212 TJm +(in) 7.7509 Tj +-212 TJm +(memory) 33.2053 Tj +65 TJm +(.) 2.49065 Tj +-595 TJm +(There') 26.5503 Tj +55 TJm +(s) 3.87545 Tj +-212 TJm +(no) 9.9626 Tj +-212 TJm +(pro) 13.2801 Tj +15 TJm +(vision) 24.3586 Tj +-212 TJm +(for) 11.6164 Tj +-212 TJm +(dealing) 29.3299 Tj +72 645.543 Td +(with) 17.7135 Tj +-213 TJm +(\002les,) 19.0983 Tj +-220 TJm +(streams) 30.4357 Tj +-213 TJm +(or) 8.29885 Tj +-213 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-213 TJm +(other) 20.4731 Tj +-213 TJm +(I/O) 13.2801 Tj +-213 TJm +(mechanisms,) 51.7457 Tj +-221 TJm +(just) 14.396 Tj +-213 TJm +(straight) 29.8878 Tj +-213 TJm +(memory-to-memory) 80.7967 Tj +-213 TJm +(w) 7.193 Tj +10 TJm +(ork.) 15.7708 Tj +-595 TJm +(In) 8.29885 Tj +-213 TJm +(f) 3.31755 Tj +10 TJm +(act,) 14.107 Tj +-221 TJm +(this) 14.396 Tj +-213 TJm +(part) 15.4918 Tj +-213 TJm +(of) 8.29885 Tj +-213 TJm +(the) 12.1743 Tj +-213 TJm +(library) 26.5603 Tj +72 633.588 Td +(can) 13.8281 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(compiled) 37.0808 Tj +-250 TJm +(without) 30.4457 Tj +-250 TJm +(inclusion) 36.5329 Tj +-250 TJm +(of) 8.29885 Tj +[1 0 0 1 222.534 633.588] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -222.534 -633.588] cm +[1 0 0 1 0 0] Tm +0 0 Td +222.534 633.588 Td +/F134_0 9.9626 Tf +(stdio.h) 41.8429 Tj +[1 0 0 1 264.377 633.588] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -264.377 -633.588] cm +[1 0 0 1 0 0] Tm +0 0 Td +264.377 633.588 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(which) 24.3486 Tj +-250 TJm +(may) 17.1556 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(helpful) 28.224 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(embedded) 40.9463 Tj +-250 TJm +(applications.) 50.6399 Tj +[1 0 0 1 72 631.431] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -621.469] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 611.67 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-250 TJm +(lo) 7.7509 Tj +25 TJm +(w-le) 17.7035 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(part) 15.4918 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(library) 26.5603 Tj +-250 TJm +(has) 13.2801 Tj +-250 TJm +(no) 9.9626 Tj +-250 TJm +(global) 24.9065 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(ariables) 30.9837 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(therefore) 35.955 Tj +-250 TJm +(thread-safe.) 46.7445 Tj +[1 0 0 1 72 609.513] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -599.551] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 589.752 Td +/F130_0 9.9626 Tf +(Six) 13.2901 Tj +-875 TJm +(routines) 32.0995 Tj +-876 TJm +(mak) 17.1556 Tj +10 TJm +(e) 4.42339 Tj +-875 TJm +(up) 9.9626 Tj +-876 TJm +(the) 12.1743 Tj +-875 TJm +(lo) 7.7509 Tj +25 TJm +(w) 7.193 Tj +-876 TJm +(le) 7.193 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-875 TJm +(interf) 21.579 Tj +10 TJm +(ace:) 16.0398 Tj +[1 0 0 1 308.791 589.752] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -308.791 -589.752] cm +[1 0 0 1 0 0] Tm +0 0 Td +308.791 589.752 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 416.387 589.752] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -416.387 -589.752] cm +[1 0 0 1 0 0] Tm +0 0 Td +416.387 589.752 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 429.158 589.752] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -429.158 -589.752] cm +[1 0 0 1 0 0] Tm +0 0 Td +429.158 589.752 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 512.844 589.752] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -512.844 -589.752] cm +[1 0 0 1 0 0] Tm +0 0 Td +512.844 589.752 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-1032 TJm +(and) 14.386 Tj +[1 0 0 1 72 577.797] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -577.797] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 577.797 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressEnd) 101.619 Tj +[1 0 0 1 173.619 577.797] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -173.619 -577.797] cm +[1 0 0 1 0 0] Tm +0 0 Td +186.15 577.797 Td +/F130_0 9.9626 Tf +(for) 11.6164 Tj +-1258 TJm +(compression,) 52.8516 Tj +-1510 TJm +(and) 14.386 Tj +-1257 TJm +(a) 4.42339 Tj +-1258 TJm +(corresponding) 56.996 Tj +-1258 TJm +(trio) 13.8381 Tj +[1 0 0 1 417.958 577.797] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -417.958 -577.797] cm +[1 0 0 1 0 0] Tm +0 0 Td +417.958 577.797 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressInit) 119.551 Tj +[1 0 0 1 537.509 577.797] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -537.509 -577.797] cm +[1 0 0 1 0 0] Tm +0 0 Td +537.509 577.797 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 72 565.842] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -565.842] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 565.842 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 167.641 565.842] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -167.641 -565.842] cm +[1 0 0 1 0 0] Tm +0 0 Td +172.707 565.842 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 192.158 565.842] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -192.158 -565.842] cm +[1 0 0 1 0 0] Tm +0 0 Td +192.158 565.842 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressEnd) 113.574 Tj +[1 0 0 1 305.732 565.842] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -305.732 -565.842] cm +[1 0 0 1 0 0] Tm +0 0 Td +310.798 565.842 Td +/F130_0 9.9626 Tf +(for) 11.6164 Tj +-508 TJm +(decompression.) 62.2563 Tj +-2171 TJm +(The) 15.4918 Tj +[1 0 0 1 431.918 565.842] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -431.918 -565.842] cm +[1 0 0 1 0 0] Tm +0 0 Td +431.918 564.099 Td +/F134_0 9.9626 Tf +(*) 5.97756 Tj +437.895 565.842 Td +(Init) 23.9102 Tj +[1 0 0 1 461.805 565.842] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -461.805 -565.842] cm +[1 0 0 1 0 0] Tm +0 0 Td +466.871 565.842 Td +/F130_0 9.9626 Tf +(functions) 37.0808 Tj +-508 TJm +(allocate) 30.9837 Tj +72 553.887 Td +(memory) 33.2053 Tj +-574 TJm +(for) 11.6164 Tj +-573 TJm +(compression/decompression) 112.896 Tj +-574 TJm +(and) 14.386 Tj +-574 TJm +(do) 9.9626 Tj +-573 TJm +(other) 20.4731 Tj +-574 TJm +(initialisations,) 56.1891 Tj +-654 TJm +(whilst) 24.3586 Tj +-574 TJm +(the) 12.1743 Tj +[1 0 0 1 419.502 553.887] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -419.502 -553.887] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.502 552.144 Td +/F134_0 9.9626 Tf +(*) 5.97756 Tj +425.48 553.887 Td +(End) 17.9327 Tj +[1 0 0 1 443.413 553.887] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -443.413 -553.887] cm +[1 0 0 1 0 0] Tm +0 0 Td +449.128 553.887 Td +/F130_0 9.9626 Tf +(functions) 37.0808 Tj +-574 TJm +(close) 20.4731 Tj +-573 TJm +(do) 9.9626 Tj +25 TJm +(wn) 12.1743 Tj +72 541.932 Td +(operations) 41.5042 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(release) 27.6562 Tj +-250 TJm +(memory) 33.2053 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 539.775] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -529.812] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 520.014 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-303 TJm +(real) 14.9339 Tj +-303 TJm +(w) 7.193 Tj +10 TJm +(ork) 13.2801 Tj +-303 TJm +(is) 6.64505 Tj +-303 TJm +(done) 19.3673 Tj +-303 TJm +(by) 9.9626 Tj +[1 0 0 1 176.892 520.014] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -176.892 -520.014] cm +[1 0 0 1 0 0] Tm +0 0 Td +176.892 520.014 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 260.578 520.014] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -260.578 -520.014] cm +[1 0 0 1 0 0] Tm +0 0 Td +263.598 520.014 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 281.003 520.014] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -281.003 -520.014] cm +[1 0 0 1 0 0] Tm +0 0 Td +281.003 520.014 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 376.645 520.014] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -376.645 -520.014] cm +[1 0 0 1 0 0] Tm +0 0 Td +376.645 520.014 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-939 TJm +(These) 23.7907 Tj +-303 TJm +(compress) 37.6287 Tj +-303 TJm +(and) 14.386 Tj +-303 TJm +(decompress) 47.0334 Tj +-303 TJm +(data) 16.5977 Tj +72 508.059 Td +(from) 19.3673 Tj +-205 TJm +(a) 4.42339 Tj +-205 TJm +(user) 16.5977 Tj +20 TJm +(-supplied) 37.0808 Tj +-205 TJm +(input) 20.4831 Tj +-206 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-205 TJm +(to) 7.7509 Tj +-205 TJm +(a) 4.42339 Tj +-205 TJm +(user) 16.5977 Tj +20 TJm +(-supplied) 37.0808 Tj +-205 TJm +(output) 25.4644 Tj +-205 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +55 TJm +(.) 2.49065 Tj +-591 TJm +(These) 23.7907 Tj +-205 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fers) 14.9339 Tj +-205 TJm +(can) 13.8281 Tj +-205 TJm +(be) 9.40469 Tj +-205 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-205 TJm +(size;) 18.2614 Tj +-220 TJm +(arbitrary) 34.3012 Tj +-206 TJm +(quantities) 38.7446 Tj +-205 TJm +(of) 8.29885 Tj +72 496.104 Td +(data) 16.5977 Tj +-258 TJm +(are) 12.1643 Tj +-258 TJm +(handled) 31.5416 Tj +-258 TJm +(by) 9.9626 Tj +-257 TJm +(making) 29.8878 Tj +-258 TJm +(repeated) 33.7433 Tj +-258 TJm +(calls) 18.2614 Tj +-258 TJm +(to) 7.7509 Tj +-258 TJm +(these) 20.4731 Tj +-258 TJm +(functions.) 39.5714 Tj +-667 TJm +(This) 17.7135 Tj +-258 TJm +(is) 6.64505 Tj +-258 TJm +(a) 4.42339 Tj +-257 TJm +(\003e) 9.9626 Tj +15 TJm +(xible) 19.9252 Tj +-258 TJm +(mechanism) 45.3796 Tj +-258 TJm +(allo) 14.9439 Tj +25 TJm +(wing) 19.9252 Tj +-258 TJm +(a) 4.42339 Tj +-258 TJm +(consumer) 38.7346 Tj +20 TJm +(-pull) 18.8194 Tj +72 484.148 Td +(style) 18.8194 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(acti) 14.386 Tj +25 TJm +(vity) 15.5018 Tj +65 TJm +(,) 2.49065 Tj +-250 TJm +(or) 8.29885 Tj +-250 TJm +(producer) 35.4071 Tj +20 TJm +(-push,) 24.6275 Tj +-250 TJm +(or) 8.29885 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(mixture) 30.9936 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(both.) 20.2042 Tj +[1 0 0 1 72 481.992] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -472.029] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 453.527 Td +/F122_0 17.2154 Tf +(3.1.2.) 43.0729 Tj +-278 TJm +(High-le) 58.343 Tj +15 TJm +(vel) 23.9294 Tj +-278 TJm +(summar) 66.9679 Tj +-10 TJm +(y) 9.57176 Tj +[1 0 0 1 72 449.697] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -439.734] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 431.61 Td +/F130_0 9.9626 Tf +(This) 17.7135 Tj +-284 TJm +(interf) 21.579 Tj +10 TJm +(ace) 13.2702 Tj +-284 TJm +(pro) 13.2801 Tj +15 TJm +(vides) 21.031 Tj +-285 TJm +(some) 21.031 Tj +-284 TJm +(handy) 24.3486 Tj +-284 TJm +(wrappers) 36.5129 Tj +-284 TJm +(around) 27.6661 Tj +-284 TJm +(the) 12.1743 Tj +-284 TJm +(lo) 7.7509 Tj +25 TJm +(w-le) 17.7035 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-285 TJm +(interf) 21.579 Tj +10 TJm +(ace) 13.2702 Tj +-284 TJm +(to) 7.7509 Tj +-284 TJm +(f) 3.31755 Tj +10 TJm +(acilitate) 31.5416 Tj +-284 TJm +(reading) 29.8778 Tj +-284 TJm +(and) 14.386 Tj +-285 TJm +(writ) 16.0497 Tj +1 TJm +(ing) 12.7322 Tj +[1 0 0 1 510.112 431.61] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -510.112 -431.61] cm +[1 0 0 1 0 0] Tm +0 0 Td +510.112 431.61 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 540 431.61] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -431.61] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 419.654 Td +/F130_0 9.9626 Tf +(format) 26.5603 Tj +-347 TJm +(\002les) 16.6077 Tj +-346 TJm +(\() 3.31755 Tj +[1 0 0 1 125.391 419.654] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -125.391 -419.654] cm +[1 0 0 1 0 0] Tm +0 0 Td +125.391 419.654 Td +/F134_0 9.9626 Tf +(.bz2) 23.9102 Tj +[1 0 0 1 149.301 419.654] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -149.301 -419.654] cm +[1 0 0 1 0 0] Tm +0 0 Td +152.754 419.654 Td +/F130_0 9.9626 Tf +(\002les\).) 22.4159 Tj +-1200 TJm +(The) 15.4918 Tj +-346 TJm +(routines) 32.0995 Tj +-347 TJm +(pro) 13.2801 Tj +15 TJm +(vide) 17.1556 Tj +-346 TJm +(hooks) 23.8007 Tj +-347 TJm +(to) 7.7509 Tj +-346 TJm +(f) 3.31755 Tj +10 TJm +(acilitate) 31.5416 Tj +-347 TJm +(reading) 29.8778 Tj +-347 TJm +(\002les) 16.6077 Tj +-346 TJm +(in) 7.7509 Tj +-347 TJm +(which) 24.3486 Tj +-346 TJm +(the) 12.1743 Tj +[1 0 0 1 460.049 419.654] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -460.049 -419.654] cm +[1 0 0 1 0 0] Tm +0 0 Td +460.049 419.654 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 489.937 419.654] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -489.937 -419.654] cm +[1 0 0 1 0 0] Tm +0 0 Td +493.39 419.654 Td +/F130_0 9.9626 Tf +(data) 16.5977 Tj +-347 TJm +(stream) 26.5603 Tj +72 407.699 Td +(is) 6.64505 Tj +-339 TJm +(embedded) 40.9463 Tj +-339 TJm +(within) 25.4644 Tj +-339 TJm +(some) 21.031 Tj +-339 TJm +(lar) 10.5105 Tj +18 TJm +(ger) 12.7222 Tj +20 TJm +(-scale) 23.2328 Tj +-339 TJm +(\002le) 12.7322 Tj +-339 TJm +(structure,) 37.3498 Tj +-361 TJm +(or) 8.29885 Tj +-339 TJm +(wh) 12.1743 Tj +-1 TJm +(e) 4.42339 Tj +1 TJm +(re) 7.74094 Tj +-340 TJm +(there) 19.9152 Tj +-339 TJm +(are) 12.1643 Tj +-339 TJm +(multiple) 33.2153 Tj +[1 0 0 1 400.941 407.699] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -400.941 -407.699] cm +[1 0 0 1 0 0] Tm +0 0 Td +400.941 407.699 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 430.829 407.699] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -430.829 -407.699] cm +[1 0 0 1 0 0] Tm +0 0 Td +434.207 407.699 Td +/F130_0 9.9626 Tf +(data) 16.5977 Tj +-339 TJm +(streams) 30.4357 Tj +-339 TJm +(concatenated) 52.0048 Tj +72 395.744 Td +(end-to-end.) 45.6486 Tj +[1 0 0 1 72 395.644] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -385.682] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 373.826 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-332 TJm +(reading) 29.8778 Tj +-333 TJm +(\002les,) 19.0983 Tj +[1 0 0 1 144.803 373.826] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -144.803 -373.826] cm +[1 0 0 1 0 0] Tm +0 0 Td +144.803 373.826 Td +/F134_0 9.9626 Tf +(BZ2_bzReadOpen) 83.6858 Tj +[1 0 0 1 228.489 373.826] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -228.489 -373.826] cm +[1 0 0 1 0 0] Tm +0 0 Td +228.489 373.826 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 234.496 373.826] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -234.496 -373.826] cm +[1 0 0 1 0 0] Tm +0 0 Td +234.496 373.826 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 294.272 373.826] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -294.272 -373.826] cm +[1 0 0 1 0 0] Tm +0 0 Td +294.272 373.826 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 300.279 373.826] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -300.279 -373.826] cm +[1 0 0 1 0 0] Tm +0 0 Td +300.279 373.826 Td +/F134_0 9.9626 Tf +(BZ2_bzReadClose) 89.6634 Tj +[1 0 0 1 389.942 373.826] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -389.942 -373.826] cm +[1 0 0 1 0 0] Tm +0 0 Td +393.253 373.826 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 410.951 373.826] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -410.951 -373.826] cm +[1 0 0 1 0 0] Tm +0 0 Td +410.951 373.826 Td +/F134_0 9.9626 Tf +(BZ2_bzReadGetUnused) 113.574 Tj +[1 0 0 1 524.525 373.826] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -524.525 -373.826] cm +[1 0 0 1 0 0] Tm +0 0 Td +527.836 373.826 Td +/F130_0 9.9626 Tf +(are) 12.1643 Tj +72 361.871 Td +(supplied.) 36.2539 Tj +-620 TJm +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-250 TJm +(writing) 28.782 Tj +-250 TJm +(\002les,) 19.0983 Tj +[1 0 0 1 183.471 361.871] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -183.471 -361.871] cm +[1 0 0 1 0 0] Tm +0 0 Td +183.471 361.871 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteOpen) 89.6634 Tj +[1 0 0 1 273.135 361.871] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -273.135 -361.871] cm +[1 0 0 1 0 0] Tm +0 0 Td +273.135 361.871 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 278.116 361.871] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.116 -361.871] cm +[1 0 0 1 0 0] Tm +0 0 Td +278.116 361.871 Td +/F134_0 9.9626 Tf +(BZ2_bzWrite) 65.7532 Tj +[1 0 0 1 343.869 361.871] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -343.869 -361.871] cm +[1 0 0 1 0 0] Tm +0 0 Td +346.36 361.871 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 363.237 361.871] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -363.237 -361.871] cm +[1 0 0 1 0 0] Tm +0 0 Td +363.237 361.871 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteFinish) 101.619 Tj +[1 0 0 1 464.856 361.871] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -464.856 -361.871] cm +[1 0 0 1 0 0] Tm +0 0 Td +467.346 361.871 Td +/F130_0 9.9626 Tf +(are) 12.1643 Tj +-250 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +25 TJm +(ailable.) 29.0509 Tj +[1 0 0 1 72 359.714] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -349.751] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 339.953 Td +/F130_0 9.9626 Tf +(As) 11.0684 Tj +-374 TJm +(with) 17.7135 Tj +-374 TJm +(the) 12.1743 Tj +-375 TJm +(lo) 7.7509 Tj +25 TJm +(w-le) 17.7035 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-374 TJm +(library) 26.5603 Tj +65 TJm +(,) 2.49065 Tj +-405 TJm +(no) 9.9626 Tj +-374 TJm +(global) 24.9065 Tj +-374 TJm +(v) 4.9813 Tj +25 TJm +(ariables) 30.9837 Tj +-375 TJm +(are) 12.1643 Tj +-374 TJm +(used) 18.2614 Tj +-374 TJm +(so) 8.85675 Tj +-374 TJm +(the) 12.1743 Tj +-374 TJm +(library) 26.5603 Tj +-375 TJm +(is) 6.64505 Tj +-374 TJm +(per) 12.7222 Tj +-374 TJm +(se) 8.29885 Tj +-374 TJm +(thread-safe.) 46.7445 Tj +-1365 TJm +(Ho) 12.1743 Tj +25 TJm +(we) 11.6164 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +40 TJm +(,) 2.49065 Tj +-406 TJm +(if) 6.08715 Tj +-374 TJm +(I/O) 13.2801 Tj +72 327.998 Td +(errors) 23.2328 Tj +-267 TJm +(occur) 22.1269 Tj +-267 TJm +(whilst) 24.3586 Tj +-267 TJm +(reading) 29.8778 Tj +-267 TJm +(or) 8.29885 Tj +-267 TJm +(writing) 28.782 Tj +-267 TJm +(the) 12.1743 Tj +-268 TJm +(underlying) 43.1679 Tj +-267 TJm +(compressed) 47.0334 Tj +-267 TJm +(\002les,) 19.0983 Tj +-271 TJm +(you) 14.9439 Tj +-267 TJm +(may) 17.1556 Tj +-267 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-267 TJm +(to) 7.7509 Tj +-267 TJm +(consult) 28.782 Tj +[1 0 0 1 457.199 327.998] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -457.199 -327.998] cm +[1 0 0 1 0 0] Tm +0 0 Td +457.199 327.998 Td +/F134_0 9.9626 Tf +(errno) 29.8878 Tj +[1 0 0 1 487.087 327.998] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -487.087 -327.998] cm +[1 0 0 1 0 0] Tm +0 0 Td +489.748 327.998 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-267 TJm +(determine) 39.8404 Tj +72 316.043 Td +(the) 12.1743 Tj +-366 TJm +(cause) 22.1269 Tj +-365 TJm +(of) 8.29885 Tj +-366 TJm +(the) 12.1743 Tj +-365 TJm +(error) 19.3573 Tj +55 TJm +(.) 2.49065 Tj +-1314 TJm +(In) 8.29885 Tj +-366 TJm +(that) 14.9439 Tj +-365 TJm +(case,) 19.6363 Tj +-395 TJm +(you') 18.2614 Tj +50 TJm +(d) 4.9813 Tj +-366 TJm +(need) 18.8094 Tj +-365 TJm +(a) 4.42339 Tj +-366 TJm +(C) 6.64505 Tj +-365 TJm +(library) 26.5603 Tj +-366 TJm +(which) 24.3486 Tj +-366 TJm +(correctly) 35.4071 Tj +-365 TJm +(supports) 33.7633 Tj +[1 0 0 1 431.668 316.043] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -431.668 -316.043] cm +[1 0 0 1 0 0] Tm +0 0 Td +431.668 316.043 Td +/F134_0 9.9626 Tf +(errno) 29.8878 Tj +[1 0 0 1 461.556 316.043] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -461.556 -316.043] cm +[1 0 0 1 0 0] Tm +0 0 Td +465.199 316.043 Td +/F130_0 9.9626 Tf +(in) 7.7509 Tj +-366 TJm +(a) 4.42339 Tj +-365 TJm +(multithreaded) 55.3422 Tj +72 304.088 Td +(en) 9.40469 Tj +40 TJm +(vironment.) 43.4469 Tj +[1 0 0 1 72 303.988] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -294.025] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 282.17 Td +/F130_0 9.9626 Tf +(T) 6.08715 Tj +80 TJm +(o) 4.9813 Tj +-243 TJm +(mak) 17.1556 Tj +10 TJm +(e) 4.42339 Tj +-243 TJm +(the) 12.1743 Tj +-242 TJm +(library) 26.5603 Tj +-243 TJm +(a) 4.42339 Tj +-243 TJm +(little) 18.2714 Tj +-242 TJm +(simpler) 29.8878 Tj +-243 TJm +(and) 14.386 Tj +-243 TJm +(more) 20.4731 Tj +-243 TJm +(portable,) 35.1381 Tj +[1 0 0 1 289.263 282.17] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -289.263 -282.17] cm +[1 0 0 1 0 0] Tm +0 0 Td +289.263 282.17 Td +/F134_0 9.9626 Tf +(BZ2_bzReadOpen) 83.6858 Tj +[1 0 0 1 372.949 282.17] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -372.949 -282.17] cm +[1 0 0 1 0 0] Tm +0 0 Td +375.368 282.17 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 392.172 282.17] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -392.172 -282.17] cm +[1 0 0 1 0 0] Tm +0 0 Td +392.172 282.17 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteOpen) 89.6634 Tj +[1 0 0 1 481.836 282.17] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -481.836 -282.17] cm +[1 0 0 1 0 0] Tm +0 0 Td +484.254 282.17 Td +/F130_0 9.9626 Tf +(require) 28.2141 Tj +-243 TJm +(you) 14.9439 Tj +-242 TJm +(to) 7.7509 Tj +72 270.215 Td +(pass) 17.1556 Tj +-247 TJm +(them) 19.9252 Tj +-248 TJm +(\002le) 12.7322 Tj +-247 TJm +(handles) 30.4357 Tj +-247 TJm +(\() 3.31755 Tj +[1 0 0 1 165.421 270.215] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -165.421 -270.215] cm +[1 0 0 1 0 0] Tm +0 0 Td +165.421 270.215 Td +/F134_0 9.9626 Tf +(FILE) 23.9102 Tj +189.331 268.471 Td +(*) 5.97756 Tj +[1 0 0 1 195.309 270.215] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -195.309 -270.215] cm +[1 0 0 1 0 0] Tm +0 0 Td +195.309 270.215 Td +/F130_0 9.9626 Tf +(s\)) 7.193 Tj +-247 TJm +(which) 24.3486 Tj +-248 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-247 TJm +(pre) 12.7222 Tj +25 TJm +(viously) 29.3399 Tj +-247 TJm +(been) 18.8094 Tj +-248 TJm +(opened) 28.772 Tj +-247 TJm +(for) 11.6164 Tj +-247 TJm +(reading) 29.8778 Tj +-247 TJm +(or) 8.29885 Tj +-248 TJm +(writing) 28.782 Tj +-247 TJm +(respecti) 30.9837 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ely) 12.1743 Tj +65 TJm +(.) 2.49065 Tj +-618 TJm +(That) 18.2614 Tj +-248 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +20 TJm +(oids) 16.6077 Tj +72 258.26 Td +(portability) 41.5142 Tj +-272 TJm +(problems) 37.0808 Tj +-273 TJm +(associated) 40.9463 Tj +-272 TJm +(with) 17.7135 Tj +-272 TJm +(\002le) 12.7322 Tj +-273 TJm +(operations) 41.5042 Tj +-272 TJm +(and) 14.386 Tj +-272 TJm +(\002le) 12.7322 Tj +-273 TJm +(attrib) 21.031 Tj +20 TJm +(utes,) 18.5404 Tj +-278 TJm +(whilst) 24.3586 Tj +-272 TJm +(not) 12.7322 Tj +-272 TJm +(being) 22.1369 Tj +-273 TJm +(much) 22.1369 Tj +-272 TJm +(of) 8.29885 Tj +-273 TJm +(an) 9.40469 Tj +-272 TJm +(imposition) 42.63 Tj +-272 TJm +(on) 9.9626 Tj +-273 TJm +(the) 12.1743 Tj +72 246.304 Td +(programmer) 49.2451 Tj +55 TJm +(.) 2.49065 Tj +[1 0 0 1 72 244.147] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -234.185] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 215.683 Td +/F122_0 17.2154 Tf +(3.1.3.) 43.0729 Tj +-278 TJm +(Utility) 47.8244 Tj +-278 TJm +(functions) 77.4693 Tj +-278 TJm +(summar) 66.9679 Tj +-10 TJm +(y) 9.57176 Tj +[1 0 0 1 72 212.12] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -202.157] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 193.765 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-273 TJm +(v) 4.9813 Tj +15 TJm +(ery) 12.7222 Tj +-273 TJm +(simple) 26.5703 Tj +-273 TJm +(needs,) 25.1755 Tj +[1 0 0 1 165.929 193.765] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -165.929 -193.765] cm +[1 0 0 1 0 0] Tm +0 0 Td +165.929 193.765 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffCompress) 143.461 Tj +[1 0 0 1 309.391 193.765] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -309.391 -193.765] cm +[1 0 0 1 0 0] Tm +0 0 Td +312.112 193.765 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 329.219 193.765] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -329.219 -193.765] cm +[1 0 0 1 0 0] Tm +0 0 Td +329.219 193.765 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffDecompress) 155.417 Tj +[1 0 0 1 484.636 193.765] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -484.636 -193.765] cm +[1 0 0 1 0 0] Tm +0 0 Td +487.357 193.765 Td +/F130_0 9.9626 Tf +(are) 12.1643 Tj +-273 TJm +(pro) 13.2801 Tj +15 TJm +(vided.) 24.6275 Tj +72 181.81 Td +(These) 23.7907 Tj +-374 TJm +(compress) 37.6287 Tj +-373 TJm +(data) 16.5977 Tj +-374 TJm +(in) 7.7509 Tj +-373 TJm +(memory) 33.2053 Tj +-374 TJm +(from) 19.3673 Tj +-373 TJm +(one) 14.386 Tj +-374 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-373 TJm +(to) 7.7509 Tj +-374 TJm +(another) 29.8778 Tj +-374 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-373 TJm +(in) 7.7509 Tj +-374 TJm +(a) 4.42339 Tj +-373 TJm +(single) 23.8007 Tj +-374 TJm +(function) 33.2053 Tj +-373 TJm +(call.) 16.8766 Tj +-1362 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-373 TJm +(should) 26.5703 Tj +-374 TJm +(assess) 24.3486 Tj +72 169.855 Td +(whether) 32.0895 Tj +-344 TJm +(these) 20.4731 Tj +-343 TJm +(functions) 37.0808 Tj +-344 TJm +(ful\002ll) 22.1469 Tj +-344 TJm +(your) 18.2614 Tj +-343 TJm +(memory-to-memory) 80.7967 Tj +-344 TJm +(compression/decompression) 112.896 Tj +-343 TJm +(requirements) 52.0147 Tj +-344 TJm +(before) 25.4445 Tj +-344 TJm +(in) 7.7509 Tj +40 TJm +(v) 4.9813 Tj +15 TJm +(esting) 23.8007 Tj +72 157.9 Td +(ef) 7.74094 Tj +25 TJm +(fort) 14.386 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(understanding) 56.4481 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(more) 20.4731 Tj +-250 TJm +(general) 29.3199 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-250 TJm +(more) 20.4731 Tj +-250 TJm +(comple) 29.3299 Tj +15 TJm +(x) 4.9813 Tj +-250 TJm +(lo) 7.7509 Tj +25 TJm +(w-le) 17.7035 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(interf) 21.579 Tj +10 TJm +(ace.) 15.7608 Tj +[1 0 0 1 72 155.743] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -145.78] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 135.982 Td +/F130_0 9.9626 Tf +(Y) 7.193 Tj +110 TJm +(oshioka) 30.9936 Tj +-423 TJm +(Tsuneo) 29.3299 Tj +-422 TJm +(\() 3.31755 Tj +[1 0 0 1 150.16 135.982] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -150.16 -135.982] cm +[1 0 0 1 0 0] Tm +0 0 Td +150.16 135.982 Td +/F134_0 9.9626 Tf +(tsuneo@rr.iij4u.or.jp) 125.529 Tj +[1 0 0 1 275.69 135.982] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -275.69 -135.982] cm +[1 0 0 1 0 0] Tm +0 0 Td +275.69 135.982 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +-423 TJm +(has) 13.2801 Tj +-422 TJm +(contrib) 28.224 Tj +20 TJm +(uted) 17.1556 Tj +-423 TJm +(some) 21.031 Tj +-423 TJm +(functions) 37.0808 Tj +-422 TJm +(to) 7.7509 Tj +-423 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-423 TJm +(better) 22.6848 Tj +[1 0 0 1 476.462 135.982] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -476.462 -135.982] cm +[1 0 0 1 0 0] Tm +0 0 Td +476.462 135.982 Td +/F134_0 9.9626 Tf +(zlib) 23.9102 Tj +[1 0 0 1 500.372 135.982] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -500.372 -135.982] cm +[1 0 0 1 0 0] Tm +0 0 Td +504.583 135.982 Td +/F130_0 9.9626 Tf +(compati-) 35.417 Tj +72 124.027 Td +(bility) 21.041 Tj +65 TJm +(.) 2.49065 Tj +-1446 TJm +(These) 23.7907 Tj +-388 TJm +(functions) 37.0808 Tj +-387 TJm +(are) 12.1643 Tj +[1 0 0 1 193.913 124.027] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -193.913 -124.027] cm +[1 0 0 1 0 0] Tm +0 0 Td +193.913 124.027 Td +/F134_0 9.9626 Tf +(BZ2_bzopen) 59.7756 Tj +[1 0 0 1 253.689 124.027] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -253.689 -124.027] cm +[1 0 0 1 0 0] Tm +0 0 Td +253.689 124.027 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 260.385 124.027] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -260.385 -124.027] cm +[1 0 0 1 0 0] Tm +0 0 Td +260.385 124.027 Td +/F134_0 9.9626 Tf +(BZ2_bzread) 59.7756 Tj +[1 0 0 1 320.161 124.027] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -320.161 -124.027] cm +[1 0 0 1 0 0] Tm +0 0 Td +320.161 124.027 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 326.857 124.027] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -326.857 -124.027] cm +[1 0 0 1 0 0] Tm +0 0 Td +326.857 124.027 Td +/F134_0 9.9626 Tf +(BZ2_bzwrite) 65.7532 Tj +[1 0 0 1 392.611 124.027] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -392.611 -124.027] cm +[1 0 0 1 0 0] Tm +0 0 Td +392.611 124.027 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 399.306 124.027] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -399.306 -124.027] cm +[1 0 0 1 0 0] Tm +0 0 Td +399.306 124.027 Td +/F134_0 9.9626 Tf +(BZ2_bzflush) 65.7532 Tj +[1 0 0 1 465.06 124.027] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -465.06 -124.027] cm +[1 0 0 1 0 0] Tm +0 0 Td +465.06 124.027 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 471.756 124.027] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -471.756 -124.027] cm +[1 0 0 1 0 0] Tm +0 0 Td +471.756 124.027 Td +/F134_0 9.9626 Tf +(BZ2_bzclose) 65.7532 Tj +[1 0 0 1 537.509 124.027] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -537.509 -124.027] cm +[1 0 0 1 0 0] Tm +0 0 Td +537.509 124.027 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 72 112.072] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -112.072] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 112.072 Td +/F134_0 9.9626 Tf +(BZ2_bzerror) 65.7532 Tj +[1 0 0 1 137.753 112.072] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -137.753 -112.072] cm +[1 0 0 1 0 0] Tm +0 0 Td +140.408 112.072 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 157.449 112.072] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -157.449 -112.072] cm +[1 0 0 1 0 0] Tm +0 0 Td +157.449 112.072 Td +/F134_0 9.9626 Tf +(BZ2_bzlibVersion) 95.641 Tj +[1 0 0 1 253.091 112.072] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -253.091 -112.072] cm +[1 0 0 1 0 0] Tm +0 0 Td +253.091 112.072 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-719 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-266 TJm +(may) 17.1556 Tj +-267 TJm +(\002nd) 15.5018 Tj +-266 TJm +(these) 20.4731 Tj +-267 TJm +(functions) 37.0808 Tj +-266 TJm +(more) 20.4731 Tj +-267 TJm +(con) 14.386 Tj +40 TJm +(v) 4.9813 Tj +15 TJm +(enient) 24.3486 Tj +-266 TJm +(for) 11.6164 Tj +-267 TJm +(simple) 26.5703 Tj +-266 TJm +(\002le) 12.7322 Tj +-267 TJm +(reading) 29.8778 Tj +72 100.117 Td +(and) 14.386 Tj +-270 TJm +(wri) 13.2801 Tj +1 TJm +(ting,) 17.9925 Tj +-275 TJm +(than) 17.1556 Tj +-269 TJm +(those) 21.031 Tj +-270 TJm +(in) 7.7509 Tj +-269 TJm +(the) 12.1743 Tj +-270 TJm +(high-le) 28.224 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-269 TJm +(interf) 21.579 Tj +10 TJm +(ace.) 15.7608 Tj +-737 TJm +(These) 23.7907 Tj +-270 TJm +(functions) 37.0808 Tj +-269 TJm +(are) 12.1643 Tj +-270 TJm +(not) 12.7322 Tj +-269 TJm +(\(yet\)) 18.8094 Tj +-270 TJm +(of) 8.29885 Tj +25 TJm +(\002cially) 27.6761 Tj +-269 TJm +(part) 15.4918 Tj +-270 TJm +(of) 8.29885 Tj +-269 TJm +(the) 12.1743 Tj +-270 TJm +(library) 26.5603 Tj +65 TJm +(,) 2.49065 Tj +-274 TJm +(and) 14.386 Tj +-270 TJm +(are) 12.1643 Tj +72 88.1614 Td +(minimally) 40.9662 Tj +-291 TJm +(documented) 48.6972 Tj +-291 TJm +(here.) 19.6363 Tj +-867 TJm +(If) 6.63509 Tj +-291 TJm +(the) 12.1743 Tj +15 TJm +(y) 4.9813 Tj +-291 TJm +(break,) 24.6176 Tj +-301 TJm +(you) 14.9439 Tj +-291 TJm +(get) 12.1743 Tj +-292 TJm +(to) 7.7509 Tj +-291 TJm +(k) 4.9813 Tj +10 TJm +(eep) 13.8281 Tj +-291 TJm +(all) 9.9626 Tj +-291 TJm +(the) 12.1743 Tj +-291 TJm +(pieces.) 27.3872 Tj +-433 TJm +(I) 3.31755 Tj +-291 TJm +(hope) 19.3673 Tj +-291 TJm +(to) 7.7509 Tj +-291 TJm +(document) 39.2925 Tj +-292 TJm +(them) 19.9252 Tj +-291 TJm +(properly) 33.7533 Tj +-291 TJm +(when) 21.579 Tj +72 76.2062 Td +(time) 17.7135 Tj +-250 TJm +(permits.) 32.3785 Tj +[1 0 0 1 72 74.0494] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -23.1976] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 4.3836 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.9737] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 43.0633 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -498.225 -51.071] cm +[1 0 0 1 0 0] Tm +0 0 Td +541.288 51.071 Td +/F130_0 9.9626 Tf +(9) 4.9813 Tj +[1 0 0 1 455.161 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5986 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -15.0366 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 13 13 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F130_0 9.9626 Tf +(Y) 7.193 Tj +110 TJm +(oshioka) 30.9936 Tj +-250 TJm +(also) 16.0497 Tj +-250 TJm +(contrib) 28.224 Tj +20 TJm +(uted) 17.1556 Tj +-250 TJm +(modi\002cations) 54.2464 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(allo) 14.9439 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(library) 26.5603 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(uilt) 13.2901 Tj +-250 TJm +(as) 8.29885 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(W) 9.40469 Tj +40 TJm +(indo) 17.7135 Tj +25 TJm +(ws) 11.0684 Tj +-250 TJm +(DLL.) 21.8579 Tj +[1 0 0 1 72 707.88] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -698.137] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 675.504 Td +/F122_0 20.6585 Tf +(3.2.) 34.4584 Tj +-278 TJm +(Err) 29.8515 Tj +20 TJm +(or) 20.6585 Tj +-278 TJm +(handling) 86.084 Tj +[1 0 0 1 72 670.907] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -661.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 653.805 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-214 TJm +(library) 26.5603 Tj +-215 TJm +(is) 6.64505 Tj +-214 TJm +(designed) 35.417 Tj +-215 TJm +(to) 7.7509 Tj +-214 TJm +(reco) 17.1456 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-215 TJm +(cleanly) 28.772 Tj +-214 TJm +(in) 7.7509 Tj +-215 TJm +(all) 9.9626 Tj +-214 TJm +(situations,) 40.6873 Tj +-222 TJm +(including) 37.6387 Tj +-214 TJm +(the) 12.1743 Tj +-215 TJm +(w) 7.193 Tj +10 TJm +(orst-case) 35.4071 Tj +-214 TJm +(situation) 34.3212 Tj +-215 TJm +(of) 8.29885 Tj +-214 TJm +(decompressing) 59.7656 Tj +-215 TJm +(random) 30.4357 Tj +72 641.85 Td +(data.) 19.0883 Tj +-764 TJm +(I'm) 14.386 Tj +-274 TJm +(not) 12.7322 Tj +-275 TJm +(100%) 23.2427 Tj +-274 TJm +(sure) 16.5977 Tj +-274 TJm +(that) 14.9439 Tj +-274 TJm +(it) 5.53921 Tj +-274 TJm +(can) 13.8281 Tj +-274 TJm +(al) 7.193 Tj +10 TJm +(w) 7.193 Tj +10 TJm +(ays) 13.2801 Tj +-274 TJm +(do) 9.9626 Tj +-274 TJm +(this,) 16.8866 Tj +-280 TJm +(so) 8.85675 Tj +-274 TJm +(you) 14.9439 Tj +-274 TJm +(might) 23.2527 Tj +-274 TJm +(w) 7.193 Tj +10 TJm +(ant) 12.1743 Tj +-274 TJm +(to) 7.7509 Tj +-274 TJm +(add) 14.386 Tj +-274 TJm +(a) 4.42339 Tj +-275 TJm +(s) 3.87545 Tj +1 TJm +(ignal) 19.9252 Tj +-275 TJm +(handler) 29.8778 Tj +-274 TJm +(to) 7.7509 Tj +-274 TJm +(catch) 21.0211 Tj +-274 TJm +(se) 8.29885 Tj +15 TJm +(gmentation) 44.8317 Tj +72 629.894 Td +(violations) 39.3025 Tj +-273 TJm +(during) 26.0123 Tj +-273 TJm +(decompression) 59.7656 Tj +-273 TJm +(if) 6.08715 Tj +-273 TJm +(you) 14.9439 Tj +-273 TJm +(are) 12.1643 Tj +-273 TJm +(feeling) 27.6661 Tj +-274 TJm +(especiall) 34.8591 Tj +1 TJm +(y) 4.9813 Tj +-274 TJm +(paranoid.) 37.3498 Tj +-758 TJm +(I) 3.31755 Tj +-273 TJm +(w) 7.193 Tj +10 TJm +(ould) 17.7135 Tj +-273 TJm +(be) 9.40469 Tj +-273 TJm +(interested) 38.7346 Tj +-273 TJm +(in) 7.7509 Tj +-274 TJm +(hearing) 29.8778 Tj +-273 TJm +(more) 20.4731 Tj +-273 TJm +(about) 22.1369 Tj +72 617.939 Td +(the) 12.1743 Tj +-250 TJm +(rob) 13.2801 Tj +20 TJm +(ustness) 28.782 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(library) 26.5603 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(corrupted) 38.1767 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(data.) 19.0883 Tj +[1 0 0 1 72 615.783] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -606.039] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 596.241 Td +/F130_0 9.9626 Tf +(V) 7.193 Tj +111 TJm +(ersion) 24.3486 Tj +-251 TJm +(1.0.3) 19.9252 Tj +-251 TJm +(more) 20.4731 Tj +-251 TJm +(rob) 13.2801 Tj +20 TJm +(ust) 11.6264 Tj +-251 TJm +(in) 7.7509 Tj +-251 TJm +(this) 14.396 Tj +-251 TJm +(respect) 28.2141 Tj +-252 TJm +(than) 17.1556 Tj +-251 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-251 TJm +(pre) 12.7222 Tj +25 TJm +(vious) 21.589 Tj +-251 TJm +(v) 4.9813 Tj +15 TJm +(ersion.) 26.8392 Tj +-626 TJm +(In) 8.29885 Tj +40 TJm +(v) 4.9813 Tj +15 TJm +(estig) 18.8194 Tj +5 TJm +(ations) 23.8007 Tj +-251 TJm +(with) 17.7135 Tj +-251 TJm +(V) 7.193 Tj +111 TJm +(algrind) 28.224 Tj +-251 TJm +(\(a) 7.74094 Tj +-252 TJm +(tool) 15.5018 Tj +-251 TJm +(for) 11.6164 Tj +-251 TJm +(detecting) 36.5229 Tj +72 584.285 Td +(problems) 37.0808 Tj +-422 TJm +(with) 17.7135 Tj +-421 TJm +(memory) 33.2053 Tj +-422 TJm +(management\)) 54.2264 Tj +-421 TJm +(indicate) 31.5416 Tj +-422 TJm +(that,) 17.4346 Tj +-464 TJm +(at) 7.193 Tj +-422 TJm +(least) 18.2614 Tj +-421 TJm +(for) 11.6164 Tj +-422 TJm +(the) 12.1743 Tj +-422 TJm +(f) 3.31755 Tj +1 TJm +(e) 4.42339 Tj +25 TJm +(w) 7.193 Tj +-422 TJm +(\002les) 16.6077 Tj +-422 TJm +(I) 3.31755 Tj +-421 TJm +(tested,) 25.7334 Tj +-464 TJm +(all) 9.9626 Tj +-422 TJm +(single-bit) 37.6387 Tj +-422 TJm +(errors) 23.2328 Tj +-421 TJm +(in) 7.7509 Tj +-422 TJm +(the) 12.1743 Tj +72 572.33 Td +(decompressed) 56.4381 Tj +-342 TJm +(data) 16.5977 Tj +-341 TJm +(are) 12.1643 Tj +-342 TJm +(caught) 26.5603 Tj +-342 TJm +(properly) 33.7533 Tj +65 TJm +(,) 2.49065 Tj +-365 TJm +(with) 17.7135 Tj +-341 TJm +(no) 9.9626 Tj +-342 TJm +(se) 8.29885 Tj +15 TJm +(gmentation) 44.8317 Tj +-342 TJm +(f) 3.31755 Tj +10 TJm +(aults,) 21.31 Tj +-365 TJm +(no) 9.9626 Tj +-341 TJm +(uses) 17.1556 Tj +-342 TJm +(of) 8.29885 Tj +-342 TJm +(uninitialised) 49.2651 Tj +-342 TJm +(data,) 19.0883 Tj +-364 TJm +(no) 9.9626 Tj +-342 TJm +(out) 12.7322 Tj +-342 TJm +(of) 8.29885 Tj +-342 TJm +(range) 22.1269 Tj +72 560.375 Td +(reads) 21.0211 Tj +-261 TJm +(or) 8.29885 Tj +-260 TJm +(writes,) 26.8392 Tj +-263 TJm +(and) 14.386 Tj +-261 TJm +(no) 9.9626 Tj +-261 TJm +(in\002nit) 23.8106 Tj +1 TJm +(e) 4.42339 Tj +-261 TJm +(looping) 30.4457 Tj +-261 TJm +(in) 7.7509 Tj +-260 TJm +(the) 12.1743 Tj +-261 TJm +(decompressor) 55.3323 Tj +55 TJm +(.) 2.49065 Tj +-342 TJm +(So) 10.5205 Tj +-260 TJm +(it') 8.85675 Tj +55 TJm +(s) 3.87545 Tj +-261 TJm +(certainly) 34.8591 Tj +-260 TJm +(pretty) 23.2427 Tj +-261 TJm +(rob) 13.2801 Tj +20 TJm +(ust,) 14.117 Tj +-263 TJm +(although) 34.8691 Tj +-261 TJm +(I) 3.31755 Tj +-260 TJm +(w) 7.193 Tj +10 TJm +(ouldn') 26.0123 Tj +18 TJm +(t) 2.7696 Tj +-261 TJm +(claim) 22.1369 Tj +72 548.42 Td +(it) 5.53921 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(totally) 25.4644 Tj +-250 TJm +(bombproof.) 46.7644 Tj +[1 0 0 1 72 546.263] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -536.519] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 526.721 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-282 TJm +(\002le) 12.7322 Tj +[1 0 0 1 105.84 526.721] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -105.84 -526.721] cm +[1 0 0 1 0 0] Tm +0 0 Td +105.84 526.721 Td +/F134_0 9.9626 Tf +(bzlib.h) 41.8429 Tj +[1 0 0 1 147.683 526.721] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -147.683 -526.721] cm +[1 0 0 1 0 0] Tm +0 0 Td +150.491 526.721 Td +/F130_0 9.9626 Tf +(contains) 33.2053 Tj +-282 TJm +(all) 9.9626 Tj +-282 TJm +(de\002nitions) 42.0721 Tj +-282 TJm +(nee) 13.8281 Tj +1 TJm +(ded) 14.386 Tj +-282 TJm +(to) 7.7509 Tj +-282 TJm +(use) 13.2801 Tj +-282 TJm +(the) 12.1743 Tj +-282 TJm +(library) 26.5603 Tj +65 TJm +(.) 2.49065 Tj +-811 TJm +(In) 8.29885 Tj +-282 TJm +(particular) 38.1767 Tj +40 TJm +(,) 2.49065 Tj +-290 TJm +(you) 14.9439 Tj +-282 TJm +(should) 26.5703 Tj +-281 TJm +(de\002nitely) 37.6387 Tj +-282 TJm +(not) 12.7322 Tj +-282 TJm +(include) 29.3299 Tj +[1 0 0 1 72 514.766] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -514.766] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 514.766 Td +/F134_0 9.9626 Tf +(bzlib_private.h) 89.6634 Tj +[1 0 0 1 161.664 514.766] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -161.664 -514.766] cm +[1 0 0 1 0 0] Tm +0 0 Td +161.664 514.766 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 513.232] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -503.488] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 493.067 Td +/F130_0 9.9626 Tf +(In) 8.29885 Tj +[1 0 0 1 82.8075 493.067] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -82.8075 -493.067] cm +[1 0 0 1 0 0] Tm +0 0 Td +82.8075 493.067 Td +/F134_0 9.9626 Tf +(bzlib.h) 41.8429 Tj +[1 0 0 1 124.651 493.067] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -124.651 -493.067] cm +[1 0 0 1 0 0] Tm +0 0 Td +124.651 493.067 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-252 TJm +(the) 12.1743 Tj +-252 TJm +(v) 4.9813 Tj +25 TJm +(arious) 24.3486 Tj +-252 TJm +(return) 23.7907 Tj +-252 TJm +(v) 4.9813 Tj +25 TJm +(alues) 20.4731 Tj +-251 TJm +(are) 12.1643 Tj +-252 TJm +(de\002ned.) 31.8205 Tj +-631 TJm +(The) 15.4918 Tj +-252 TJm +(follo) 18.8194 Tj +25 TJm +(wing) 19.9252 Tj +-252 TJm +(list) 12.1843 Tj +-251 TJm +(is) 6.64505 Tj +-252 TJm +(not) 12.7322 Tj +-252 TJm +(intended) 34.3112 Tj +-252 TJm +(as) 8.29885 Tj +-252 TJm +(an) 9.40469 Tj +-251 TJm +(e) 4.42339 Tj +15 TJm +(xhausti) 28.782 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-252 TJm +(description) 44.2738 Tj +-252 TJm +(of) 8.29885 Tj +72 481.112 Td +(the) 12.1743 Tj +-236 TJm +(circumstances) 56.4381 Tj +-236 TJm +(in) 7.7509 Tj +-237 TJm +(which) 24.3486 Tj +-236 TJm +(a) 4.42339 Tj +-236 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(en) 9.40469 Tj +-236 TJm +(v) 4.9813 Tj +25 TJm +(alue) 16.5977 Tj +-236 TJm +(may) 17.1556 Tj +-237 TJm +(be) 9.40469 Tj +-236 TJm +(returned) 33.1954 Tj +-236 TJm +(--) 6.63509 Tj +-236 TJm +(those) 21.031 Tj +-236 TJm +(descriptions) 48.1492 Tj +-236 TJm +(are) 12.1643 Tj +-237 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(en) 9.40469 Tj +-236 TJm +(later) 17.7035 Tj +55 TJm +(.) 2.49065 Tj +-305 TJm +(Rather) 26.5603 Tj +40 TJm +(,) 2.49065 Tj +-239 TJm +(it) 5.53921 Tj +-236 TJm +(is) 6.64505 Tj +-237 TJm +(intended) 34.3112 Tj +-236 TJm +(to) 7.7509 Tj +72 469.157 Td +(con) 14.386 Tj +40 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +15 TJm +(y) 4.9813 Tj +-266 TJm +(the) 12.1743 Tj +-265 TJm +(rough) 23.2427 Tj +-266 TJm +(meaning) 34.3112 Tj +-265 TJm +(of) 8.29885 Tj +-266 TJm +(each) 18.2515 Tj +-266 TJm +(return) 23.7907 Tj +-265 TJm +(v) 4.9813 Tj +25 TJm +(alue.) 19.0883 Tj +-714 TJm +(The) 15.4918 Tj +-265 TJm +(\002rst) 15.5018 Tj +-266 TJm +(\002) 5.53921 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-265 TJm +(actions) 28.224 Tj +-266 TJm +(are) 12.1643 Tj +-266 TJm +(normal) 28.224 Tj +-265 TJm +(and) 14.386 Tj +-266 TJm +(not) 12.7322 Tj +-265 TJm +(intended) 34.3112 Tj +-266 TJm +(to) 7.7509 Tj +-266 TJm +(denote) 26.5603 Tj +-265 TJm +(an) 9.40469 Tj +-266 TJm +(error) 19.3573 Tj +72 457.202 Td +(situation.) 36.8118 Tj +[1 0 0 1 72 457.102] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7435] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -437.615] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 425.76 Td +/F134_0 9.9626 Tf +(BZ_OK) 29.8878 Tj +[1 0 0 1 101.888 425.76] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -32.3786 -1.3101] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -424.449] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 413.804 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-250 TJm +(requested) 38.1767 Tj +-250 TJm +(action) 24.3486 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-250 TJm +(completed) 41.5042 Tj +-250 TJm +(successfully) 48.6972 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 411.648] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.766] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -398.138] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 388.34 Td +/F134_0 9.9626 Tf +(BZ_RUN_OK,) 59.7756 Tj +-600 TJm +(BZ_FLUSH_OK,) 71.7307 Tj +-600 TJm +(BZ_FINISH_OK) 71.7307 Tj +[1 0 0 1 287.193 388.34] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -217.684 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -387.03] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 376.384 Td +/F130_0 9.9626 Tf +(In) 8.29885 Tj +[1 0 0 1 118.79 376.384] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -118.79 -376.384] cm +[1 0 0 1 0 0] Tm +0 0 Td +118.79 376.384 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 202.476 376.384] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -202.476 -376.384] cm +[1 0 0 1 0 0] Tm +0 0 Td +202.476 376.384 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(requested) 38.1767 Tj +-250 TJm +(\003ush/\002nish/nothing-special) 108.493 Tj +-250 TJm +(action) 24.3486 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-250 TJm +(completed) 41.5042 Tj +-250 TJm +(successfully) 48.6972 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 374.228] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.7659] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -360.718] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 350.92 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 149.709 350.92] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -80.1993 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -349.61] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 338.965 Td +/F130_0 9.9626 Tf +(Compression) 52.5826 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-250 TJm +(completed,) 43.9948 Tj +-250 TJm +(or) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(logical) 27.1182 Tj +-250 TJm +(stream) 26.5603 Tj +-250 TJm +(end) 14.386 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-250 TJm +(detected) 33.1954 Tj +-250 TJm +(during) 26.0123 Tj +-250 TJm +(decompression.) 62.2563 Tj +[1 0 0 1 72 336.808] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.7659] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -313.555] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 303.756 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-250 TJm +(follo) 18.8194 Tj +25 TJm +(wing) 19.9252 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues) 20.4731 Tj +-250 TJm +(indicate) 31.5416 Tj +-250 TJm +(an) 9.40469 Tj +-250 TJm +(error) 19.3573 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(some) 21.031 Tj +-250 TJm +(kind.) 20.2042 Tj +[1 0 0 1 72 301.6] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -282.112] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 272.314 Td +/F134_0 9.9626 Tf +(BZ_CONFIG_ERROR) 89.6634 Tj +[1 0 0 1 161.664 272.314] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -92.1544 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -271.004] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 260.359 Td +/F130_0 9.9626 Tf +(Indicates) 35.965 Tj +-386 TJm +(that) 14.9439 Tj +-385 TJm +(the) 12.1743 Tj +-386 TJm +(library) 26.5603 Tj +-386 TJm +(has) 13.2801 Tj +-386 TJm +(been) 18.8094 Tj +-385 TJm +(improperly) 44.2738 Tj +-386 TJm +(compiled) 37.0808 Tj +-386 TJm +(on) 9.9626 Tj +-386 TJm +(your) 18.2614 Tj +-385 TJm +(platform) 34.3112 Tj +-386 TJm +(--) 6.63509 Tj +-386 TJm +(a) 4.42339 Tj +-386 TJm +(major) 23.2427 Tj +-385 TJm +(con\002guration) 53.1305 Tj +-386 TJm +(error) 19.3573 Tj +55 TJm +(.) 2.49065 Tj +108 248.404 Td +(Speci\002cally) 47.0434 Tj +65 TJm +(,) 2.49065 Tj +-481 TJm +(it) 5.53921 Tj +-435 TJm +(means) 25.4544 Tj +-435 TJm +(that) 14.9439 Tj +[1 0 0 1 220.614 248.404] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -220.614 -248.404] cm +[1 0 0 1 0 0] Tm +0 0 Td +220.614 248.404 Td +/F134_0 9.9626 Tf +(sizeof\(char\)) 71.7307 Tj +[1 0 0 1 292.345 248.404] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -292.345 -248.404] cm +[1 0 0 1 0 0] Tm +0 0 Td +292.345 248.404 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 299.628 248.404] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -299.628 -248.404] cm +[1 0 0 1 0 0] Tm +0 0 Td +299.628 248.404 Td +/F134_0 9.9626 Tf +(sizeof\(short\)) 77.7083 Tj +[1 0 0 1 377.337 248.404] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -377.337 -248.404] cm +[1 0 0 1 0 0] Tm +0 0 Td +381.669 248.404 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 400.388 248.404] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -400.388 -248.404] cm +[1 0 0 1 0 0] Tm +0 0 Td +400.388 248.404 Td +/F134_0 9.9626 Tf +(sizeof\(int\)) 65.7532 Tj +[1 0 0 1 466.141 248.404] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -466.141 -248.404] cm +[1 0 0 1 0 0] Tm +0 0 Td +470.474 248.404 Td +/F130_0 9.9626 Tf +(are) 12.1643 Tj +-435 TJm +(not) 12.7322 Tj +-435 TJm +(1,) 7.47195 Tj +-481 TJm +(2) 4.9813 Tj +-435 TJm +(and) 14.386 Tj +108 236.449 Td +(4) 4.9813 Tj +-389 TJm +(respecti) 30.9837 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ely) 12.1743 Tj +65 TJm +(,) 2.49065 Tj +-424 TJm +(as) 8.29885 Tj +-390 TJm +(the) 12.1743 Tj +15 TJm +(y) 4.9813 Tj +-389 TJm +(should) 26.5703 Tj +-389 TJm +(be.) 11.8953 Tj +-1456 TJm +(Note) 19.3673 Tj +-389 TJm +(that) 14.9439 Tj +-389 TJm +(the) 12.1743 Tj +-389 TJm +(library) 26.5603 Tj +-390 TJm +(should) 26.5703 Tj +-389 TJm +(still) 14.9539 Tj +-389 TJm +(w) 7.193 Tj +10 TJm +(ork) 13.2801 Tj +-389 TJm +(properly) 33.7533 Tj +-390 TJm +(on) 9.9626 Tj +-389 TJm +(64-bit) 23.8007 Tj +-389 TJm +(platforms) 38.1866 Tj +108 224.493 Td +(which) 24.3486 Tj +-292 TJm +(follo) 18.8194 Tj +25 TJm +(w) 7.193 Tj +-292 TJm +(the) 12.1743 Tj +-292 TJm +(LP64) 21.589 Tj +-292 TJm +(programming) 54.2364 Tj +-293 TJm +(model) 24.9065 Tj +-292 TJm +(--) 6.63509 Tj +-292 TJm +(that) 14.9439 Tj +-292 TJm +(is,) 9.1357 Tj +-303 TJm +(where) 24.3386 Tj +[1 0 0 1 355.279 224.493] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -355.279 -224.493] cm +[1 0 0 1 0 0] Tm +0 0 Td +355.279 224.493 Td +/F134_0 9.9626 Tf +(sizeof\(long\)) 71.7307 Tj +[1 0 0 1 427.01 224.493] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -427.01 -224.493] cm +[1 0 0 1 0 0] Tm +0 0 Td +429.92 224.493 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 447.217 224.493] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -447.217 -224.493] cm +[1 0 0 1 0 0] Tm +0 0 Td +447.217 224.493 Td +/F134_0 9.9626 Tf +(sizeof\(void) 65.7532 Tj +512.97 222.75 Td +(*) 5.97756 Tj +518.948 224.493 Td +(\)) 5.97756 Tj +[1 0 0 1 524.925 224.493] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -524.925 -224.493] cm +[1 0 0 1 0 0] Tm +0 0 Td +527.836 224.493 Td +/F130_0 9.9626 Tf +(are) 12.1643 Tj +108 212.538 Td +(8.) 7.47195 Tj +-620 TJm +(Under) 24.8965 Tj +-250 TJm +(LP64,) 24.0796 Tj +[1 0 0 1 175.606 212.538] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -175.606 -212.538] cm +[1 0 0 1 0 0] Tm +0 0 Td +175.606 212.538 Td +/F134_0 9.9626 Tf +(sizeof\(int\)) 65.7532 Tj +[1 0 0 1 241.36 212.538] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -241.36 -212.538] cm +[1 0 0 1 0 0] Tm +0 0 Td +243.85 212.538 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-250 TJm +(still) 14.9539 Tj +-250 TJm +(4,) 7.47195 Tj +-250 TJm +(so) 8.85675 Tj +[1 0 0 1 291.74 212.538] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -291.74 -212.538] cm +[1 0 0 1 0 0] Tm +0 0 Td +291.74 212.538 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 339.56 212.538] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -339.56 -212.538] cm +[1 0 0 1 0 0] Tm +0 0 Td +339.56 212.538 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(which) 24.3486 Tj +-250 TJm +(doesn') 26.5603 Tj +18 TJm +(t) 2.7696 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(the) 12.1743 Tj +[1 0 0 1 433.458 212.538] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -433.458 -212.538] cm +[1 0 0 1 0 0] Tm +0 0 Td +433.458 212.538 Td +/F134_0 9.9626 Tf +(long) 23.9102 Tj +[1 0 0 1 457.368 212.538] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -457.368 -212.538] cm +[1 0 0 1 0 0] Tm +0 0 Td +459.859 212.538 Td +/F130_0 9.9626 Tf +(type,) 19.6462 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(OK.) 16.8766 Tj +[1 0 0 1 72 210.381] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.7659] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -196.872] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 187.074 Td +/F134_0 9.9626 Tf +(BZ_SEQUENCE_ERROR) 101.619 Tj +[1 0 0 1 173.619 187.074] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -104.11 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -185.764] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 175.118 Td +/F130_0 9.9626 Tf +(When) 23.7907 Tj +-291 TJm +(using) 21.589 Tj +-290 TJm +(the) 12.1743 Tj +-291 TJm +(library) 26.5603 Tj +65 TJm +(,) 2.49065 Tj +-300 TJm +(it) 5.53921 Tj +-291 TJm +(is) 6.64505 Tj +-290 TJm +(important) 38.7446 Tj +-291 TJm +(to) 7.7509 Tj +-290 TJm +(call) 14.386 Tj +-291 TJm +(the) 12.1743 Tj +-290 TJm +(functions) 37.0808 Tj +-291 TJm +(in) 7.7509 Tj +-290 TJm +(the) 12.1743 Tj +-291 TJm +(correct) 27.6562 Tj +-290 TJm +(sequence) 36.5129 Tj +-291 TJm +(and) 14.386 Tj +-290 TJm +(with) 17.7135 Tj +-291 TJm +(data) 16.5977 Tj +-290 TJm +(structures) 38.7346 Tj +108 163.163 Td +(\(b) 8.29885 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fers) 14.9339 Tj +-206 TJm +(etc\)) 14.9339 Tj +-205 TJm +(in) 7.7509 Tj +-206 TJm +(the) 12.1743 Tj +-205 TJm +(correct) 27.6562 Tj +-206 TJm +(states.) 24.6275 Tj +[1 0 0 1 239.409 163.163] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -239.409 -163.163] cm +[1 0 0 1 0 0] Tm +0 0 Td +239.409 163.163 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 287.23 163.163] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -287.23 -163.163] cm +[1 0 0 1 0 0] Tm +0 0 Td +289.278 163.163 Td +/F130_0 9.9626 Tf +(checks) 27.1082 Tj +-206 TJm +(as) 8.29885 Tj +-205 TJm +(much) 22.1369 Tj +-206 TJm +(as) 8.29885 Tj +-205 TJm +(it) 5.53921 Tj +-206 TJm +(can) 13.8281 Tj +-206 TJm +(to) 7.7509 Tj +-205 TJm +(ensure) 26.0024 Tj +-206 TJm +(this) 14.396 Tj +-206 TJm +(is) 6.64505 Tj +-205 TJm +(happening,) 43.9948 Tj +-215 TJm +(and) 14.386 Tj +-205 TJm +(returns) 27.6661 Tj +[1 0 0 1 108 151.208] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -108 -151.208] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 151.208 Td +/F134_0 9.9626 Tf +(BZ_SEQUENCE_ERROR) 101.619 Tj +[1 0 0 1 209.619 151.208] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -209.619 -151.208] cm +[1 0 0 1 0 0] Tm +0 0 Td +213.27 151.208 Td +/F130_0 9.9626 Tf +(if) 6.08715 Tj +-367 TJm +(not.) 15.2229 Tj +-659 TJm +(Code) 21.031 Tj +-367 TJm +(which) 24.3486 Tj +-367 TJm +(complies) 35.9749 Tj +-366 TJm +(precisely) 35.965 Tj +-367 TJm +(with) 17.7135 Tj +-366 TJm +(the) 12.1743 Tj +-367 TJm +(function) 33.2053 Tj +-366 TJm +(semantics,) 41.7831 Tj +-396 TJm +(as) 8.29885 Tj +-367 TJm +(detailed) 31.5416 Tj +108 139.253 Td +(belo) 17.1556 Tj +25 TJm +(w) 7.193 Tj +65 TJm +(,) 2.49065 Tj +-250 TJm +(should) 26.5703 Tj +-250 TJm +(ne) 9.40469 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-250 TJm +(recei) 19.3573 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-250 TJm +(this) 14.396 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alue;) 19.3673 Tj +-250 TJm +(such) 18.2614 Tj +-250 TJm +(an) 9.40469 Tj +-250 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ent) 12.1743 Tj +-250 TJm +(denotes) 30.4357 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(uggy) 19.9252 Tj +-250 TJm +(code) 18.8094 Tj +-250 TJm +(which) 24.3486 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(should) 26.5703 Tj +-250 TJm +(in) 7.7509 Tj +40 TJm +(v) 4.9813 Tj +15 TJm +(estig) 18.8194 Tj +5 TJm +(ate.) 14.107 Tj +[1 0 0 1 72 137.096] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.7659] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7436] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -123.587] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 113.788 Td +/F134_0 9.9626 Tf +(BZ_PARAM_ERROR) 83.6858 Tj +[1 0 0 1 155.686 113.788] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.1768 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -112.478] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 101.833 Td +/F130_0 9.9626 Tf +(Returned) 36.5229 Tj +-434 TJm +(when) 21.579 Tj +-434 TJm +(a) 4.42339 Tj +-434 TJm +(parameter) 39.8305 Tj +-434 TJm +(to) 7.7509 Tj +-434 TJm +(a) 4.42339 Tj +-433 TJm +(function) 33.2053 Tj +-434 TJm +(call) 14.386 Tj +-434 TJm +(is) 6.64505 Tj +-434 TJm +(out) 12.7322 Tj +-434 TJm +(of) 8.29885 Tj +-434 TJm +(range) 22.1269 Tj +-434 TJm +(or) 8.29885 Tj +-434 TJm +(otherwise) 38.7346 Tj +-434 TJm +(manifestly) 42.0621 Tj +-434 TJm +(incorrect.) 37.8977 Tj +-1723 TJm +(As) 11.0684 Tj +108 89.8778 Td +(with) 17.7135 Tj +[1 0 0 1 131.644 89.8778] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -131.644 -89.8778] cm +[1 0 0 1 0 0] Tm +0 0 Td +131.644 89.8778 Td +/F134_0 9.9626 Tf +(BZ_SEQUENCE_ERROR) 101.619 Tj +[1 0 0 1 233.263 89.8778] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -233.263 -89.8778] cm +[1 0 0 1 0 0] Tm +0 0 Td +233.263 89.8778 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-595 TJm +(this) 14.396 Tj +-596 TJm +(denotes) 30.4357 Tj +-595 TJm +(a) 4.42339 Tj +-595 TJm +(b) 4.9813 Tj +20 TJm +(ug) 9.9626 Tj +-596 TJm +(in) 7.7509 Tj +-595 TJm +(the) 12.1743 Tj +-595 TJm +(client) 22.1369 Tj +-595 TJm +(code.) 21.3 Tj +-2692 TJm +(The) 15.4918 Tj +-596 TJm +(distinction) 42.0721 Tj +-595 TJm +(between) 33.1954 Tj +[1 0 0 1 108 77.9227] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -108 -77.9227] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 77.9227 Td +/F134_0 9.9626 Tf +(BZ_PARAM_ERROR) 83.6858 Tj +[1 0 0 1 191.686 77.9227] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -191.686 -77.9227] cm +[1 0 0 1 0 0] Tm +0 0 Td +194.177 77.9227 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 211.053 77.9227] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -211.053 -77.9227] cm +[1 0 0 1 0 0] Tm +0 0 Td +211.053 77.9227 Td +/F134_0 9.9626 Tf +(BZ_SEQUENCE_ERROR) 101.619 Tj +[1 0 0 1 312.672 77.9227] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -312.672 -77.9227] cm +[1 0 0 1 0 0] Tm +0 0 Td +315.163 77.9227 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(bit) 10.5205 Tj +-250 TJm +(hazy) 18.8094 Tj +65 TJm +(,) 2.49065 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-250 TJm +(still) 14.9539 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(orth) 16.0497 Tj +-250 TJm +(making.) 32.3785 Tj +[1 0 0 1 72 75.7659] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.7659] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -21.1482] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(10) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 14 14 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F134_0 9.9626 Tf +(BZ_MEM_ERROR) 71.7307 Tj +[1 0 0 1 143.731 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -74.2217 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -708.727] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 698.082 Td +/F130_0 9.9626 Tf +(Returned) 36.5229 Tj +-228 TJm +(when) 21.579 Tj +-227 TJm +(a) 4.42339 Tj +-228 TJm +(request) 28.772 Tj +-227 TJm +(to) 7.7509 Tj +-228 TJm +(allocate) 30.9837 Tj +-228 TJm +(memory) 33.2053 Tj +-227 TJm +(f) 3.31755 Tj +10 TJm +(ailed.) 21.8579 Tj +-605 TJm +(Note) 19.3673 Tj +-228 TJm +(that) 14.9439 Tj +-228 TJm +(the) 12.1743 Tj +-227 TJm +(quantity) 32.6574 Tj +-228 TJm +(of) 8.29885 Tj +-227 TJm +(memory) 33.2053 Tj +-228 TJm +(needed) 28.2141 Tj +-228 TJm +(to) 7.7509 Tj +-227 TJm +(decompress) 47.0334 Tj +108 686.127 Td +(a) 4.42339 Tj +-351 TJm +(stream) 26.5603 Tj +-352 TJm +(cannot) 26.5603 Tj +-351 TJm +(be) 9.40469 Tj +-352 TJm +(determined) 44.8217 Tj +-351 TJm +(until) 18.2714 Tj +-352 TJm +(the) 12.1743 Tj +-351 TJm +(stream') 29.8778 Tj +55 TJm +(s) 3.87545 Tj +-351 TJm +(header) 26.5503 Tj +-352 TJm +(has) 13.2801 Tj +-351 TJm +(been) 18.8094 Tj +-352 TJm +(read.) 19.6363 Tj +-1228 TJm +(So) 10.5205 Tj +[1 0 0 1 426.471 686.127] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -426.471 -686.127] cm +[1 0 0 1 0 0] Tm +0 0 Td +426.471 686.127 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 522.113 686.127] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -522.113 -686.127] cm +[1 0 0 1 0 0] Tm +0 0 Td +525.614 686.127 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 108 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -108 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 674.172 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 167.776 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -167.776 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +172.13 674.172 Td +/F130_0 9.9626 Tf +(may) 17.1556 Tj +-437 TJm +(return) 23.7907 Tj +[1 0 0 1 221.784 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -221.784 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +221.784 674.172 Td +/F134_0 9.9626 Tf +(BZ_MEM_ERROR) 71.7307 Tj +[1 0 0 1 293.515 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -293.515 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +297.867 674.172 Td +/F130_0 9.9626 Tf +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(en) 9.40469 Tj +-437 TJm +(though) 27.6761 Tj +-437 TJm +(some) 21.031 Tj +-437 TJm +(of) 8.29885 Tj +-437 TJm +(the) 12.1743 Tj +-437 TJm +(compressed) 47.0334 Tj +-437 TJm +(data) 16.5977 Tj +-437 TJm +(has) 13.2801 Tj +-437 TJm +(been) 18.8094 Tj +-437 TJm +(read.) 19.6363 Tj +108 662.217 Td +(The) 15.4918 Tj +-479 TJm +(same) 20.4731 Tj +-478 TJm +(is) 6.64505 Tj +-479 TJm +(not) 12.7322 Tj +-478 TJm +(true) 15.4918 Tj +-479 TJm +(for) 11.6164 Tj +-479 TJm +(compression;) 53.1305 Tj +-593 TJm +(once) 18.8094 Tj +[1 0 0 1 301.675 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -301.675 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +301.675 662.217 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 409.271 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -409.271 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +414.04 662.217 Td +/F130_0 9.9626 Tf +(or) 8.29885 Tj +[1 0 0 1 427.107 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -427.107 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +427.107 662.217 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteOpen) 89.6634 Tj +[1 0 0 1 516.771 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -516.771 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +521.539 662.217 Td +/F130_0 9.9626 Tf +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +108 650.262 Td +(successfully) 48.6972 Tj +-250 TJm +(completed,) 43.9948 Tj +[1 0 0 1 205.672 650.261] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -205.672 -650.261] cm +[1 0 0 1 0 0] Tm +0 0 Td +205.672 650.261 Td +/F134_0 9.9626 Tf +(BZ_MEM_ERROR) 71.7307 Tj +[1 0 0 1 277.403 650.261] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -277.403 -650.261] cm +[1 0 0 1 0 0] Tm +0 0 Td +279.894 650.261 Td +/F130_0 9.9626 Tf +(cannot) 26.5603 Tj +-250 TJm +(occur) 22.1269 Tj +55 TJm +(.) 2.49065 Tj +[1 0 0 1 72 648.105] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.985] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -634.157] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 624.359 Td +/F134_0 9.9626 Tf +(BZ_DATA_ERROR) 77.7083 Tj +[1 0 0 1 149.709 624.359] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -80.1993 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -623.049] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 612.404 Td +/F130_0 9.9626 Tf +(Returned) 36.5229 Tj +-266 TJm +(when) 21.579 Tj +-265 TJm +(a) 4.42339 Tj +-266 TJm +(data) 16.5977 Tj +-265 TJm +(inte) 14.9439 Tj +15 TJm +(grity) 18.8194 Tj +-266 TJm +(error) 19.3573 Tj +-266 TJm +(is) 6.64505 Tj +-265 TJm +(detected) 33.1954 Tj +-266 TJm +(during) 26.0123 Tj +-265 TJm +(decompression.) 62.2563 Tj +-714 TJm +(Most) 20.4831 Tj +-266 TJm +(importantl) 41.5142 Tj +1 TJm +(y) 4.9813 Tj +64 TJm +(,) 2.49065 Tj +-269 TJm +(this) 14.396 Tj +-266 TJm +(means) 25.4544 Tj +-265 TJm +(when) 21.579 Tj +108 600.448 Td +(stored) 24.3486 Tj +-222 TJm +(and) 14.386 Tj +-223 TJm +(computed) 39.2925 Tj +-222 TJm +(CRCs) 23.8106 Tj +-222 TJm +(for) 11.6164 Tj +-222 TJm +(the) 12.1743 Tj +-223 TJm +(data) 16.5977 Tj +-222 TJm +(do) 9.9626 Tj +-222 TJm +(not) 12.7322 Tj +-222 TJm +(match.) 26.8392 Tj +-602 TJm +(This) 17.7135 Tj +-222 TJm +(v) 4.9813 Tj +25 TJm +(alue) 16.5977 Tj +-222 TJm +(is) 6.64505 Tj +-223 TJm +(also) 16.0497 Tj +-222 TJm +(returned) 33.1954 Tj +-222 TJm +(upon) 19.9252 Tj +-222 TJm +(detection) 36.5229 Tj +-223 TJm +(of) 8.29885 Tj +-222 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-222 TJm +(other) 20.4731 Tj +108 588.493 Td +(anomaly) 34.3112 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(data.) 19.0883 Tj +[1 0 0 1 72 586.336] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.985] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -572.389] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 562.59 Td +/F134_0 9.9626 Tf +(BZ_DATA_ERROR_MAGIC) 113.574 Tj +[1 0 0 1 185.574 562.59] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -116.065 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -561.28] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 550.635 Td +/F130_0 9.9626 Tf +(As) 11.0684 Tj +-306 TJm +(a) 4.42339 Tj +-306 TJm +(special) 27.6661 Tj +-306 TJm +(case) 17.1456 Tj +-307 TJm +(of) 8.29885 Tj +[1 0 0 1 191.852 550.635] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -191.852 -550.635] cm +[1 0 0 1 0 0] Tm +0 0 Td +191.852 550.635 Td +/F134_0 9.9626 Tf +(BZ_DATA_ERROR) 77.7083 Tj +[1 0 0 1 269.561 550.635] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -269.561 -550.635] cm +[1 0 0 1 0 0] Tm +0 0 Td +269.561 550.635 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-306 TJm +(it) 5.53921 Tj +-306 TJm +(is) 6.64505 Tj +-306 TJm +(sometimes) 42.62 Tj +-307 TJm +(usef) 16.5977 Tj +1 TJm +(ul) 7.7509 Tj +-307 TJm +(to) 7.7509 Tj +-306 TJm +(kno) 14.9439 Tj +25 TJm +(w) 7.193 Tj +-306 TJm +(when) 21.579 Tj +-306 TJm +(the) 12.1743 Tj +-306 TJm +(compressed) 47.0334 Tj +-306 TJm +(stream) 26.5603 Tj +-306 TJm +(does) 18.2614 Tj +108 538.68 Td +(not) 12.7322 Tj +-250 TJm +(start) 17.1556 Tj +-250 TJm +(with) 17.7135 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(correct) 27.6562 Tj +-250 TJm +(magic) 24.3486 Tj +-250 TJm +(bytes) 21.031 Tj +-250 TJm +(\() 3.31755 Tj +[1 0 0 1 261.562 538.68] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -261.562 -538.68] cm +[1 0 0 1 0 0] Tm +0 0 Td +261.562 538.68 Td +/F134_0 9.9626 Tf +('B') 17.9327 Tj +-600 TJm +('Z') 17.9327 Tj +-600 TJm +('h') 17.9327 Tj +[1 0 0 1 327.316 538.68] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -327.316 -538.68] cm +[1 0 0 1 0 0] Tm +0 0 Td +327.316 538.68 Td +/F130_0 9.9626 Tf +(\).) 5.8082 Tj +[1 0 0 1 72 536.523] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.985] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -522.576] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 512.777 Td +/F134_0 9.9626 Tf +(BZ_IO_ERROR) 65.7532 Tj +[1 0 0 1 137.753 512.777] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -68.2441 -1.3101] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -511.467] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 500.822 Td +/F130_0 9.9626 Tf +(Returned) 36.5229 Tj +-233 TJm +(by) 9.9626 Tj +[1 0 0 1 159.123 500.822] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -159.123 -500.822] cm +[1 0 0 1 0 0] Tm +0 0 Td +159.123 500.822 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 218.899 500.822] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -218.899 -500.822] cm +[1 0 0 1 0 0] Tm +0 0 Td +221.218 500.822 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 237.923 500.822] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -237.923 -500.822] cm +[1 0 0 1 0 0] Tm +0 0 Td +237.923 500.822 Td +/F134_0 9.9626 Tf +(BZ2_bzWrite) 65.7532 Tj +[1 0 0 1 303.676 500.822] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -303.676 -500.822] cm +[1 0 0 1 0 0] Tm +0 0 Td +305.995 500.822 Td +/F130_0 9.9626 Tf +(when) 21.579 Tj +-233 TJm +(there) 19.9152 Tj +-232 TJm +(is) 6.64505 Tj +-233 TJm +(an) 9.40469 Tj +-233 TJm +(error) 19.3573 Tj +-233 TJm +(reading) 29.8778 Tj +-232 TJm +(or) 8.29885 Tj +-233 TJm +(writing) 28.782 Tj +-233 TJm +(in) 7.7509 Tj +-233 TJm +(the) 12.1743 Tj +-232 TJm +(compressed) 47.0334 Tj +108 488.867 Td +(\002le,) 15.2229 Tj +-384 TJm +(and) 14.386 Tj +-357 TJm +(by) 9.9626 Tj +[1 0 0 1 158.511 488.867] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -158.511 -488.867] cm +[1 0 0 1 0 0] Tm +0 0 Td +158.511 488.867 Td +/F134_0 9.9626 Tf +(BZ2_bzReadOpen) 83.6858 Tj +[1 0 0 1 242.197 488.867] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -242.197 -488.867] cm +[1 0 0 1 0 0] Tm +0 0 Td +245.755 488.867 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 263.698 488.867] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -263.698 -488.867] cm +[1 0 0 1 0 0] Tm +0 0 Td +263.698 488.867 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteOpen) 89.6634 Tj +[1 0 0 1 353.362 488.867] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -353.362 -488.867] cm +[1 0 0 1 0 0] Tm +0 0 Td +356.92 488.867 Td +/F130_0 9.9626 Tf +(for) 11.6164 Tj +-357 TJm +(attempts) 33.7633 Tj +-357 TJm +(to) 7.7509 Tj +-357 TJm +(use) 13.2801 Tj +-357 TJm +(a) 4.42339 Tj +-357 TJm +(\002le) 12.7322 Tj +-357 TJm +(for) 11.6164 Tj +-358 TJm +(which) 24.3486 Tj +-357 TJm +(the) 12.1743 Tj +-357 TJm +(error) 19.3573 Tj +108 476.912 Td +(indicator) 35.417 Tj +-260 TJm +(\(viz,) 17.9825 Tj +[1 0 0 1 166.603 476.912] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -166.603 -476.912] cm +[1 0 0 1 0 0] Tm +0 0 Td +166.603 476.912 Td +/F134_0 9.9626 Tf +(ferror\(f\)) 53.798 Tj +[1 0 0 1 220.401 476.912] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -220.401 -476.912] cm +[1 0 0 1 0 0] Tm +0 0 Td +220.401 476.912 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +-260 TJm +(is) 6.64505 Tj +-260 TJm +(set.) 13.5591 Tj +-679 TJm +(On) 12.1743 Tj +-260 TJm +(receipt) 27.1082 Tj +-260 TJm +(of) 8.29885 Tj +[1 0 0 1 311.223 476.912] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -311.223 -476.912] cm +[1 0 0 1 0 0] Tm +0 0 Td +311.223 476.912 Td +/F134_0 9.9626 Tf +(BZ_IO_ERROR) 65.7532 Tj +[1 0 0 1 376.976 476.912] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -376.976 -476.912] cm +[1 0 0 1 0 0] Tm +0 0 Td +376.976 476.912 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-260 TJm +(the) 12.1743 Tj +-260 TJm +(caller) 22.1269 Tj +-260 TJm +(should) 26.5703 Tj +-260 TJm +(consult) 28.782 Tj +[1 0 0 1 482.068 476.912] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -482.068 -476.912] cm +[1 0 0 1 0 0] Tm +0 0 Td +482.068 476.912 Td +/F134_0 9.9626 Tf +(errno) 29.8878 Tj +[1 0 0 1 511.956 476.912] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.956 -476.912] cm +[1 0 0 1 0 0] Tm +0 0 Td +514.546 476.912 Td +/F130_0 9.9626 Tf +(and/or) 25.4544 Tj +[1 0 0 1 108 464.957] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -108 -464.957] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 464.957 Td +/F134_0 9.9626 Tf +(perror) 35.8654 Tj +[1 0 0 1 143.865 464.957] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -143.865 -464.957] cm +[1 0 0 1 0 0] Tm +0 0 Td +146.356 464.957 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-250 TJm +(acquire) 29.3199 Tj +-250 TJm +(operating-system) 68.6224 Tj +-250 TJm +(speci\002c) 30.4357 Tj +-250 TJm +(information) 47.0434 Tj +-250 TJm +(about) 22.1369 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(problem.) 35.696 Tj +[1 0 0 1 72 462.8] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.9849] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -448.852] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 439.054 Td +/F134_0 9.9626 Tf +(BZ_UNEXPECTED_EOF) 101.619 Tj +[1 0 0 1 173.619 439.054] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -104.11 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -437.744] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 427.099 Td +/F130_0 9.9626 Tf +(Returned) 36.5229 Tj +-250 TJm +(by) 9.9626 Tj +[1 0 0 1 159.467 427.099] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -159.467 -427.099] cm +[1 0 0 1 0 0] Tm +0 0 Td +159.467 427.099 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 219.242 427.099] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -219.242 -427.099] cm +[1 0 0 1 0 0] Tm +0 0 Td +221.733 427.099 Td +/F130_0 9.9626 Tf +(when) 21.579 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(\002le) 12.7322 Tj +-250 TJm +(\002nishes) 30.4457 Tj +-250 TJm +(before) 25.4445 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(logical) 27.1182 Tj +-250 TJm +(end) 14.386 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(stream) 26.5603 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(detected.) 35.686 Tj +[1 0 0 1 72 424.942] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.985] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -410.994] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 401.196 Td +/F134_0 9.9626 Tf +(BZ_OUTBUFF_FULL) 89.6634 Tj +[1 0 0 1 161.664 401.196] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -92.1544 -1.31] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -399.886] cm +[1 0 0 1 0 0] Tm +0 0 Td +108 389.241 Td +/F130_0 9.9626 Tf +(Returned) 36.5229 Tj +-258 TJm +(by) 9.9626 Tj +[1 0 0 1 159.632 389.241] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -159.632 -389.241] cm +[1 0 0 1 0 0] Tm +0 0 Td +159.632 389.241 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffCompress) 143.461 Tj +[1 0 0 1 303.094 389.241] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -303.094 -389.241] cm +[1 0 0 1 0 0] Tm +0 0 Td +305.668 389.241 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 322.627 389.241] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -322.627 -389.241] cm +[1 0 0 1 0 0] Tm +0 0 Td +322.627 389.241 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffDecompress) 155.417 Tj +[1 0 0 1 478.044 389.241] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -478.044 -389.241] cm +[1 0 0 1 0 0] Tm +0 0 Td +480.618 389.241 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-258 TJm +(indicate) 31.5416 Tj +-259 TJm +(that) 14.9439 Tj +108 377.286 Td +(the) 12.1743 Tj +-250 TJm +(output) 25.4644 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(will) 15.5018 Tj +-250 TJm +(not) 12.7322 Tj +-250 TJm +(\002t) 8.30881 Tj +-250 TJm +(into) 15.5018 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(output) 25.4644 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-250 TJm +(pro) 13.2801 Tj +15 TJm +(vided.) 24.6275 Tj +[1 0 0 1 72 375.129] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -3.985] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -351.218] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 328.585 Td +/F122_0 20.6585 Tf +(3.3.) 34.4584 Tj +-278 TJm +(Lo) 25.2447 Tj +15 TJm +(w-le) 40.1808 Tj +15 TJm +(vel) 28.7153 Tj +-278 TJm +(interface) 86.1046 Tj +[1 0 0 1 72 328.327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -318.364] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 297.964 Td +/F122_0 17.2154 Tf +(3.3.1.) 43.0729 Tj +[1 0 0 1 119.858 297.964] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -297.964] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 297.964 Td +/F392_0 17.2154 Tf +(BZ2_bzCompressInit) 185.926 Tj +[1 0 0 1 305.785 297.964] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -233.785 -2.3327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -244.779] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.8518] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.8518 Td +/F130_0 9.9626 Tf +(11) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 15 15 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -296.523] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 274.969 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 271.382] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -711.631] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 711.631 Td +/F134_0 9.9626 Tf +(typedef) 41.8429 Tj +-426 TJm +(struct) 35.8654 Tj +-426 TJm +({) 5.97756 Tj +98.4879 699.676 Td +(char) 23.9102 Tj +126.642 697.933 Td +(*) 5.97756 Tj +132.62 699.676 Td +(next_in;) 47.8205 Tj +98.4879 687.721 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(avail_in;) 53.798 Tj +98.4879 675.766 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(total_in_lo32;) 83.6858 Tj +98.4879 663.811 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(total_in_hi32;) 83.6858 Tj +98.4879 639.9 Td +(char) 23.9102 Tj +126.642 638.157 Td +(*) 5.97756 Tj +132.62 639.9 Td +(next_out;) 53.798 Tj +98.4879 627.945 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(avail_out;) 59.7756 Tj +98.4879 615.99 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(total_out_lo32;) 89.6634 Tj +98.4879 604.035 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(total_out_hi32;) 89.6634 Tj +98.4879 580.125 Td +(void) 23.9102 Tj +126.642 578.381 Td +(*) 5.97756 Tj +132.62 580.125 Td +(state;) 35.8654 Tj +98.4879 556.214 Td +(void) 23.9102 Tj +126.642 554.471 Td +(*) 5.97756 Tj +132.62 556.214 Td +(\() 5.97756 Tj +138.597 554.471 Td +(*) 5.97756 Tj +144.575 556.214 Td +(bzalloc\)\(void) 77.7083 Tj +226.527 554.471 Td +(*) 5.97756 Tj +232.505 556.214 Td +(,int,int\);) 59.7756 Tj +98.4879 544.259 Td +(void) 23.9102 Tj +-426 TJm +(\() 5.97756 Tj +132.62 542.516 Td +(*) 5.97756 Tj +138.597 544.259 Td +(bzfree\)\(void) 71.7307 Tj +214.572 542.516 Td +(*) 5.97756 Tj +220.55 544.259 Td +(,void) 29.8878 Tj +254.682 542.516 Td +(*) 5.97756 Tj +260.659 544.259 Td +(\);) 11.9551 Tj +98.4879 532.304 Td +(void) 23.9102 Tj +126.642 530.56 Td +(*) 5.97756 Tj +132.62 532.304 Td +(opaque;) 41.8429 Tj +89.9999 520.349 Td +(}) 5.97756 Tj +-426 TJm +(bz_stream;) 59.7756 Tj +89.9999 496.438 Td +(int) 17.9327 Tj +-426 TJm +(BZ2_bzCompressInit) 107.596 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(bz_stream) 53.798 Tj +292.281 494.695 Td +(*) 5.97756 Tj +298.258 496.438 Td +(strm,) 29.8878 Tj +196.099 484.483 Td +(int) 17.9327 Tj +-426 TJm +(blockSize100k,) 83.6858 Tj +196.099 472.528 Td +(int) 17.9327 Tj +-426 TJm +(verbosity,) 59.7756 Tj +196.099 460.573 Td +(int) 17.9327 Tj +-426 TJm +(workFactor) 59.7756 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 445.031] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -435.068] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 423.113 Td +/F130_0 9.9626 Tf +(Prepares) 34.3012 Tj +-356 TJm +(for) 11.6164 Tj +-356 TJm +(compression.) 52.8516 Tj +-1256 TJm +(The) 15.4918 Tj +[1 0 0 1 209.409 423.113] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -209.409 -423.113] cm +[1 0 0 1 0 0] Tm +0 0 Td +209.409 423.113 Td +/F134_0 9.9626 Tf +(bz_stream) 53.798 Tj +[1 0 0 1 263.208 423.113] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -263.208 -423.113] cm +[1 0 0 1 0 0] Tm +0 0 Td +266.754 423.113 Td +/F130_0 9.9626 Tf +(structure) 34.8591 Tj +-356 TJm +(holds) 21.589 Tj +-356 TJm +(all) 9.9626 Tj +-356 TJm +(data) 16.5977 Tj +-356 TJm +(pertaining) 40.3983 Tj +-356 TJm +(to) 7.7509 Tj +-356 TJm +(the) 12.1743 Tj +-356 TJm +(compression) 50.3609 Tj +-355 TJm +(acti) 14.386 Tj +25 TJm +(vity) 15.5018 Tj +65 TJm +(.) 2.49065 Tj +-1256 TJm +(A) 7.193 Tj +[1 0 0 1 72 411.158] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -411.158] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 411.158 Td +/F134_0 9.9626 Tf +(bz_stream) 53.798 Tj +[1 0 0 1 125.798 411.158] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -125.798 -411.158] cm +[1 0 0 1 0 0] Tm +0 0 Td +128.581 411.158 Td +/F130_0 9.9626 Tf +(structure) 34.8591 Tj +-279 TJm +(should) 26.5703 Tj +-280 TJm +(be) 9.40469 Tj +-279 TJm +(allocated) 35.965 Tj +-279 TJm +(and) 14.386 Tj +-280 TJm +(initialised) 39.3025 Tj +-279 TJm +(prior) 19.3673 Tj +-279 TJm +(to) 7.7509 Tj +-279 TJm +(the) 12.1743 Tj +-280 TJm +(call.) 16.8766 Tj +-796 TJm +(The) 15.4918 Tj +-279 TJm +(\002elds) 21.589 Tj +-279 TJm +(of) 8.29885 Tj +[1 0 0 1 431.939 411.158] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -431.939 -411.158] cm +[1 0 0 1 0 0] Tm +0 0 Td +431.939 411.158 Td +/F134_0 9.9626 Tf +(bz_stream) 53.798 Tj +[1 0 0 1 485.738 411.158] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -485.738 -411.158] cm +[1 0 0 1 0 0] Tm +0 0 Td +488.52 411.158 Td +/F130_0 9.9626 Tf +(comprise) 36.5229 Tj +-279 TJm +(the) 12.1743 Tj +72 399.203 Td +(entirety) 30.4357 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(user) 16.5977 Tj +20 TJm +(-visible) 29.8878 Tj +-250 TJm +(data.) 19.0883 Tj +[1 0 0 1 204.422 399.203] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -204.422 -399.203] cm +[1 0 0 1 0 0] Tm +0 0 Td +204.422 399.203 Td +/F134_0 9.9626 Tf +(state) 29.8878 Tj +[1 0 0 1 234.31 399.203] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -234.31 -399.203] cm +[1 0 0 1 0 0] Tm +0 0 Td +236.8 399.203 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(pointer) 28.224 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(pri) 11.0684 Tj +25 TJm +(v) 4.9813 Tj +25 TJm +(ate) 11.6164 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(structures) 38.7346 Tj +-250 TJm +(required) 33.1954 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(compression.) 52.8516 Tj +[1 0 0 1 72 397.046] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -387.083] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 377.285 Td +/F130_0 9.9626 Tf +(Custom) 31.0036 Tj +-372 TJm +(memory) 33.2053 Tj +-372 TJm +(allocators) 38.7346 Tj +-372 TJm +(are) 12.1643 Tj +-372 TJm +(supported,) 41.7831 Tj +-403 TJm +(via) 12.1743 Tj +-372 TJm +(\002elds) 21.589 Tj +[1 0 0 1 288.908 377.285] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -288.908 -377.285] cm +[1 0 0 1 0 0] Tm +0 0 Td +288.908 377.285 Td +/F134_0 9.9626 Tf +(bzalloc) 41.8429 Tj +[1 0 0 1 330.751 377.285] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -330.751 -377.285] cm +[1 0 0 1 0 0] Tm +0 0 Td +330.751 377.285 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 337.253 377.285] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -337.253 -377.285] cm +[1 0 0 1 0 0] Tm +0 0 Td +337.253 377.285 Td +/F134_0 9.9626 Tf +(bzfree) 35.8654 Tj +[1 0 0 1 373.118 377.285] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -373.118 -377.285] cm +[1 0 0 1 0 0] Tm +0 0 Td +373.118 377.285 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-403 TJm +(and) 14.386 Tj +[1 0 0 1 397.714 377.285] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -397.714 -377.285] cm +[1 0 0 1 0 0] Tm +0 0 Td +397.714 377.285 Td +/F134_0 9.9626 Tf +(opaque) 35.8654 Tj +[1 0 0 1 433.579 377.285] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -433.579 -377.285] cm +[1 0 0 1 0 0] Tm +0 0 Td +433.579 377.285 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-1353 TJm +(The) 15.4918 Tj +-372 TJm +(v) 4.9813 Tj +25 TJm +(alue) 16.5977 Tj +[1 0 0 1 493.782 377.285] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.782 -377.285] cm +[1 0 0 1 0 0] Tm +0 0 Td +493.782 377.285 Td +/F134_0 9.9626 Tf +(opaque) 35.8654 Tj +[1 0 0 1 529.648 377.285] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -529.648 -377.285] cm +[1 0 0 1 0 0] Tm +0 0 Td +533.355 377.285 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +72 365.33 Td +(passed) 26.5603 Tj +-306 TJm +(to) 7.7509 Tj +-306 TJm +(as) 8.29885 Tj +-306 TJm +(the) 12.1743 Tj +-306 TJm +(\002rst) 15.5018 Tj +-306 TJm +(ar) 7.74094 Tj +18 TJm +(gument) 29.8878 Tj +-306 TJm +(to) 7.7509 Tj +-306 TJm +(all) 9.9626 Tj +-306 TJm +(calls) 18.2614 Tj +-305 TJm +(to) 7.7509 Tj +[1 0 0 1 253.941 365.33] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -253.941 -365.33] cm +[1 0 0 1 0 0] Tm +0 0 Td +253.941 365.33 Td +/F134_0 9.9626 Tf +(bzalloc) 41.8429 Tj +[1 0 0 1 295.784 365.33] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -295.784 -365.33] cm +[1 0 0 1 0 0] Tm +0 0 Td +298.832 365.33 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 316.266 365.33] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -316.266 -365.33] cm +[1 0 0 1 0 0] Tm +0 0 Td +316.266 365.33 Td +/F134_0 9.9626 Tf +(bzfree) 35.8654 Tj +[1 0 0 1 352.132 365.33] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -352.132 -365.33] cm +[1 0 0 1 0 0] Tm +0 0 Td +352.132 365.33 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-320 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-306 TJm +(is) 6.64505 Tj +-306 TJm +(otherwise) 38.7346 Tj +-306 TJm +(ignored) 30.4357 Tj +-306 TJm +(by) 9.9626 Tj +-306 TJm +(the) 12.1743 Tj +-306 TJm +(library) 26.5603 Tj +65 TJm +(.) 2.49065 Tj +-955 TJm +(The) 15.4918 Tj +72 353.375 Td +(call) 14.386 Tj +[1 0 0 1 89.4309 353.375] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -89.4309 -353.375] cm +[1 0 0 1 0 0] Tm +0 0 Td +89.4309 353.375 Td +/F134_0 9.9626 Tf +(bzalloc) 41.8429 Tj +-600 TJm +(\() 5.97756 Tj +-600 TJm +(opaque,) 41.8429 Tj +-600 TJm +(n,) 11.9551 Tj +-600 TJm +(m) 5.97756 Tj +-600 TJm +(\)) 5.97756 Tj +[1 0 0 1 232.893 353.375] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -232.893 -353.375] cm +[1 0 0 1 0 0] Tm +0 0 Td +235.938 353.375 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-306 TJm +(e) 4.42339 Tj +15 TJm +(xpected) 30.9837 Tj +-305 TJm +(to) 7.7509 Tj +-306 TJm +(return) 23.7907 Tj +-306 TJm +(a) 4.42339 Tj +-305 TJm +(pointer) 28.224 Tj +[1 0 0 1 360.3 353.375] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -360.3 -353.375] cm +[1 0 0 1 0 0] Tm +0 0 Td +360.3 353.375 Td +/F134_0 9.9626 Tf +(p) 5.97756 Tj +[1 0 0 1 366.277 353.375] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -366.277 -353.375] cm +[1 0 0 1 0 0] Tm +0 0 Td +369.322 353.375 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +[1 0 0 1 380.118 353.375] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -380.118 -353.375] cm +[1 0 0 1 0 0] Tm +0 0 Td +380.118 353.375 Td +/F134_0 9.9626 Tf +(n) 5.97756 Tj +392.073 351.631 Td +(*) 5.97756 Tj +404.029 353.375 Td +(m) 5.97756 Tj +[1 0 0 1 410.006 353.375] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -410.006 -353.375] cm +[1 0 0 1 0 0] Tm +0 0 Td +413.051 353.375 Td +/F130_0 9.9626 Tf +(bytes) 21.031 Tj +-306 TJm +(of) 8.29885 Tj +-305 TJm +(memory) 33.2053 Tj +65 TJm +(,) 2.49065 Tj +-320 TJm +(and) 14.386 Tj +[1 0 0 1 504.135 353.375] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -504.135 -353.375] cm +[1 0 0 1 0 0] Tm +0 0 Td +504.135 353.375 Td +/F134_0 9.9626 Tf +(bzfree) 35.8654 Tj +72 341.42 Td +(\() 5.97756 Tj +-600 TJm +(opaque,) 41.8429 Tj +-600 TJm +(p) 5.97756 Tj +-600 TJm +(\)) 5.97756 Tj +[1 0 0 1 149.709 341.42] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -149.709 -341.42] cm +[1 0 0 1 0 0] Tm +0 0 Td +152.199 341.42 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-250 TJm +(free) 15.4819 Tj +-250 TJm +(that) 14.9439 Tj +-250 TJm +(memory) 33.2053 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 339.263] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -329.3] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 319.502 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +-280 TJm +(you) 14.9439 Tj +-280 TJm +(don') 18.2614 Tj +18 TJm +(t) 2.7696 Tj +-280 TJm +(w) 7.193 Tj +10 TJm +(ant) 12.1743 Tj +-279 TJm +(to) 7.7509 Tj +-280 TJm +(use) 13.2801 Tj +-280 TJm +(a) 4.42339 Tj +-280 TJm +(custom) 28.782 Tj +-280 TJm +(memory) 33.2053 Tj +-279 TJm +(allocator) 34.8591 Tj +40 TJm +(,) 2.49065 Tj +-288 TJm +(set) 11.0684 Tj +[1 0 0 1 299.9 319.502] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -299.9 -319.502] cm +[1 0 0 1 0 0] Tm +0 0 Td +299.9 319.502 Td +/F134_0 9.9626 Tf +(bzalloc) 41.8429 Tj +[1 0 0 1 341.743 319.502] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -341.743 -319.502] cm +[1 0 0 1 0 0] Tm +0 0 Td +341.743 319.502 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 347.096 319.502] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -347.096 -319.502] cm +[1 0 0 1 0 0] Tm +0 0 Td +347.096 319.502 Td +/F134_0 9.9626 Tf +(bzfree) 35.8654 Tj +[1 0 0 1 382.961 319.502] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -382.961 -319.502] cm +[1 0 0 1 0 0] Tm +0 0 Td +385.749 319.502 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 402.923 319.502] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -402.923 -319.502] cm +[1 0 0 1 0 0] Tm +0 0 Td +402.923 319.502 Td +/F134_0 9.9626 Tf +(opaque) 35.8654 Tj +[1 0 0 1 438.788 319.502] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -438.788 -319.502] cm +[1 0 0 1 0 0] Tm +0 0 Td +441.576 319.502 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +[1 0 0 1 452.115 319.502] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -452.115 -319.502] cm +[1 0 0 1 0 0] Tm +0 0 Td +452.115 319.502 Td +/F134_0 9.9626 Tf +(NULL) 23.9102 Tj +[1 0 0 1 476.025 319.502] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -476.025 -319.502] cm +[1 0 0 1 0 0] Tm +0 0 Td +476.025 319.502 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-280 TJm +(and) 14.386 Tj +-280 TJm +(the) 12.1743 Tj +-279 TJm +(library) 26.5603 Tj +72 307.547 Td +(will) 15.5018 Tj +-250 TJm +(then) 17.1556 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(standard) 33.7533 Tj +[1 0 0 1 176.318 307.547] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -176.318 -307.547] cm +[1 0 0 1 0 0] Tm +0 0 Td +176.318 307.547 Td +/F134_0 9.9626 Tf +(malloc) 35.8654 Tj +[1 0 0 1 212.183 307.547] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -212.183 -307.547] cm +[1 0 0 1 0 0] Tm +0 0 Td +214.674 307.547 Td +/F130_0 9.9626 Tf +(/) 2.7696 Tj +[1 0 0 1 219.934 307.547] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -219.934 -307.547] cm +[1 0 0 1 0 0] Tm +0 0 Td +219.934 307.547 Td +/F134_0 9.9626 Tf +(free) 23.9102 Tj +[1 0 0 1 243.844 307.547] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -243.844 -307.547] cm +[1 0 0 1 0 0] Tm +0 0 Td +246.335 307.547 Td +/F130_0 9.9626 Tf +(routines.) 34.5901 Tj +[1 0 0 1 72 307.392] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -297.43] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 285.629 Td +/F130_0 9.9626 Tf +(Before) 27.1082 Tj +-362 TJm +(calling) 27.1182 Tj +[1 0 0 1 133.438 285.629] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -133.438 -285.629] cm +[1 0 0 1 0 0] Tm +0 0 Td +133.438 285.629 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 241.035 285.629] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -241.035 -285.629] cm +[1 0 0 1 0 0] Tm +0 0 Td +241.035 285.629 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-390 TJm +(\002elds) 21.589 Tj +[1 0 0 1 272.606 285.629] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -272.606 -285.629] cm +[1 0 0 1 0 0] Tm +0 0 Td +272.606 285.629 Td +/F134_0 9.9626 Tf +(bzalloc) 41.8429 Tj +[1 0 0 1 314.449 285.629] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -314.449 -285.629] cm +[1 0 0 1 0 0] Tm +0 0 Td +314.449 285.629 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 320.825 285.629] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -320.825 -285.629] cm +[1 0 0 1 0 0] Tm +0 0 Td +320.825 285.629 Td +/F134_0 9.9626 Tf +(bzfree) 35.8654 Tj +[1 0 0 1 356.69 285.629] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -356.69 -285.629] cm +[1 0 0 1 0 0] Tm +0 0 Td +360.296 285.629 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 378.288 285.629] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -378.288 -285.629] cm +[1 0 0 1 0 0] Tm +0 0 Td +378.288 285.629 Td +/F134_0 9.9626 Tf +(opaque) 35.8654 Tj +[1 0 0 1 414.154 285.629] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -414.154 -285.629] cm +[1 0 0 1 0 0] Tm +0 0 Td +417.76 285.629 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-362 TJm +(be) 9.40469 Tj +-362 TJm +(\002lled) 20.4831 Tj +-362 TJm +(appropriately) 53.1206 Tj +65 TJm +(,) 2.49065 Tj +72 273.674 Td +(as) 8.29885 Tj +-322 TJm +(just) 14.396 Tj +-323 TJm +(described.) 40.6673 Tj +-1055 TJm +(Upon) 22.1369 Tj +-322 TJm +(return,) 26.2813 Tj +-341 TJm +(the) 12.1743 Tj +-322 TJm +(internal) 30.4357 Tj +-323 TJm +(state) 18.2614 Tj +-322 TJm +(will) 15.5018 Tj +-323 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-322 TJm +(been) 18.8094 Tj +-323 TJm +(allocated) 35.965 Tj +-322 TJm +(and) 14.386 Tj +-323 TJm +(initialised,) 41.7931 Tj +-340 TJm +(and) 14.386 Tj +[1 0 0 1 459.801 273.674] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -459.801 -273.674] cm +[1 0 0 1 0 0] Tm +0 0 Td +459.801 273.674 Td +/F134_0 9.9626 Tf +(total_in_lo32) 77.7083 Tj +[1 0 0 1 537.509 273.674] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -537.509 -273.674] cm +[1 0 0 1 0 0] Tm +0 0 Td +537.509 273.674 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 72 261.718] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -261.718] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 261.718 Td +/F134_0 9.9626 Tf +(total_in_hi32) 77.7083 Tj +[1 0 0 1 149.709 261.718] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -149.709 -261.718] cm +[1 0 0 1 0 0] Tm +0 0 Td +149.709 261.718 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 155.006 261.718] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -155.006 -261.718] cm +[1 0 0 1 0 0] Tm +0 0 Td +155.006 261.718 Td +/F134_0 9.9626 Tf +(total_out_lo32) 83.6858 Tj +[1 0 0 1 238.692 261.718] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -238.692 -261.718] cm +[1 0 0 1 0 0] Tm +0 0 Td +241.435 261.718 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 258.564 261.718] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -258.564 -261.718] cm +[1 0 0 1 0 0] Tm +0 0 Td +258.564 261.718 Td +/F134_0 9.9626 Tf +(total_out_hi32) 83.6858 Tj +[1 0 0 1 342.25 261.718] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.25 -261.718] cm +[1 0 0 1 0 0] Tm +0 0 Td +344.994 261.718 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-275 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-276 TJm +(been) 18.8094 Tj +-275 TJm +(set) 11.0684 Tj +-275 TJm +(to) 7.7509 Tj +-276 TJm +(zero.) 19.6363 Tj +-772 TJm +(These) 23.7907 Tj +-275 TJm +(four) 16.5977 Tj +-276 TJm +(\002elds) 21.589 Tj +-275 TJm +(are) 12.1643 Tj +72 249.763 Td +(used) 18.2614 Tj +-340 TJm +(by) 9.9626 Tj +-339 TJm +(the) 12.1743 Tj +-340 TJm +(library) 26.5603 Tj +-339 TJm +(to) 7.7509 Tj +-340 TJm +(inform) 27.1182 Tj +-339 TJm +(the) 12.1743 Tj +-340 TJm +(caller) 22.1269 Tj +-339 TJm +(of) 8.29885 Tj +-340 TJm +(the) 12.1743 Tj +-339 TJm +(total) 17.7135 Tj +-340 TJm +(amount) 29.8878 Tj +-339 TJm +(of) 8.29885 Tj +-340 TJm +(data) 16.5977 Tj +-340 TJm +(passed) 26.5603 Tj +-339 TJm +(into) 15.5018 Tj +-340 TJm +(and) 14.386 Tj +-339 TJm +(out) 12.7322 Tj +-340 TJm +(of) 8.29885 Tj +-339 TJm +(the) 12.1743 Tj +-340 TJm +(library) 26.5603 Tj +65 TJm +(,) 2.49065 Tj +-362 TJm +(respecti) 30.9837 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ely) 12.1743 Tj +65 TJm +(.) 2.49065 Tj +72 237.808 Td +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-376 TJm +(should) 26.5703 Tj +-377 TJm +(not) 12.7322 Tj +-376 TJm +(try) 11.0684 Tj +-376 TJm +(to) 7.7509 Tj +-377 TJm +(change) 28.2141 Tj +-376 TJm +(them.) 22.4159 Tj +-1378 TJm +(As) 11.0684 Tj +-377 TJm +(of) 8.29885 Tj +-376 TJm +(v) 4.9813 Tj +15 TJm +(ersion) 24.3486 Tj +-377 TJm +(1.0,) 14.9439 Tj +-408 TJm +(64-bit) 23.8007 Tj +-376 TJm +(counts) 26.0123 Tj +-376 TJm +(are) 12.1643 Tj +-377 TJm +(maintained,) 46.7644 Tj +-408 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(en) 9.40469 Tj +-376 TJm +(on) 9.9626 Tj +-376 TJm +(32-bit) 23.8007 Tj +-377 TJm +(platforms,) 40.6773 Tj +72 225.853 Td +(using) 21.589 Tj +-371 TJm +(the) 12.1743 Tj +[1 0 0 1 113.148 225.853] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -113.148 -225.853] cm +[1 0 0 1 0 0] Tm +0 0 Td +113.148 225.853 Td +/F134_0 9.9626 Tf +(_hi32) 29.8878 Tj +[1 0 0 1 143.036 225.853] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -143.036 -225.853] cm +[1 0 0 1 0 0] Tm +0 0 Td +146.729 225.853 Td +/F130_0 9.9626 Tf +(\002elds) 21.589 Tj +-371 TJm +(to) 7.7509 Tj +-370 TJm +(store) 19.3673 Tj +-371 TJm +(the) 12.1743 Tj +-371 TJm +(upper) 22.6848 Tj +-370 TJm +(32) 9.9626 Tj +-371 TJm +(bits) 14.396 Tj +-370 TJm +(of) 8.29885 Tj +-371 TJm +(the) 12.1743 Tj +-371 TJm +(count.) 24.6275 Tj +-1344 TJm +(So,) 13.0112 Tj +-400 TJm +(for) 11.6164 Tj +-371 TJm +(e) 4.42339 Tj +15 TJm +(xample,) 31.8205 Tj +-401 TJm +(the) 12.1743 Tj +-371 TJm +(total) 17.7135 Tj +-370 TJm +(amount) 29.8878 Tj +-371 TJm +(of) 8.29885 Tj +-370 TJm +(data) 16.5977 Tj +-371 TJm +(in) 7.7509 Tj +-371 TJm +(is) 6.64505 Tj +[1 0 0 1 72 213.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -213.898] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 213.898 Td +/F134_0 9.9626 Tf +(\(total_in_hi32) 83.6858 Tj +-600 TJm +(<<) 11.9551 Tj +-600 TJm +(32\)) 17.9327 Tj +-600 TJm +(+) 5.97756 Tj +-600 TJm +(total_in_lo32) 77.7083 Tj +[1 0 0 1 293.171 213.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -293.171 -213.898] cm +[1 0 0 1 0 0] Tm +0 0 Td +293.171 213.898 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 212.588] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -202.625] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 191.98 Td +/F130_0 9.9626 Tf +(P) 5.53921 Tj +15 TJm +(arameter) 34.8492 Tj +[1 0 0 1 115.367 191.98] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -115.367 -191.98] cm +[1 0 0 1 0 0] Tm +0 0 Td +115.367 191.98 Td +/F134_0 9.9626 Tf +(blockSize100k) 77.7083 Tj +[1 0 0 1 193.076 191.98] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -193.076 -191.98] cm +[1 0 0 1 0 0] Tm +0 0 Td +196.204 191.98 Td +/F130_0 9.9626 Tf +(speci\002es) 34.3112 Tj +-314 TJm +(the) 12.1743 Tj +-314 TJm +(block) 22.1369 Tj +-314 TJm +(size) 15.4918 Tj +-314 TJm +(to) 7.7509 Tj +-314 TJm +(be) 9.40469 Tj +-314 TJm +(used) 18.2614 Tj +-314 TJm +(for) 11.6164 Tj +-314 TJm +(compression.) 52.8516 Tj +-1004 TJm +(It) 6.08715 Tj +-314 TJm +(should) 26.5703 Tj +-314 TJm +(be) 9.40469 Tj +-315 TJm +(a) 4.42339 Tj +-314 TJm +(v) 4.9813 Tj +25 TJm +(alue) 16.5977 Tj +-314 TJm +(between) 33.1954 Tj +-314 TJm +(1) 4.9813 Tj +72 180.025 Td +(and) 14.386 Tj +-289 TJm +(9) 4.9813 Tj +-289 TJm +(inclusi) 26.5703 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e,) 6.91404 Tj +-299 TJm +(and) 14.386 Tj +-289 TJm +(the) 12.1743 Tj +-289 TJm +(actual) 23.7907 Tj +-289 TJm +(block) 22.1369 Tj +-289 TJm +(size) 15.4918 Tj +-289 TJm +(used) 18.2614 Tj +-289 TJm +(is) 6.64505 Tj +-289 TJm +(100000) 29.8878 Tj +-289 TJm +(x) 4.9813 Tj +-289 TJm +(this) 14.396 Tj +-289 TJm +(\002gure.) 25.7334 Tj +-854 TJm +(9) 4.9813 Tj +-290 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(es) 8.29885 Tj +-289 TJm +(the) 12.1743 Tj +-289 TJm +(best) 16.0497 Tj +-289 TJm +(compression) 50.3609 Tj +-289 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-289 TJm +(tak) 12.1743 Tj +10 TJm +(es) 8.29885 Tj +-289 TJm +(most) 19.3773 Tj +72 168.07 Td +(memory) 33.2053 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 165.913] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -155.95] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 146.152 Td +/F130_0 9.9626 Tf +(P) 5.53921 Tj +15 TJm +(arameter) 34.8492 Tj +[1 0 0 1 115.095 146.152] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -115.095 -146.152] cm +[1 0 0 1 0 0] Tm +0 0 Td +115.095 146.152 Td +/F134_0 9.9626 Tf +(verbosity) 53.798 Tj +[1 0 0 1 168.893 146.152] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -168.893 -146.152] cm +[1 0 0 1 0 0] Tm +0 0 Td +171.75 146.152 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-287 TJm +(be) 9.40469 Tj +-286 TJm +(set) 11.0684 Tj +-287 TJm +(to) 7.7509 Tj +-287 TJm +(a) 4.42339 Tj +-287 TJm +(number) 30.4357 Tj +-286 TJm +(between) 33.1954 Tj +-287 TJm +(0) 4.9813 Tj +-287 TJm +(and) 14.386 Tj +-287 TJm +(4) 4.9813 Tj +-286 TJm +(inclusi) 26.5703 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e.) 6.91404 Tj +-841 TJm +(0) 4.9813 Tj +-286 TJm +(is) 6.64505 Tj +-287 TJm +(silent,) 24.0796 Tj +-296 TJm +(and) 14.386 Tj +-287 TJm +(greater) 27.6562 Tj +-287 TJm +(numbers) 34.3112 Tj +-286 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +72 134.197 Td +(increasingly) 48.6972 Tj +-342 TJm +(v) 4.9813 Tj +15 TJm +(erbose) 26.0024 Tj +-342 TJm +(monitoring/deb) 61.4394 Tj +20 TJm +(ugging) 27.6761 Tj +-342 TJm +(output.) 27.9551 Tj +-1173 TJm +(If) 6.63509 Tj +-343 TJm +(the) 12.1743 Tj +-342 TJm +(library) 26.5603 Tj +-342 TJm +(has) 13.2801 Tj +-342 TJm +(been) 18.8094 Tj +-342 TJm +(compiled) 37.0808 Tj +-342 TJm +(with) 17.7135 Tj +[1 0 0 1 446.429 134.197] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -446.429 -134.197] cm +[1 0 0 1 0 0] Tm +0 0 Td +446.429 134.197 Td +/F134_0 9.9626 Tf +(-DBZ_NO_STDIO) 77.7083 Tj +[1 0 0 1 524.138 134.197] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -524.138 -134.197] cm +[1 0 0 1 0 0] Tm +0 0 Td +524.138 134.197 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-342 TJm +(no) 9.9626 Tj +72 122.242 Td +(such) 18.2614 Tj +-250 TJm +(output) 25.4644 Tj +-250 TJm +(will) 15.5018 Tj +-250 TJm +(appear) 26.5503 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-250 TJm +(v) 4.9813 Tj +15 TJm +(erbosity) 32.0995 Tj +-250 TJm +(setting.) 29.0609 Tj +[1 0 0 1 72 120.085] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -110.122] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 100.324 Td +/F130_0 9.9626 Tf +(P) 5.53921 Tj +15 TJm +(arameter) 34.8492 Tj +[1 0 0 1 116.619 100.324] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -116.619 -100.324] cm +[1 0 0 1 0 0] Tm +0 0 Td +116.619 100.324 Td +/F134_0 9.9626 Tf +(workFactor) 59.7756 Tj +[1 0 0 1 176.394 100.324] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -176.394 -100.324] cm +[1 0 0 1 0 0] Tm +0 0 Td +180.775 100.324 Td +/F130_0 9.9626 Tf +(controls) 32.0995 Tj +-440 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-439 TJm +(the) 12.1743 Tj +-440 TJm +(compression) 50.3609 Tj +-440 TJm +(phase) 22.6848 Tj +-439 TJm +(beha) 18.8094 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(es) 8.29885 Tj +-440 TJm +(when) 21.579 Tj +-439 TJm +(presented) 38.1767 Tj +-440 TJm +(with) 17.7135 Tj +-440 TJm +(w) 7.193 Tj +10 TJm +(orst) 14.9439 Tj +-439 TJm +(case,) 19.6363 Tj +-487 TJm +(highly) 25.4644 Tj +72 88.3686 Td +(repetiti) 28.224 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e,) 6.91404 Tj +-433 TJm +(input) 20.4831 Tj +-396 TJm +(data.) 19.0883 Tj +-1496 TJm +(If) 6.63509 Tj +-396 TJm +(compression) 50.3609 Tj +-396 TJm +(runs) 17.1556 Tj +-397 TJm +(i) 2.7696 Tj +1 TJm +(nto) 12.7322 Tj +-397 TJm +(dif) 11.0684 Tj +25 TJm +(\002culties) 31.5516 Tj +-396 TJm +(caused) 27.1082 Tj +-396 TJm +(by) 9.9626 Tj +-396 TJm +(repetiti) 28.224 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-396 TJm +(data,) 19.0883 Tj +-432 TJm +(the) 12.1743 Tj +-397 TJm +(library) 26.5603 Tj +-396 TJm +(switches) 34.3112 Tj +-396 TJm +(from) 19.3673 Tj +[1 0 0 1 72 50.8518] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.8518] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.8518 Td +/F130_0 9.9626 Tf +(12) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 16 16 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -741.554] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F130_0 9.9626 Tf +(the) 12.1743 Tj +-255 TJm +(standard) 33.7533 Tj +-254 TJm +(sorting) 27.6761 Tj +-255 TJm +(algorithm) 38.7446 Tj +-254 TJm +(to) 7.7509 Tj +-255 TJm +(a) 4.42339 Tj +-255 TJm +(f) 3.31755 Tj +10 TJm +(allback) 28.772 Tj +-254 TJm +(algorithm.) 41.2352 Tj +-648 TJm +(The) 15.4918 Tj +-255 TJm +(f) 3.31755 Tj +10 TJm +(allback) 28.772 Tj +-254 TJm +(is) 6.64505 Tj +-255 TJm +(slo) 11.6264 Tj +25 TJm +(wer) 14.9339 Tj +-255 TJm +(than) 17.1556 Tj +-254 TJm +(the) 12.1743 Tj +-255 TJm +(standard) 33.7533 Tj +-254 TJm +(algorithm) 38.7446 Tj +-255 TJm +(by) 9.9626 Tj +-255 TJm +(perhaps) 30.9837 Tj +72 698.082 Td +(a) 4.42339 Tj +-250 TJm +(f) 3.31755 Tj +10 TJm +(actor) 19.9152 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(three,) 22.4059 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-250 TJm +(al) 7.193 Tj +10 TJm +(w) 7.193 Tj +10 TJm +(ays) 13.2801 Tj +-250 TJm +(beha) 18.8094 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(es) 8.29885 Tj +-250 TJm +(reasonably) 43.158 Tj +65 TJm +(,) 2.49065 Tj +-250 TJm +(no) 9.9626 Tj +-250 TJm +(matter) 25.4544 Tj +-250 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(bad) 14.386 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(input.) 22.9738 Tj +[1 0 0 1 72 695.925] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9617] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -685.964] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 676.165 Td +/F130_0 9.9626 Tf +(Lo) 11.0684 Tj +25 TJm +(wer) 14.9339 Tj +-240 TJm +(v) 4.9813 Tj +25 TJm +(alues) 20.4731 Tj +-239 TJm +(of) 8.29885 Tj +[1 0 0 1 138.421 676.165] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -138.421 -676.165] cm +[1 0 0 1 0 0] Tm +0 0 Td +138.421 676.165 Td +/F134_0 9.9626 Tf +(workFactor) 59.7756 Tj +[1 0 0 1 198.197 676.165] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -198.197 -676.165] cm +[1 0 0 1 0 0] Tm +0 0 Td +200.585 676.165 Td +/F130_0 9.9626 Tf +(reduce) 26.5503 Tj +-240 TJm +(the) 12.1743 Tj +-239 TJm +(amount) 29.8878 Tj +-240 TJm +(of) 8.29885 Tj +-240 TJm +(ef) 7.74094 Tj +25 TJm +(fort) 14.386 Tj +-239 TJm +(the) 12.1743 Tj +-240 TJm +(standard) 33.7533 Tj +-240 TJm +(algorithm) 38.7446 Tj +-239 TJm +(will) 15.5018 Tj +-240 TJm +(e) 4.42339 Tj +15 TJm +(xpend) 24.3486 Tj +-240 TJm +(before) 25.4445 Tj +-240 TJm +(resorting) 35.417 Tj +-239 TJm +(to) 7.7509 Tj +-240 TJm +(the) 12.1743 Tj +72 664.21 Td +(f) 3.31755 Tj +10 TJm +(allback.) 31.2626 Tj +-618 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-248 TJm +(should) 26.5703 Tj +-247 TJm +(set) 11.0684 Tj +-248 TJm +(this) 14.396 Tj +-247 TJm +(parameter) 39.8305 Tj +-248 TJm +(carefully;) 38.1767 Tj +-248 TJm +(too) 12.7322 Tj +-248 TJm +(lo) 7.7509 Tj +25 TJm +(w) 7.193 Tj +65 TJm +(,) 2.49065 Tj +-248 TJm +(and) 14.386 Tj +-247 TJm +(man) 17.1556 Tj +15 TJm +(y) 4.9813 Tj +-248 TJm +(inputs) 24.3586 Tj +-248 TJm +(will) 15.5018 Tj +-247 TJm +(be) 9.40469 Tj +-248 TJm +(handled) 31.5416 Tj +-247 TJm +(by) 9.9626 Tj +-248 TJm +(the) 12.1743 Tj +-247 TJm +(f) 3.31755 Tj +10 TJm +(allback) 28.772 Tj +-248 TJm +(algorithm) 38.7446 Tj +72 652.255 Td +(and) 14.386 Tj +-308 TJm +(so) 8.85675 Tj +-308 TJm +(compress) 37.6287 Tj +-308 TJm +(rather) 23.2328 Tj +-309 TJm +(slo) 11.6264 Tj +25 TJm +(wly) 14.9439 Tj +65 TJm +(,) 2.49065 Tj +-322 TJm +(too) 12.7322 Tj +-309 TJm +(high,) 20.2042 Tj +-322 TJm +(and) 14.386 Tj +-308 TJm +(your) 18.2614 Tj +-309 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(erage-to-w) 43.148 Tj +10 TJm +(orst) 14.9439 Tj +-308 TJm +(case) 17.1456 Tj +-308 TJm +(compression) 50.3609 Tj +-308 TJm +(times) 21.589 Tj +-308 TJm +(can) 13.8281 Tj +-308 TJm +(become) 30.9837 Tj +-309 TJm +(v) 4.9813 Tj +15 TJm +(ery) 12.7222 Tj +-308 TJm +(lar) 10.5105 Tj +18 TJm +(ge.) 11.8953 Tj +72 640.3 Td +(The) 15.4918 Tj +-250 TJm +(def) 12.7222 Tj +10 TJm +(ault) 14.9439 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alue) 16.5977 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(30) 9.9626 Tj +-250 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(es) 8.29885 Tj +-250 TJm +(reasonable) 42.6001 Tj +-250 TJm +(beha) 18.8094 Tj +20 TJm +(viour) 21.031 Tj +-250 TJm +(o) 4.9813 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(wide) 19.3673 Tj +-250 TJm +(range) 22.1269 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(circumstances.) 58.9288 Tj +[1 0 0 1 72 638.143] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9617] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -628.181] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 618.383 Td +/F130_0 9.9626 Tf +(Allo) 17.7135 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(able) 16.5977 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues) 20.4731 Tj +-250 TJm +(range) 22.1269 Tj +-250 TJm +(from) 19.3673 Tj +-250 TJm +(0) 4.9813 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(250) 14.9439 Tj +-250 TJm +(inclusi) 26.5703 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e.) 6.91404 Tj +-620 TJm +(0) 4.9813 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(special) 27.6661 Tj +-250 TJm +(case,) 19.6363 Tj +-250 TJm +(equi) 17.1556 Tj +25 TJm +(v) 4.9813 Tj +25 TJm +(alent) 19.3673 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(using) 21.589 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(def) 12.7222 Tj +10 TJm +(ault) 14.9439 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alue) 16.5977 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(30.) 12.4533 Tj +[1 0 0 1 72 616.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9617] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -606.265] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 596.466 Td +/F130_0 9.9626 Tf +(Note) 19.3673 Tj +-250 TJm +(that) 14.9439 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(output) 25.4644 Tj +-250 TJm +(generated) 38.7246 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(same) 20.4731 Tj +-250 TJm +(re) 7.74094 Tj +15 TJm +(g) 4.9813 Tj +5 TJm +(ardless) 27.6661 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(whether) 32.0895 Tj +-250 TJm +(or) 8.29885 Tj +-250 TJm +(not) 12.7322 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(f) 3.31755 Tj +10 TJm +(allback) 28.772 Tj +-250 TJm +(algorithm) 38.7446 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(used.) 20.7521 Tj +[1 0 0 1 72 594.309] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9617] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -584.348] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 574.549 Td +/F130_0 9.9626 Tf +(Be) 11.0684 Tj +-303 TJm +(a) 4.42339 Tj +15 TJm +(w) 7.193 Tj +10 TJm +(are) 12.1643 Tj +-303 TJm +(also) 16.0497 Tj +-303 TJm +(that) 14.9439 Tj +-303 TJm +(this) 14.396 Tj +-304 TJm +(parameter) 39.8305 Tj +-303 TJm +(may) 17.1556 Tj +-303 TJm +(disappear) 38.1767 Tj +-303 TJm +(entirely) 30.4357 Tj +-303 TJm +(in) 7.7509 Tj +-303 TJm +(future) 23.7907 Tj +-303 TJm +(v) 4.9813 Tj +15 TJm +(ersions) 28.224 Tj +-303 TJm +(of) 8.29885 Tj +-303 TJm +(the) 12.1743 Tj +-304 TJm +(library) 26.5603 Tj +65 TJm +(.) 2.49065 Tj +-938 TJm +(In) 8.29885 Tj +-303 TJm +(principle) 35.417 Tj +-303 TJm +(it) 5.53921 Tj +-304 TJm +(should) 26.5703 Tj +-303 TJm +(be) 9.40469 Tj +72 562.594 Td +(possible) 32.6574 Tj +-270 TJm +(to) 7.7509 Tj +-270 TJm +(de) 9.40469 Tj +25 TJm +(vise) 16.0497 Tj +-270 TJm +(a) 4.42339 Tj +-270 TJm +(good) 19.9252 Tj +-270 TJm +(w) 7.193 Tj +10 TJm +(ay) 9.40469 Tj +-270 TJm +(to) 7.7509 Tj +-271 TJm +(automat) 32.0995 Tj +1 TJm +(ically) 22.1369 Tj +-271 TJm +(choose) 27.6661 Tj +-270 TJm +(which) 24.3486 Tj +-270 TJm +(algorithm) 38.7446 Tj +-270 TJm +(to) 7.7509 Tj +-270 TJm +(use.) 15.7708 Tj +-740 TJm +(Such) 19.9252 Tj +-270 TJm +(a) 4.42339 Tj +-271 TJm +(m) 7.7509 Tj +1 TJm +(echanism) 37.6287 Tj +-271 TJm +(w) 7.193 Tj +10 TJm +(ould) 17.7135 Tj +-270 TJm +(render) 25.4445 Tj +-270 TJm +(the) 12.1743 Tj +72 550.639 Td +(parameter) 39.8305 Tj +-250 TJm +(obsolete.) 35.696 Tj +[1 0 0 1 72 548.482] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9616] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -538.521] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 528.722 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues:) 23.2427 Tj +[1 0 0 1 72 528.623] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -144.458] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 143.462 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 139.875] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -519.258] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 519.258 Td +/F134_0 9.9626 Tf +(BZ_CONFIG_ERROR) 89.6634 Tj +98.4879 507.303 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(library) 41.8429 Tj +-426 TJm +(has) 17.9327 Tj +-426 TJm +(been) 23.9102 Tj +-426 TJm +(mis-compiled) 71.7307 Tj +90 495.348 Td +(BZ_PARAM_ERROR) 83.6858 Tj +98.4879 483.392 Td +(if) 11.9551 Tj +-426 TJm +(strm) 23.9102 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +98.4879 471.437 Td +(or) 11.9551 Tj +-426 TJm +(blockSize) 53.798 Tj +-426 TJm +(<) 5.97756 Tj +-426 TJm +(1) 5.97756 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(blockSize) 53.798 Tj +-426 TJm +(>) 5.97756 Tj +-426 TJm +(9) 5.97756 Tj +98.4879 459.482 Td +(or) 11.9551 Tj +-426 TJm +(verbosity) 53.798 Tj +-426 TJm +(<) 5.97756 Tj +-426 TJm +(0) 5.97756 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(verbosity) 53.798 Tj +-426 TJm +(>) 5.97756 Tj +-426 TJm +(4) 5.97756 Tj +98.4879 447.527 Td +(or) 11.9551 Tj +-426 TJm +(workFactor) 59.7756 Tj +-426 TJm +(<) 5.97756 Tj +-426 TJm +(0) 5.97756 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(workFactor) 59.7756 Tj +-426 TJm +(>) 5.97756 Tj +-426 TJm +(250) 17.9327 Tj +90 435.572 Td +(BZ_MEM_ERROR) 71.7307 Tj +98.4879 423.617 Td +(if) 11.9551 Tj +-426 TJm +(not) 17.9327 Tj +-426 TJm +(enough) 35.8654 Tj +-426 TJm +(memory) 35.8654 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(available) 53.798 Tj +90 411.661 Td +(BZ_OK) 29.8878 Tj +98.4879 399.706 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 384.165] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5482] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -374.203] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 362.248 Td +/F130_0 9.9626 Tf +(Allo) 17.7135 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(able) 16.5977 Tj +-250 TJm +(ne) 9.40469 Tj +15 TJm +(xt) 7.7509 Tj +-250 TJm +(actions:) 30.9936 Tj +[1 0 0 1 72 362.148] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -48.8169] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 47.8207 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 44.2341] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -352.783] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 352.783 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +98.4879 340.828 Td +(if) 11.9551 Tj +-426 TJm +(BZ_OK) 29.8878 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(returned) 47.8205 Tj +98.4879 328.873 Td +(no) 11.9551 Tj +-426 TJm +(specific) 47.8205 Tj +-426 TJm +(action) 35.8654 Tj +-426 TJm +(needed) 35.8654 Tj +-426 TJm +(in) 11.9551 Tj +-426 TJm +(case) 23.9102 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(error) 29.8878 Tj +[1 0 0 1 72 313.331] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9616] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -303.37] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 282.711 Td +/F122_0 17.2154 Tf +(3.3.2.) 43.0729 Tj +[1 0 0 1 119.858 282.711] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -282.711] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 282.711 Td +/F392_0 17.2154 Tf +(BZ2_bzCompress) 144.609 Tj +[1 0 0 1 264.468 282.711] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -192.468 -2.3327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -271.014] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 271.014 Td +/F134_0 9.9626 Tf +(int) 17.9327 Tj +-426 TJm +(BZ2_bzCompress) 83.6858 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(bz_stream) 53.798 Tj +268.371 269.27 Td +(*) 5.97756 Tj +274.348 271.014 Td +(strm,) 29.8878 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(action) 35.8654 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 255.472] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5482] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -245.51] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 233.555 Td +/F130_0 9.9626 Tf +(Pro) 13.8381 Tj +15 TJm +(vides) 21.031 Tj +-222 TJm +(more) 20.4731 Tj +-221 TJm +(input) 20.4831 Tj +-222 TJm +(and/or) 25.4544 Tj +-222 TJm +(output) 25.4644 Tj +-222 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-221 TJm +(space) 22.1269 Tj +-222 TJm +(for) 11.6164 Tj +-222 TJm +(the) 12.1743 Tj +-221 TJm +(library) 26.5603 Tj +65 TJm +(.) 2.49065 Tj +-601 TJm +(The) 15.4918 Tj +-222 TJm +(caller) 22.1269 Tj +-222 TJm +(maintains) 38.7446 Tj +-222 TJm +(input) 20.4831 Tj +-221 TJm +(and) 14.386 Tj +-222 TJm +(output) 25.4644 Tj +-222 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fers,) 17.4246 Tj +-227 TJm +(and) 14.386 Tj +-222 TJm +(calls) 18.2614 Tj +[1 0 0 1 72 221.6] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -221.6] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 221.6 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 155.686 221.6] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -155.686 -221.6] cm +[1 0 0 1 0 0] Tm +0 0 Td +158.177 221.6 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-250 TJm +(transfer) 30.4258 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(between) 33.1954 Tj +-250 TJm +(them.) 22.4159 Tj +[1 0 0 1 72 220.066] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9617] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -210.104] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 199.683 Td +/F130_0 9.9626 Tf +(Before) 27.1082 Tj +-212 TJm +(each) 18.2515 Tj +-213 TJm +(call) 14.386 Tj +-212 TJm +(to) 7.7509 Tj +[1 0 0 1 147.961 199.683] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -147.961 -199.683] cm +[1 0 0 1 0 0] Tm +0 0 Td +147.961 199.683 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 231.647 199.683] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -231.647 -199.683] cm +[1 0 0 1 0 0] Tm +0 0 Td +231.647 199.683 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 236.329 199.683] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -236.329 -199.683] cm +[1 0 0 1 0 0] Tm +0 0 Td +236.329 199.683 Td +/F134_0 9.9626 Tf +(next_in) 41.8429 Tj +[1 0 0 1 278.172 199.683] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.172 -199.683] cm +[1 0 0 1 0 0] Tm +0 0 Td +280.288 199.683 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-212 TJm +(point) 20.4831 Tj +-213 TJm +(at) 7.193 Tj +-212 TJm +(the) 12.1743 Tj +-213 TJm +(data) 16.5977 Tj +-212 TJm +(to) 7.7509 Tj +-212 TJm +(be) 9.40469 Tj +-213 TJm +(compressed,) 49.5241 Tj +-220 TJm +(and) 14.386 Tj +[1 0 0 1 463.493 199.683] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -463.493 -199.683] cm +[1 0 0 1 0 0] Tm +0 0 Td +463.493 199.683 Td +/F134_0 9.9626 Tf +(avail_in) 47.8205 Tj +[1 0 0 1 511.314 199.683] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.314 -199.683] cm +[1 0 0 1 0 0] Tm +0 0 Td +513.43 199.683 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +72 187.728 Td +(indicate) 31.5416 Tj +-246 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-247 TJm +(m) 7.7509 Tj +1 TJm +(an) 9.40469 Tj +14 TJm +(y) 4.9813 Tj +-246 TJm +(bytes) 21.031 Tj +-246 TJm +(the) 12.1743 Tj +-246 TJm +(library) 26.5603 Tj +-247 TJm +(may) 17.1556 Tj +-246 TJm +(read.) 19.6363 Tj +[1 0 0 1 259.242 187.728] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -259.242 -187.728] cm +[1 0 0 1 0 0] Tm +0 0 Td +259.242 187.728 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 342.929 187.728] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.929 -187.728] cm +[1 0 0 1 0 0] Tm +0 0 Td +345.382 187.728 Td +/F130_0 9.9626 Tf +(updates) 30.4357 Tj +[1 0 0 1 378.271 187.728] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -378.271 -187.728] cm +[1 0 0 1 0 0] Tm +0 0 Td +378.271 187.728 Td +/F134_0 9.9626 Tf +(next_in) 41.8429 Tj +[1 0 0 1 420.114 187.728] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -420.114 -187.728] cm +[1 0 0 1 0 0] Tm +0 0 Td +420.114 187.728 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 425.066 187.728] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -425.066 -187.728] cm +[1 0 0 1 0 0] Tm +0 0 Td +425.066 187.728 Td +/F134_0 9.9626 Tf +(avail_in) 47.8205 Tj +[1 0 0 1 472.886 187.728] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.886 -187.728] cm +[1 0 0 1 0 0] Tm +0 0 Td +475.34 187.728 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 492.179 187.728] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -492.179 -187.728] cm +[1 0 0 1 0 0] Tm +0 0 Td +492.179 187.728 Td +/F134_0 9.9626 Tf +(total_in) 47.8205 Tj +[1 0 0 1 540 187.728] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -187.728] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 175.773 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-250 TJm +(re\003ect) 24.8965 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(number) 30.4357 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(bytes) 21.031 Tj +-250 TJm +(it) 5.53921 Tj +-250 TJm +(has) 13.2801 Tj +-250 TJm +(read.) 19.6363 Tj +[1 0 0 1 72 173.616] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9616] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -163.654] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 153.856 Td +/F130_0 9.9626 Tf +(Similarly) 37.0908 Tj +65 TJm +(,) 2.49065 Tj +[1 0 0 1 113.611 153.856] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -113.611 -153.856] cm +[1 0 0 1 0 0] Tm +0 0 Td +113.611 153.856 Td +/F134_0 9.9626 Tf +(next_out) 47.8205 Tj +[1 0 0 1 161.432 153.856] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -161.432 -153.856] cm +[1 0 0 1 0 0] Tm +0 0 Td +164.072 153.856 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-265 TJm +(point) 20.4831 Tj +-265 TJm +(to) 7.7509 Tj +-265 TJm +(a) 4.42339 Tj +-265 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-265 TJm +(in) 7.7509 Tj +-265 TJm +(which) 24.3486 Tj +-265 TJm +(the) 12.1743 Tj +-265 TJm +(compressed) 47.0334 Tj +-265 TJm +(data) 16.5977 Tj +-265 TJm +(is) 6.64505 Tj +-265 TJm +(to) 7.7509 Tj +-265 TJm +(be) 9.40469 Tj +-265 TJm +(placed,) 28.493 Tj +-269 TJm +(with) 17.7135 Tj +[1 0 0 1 464.742 153.856] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -464.742 -153.856] cm +[1 0 0 1 0 0] Tm +0 0 Td +464.742 153.856 Td +/F134_0 9.9626 Tf +(avail_out) 53.798 Tj +[1 0 0 1 518.54 153.856] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -518.54 -153.856] cm +[1 0 0 1 0 0] Tm +0 0 Td +521.181 153.856 Td +/F130_0 9.9626 Tf +(indi-) 18.8194 Tj +72 141.901 Td +(cating) 24.3486 Tj +-209 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-209 TJm +(much) 22.1369 Tj +-209 TJm +(output) 25.4644 Tj +-209 TJm +(space) 22.1269 Tj +-209 TJm +(is) 6.64505 Tj +-210 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +25 TJm +(ailable.) 29.0509 Tj +[1 0 0 1 243.087 141.901] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -243.087 -141.901] cm +[1 0 0 1 0 0] Tm +0 0 Td +243.087 141.901 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 326.773 141.901] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -326.773 -141.901] cm +[1 0 0 1 0 0] Tm +0 0 Td +328.856 141.901 Td +/F130_0 9.9626 Tf +(updates) 30.4357 Tj +[1 0 0 1 361.375 141.901] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -361.375 -141.901] cm +[1 0 0 1 0 0] Tm +0 0 Td +361.375 141.901 Td +/F134_0 9.9626 Tf +(next_out) 47.8205 Tj +[1 0 0 1 409.196 141.901] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -409.196 -141.901] cm +[1 0 0 1 0 0] Tm +0 0 Td +409.196 141.901 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 413.851 141.901] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -413.851 -141.901] cm +[1 0 0 1 0 0] Tm +0 0 Td +413.851 141.901 Td +/F134_0 9.9626 Tf +(avail_out) 53.798 Tj +[1 0 0 1 467.649 141.901] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -467.649 -141.901] cm +[1 0 0 1 0 0] Tm +0 0 Td +469.732 141.901 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 486.202 141.901] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -486.202 -141.901] cm +[1 0 0 1 0 0] Tm +0 0 Td +486.202 141.901 Td +/F134_0 9.9626 Tf +(total_out) 53.798 Tj +[1 0 0 1 540 141.901] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -141.901] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 129.946 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-250 TJm +(re\003ect) 24.8965 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(number) 30.4357 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(bytes) 21.031 Tj +-250 TJm +(output.) 27.9551 Tj +[1 0 0 1 72 127.789] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9617] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -117.827] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 108.029 Td +/F130_0 9.9626 Tf +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-272 TJm +(may) 17.1556 Tj +-272 TJm +(pro) 13.2801 Tj +15 TJm +(vide) 17.1556 Tj +-272 TJm +(and) 14.386 Tj +-272 TJm +(remo) 20.4731 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-272 TJm +(as) 8.29885 Tj +-272 TJm +(little) 18.2714 Tj +-272 TJm +(or) 8.29885 Tj +-272 TJm +(as) 8.29885 Tj +-272 TJm +(much) 22.1369 Tj +-271 TJm +(data) 16.5977 Tj +-272 TJm +(as) 8.29885 Tj +-272 TJm +(you) 14.9439 Tj +-272 TJm +(lik) 10.5205 Tj +10 TJm +(e) 4.42339 Tj +-272 TJm +(on) 9.9626 Tj +-272 TJm +(each) 18.2515 Tj +-272 TJm +(call) 14.386 Tj +-272 TJm +(of) 8.29885 Tj +[1 0 0 1 399.123 108.029] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -399.123 -108.029] cm +[1 0 0 1 0 0] Tm +0 0 Td +399.123 108.029 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 482.809 108.029] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -482.809 -108.029] cm +[1 0 0 1 0 0] Tm +0 0 Td +482.809 108.029 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-752 TJm +(In) 8.29885 Tj +-272 TJm +(the) 12.1743 Tj +-272 TJm +(limit,) 21.32 Tj +72 96.0736 Td +(it) 5.53921 Tj +-266 TJm +(is) 6.64505 Tj +-265 TJm +(acceptable) 42.0422 Tj +-266 TJm +(to) 7.7509 Tj +-266 TJm +(supply) 26.5703 Tj +-266 TJm +(and) 14.386 Tj +-265 TJm +(remo) 20.4731 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-266 TJm +(data) 16.5977 Tj +-266 TJm +(one) 14.386 Tj +-265 TJm +(byte) 17.1556 Tj +-266 TJm +(at) 7.193 Tj +-266 TJm +(a) 4.42339 Tj +-266 TJm +(time,) 20.2042 Tj +-269 TJm +(although) 34.8691 Tj +-266 TJm +(this) 14.396 Tj +-266 TJm +(w) 7.193 Tj +10 TJm +(ould) 17.7135 Tj +-265 TJm +(be) 9.40469 Tj +-266 TJm +(terribly) 29.3299 Tj +-266 TJm +(inef) 15.4918 Tj +25 TJm +(\002cient.) 27.3972 Tj +-714 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-266 TJm +(should) 26.5703 Tj +72 84.1184 Td +(al) 7.193 Tj +10 TJm +(w) 7.193 Tj +10 TJm +(ays) 13.2801 Tj +-250 TJm +(ensure) 26.0024 Tj +-250 TJm +(that) 14.9439 Tj +-250 TJm +(at) 7.193 Tj +-250 TJm +(least) 18.2614 Tj +-250 TJm +(one) 14.386 Tj +-250 TJm +(byte) 17.1556 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(output) 25.4644 Tj +-250 TJm +(space) 22.1269 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +25 TJm +(ailable) 26.5603 Tj +-250 TJm +(at) 7.193 Tj +-250 TJm +(each) 18.2515 Tj +-250 TJm +(call.) 16.8766 Tj +[1 0 0 1 72 81.9616] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9616] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -21.1482] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(13) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 17 17 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -741.554] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F130_0 9.9626 Tf +(A) 7.193 Tj +-250 TJm +(second) 27.6661 Tj +-250 TJm +(purpose) 31.5416 Tj +-250 TJm +(of) 8.29885 Tj +[1 0 0 1 156.662 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -156.662 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +156.662 710.037 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 240.348 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -240.348 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +242.839 710.037 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(request) 28.772 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(change) 28.2141 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(mode) 22.1369 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(stream.) 29.0509 Tj +[1 0 0 1 72 707.88] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -697.918] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 688.12 Td +/F130_0 9.9626 Tf +(Conceptually) 53.1305 Tj +65 TJm +(,) 2.49065 Tj +-217 TJm +(a) 4.42339 Tj +-210 TJm +(compressed) 47.0334 Tj +-209 TJm +(stream) 26.5603 Tj +-209 TJm +(can) 13.8281 Tj +-209 TJm +(be) 9.40469 Tj +-210 TJm +(in) 7.7509 Tj +-209 TJm +(one) 14.386 Tj +-209 TJm +(of) 8.29885 Tj +-209 TJm +(four) 16.5977 Tj +-210 TJm +(states:) 24.9065 Tj +-289 TJm +(IDLE,) 25.1755 Tj +-209 TJm +(R) 6.64505 Tj +40 TJm +(UNNING,) 41.7732 Tj +-210 TJm +(FLUSHING) 49.2551 Tj +-209 TJm +(and) 14.386 Tj +-209 TJm +(FINISHING.) 52.2937 Tj +-419 TJm +(Be-) 14.386 Tj +72 676.164 Td +(fore) 16.0398 Tj +-264 TJm +(initialisation) 49.823 Tj +-263 TJm +(\() 3.31755 Tj +[1 0 0 1 146.434 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -146.434 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +146.434 676.164 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 254.031 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -254.031 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +254.031 676.164 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +-264 TJm +(and) 14.386 Tj +-263 TJm +(after) 18.2515 Tj +-264 TJm +(termination) 45.9375 Tj +-264 TJm +(\() 3.31755 Tj +[1 0 0 1 349.75 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -349.75 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +349.75 676.164 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressEnd) 101.619 Tj +[1 0 0 1 451.369 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -451.369 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +451.369 676.164 Td +/F130_0 9.9626 Tf +(\),) 5.8082 Tj +-267 TJm +(a) 4.42339 Tj +-264 TJm +(stream) 26.5603 Tj +-264 TJm +(is) 6.64505 Tj +-263 TJm +(re) 7.74094 Tj +15 TJm +(g) 4.9813 Tj +5 TJm +(arded) 22.1269 Tj +72 664.209 Td +(as) 8.29885 Tj +-250 TJm +(IDLE.) 25.1755 Tj +[1 0 0 1 72 664.11] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -654.147] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 642.291 Td +/F130_0 9.9626 Tf +(Upon) 22.1369 Tj +-389 TJm +(initialisation) 49.823 Tj +-390 TJm +(\() 3.31755 Tj +[1 0 0 1 155.036 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -155.036 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +155.036 642.291 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 262.632 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -262.632 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +262.632 642.291 Td +/F130_0 9.9626 Tf +(\),) 5.8082 Tj +-424 TJm +(the) 12.1743 Tj +-390 TJm +(stream) 26.5603 Tj +-389 TJm +(is) 6.64505 Tj +-389 TJm +(placed) 26.0024 Tj +-390 TJm +(in) 7.7509 Tj +-389 TJm +(the) 12.1743 Tj +-390 TJm +(R) 6.64505 Tj +40 TJm +(UNNING) 39.2825 Tj +-389 TJm +(state.) 20.7521 Tj +-1457 TJm +(Subsequent) 45.9375 Tj +-389 TJm +(calls) 18.2614 Tj +72 630.336 Td +(to) 7.7509 Tj +[1 0 0 1 83.818 630.336] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -83.818 -630.336] cm +[1 0 0 1 0 0] Tm +0 0 Td +83.818 630.336 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 167.504 630.336] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -167.504 -630.336] cm +[1 0 0 1 0 0] Tm +0 0 Td +171.571 630.336 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-408 TJm +(pass) 17.1556 Tj +[1 0 0 1 223.431 630.336] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -223.431 -630.336] cm +[1 0 0 1 0 0] Tm +0 0 Td +223.431 630.336 Td +/F134_0 9.9626 Tf +(BZ_RUN) 35.8654 Tj +[1 0 0 1 259.297 630.336] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -259.297 -630.336] cm +[1 0 0 1 0 0] Tm +0 0 Td +263.363 630.336 Td +/F130_0 9.9626 Tf +(as) 8.29885 Tj +-408 TJm +(the) 12.1743 Tj +-408 TJm +(requested) 38.1767 Tj +-409 TJm +(action;) 27.1182 Tj +-487 TJm +(other) 20.4731 Tj +-408 TJm +(actions) 28.224 Tj +-408 TJm +(are) 12.1643 Tj +-409 TJm +(ille) 12.7322 Tj +15 TJm +(g) 4.9813 Tj +5 TJm +(al) 7.193 Tj +-408 TJm +(and) 14.386 Tj +-408 TJm +(will) 15.5018 Tj +-408 TJm +(result) 22.1369 Tj +-409 TJm +(in) 7.7509 Tj +[1 0 0 1 72 618.381] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -618.381] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 618.381 Td +/F134_0 9.9626 Tf +(BZ_SEQUENCE_ERROR) 101.619 Tj +[1 0 0 1 173.619 618.381] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -173.619 -618.381] cm +[1 0 0 1 0 0] Tm +0 0 Td +173.619 618.381 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 617.071] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -607.108] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 596.463 Td +/F130_0 9.9626 Tf +(At) 9.9626 Tj +-279 TJm +(some) 21.031 Tj +-279 TJm +(point,) 22.9738 Tj +-286 TJm +(the) 12.1743 Tj +-279 TJm +(calling) 27.1182 Tj +-279 TJm +(program) 33.7533 Tj +-279 TJm +(will) 15.5018 Tj +-279 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-278 TJm +(pro) 13.2801 Tj +14 TJm +(vi) 7.7509 Tj +1 TJm +(ded) 14.386 Tj +-279 TJm +(all) 9.9626 Tj +-279 TJm +(the) 12.1743 Tj +-279 TJm +(input) 20.4831 Tj +-279 TJm +(data) 16.5977 Tj +-279 TJm +(it) 5.53921 Tj +-279 TJm +(w) 7.193 Tj +10 TJm +(ants) 16.0497 Tj +-279 TJm +(to.) 10.2416 Tj +-793 TJm +(It) 6.08715 Tj +-279 TJm +(will) 15.5018 Tj +-279 TJm +(then) 17.1556 Tj +-279 TJm +(w) 7.193 Tj +10 TJm +(ant) 12.1743 Tj +-279 TJm +(to) 7.7509 Tj +-279 TJm +(\002nish) 22.1469 Tj +-279 TJm +(up) 9.9626 Tj +-279 TJm +(--) 6.63509 Tj +72 584.508 Td +(in) 7.7509 Tj +-287 TJm +(ef) 7.74094 Tj +25 TJm +(fect,) 17.4246 Tj +-297 TJm +(asking) 26.0123 Tj +-288 TJm +(the) 12.1743 Tj +-287 TJm +(library) 26.5603 Tj +-287 TJm +(to) 7.7509 Tj +-288 TJm +(process) 29.8778 Tj +-287 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-288 TJm +(data) 16.5977 Tj +-287 TJm +(it) 5.53921 Tj +-287 TJm +(might) 23.2527 Tj +-288 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-287 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fered) 20.4632 Tj +-288 TJm +(internally) 38.1866 Tj +65 TJm +(.) 2.49065 Tj +-844 TJm +(In) 8.29885 Tj +-288 TJm +(this) 14.396 Tj +-287 TJm +(state,) 20.7521 Tj +[1 0 0 1 456.314 584.508] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -456.314 -584.508] cm +[1 0 0 1 0 0] Tm +0 0 Td +456.314 584.508 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 540 584.508] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -584.508] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 572.553 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-258 TJm +(no) 9.9626 Tj +-257 TJm +(longer) 25.4544 Tj +-258 TJm +(attempt) 29.8878 Tj +-258 TJm +(to) 7.7509 Tj +-258 TJm +(read) 17.1456 Tj +-257 TJm +(data) 16.5977 Tj +-258 TJm +(from) 19.3673 Tj +[1 0 0 1 234.207 572.553] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -234.207 -572.553] cm +[1 0 0 1 0 0] Tm +0 0 Td +234.207 572.553 Td +/F134_0 9.9626 Tf +(next_in) 41.8429 Tj +[1 0 0 1 276.051 572.553] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -276.051 -572.553] cm +[1 0 0 1 0 0] Tm +0 0 Td +276.051 572.553 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-260 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-257 TJm +(it) 5.53921 Tj +-258 TJm +(will) 15.5018 Tj +-258 TJm +(w) 7.193 Tj +10 TJm +(ant) 12.1743 Tj +-257 TJm +(to) 7.7509 Tj +-258 TJm +(write) 20.4731 Tj +-258 TJm +(data) 16.5977 Tj +-258 TJm +(to) 7.7509 Tj +[1 0 0 1 407.082 572.553] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -407.082 -572.553] cm +[1 0 0 1 0 0] Tm +0 0 Td +407.082 572.553 Td +/F134_0 9.9626 Tf +(next_out) 47.8205 Tj +[1 0 0 1 454.902 572.553] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -454.902 -572.553] cm +[1 0 0 1 0 0] Tm +0 0 Td +454.902 572.553 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-666 TJm +(Because) 33.1954 Tj +-258 TJm +(the) 12.1743 Tj +-258 TJm +(output) 25.4644 Tj +72 560.598 Td +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-228 TJm +(supplied) 33.7633 Tj +-228 TJm +(by) 9.9626 Tj +-229 TJm +(the) 12.1743 Tj +-228 TJm +(user) 16.5977 Tj +-228 TJm +(can) 13.8281 Tj +-228 TJm +(be) 9.40469 Tj +-228 TJm +(arbitrarily) 39.8404 Tj +-229 TJm +(sma) 16.0497 Tj +1 TJm +(ll,) 8.02986 Tj +-233 TJm +(the) 12.1743 Tj +-228 TJm +(\002nishing-up) 48.1592 Tj +-228 TJm +(operation) 37.6287 Tj +-229 TJm +(cannot) 26.5603 Tj +-228 TJm +(necessarily) 44.2638 Tj +-228 TJm +(be) 9.40469 Tj +-228 TJm +(done) 19.3673 Tj +-228 TJm +(with) 17.7135 Tj +-229 TJm +(a) 4.42339 Tj +-228 TJm +(single) 23.8007 Tj +72 548.643 Td +(call) 14.386 Tj +-250 TJm +(of) 8.29885 Tj +[1 0 0 1 99.6659 548.643] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -99.6659 -548.643] cm +[1 0 0 1 0 0] Tm +0 0 Td +99.6659 548.643 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 183.352 548.643] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -183.352 -548.643] cm +[1 0 0 1 0 0] Tm +0 0 Td +183.352 548.643 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 547.108] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -537.146] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 526.725 Td +/F130_0 9.9626 Tf +(Instead,) 31.2626 Tj +-346 TJm +(the) 12.1743 Tj +-327 TJm +(calling) 27.1182 Tj +-326 TJm +(program) 33.7533 Tj +-327 TJm +(passes) 25.4544 Tj +[1 0 0 1 218.231 526.725] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -218.231 -526.725] cm +[1 0 0 1 0 0] Tm +0 0 Td +218.231 526.725 Td +/F134_0 9.9626 Tf +(BZ_FINISH) 53.798 Tj +[1 0 0 1 272.029 526.725] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -272.029 -526.725] cm +[1 0 0 1 0 0] Tm +0 0 Td +275.284 526.725 Td +/F130_0 9.9626 Tf +(as) 8.29885 Tj +-327 TJm +(an) 9.40469 Tj +-327 TJm +(action) 24.3486 Tj +-326 TJm +(to) 7.7509 Tj +[1 0 0 1 338.108 526.725] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -338.108 -526.725] cm +[1 0 0 1 0 0] Tm +0 0 Td +338.108 526.725 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 421.795 526.725] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -421.795 -526.725] cm +[1 0 0 1 0 0] Tm +0 0 Td +421.795 526.725 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-1081 TJm +(This) 17.7135 Tj +-326 TJm +(changes) 32.0895 Tj +-327 TJm +(the) 12.1743 Tj +-327 TJm +(stream') 29.8778 Tj +55 TJm +(s) 3.87545 Tj +72 514.77 Td +(state) 18.2614 Tj +-291 TJm +(to) 7.7509 Tj +-290 TJm +(FINISHING.) 52.2937 Tj +-581 TJm +(An) 12.1743 Tj +15 TJm +(y) 4.9813 Tj +-291 TJm +(remaining) 40.3983 Tj +-290 TJm +(input) 20.4831 Tj +-291 TJm +(\(ie,) 13.0012 Tj +[1 0 0 1 264.452 514.77] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -264.452 -514.77] cm +[1 0 0 1 0 0] Tm +0 0 Td +264.452 514.77 Td +/F134_0 9.9626 Tf +(next_in[0) 53.798 Tj +-600 TJm +(..) 11.9551 Tj +-1200 TJm +(avail_in-1]) 65.7532 Tj +[1 0 0 1 413.892 514.77] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -413.892 -514.77] cm +[1 0 0 1 0 0] Tm +0 0 Td +413.892 514.77 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +-291 TJm +(is) 6.64505 Tj +-290 TJm +(compressed) 47.0334 Tj +-291 TJm +(and) 14.386 Tj +-290 TJm +(transferred) 43.148 Tj +72 502.814 Td +(to) 7.7509 Tj +-421 TJm +(the) 12.1743 Tj +-421 TJm +(output) 25.4644 Tj +-421 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +55 TJm +(.) 2.49065 Tj +-1646 TJm +(T) 6.08715 Tj +80 TJm +(o) 4.9813 Tj +-421 TJm +(do) 9.9626 Tj +-422 TJm +(this) 14.396 Tj +1 TJm +(,) 2.49065 Tj +[1 0 0 1 222.339 502.814] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -222.339 -502.814] cm +[1 0 0 1 0 0] Tm +0 0 Td +222.339 502.814 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 306.025 502.814] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -306.025 -502.814] cm +[1 0 0 1 0 0] Tm +0 0 Td +310.22 502.814 Td +/F130_0 9.9626 Tf +(must) 19.3773 Tj +-421 TJm +(be) 9.40469 Tj +-421 TJm +(called) 23.7907 Tj +-421 TJm +(repeatedly) 41.4942 Tj +-421 TJm +(until) 18.2714 Tj +-421 TJm +(all) 9.9626 Tj +-421 TJm +(the) 12.1743 Tj +-421 TJm +(output) 25.4644 Tj +-421 TJm +(has) 13.2801 Tj +-421 TJm +(been) 18.8094 Tj +72 490.859 Td +(consumed.) 42.889 Tj +-1397 TJm +(At) 9.9626 Tj +-379 TJm +(that) 14.9439 Tj +-380 TJm +(point,) 22.9738 Tj +[1 0 0 1 188.346 490.859] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -188.346 -490.859] cm +[1 0 0 1 0 0] Tm +0 0 Td +188.346 490.859 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 272.033 490.859] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -272.033 -490.859] cm +[1 0 0 1 0 0] Tm +0 0 Td +275.813 490.859 Td +/F130_0 9.9626 Tf +(returns) 27.6661 Tj +[1 0 0 1 307.259 490.859] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -307.259 -490.859] cm +[1 0 0 1 0 0] Tm +0 0 Td +307.259 490.859 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 384.968 490.859] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -384.968 -490.859] cm +[1 0 0 1 0 0] Tm +0 0 Td +384.968 490.859 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-379 TJm +(and) 14.386 Tj +-380 TJm +(the) 12.1743 Tj +-379 TJm +(stream') 29.8778 Tj +55 TJm +(s) 3.87545 Tj +-380 TJm +(state) 18.2614 Tj +-379 TJm +(is) 6.64505 Tj +-380 TJm +(set) 11.0684 Tj +-379 TJm +(back) 18.8094 Tj +-379 TJm +(to) 7.7509 Tj +72 478.904 Td +(IDLE.) 25.1755 Tj +[1 0 0 1 99.6662 478.904] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -99.6662 -478.904] cm +[1 0 0 1 0 0] Tm +0 0 Td +99.6662 478.904 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressEnd) 101.619 Tj +[1 0 0 1 201.285 478.904] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -201.285 -478.904] cm +[1 0 0 1 0 0] Tm +0 0 Td +203.776 478.904 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-250 TJm +(then) 17.1556 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(called.) 26.2813 Tj +[1 0 0 1 72 477.37] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -467.407] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 456.986 Td +/F130_0 9.9626 Tf +(Just) 15.5018 Tj +-380 TJm +(to) 7.7509 Tj +-380 TJm +(mak) 17.1556 Tj +10 TJm +(e) 4.42339 Tj +-379 TJm +(sure) 16.5977 Tj +-380 TJm +(the) 12.1743 Tj +-380 TJm +(calling) 27.1182 Tj +-380 TJm +(program) 33.7533 Tj +-379 TJm +(does) 18.2614 Tj +-380 TJm +(not) 12.7322 Tj +-380 TJm +(cheat,) 23.5117 Tj +-412 TJm +(the) 12.1743 Tj +-380 TJm +(library) 26.5603 Tj +-380 TJm +(mak) 17.1556 Tj +10 TJm +(es) 8.29885 Tj +-379 TJm +(a) 4.42339 Tj +-380 TJm +(note) 17.1556 Tj +-380 TJm +(of) 8.29885 Tj +[1 0 0 1 415.708 456.986] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -415.708 -456.986] cm +[1 0 0 1 0 0] Tm +0 0 Td +415.708 456.986 Td +/F134_0 9.9626 Tf +(avail_in) 47.8205 Tj +[1 0 0 1 463.528 456.986] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -463.528 -456.986] cm +[1 0 0 1 0 0] Tm +0 0 Td +467.312 456.986 Td +/F130_0 9.9626 Tf +(at) 7.193 Tj +-380 TJm +(the) 12.1743 Tj +-380 TJm +(time) 17.7135 Tj +-379 TJm +(of) 8.29885 Tj +-380 TJm +(the) 12.1743 Tj +72 445.031 Td +(\002rst) 15.5018 Tj +-286 TJm +(call) 14.386 Tj +-286 TJm +(t) 2.7696 Tj +1 TJm +(o) 4.9813 Tj +[1 0 0 1 118.179 445.031] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -118.179 -445.031] cm +[1 0 0 1 0 0] Tm +0 0 Td +118.179 445.031 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 201.865 445.031] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -201.865 -445.031] cm +[1 0 0 1 0 0] Tm +0 0 Td +204.713 445.031 Td +/F130_0 9.9626 Tf +(which) 24.3486 Tj +-286 TJm +(has) 13.2801 Tj +[1 0 0 1 248.035 445.031] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -248.035 -445.031] cm +[1 0 0 1 0 0] Tm +0 0 Td +248.035 445.031 Td +/F134_0 9.9626 Tf +(BZ_FINISH) 53.798 Tj +[1 0 0 1 301.833 445.031] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -301.833 -445.031] cm +[1 0 0 1 0 0] Tm +0 0 Td +304.68 445.031 Td +/F130_0 9.9626 Tf +(as) 8.29885 Tj +-286 TJm +(an) 9.40469 Tj +-286 TJm +(action) 24.3486 Tj +-285 TJm +(\(ie,) 13.0012 Tj +-295 TJm +(at) 7.193 Tj +-286 TJm +(the) 12.1743 Tj +-286 TJm +(time) 17.7135 Tj +-285 TJm +(the) 12.1743 Tj +-286 TJm +(program) 33.7533 Tj +-286 TJm +(has) 13.2801 Tj +-286 TJm +(announced) 43.158 Tj +-285 TJm +(its) 9.41466 Tj +72 433.076 Td +(intention) 35.427 Tj +-292 TJm +(to) 7.7509 Tj +-292 TJm +(not) 12.7322 Tj +-291 TJm +(supply) 26.5703 Tj +-292 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-292 TJm +(more) 20.4731 Tj +-292 TJm +(input\).) 26.2913 Tj +-870 TJm +(By) 11.6264 Tj +-292 TJm +(comparing) 42.61 Tj +-292 TJm +(this) 14.396 Tj +-292 TJm +(v) 4.9813 Tj +25 TJm +(alue) 16.5977 Tj +-291 TJm +(with) 17.7135 Tj +-292 TJm +(that) 14.9439 Tj +-292 TJm +(of) 8.29885 Tj +[1 0 0 1 392.862 433.076] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -392.862 -433.076] cm +[1 0 0 1 0 0] Tm +0 0 Td +392.862 433.076 Td +/F134_0 9.9626 Tf +(avail_in) 47.8205 Tj +[1 0 0 1 440.682 433.076] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -440.682 -433.076] cm +[1 0 0 1 0 0] Tm +0 0 Td +443.589 433.076 Td +/F130_0 9.9626 Tf +(o) 4.9813 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-292 TJm +(subsequent) 44.2738 Tj +-292 TJm +(calls) 18.2614 Tj +-291 TJm +(to) 7.7509 Tj +[1 0 0 1 72 421.121] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -421.121] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 421.121 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 155.686 421.121] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -155.686 -421.121] cm +[1 0 0 1 0 0] Tm +0 0 Td +155.686 421.121 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-247 TJm +(the) 12.1743 Tj +-247 TJm +(library) 26.5603 Tj +-246 TJm +(can) 13.8281 Tj +-247 TJm +(detect) 23.7907 Tj +-246 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-247 TJm +(att) 9.9626 Tj +1 TJm +(empts) 23.8007 Tj +-247 TJm +(to) 7.7509 Tj +-246 TJm +(slip) 14.396 Tj +-247 TJm +(in) 7.7509 Tj +-246 TJm +(more) 20.4731 Tj +-247 TJm +(data) 16.5977 Tj +-246 TJm +(to) 7.7509 Tj +-247 TJm +(compress.) 40.1194 Tj +-617 TJm +(An) 12.1743 Tj +15 TJm +(y) 4.9813 Tj +-247 TJm +(calls) 18.2614 Tj +-246 TJm +(for) 11.6164 Tj +-247 TJm +(which) 24.3486 Tj +-246 TJm +(this) 14.396 Tj +-247 TJm +(is) 6.64505 Tj +72 409.166 Td +(detected) 33.1954 Tj +-250 TJm +(will) 15.5018 Tj +-250 TJm +(return) 23.7907 Tj +[1 0 0 1 151.959 409.166] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -151.959 -409.166] cm +[1 0 0 1 0 0] Tm +0 0 Td +151.959 409.166 Td +/F134_0 9.9626 Tf +(BZ_SEQUENCE_ERROR) 101.619 Tj +[1 0 0 1 253.578 409.166] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -253.578 -409.166] cm +[1 0 0 1 0 0] Tm +0 0 Td +253.578 409.166 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-500 TJm +(This) 17.7135 Tj +-250 TJm +(indicates) 35.417 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(programming) 54.2364 Tj +-250 TJm +(mistak) 26.5703 Tj +10 TJm +(e) 4.42339 Tj +-250 TJm +(which) 24.3486 Tj +-250 TJm +(should) 26.5703 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(corrected.) 39.5515 Tj +[1 0 0 1 72 407.009] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -397.046] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 387.248 Td +/F130_0 9.9626 Tf +(Instead) 28.772 Tj +-224 TJm +(of) 8.29885 Tj +-223 TJm +(asking) 26.0123 Tj +-224 TJm +(to) 7.7509 Tj +-223 TJm +(\002nish,) 24.6375 Tj +-229 TJm +(the) 12.1743 Tj +-224 TJm +(calling) 27.1182 Tj +-223 TJm +(program) 33.7533 Tj +-224 TJm +(may) 17.1556 Tj +-224 TJm +(ask) 13.2801 Tj +[1 0 0 1 293.282 387.248] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -293.282 -387.248] cm +[1 0 0 1 0 0] Tm +0 0 Td +293.282 387.248 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 376.968 387.248] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -376.968 -387.248] cm +[1 0 0 1 0 0] Tm +0 0 Td +379.196 387.248 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-224 TJm +(tak) 12.1743 Tj +10 TJm +(e) 4.42339 Tj +-223 TJm +(all) 9.9626 Tj +-224 TJm +(the) 12.1743 Tj +-223 TJm +(remaining) 40.3983 Tj +-224 TJm +(input,) 22.9738 Tj +-229 TJm +(compress) 37.6287 Tj +72 375.293 Td +(it) 5.53921 Tj +-278 TJm +(and) 14.386 Tj +-278 TJm +(terminate) 37.6287 Tj +-278 TJm +(the) 12.1743 Tj +-278 TJm +(current) 28.2141 Tj +-277 TJm +(\(Burro) 26.5603 Tj +25 TJm +(ws-Wheeler\)) 51.4469 Tj +-278 TJm +(compression) 50.3609 Tj +-278 TJm +(block.) 24.6275 Tj +-787 TJm +(Th) 11.0684 Tj +-1 TJm +(i) 2.7696 Tj +1 TJm +(s) 3.87545 Tj +-278 TJm +(could) 22.1369 Tj +-278 TJm +(be) 9.40469 Tj +-278 TJm +(useful) 24.3486 Tj +-278 TJm +(for) 11.6164 Tj +-278 TJm +(error) 19.3573 Tj +-278 TJm +(control) 28.224 Tj +-278 TJm +(purposes.) 37.9077 Tj +72 363.338 Td +(The) 15.4918 Tj +-328 TJm +(mechanism) 45.3796 Tj +-328 TJm +(is) 6.64505 Tj +-328 TJm +(analogous) 40.3983 Tj +-328 TJm +(to) 7.7509 Tj +-328 TJm +(that) 14.9439 Tj +-328 TJm +(for) 11.6164 Tj +-328 TJm +(\002nishing:) 37.6487 Tj +-466 TJm +(call) 14.386 Tj +[1 0 0 1 297.049 363.337] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -297.049 -363.337] cm +[1 0 0 1 0 0] Tm +0 0 Td +297.049 363.337 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 380.735 363.337] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -380.735 -363.337] cm +[1 0 0 1 0 0] Tm +0 0 Td +384.003 363.337 Td +/F130_0 9.9626 Tf +(with) 17.7135 Tj +-328 TJm +(an) 9.40469 Tj +-328 TJm +(action) 24.3486 Tj +-328 TJm +(of) 8.29885 Tj +[1 0 0 1 456.841 363.337] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -456.841 -363.337] cm +[1 0 0 1 0 0] Tm +0 0 Td +456.841 363.337 Td +/F134_0 9.9626 Tf +(BZ_FLUSH) 47.8205 Tj +[1 0 0 1 504.662 363.337] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -504.662 -363.337] cm +[1 0 0 1 0 0] Tm +0 0 Td +504.662 363.337 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-328 TJm +(remo) 20.4731 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +72 351.382 Td +(output) 25.4644 Tj +-445 TJm +(data,) 19.0883 Tj +-494 TJm +(and) 14.386 Tj +-446 TJm +(persist) 26.0123 Tj +-445 TJm +(with) 17.7135 Tj +-445 TJm +(the) 12.1743 Tj +[1 0 0 1 213.94 351.382] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -213.94 -351.382] cm +[1 0 0 1 0 0] Tm +0 0 Td +213.94 351.382 Td +/F134_0 9.9626 Tf +(BZ_FLUSH) 47.8205 Tj +[1 0 0 1 261.761 351.382] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -261.761 -351.382] cm +[1 0 0 1 0 0] Tm +0 0 Td +266.195 351.382 Td +/F130_0 9.9626 Tf +(action) 24.3486 Tj +-445 TJm +(until) 18.2714 Tj +-445 TJm +(the) 12.1743 Tj +-446 TJm +(v) 4.9813 Tj +25 TJm +(alue) 16.5977 Tj +[1 0 0 1 360.062 351.382] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -360.062 -351.382] cm +[1 0 0 1 0 0] Tm +0 0 Td +360.062 351.382 Td +/F134_0 9.9626 Tf +(BZ_RUN) 35.8654 Tj +[1 0 0 1 395.928 351.382] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -395.928 -351.382] cm +[1 0 0 1 0 0] Tm +0 0 Td +400.362 351.382 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-445 TJm +(returned.) 35.686 Tj +-1792 TJm +(As) 11.0684 Tj +-445 TJm +(with) 17.7135 Tj +-445 TJm +(\002nishing,) 37.3697 Tj +[1 0 0 1 72 339.427] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -339.427] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 339.427 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 155.686 339.427] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -155.686 -339.427] cm +[1 0 0 1 0 0] Tm +0 0 Td +158.177 339.427 Td +/F130_0 9.9626 Tf +(detects) 27.6661 Tj +-250 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-250 TJm +(attempt) 29.8878 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(pro) 13.2801 Tj +15 TJm +(vide) 17.1556 Tj +-250 TJm +(more) 20.4731 Tj +-250 TJm +(input) 20.4831 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(once) 18.8094 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(\003ush) 19.3773 Tj +-250 TJm +(has) 13.2801 Tj +-250 TJm +(be) 9.40469 Tj +15 TJm +(gun.) 17.4346 Tj +[1 0 0 1 72 337.27] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -327.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 317.509 Td +/F130_0 9.9626 Tf +(Once) 21.0211 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(\003ush) 19.3773 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(complete,) 39.0135 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(stream) 26.5603 Tj +-250 TJm +(returns) 27.6661 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(normal) 28.224 Tj +-250 TJm +(R) 6.64505 Tj +40 TJm +(UNNING) 39.2825 Tj +-250 TJm +(state.) 20.7521 Tj +[1 0 0 1 72 315.353] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -305.39] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 295.591 Td +/F130_0 9.9626 Tf +(This) 17.7135 Tj +-344 TJm +(all) 9.9626 Tj +-343 TJm +(sounds) 27.6761 Tj +-344 TJm +(pretty) 23.2427 Tj +-344 TJm +(comple) 29.3299 Tj +15 TJm +(x,) 7.47195 Tj +-367 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-344 TJm +(isn') 14.9439 Tj +18 TJm +(t) 2.7696 Tj +-344 TJm +(really) 22.6848 Tj +65 TJm +(.) 2.49065 Tj +-1182 TJm +(Here') 22.6749 Tj +55 TJm +(s) 3.87545 Tj +-344 TJm +(a) 4.42339 Tj +-344 TJm +(table) 19.3673 Tj +-343 TJm +(which) 24.3486 Tj +-344 TJm +(sho) 13.8381 Tj +25 TJm +(ws) 11.0684 Tj +-344 TJm +(which) 24.3486 Tj +-344 TJm +(actions) 28.224 Tj +-343 TJm +(are) 12.1643 Tj +-344 TJm +(allo) 14.9439 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(able) 16.5977 Tj +-344 TJm +(in) 7.7509 Tj +-344 TJm +(each) 18.2515 Tj +72 283.636 Td +(state,) 20.7521 Tj +-281 TJm +(what) 19.3673 Tj +-274 TJm +(action) 24.3486 Tj +-275 TJm +(will) 15.5018 Tj +-274 TJm +(be) 9.40469 Tj +-275 TJm +(tak) 12.1743 Tj +10 TJm +(en,) 11.8953 Tj +-280 TJm +(what) 19.3673 Tj +-275 TJm +(the) 12.1743 Tj +-274 TJm +(ne) 9.40469 Tj +15 TJm +(xt) 7.7509 Tj +-275 TJm +(state) 18.2614 Tj +-274 TJm +(is,) 9.1357 Tj +-281 TJm +(and) 14.386 Tj +-274 TJm +(what) 19.3673 Tj +-275 TJm +(the) 12.1743 Tj +-275 TJm +(non-error) 37.6188 Tj +-274 TJm +(return) 23.7907 Tj +-275 TJm +(v) 4.9813 Tj +25 TJm +(alues) 20.4731 Tj +-274 TJm +(are.) 14.655 Tj +-767 TJm +(Note) 19.3673 Tj +-275 TJm +(that) 14.9439 Tj +-274 TJm +(you) 14.9439 Tj +-275 TJm +(can') 17.1456 Tj +18 TJm +(t) 2.7696 Tj +72 271.681 Td +(e) 4.42339 Tj +15 TJm +(xplicitly) 33.2153 Tj +-347 TJm +(ask) 13.2801 Tj +-348 TJm +(what) 19.3673 Tj +-347 TJm +(state) 18.2614 Tj +-348 TJm +(the) 12.1743 Tj +-347 TJm +(stream) 26.5603 Tj +-348 TJm +(is) 6.64505 Tj +-347 TJm +(in,) 10.2416 Tj +-372 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-347 TJm +(nor) 13.2801 Tj +-348 TJm +(do) 9.9626 Tj +-347 TJm +(you) 14.9439 Tj +-348 TJm +(need) 18.8094 Tj +-347 TJm +(to) 7.7509 Tj +-348 TJm +(--) 6.63509 Tj +-347 TJm +(it) 5.53921 Tj +-348 TJm +(can) 13.8281 Tj +-347 TJm +(be) 9.40469 Tj +-347 TJm +(inferred) 31.5316 Tj +-348 TJm +(from) 19.3673 Tj +-347 TJm +(the) 12.1743 Tj +-348 TJm +(v) 4.9813 Tj +25 TJm +(alues) 20.4731 Tj +-347 TJm +(returned) 33.1954 Tj +-348 TJm +(by) 9.9626 Tj +[1 0 0 1 72 259.726] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -259.726] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 259.726 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 155.686 259.726] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -155.686 -259.726] cm +[1 0 0 1 0 0] Tm +0 0 Td +155.686 259.726 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 258.192] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -207.34] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.8518] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.8518 Td +/F130_0 9.9626 Tf +(14) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 18 18 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -595.402] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 573.848 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 570.261] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -711.631] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 711.631 Td +/F134_0 9.9626 Tf +(IDLE/any) 47.8205 Tj +98.4879 699.676 Td +(Illegal.) 47.8205 Tj +-852 TJm +(IDLE) 23.9102 Tj +-426 TJm +(state) 29.8878 Tj +-426 TJm +(only) 23.9102 Tj +-426 TJm +(exists) 35.8654 Tj +-426 TJm +(after) 29.8878 Tj +-426 TJm +(BZ2_bzCompressEnd) 101.619 Tj +-426 TJm +(or) 11.9551 Tj +98.4879 687.721 Td +(before) 35.8654 Tj +-426 TJm +(BZ2_bzCompressInit.) 113.574 Tj +98.4879 675.766 Td +(Return) 35.8654 Tj +-426 TJm +(value) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ_SEQUENCE_ERROR) 101.619 Tj +90 651.856 Td +(RUNNING/BZ_RUN) 83.6858 Tj +98.4879 639.9 Td +(Compress) 47.8205 Tj +-426 TJm +(from) 23.9102 Tj +-426 TJm +(next_in) 41.8429 Tj +-426 TJm +(to) 11.9551 Tj +-426 TJm +(next_out) 47.8205 Tj +-426 TJm +(as) 11.9551 Tj +-426 TJm +(much) 23.9102 Tj +-426 TJm +(as) 11.9551 Tj +-426 TJm +(possible.) 53.798 Tj +98.4879 627.945 Td +(Next) 23.9102 Tj +-426 TJm +(state) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(RUNNING) 41.8429 Tj +98.4879 615.99 Td +(Return) 35.8654 Tj +-426 TJm +(value) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ_RUN_OK) 53.798 Tj +90 592.08 Td +(RUNNING/BZ_FLUSH) 95.641 Tj +98.4879 580.125 Td +(Remember) 47.8205 Tj +-426 TJm +(current) 41.8429 Tj +-426 TJm +(value) 29.8878 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(next_in.) 47.8205 Tj +-426 TJm +(Compress) 47.8205 Tj +-426 TJm +(from) 23.9102 Tj +-426 TJm +(next_in) 41.8429 Tj +98.4879 568.169 Td +(to) 11.9551 Tj +-426 TJm +(next_out) 47.8205 Tj +-426 TJm +(as) 11.9551 Tj +-426 TJm +(much) 23.9102 Tj +-426 TJm +(as) 11.9551 Tj +-426 TJm +(possible,) 53.798 Tj +-426 TJm +(but) 17.9327 Tj +-426 TJm +(do) 11.9551 Tj +-426 TJm +(not) 17.9327 Tj +-426 TJm +(accept) 35.8654 Tj +-426 TJm +(any) 17.9327 Tj +-426 TJm +(more) 23.9102 Tj +-426 TJm +(input.) 35.8654 Tj +98.4879 556.214 Td +(Next) 23.9102 Tj +-426 TJm +(state) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(FLUSHING) 47.8205 Tj +98.4879 544.259 Td +(Return) 35.8654 Tj +-426 TJm +(value) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ_FLUSH_OK) 65.7532 Tj +90 520.349 Td +(RUNNING/BZ_FINISH) 101.619 Tj +98.4879 508.394 Td +(Remember) 47.8205 Tj +-426 TJm +(current) 41.8429 Tj +-426 TJm +(value) 29.8878 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(next_in.) 47.8205 Tj +-426 TJm +(Compress) 47.8205 Tj +-426 TJm +(from) 23.9102 Tj +-426 TJm +(next_in) 41.8429 Tj +98.4879 496.438 Td +(to) 11.9551 Tj +-426 TJm +(next_out) 47.8205 Tj +-426 TJm +(as) 11.9551 Tj +-426 TJm +(much) 23.9102 Tj +-426 TJm +(as) 11.9551 Tj +-426 TJm +(possible,) 53.798 Tj +-426 TJm +(but) 17.9327 Tj +-426 TJm +(do) 11.9551 Tj +-426 TJm +(not) 17.9327 Tj +-426 TJm +(accept) 35.8654 Tj +-426 TJm +(any) 17.9327 Tj +-426 TJm +(more) 23.9102 Tj +-426 TJm +(input.) 35.8654 Tj +98.4879 484.483 Td +(Next) 23.9102 Tj +-426 TJm +(state) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(FINISHING) 53.798 Tj +98.4879 472.528 Td +(Return) 35.8654 Tj +-426 TJm +(value) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ_FINISH_OK) 71.7307 Tj +90 448.618 Td +(FLUSHING/BZ_FLUSH) 101.619 Tj +98.4879 436.663 Td +(Compress) 47.8205 Tj +-426 TJm +(from) 23.9102 Tj +-426 TJm +(next_in) 41.8429 Tj +-426 TJm +(to) 11.9551 Tj +-426 TJm +(next_out) 47.8205 Tj +-426 TJm +(as) 11.9551 Tj +-426 TJm +(much) 23.9102 Tj +-426 TJm +(as) 11.9551 Tj +-426 TJm +(possible,) 53.798 Tj +98.4879 424.707 Td +(but) 17.9327 Tj +-426 TJm +(do) 11.9551 Tj +-426 TJm +(not) 17.9327 Tj +-426 TJm +(accept) 35.8654 Tj +-426 TJm +(any) 17.9327 Tj +-426 TJm +(more) 23.9102 Tj +-426 TJm +(input.) 35.8654 Tj +98.4879 412.752 Td +(If) 11.9551 Tj +-426 TJm +(all) 17.9327 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(existing) 47.8205 Tj +-426 TJm +(input) 29.8878 Tj +-426 TJm +(has) 17.9327 Tj +-426 TJm +(been) 23.9102 Tj +-426 TJm +(used) 23.9102 Tj +-426 TJm +(up) 11.9551 Tj +-426 TJm +(and) 17.9327 Tj +-426 TJm +(all) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +98.4879 400.797 Td +(output) 35.8654 Tj +-426 TJm +(has) 17.9327 Tj +-426 TJm +(been) 23.9102 Tj +-426 TJm +(removed) 41.8429 Tj +106.976 388.842 Td +(Next) 23.9102 Tj +-426 TJm +(state) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(RUNNING;) 47.8205 Tj +-426 TJm +(Return) 35.8654 Tj +-426 TJm +(value) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ_RUN_OK) 53.798 Tj +98.4879 376.887 Td +(else) 23.9102 Tj +106.976 364.932 Td +(Next) 23.9102 Tj +-426 TJm +(state) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(FLUSHING;) 53.798 Tj +-426 TJm +(Return) 35.8654 Tj +-426 TJm +(value) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ_FLUSH_OK) 65.7532 Tj +90 341.021 Td +(FLUSHING/other) 83.6858 Tj +98.4879 329.066 Td +(Illegal.) 47.8205 Tj +98.4879 317.111 Td +(Return) 35.8654 Tj +-426 TJm +(value) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ_SEQUENCE_ERROR) 101.619 Tj +90 293.201 Td +(FINISHING/BZ_FINISH) 113.574 Tj +98.4879 281.245 Td +(Compress) 47.8205 Tj +-426 TJm +(from) 23.9102 Tj +-426 TJm +(next_in) 41.8429 Tj +-426 TJm +(to) 11.9551 Tj +-426 TJm +(next_out) 47.8205 Tj +-426 TJm +(as) 11.9551 Tj +-426 TJm +(much) 23.9102 Tj +-426 TJm +(as) 11.9551 Tj +-426 TJm +(possible,) 53.798 Tj +98.4879 269.29 Td +(but) 17.9327 Tj +-426 TJm +(to) 11.9551 Tj +-426 TJm +(not) 17.9327 Tj +-426 TJm +(accept) 35.8654 Tj +-426 TJm +(any) 17.9327 Tj +-426 TJm +(more) 23.9102 Tj +-426 TJm +(input.) 35.8654 Tj +98.4879 257.335 Td +(If) 11.9551 Tj +-426 TJm +(all) 17.9327 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(existing) 47.8205 Tj +-426 TJm +(input) 29.8878 Tj +-426 TJm +(has) 17.9327 Tj +-426 TJm +(been) 23.9102 Tj +-426 TJm +(used) 23.9102 Tj +-426 TJm +(up) 11.9551 Tj +-426 TJm +(and) 17.9327 Tj +-426 TJm +(all) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +98.4879 245.38 Td +(output) 35.8654 Tj +-426 TJm +(has) 17.9327 Tj +-426 TJm +(been) 23.9102 Tj +-426 TJm +(removed) 41.8429 Tj +106.976 233.425 Td +(Next) 23.9102 Tj +-426 TJm +(state) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(IDLE;) 29.8878 Tj +-426 TJm +(Return) 35.8654 Tj +-426 TJm +(value) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ_STREAM_END) 77.7083 Tj +98.4879 221.47 Td +(else) 23.9102 Tj +106.976 209.514 Td +(Next) 23.9102 Tj +-426 TJm +(state) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(FINISHING;) 59.7756 Tj +-426 TJm +(Return) 35.8654 Tj +-426 TJm +(value) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ_FINISH_OK) 71.7307 Tj +90 185.604 Td +(FINISHING/other) 89.6634 Tj +98.4879 173.649 Td +(Illegal.) 47.8205 Tj +98.4879 161.694 Td +(Return) 35.8654 Tj +-426 TJm +(value) 29.8878 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ_SEQUENCE_ERROR) 101.619 Tj +[1 0 0 1 72 146.152] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -136.189] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 124.234 Td +/F130_0 9.9626 Tf +(That) 18.2614 Tj +-250 TJm +(still) 14.9539 Tj +-250 TJm +(looks) 21.589 Tj +-250 TJm +(complicated?) 53.1206 Tj +-620 TJm +(W) 9.40469 Tj +80 TJm +(ell,) 12.4533 Tj +-250 TJm +(f) 3.31755 Tj +10 TJm +(air) 10.5105 Tj +-250 TJm +(enough.) 31.8205 Tj +-620 TJm +(The) 15.4918 Tj +-250 TJm +(usual) 21.031 Tj +-250 TJm +(sequence) 36.5129 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(calls) 18.2614 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(compressing) 50.3609 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(load) 17.1556 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(is:) 9.41466 Tj +[1 0 0 1 72 122.077] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -29.7236] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 7.3724 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -79.3724 -92.3537] cm +[1 0 0 1 0 0] Tm +0 0 Td +79.3724 92.3537 Td +/F130_0 9.9626 Tf +(1.) 7.47195 Tj +[1 0 0 1 86.8444 92.3537] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 3.0884 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -91.9253 -92.3537] cm +[1 0 0 1 0 0] Tm +0 0 Td +91.9253 92.3537 Td +/F130_0 9.9626 Tf +(Get) 14.386 Tj +-250 TJm +(started) 26.5603 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 158.056 92.3537] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -158.056 -92.3537] cm +[1 0 0 1 0 0] Tm +0 0 Td +158.056 92.3537 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 265.653 92.3537] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -265.653 -92.3537] cm +[1 0 0 1 0 0] Tm +0 0 Td +265.653 92.3537 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 268.144 92.3537] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -196.144 -41.5019] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.893 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(15) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 19 19 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -31.5168] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 7.3724 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -79.3724 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +79.3724 710.037 Td +/F130_0 9.9626 Tf +(2.) 7.47195 Tj +[1 0 0 1 86.8444 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 3.0884 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -91.9253 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +91.9253 710.037 Td +/F130_0 9.9626 Tf +(Sho) 15.5018 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-240 TJm +(data) 16.5977 Tj +-240 TJm +(in) 7.7509 Tj +-241 TJm +(and) 14.386 Tj +-240 TJm +(shlurp) 24.9065 Tj +-240 TJm +(out) 12.7322 Tj +-240 TJm +(its) 9.41466 Tj +-240 TJm +(compressed) 47.0334 Tj +-241 TJm +(form) 19.3673 Tj +-240 TJm +(using) 21.589 Tj +-240 TJm +(zero) 17.1456 Tj +-240 TJm +(or) 8.29885 Tj +-240 TJm +(more) 20.4731 Tj +-241 TJm +(calls) 18.2614 Tj +-240 TJm +(of) 8.29885 Tj +[1 0 0 1 401.454 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -401.454 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +401.454 710.037 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 485.14 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -485.14 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +487.533 710.037 Td +/F130_0 9.9626 Tf +(with) 17.7135 Tj +-240 TJm +(action) 24.3486 Tj +-240 TJm +(=) 5.61891 Tj +[1 0 0 1 91.9253 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -91.9253 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +91.9253 698.082 Td +/F134_0 9.9626 Tf +(BZ_RUN) 35.8654 Tj +[1 0 0 1 127.791 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -127.791 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +127.791 698.082 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 130.281 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -58.2814 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 7.3724 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -79.3724 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +79.3724 676.164 Td +/F130_0 9.9626 Tf +(3.) 7.47195 Tj +[1 0 0 1 86.8444 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 3.0884 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -91.9253 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +91.9253 676.164 Td +/F130_0 9.9626 Tf +(Finish) 24.9165 Tj +-242 TJm +(up.) 12.4533 Tj +-307 TJm +(Repeatedly) 44.8217 Tj +-241 TJm +(call) 14.386 Tj +[1 0 0 1 198.784 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -198.784 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +198.784 676.164 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 282.471 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -282.471 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +284.878 676.164 Td +/F130_0 9.9626 Tf +(with) 17.7135 Tj +-242 TJm +(action) 24.3486 Tj +-241 TJm +(=) 5.61891 Tj +[1 0 0 1 339.78 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -339.78 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +339.78 676.164 Td +/F134_0 9.9626 Tf +(BZ_FINISH) 53.798 Tj +[1 0 0 1 393.579 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -393.579 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +393.579 676.164 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-242 TJm +(cop) 14.386 Tj +10 TJm +(ying) 17.7135 Tj +-241 TJm +(out) 12.7322 Tj +-242 TJm +(the) 12.1743 Tj +-242 TJm +(compres) 33.7533 Tj +1 TJm +(sed) 13.2801 Tj +-242 TJm +(output,) 27.9551 Tj +91.9253 664.209 Td +(until) 18.2714 Tj +[1 0 0 1 112.687 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -112.687 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +112.687 664.209 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 190.396 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -190.396 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +192.886 664.209 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-250 TJm +(returned.) 35.686 Tj +[1 0 0 1 237.708 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -165.708 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 7.3724 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -79.3724 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +79.3724 642.291 Td +/F130_0 9.9626 Tf +(4.) 7.47195 Tj +[1 0 0 1 86.8444 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 3.0884 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -91.9253 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +91.9253 642.291 Td +/F130_0 9.9626 Tf +(Close) 22.6948 Tj +-250 TJm +(up) 9.9626 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(go) 9.9626 Tj +-250 TJm +(home.) 24.6275 Tj +-620 TJm +(Call) 16.6077 Tj +[1 0 0 1 208.796 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -208.796 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +208.796 642.291 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressEnd) 101.619 Tj +[1 0 0 1 310.415 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -310.415 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +310.415 642.291 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 312.906 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -240.906 -12.1195] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -630.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 620.374 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +-269 TJm +(the) 12.1743 Tj +-270 TJm +(data) 16.5977 Tj +-269 TJm +(you) 14.9439 Tj +-270 TJm +(w) 7.193 Tj +10 TJm +(ant) 12.1743 Tj +-269 TJm +(to) 7.7509 Tj +-270 TJm +(compress) 37.6287 Tj +-269 TJm +(\002ts) 12.1843 Tj +-270 TJm +(into) 15.5018 Tj +-269 TJm +(your) 18.2614 Tj +-270 TJm +(input) 20.4831 Tj +-269 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-270 TJm +(all) 9.9626 Tj +-269 TJm +(at) 7.193 Tj +-270 TJm +(once,) 21.3 Tj +-274 TJm +(you) 14.9439 Tj +-269 TJm +(can) 13.8281 Tj +-270 TJm +(skip) 16.6077 Tj +-269 TJm +(the) 12.1743 Tj +-270 TJm +(calls) 18.2614 Tj +-269 TJm +(of) 8.29885 Tj +[1 0 0 1 456.314 620.374] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -456.314 -620.374] cm +[1 0 0 1 0 0] Tm +0 0 Td +456.314 620.374 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +72 608.418 Td +(\() 5.97756 Tj +-600 TJm +(...,) 23.9102 Tj +-600 TJm +(BZ_RUN) 35.8654 Tj +-600 TJm +(\)) 5.97756 Tj +[1 0 0 1 161.664 608.418] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -161.664 -608.418] cm +[1 0 0 1 0 0] Tm +0 0 Td +164.154 608.418 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +-250 TJm +(just) 14.396 Tj +-250 TJm +(do) 9.9626 Tj +-250 TJm +(the) 12.1743 Tj +[1 0 0 1 225.036 608.418] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -225.036 -608.418] cm +[1 0 0 1 0 0] Tm +0 0 Td +225.036 608.418 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +-600 TJm +(\() 5.97756 Tj +-600 TJm +(...,) 23.9102 Tj +-600 TJm +(BZ_FINISH) 53.798 Tj +-600 TJm +(\)) 5.97756 Tj +[1 0 0 1 422.296 608.418] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -422.296 -608.418] cm +[1 0 0 1 0 0] Tm +0 0 Td +424.786 608.418 Td +/F130_0 9.9626 Tf +(calls.) 20.7521 Tj +[1 0 0 1 72 606.262] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -596.299] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 586.501 Td +/F130_0 9.9626 Tf +(All) 12.7322 Tj +-278 TJm +(required) 33.1954 Tj +-277 TJm +(memory) 33.2053 Tj +-278 TJm +(is) 6.64505 Tj +-277 TJm +(allocated) 35.965 Tj +-278 TJm +(by) 9.9626 Tj +[1 0 0 1 220.295 586.501] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -220.295 -586.501] cm +[1 0 0 1 0 0] Tm +0 0 Td +220.295 586.501 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 327.891 586.501] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -327.891 -586.501] cm +[1 0 0 1 0 0] Tm +0 0 Td +327.891 586.501 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-785 TJm +(The) 15.4918 Tj +-278 TJm +(compression) 50.3609 Tj +-277 TJm +(library) 26.5603 Tj +-278 TJm +(can) 13.8281 Tj +-277 TJm +(accept) 25.4445 Tj +-278 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-277 TJm +(data) 16.5977 Tj +-278 TJm +(at) 7.193 Tj +-278 TJm +(all) 9.9626 Tj +72 574.545 Td +(\(ob) 13.2801 Tj +15 TJm +(viously\).) 35.1481 Tj +-612 TJm +(So) 10.5205 Tj +-238 TJm +(you) 14.9439 Tj +-237 TJm +(shouldn') 34.8691 Tj +18 TJm +(t) 2.7696 Tj +-238 TJm +(get) 12.1743 Tj +-238 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-237 TJm +(error) 19.3573 Tj +-238 TJm +(return) 23.7907 Tj +-238 TJm +(v) 4.9813 Tj +25 TJm +(alues) 20.4731 Tj +-238 TJm +(from) 19.3673 Tj +-237 TJm +(the) 12.1743 Tj +[1 0 0 1 339.287 574.545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -339.287 -574.545] cm +[1 0 0 1 0 0] Tm +0 0 Td +339.287 574.545 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 422.973 574.545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -422.973 -574.545] cm +[1 0 0 1 0 0] Tm +0 0 Td +425.342 574.545 Td +/F130_0 9.9626 Tf +(calls.) 20.7521 Tj +-612 TJm +(If) 6.63509 Tj +-238 TJm +(you) 14.9439 Tj +-237 TJm +(do,) 12.4533 Tj +-240 TJm +(the) 12.1743 Tj +15 TJm +(y) 4.9813 Tj +-238 TJm +(will) 15.5018 Tj +-238 TJm +(be) 9.40469 Tj +[1 0 0 1 72 562.59] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -562.59] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 562.59 Td +/F134_0 9.9626 Tf +(BZ_SEQUENCE_ERROR) 101.619 Tj +[1 0 0 1 173.619 562.59] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -173.619 -562.59] cm +[1 0 0 1 0 0] Tm +0 0 Td +173.619 562.59 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(indicate) 31.5416 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ug) 9.9626 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(your) 18.2614 Tj +-250 TJm +(programming.) 56.727 Tj +[1 0 0 1 72 560.433] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -550.471] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 540.673 Td +/F130_0 9.9626 Tf +(T) 6.08715 Tj +35 TJm +(ri) 6.08715 Tj +25 TJm +(vial) 14.9439 Tj +-250 TJm +(other) 20.4731 Tj +-250 TJm +(possible) 32.6574 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues:) 23.2427 Tj +[1 0 0 1 72 538.516] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -36.8617] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 35.8655 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 32.2789] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -529.151] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 529.151 Td +/F134_0 9.9626 Tf +(BZ_PARAM_ERROR) 83.6858 Tj +98.4879 517.196 Td +(if) 11.9551 Tj +-426 TJm +(strm) 23.9102 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL,) 29.8878 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(strm->s) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +[1 0 0 1 72 501.654] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -491.691] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 471.033 Td +/F122_0 17.2154 Tf +(3.3.3.) 43.0729 Tj +[1 0 0 1 119.858 471.033] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -471.033] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 471.033 Td +/F392_0 17.2154 Tf +(BZ2_bzCompressEnd) 175.597 Tj +[1 0 0 1 295.455 471.033] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -223.455 -2.3326] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -459.335] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 459.335 Td +/F134_0 9.9626 Tf +(int) 17.9327 Tj +-426 TJm +(BZ2_bzCompressEnd) 101.619 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(bz_stream) 53.798 Tj +286.303 457.592 Td +(*) 5.97756 Tj +292.281 459.335 Td +(strm) 23.9102 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 443.793] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5493] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -433.831] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 421.876 Td +/F130_0 9.9626 Tf +(Releases) 34.8591 Tj +-250 TJm +(all) 9.9626 Tj +-250 TJm +(memory) 33.2053 Tj +-250 TJm +(associated) 40.9463 Tj +-250 TJm +(with) 17.7135 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(compression) 50.3609 Tj +-250 TJm +(stream.) 29.0509 Tj +[1 0 0 1 72 419.719] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -409.756] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 399.958 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues:) 23.2427 Tj +[1 0 0 1 72 399.858] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -36.8618] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 35.8655 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 32.2789] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -390.493] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 390.493 Td +/F134_0 9.9626 Tf +(BZ_PARAM_ERROR) 83.6858 Tj +-852 TJm +(if) 11.9551 Tj +-426 TJm +(strm) 23.9102 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(strm->s) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +90 378.538 Td +(BZ_OK) 29.8878 Tj +-4686 TJm +(otherwise) 53.798 Tj +[1 0 0 1 72 362.996] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -353.034] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 332.375 Td +/F122_0 17.2154 Tf +(3.3.4.) 43.0729 Tj +[1 0 0 1 119.858 332.375] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -332.375] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 332.375 Td +/F392_0 17.2154 Tf +(BZ2_bzDecompressInit) 206.585 Tj +[1 0 0 1 326.443 332.375] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -254.443 -2.3327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -320.678] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 320.678 Td +/F134_0 9.9626 Tf +(int) 17.9327 Tj +-426 TJm +(BZ2_bzDecompressInit) 119.551 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(bz_stream) 53.798 Tj +304.236 318.934 Td +(*) 5.97756 Tj +310.214 320.678 Td +(strm,) 29.8878 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(verbosity,) 59.7756 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(small) 29.8878 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 305.136] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -295.173] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 283.218 Td +/F130_0 9.9626 Tf +(Prepares) 34.3012 Tj +-351 TJm +(for) 11.6164 Tj +-351 TJm +(decompression.) 62.2563 Tj +-1228 TJm +(As) 11.0684 Tj +-351 TJm +(with) 17.7135 Tj +[1 0 0 1 235.177 283.218] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -235.177 -283.218] cm +[1 0 0 1 0 0] Tm +0 0 Td +235.177 283.218 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 342.773 283.218] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.773 -283.218] cm +[1 0 0 1 0 0] Tm +0 0 Td +342.773 283.218 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-377 TJm +(a) 4.42339 Tj +[1 0 0 1 356.937 283.218] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -356.937 -283.218] cm +[1 0 0 1 0 0] Tm +0 0 Td +356.937 283.218 Td +/F134_0 9.9626 Tf +(bz_stream) 53.798 Tj +[1 0 0 1 410.736 283.218] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -410.736 -283.218] cm +[1 0 0 1 0 0] Tm +0 0 Td +414.235 283.218 Td +/F130_0 9.9626 Tf +(record) 25.4445 Tj +-351 TJm +(should) 26.5703 Tj +-351 TJm +(be) 9.40469 Tj +-352 TJm +(allocated) 35.965 Tj +-351 TJm +(and) 14.386 Tj +72 271.263 Td +(initialised) 39.3025 Tj +-306 TJm +(before) 25.4445 Tj +-305 TJm +(the) 12.1743 Tj +-306 TJm +(call.) 16.8766 Tj +-953 TJm +(Fields) 24.3586 Tj +[1 0 0 1 211.833 271.263] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -211.833 -271.263] cm +[1 0 0 1 0 0] Tm +0 0 Td +211.833 271.263 Td +/F134_0 9.9626 Tf +(bzalloc) 41.8429 Tj +[1 0 0 1 253.676 271.263] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -253.676 -271.263] cm +[1 0 0 1 0 0] Tm +0 0 Td +253.676 271.263 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 259.35 271.263] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -259.35 -271.263] cm +[1 0 0 1 0 0] Tm +0 0 Td +259.35 271.263 Td +/F134_0 9.9626 Tf +(bzfree) 35.8654 Tj +[1 0 0 1 295.215 271.263] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -295.215 -271.263] cm +[1 0 0 1 0 0] Tm +0 0 Td +298.26 271.263 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 315.69 271.263] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -315.69 -271.263] cm +[1 0 0 1 0 0] Tm +0 0 Td +315.69 271.263 Td +/F134_0 9.9626 Tf +(opaque) 35.8654 Tj +[1 0 0 1 351.556 271.263] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -351.556 -271.263] cm +[1 0 0 1 0 0] Tm +0 0 Td +354.6 271.263 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-306 TJm +(be) 9.40469 Tj +-305 TJm +(set) 11.0684 Tj +-306 TJm +(if) 6.08715 Tj +-305 TJm +(a) 4.42339 Tj +-306 TJm +(custom) 28.782 Tj +-305 TJm +(memory) 33.2053 Tj +-306 TJm +(allocator) 34.8591 Tj +-306 TJm +(is) 6.64505 Tj +72 259.308 Td +(required,) 35.686 Tj +-350 TJm +(or) 8.29885 Tj +-331 TJm +(made) 21.579 Tj +[1 0 0 1 147.635 259.308] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -147.635 -259.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +147.635 259.308 Td +/F134_0 9.9626 Tf +(NULL) 23.9102 Tj +[1 0 0 1 171.546 259.308] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -171.546 -259.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +174.835 259.308 Td +/F130_0 9.9626 Tf +(for) 11.6164 Tj +-330 TJm +(the) 12.1743 Tj +-331 TJm +(normal) 28.224 Tj +[1 0 0 1 236.722 259.308] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -236.722 -259.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +236.722 259.308 Td +/F134_0 9.9626 Tf +(malloc) 35.8654 Tj +[1 0 0 1 272.587 259.308] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -272.587 -259.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +275.878 259.308 Td +/F130_0 9.9626 Tf +(/) 2.7696 Tj +[1 0 0 1 281.938 259.308] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -281.938 -259.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +281.938 259.308 Td +/F134_0 9.9626 Tf +(free) 23.9102 Tj +[1 0 0 1 305.848 259.308] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -305.848 -259.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +309.139 259.308 Td +/F130_0 9.9626 Tf +(routines.) 34.5901 Tj +-1102 TJm +(Upon) 22.1369 Tj +-330 TJm +(return,) 26.2813 Tj +-350 TJm +(the) 12.1743 Tj +-331 TJm +(internal) 30.4357 Tj +-330 TJm +(state) 18.2614 Tj +-330 TJm +(will) 15.5018 Tj +-330 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-331 TJm +(been) 18.8094 Tj +72 247.353 Td +(initialised,) 41.7931 Tj +-250 TJm +(and) 14.386 Tj +[1 0 0 1 133.16 247.353] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -133.16 -247.353] cm +[1 0 0 1 0 0] Tm +0 0 Td +133.16 247.353 Td +/F134_0 9.9626 Tf +(total_in) 47.8205 Tj +[1 0 0 1 180.98 247.353] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -180.98 -247.353] cm +[1 0 0 1 0 0] Tm +0 0 Td +183.471 247.353 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 200.348 247.353] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -200.348 -247.353] cm +[1 0 0 1 0 0] Tm +0 0 Td +200.348 247.353 Td +/F134_0 9.9626 Tf +(total_out) 53.798 Tj +[1 0 0 1 254.146 247.353] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -254.146 -247.353] cm +[1 0 0 1 0 0] Tm +0 0 Td +256.637 247.353 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(zero.) 19.6363 Tj +[1 0 0 1 72 245.913] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -235.951] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 225.435 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(meaning) 34.3112 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(parameter) 39.8305 Tj +[1 0 0 1 192.756 225.435] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -192.756 -225.435] cm +[1 0 0 1 0 0] Tm +0 0 Td +192.756 225.435 Td +/F134_0 9.9626 Tf +(verbosity) 53.798 Tj +[1 0 0 1 246.554 225.435] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -246.554 -225.435] cm +[1 0 0 1 0 0] Tm +0 0 Td +246.554 225.435 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(see) 12.7222 Tj +[1 0 0 1 266.748 225.435] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -266.748 -225.435] cm +[1 0 0 1 0 0] Tm +0 0 Td +266.748 225.435 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 374.345 225.435] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -374.345 -225.435] cm +[1 0 0 1 0 0] Tm +0 0 Td +374.345 225.435 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 223.278] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -213.315] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 203.517 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +[1 0 0 1 81.4975 203.517] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -81.4975 -203.517] cm +[1 0 0 1 0 0] Tm +0 0 Td +81.4975 203.517 Td +/F134_0 9.9626 Tf +(small) 29.8878 Tj +[1 0 0 1 111.385 203.517] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -111.385 -203.517] cm +[1 0 0 1 0 0] Tm +0 0 Td +114.248 203.517 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-287 TJm +(nonzero,) 34.5802 Tj +-297 TJm +(the) 12.1743 Tj +-287 TJm +(library) 26.5603 Tj +-288 TJm +(will) 15.5018 Tj +-287 TJm +(use) 13.2801 Tj +-287 TJm +(an) 9.40469 Tj +-287 TJm +(alternati) 32.6474 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-288 TJm +(decompression) 59.7656 Tj +-287 TJm +(algorithm) 38.7446 Tj +-287 TJm +(which) 24.3486 Tj +-288 TJm +(uses) 17.1556 Tj +-287 TJm +(less) 14.9439 Tj +-287 TJm +(memory) 33.2053 Tj +-287 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-288 TJm +(at) 7.193 Tj +-287 TJm +(the) 12.1743 Tj +72 191.562 Td +(cost) 16.0497 Tj +-289 TJm +(of) 8.29885 Tj +-290 TJm +(decompressing) 59.7656 Tj +-289 TJm +(more) 20.4731 Tj +-289 TJm +(slo) 11.6264 Tj +25 TJm +(wly) 14.9439 Tj +-290 TJm +(\(roughly) 34.3112 Tj +-289 TJm +(speaking,) 37.9077 Tj +-299 TJm +(half) 15.4918 Tj +-290 TJm +(the) 12.1743 Tj +-289 TJm +(speed,) 25.1755 Tj +-299 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-289 TJm +(the) 12.1743 Tj +-290 TJm +(maximum) 40.4083 Tj +-289 TJm +(memory) 33.2053 Tj +-289 TJm +(requirement) 48.1393 Tj +-290 TJm +(drops) 22.1369 Tj +72 179.607 Td +(to) 7.7509 Tj +-250 TJm +(around) 27.6661 Tj +-250 TJm +(2300k\).) 30.7147 Tj +-620 TJm +(See) 14.386 Tj +[1 0 0 1 166.166 179.607] cm +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -166.166 -179.607] cm +[1 0 0 1 0 0] Tm +0 0 Td +166.166 179.607 Td +/F130_0 9.9626 Tf +(Ho) 12.1743 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(bzip2) 22.1369 Tj +[1 0 0 1 235.924 179.607] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +[1 0 0 1 -235.924 -179.607] cm +[1 0 0 1 0 0] Tm +0 0 Td +238.415 179.607 Td +/F130_0 9.9626 Tf +([2]) 11.6164 Tj +[1 0 0 1 250.031 179.607] cm +/DeviceRGB {} cs +[0 0 1] sc +/DeviceRGB {} CS +[0 0 1] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -250.031 -179.607] cm +[1 0 0 1 0 0] Tm +0 0 Td +252.522 179.607 Td +/F130_0 9.9626 Tf +(for) 11.6164 Tj +-250 TJm +(more) 20.4731 Tj +-250 TJm +(information) 47.0434 Tj +-250 TJm +(on) 9.9626 Tj +-250 TJm +(memory) 33.2053 Tj +-250 TJm +(management.) 53.3995 Tj +[1 0 0 1 72 177.45] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -167.487] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 157.689 Td +/F130_0 9.9626 Tf +(Note) 19.3673 Tj +-289 TJm +(that) 14.9439 Tj +-290 TJm +(the) 12.1743 Tj +-289 TJm +(amount) 29.8878 Tj +-289 TJm +(of) 8.29885 Tj +-289 TJm +(memory) 33.2053 Tj +-290 TJm +(needed) 28.2141 Tj +-289 TJm +(to) 7.7509 Tj +-289 TJm +(decompress) 47.0334 Tj +-289 TJm +(a) 4.42339 Tj +-290 TJm +(stream) 26.5603 Tj +-289 TJm +(cannot) 26.5603 Tj +-289 TJm +(be) 9.40469 Tj +-289 TJm +(determined) 44.8217 Tj +-290 TJm +(until) 18.2714 Tj +-289 TJm +(the) 12.1743 Tj +-289 TJm +(stream') 29.8778 Tj +55 TJm +(s) 3.87545 Tj +-289 TJm +(header) 26.5503 Tj +-290 TJm +(has) 13.2801 Tj +72 145.734 Td +(been) 18.8094 Tj +-342 TJm +(read,) 19.6363 Tj +-366 TJm +(so) 8.85675 Tj +-342 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(en) 9.40469 Tj +-342 TJm +(if) 6.08715 Tj +[1 0 0 1 161.081 145.734] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -161.081 -145.734] cm +[1 0 0 1 0 0] Tm +0 0 Td +161.081 145.734 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressInit) 119.551 Tj +[1 0 0 1 280.633 145.734] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -280.633 -145.734] cm +[1 0 0 1 0 0] Tm +0 0 Td +284.043 145.734 Td +/F130_0 9.9626 Tf +(succeeds,) 37.8977 Tj +-365 TJm +(a) 4.42339 Tj +-343 TJm +(subsequent) 44.2738 Tj +[1 0 0 1 381.098 145.734] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -381.098 -145.734] cm +[1 0 0 1 0 0] Tm +0 0 Td +381.098 145.734 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 476.739 145.734] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -476.739 -145.734] cm +[1 0 0 1 0 0] Tm +0 0 Td +480.149 145.734 Td +/F130_0 9.9626 Tf +(could) 22.1369 Tj +-342 TJm +(f) 3.31755 Tj +10 TJm +(ail) 9.9626 Tj +-343 TJm +(with) 17.7135 Tj +[1 0 0 1 72 133.779] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -133.779] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 133.779 Td +/F134_0 9.9626 Tf +(BZ_MEM_ERROR) 71.7307 Tj +[1 0 0 1 143.731 133.779] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -143.731 -133.779] cm +[1 0 0 1 0 0] Tm +0 0 Td +143.731 133.779 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 132.469] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -122.506] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 111.861 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues:) 23.2427 Tj +[1 0 0 1 72 111.761] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -60.9095] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(16) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 20 20 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -117.195] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 95.6413 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 92.0547] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -711.631] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 711.631 Td +/F134_0 9.9626 Tf +(BZ_CONFIG_ERROR) 89.6634 Tj +98.4879 699.676 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(library) 41.8429 Tj +-426 TJm +(has) 17.9327 Tj +-426 TJm +(been) 23.9102 Tj +-426 TJm +(mis-compiled) 71.7307 Tj +90 687.721 Td +(BZ_PARAM_ERROR) 83.6858 Tj +98.4879 675.766 Td +(if) 11.9551 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(small) 29.8878 Tj +-426 TJm +(!=) 11.9551 Tj +-426 TJm +(0) 5.97756 Tj +-426 TJm +(&&) 11.9551 Tj +-426 TJm +(small) 29.8878 Tj +-426 TJm +(!=) 11.9551 Tj +-426 TJm +(1) 5.97756 Tj +-426 TJm +(\)) 5.97756 Tj +98.4879 663.811 Td +(or) 11.9551 Tj +-426 TJm +(\(verbosity) 59.7756 Tj +-426 TJm +(<;) 11.9551 Tj +-426 TJm +(0) 5.97756 Tj +-426 TJm +(||) 11.9551 Tj +-426 TJm +(verbosity) 53.798 Tj +-426 TJm +(>) 5.97756 Tj +-426 TJm +(4\)) 11.9551 Tj +90 651.856 Td +(BZ_MEM_ERROR) 71.7307 Tj +98.4879 639.9 Td +(if) 11.9551 Tj +-426 TJm +(insufficient) 71.7307 Tj +-426 TJm +(memory) 35.8654 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(available) 53.798 Tj +[1 0 0 1 72 624.359] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5865] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -614.396] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 602.441 Td +/F130_0 9.9626 Tf +(Allo) 17.7135 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(able) 16.5977 Tj +-250 TJm +(ne) 9.40469 Tj +15 TJm +(xt) 7.7509 Tj +-250 TJm +(actions:) 30.9936 Tj +[1 0 0 1 72 602.341] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -48.8169] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 47.8207 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 44.2341] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -592.976] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 592.976 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +98.4879 581.021 Td +(if) 11.9551 Tj +-426 TJm +(BZ_OK) 29.8878 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(returned) 47.8205 Tj +98.4879 569.066 Td +(no) 11.9551 Tj +-426 TJm +(specific) 47.8205 Tj +-426 TJm +(action) 35.8654 Tj +-426 TJm +(required) 47.8205 Tj +-426 TJm +(in) 11.9551 Tj +-426 TJm +(case) 23.9102 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(error) 29.8878 Tj +[1 0 0 1 72 553.524] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -543.562] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 522.903 Td +/F122_0 17.2154 Tf +(3.3.5.) 43.0729 Tj +[1 0 0 1 119.858 522.903] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -522.903] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 522.903 Td +/F392_0 17.2154 Tf +(BZ2_bzDecompress) 165.268 Tj +[1 0 0 1 285.126 522.903] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -213.126 -2.3327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -511.206] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 511.206 Td +/F134_0 9.9626 Tf +(int) 17.9327 Tj +-426 TJm +(BZ2_bzDecompress) 95.641 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(bz_stream) 53.798 Tj +280.326 509.462 Td +(*) 5.97756 Tj +286.303 511.206 Td +(strm) 23.9102 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 495.664] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -485.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 473.746 Td +/F130_0 9.9626 Tf +(Pro) 13.8381 Tj +15 TJm +(vides) 21.031 Tj +-301 TJm +(more) 20.4731 Tj +-302 TJm +(input) 20.4831 Tj +-301 TJm +(and/out) 29.8878 Tj +-302 TJm +(output) 25.4644 Tj +-301 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-301 TJm +(space) 22.1269 Tj +-302 TJm +(for) 11.6164 Tj +-301 TJm +(the) 12.1743 Tj +-302 TJm +(library) 26.5603 Tj +65 TJm +(.) 2.49065 Tj +-928 TJm +(The) 15.4918 Tj +-301 TJm +(caller) 22.1269 Tj +-302 TJm +(maintains) 38.7446 Tj +-301 TJm +(input) 20.4831 Tj +-302 TJm +(and) 14.386 Tj +-301 TJm +(output) 25.4644 Tj +-301 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fers,) 17.4246 Tj +-315 TJm +(and) 14.386 Tj +72 461.791 Td +(uses) 17.1556 Tj +[1 0 0 1 91.6461 461.791] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -91.6461 -461.791] cm +[1 0 0 1 0 0] Tm +0 0 Td +91.6461 461.791 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 187.287 461.791] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -187.287 -461.791] cm +[1 0 0 1 0 0] Tm +0 0 Td +189.778 461.791 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-250 TJm +(transfer) 30.4258 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(between) 33.1954 Tj +-250 TJm +(them.) 22.4159 Tj +[1 0 0 1 72 460.257] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -450.294] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 439.873 Td +/F130_0 9.9626 Tf +(Before) 27.1082 Tj +-498 TJm +(each) 18.2515 Tj +-499 TJm +(call) 14.386 Tj +-498 TJm +(to) 7.7509 Tj +[1 0 0 1 159.356 439.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -159.356 -439.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +159.356 439.873 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 254.997 439.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -254.997 -439.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +254.997 439.873 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 263.071 439.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -263.071 -439.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +263.071 439.873 Td +/F134_0 9.9626 Tf +(next_in) 41.8429 Tj +[1 0 0 1 304.914 439.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -304.914 -439.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +309.879 439.873 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-498 TJm +(point) 20.4831 Tj +-499 TJm +(at) 7.193 Tj +-498 TJm +(the) 12.1743 Tj +-498 TJm +(compressed) 47.0334 Tj +-499 TJm +(data,) 19.0883 Tj +-560 TJm +(and) 14.386 Tj +[1 0 0 1 492.179 439.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -492.179 -439.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +492.179 439.873 Td +/F134_0 9.9626 Tf +(avail_in) 47.8205 Tj +[1 0 0 1 540 439.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -439.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 427.918 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-308 TJm +(indicate) 31.5416 Tj +-308 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-309 TJm +(man) 17.1556 Tj +15 TJm +(y) 4.9813 Tj +-308 TJm +(bytes) 21.031 Tj +-308 TJm +(the) 12.1743 Tj +-308 TJm +(library) 26.5603 Tj +-308 TJm +(may) 17.1556 Tj +-309 TJm +(read.) 19.6363 Tj +[1 0 0 1 294.955 427.918] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -294.955 -427.918] cm +[1 0 0 1 0 0] Tm +0 0 Td +294.955 427.918 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 390.597 427.918] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -390.597 -427.918] cm +[1 0 0 1 0 0] Tm +0 0 Td +393.667 427.918 Td +/F130_0 9.9626 Tf +(updates) 30.4357 Tj +[1 0 0 1 427.173 427.918] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -427.173 -427.918] cm +[1 0 0 1 0 0] Tm +0 0 Td +427.173 427.918 Td +/F134_0 9.9626 Tf +(next_in) 41.8429 Tj +[1 0 0 1 469.016 427.918] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -469.016 -427.918] cm +[1 0 0 1 0 0] Tm +0 0 Td +469.016 427.918 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 474.723 427.918] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -474.723 -427.918] cm +[1 0 0 1 0 0] Tm +0 0 Td +474.723 427.918 Td +/F134_0 9.9626 Tf +(avail_in) 47.8205 Tj +[1 0 0 1 522.543 427.918] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -522.543 -427.918] cm +[1 0 0 1 0 0] Tm +0 0 Td +525.614 427.918 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 72 415.963] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -415.963] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 415.963 Td +/F134_0 9.9626 Tf +(total_in) 47.8205 Tj +[1 0 0 1 119.821 415.963] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.821 -415.963] cm +[1 0 0 1 0 0] Tm +0 0 Td +122.311 415.963 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-250 TJm +(re\003ect) 24.8965 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(number) 30.4357 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(bytes) 21.031 Tj +-250 TJm +(it) 5.53921 Tj +-250 TJm +(has) 13.2801 Tj +-250 TJm +(read.) 19.6363 Tj +[1 0 0 1 72 413.806] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -403.843] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 394.045 Td +/F130_0 9.9626 Tf +(Similarly) 37.0908 Tj +65 TJm +(,) 2.49065 Tj +[1 0 0 1 113.799 394.045] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -113.799 -394.045] cm +[1 0 0 1 0 0] Tm +0 0 Td +113.799 394.045 Td +/F134_0 9.9626 Tf +(next_out) 47.8205 Tj +[1 0 0 1 161.62 394.045] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -161.62 -394.045] cm +[1 0 0 1 0 0] Tm +0 0 Td +164.41 394.045 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-280 TJm +(point) 20.4831 Tj +-280 TJm +(to) 7.7509 Tj +-280 TJm +(a) 4.42339 Tj +-280 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-280 TJm +(in) 7.7509 Tj +-281 TJm +(which) 24.3486 Tj +-280 TJm +(the) 12.1743 Tj +-280 TJm +(uncompressed) 56.996 Tj +-280 TJm +(output) 25.4644 Tj +-280 TJm +(is) 6.64505 Tj +-280 TJm +(to) 7.7509 Tj +-280 TJm +(be) 9.40469 Tj +-280 TJm +(placed,) 28.493 Tj +-288 TJm +(with) 17.7135 Tj +[1 0 0 1 486.202 394.045] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -486.202 -394.045] cm +[1 0 0 1 0 0] Tm +0 0 Td +486.202 394.045 Td +/F134_0 9.9626 Tf +(avail_out) 53.798 Tj +[1 0 0 1 540 394.045] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -394.045] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 382.09 Td +/F130_0 9.9626 Tf +(indicating) 39.8504 Tj +-525 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-524 TJm +(much) 22.1369 Tj +-525 TJm +(output) 25.4644 Tj +-524 TJm +(space) 22.1269 Tj +-525 TJm +(is) 6.64505 Tj +-525 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +25 TJm +(ailable.) 29.0509 Tj +[1 0 0 1 285.792 382.09] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -285.792 -382.09] cm +[1 0 0 1 0 0] Tm +0 0 Td +285.792 382.09 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 369.478 382.09] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -369.478 -382.09] cm +[1 0 0 1 0 0] Tm +0 0 Td +374.705 382.09 Td +/F130_0 9.9626 Tf +(updates) 30.4357 Tj +[1 0 0 1 410.367 382.09] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -410.367 -382.09] cm +[1 0 0 1 0 0] Tm +0 0 Td +410.367 382.09 Td +/F134_0 9.9626 Tf +(next_out) 47.8205 Tj +[1 0 0 1 458.188 382.09] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -458.188 -382.09] cm +[1 0 0 1 0 0] Tm +0 0 Td +458.188 382.09 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 466.589 382.09] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -466.589 -382.09] cm +[1 0 0 1 0 0] Tm +0 0 Td +466.589 382.09 Td +/F134_0 9.9626 Tf +(avail_out) 53.798 Tj +[1 0 0 1 520.387 382.09] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -520.387 -382.09] cm +[1 0 0 1 0 0] Tm +0 0 Td +525.614 382.09 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 72 370.135] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -370.135] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 370.135 Td +/F134_0 9.9626 Tf +(total_out) 53.798 Tj +[1 0 0 1 125.798 370.135] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -125.798 -370.135] cm +[1 0 0 1 0 0] Tm +0 0 Td +128.289 370.135 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-250 TJm +(re\003ect) 24.8965 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(number) 30.4357 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(bytes) 21.031 Tj +-250 TJm +(output.) 27.9551 Tj +[1 0 0 1 72 367.978] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -358.015] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 348.217 Td +/F130_0 9.9626 Tf +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-320 TJm +(may) 17.1556 Tj +-321 TJm +(pro) 13.2801 Tj +15 TJm +(vide) 17.1556 Tj +-320 TJm +(and) 14.386 Tj +-321 TJm +(remo) 20.4731 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-320 TJm +(as) 8.29885 Tj +-321 TJm +(little) 18.2714 Tj +-320 TJm +(or) 8.29885 Tj +-320 TJm +(as) 8.29885 Tj +-321 TJm +(much) 22.1369 Tj +-320 TJm +(data) 16.5977 Tj +-321 TJm +(as) 8.29885 Tj +-320 TJm +(you) 14.9439 Tj +-321 TJm +(lik) 10.5205 Tj +10 TJm +(e) 4.42339 Tj +-320 TJm +(on) 9.9626 Tj +-320 TJm +(each) 18.2515 Tj +-321 TJm +(call) 14.386 Tj +-320 TJm +(of) 8.29885 Tj +[1 0 0 1 407.816 348.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -407.816 -348.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +407.816 348.217 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 503.457 348.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -503.457 -348.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +503.457 348.217 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-1043 TJm +(In) 8.29885 Tj +-320 TJm +(the) 12.1743 Tj +72 336.262 Td +(limit,) 21.32 Tj +-295 TJm +(it) 5.53921 Tj +-286 TJm +(is) 6.64505 Tj +-287 TJm +(acceptable) 42.0422 Tj +-286 TJm +(to) 7.7509 Tj +-286 TJm +(supply) 26.5703 Tj +-286 TJm +(and) 14.386 Tj +-287 TJm +(remo) 20.4731 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-286 TJm +(data) 16.5977 Tj +-286 TJm +(one) 14.386 Tj +-286 TJm +(byte) 17.1556 Tj +-287 TJm +(at) 7.193 Tj +-286 TJm +(a) 4.42339 Tj +-286 TJm +(time,) 20.2042 Tj +-295 TJm +(although) 34.8691 Tj +-286 TJm +(this) 14.396 Tj +-287 TJm +(w) 7.193 Tj +10 TJm +(ould) 17.7135 Tj +-286 TJm +(be) 9.40469 Tj +-286 TJm +(terribly) 29.3299 Tj +-286 TJm +(inef) 15.4918 Tj +25 TJm +(\002cient.) 27.3972 Tj +-838 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +72 324.306 Td +(should) 26.5703 Tj +-250 TJm +(al) 7.193 Tj +10 TJm +(w) 7.193 Tj +10 TJm +(ays) 13.2801 Tj +-250 TJm +(ensure) 26.0024 Tj +-250 TJm +(that) 14.9439 Tj +-250 TJm +(at) 7.193 Tj +-250 TJm +(least) 18.2614 Tj +-250 TJm +(one) 14.386 Tj +-250 TJm +(byte) 17.1556 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(output) 25.4644 Tj +-250 TJm +(space) 22.1269 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +25 TJm +(ailable) 26.5603 Tj +-250 TJm +(at) 7.193 Tj +-250 TJm +(each) 18.2515 Tj +-250 TJm +(call.) 16.8766 Tj +[1 0 0 1 72 322.15] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -312.187] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 302.389 Td +/F130_0 9.9626 Tf +(Use) 15.4918 Tj +-250 TJm +(of) 8.29885 Tj +[1 0 0 1 100.772 302.389] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -100.772 -302.389] cm +[1 0 0 1 0 0] Tm +0 0 Td +100.772 302.389 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 196.413 302.389] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -196.413 -302.389] cm +[1 0 0 1 0 0] Tm +0 0 Td +198.904 302.389 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-250 TJm +(simpler) 29.8878 Tj +-250 TJm +(than) 17.1556 Tj +[1 0 0 1 260.064 302.389] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -260.064 -302.389] cm +[1 0 0 1 0 0] Tm +0 0 Td +260.064 302.389 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 343.75 302.389] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -343.75 -302.389] cm +[1 0 0 1 0 0] Tm +0 0 Td +343.75 302.389 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 300.232] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -290.269] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 280.471 Td +/F130_0 9.9626 Tf +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-346 TJm +(should) 26.5703 Tj +-347 TJm +(pro) 13.2801 Tj +15 TJm +(vide) 17.1556 Tj +-346 TJm +(input) 20.4831 Tj +-346 TJm +(and) 14.386 Tj +-346 TJm +(remo) 20.4731 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-347 TJm +(output) 25.4644 Tj +-346 TJm +(as) 8.29885 Tj +-346 TJm +(described) 38.1767 Tj +-346 TJm +(abo) 14.386 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e,) 6.91404 Tj +-371 TJm +(and) 14.386 Tj +-346 TJm +(repeatedly) 41.4942 Tj +-346 TJm +(call) 14.386 Tj +[1 0 0 1 422.638 280.471] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -422.638 -280.471] cm +[1 0 0 1 0 0] Tm +0 0 Td +422.638 280.471 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 518.279 280.471] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -518.279 -280.471] cm +[1 0 0 1 0 0] Tm +0 0 Td +521.729 280.471 Td +/F130_0 9.9626 Tf +(until) 18.2714 Tj +[1 0 0 1 72 268.516] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -268.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 268.516 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 149.709 268.516] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -149.709 -268.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +152.314 268.516 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-262 TJm +(returned.) 35.686 Tj +-344 TJm +(Appearance) 47.5714 Tj +-262 TJm +(of) 8.29885 Tj +[1 0 0 1 261.767 268.516] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -261.767 -268.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +261.767 268.516 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 339.475 268.516] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -339.475 -268.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +342.081 268.516 Td +/F130_0 9.9626 Tf +(denotes) 30.4357 Tj +-262 TJm +(that) 14.9439 Tj +[1 0 0 1 392.672 268.516] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -392.672 -268.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +392.672 268.516 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 488.313 268.516] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -488.313 -268.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +490.919 268.516 Td +/F130_0 9.9626 Tf +(has) 13.2801 Tj +-262 TJm +(detected) 33.1954 Tj +72 256.561 Td +(the) 12.1743 Tj +-212 TJm +(logical) 27.1182 Tj +-212 TJm +(end) 14.386 Tj +-211 TJm +(of) 8.29885 Tj +-212 TJm +(the) 12.1743 Tj +-212 TJm +(compressed) 47.0334 Tj +-212 TJm +(stream.) 29.0509 Tj +[1 0 0 1 237.858 256.561] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -237.858 -256.561] cm +[1 0 0 1 0 0] Tm +0 0 Td +237.858 256.561 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 333.499 256.561] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -333.499 -256.561] cm +[1 0 0 1 0 0] Tm +0 0 Td +335.609 256.561 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-212 TJm +(not) 12.7322 Tj +-212 TJm +(produce) 32.0895 Tj +[1 0 0 1 402.263 256.561] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -402.263 -256.561] cm +[1 0 0 1 0 0] Tm +0 0 Td +402.263 256.561 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 479.972 256.561] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -479.972 -256.561] cm +[1 0 0 1 0 0] Tm +0 0 Td +482.082 256.561 Td +/F130_0 9.9626 Tf +(until) 18.2714 Tj +-212 TJm +(all) 9.9626 Tj +-212 TJm +(output) 25.4644 Tj +72 244.605 Td +(data) 16.5977 Tj +-256 TJm +(has) 13.2801 Tj +-256 TJm +(been) 18.8094 Tj +-255 TJm +(placed) 26.0024 Tj +-256 TJm +(into) 15.5018 Tj +-256 TJm +(the) 12.1743 Tj +-256 TJm +(output) 25.4644 Tj +-256 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +40 TJm +(,) 2.49065 Tj +-257 TJm +(so) 8.85675 Tj +-256 TJm +(once) 18.8094 Tj +[1 0 0 1 278.978 244.605] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.978 -244.605] cm +[1 0 0 1 0 0] Tm +0 0 Td +278.978 244.605 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 356.687 244.605] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -356.687 -244.605] cm +[1 0 0 1 0 0] Tm +0 0 Td +359.236 244.605 Td +/F130_0 9.9626 Tf +(appears,) 32.9164 Tj +-257 TJm +(you) 14.9439 Tj +-256 TJm +(are) 12.1643 Tj +-256 TJm +(guaranteed) 43.7059 Tj +-256 TJm +(to) 7.7509 Tj +-256 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-255 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +25 TJm +(ailable) 26.5603 Tj +72 232.65 Td +(all) 9.9626 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(decompressed) 56.4381 Tj +-250 TJm +(output,) 27.9551 Tj +-250 TJm +(and) 14.386 Tj +[1 0 0 1 205.369 232.65] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -205.369 -232.65] cm +[1 0 0 1 0 0] Tm +0 0 Td +205.369 232.65 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressEnd) 113.574 Tj +[1 0 0 1 318.943 232.65] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -318.943 -232.65] cm +[1 0 0 1 0 0] Tm +0 0 Td +321.433 232.65 Td +/F130_0 9.9626 Tf +(can) 13.8281 Tj +-250 TJm +(safely) 23.7907 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(called.) 26.2813 Tj +[1 0 0 1 72 230.493] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -220.531] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 210.732 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +-250 TJm +(case) 17.1456 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(an) 9.40469 Tj +-250 TJm +(error) 19.3573 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alue,) 19.0883 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(should) 26.5703 Tj +-250 TJm +(call) 14.386 Tj +[1 0 0 1 261.259 210.732] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -261.259 -210.732] cm +[1 0 0 1 0 0] Tm +0 0 Td +261.259 210.732 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressEnd) 113.574 Tj +[1 0 0 1 374.833 210.732] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -374.833 -210.732] cm +[1 0 0 1 0 0] Tm +0 0 Td +377.323 210.732 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-250 TJm +(clean) 21.0211 Tj +-250 TJm +(up) 9.9626 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(release) 27.6562 Tj +-250 TJm +(memory) 33.2053 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 208.576] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -198.613] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 188.815 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues:) 23.2427 Tj +[1 0 0 1 72 188.715] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -137.863] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(17) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 21 21 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -200.882] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 179.328 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 175.741] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -711.631] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 711.631 Td +/F134_0 9.9626 Tf +(BZ_PARAM_ERROR) 83.6858 Tj +98.4879 699.676 Td +(if) 11.9551 Tj +-426 TJm +(strm) 23.9102 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(strm->s) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +98.4879 687.721 Td +(or) 11.9551 Tj +-426 TJm +(strm->avail_out) 89.6634 Tj +-426 TJm +(<) 5.97756 Tj +-426 TJm +(1) 5.97756 Tj +90 675.766 Td +(BZ_DATA_ERROR) 77.7083 Tj +98.4879 663.811 Td +(if) 11.9551 Tj +-426 TJm +(a) 5.97756 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(integrity) 53.798 Tj +-426 TJm +(error) 29.8878 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(detected) 47.8205 Tj +-426 TJm +(in) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +-426 TJm +(stream) 35.8654 Tj +90 651.856 Td +(BZ_DATA_ERROR_MAGIC) 113.574 Tj +98.4879 639.9 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +-426 TJm +(stream) 35.8654 Tj +-426 TJm +(doesn't) 41.8429 Tj +-426 TJm +(begin) 29.8878 Tj +-426 TJm +(with) 23.9102 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(right) 29.8878 Tj +-426 TJm +(magic) 29.8878 Tj +-426 TJm +(bytes) 29.8878 Tj +90 627.945 Td +(BZ_MEM_ERROR) 71.7307 Tj +98.4879 615.99 Td +(if) 11.9551 Tj +-426 TJm +(there) 29.8878 Tj +-426 TJm +(wasn't) 35.8654 Tj +-426 TJm +(enough) 35.8654 Tj +-426 TJm +(memory) 35.8654 Tj +-426 TJm +(available) 53.798 Tj +90 604.035 Td +(BZ_STREAM_END) 77.7083 Tj +98.4879 592.08 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(logical) 41.8429 Tj +-426 TJm +(end) 17.9327 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(stream) 35.8654 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(detected) 47.8205 Tj +-426 TJm +(and) 17.9327 Tj +-426 TJm +(all) 17.9327 Tj +98.4879 580.125 Td +(output) 35.8654 Tj +-426 TJm +(in) 11.9551 Tj +-426 TJm +(has) 17.9327 Tj +-426 TJm +(been) 23.9102 Tj +-426 TJm +(consumed,) 53.798 Tj +-426 TJm +(eg) 11.9551 Tj +-426 TJm +(s-->avail_out) 77.7083 Tj +-426 TJm +(>) 5.97756 Tj +-426 TJm +(0) 5.97756 Tj +90 568.169 Td +(BZ_OK) 29.8878 Tj +98.4879 556.214 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 540.673] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -530.71] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 518.755 Td +/F130_0 9.9626 Tf +(Allo) 17.7135 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(able) 16.5977 Tj +-250 TJm +(ne) 9.40469 Tj +15 TJm +(xt) 7.7509 Tj +-250 TJm +(actions:) 30.9936 Tj +[1 0 0 1 72 518.655] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -60.7721] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 59.7758 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 56.1892] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -509.29] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 509.29 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +98.4879 497.335 Td +(if) 11.9551 Tj +-426 TJm +(BZ_OK) 29.8878 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(returned) 47.8205 Tj +90 485.38 Td +(BZ2_bzDecompressEnd) 113.574 Tj +98.4879 473.425 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 457.883] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -447.92] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 427.262 Td +/F122_0 17.2154 Tf +(3.3.6.) 43.0729 Tj +[1 0 0 1 119.858 427.262] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -427.262] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 427.262 Td +/F392_0 17.2154 Tf +(BZ2_bzDecompressEnd) 196.256 Tj +[1 0 0 1 316.114 427.262] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -244.114 -2.3326] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -415.564] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 415.564 Td +/F134_0 9.9626 Tf +(int) 17.9327 Tj +-426 TJm +(BZ2_bzDecompressEnd) 113.574 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(bz_stream) 53.798 Tj +298.259 413.821 Td +(*) 5.97756 Tj +304.236 415.564 Td +(strm) 23.9102 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 400.023] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -390.06] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 378.105 Td +/F130_0 9.9626 Tf +(Releases) 34.8591 Tj +-250 TJm +(all) 9.9626 Tj +-250 TJm +(memory) 33.2053 Tj +-250 TJm +(associated) 40.9463 Tj +-250 TJm +(with) 17.7135 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(decompression) 59.7656 Tj +-250 TJm +(stream.) 29.0509 Tj +[1 0 0 1 72 375.948] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -365.985] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 356.187 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues:) 23.2427 Tj +[1 0 0 1 72 356.087] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -60.7721] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 59.7758 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 56.1893] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -346.723] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 346.723 Td +/F134_0 9.9626 Tf +(BZ_PARAM_ERROR) 83.6858 Tj +98.4879 334.767 Td +(if) 11.9551 Tj +-426 TJm +(strm) 23.9102 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(strm->s) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +90 322.812 Td +(BZ_OK) 29.8878 Tj +98.4879 310.857 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 295.315] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -285.353] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 273.397 Td +/F130_0 9.9626 Tf +(Allo) 17.7135 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(able) 16.5977 Tj +-250 TJm +(ne) 9.40469 Tj +15 TJm +(xt) 7.7509 Tj +-250 TJm +(actions:) 30.9936 Tj +[1 0 0 1 72 273.298] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -263.933] cm +[1 0 0 1 0 0] Tm +0 0 Td +98.4879 263.933 Td +/F134_0 9.9626 Tf +(None.) 29.8878 Tj +[1 0 0 1 72 248.391] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -238.429] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 213.639 Td +/F122_0 20.6585 Tf +(3.4.) 34.4584 Tj +-278 TJm +(High-le) 70.0117 Tj +15 TJm +(vel) 28.7153 Tj +-278 TJm +(interface) 86.1046 Tj +[1 0 0 1 72 209.042] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -199.08] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 191.721 Td +/F130_0 9.9626 Tf +(This) 17.7135 Tj +-250 TJm +(interf) 21.579 Tj +10 TJm +(ace) 13.2702 Tj +-250 TJm +(pro) 13.2801 Tj +15 TJm +(vides) 21.031 Tj +-250 TJm +(functions) 37.0808 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(reading) 29.8778 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(writing) 28.782 Tj +[1 0 0 1 300.292 191.721] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -300.292 -191.721] cm +[1 0 0 1 0 0] Tm +0 0 Td +300.292 191.721 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 330.18 191.721] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -330.18 -191.721] cm +[1 0 0 1 0 0] Tm +0 0 Td +332.67 191.721 Td +/F130_0 9.9626 Tf +(format) 26.5603 Tj +-250 TJm +(\002les.) 19.0983 Tj +-620 TJm +(First,) 20.7621 Tj +-250 TJm +(some) 21.031 Tj +-250 TJm +(general) 29.3199 Tj +-250 TJm +(points.) 26.8492 Tj +[1 0 0 1 72 189.564] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -29.7236] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -159.84] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 159.84 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 159.84] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -159.84] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 159.84 Td +/F130_0 9.9626 Tf +(All) 12.7322 Tj +-332 TJm +(of) 8.29885 Tj +-331 TJm +(the) 12.1743 Tj +-332 TJm +(functions) 37.0808 Tj +-332 TJm +(tak) 12.1743 Tj +10 TJm +(e) 4.42339 Tj +-331 TJm +(an) 9.40469 Tj +[1 0 0 1 202.958 159.84] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -202.958 -159.84] cm +[1 0 0 1 0 0] Tm +0 0 Td +202.958 159.84 Td +/F134_0 9.9626 Tf +(int) 17.9327 Tj +220.891 158.097 Td +(*) 5.97756 Tj +[1 0 0 1 226.868 159.84] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -226.868 -159.84] cm +[1 0 0 1 0 0] Tm +0 0 Td +230.172 159.84 Td +/F130_0 9.9626 Tf +(\002rst) 15.5018 Tj +-332 TJm +(ar) 7.74094 Tj +18 TJm +(gument,) 32.3785 Tj +[1 0 0 1 292.426 159.84] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -292.426 -159.84] cm +[1 0 0 1 0 0] Tm +0 0 Td +292.426 159.84 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 334.269 159.84] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -334.269 -159.84] cm +[1 0 0 1 0 0] Tm +0 0 Td +334.269 159.84 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-1110 TJm +(After) 21.0211 Tj +-332 TJm +(each) 18.2515 Tj +-331 TJm +(call,) 16.8766 Tj +[1 0 0 1 414.083 159.84] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -414.083 -159.84] cm +[1 0 0 1 0 0] Tm +0 0 Td +414.083 159.84 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 455.926 159.84] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -455.926 -159.84] cm +[1 0 0 1 0 0] Tm +0 0 Td +459.23 159.84 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-332 TJm +(be) 9.40469 Tj +-331 TJm +(consulted) 38.1866 Tj +86.944 147.885 Td +(\002rst) 15.5018 Tj +-349 TJm +(to) 7.7509 Tj +-349 TJm +(determine) 39.8404 Tj +-348 TJm +(the) 12.1743 Tj +-349 TJm +(outcome) 34.3112 Tj +-349 TJm +(of) 8.29885 Tj +-349 TJm +(the) 12.1743 Tj +-348 TJm +(call.) 16.8766 Tj +-1213 TJm +(If) 6.63509 Tj +[1 0 0 1 280.386 147.885] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -280.386 -147.885] cm +[1 0 0 1 0 0] Tm +0 0 Td +280.386 147.885 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 322.229 147.885] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -322.229 -147.885] cm +[1 0 0 1 0 0] Tm +0 0 Td +325.704 147.885 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +[1 0 0 1 335.824 147.885] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -335.824 -147.885] cm +[1 0 0 1 0 0] Tm +0 0 Td +335.824 147.885 Td +/F134_0 9.9626 Tf +(BZ_OK) 29.8878 Tj +[1 0 0 1 365.711 147.885] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -365.711 -147.885] cm +[1 0 0 1 0 0] Tm +0 0 Td +365.711 147.885 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-349 TJm +(the) 12.1743 Tj +-349 TJm +(call) 14.386 Tj +-348 TJm +(completed) 41.5042 Tj +-349 TJm +(successfully) 48.6972 Tj +65 TJm +(,) 2.49065 Tj +-374 TJm +(and) 14.386 Tj +-348 TJm +(only) 17.7135 Tj +86.944 135.93 Td +(then) 17.1556 Tj +-271 TJm +(should) 26.5703 Tj +-270 TJm +(the) 12.1743 Tj +-271 TJm +(return) 23.7907 Tj +-270 TJm +(v) 4.9813 Tj +25 TJm +(alue) 16.5977 Tj +-271 TJm +(of) 8.29885 Tj +-271 TJm +(the) 12.1743 Tj +-270 TJm +(function) 33.2053 Tj +-271 TJm +(\(if) 9.40469 Tj +-270 TJm +(an) 9.40469 Tj +15 TJm +(y\)) 8.29885 Tj +-271 TJm +(be) 9.40469 Tj +-271 TJm +(cons) 18.2614 Tj +1 TJm +(u) 4.9813 Tj +-1 TJm +(l) 2.7696 Tj +1 TJm +(ted.) 14.6649 Tj +-744 TJm +(If) 6.63509 Tj +[1 0 0 1 365.077 135.93] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -365.077 -135.93] cm +[1 0 0 1 0 0] Tm +0 0 Td +365.077 135.93 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 406.92 135.93] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -406.92 -135.93] cm +[1 0 0 1 0 0] Tm +0 0 Td +409.616 135.93 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +[1 0 0 1 418.956 135.93] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -418.956 -135.93] cm +[1 0 0 1 0 0] Tm +0 0 Td +418.956 135.93 Td +/F134_0 9.9626 Tf +(BZ_IO_ERROR) 65.7532 Tj +[1 0 0 1 484.71 135.93] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -484.71 -135.93] cm +[1 0 0 1 0 0] Tm +0 0 Td +484.71 135.93 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-271 TJm +(there) 19.9152 Tj +-270 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-271 TJm +(an) 9.40469 Tj +86.944 123.975 Td +(error) 19.3573 Tj +-246 TJm +(reading/writing) 61.4294 Tj +-245 TJm +(the) 12.1743 Tj +-246 TJm +(underlying) 43.1679 Tj +-246 TJm +(compressed) 47.0334 Tj +-245 TJm +(\002le,) 15.2229 Tj +-247 TJm +(and) 14.386 Tj +-245 TJm +(you) 14.9439 Tj +-246 TJm +(should) 26.5703 Tj +-246 TJm +(then) 17.1556 Tj +-245 TJm +(consult) 28.782 Tj +[1 0 0 1 414.096 123.975] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -414.096 -123.975] cm +[1 0 0 1 0 0] Tm +0 0 Td +414.096 123.975 Td +/F134_0 9.9626 Tf +(errno) 29.8878 Tj +[1 0 0 1 443.984 123.975] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -443.984 -123.975] cm +[1 0 0 1 0 0] Tm +0 0 Td +446.432 123.975 Td +/F130_0 9.9626 Tf +(/) 2.7696 Tj +[1 0 0 1 451.649 123.975] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -451.649 -123.975] cm +[1 0 0 1 0 0] Tm +0 0 Td +451.649 123.975 Td +/F134_0 9.9626 Tf +(perror) 35.8654 Tj +[1 0 0 1 487.514 123.975] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -487.514 -123.975] cm +[1 0 0 1 0 0] Tm +0 0 Td +489.962 123.975 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-246 TJm +(determine) 39.8404 Tj +86.944 112.02 Td +(the) 12.1743 Tj +-356 TJm +(cause) 22.1269 Tj +-356 TJm +(of) 8.29885 Tj +-355 TJm +(the) 12.1743 Tj +-356 TJm +(dif) 11.0684 Tj +25 TJm +(\002culty) 25.4644 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 206.528 112.02] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -206.528 -112.02] cm +[1 0 0 1 0 0] Tm +0 0 Td +206.528 112.02 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 248.371 112.02] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -248.371 -112.02] cm +[1 0 0 1 0 0] Tm +0 0 Td +251.916 112.02 Td +/F130_0 9.9626 Tf +(may) 17.1556 Tj +-356 TJm +(also) 16.0497 Tj +-356 TJm +(be) 9.40469 Tj +-355 TJm +(set) 11.0684 Tj +-356 TJm +(to) 7.7509 Tj +-356 TJm +(v) 4.9813 Tj +25 TJm +(arious) 24.3486 Tj +-356 TJm +(other) 20.4731 Tj +-356 TJm +(v) 4.9813 Tj +25 TJm +(alues;) 23.2427 Tj +-408 TJm +(precise) 28.2141 Tj +-356 TJm +(details) 26.0123 Tj +-356 TJm +(are) 12.1643 Tj +-356 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(en) 9.40469 Tj +-356 TJm +(on) 9.9626 Tj +-356 TJm +(a) 4.42339 Tj +86.944 100.064 Td +(per) 12.7222 Tj +20 TJm +(-function) 36.5229 Tj +-250 TJm +(basis) 19.9252 Tj +-250 TJm +(belo) 17.1556 Tj +25 TJm +(w) 7.193 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 186.839 100.064] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -114.838 -49.2126] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(18) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 22 22 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -31.5168] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 710.037 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 710.037 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +[1 0 0 1 95.9576 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -95.9576 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +95.9576 710.037 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 137.801 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -137.801 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +140.179 710.037 Td +/F130_0 9.9626 Tf +(indicates) 35.417 Tj +-239 TJm +(an) 9.40469 Tj +-238 TJm +(error) 19.3573 Tj +-239 TJm +(\(ie,) 13.0012 Tj +-241 TJm +(an) 9.40469 Tj +15 TJm +(ything) 25.4644 Tj +-239 TJm +(e) 4.42339 Tj +15 TJm +(xcept) 21.579 Tj +[1 0 0 1 292.225 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -292.225 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +292.225 710.037 Td +/F134_0 9.9626 Tf +(BZ_OK) 29.8878 Tj +[1 0 0 1 322.113 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -322.113 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +324.492 710.037 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 341.256 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -341.256 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +341.256 710.037 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 418.965 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -418.965 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +418.965 710.037 Td +/F130_0 9.9626 Tf +(\),) 5.8082 Tj +-239 TJm +(you) 14.9439 Tj +-239 TJm +(should) 26.5703 Tj +-238 TJm +(immediately) 49.813 Tj +-239 TJm +(call) 14.386 Tj +[1 0 0 1 86.944 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 698.082 Td +/F134_0 9.9626 Tf +(BZ2_bzReadClose) 89.6634 Tj +[1 0 0 1 176.608 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -176.608 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +179.343 698.082 Td +/F130_0 9.9626 Tf +(\(or) 11.6164 Tj +[1 0 0 1 193.695 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -193.695 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +193.695 698.082 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteClose) 95.641 Tj +[1 0 0 1 289.337 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -289.337 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +289.337 698.082 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-281 TJm +(depending) 41.5042 Tj +-274 TJm +(on) 9.9626 Tj +-275 TJm +(whether) 32.0895 Tj +-274 TJm +(you) 14.9439 Tj +-275 TJm +(are) 12.1643 Tj +-275 TJm +(attempting) 42.62 Tj +-274 TJm +(to) 7.7509 Tj +-275 TJm +(read) 17.1456 Tj +-274 TJm +(or) 8.29885 Tj +-275 TJm +(to) 7.7509 Tj +-274 TJm +(write\)) 23.7907 Tj +86.944 686.127 Td +(to) 7.7509 Tj +-242 TJm +(free) 15.4819 Tj +-242 TJm +(up) 9.9626 Tj +-241 TJm +(all) 9.9626 Tj +-242 TJm +(resources) 37.6188 Tj +-242 TJm +(associated) 40.9463 Tj +-242 TJm +(wi) 9.9626 Tj +1 TJm +(th) 7.7509 Tj +-242 TJm +(the) 12.1743 Tj +-242 TJm +(stream.) 29.0509 Tj +-614 TJm +(Once) 21.0211 Tj +-242 TJm +(an) 9.40469 Tj +-242 TJm +(error) 19.3573 Tj +-242 TJm +(has) 13.2801 Tj +-242 TJm +(been) 18.8094 Tj +-241 TJm +(indicated,) 39.0135 Tj +-244 TJm +(beha) 18.8094 Tj +20 TJm +(viour) 21.031 Tj +-241 TJm +(of) 8.29885 Tj +-242 TJm +(all) 9.9626 Tj +-242 TJm +(calls) 18.2614 Tj +-242 TJm +(e) 4.42339 Tj +15 TJm +(xcept) 21.579 Tj +[1 0 0 1 86.944 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 674.172 Td +/F134_0 9.9626 Tf +(BZ2_bzReadClose) 89.6634 Tj +[1 0 0 1 176.608 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -176.608 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +179.705 674.172 Td +/F130_0 9.9626 Tf +(\() 3.31755 Tj +[1 0 0 1 183.022 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -183.022 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +183.022 674.172 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteClose) 95.641 Tj +[1 0 0 1 278.664 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.664 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +278.664 674.172 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +-311 TJm +(is) 6.64505 Tj +-311 TJm +(unde\002ned.) 41.7831 Tj +-985 TJm +(The) 15.4918 Tj +-311 TJm +(implication) 45.3896 Tj +-310 TJm +(is) 6.64505 Tj +-311 TJm +(that) 14.9439 Tj +-311 TJm +(\(1\)) 11.6164 Tj +[1 0 0 1 455.988 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -455.988 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +455.988 674.172 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 497.831 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -497.831 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +500.928 674.172 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-311 TJm +(be) 9.40469 Tj +86.944 662.217 Td +(check) 23.2328 Tj +10 TJm +(ed) 9.40469 Tj +-291 TJm +(after) 18.2515 Tj +-291 TJm +(each) 18.2515 Tj +-291 TJm +(call,) 16.8766 Tj +-301 TJm +(and) 14.386 Tj +-291 TJm +(\(2\)) 11.6164 Tj +-291 TJm +(if) 6.08715 Tj +[1 0 0 1 225.347 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -225.347 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +225.347 662.217 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 267.19 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -267.19 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +270.09 662.217 Td +/F130_0 9.9626 Tf +(indicates) 35.417 Tj +-291 TJm +(an) 9.40469 Tj +-291 TJm +(error) 19.3573 Tj +40 TJm +(,) 2.49065 Tj +[1 0 0 1 345.161 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -345.161 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +345.161 662.217 Td +/F134_0 9.9626 Tf +(BZ2_bzReadClose) 89.6634 Tj +[1 0 0 1 434.824 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -434.824 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +437.724 662.217 Td +/F130_0 9.9626 Tf +(\() 3.31755 Tj +[1 0 0 1 441.041 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -441.041 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +441.041 662.217 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteClose) 95.641 Tj +[1 0 0 1 536.683 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -536.683 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +536.683 662.217 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +86.944 650.262 Td +(should) 26.5703 Tj +-250 TJm +(then) 17.1556 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(called) 23.7907 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(clean) 21.0211 Tj +-250 TJm +(up.) 12.4533 Tj +[1 0 0 1 220.034 650.261] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -148.034 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -628.344] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 628.344 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 628.344] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -628.344] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 628.344 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +[1 0 0 1 106.362 628.344] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -106.362 -628.344] cm +[1 0 0 1 0 0] Tm +0 0 Td +106.362 628.344 Td +/F134_0 9.9626 Tf +(FILE) 23.9102 Tj +130.273 626.6 Td +(*) 5.97756 Tj +[1 0 0 1 136.25 628.344] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -136.25 -628.344] cm +[1 0 0 1 0 0] Tm +0 0 Td +140.177 628.344 Td +/F130_0 9.9626 Tf +(ar) 7.74094 Tj +18 TJm +(guments) 33.7633 Tj +-394 TJm +(passed) 26.5603 Tj +-394 TJm +(to) 7.7509 Tj +[1 0 0 1 227.592 628.344] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -227.592 -628.344] cm +[1 0 0 1 0 0] Tm +0 0 Td +227.592 628.344 Td +/F134_0 9.9626 Tf +(BZ2_bzReadOpen) 83.6858 Tj +[1 0 0 1 311.278 628.344] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -311.278 -628.344] cm +[1 0 0 1 0 0] Tm +0 0 Td +315.205 628.344 Td +/F130_0 9.9626 Tf +(/) 2.7696 Tj +[1 0 0 1 321.901 628.344] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -321.901 -628.344] cm +[1 0 0 1 0 0] Tm +0 0 Td +321.901 628.344 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteOpen) 89.6634 Tj +[1 0 0 1 411.565 628.344] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -411.565 -628.344] cm +[1 0 0 1 0 0] Tm +0 0 Td +415.491 628.344 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-394 TJm +(be) 9.40469 Tj +-394 TJm +(set) 11.0684 Tj +-394 TJm +(to) 7.7509 Tj +-394 TJm +(binary) 25.4544 Tj +-395 TJm +(mode.) 24.6275 Tj +86.944 616.389 Td +(Most) 20.4831 Tj +-229 TJm +(Unix) 19.9252 Tj +-229 TJm +(systems) 31.5516 Tj +-228 TJm +(will) 15.5018 Tj +-229 TJm +(do) 9.9626 Tj +-229 TJm +(this) 14.396 Tj +-229 TJm +(by) 9.9626 Tj +-229 TJm +(def) 12.7222 Tj +10 TJm +(ault,) 17.4346 Tj +-233 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-229 TJm +(other) 20.4731 Tj +-229 TJm +(platforms,) 40.6773 Tj +-233 TJm +(including) 37.6387 Tj +-229 TJm +(W) 9.40469 Tj +40 TJm +(indo) 17.7135 Tj +25 TJm +(ws) 11.0684 Tj +-228 TJm +(and) 14.386 Tj +-229 TJm +(Mac,) 20.1942 Tj +-233 TJm +(will) 15.5018 Tj +-229 TJm +(not.) 15.2229 Tj +-606 TJm +(If) 6.63509 Tj +-229 TJm +(you) 14.9439 Tj +-229 TJm +(omit) 18.2714 Tj +86.944 604.433 Td +(this,) 16.8866 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(may) 17.1556 Tj +-250 TJm +(encounter) 39.2825 Tj +-250 TJm +(problems) 37.0808 Tj +-250 TJm +(when) 21.579 Tj +-250 TJm +(mo) 12.7322 Tj +15 TJm +(ving) 17.7135 Tj +-250 TJm +(code) 18.8094 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(ne) 9.40469 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(platforms.) 40.6773 Tj +[1 0 0 1 372.66 604.433] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -300.66 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -582.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 582.516 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 582.516] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -582.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 582.516 Td +/F130_0 9.9626 Tf +(Memory) 34.3112 Tj +-348 TJm +(allocation) 39.2925 Tj +-348 TJm +(requests) 32.6474 Tj +-348 TJm +(are) 12.1643 Tj +-348 TJm +(handled) 31.5416 Tj +-348 TJm +(by) 9.9626 Tj +[1 0 0 1 267.67 582.516] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -267.67 -582.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +267.67 582.516 Td +/F134_0 9.9626 Tf +(malloc) 35.8654 Tj +[1 0 0 1 303.535 582.516] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -303.535 -582.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +307.003 582.516 Td +/F130_0 9.9626 Tf +(/) 2.7696 Tj +[1 0 0 1 313.241 582.516] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -313.241 -582.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +313.241 582.516 Td +/F134_0 9.9626 Tf +(free) 23.9102 Tj +[1 0 0 1 337.151 582.516] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -337.151 -582.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +337.151 582.516 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-1209 TJm +(At) 9.9626 Tj +-348 TJm +(present) 28.772 Tj +-348 TJm +(there) 19.9152 Tj +-348 TJm +(is) 6.64505 Tj +-348 TJm +(no) 9.9626 Tj +-348 TJm +(f) 3.31755 Tj +10 TJm +(acility) 24.9065 Tj +-348 TJm +(for) 11.6164 Tj +-348 TJm +(user) 16.5977 Tj +20 TJm +(-de\002ned) 32.6474 Tj +86.944 570.56 Td +(memory) 33.2053 Tj +-250 TJm +(allocators) 38.7346 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(\002le) 12.7322 Tj +-250 TJm +(I/O) 13.2801 Tj +-250 TJm +(functions) 37.0808 Tj +-250 TJm +(\(could) 25.4544 Tj +-250 TJm +(easily) 23.2427 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(added,) 26.2813 Tj +-250 TJm +(though\).) 33.4843 Tj +[1 0 0 1 387.165 570.56] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -315.165 -12.1195] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -548.478] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 529.977 Td +/F122_0 17.2154 Tf +(3.4.1.) 43.0729 Tj +[1 0 0 1 119.858 529.977] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -529.977] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 529.977 Td +/F392_0 17.2154 Tf +(BZ2_bzReadOpen) 144.609 Tj +[1 0 0 1 264.468 529.977] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -192.468 -2.3327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -72.7272] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 71.731 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 68.1444] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -518.279] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 518.279 Td +/F134_0 9.9626 Tf +(typedef) 41.8429 Tj +-426 TJm +(void) 23.9102 Tj +-426 TJm +(BZFILE;) 41.8429 Tj +90 494.369 Td +(BZFILE) 35.8654 Tj +130.109 492.625 Td +(*) 5.97756 Tj +136.087 494.369 Td +(BZ2_bzReadOpen\() 89.6634 Tj +-426 TJm +(int) 17.9327 Tj +252.171 492.625 Td +(*) 5.97756 Tj +258.149 494.369 Td +(bzerror,) 47.8205 Tj +-426 TJm +(FILE) 23.9102 Tj +338.368 492.625 Td +(*) 5.97756 Tj +344.346 494.369 Td +(f,) 11.9551 Tj +191.855 482.414 Td +(int) 17.9327 Tj +-426 TJm +(verbosity,) 59.7756 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(small,) 35.8654 Tj +191.855 470.458 Td +(void) 23.9102 Tj +220.01 468.715 Td +(*) 5.97756 Tj +225.987 470.458 Td +(unused,) 41.8429 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(nUnused) 41.8429 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 454.917] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -444.954] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 432.999 Td +/F130_0 9.9626 Tf +(Prepare) 30.4258 Tj +-290 TJm +(to) 7.7509 Tj +-289 TJm +(read) 17.1456 Tj +-290 TJm +(compressed) 47.0334 Tj +-290 TJm +(data) 16.5977 Tj +-289 TJm +(from) 19.3673 Tj +-290 TJm +(\002le) 12.7322 Tj +-289 TJm +(handle) 26.5603 Tj +[1 0 0 1 272.697 432.999] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -272.697 -432.999] cm +[1 0 0 1 0 0] Tm +0 0 Td +272.697 432.999 Td +/F134_0 9.9626 Tf +(f) 5.97756 Tj +[1 0 0 1 278.675 432.999] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.675 -432.999] cm +[1 0 0 1 0 0] Tm +0 0 Td +278.675 432.999 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 285.439 432.999] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -285.439 -432.999] cm +[1 0 0 1 0 0] Tm +0 0 Td +285.439 432.999 Td +/F134_0 9.9626 Tf +(f) 5.97756 Tj +[1 0 0 1 291.417 432.999] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -291.417 -432.999] cm +[1 0 0 1 0 0] Tm +0 0 Td +294.303 432.999 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-290 TJm +(refer) 18.7994 Tj +-289 TJm +(to) 7.7509 Tj +-290 TJm +(a) 4.42339 Tj +-290 TJm +(\002le) 12.7322 Tj +-289 TJm +(which) 24.3486 Tj +-290 TJm +(has) 13.2801 Tj +-289 TJm +(been) 18.8094 Tj +-290 TJm +(opened) 28.772 Tj +-290 TJm +(for) 11.6164 Tj +-289 TJm +(reading,) 32.3685 Tj +-300 TJm +(and) 14.386 Tj +72 421.044 Td +(for) 11.6164 Tj +-306 TJm +(which) 24.3486 Tj +-305 TJm +(the) 12.1743 Tj +-306 TJm +(error) 19.3573 Tj +-306 TJm +(indicator) 35.417 Tj +-305 TJm +(\() 3.31755 Tj +[1 0 0 1 193.457 421.044] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -193.457 -421.044] cm +[1 0 0 1 0 0] Tm +0 0 Td +193.457 421.044 Td +/F134_0 9.9626 Tf +(ferror\(f\)) 53.798 Tj +[1 0 0 1 247.255 421.044] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -247.255 -421.044] cm +[1 0 0 1 0 0] Tm +0 0 Td +247.255 421.044 Td +/F130_0 9.9626 Tf +(\)is) 9.9626 Tj +-306 TJm +(not) 12.7322 Tj +-305 TJm +(set.) 13.5591 Tj +-954 TJm +(If) 6.63509 Tj +[1 0 0 1 308.784 421.044] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -308.784 -421.044] cm +[1 0 0 1 0 0] Tm +0 0 Td +308.784 421.044 Td +/F134_0 9.9626 Tf +(small) 29.8878 Tj +[1 0 0 1 338.671 421.044] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -338.671 -421.044] cm +[1 0 0 1 0 0] Tm +0 0 Td +341.717 421.044 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-306 TJm +(1,) 7.47195 Tj +-319 TJm +(the) 12.1743 Tj +-306 TJm +(library) 26.5603 Tj +-306 TJm +(will) 15.5018 Tj +-305 TJm +(try) 11.0684 Tj +-306 TJm +(to) 7.7509 Tj +-306 TJm +(dec) 13.8281 Tj +1 TJm +(ompress) 33.2053 Tj +-306 TJm +(using) 21.589 Tj +-306 TJm +(less) 14.9439 Tj +72 409.089 Td +(memory) 33.2053 Tj +65 TJm +(,) 2.49065 Tj +-250 TJm +(at) 7.193 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(e) 4.42339 Tj +15 TJm +(xpense) 27.6661 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(speed.) 25.1755 Tj +[1 0 0 1 72 406.932] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -396.969] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 387.171 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-227 TJm +(reasons) 29.8778 Tj +-227 TJm +(e) 4.42339 Tj +15 TJm +(xplained) 34.3112 Tj +-228 TJm +(belo) 17.1556 Tj +25 TJm +(w) 7.193 Tj +65 TJm +(,) 2.49065 Tj +[1 0 0 1 189.193 387.171] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -189.193 -387.171] cm +[1 0 0 1 0 0] Tm +0 0 Td +189.193 387.171 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 248.969 387.171] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -248.969 -387.171] cm +[1 0 0 1 0 0] Tm +0 0 Td +251.232 387.171 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-227 TJm +(decompress) 47.0334 Tj +-227 TJm +(the) 12.1743 Tj +[1 0 0 1 332.732 387.171] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -332.732 -387.171] cm +[1 0 0 1 0 0] Tm +0 0 Td +332.732 387.171 Td +/F134_0 9.9626 Tf +(nUnused) 41.8429 Tj +[1 0 0 1 374.575 387.171] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -374.575 -387.171] cm +[1 0 0 1 0 0] Tm +0 0 Td +376.838 387.171 Td +/F130_0 9.9626 Tf +(bytes) 21.031 Tj +-227 TJm +(starting) 29.8878 Tj +-227 TJm +(at) 7.193 Tj +[1 0 0 1 441.74 387.171] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -441.74 -387.171] cm +[1 0 0 1 0 0] Tm +0 0 Td +441.74 387.171 Td +/F134_0 9.9626 Tf +(unused) 35.8654 Tj +[1 0 0 1 477.605 387.171] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -477.605 -387.171] cm +[1 0 0 1 0 0] Tm +0 0 Td +477.605 387.171 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-232 TJm +(before) 25.4445 Tj +-227 TJm +(starting) 29.8878 Tj +72 375.216 Td +(to) 7.7509 Tj +-280 TJm +(read) 17.1456 Tj +-279 TJm +(from) 19.3673 Tj +-280 TJm +(the) 12.1743 Tj +-279 TJm +(\002le) 12.7322 Tj +[1 0 0 1 155.094 375.215] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -155.094 -375.215] cm +[1 0 0 1 0 0] Tm +0 0 Td +155.094 375.215 Td +/F134_0 9.9626 Tf +(f) 5.97756 Tj +[1 0 0 1 161.072 375.215] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -161.072 -375.215] cm +[1 0 0 1 0 0] Tm +0 0 Td +161.072 375.215 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-797 TJm +(At) 9.9626 Tj +-280 TJm +(most) 19.3773 Tj +[1 0 0 1 206.414 375.215] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -206.414 -375.215] cm +[1 0 0 1 0 0] Tm +0 0 Td +206.414 375.215 Td +/F134_0 9.9626 Tf +(BZ_MAX_UNUSED) 77.7083 Tj +[1 0 0 1 284.122 375.215] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -284.122 -375.215] cm +[1 0 0 1 0 0] Tm +0 0 Td +286.907 375.215 Td +/F130_0 9.9626 Tf +(bytes) 21.031 Tj +-280 TJm +(may) 17.1556 Tj +-279 TJm +(be) 9.40469 Tj +-280 TJm +(supplied) 33.7633 Tj +-279 TJm +(lik) 10.5205 Tj +10 TJm +(e) 4.42339 Tj +-280 TJm +(this.) 16.8866 Tj +-797 TJm +(If) 6.63509 Tj +-279 TJm +(this) 14.396 Tj +-280 TJm +(f) 3.31755 Tj +10 TJm +(acility) 24.9065 Tj +-279 TJm +(is) 6.64505 Tj +-280 TJm +(not) 12.7322 Tj +-279 TJm +(required,) 35.686 Tj +72 363.26 Td +(you) 14.9439 Tj +-250 TJm +(should) 26.5703 Tj +-250 TJm +(pass) 17.1556 Tj +[1 0 0 1 138.141 363.26] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -138.141 -363.26] cm +[1 0 0 1 0 0] Tm +0 0 Td +138.141 363.26 Td +/F134_0 9.9626 Tf +(NULL) 23.9102 Tj +[1 0 0 1 162.052 363.26] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -162.052 -363.26] cm +[1 0 0 1 0 0] Tm +0 0 Td +164.542 363.26 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 181.419 363.26] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -181.419 -363.26] cm +[1 0 0 1 0 0] Tm +0 0 Td +181.419 363.26 Td +/F134_0 9.9626 Tf +(0) 5.97756 Tj +[1 0 0 1 187.397 363.26] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -187.397 -363.26] cm +[1 0 0 1 0 0] Tm +0 0 Td +189.887 363.26 Td +/F130_0 9.9626 Tf +(for) 11.6164 Tj +[1 0 0 1 203.994 363.26] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -203.994 -363.26] cm +[1 0 0 1 0 0] Tm +0 0 Td +203.994 363.26 Td +/F134_0 9.9626 Tf +(unused) 35.8654 Tj +[1 0 0 1 239.86 363.26] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -239.86 -363.26] cm +[1 0 0 1 0 0] Tm +0 0 Td +242.351 363.26 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +-250 TJm +(n) 4.9813 Tj +[1 0 0 1 264.208 363.26] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -264.208 -363.26] cm +[1 0 0 1 0 0] Tm +0 0 Td +264.208 363.26 Td +/F134_0 9.9626 Tf +(Unused) 35.8654 Tj +[1 0 0 1 300.074 363.26] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -300.074 -363.26] cm +[1 0 0 1 0 0] Tm +0 0 Td +302.565 363.26 Td +/F130_0 9.9626 Tf +(respecti) 30.9837 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ely) 12.1743 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 361.103] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -351.141] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 341.343 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(meaning) 34.3112 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(parameters) 43.7059 Tj +[1 0 0 1 196.631 341.343] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -196.631 -341.343] cm +[1 0 0 1 0 0] Tm +0 0 Td +196.631 341.343 Td +/F134_0 9.9626 Tf +(small) 29.8878 Tj +[1 0 0 1 226.519 341.343] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -226.519 -341.343] cm +[1 0 0 1 0 0] Tm +0 0 Td +229.01 341.343 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 245.887 341.343] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -245.887 -341.343] cm +[1 0 0 1 0 0] Tm +0 0 Td +245.887 341.343 Td +/F134_0 9.9626 Tf +(verbosity) 53.798 Tj +[1 0 0 1 299.685 341.343] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -299.685 -341.343] cm +[1 0 0 1 0 0] Tm +0 0 Td +299.685 341.343 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(see) 12.7222 Tj +[1 0 0 1 319.879 341.343] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -319.879 -341.343] cm +[1 0 0 1 0 0] Tm +0 0 Td +319.879 341.343 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressInit) 119.551 Tj +[1 0 0 1 439.431 341.343] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -439.431 -341.343] cm +[1 0 0 1 0 0] Tm +0 0 Td +439.431 341.343 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 339.186] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -329.223] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 319.425 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-402 TJm +(amount) 29.8878 Tj +-402 TJm +(of) 8.29885 Tj +-402 TJm +(memory) 33.2053 Tj +-402 TJm +(needed) 28.2141 Tj +-402 TJm +(to) 7.7509 Tj +-402 TJm +(decompress) 47.0334 Tj +-402 TJm +(a) 4.42339 Tj +-401 TJm +(\002le) 12.7322 Tj +-402 TJm +(cannot) 26.5603 Tj +-402 TJm +(be) 9.40469 Tj +-402 TJm +(determined) 44.8217 Tj +-402 TJm +(until) 18.2714 Tj +-402 TJm +(the) 12.1743 Tj +-402 TJm +(\002le') 16.0497 Tj +55 TJm +(s) 3.87545 Tj +-402 TJm +(header) 26.5503 Tj +-402 TJm +(has) 13.2801 Tj +-402 TJm +(been) 18.8094 Tj +-402 TJm +(read.) 19.6363 Tj +72 307.47 Td +(So) 10.5205 Tj +-492 TJm +(it) 5.53921 Tj +-491 TJm +(is) 6.64505 Tj +-492 TJm +(possible) 32.6574 Tj +-492 TJm +(that) 14.9439 Tj +[1 0 0 1 166.797 307.47] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -166.797 -307.47] cm +[1 0 0 1 0 0] Tm +0 0 Td +166.797 307.47 Td +/F134_0 9.9626 Tf +(BZ2_bzReadOpen) 83.6858 Tj +[1 0 0 1 250.483 307.47] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -250.483 -307.47] cm +[1 0 0 1 0 0] Tm +0 0 Td +255.381 307.47 Td +/F130_0 9.9626 Tf +(returns) 27.6661 Tj +[1 0 0 1 287.945 307.47] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -287.945 -307.47] cm +[1 0 0 1 0 0] Tm +0 0 Td +287.945 307.47 Td +/F134_0 9.9626 Tf +(BZ_OK) 29.8878 Tj +[1 0 0 1 317.833 307.47] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -317.833 -307.47] cm +[1 0 0 1 0 0] Tm +0 0 Td +322.729 307.47 Td +/F130_0 9.9626 Tf +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-492 TJm +(a) 4.42339 Tj +-491 TJm +(subsequent) 44.2738 Tj +-492 TJm +(call) 14.386 Tj +-492 TJm +(of) 8.29885 Tj +[1 0 0 1 431.135 307.47] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -431.135 -307.47] cm +[1 0 0 1 0 0] Tm +0 0 Td +431.135 307.47 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 490.911 307.47] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -490.911 -307.47] cm +[1 0 0 1 0 0] Tm +0 0 Td +495.81 307.47 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-492 TJm +(return) 23.7907 Tj +[1 0 0 1 72 295.514] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -295.514] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 295.514 Td +/F134_0 9.9626 Tf +(BZ_MEM_ERROR) 71.7307 Tj +[1 0 0 1 143.731 295.514] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -143.731 -295.514] cm +[1 0 0 1 0 0] Tm +0 0 Td +143.731 295.514 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 294.204] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -284.242] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 273.597 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(assignments) 48.7072 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 169.144 273.597] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -169.144 -273.597] cm +[1 0 0 1 0 0] Tm +0 0 Td +169.144 273.597 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 210.987 273.597] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.987 -273.597] cm +[1 0 0 1 0 0] Tm +0 0 Td +210.987 273.597 Td +/F130_0 9.9626 Tf +(:) 2.7696 Tj +[1 0 0 1 72 271.44] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -168.369] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 167.372 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 163.786] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -262.075] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 262.075 Td +/F134_0 9.9626 Tf +(BZ_CONFIG_ERROR) 89.6634 Tj +98.4879 250.12 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(library) 41.8429 Tj +-426 TJm +(has) 17.9327 Tj +-426 TJm +(been) 23.9102 Tj +-426 TJm +(mis-compiled) 71.7307 Tj +90 238.165 Td +(BZ_PARAM_ERROR) 83.6858 Tj +98.4879 226.209 Td +(if) 11.9551 Tj +-426 TJm +(f) 5.97756 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +98.4879 214.254 Td +(or) 11.9551 Tj +-426 TJm +(small) 29.8878 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(neither) 41.8429 Tj +-426 TJm +(0) 5.97756 Tj +-426 TJm +(nor) 17.9327 Tj +-426 TJm +(1) 5.97756 Tj +98.4879 202.299 Td +(or) 11.9551 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(unused) 35.8654 Tj +-426 TJm +(==) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +-426 TJm +(&&) 11.9551 Tj +-426 TJm +(nUnused) 41.8429 Tj +-426 TJm +(!=) 11.9551 Tj +-426 TJm +(0) 5.97756 Tj +-426 TJm +(\)) 5.97756 Tj +98.4879 190.344 Td +(or) 11.9551 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(unused) 35.8654 Tj +-426 TJm +(!=) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +-426 TJm +(&&) 11.9551 Tj +-426 TJm +(!\(0) 17.9327 Tj +-426 TJm +(<=) 11.9551 Tj +-426 TJm +(nUnused) 41.8429 Tj +-426 TJm +(<=) 11.9551 Tj +-426 TJm +(BZ_MAX_UNUSED\)) 83.6858 Tj +-426 TJm +(\)) 5.97756 Tj +90 178.389 Td +(BZ_IO_ERROR) 65.7532 Tj +98.4879 166.434 Td +(if) 11.9551 Tj +-426 TJm +(ferror\(f\)) 53.798 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(nonzero) 41.8429 Tj +90 154.478 Td +(BZ_MEM_ERROR) 71.7307 Tj +98.4879 142.523 Td +(if) 11.9551 Tj +-426 TJm +(insufficient) 71.7307 Tj +-426 TJm +(memory) 35.8654 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(available) 53.798 Tj +90 130.568 Td +(BZ_OK) 29.8878 Tj +98.4879 118.613 Td +(otherwise.) 59.7756 Tj +[1 0 0 1 72 103.071] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -93.1085] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 81.1533 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues:) 23.2427 Tj +[1 0 0 1 72 81.0538] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -30.202] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.9737] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -51.071] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 51.071 Td +/F130_0 9.9626 Tf +(19) 9.9626 Tj +[1 0 0 1 453.269 50.8519] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 23 23 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -81.33] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 59.7758 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 56.1892] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -711.631] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 711.631 Td +/F134_0 9.9626 Tf +(Pointer) 41.8429 Tj +-426 TJm +(to) 11.9551 Tj +-426 TJm +(an) 11.9551 Tj +-426 TJm +(abstract) 47.8205 Tj +-426 TJm +(BZFILE) 35.8654 Tj +98.4879 699.676 Td +(if) 11.9551 Tj +-426 TJm +(bzerror) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(BZ_OK) 29.8878 Tj +90 687.721 Td +(NULL) 23.9102 Tj +98.4879 675.766 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 660.224] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5493] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -650.261] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 638.306 Td +/F130_0 9.9626 Tf +(Allo) 17.7135 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(able) 16.5977 Tj +-250 TJm +(ne) 9.40469 Tj +15 TJm +(xt) 7.7509 Tj +-250 TJm +(actions:) 30.9936 Tj +[1 0 0 1 72 638.207] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -60.7721] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 59.7758 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 56.1893] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -628.842] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 628.842 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +98.4879 616.887 Td +(if) 11.9551 Tj +-426 TJm +(bzerror) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(BZ_OK) 29.8878 Tj +90 604.932 Td +(BZ2_bzClose) 65.7532 Tj +98.4879 592.976 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 577.435] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -567.472] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 546.813 Td +/F122_0 17.2154 Tf +(3.4.2.) 43.0729 Tj +[1 0 0 1 119.858 546.813] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -546.813] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 546.813 Td +/F392_0 17.2154 Tf +(BZ2_bzRead) 103.292 Tj +[1 0 0 1 223.15 546.813] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -151.15 -2.3326] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -535.116] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 535.116 Td +/F134_0 9.9626 Tf +(int) 17.9327 Tj +-426 TJm +(BZ2_bzRead) 59.7756 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(int) 17.9327 Tj +208.595 533.373 Td +(*) 5.97756 Tj +214.572 535.116 Td +(bzerror,) 47.8205 Tj +-426 TJm +(BZFILE) 35.8654 Tj +306.747 533.373 Td +(*) 5.97756 Tj +312.724 535.116 Td +(b,) 11.9551 Tj +-426 TJm +(void) 23.9102 Tj +357.077 533.373 Td +(*) 5.97756 Tj +363.055 535.116 Td +(buf,) 23.9102 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(len) 17.9327 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 519.574] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -509.612] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 497.656 Td +/F130_0 9.9626 Tf +(Reads) 24.3486 Tj +-285 TJm +(up) 9.9626 Tj +-284 TJm +(to) 7.7509 Tj +[1 0 0 1 122.569 497.656] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -122.569 -497.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +122.569 497.656 Td +/F134_0 9.9626 Tf +(len) 17.9327 Tj +[1 0 0 1 140.501 497.656] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -140.501 -497.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +143.337 497.656 Td +/F130_0 9.9626 Tf +(\(uncompressed\)) 63.6311 Tj +-285 TJm +(bytes) 21.031 Tj +-284 TJm +(from) 19.3673 Tj +-285 TJm +(the) 12.1743 Tj +-284 TJm +(compressed) 47.0334 Tj +-285 TJm +(\002le) 12.7322 Tj +[1 0 0 1 336.319 497.656] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -336.319 -497.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +336.319 497.656 Td +/F134_0 9.9626 Tf +(b) 5.97756 Tj +[1 0 0 1 342.296 497.656] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.296 -497.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +345.132 497.656 Td +/F130_0 9.9626 Tf +(into) 15.5018 Tj +-285 TJm +(the) 12.1743 Tj +-284 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +[1 0 0 1 405.205 497.656] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -405.205 -497.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +405.205 497.656 Td +/F134_0 9.9626 Tf +(buf) 17.9327 Tj +[1 0 0 1 423.137 497.656] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -423.137 -497.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +423.137 497.656 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-828 TJm +(If) 6.63509 Tj +-284 TJm +(the) 12.1743 Tj +-285 TJm +(read) 17.1456 Tj +-285 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-284 TJm +(successful,) 43.4369 Tj +[1 0 0 1 72 485.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -485.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 485.701 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 113.843 485.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -113.843 -485.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +117.36 485.701 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-353 TJm +(set) 11.0684 Tj +-353 TJm +(to) 7.7509 Tj +[1 0 0 1 153.374 485.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -153.374 -485.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +153.374 485.701 Td +/F134_0 9.9626 Tf +(BZ_OK) 29.8878 Tj +[1 0 0 1 183.262 485.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -183.262 -485.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +186.778 485.701 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +-353 TJm +(the) 12.1743 Tj +-353 TJm +(number) 30.4357 Tj +-353 TJm +(of) 8.29885 Tj +-353 TJm +(bytes) 21.031 Tj +-353 TJm +(read) 17.1456 Tj +-353 TJm +(is) 6.64505 Tj +-353 TJm +(returned.) 35.686 Tj +-1238 TJm +(If) 6.63509 Tj +-353 TJm +(the) 12.1743 Tj +-353 TJm +(logical) 27.1182 Tj +-353 TJm +(end-of-stream) 55.8802 Tj +-353 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-353 TJm +(detected,) 35.686 Tj +[1 0 0 1 72 473.746] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -473.746] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 473.746 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 113.843 473.746] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -113.843 -473.746] cm +[1 0 0 1 0 0] Tm +0 0 Td +116.795 473.746 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-296 TJm +(be) 9.40469 Tj +-297 TJm +(set) 11.0684 Tj +-296 TJm +(to) 7.7509 Tj +[1 0 0 1 172.329 473.746] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -172.329 -473.746] cm +[1 0 0 1 0 0] Tm +0 0 Td +172.329 473.746 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 250.037 473.746] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -250.037 -473.746] cm +[1 0 0 1 0 0] Tm +0 0 Td +250.037 473.746 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-296 TJm +(and) 14.386 Tj +-297 TJm +(the) 12.1743 Tj +-296 TJm +(number) 30.4357 Tj +-296 TJm +(of) 8.29885 Tj +-297 TJm +(bytes) 21.031 Tj +-296 TJm +(read) 17.1456 Tj +-296 TJm +(is) 6.64505 Tj +-296 TJm +(returned.) 35.686 Tj +-898 TJm +(All) 12.7322 Tj +-297 TJm +(other) 20.4731 Tj +[1 0 0 1 470 473.746] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -470 -473.746] cm +[1 0 0 1 0 0] Tm +0 0 Td +470 473.746 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 511.843 473.746] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -511.843 -473.746] cm +[1 0 0 1 0 0] Tm +0 0 Td +514.795 473.746 Td +/F130_0 9.9626 Tf +(v) 4.9813 Tj +25 TJm +(alues) 20.4731 Tj +72 461.791 Td +(denote) 26.5603 Tj +-250 TJm +(an) 9.40469 Tj +-250 TJm +(error) 19.3573 Tj +55 TJm +(.) 2.49065 Tj +[1 0 0 1 72 461.691] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -451.729] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 439.873 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 131.776 439.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -131.776 -439.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +134.224 439.873 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-246 TJm +(supply) 26.5703 Tj +[1 0 0 1 181.193 439.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -181.193 -439.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +181.193 439.873 Td +/F134_0 9.9626 Tf +(len) 17.9327 Tj +[1 0 0 1 199.126 439.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -199.126 -439.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +201.575 439.873 Td +/F130_0 9.9626 Tf +(bytes,) 23.5217 Tj +-247 TJm +(unless) 24.9065 Tj +-245 TJm +(the) 12.1743 Tj +-246 TJm +(logical) 27.1182 Tj +-246 TJm +(stream) 26.5603 Tj +-246 TJm +(end) 14.386 Tj +-245 TJm +(is) 6.64505 Tj +-246 TJm +(detected) 33.1954 Tj +-246 TJm +(or) 8.29885 Tj +-246 TJm +(an) 9.40469 Tj +-246 TJm +(error) 19.3573 Tj +-245 TJm +(occurs.) 28.493 Tj +-617 TJm +(Because) 33.1954 Tj +-246 TJm +(of) 8.29885 Tj +-246 TJm +(this,) 16.8866 Tj +-247 TJm +(it) 5.53921 Tj +72 427.918 Td +(is) 6.64505 Tj +-231 TJm +(possible) 32.6574 Tj +-231 TJm +(to) 7.7509 Tj +-231 TJm +(detect) 23.7907 Tj +-231 TJm +(the) 12.1743 Tj +-231 TJm +(stream) 26.5603 Tj +-231 TJm +(end) 14.386 Tj +-232 TJm +(by) 9.9626 Tj +-231 TJm +(observing) 39.2925 Tj +-231 TJm +(when) 21.579 Tj +-231 TJm +(the) 12.1743 Tj +-231 TJm +(number) 30.4357 Tj +-231 TJm +(of) 8.29885 Tj +-231 TJm +(bytes) 21.031 Tj +-231 TJm +(returned) 33.1954 Tj +-231 TJm +(is) 6.64505 Tj +-231 TJm +(less) 14.9439 Tj +-231 TJm +(than) 17.1556 Tj +-232 TJm +(the) 12.1743 Tj +-231 TJm +(number) 30.4357 Tj +-231 TJm +(requested.) 40.6673 Tj +72 415.963 Td +(Ne) 11.6164 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ertheless,) 37.3498 Tj +-309 TJm +(this) 14.396 Tj +-297 TJm +(is) 6.64505 Tj +-298 TJm +(re) 7.74094 Tj +15 TJm +(g) 4.9813 Tj +5 TJm +(arded) 22.1269 Tj +-297 TJm +(as) 8.29885 Tj +-297 TJm +(inadvisable;) 48.1492 Tj +-321 TJm +(you) 14.9439 Tj +-298 TJm +(should) 26.5703 Tj +-297 TJm +(instead) 28.224 Tj +-297 TJm +(check) 23.2328 Tj +[1 0 0 1 360.631 415.963] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -360.631 -415.963] cm +[1 0 0 1 0 0] Tm +0 0 Td +360.631 415.963 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 402.475 415.963] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -402.475 -415.963] cm +[1 0 0 1 0 0] Tm +0 0 Td +405.437 415.963 Td +/F130_0 9.9626 Tf +(after) 18.2515 Tj +-297 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ery) 12.7222 Tj +-298 TJm +(call) 14.386 Tj +-297 TJm +(and) 14.386 Tj +-297 TJm +(w) 7.193 Tj +10 TJm +(atch) 16.5977 Tj +-298 TJm +(out) 12.7322 Tj +-297 TJm +(for) 11.6164 Tj +[1 0 0 1 72 404.008] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -404.008] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 404.008 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 149.709 404.008] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -149.709 -404.008] cm +[1 0 0 1 0 0] Tm +0 0 Td +149.709 404.008 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 402.698] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -392.735] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 382.09 Td +/F130_0 9.9626 Tf +(Internally) 38.7346 Tj +65 TJm +(,) 2.49065 Tj +[1 0 0 1 117.541 382.09] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -117.541 -382.09] cm +[1 0 0 1 0 0] Tm +0 0 Td +117.541 382.09 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 177.317 382.09] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -177.317 -382.09] cm +[1 0 0 1 0 0] Tm +0 0 Td +181.786 382.09 Td +/F130_0 9.9626 Tf +(copies) 25.4544 Tj +-449 TJm +(data) 16.5977 Tj +-448 TJm +(from) 19.3673 Tj +-449 TJm +(the) 12.1743 Tj +-448 TJm +(compressed) 47.0334 Tj +-449 TJm +(\002le) 12.7322 Tj +-448 TJm +(in) 7.7509 Tj +-449 TJm +(chunks) 28.224 Tj +-449 TJm +(of) 8.29885 Tj +-448 TJm +(size) 15.4918 Tj +[1 0 0 1 419.602 382.09] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -419.602 -382.09] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.602 382.09 Td +/F134_0 9.9626 Tf +(BZ_MAX_UNUSED) 77.7083 Tj +[1 0 0 1 497.31 382.09] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -497.31 -382.09] cm +[1 0 0 1 0 0] Tm +0 0 Td +501.778 382.09 Td +/F130_0 9.9626 Tf +(bytes) 21.031 Tj +-449 TJm +(be-) 12.7222 Tj +72 370.135 Td +(fore) 16.0398 Tj +-414 TJm +(decompressing) 59.7656 Tj +-414 TJm +(it.) 8.02986 Tj +-1605 TJm +(If) 6.63509 Tj +-415 TJm +(the) 12.1743 Tj +-414 TJm +(\002le) 12.7322 Tj +-414 TJm +(contains) 33.2053 Tj +-414 TJm +(more) 20.4731 Tj +-414 TJm +(bytes) 21.031 Tj +-415 TJm +(than) 17.1556 Tj +-414 TJm +(strictly) 27.6761 Tj +-414 TJm +(needed) 28.2141 Tj +-414 TJm +(to) 7.7509 Tj +-414 TJm +(reach) 21.569 Tj +-414 TJm +(the) 12.1743 Tj +-415 TJm +(logical) 27.1182 Tj +-414 TJm +(end-of-stream,) 58.3709 Tj +[1 0 0 1 72 358.18] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -358.18] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 358.18 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 131.776 358.18] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -131.776 -358.18] cm +[1 0 0 1 0 0] Tm +0 0 Td +134.749 358.18 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-298 TJm +(almost) 26.5703 Tj +-299 TJm +(certainly) 34.8591 Tj +-298 TJm +(read) 17.1456 Tj +-299 TJm +(some) 21.031 Tj +-298 TJm +(of) 8.29885 Tj +-299 TJm +(the) 12.1743 Tj +-298 TJm +(trailing) 28.782 Tj +-298 TJm +(data) 16.5977 Tj +-299 TJm +(before) 25.4445 Tj +-298 TJm +(signalling) 39.3025 Tj +[1 0 0 1 413.162 358.18] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -413.162 -358.18] cm +[1 0 0 1 0 0] Tm +0 0 Td +413.162 358.18 Td +/F134_0 9.9626 Tf +(BZ_SEQUENCE_END) 89.6634 Tj +[1 0 0 1 502.826 358.18] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -502.826 -358.18] cm +[1 0 0 1 0 0] Tm +0 0 Td +502.826 358.18 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-597 TJm +(T) 6.08715 Tj +80 TJm +(o) 4.9813 Tj +-298 TJm +(col-) 15.4918 Tj +72 346.224 Td +(lect) 14.386 Tj +-242 TJm +(the) 12.1743 Tj +-242 TJm +(read) 17.1456 Tj +-243 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-242 TJm +(unused) 28.224 Tj +-242 TJm +(data) 16.5977 Tj +-242 TJm +(once) 18.8094 Tj +[1 0 0 1 208.759 346.224] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -208.759 -346.224] cm +[1 0 0 1 0 0] Tm +0 0 Td +208.759 346.224 Td +/F134_0 9.9626 Tf +(BZ_SEQUENCE_END) 89.6634 Tj +[1 0 0 1 298.423 346.224] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -298.423 -346.224] cm +[1 0 0 1 0 0] Tm +0 0 Td +300.835 346.224 Td +/F130_0 9.9626 Tf +(has) 13.2801 Tj +-242 TJm +(appeared,) 38.4457 Tj +-244 TJm +(call) 14.386 Tj +[1 0 0 1 374.201 346.224] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -374.201 -346.224] cm +[1 0 0 1 0 0] Tm +0 0 Td +374.201 346.224 Td +/F134_0 9.9626 Tf +(BZ2_bzReadGetUnused) 113.574 Tj +[1 0 0 1 487.775 346.224] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -487.775 -346.224] cm +[1 0 0 1 0 0] Tm +0 0 Td +490.188 346.224 Td +/F130_0 9.9626 Tf +(immediately) 49.813 Tj +72 334.269 Td +(before) 25.4445 Tj +[1 0 0 1 99.935 334.269] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -99.935 -334.269] cm +[1 0 0 1 0 0] Tm +0 0 Td +99.935 334.269 Td +/F134_0 9.9626 Tf +(BZ2_bzReadClose) 89.6634 Tj +[1 0 0 1 189.599 334.269] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -189.599 -334.269] cm +[1 0 0 1 0 0] Tm +0 0 Td +189.599 334.269 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 332.959] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -322.996] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 312.351 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(assignments) 48.7072 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 169.144 312.351] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -169.144 -312.351] cm +[1 0 0 1 0 0] Tm +0 0 Td +169.144 312.351 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 210.987 312.351] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.987 -312.351] cm +[1 0 0 1 0 0] Tm +0 0 Td +210.987 312.351 Td +/F130_0 9.9626 Tf +(:) 2.7696 Tj +[1 0 0 1 72 310.195] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -259.343] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(20) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 24 24 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -284.568] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 263.014 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 259.427] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -711.631] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 711.631 Td +/F134_0 9.9626 Tf +(BZ_PARAM_ERROR) 83.6858 Tj +98.4879 699.676 Td +(if) 11.9551 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(buf) 17.9327 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(len) 17.9327 Tj +-426 TJm +(<) 5.97756 Tj +-426 TJm +(0) 5.97756 Tj +90 687.721 Td +(BZ_SEQUENCE_ERROR) 101.619 Tj +98.4879 675.766 Td +(if) 11.9551 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(opened) 35.8654 Tj +-426 TJm +(with) 23.9102 Tj +-426 TJm +(BZ2_bzWriteOpen) 89.6634 Tj +90 663.811 Td +(BZ_IO_ERROR) 65.7532 Tj +98.4879 651.856 Td +(if) 11.9551 Tj +-426 TJm +(there) 29.8878 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(an) 11.9551 Tj +-426 TJm +(error) 29.8878 Tj +-426 TJm +(reading) 41.8429 Tj +-426 TJm +(from) 23.9102 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +-426 TJm +(file) 23.9102 Tj +90 639.9 Td +(BZ_UNEXPECTED_EOF) 101.619 Tj +98.4879 627.945 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +-426 TJm +(file) 23.9102 Tj +-426 TJm +(ended) 29.8878 Tj +-426 TJm +(before) 35.8654 Tj +98.4879 615.99 Td +(the) 17.9327 Tj +-426 TJm +(logical) 41.8429 Tj +-426 TJm +(end-of-stream) 77.7083 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(detected) 47.8205 Tj +90 604.035 Td +(BZ_DATA_ERROR) 77.7083 Tj +98.4879 592.08 Td +(if) 11.9551 Tj +-426 TJm +(a) 5.97756 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(integrity) 53.798 Tj +-426 TJm +(error) 29.8878 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(detected) 47.8205 Tj +-426 TJm +(in) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +-426 TJm +(stream) 35.8654 Tj +90 580.125 Td +(BZ_DATA_ERROR_MAGIC) 113.574 Tj +98.4879 568.169 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(stream) 35.8654 Tj +-426 TJm +(does) 23.9102 Tj +-426 TJm +(not) 17.9327 Tj +-426 TJm +(begin) 29.8878 Tj +-426 TJm +(with) 23.9102 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(requisite) 53.798 Tj +-426 TJm +(header) 35.8654 Tj +-426 TJm +(bytes) 29.8878 Tj +98.4879 556.214 Td +(\(ie,) 23.9102 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(not) 17.9327 Tj +-426 TJm +(a) 5.97756 Tj +-426 TJm +(bzip2) 29.8878 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(file\).) 35.8654 Tj +-852 TJm +(This) 23.9102 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(really) 35.8654 Tj +98.4879 544.259 Td +(a) 5.97756 Tj +-426 TJm +(special) 41.8429 Tj +-426 TJm +(case) 23.9102 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(BZ_DATA_ERROR.) 83.6858 Tj +90 532.304 Td +(BZ_MEM_ERROR) 71.7307 Tj +98.4879 520.349 Td +(if) 11.9551 Tj +-426 TJm +(insufficient) 71.7307 Tj +-426 TJm +(memory) 35.8654 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(available) 53.798 Tj +90 508.394 Td +(BZ_STREAM_END) 77.7083 Tj +98.4879 496.438 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(logical) 41.8429 Tj +-426 TJm +(end) 17.9327 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(stream) 35.8654 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(detected.) 53.798 Tj +90 484.483 Td +(BZ_OK) 29.8878 Tj +98.4879 472.528 Td +(otherwise.) 59.7756 Tj +[1 0 0 1 72 456.986] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -447.024] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 435.068 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues:) 23.2427 Tj +[1 0 0 1 72 434.969] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -60.7721] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 59.7758 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 56.1893] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -425.604] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 425.604 Td +/F134_0 9.9626 Tf +(number) 35.8654 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(bytes) 29.8878 Tj +-426 TJm +(read) 23.9102 Tj +98.4879 413.649 Td +(if) 11.9551 Tj +-426 TJm +(bzerror) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(BZ_OK) 29.8878 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(BZ_STREAM_END) 77.7083 Tj +90 401.694 Td +(undefined) 53.798 Tj +98.4879 389.739 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 374.197] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -364.234] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 352.279 Td +/F130_0 9.9626 Tf +(Allo) 17.7135 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(able) 16.5977 Tj +-250 TJm +(ne) 9.40469 Tj +15 TJm +(xt) 7.7509 Tj +-250 TJm +(actions:) 30.9936 Tj +[1 0 0 1 72 352.18] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -84.6825] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 83.6862 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 80.0996] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -342.815] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 342.815 Td +/F134_0 9.9626 Tf +(collect) 41.8429 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(from) 23.9102 Tj +-426 TJm +(buf,) 23.9102 Tj +-426 TJm +(then) 23.9102 Tj +-426 TJm +(BZ2_bzRead) 59.7756 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(BZ2_bzReadClose) 89.6634 Tj +98.4879 330.859 Td +(if) 11.9551 Tj +-426 TJm +(bzerror) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(BZ_OK) 29.8878 Tj +90 318.904 Td +(collect) 41.8429 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(from) 23.9102 Tj +-426 TJm +(buf,) 23.9102 Tj +-426 TJm +(then) 23.9102 Tj +-426 TJm +(BZ2_bzReadClose) 89.6634 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(BZ2_bzReadGetUnused) 113.574 Tj +98.4879 306.949 Td +(if) 11.9551 Tj +-426 TJm +(bzerror) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(BZ_SEQUENCE_END) 89.6634 Tj +90 294.994 Td +(BZ2_bzReadClose) 89.6634 Tj +98.4879 283.039 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 267.497] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -257.534] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 236.876 Td +/F122_0 17.2154 Tf +(3.4.3.) 43.0729 Tj +[1 0 0 1 119.858 236.876] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -236.876] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 236.876 Td +/F392_0 17.2154 Tf +(BZ2_bzReadGetUnused) 196.256 Tj +[1 0 0 1 316.114 236.876] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -244.114 -2.3327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -36.8617] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 35.8655 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 32.2789] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -225.178] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 225.178 Td +/F134_0 9.9626 Tf +(void) 23.9102 Tj +-426 TJm +(BZ2_bzReadGetUnused\() 119.551 Tj +-426 TJm +(int) 17.9327 Tj +259.883 223.435 Td +(*) 5.97756 Tj +270.104 225.178 Td +(bzerror,) 47.8205 Tj +-426 TJm +(BZFILE) 35.8654 Tj +362.278 223.435 Td +(*) 5.97756 Tj +368.256 225.178 Td +(b,) 11.9551 Tj +200.343 213.223 Td +(void) 23.9102 Tj +224.254 211.48 Td +(**) 11.9551 Tj +240.453 213.223 Td +(unused,) 41.8429 Tj +-426 TJm +(int) 17.9327 Tj +304.473 211.48 Td +(*) 5.97756 Tj +314.694 213.223 Td +(nUnused) 41.8429 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 197.681] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -187.719] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 175.764 Td +/F130_0 9.9626 Tf +(Returns) 30.9936 Tj +-435 TJm +(data) 16.5977 Tj +-435 TJm +(which) 24.3486 Tj +-435 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-435 TJm +(read) 17.1456 Tj +-435 TJm +(from) 19.3673 Tj +-435 TJm +(the) 12.1743 Tj +-435 TJm +(compressed) 47.0334 Tj +-435 TJm +(\002le) 12.7322 Tj +-435 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-435 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-435 TJm +(not) 12.7322 Tj +-435 TJm +(needed) 28.2141 Tj +-435 TJm +(to) 7.7509 Tj +-435 TJm +(get) 12.1743 Tj +-435 TJm +(to) 7.7509 Tj +-435 TJm +(the) 12.1743 Tj +-435 TJm +(logical) 27.1182 Tj +-435 TJm +(end-of-stream.) 58.3709 Tj +[1 0 0 1 72 163.809] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -163.809] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 162.065 Td +/F134_0 9.9626 Tf +(*) 5.97756 Tj +77.9776 163.809 Td +(unused) 35.8654 Tj +[1 0 0 1 113.843 163.809] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -113.843 -163.809] cm +[1 0 0 1 0 0] Tm +0 0 Td +117.2 163.809 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-337 TJm +(set) 11.0684 Tj +-337 TJm +(to) 7.7509 Tj +-337 TJm +(the) 12.1743 Tj +-337 TJm +(address) 29.8778 Tj +-337 TJm +(of) 8.29885 Tj +-336 TJm +(the) 12.1743 Tj +-337 TJm +(data,) 19.0883 Tj +-359 TJm +(and) 14.386 Tj +[1 0 0 1 269.089 163.809] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -269.089 -163.809] cm +[1 0 0 1 0 0] Tm +0 0 Td +269.089 162.065 Td +/F134_0 9.9626 Tf +(*) 5.97756 Tj +275.067 163.809 Td +(nUnused) 41.8429 Tj +[1 0 0 1 316.91 163.809] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -316.91 -163.809] cm +[1 0 0 1 0 0] Tm +0 0 Td +320.267 163.809 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-337 TJm +(the) 12.1743 Tj +-337 TJm +(number) 30.4357 Tj +-337 TJm +(of) 8.29885 Tj +-337 TJm +(bytes.) 23.5217 Tj +[1 0 0 1 427.247 163.809] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -427.247 -163.809] cm +[1 0 0 1 0 0] Tm +0 0 Td +427.247 162.065 Td +/F134_0 9.9626 Tf +(*) 5.97756 Tj +433.225 163.809 Td +(nUnused) 41.8429 Tj +[1 0 0 1 475.068 163.809] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -475.068 -163.809] cm +[1 0 0 1 0 0] Tm +0 0 Td +478.425 163.809 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-337 TJm +(be) 9.40469 Tj +-337 TJm +(set) 11.0684 Tj +-337 TJm +(to) 7.7509 Tj +-337 TJm +(a) 4.42339 Tj +72 151.853 Td +(v) 4.9813 Tj +25 TJm +(alue) 16.5977 Tj +-250 TJm +(between) 33.1954 Tj +[1 0 0 1 131.506 151.853] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -131.506 -151.853] cm +[1 0 0 1 0 0] Tm +0 0 Td +131.506 151.853 Td +/F134_0 9.9626 Tf +(0) 5.97756 Tj +[1 0 0 1 137.484 151.853] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -137.484 -151.853] cm +[1 0 0 1 0 0] Tm +0 0 Td +139.975 151.853 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 156.851 151.853] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -156.851 -151.853] cm +[1 0 0 1 0 0] Tm +0 0 Td +156.851 151.853 Td +/F134_0 9.9626 Tf +(BZ_MAX_UNUSED) 77.7083 Tj +[1 0 0 1 234.56 151.853] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -234.56 -151.853] cm +[1 0 0 1 0 0] Tm +0 0 Td +237.05 151.853 Td +/F130_0 9.9626 Tf +(inclusi) 26.5703 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e.) 6.91404 Tj +[1 0 0 1 72 150.543] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -140.581] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 129.935 Td +/F130_0 9.9626 Tf +(This) 17.7135 Tj +-882 TJm +(function) 33.2053 Tj +-883 TJm +(may) 17.1556 Tj +-882 TJm +(only) 17.7135 Tj +-883 TJm +(be) 9.40469 Tj +-882 TJm +(called) 23.7907 Tj +-883 TJm +(once) 18.8094 Tj +[1 0 0 1 271.332 129.935] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -271.332 -129.935] cm +[1 0 0 1 0 0] Tm +0 0 Td +271.332 129.935 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 331.108 129.935] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -331.108 -129.935] cm +[1 0 0 1 0 0] Tm +0 0 Td +339.9 129.935 Td +/F130_0 9.9626 Tf +(has) 13.2801 Tj +-882 TJm +(signalled) 35.9749 Tj +[1 0 0 1 406.737 129.935] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -406.737 -129.935] cm +[1 0 0 1 0 0] Tm +0 0 Td +406.737 129.935 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 484.446 129.935] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -484.446 -129.935] cm +[1 0 0 1 0 0] Tm +0 0 Td +493.231 129.935 Td +/F130_0 9.9626 Tf +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-882 TJm +(before) 25.4445 Tj +[1 0 0 1 72 117.98] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -117.98] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 117.98 Td +/F134_0 9.9626 Tf +(BZ2_bzReadClose) 89.6634 Tj +[1 0 0 1 161.664 117.98] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -161.664 -117.98] cm +[1 0 0 1 0 0] Tm +0 0 Td +161.664 117.98 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 116.67] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -106.708] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 96.0625 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(assignments) 48.7072 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 169.144 96.0625] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -169.144 -96.0625] cm +[1 0 0 1 0 0] Tm +0 0 Td +169.144 96.0625 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 210.987 96.0625] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.987 -96.0625] cm +[1 0 0 1 0 0] Tm +0 0 Td +210.987 96.0625 Td +/F130_0 9.9626 Tf +(:) 2.7696 Tj +[1 0 0 1 72 93.9057] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -43.0539] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.8518] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.8518 Td +/F130_0 9.9626 Tf +(21) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 25 25 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -129.151] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 107.597 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 104.01] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -711.631] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 711.631 Td +/F134_0 9.9626 Tf +(BZ_PARAM_ERROR) 83.6858 Tj +98.4879 699.676 Td +(if) 11.9551 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +98.4879 687.721 Td +(or) 11.9551 Tj +-426 TJm +(unused) 35.8654 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(nUnused) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +90 675.766 Td +(BZ_SEQUENCE_ERROR) 101.619 Tj +98.4879 663.811 Td +(if) 11.9551 Tj +-426 TJm +(BZ_STREAM_END) 77.7083 Tj +-426 TJm +(has) 17.9327 Tj +-426 TJm +(not) 17.9327 Tj +-426 TJm +(been) 23.9102 Tj +-426 TJm +(signalled) 53.798 Tj +98.4879 651.856 Td +(or) 11.9551 Tj +-426 TJm +(if) 11.9551 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(opened) 35.8654 Tj +-426 TJm +(with) 23.9102 Tj +-426 TJm +(BZ2_bzWriteOpen) 89.6634 Tj +90 639.9 Td +(BZ_OK) 29.8878 Tj +98.4879 627.945 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 612.404] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -602.441] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 590.486 Td +/F130_0 9.9626 Tf +(Allo) 17.7135 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(able) 16.5977 Tj +-250 TJm +(ne) 9.40469 Tj +15 TJm +(xt) 7.7509 Tj +-250 TJm +(actions:) 30.9936 Tj +[1 0 0 1 72 590.386] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3238] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -581.021] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 581.021 Td +/F134_0 9.9626 Tf +(BZ2_bzReadClose) 89.6634 Tj +[1 0 0 1 72 565.48] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -555.517] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 534.858 Td +/F122_0 17.2154 Tf +(3.4.4.) 43.0729 Tj +[1 0 0 1 119.858 534.858] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -534.858] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 534.858 Td +/F392_0 17.2154 Tf +(BZ2_bzReadClose) 154.939 Tj +[1 0 0 1 274.797 534.858] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -202.797 -2.3327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -523.161] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 523.161 Td +/F134_0 9.9626 Tf +(void) 23.9102 Tj +-426 TJm +(BZ2_bzReadClose) 89.6634 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(int) 17.9327 Tj +244.46 521.417 Td +(*) 5.97756 Tj +250.438 523.161 Td +(bzerror,) 47.8205 Tj +-426 TJm +(BZFILE) 35.8654 Tj +342.612 521.417 Td +(*) 5.97756 Tj +348.59 523.161 Td +(b) 5.97756 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 507.619] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -497.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 485.701 Td +/F130_0 9.9626 Tf +(Releases) 34.8591 Tj +-430 TJm +(all) 9.9626 Tj +-429 TJm +(memory) 33.2053 Tj +-430 TJm +(pertaining) 40.3983 Tj +-429 TJm +(to) 7.7509 Tj +-430 TJm +(the) 12.1743 Tj +-429 TJm +(compressed) 47.0334 Tj +-430 TJm +(\002le) 12.7322 Tj +[1 0 0 1 304.352 485.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -304.352 -485.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +304.352 485.701 Td +/F134_0 9.9626 Tf +(b) 5.97756 Tj +[1 0 0 1 310.33 485.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -310.33 -485.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +310.33 485.701 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 321.276 485.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -321.276 -485.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +321.276 485.701 Td +/F134_0 9.9626 Tf +(BZ2_bzReadClose) 89.6634 Tj +[1 0 0 1 410.94 485.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -410.94 -485.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +415.22 485.701 Td +/F130_0 9.9626 Tf +(does) 18.2614 Tj +-430 TJm +(not) 12.7322 Tj +-429 TJm +(call) 14.386 Tj +[1 0 0 1 473.438 485.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -473.438 -485.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +473.438 485.701 Td +/F134_0 9.9626 Tf +(fclose) 35.8654 Tj +[1 0 0 1 509.304 485.701] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -509.304 -485.701] cm +[1 0 0 1 0 0] Tm +0 0 Td +513.584 485.701 Td +/F130_0 9.9626 Tf +(on) 9.9626 Tj +-430 TJm +(the) 12.1743 Tj +72 473.746 Td +(underlying) 43.1679 Tj +-264 TJm +(\002le) 12.7322 Tj +-264 TJm +(handle,) 29.0509 Tj +-267 TJm +(so) 8.85675 Tj +-264 TJm +(you) 14.9439 Tj +-264 TJm +(should) 26.5703 Tj +-264 TJm +(do) 9.9626 Tj +-264 TJm +(that) 14.9439 Tj +-264 TJm +(yourself) 32.6474 Tj +-264 TJm +(if) 6.08715 Tj +-263 TJm +(appropriate.) 47.8603 Tj +[1 0 0 1 348.653 473.746] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -348.653 -473.746] cm +[1 0 0 1 0 0] Tm +0 0 Td +348.653 473.746 Td +/F134_0 9.9626 Tf +(BZ2_bzReadClose) 89.6634 Tj +[1 0 0 1 438.317 473.746] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -438.317 -473.746] cm +[1 0 0 1 0 0] Tm +0 0 Td +440.946 473.746 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-264 TJm +(be) 9.40469 Tj +-264 TJm +(called) 23.7907 Tj +-264 TJm +(to) 7.7509 Tj +-264 TJm +(clean) 21.0211 Tj +72 461.791 Td +(up) 9.9626 Tj +-250 TJm +(after) 18.2515 Tj +-250 TJm +(all) 9.9626 Tj +-250 TJm +(error) 19.3573 Tj +-250 TJm +(situations.) 40.6873 Tj +[1 0 0 1 72 459.634] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -449.671] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 439.873 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(assignments) 48.7072 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 169.144 439.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -169.144 -439.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +169.144 439.873 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 210.987 439.873] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.987 -439.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +210.987 439.873 Td +/F130_0 9.9626 Tf +(:) 2.7696 Tj +[1 0 0 1 72 437.716] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -60.7721] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 59.7758 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 56.1893] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -428.351] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 428.351 Td +/F134_0 9.9626 Tf +(BZ_SEQUENCE_ERROR) 101.619 Tj +98.4879 416.396 Td +(if) 11.9551 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(opened) 35.8654 Tj +-426 TJm +(with) 23.9102 Tj +-426 TJm +(BZ2_bzOpenWrite) 89.6634 Tj +90 404.441 Td +(BZ_OK) 29.8878 Tj +98.4879 392.486 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 376.944] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -366.982] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 355.026 Td +/F130_0 9.9626 Tf +(Allo) 17.7135 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(able) 16.5977 Tj +-250 TJm +(ne) 9.40469 Tj +15 TJm +(xt) 7.7509 Tj +-250 TJm +(actions:) 30.9936 Tj +[1 0 0 1 72 354.927] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -345.562] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 345.562 Td +/F134_0 9.9626 Tf +(none) 23.9102 Tj +[1 0 0 1 72 330.02] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -320.058] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 299.399 Td +/F122_0 17.2154 Tf +(3.4.5.) 43.0729 Tj +[1 0 0 1 119.858 299.399] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -299.399] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 299.399 Td +/F392_0 17.2154 Tf +(BZ2_bzWriteOpen) 154.939 Tj +[1 0 0 1 274.797 299.399] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -202.797 -2.3327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -48.8169] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 47.8207 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 44.2341] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -287.702] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 287.702 Td +/F134_0 9.9626 Tf +(BZFILE) 35.8654 Tj +130.109 285.958 Td +(*) 5.97756 Tj +136.087 287.702 Td +(BZ2_bzWriteOpen\() 95.641 Tj +-426 TJm +(int) 17.9327 Tj +258.149 285.958 Td +(*) 5.97756 Tj +264.127 287.702 Td +(bzerror,) 47.8205 Tj +-426 TJm +(FILE) 23.9102 Tj +344.346 285.958 Td +(*) 5.97756 Tj +350.323 287.702 Td +(f,) 11.9551 Tj +196.099 275.746 Td +(int) 17.9327 Tj +-426 TJm +(blockSize100k,) 83.6858 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(verbosity,) 59.7756 Tj +196.099 263.791 Td +(int) 17.9327 Tj +-426 TJm +(workFactor) 59.7756 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 248.249] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -238.287] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 226.332 Td +/F130_0 9.9626 Tf +(Prepare) 30.4258 Tj +-268 TJm +(to) 7.7509 Tj +-269 TJm +(write) 20.4731 Tj +-268 TJm +(compressed) 47.0334 Tj +-269 TJm +(data) 16.5977 Tj +-268 TJm +(to) 7.7509 Tj +-269 TJm +(\002le) 12.7322 Tj +-268 TJm +(handle) 26.5603 Tj +[1 0 0 1 262.72 226.332] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -262.72 -226.332] cm +[1 0 0 1 0 0] Tm +0 0 Td +262.72 226.332 Td +/F134_0 9.9626 Tf +(f) 5.97756 Tj +[1 0 0 1 268.698 226.332] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -268.698 -226.332] cm +[1 0 0 1 0 0] Tm +0 0 Td +268.698 226.332 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 274.829 226.332] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -274.829 -226.332] cm +[1 0 0 1 0 0] Tm +0 0 Td +274.829 226.332 Td +/F134_0 9.9626 Tf +(f) 5.97756 Tj +[1 0 0 1 280.807 226.332] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -280.807 -226.332] cm +[1 0 0 1 0 0] Tm +0 0 Td +283.481 226.332 Td +/F130_0 9.9626 Tf +(should) 26.5703 Tj +-268 TJm +(refer) 18.7994 Tj +-269 TJm +(to) 7.7509 Tj +-268 TJm +(a) 4.42339 Tj +-269 TJm +(\002le) 12.7322 Tj +-268 TJm +(which) 24.3486 Tj +-269 TJm +(has) 13.2801 Tj +-268 TJm +(been) 18.8094 Tj +-269 TJm +(opened) 28.772 Tj +-268 TJm +(for) 11.6164 Tj +-269 TJm +(writing,) 31.2726 Tj +-273 TJm +(and) 14.386 Tj +-268 TJm +(for) 11.6164 Tj +72 214.377 Td +(which) 24.3486 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(error) 19.3573 Tj +-250 TJm +(indicator) 35.417 Tj +-250 TJm +(\() 3.31755 Tj +[1 0 0 1 176.577 214.376] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -176.577 -214.376] cm +[1 0 0 1 0 0] Tm +0 0 Td +176.577 214.376 Td +/F134_0 9.9626 Tf +(ferror\(f\)) 53.798 Tj +[1 0 0 1 230.375 214.376] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -230.375 -214.376] cm +[1 0 0 1 0 0] Tm +0 0 Td +230.375 214.376 Td +/F130_0 9.9626 Tf +(\)is) 9.9626 Tj +-250 TJm +(not) 12.7322 Tj +-250 TJm +(set.) 13.5591 Tj +[1 0 0 1 72 212.593] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -202.631] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 192.459 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-223 TJm +(the) 12.1743 Tj +-224 TJm +(meaning) 34.3112 Tj +-223 TJm +(of) 8.29885 Tj +-224 TJm +(parameters) 43.7059 Tj +[1 0 0 1 195.306 192.459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -195.306 -192.459] cm +[1 0 0 1 0 0] Tm +0 0 Td +195.306 192.459 Td +/F134_0 9.9626 Tf +(blockSize100k) 77.7083 Tj +[1 0 0 1 273.015 192.459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -273.015 -192.459] cm +[1 0 0 1 0 0] Tm +0 0 Td +273.015 192.459 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 277.784 192.459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -277.784 -192.459] cm +[1 0 0 1 0 0] Tm +0 0 Td +277.784 192.459 Td +/F134_0 9.9626 Tf +(verbosity) 53.798 Tj +[1 0 0 1 331.583 192.459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -331.583 -192.459] cm +[1 0 0 1 0 0] Tm +0 0 Td +333.808 192.459 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 350.42 192.459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -350.42 -192.459] cm +[1 0 0 1 0 0] Tm +0 0 Td +350.42 192.459 Td +/F134_0 9.9626 Tf +(workFactor) 59.7756 Tj +[1 0 0 1 410.196 192.459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -410.196 -192.459] cm +[1 0 0 1 0 0] Tm +0 0 Td +410.196 192.459 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-229 TJm +(see) 12.7222 Tj +[1 0 0 1 429.913 192.459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -429.913 -192.459] cm +[1 0 0 1 0 0] Tm +0 0 Td +429.913 192.459 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 537.509 192.459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -537.509 -192.459] cm +[1 0 0 1 0 0] Tm +0 0 Td +537.509 192.459 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 190.302] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -180.339] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 170.541 Td +/F130_0 9.9626 Tf +(All) 12.7322 Tj +-382 TJm +(required) 33.1954 Tj +-382 TJm +(memory) 33.2053 Tj +-382 TJm +(is) 6.64505 Tj +-382 TJm +(allocated) 35.965 Tj +-383 TJm +(at) 7.193 Tj +-382 TJm +(this) 14.396 Tj +-382 TJm +(stage,) 22.9638 Tj +-415 TJm +(so) 8.85675 Tj +-382 TJm +(if) 6.08715 Tj +-382 TJm +(the) 12.1743 Tj +-382 TJm +(call) 14.386 Tj +-382 TJm +(completes) 40.3983 Tj +-382 TJm +(successfully) 48.6972 Tj +65 TJm +(,) 2.49065 Tj +[1 0 0 1 424.691 170.541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -424.691 -170.541] cm +[1 0 0 1 0 0] Tm +0 0 Td +424.691 170.541 Td +/F134_0 9.9626 Tf +(BZ_MEM_ERROR) 71.7307 Tj +[1 0 0 1 496.422 170.541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.422 -170.541] cm +[1 0 0 1 0 0] Tm +0 0 Td +500.228 170.541 Td +/F130_0 9.9626 Tf +(cannot) 26.5603 Tj +-382 TJm +(be) 9.40469 Tj +72 158.586 Td +(signalled) 35.9749 Tj +-250 TJm +(by) 9.9626 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(subsequent) 44.2738 Tj +-250 TJm +(call) 14.386 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 203.715 158.586] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -203.715 -158.586] cm +[1 0 0 1 0 0] Tm +0 0 Td +203.715 158.586 Td +/F134_0 9.9626 Tf +(BZ2_bzWrite) 65.7532 Tj +[1 0 0 1 269.468 158.586] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -269.468 -158.586] cm +[1 0 0 1 0 0] Tm +0 0 Td +269.468 158.586 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 156.429] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -146.466] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 136.668 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(assignments) 48.7072 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 169.144 136.668] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -169.144 -136.668] cm +[1 0 0 1 0 0] Tm +0 0 Td +169.144 136.668 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 210.987 136.668] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.987 -136.668] cm +[1 0 0 1 0 0] Tm +0 0 Td +210.987 136.668 Td +/F130_0 9.9626 Tf +(:) 2.7696 Tj +[1 0 0 1 72 134.511] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -83.6593] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.8518] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.8518 Td +/F130_0 9.9626 Tf +(22) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 26 26 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -165.016] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 143.462 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 139.875] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -711.631] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 711.631 Td +/F134_0 9.9626 Tf +(BZ_CONFIG_ERROR) 89.6634 Tj +98.4879 699.676 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(library) 41.8429 Tj +-426 TJm +(has) 17.9327 Tj +-426 TJm +(been) 23.9102 Tj +-426 TJm +(mis-compiled) 71.7307 Tj +90 687.721 Td +(BZ_PARAM_ERROR) 83.6858 Tj +98.4879 675.766 Td +(if) 11.9551 Tj +-426 TJm +(f) 5.97756 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +98.4879 663.811 Td +(or) 11.9551 Tj +-426 TJm +(blockSize100k) 77.7083 Tj +-426 TJm +(<) 5.97756 Tj +-426 TJm +(1) 5.97756 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(blockSize100k) 77.7083 Tj +-426 TJm +(>) 5.97756 Tj +-426 TJm +(9) 5.97756 Tj +90 651.856 Td +(BZ_IO_ERROR) 65.7532 Tj +98.4879 639.9 Td +(if) 11.9551 Tj +-426 TJm +(ferror\(f\)) 53.798 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(nonzero) 41.8429 Tj +90 627.945 Td +(BZ_MEM_ERROR) 71.7307 Tj +98.4879 615.99 Td +(if) 11.9551 Tj +-426 TJm +(insufficient) 71.7307 Tj +-426 TJm +(memory) 35.8654 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(available) 53.798 Tj +90 604.035 Td +(BZ_OK) 29.8878 Tj +98.4879 592.08 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 576.538] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -566.575] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 554.62 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues:) 23.2427 Tj +[1 0 0 1 72 554.521] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -60.7721] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 59.7758 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 56.1892] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -545.156] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 545.156 Td +/F134_0 9.9626 Tf +(Pointer) 41.8429 Tj +-426 TJm +(to) 11.9551 Tj +-426 TJm +(an) 11.9551 Tj +-426 TJm +(abstract) 47.8205 Tj +-426 TJm +(BZFILE) 35.8654 Tj +98.4879 533.201 Td +(if) 11.9551 Tj +-426 TJm +(bzerror) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(BZ_OK) 29.8878 Tj +90 521.245 Td +(NULL) 23.9102 Tj +98.4879 509.29 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 493.748] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -483.786] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 471.831 Td +/F130_0 9.9626 Tf +(Allo) 17.7135 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(able) 16.5977 Tj +-250 TJm +(ne) 9.40469 Tj +15 TJm +(xt) 7.7509 Tj +-250 TJm +(actions:) 30.9936 Tj +[1 0 0 1 72 471.731] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -84.6825] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 83.6862 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 80.0996] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -462.366] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 462.366 Td +/F134_0 9.9626 Tf +(BZ2_bzWrite) 65.7532 Tj +98.4879 450.411 Td +(if) 11.9551 Tj +-426 TJm +(bzerror) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(BZ_OK) 29.8878 Tj +98.4879 438.456 Td +(\(you) 23.9102 Tj +-426 TJm +(could) 29.8878 Tj +-426 TJm +(go) 11.9551 Tj +-426 TJm +(directly) 47.8205 Tj +-426 TJm +(to) 11.9551 Tj +-426 TJm +(BZ2_bzWriteClose,) 101.619 Tj +-426 TJm +(but) 17.9327 Tj +-426 TJm +(this) 23.9102 Tj +-426 TJm +(would) 29.8878 Tj +-426 TJm +(be) 11.9551 Tj +-426 TJm +(pretty) 35.8654 Tj +485.505 434.212 Td +/F564_0 9.9626 Tf +( ) 9.9626 Tj +493.808 434.212 Td +/F147_0 9.9626 Tf +(-) 2.7696 Tj +90 426.501 Td +/F134_0 9.9626 Tf +(pointless\)) 59.7756 Tj +90 414.546 Td +(BZ2_bzWriteClose) 95.641 Tj +98.4879 402.59 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 387.049] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -377.086] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 356.428 Td +/F122_0 17.2154 Tf +(3.4.6.) 43.0729 Tj +[1 0 0 1 119.858 356.428] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -356.428] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 356.428 Td +/F392_0 17.2154 Tf +(BZ2_bzWrite) 113.622 Tj +[1 0 0 1 233.48 356.428] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -161.48 -2.3327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -344.73] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 344.73 Td +/F134_0 9.9626 Tf +(void) 23.9102 Tj +-426 TJm +(BZ2_bzWrite) 65.7532 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(int) 17.9327 Tj +220.55 342.987 Td +(*) 5.97756 Tj +226.528 344.73 Td +(bzerror,) 47.8205 Tj +-426 TJm +(BZFILE) 35.8654 Tj +318.702 342.987 Td +(*) 5.97756 Tj +324.679 344.73 Td +(b,) 11.9551 Tj +-426 TJm +(void) 23.9102 Tj +369.033 342.987 Td +(*) 5.97756 Tj +375.01 344.73 Td +(buf,) 23.9102 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(len) 17.9327 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 329.188] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -319.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 307.27 Td +/F130_0 9.9626 Tf +(Absorbs) 33.2053 Tj +[1 0 0 1 107.696 307.27] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -107.696 -307.27] cm +[1 0 0 1 0 0] Tm +0 0 Td +107.696 307.27 Td +/F134_0 9.9626 Tf +(len) 17.9327 Tj +[1 0 0 1 125.629 307.27] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -125.629 -307.27] cm +[1 0 0 1 0 0] Tm +0 0 Td +128.119 307.27 Td +/F130_0 9.9626 Tf +(bytes) 21.031 Tj +-250 TJm +(from) 19.3673 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +[1 0 0 1 214.544 307.27] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -214.544 -307.27] cm +[1 0 0 1 0 0] Tm +0 0 Td +214.544 307.27 Td +/F134_0 9.9626 Tf +(buf) 17.9327 Tj +[1 0 0 1 232.477 307.27] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -232.477 -307.27] cm +[1 0 0 1 0 0] Tm +0 0 Td +232.477 307.27 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(entually) 32.0995 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(written) 28.224 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(\002le.) 15.2229 Tj +[1 0 0 1 72 305.114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -295.151] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 285.353 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(assignments) 48.7072 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 169.144 285.353] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -169.144 -285.353] cm +[1 0 0 1 0 0] Tm +0 0 Td +169.144 285.353 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 210.987 285.353] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.987 -285.353] cm +[1 0 0 1 0 0] Tm +0 0 Td +210.987 285.353 Td +/F130_0 9.9626 Tf +(:) 2.7696 Tj +[1 0 0 1 72 283.196] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -108.593] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 107.597 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 104.01] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -273.831] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 273.831 Td +/F134_0 9.9626 Tf +(BZ_PARAM_ERROR) 83.6858 Tj +98.4879 261.876 Td +(if) 11.9551 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(buf) 17.9327 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(len) 17.9327 Tj +-426 TJm +(<) 5.97756 Tj +-426 TJm +(0) 5.97756 Tj +90 249.921 Td +(BZ_SEQUENCE_ERROR) 101.619 Tj +98.4879 237.965 Td +(if) 11.9551 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(opened) 35.8654 Tj +-426 TJm +(with) 23.9102 Tj +-426 TJm +(BZ2_bzReadOpen) 83.6858 Tj +90 226.01 Td +(BZ_IO_ERROR) 65.7532 Tj +98.4879 214.055 Td +(if) 11.9551 Tj +-426 TJm +(there) 29.8878 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(an) 11.9551 Tj +-426 TJm +(error) 29.8878 Tj +-426 TJm +(writing) 41.8429 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +-426 TJm +(file.) 29.8878 Tj +90 202.1 Td +(BZ_OK) 29.8878 Tj +98.4879 190.145 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 174.603] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -164.64] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 143.982 Td +/F122_0 17.2154 Tf +(3.4.7.) 43.0729 Tj +[1 0 0 1 119.858 143.982] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -143.982] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 143.982 Td +/F392_0 17.2154 Tf +(BZ2_bzWriteClose) 165.268 Tj +[1 0 0 1 285.126 143.982] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -213.126 -2.3326] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -90.7975] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(23) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 27 27 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -165.016] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 143.462 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 139.875] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -711.631] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 711.631 Td +/F134_0 9.9626 Tf +(void) 23.9102 Tj +-426 TJm +(BZ2_bzWriteClose\() 101.619 Tj +-426 TJm +(int) 17.9327 Tj +246.194 709.888 Td +(*) 5.97756 Tj +252.171 711.631 Td +(bzerror,) 47.8205 Tj +-426 TJm +(BZFILE) 35.8654 Tj +340.102 709.888 Td +(*) 5.97756 Tj +350.323 711.631 Td +(f,) 11.9551 Tj +187.611 699.676 Td +(int) 17.9327 Tj +-426 TJm +(abandon,) 47.8205 Tj +187.611 687.721 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +257.609 685.978 Td +(*) 5.97756 Tj +267.83 687.721 Td +(nbytes_in,) 59.7756 Tj +187.611 675.766 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +257.609 674.023 Td +(*) 5.97756 Tj +267.83 675.766 Td +(nbytes_out) 59.7756 Tj +-426 TJm +(\);) 11.9551 Tj +90 651.856 Td +(void) 23.9102 Tj +-426 TJm +(BZ2_bzWriteClose64\() 113.574 Tj +-426 TJm +(int) 17.9327 Tj +258.149 650.112 Td +(*) 5.97756 Tj +264.127 651.856 Td +(bzerror,) 47.8205 Tj +-426 TJm +(BZFILE) 35.8654 Tj +352.057 650.112 Td +(*) 5.97756 Tj +362.278 651.856 Td +(f,) 11.9551 Tj +196.099 639.9 Td +(int) 17.9327 Tj +-426 TJm +(abandon,) 47.8205 Tj +196.099 627.945 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +266.097 626.202 Td +(*) 5.97756 Tj +276.318 627.945 Td +(nbytes_in_lo32,) 89.6634 Tj +196.099 615.99 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +266.097 614.247 Td +(*) 5.97756 Tj +276.318 615.99 Td +(nbytes_in_hi32,) 89.6634 Tj +196.099 604.035 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +266.097 602.292 Td +(*) 5.97756 Tj +276.318 604.035 Td +(nbytes_out_lo32,) 95.641 Tj +196.099 592.08 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +266.097 590.336 Td +(*) 5.97756 Tj +276.318 592.08 Td +(nbytes_out_hi32) 89.6634 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 576.538] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -566.575] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 554.62 Td +/F130_0 9.9626 Tf +(Compresses) 48.1492 Tj +-403 TJm +(and) 14.386 Tj +-402 TJm +(\003ushes) 27.6761 Tj +-403 TJm +(to) 7.7509 Tj +-403 TJm +(the) 12.1743 Tj +-402 TJm +(compressed) 47.0334 Tj +-403 TJm +(\002le) 12.7322 Tj +-403 TJm +(a) 4.42339 Tj +1 TJm +(ll) 5.53921 Tj +-403 TJm +(data) 16.5977 Tj +-403 TJm +(so) 8.85675 Tj +-402 TJm +(f) 3.31755 Tj +10 TJm +(ar) 7.74094 Tj +-403 TJm +(supplied) 33.7633 Tj +-403 TJm +(by) 9.9626 Tj +[1 0 0 1 384.152 554.62] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -384.152 -554.62] cm +[1 0 0 1 0 0] Tm +0 0 Td +384.152 554.62 Td +/F134_0 9.9626 Tf +(BZ2_bzWrite) 65.7532 Tj +[1 0 0 1 449.906 554.62] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -449.906 -554.62] cm +[1 0 0 1 0 0] Tm +0 0 Td +449.906 554.62 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-768 TJm +(The) 15.4918 Tj +-403 TJm +(logical) 27.1182 Tj +-402 TJm +(end-of-) 29.3199 Tj +72 542.665 Td +(stream) 26.5603 Tj +-352 TJm +(mark) 20.4731 Tj +10 TJm +(ers) 11.6164 Tj +-352 TJm +(are) 12.1643 Tj +-353 TJm +(also) 16.0497 Tj +-352 TJm +(written,) 30.7147 Tj +-378 TJm +(so) 8.85675 Tj +-352 TJm +(subsequent) 44.2738 Tj +-352 TJm +(calls) 18.2614 Tj +-352 TJm +(to) 7.7509 Tj +[1 0 0 1 300.456 542.665] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -300.456 -542.665] cm +[1 0 0 1 0 0] Tm +0 0 Td +300.456 542.665 Td +/F134_0 9.9626 Tf +(BZ2_bzWrite) 65.7532 Tj +[1 0 0 1 366.209 542.665] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -366.209 -542.665] cm +[1 0 0 1 0 0] Tm +0 0 Td +369.718 542.665 Td +/F130_0 9.9626 Tf +(are) 12.1643 Tj +-352 TJm +(ille) 12.7322 Tj +15 TJm +(g) 4.9813 Tj +5 TJm +(al.) 9.68365 Tj +-1234 TJm +(All) 12.7322 Tj +-352 TJm +(memory) 33.2053 Tj +-352 TJm +(associated) 40.9463 Tj +-352 TJm +(with) 17.7135 Tj +72 530.71 Td +(the) 12.1743 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(\002le) 12.7322 Tj +[1 0 0 1 151.411 530.71] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -151.411 -530.71] cm +[1 0 0 1 0 0] Tm +0 0 Td +151.411 530.71 Td +/F134_0 9.9626 Tf +(b) 5.97756 Tj +[1 0 0 1 157.389 530.71] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -157.389 -530.71] cm +[1 0 0 1 0 0] Tm +0 0 Td +159.879 530.71 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-250 TJm +(released.) 35.1281 Tj +[1 0 0 1 207.231 530.71] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -207.231 -530.71] cm +[1 0 0 1 0 0] Tm +0 0 Td +207.231 530.71 Td +/F134_0 9.9626 Tf +(fflush) 35.8654 Tj +[1 0 0 1 243.097 530.71] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -243.097 -530.71] cm +[1 0 0 1 0 0] Tm +0 0 Td +245.587 530.71 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-250 TJm +(called) 23.7907 Tj +-250 TJm +(on) 9.9626 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(\002le,) 15.2229 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-250 TJm +(it) 5.53921 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(not) 12.7322 Tj +[1 0 0 1 422.771 530.71] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -422.771 -530.71] cm +[1 0 0 1 0 0] Tm +0 0 Td +422.771 530.71 Td +/F134_0 9.9626 Tf +(fclose) 35.8654 Tj +[1 0 0 1 458.636 530.71] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -458.636 -530.71] cm +[1 0 0 1 0 0] Tm +0 0 Td +458.636 530.71 Td +/F130_0 9.9626 Tf +(') 3.31755 Tj +50 TJm +(d.) 7.47195 Tj +[1 0 0 1 72 528.553] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -518.59] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 508.792 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +[1 0 0 1 81.5743 508.792] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -81.5743 -508.792] cm +[1 0 0 1 0 0] Tm +0 0 Td +81.5743 508.792 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteClose) 95.641 Tj +[1 0 0 1 177.216 508.792] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -177.216 -508.792] cm +[1 0 0 1 0 0] Tm +0 0 Td +180.155 508.792 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-295 TJm +(called) 23.7907 Tj +-295 TJm +(to) 7.7509 Tj +-295 TJm +(clean) 21.0211 Tj +-295 TJm +(up) 9.9626 Tj +-295 TJm +(after) 18.2515 Tj +-295 TJm +(an) 9.40469 Tj +-295 TJm +(error) 19.3573 Tj +40 TJm +(,) 2.49065 Tj +-306 TJm +(the) 12.1743 Tj +-295 TJm +(only) 17.7135 Tj +-295 TJm +(action) 24.3486 Tj +-295 TJm +(is) 6.64505 Tj +-295 TJm +(to) 7.7509 Tj +-295 TJm +(release) 27.6562 Tj +-295 TJm +(the) 12.1743 Tj +-295 TJm +(memory) 33.2053 Tj +65 TJm +(.) 2.49065 Tj +-891 TJm +(The) 15.4918 Tj +-295 TJm +(library) 26.5603 Tj +72 496.837 Td +(records) 29.3199 Tj +-289 TJm +(the) 12.1743 Tj +-289 TJm +(error) 19.3573 Tj +-289 TJm +(codes) 22.6848 Tj +-289 TJm +(issued) 24.9065 Tj +-289 TJm +(by) 9.9626 Tj +-289 TJm +(pre) 12.7222 Tj +25 TJm +(vious) 21.589 Tj +-289 TJm +(calls,) 20.7521 Tj +-299 TJm +(so) 8.85675 Tj +-289 TJm +(this) 14.396 Tj +-289 TJm +(situation) 34.3212 Tj +-289 TJm +(will) 15.5018 Tj +-289 TJm +(be) 9.40469 Tj +-289 TJm +(detected) 33.1954 Tj +-289 TJm +(automatically) 54.2364 Tj +65 TJm +(.) 2.49065 Tj +-427 TJm +(There) 23.2328 Tj +-289 TJm +(is) 6.64505 Tj +-289 TJm +(no) 9.9626 Tj +-289 TJm +(attempt) 29.8878 Tj +72 484.882 Td +(to) 7.7509 Tj +-263 TJm +(complete) 36.5229 Tj +-262 TJm +(the) 12.1743 Tj +-263 TJm +(compression) 50.3609 Tj +-263 TJm +(operation,) 40.1194 Tj +-265 TJm +(nor) 13.2801 Tj +-263 TJm +(to) 7.7509 Tj +[1 0 0 1 258.308 484.882] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -258.308 -484.882] cm +[1 0 0 1 0 0] Tm +0 0 Td +258.308 484.882 Td +/F134_0 9.9626 Tf +(fflush) 35.8654 Tj +[1 0 0 1 294.173 484.882] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -294.173 -484.882] cm +[1 0 0 1 0 0] Tm +0 0 Td +296.79 484.882 Td +/F130_0 9.9626 Tf +(the) 12.1743 Tj +-263 TJm +(compressed) 47.0334 Tj +-262 TJm +(\002le.) 15.2229 Tj +-696 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-263 TJm +(can) 13.8281 Tj +-263 TJm +(force) 20.4632 Tj +-262 TJm +(this) 14.396 Tj +-263 TJm +(beha) 18.8094 Tj +20 TJm +(viour) 21.031 Tj +-263 TJm +(to) 7.7509 Tj +-262 TJm +(happen) 28.772 Tj +72 472.926 Td +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(en) 9.40469 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(case) 17.1456 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(no) 9.9626 Tj +-250 TJm +(error) 19.3573 Tj +40 TJm +(,) 2.49065 Tj +-250 TJm +(by) 9.9626 Tj +-250 TJm +(passing) 29.8878 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(nonzero) 32.0895 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alue) 16.5977 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 305.014 472.926] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -305.014 -472.926] cm +[1 0 0 1 0 0] Tm +0 0 Td +305.014 472.926 Td +/F134_0 9.9626 Tf +(abandon) 41.8429 Tj +[1 0 0 1 346.858 472.926] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -346.858 -472.926] cm +[1 0 0 1 0 0] Tm +0 0 Td +346.858 472.926 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 470.77] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -460.807] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 451.009 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +[1 0 0 1 80.5974 451.009] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -80.5974 -451.009] cm +[1 0 0 1 0 0] Tm +0 0 Td +80.5974 451.009 Td +/F134_0 9.9626 Tf +(nbytes_in) 53.798 Tj +[1 0 0 1 134.396 451.009] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -134.396 -451.009] cm +[1 0 0 1 0 0] Tm +0 0 Td +136.358 451.009 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-197 TJm +(non-null,) 36.2539 Tj +[1 0 0 1 183.287 451.009] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -183.287 -451.009] cm +[1 0 0 1 0 0] Tm +0 0 Td +183.287 449.265 Td +/F134_0 9.9626 Tf +(*) 5.97756 Tj +189.265 451.009 Td +(nbytes_in) 53.798 Tj +[1 0 0 1 243.063 451.009] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -243.063 -451.009] cm +[1 0 0 1 0 0] Tm +0 0 Td +245.025 451.009 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-197 TJm +(be) 9.40469 Tj +-197 TJm +(set) 11.0684 Tj +-197 TJm +(to) 7.7509 Tj +-197 TJm +(be) 9.40469 Tj +-197 TJm +(the) 12.1743 Tj +-197 TJm +(total) 17.7135 Tj +-197 TJm +(v) 4.9813 Tj +20 TJm +(olume) 24.9065 Tj +-197 TJm +(of) 8.29885 Tj +-197 TJm +(uncompressed) 56.996 Tj +-197 TJm +(data) 16.5977 Tj +-197 TJm +(handled.) 34.0322 Tj +-584 TJm +(Similarly) 37.0908 Tj +65 TJm +(,) 2.49065 Tj +[1 0 0 1 72 439.053] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -439.053] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 439.053 Td +/F134_0 9.9626 Tf +(nbytes_out) 59.7756 Tj +[1 0 0 1 131.776 439.053] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -131.776 -439.053] cm +[1 0 0 1 0 0] Tm +0 0 Td +134.716 439.053 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-295 TJm +(be) 9.40469 Tj +-295 TJm +(set) 11.0684 Tj +-295 TJm +(to) 7.7509 Tj +-295 TJm +(the) 12.1743 Tj +-295 TJm +(total) 17.7135 Tj +-295 TJm +(v) 4.9813 Tj +20 TJm +(olume) 24.9065 Tj +-296 TJm +(of) 8.29885 Tj +-295 TJm +(compressed) 47.0334 Tj +-295 TJm +(data) 16.5977 Tj +-295 TJm +(written.) 30.7147 Tj +-890 TJm +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-295 TJm +(compatibility) 53.1405 Tj +-295 TJm +(with) 17.7135 Tj +-295 TJm +(older) 20.4731 Tj +-296 TJm +(v) 4.9813 Tj +15 TJm +(ersions) 28.224 Tj +-295 TJm +(of) 8.29885 Tj +72 427.098 Td +(the) 12.1743 Tj +-283 TJm +(library) 26.5603 Tj +65 TJm +(,) 2.49065 Tj +[1 0 0 1 118.294 427.098] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -118.294 -427.098] cm +[1 0 0 1 0 0] Tm +0 0 Td +118.294 427.098 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteClose) 95.641 Tj +[1 0 0 1 213.936 427.098] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -213.936 -427.098] cm +[1 0 0 1 0 0] Tm +0 0 Td +216.753 427.098 Td +/F130_0 9.9626 Tf +(only) 17.7135 Tj +-283 TJm +(yields) 23.8007 Tj +-283 TJm +(the) 12.1743 Tj +-282 TJm +(lo) 7.7509 Tj +25 TJm +(wer) 14.9339 Tj +-283 TJm +(32) 9.9626 Tj +-283 TJm +(bits) 14.396 Tj +-283 TJm +(of) 8.29885 Tj +-283 TJm +(these) 20.4731 Tj +-282 TJm +(counts.) 28.503 Tj +-817 TJm +(Use) 15.4918 Tj +[1 0 0 1 423.499 427.098] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -423.499 -427.098] cm +[1 0 0 1 0 0] Tm +0 0 Td +423.499 427.098 Td +/F134_0 9.9626 Tf +(BZ2_bzWriteClose64) 107.596 Tj +[1 0 0 1 531.095 427.098] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -531.095 -427.098] cm +[1 0 0 1 0 0] Tm +0 0 Td +533.913 427.098 Td +/F130_0 9.9626 Tf +(if) 6.08715 Tj +72 415.143 Td +(you) 14.9439 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ant) 12.1743 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(full) 13.8381 Tj +-250 TJm +(64) 9.9626 Tj +-250 TJm +(bit) 10.5205 Tj +-250 TJm +(counts.) 28.503 Tj +-620 TJm +(These) 23.7907 Tj +-250 TJm +(tw) 9.9626 Tj +10 TJm +(o) 4.9813 Tj +-250 TJm +(functions) 37.0808 Tj +-250 TJm +(are) 12.1643 Tj +-250 TJm +(otherwise) 38.7346 Tj +-250 TJm +(absolutely) 40.9562 Tj +-250 TJm +(identical.) 36.8018 Tj +[1 0 0 1 72 412.986] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -403.024] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 393.225 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(assignments) 48.7072 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 169.144 393.225] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -169.144 -393.225] cm +[1 0 0 1 0 0] Tm +0 0 Td +169.144 393.225 Td +/F134_0 9.9626 Tf +(bzerror) 41.8429 Tj +[1 0 0 1 210.987 393.225] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.987 -393.225] cm +[1 0 0 1 0 0] Tm +0 0 Td +210.987 393.225 Td +/F130_0 9.9626 Tf +(:) 2.7696 Tj +[1 0 0 1 72 391.069] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -84.6825] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 83.6862 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 80.0996] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -381.704] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 381.704 Td +/F134_0 9.9626 Tf +(BZ_SEQUENCE_ERROR) 101.619 Tj +98.4879 369.748 Td +(if) 11.9551 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(opened) 35.8654 Tj +-426 TJm +(with) 23.9102 Tj +-426 TJm +(BZ2_bzReadOpen) 83.6858 Tj +90 357.793 Td +(BZ_IO_ERROR) 65.7532 Tj +98.4879 345.838 Td +(if) 11.9551 Tj +-426 TJm +(there) 29.8878 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(an) 11.9551 Tj +-426 TJm +(error) 29.8878 Tj +-426 TJm +(writing) 41.8429 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +-426 TJm +(file) 23.9102 Tj +90 333.883 Td +(BZ_OK) 29.8878 Tj +98.4879 321.928 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 306.386] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -296.423] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 275.765 Td +/F122_0 17.2154 Tf +(3.4.8.) 43.0729 Tj +-278 TJm +(Handling) 73.6475 Tj +-278 TJm +(embed) 55.4852 Tj +10 TJm +(ded) 30.609 Tj +-278 TJm +(compressed) 101.416 Tj +-278 TJm +(data) 35.3949 Tj +-278 TJm +(streams) 66.0211 Tj +[1 0 0 1 72 271.935] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -261.972] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 253.847 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-203 TJm +(high-le) 28.224 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-203 TJm +(library) 26.5603 Tj +-203 TJm +(f) 3.31755 Tj +10 TJm +(acilitates) 35.417 Tj +-203 TJm +(use) 13.2801 Tj +-203 TJm +(of) 8.29885 Tj +[1 0 0 1 226.404 253.847] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -226.404 -253.847] cm +[1 0 0 1 0 0] Tm +0 0 Td +226.404 253.847 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 256.292 253.847] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -256.292 -253.847] cm +[1 0 0 1 0 0] Tm +0 0 Td +258.316 253.847 Td +/F130_0 9.9626 Tf +(data) 16.5977 Tj +-203 TJm +(streams) 30.4357 Tj +-203 TJm +(which) 24.3486 Tj +-203 TJm +(form) 19.3673 Tj +-203 TJm +(some) 21.031 Tj +-203 TJm +(part) 15.4918 Tj +-203 TJm +(of) 8.29885 Tj +-204 TJm +(a) 4.42339 Tj +-203 TJm +(surrounding,) 50.6399 Tj +-212 TJm +(lar) 10.5105 Tj +18 TJm +(ger) 12.7222 Tj +-203 TJm +(data) 16.5977 Tj +-203 TJm +(stream.) 29.0509 Tj +[1 0 0 1 72 251.69] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -29.7236] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -221.967] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 221.967 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 221.967] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -221.967] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 221.967 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-240 TJm +(writing,) 31.2726 Tj +-243 TJm +(the) 12.1743 Tj +-240 TJm +(library) 26.5603 Tj +-241 TJm +(tak) 12.1743 Tj +10 TJm +(es) 8.29885 Tj +-240 TJm +(an) 9.40469 Tj +-241 TJm +(open) 19.3673 Tj +-240 TJm +(\002le) 12.7322 Tj +-241 TJm +(handle,) 29.0509 Tj +-242 TJm +(writes) 24.3486 Tj +-241 TJm +(compres) 33.7533 Tj +1 TJm +(sed) 13.2801 Tj +-241 TJm +(data) 16.5977 Tj +-240 TJm +(to) 7.7509 Tj +-241 TJm +(it,) 8.02986 Tj +[1 0 0 1 398.926 221.967] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -398.926 -221.967] cm +[1 0 0 1 0 0] Tm +0 0 Td +398.926 221.967 Td +/F134_0 9.9626 Tf +(fflush) 35.8654 Tj +[1 0 0 1 434.791 221.967] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -434.791 -221.967] cm +[1 0 0 1 0 0] Tm +0 0 Td +434.791 221.967 Td +/F130_0 9.9626 Tf +(es) 8.29885 Tj +-240 TJm +(it) 5.53921 Tj +-241 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-240 TJm +(does) 18.2614 Tj +-241 TJm +(not) 12.7322 Tj +[1 0 0 1 504.135 221.967] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -504.135 -221.967] cm +[1 0 0 1 0 0] Tm +0 0 Td +504.135 221.967 Td +/F134_0 9.9626 Tf +(fclose) 35.8654 Tj +[1 0 0 1 540 221.967] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -221.967] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 210.011 Td +/F130_0 9.9626 Tf +(it.) 8.02986 Tj +-610 TJm +(The) 15.4918 Tj +-235 TJm +(calling) 27.1182 Tj +-235 TJm +(application) 44.2738 Tj +-235 TJm +(can) 13.8281 Tj +-235 TJm +(write) 20.4731 Tj +-235 TJm +(its) 9.41466 Tj +-235 TJm +(o) 4.9813 Tj +25 TJm +(wn) 12.1743 Tj +-235 TJm +(data) 16.5977 Tj +-235 TJm +(before) 25.4445 Tj +-235 TJm +(and) 14.386 Tj +-235 TJm +(after) 18.2515 Tj +-235 TJm +(the) 12.1743 Tj +-235 TJm +(compressed) 47.0334 Tj +-235 TJm +(data) 16.5977 Tj +-235 TJm +(stream,) 29.0509 Tj +-238 TJm +(using) 21.589 Tj +-235 TJm +(that) 14.9439 Tj +-235 TJm +(same) 20.4731 Tj +-235 TJm +(\002le) 12.7322 Tj +86.944 198.056 Td +(handle.) 29.0509 Tj +[1 0 0 1 115.995 198.056] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -43.9948 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -176.139] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 176.139 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 176.139] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -176.139] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 176.139 Td +/F130_0 9.9626 Tf +(Reading) 33.2053 Tj +-236 TJm +(is) 6.64505 Tj +-236 TJm +(more) 20.4731 Tj +-236 TJm +(comple) 29.3299 Tj +15 TJm +(x,) 7.47195 Tj +-238 TJm +(and) 14.386 Tj +-236 TJm +(the) 12.1743 Tj +-236 TJm +(f) 3.31755 Tj +10 TJm +(acilities) 30.9936 Tj +-236 TJm +(are) 12.1643 Tj +-236 TJm +(not) 12.7322 Tj +-235 TJm +(as) 8.29885 Tj +-236 TJm +(general) 29.3199 Tj +-236 TJm +(as) 8.29885 Tj +-236 TJm +(the) 12.1743 Tj +15 TJm +(y) 4.9813 Tj +-236 TJm +(could) 22.1369 Tj +-236 TJm +(be) 9.40469 Tj +-236 TJm +(since) 20.4731 Tj +-235 TJm +(generality) 39.8404 Tj +-236 TJm +(is) 6.64505 Tj +-236 TJm +(hard) 17.7035 Tj +-236 TJm +(to) 7.7509 Tj +-236 TJm +(reconcile) 36.5129 Tj +86.944 164.183 Td +(with) 17.7135 Tj +-404 TJm +(ef) 7.74094 Tj +25 TJm +(\002cienc) 26.5603 Tj +15 TJm +(y) 4.9813 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 164.811 164.183] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -164.811 -164.183] cm +[1 0 0 1 0 0] Tm +0 0 Td +164.811 164.183 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 224.587 164.183] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -224.587 -164.183] cm +[1 0 0 1 0 0] Tm +0 0 Td +228.614 164.183 Td +/F130_0 9.9626 Tf +(reads) 21.0211 Tj +-404 TJm +(from) 19.3673 Tj +-405 TJm +(the) 12.1743 Tj +-404 TJm +(compressed) 47.0334 Tj +-404 TJm +(\002le) 12.7322 Tj +-404 TJm +(in) 7.7509 Tj +-405 TJm +(blocks) 26.0123 Tj +-404 TJm +(of) 8.29885 Tj +-404 TJm +(size) 15.4918 Tj +[1 0 0 1 434.744 164.183] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -434.744 -164.183] cm +[1 0 0 1 0 0] Tm +0 0 Td +434.744 164.183 Td +/F134_0 9.9626 Tf +(BZ_MAX_UNUSED) 77.7083 Tj +[1 0 0 1 512.452 164.183] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -512.452 -164.183] cm +[1 0 0 1 0 0] Tm +0 0 Td +516.479 164.183 Td +/F130_0 9.9626 Tf +(bytes,) 23.5217 Tj +86.944 152.228 Td +(and) 14.386 Tj +-413 TJm +(in) 7.7509 Tj +-413 TJm +(doing) 22.6948 Tj +-413 TJm +(so) 8.85675 Tj +-413 TJm +(probably) 35.417 Tj +-413 TJm +(will) 15.5018 Tj +-413 TJm +(o) 4.9813 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(ershoot) 29.3299 Tj +-413 TJm +(the) 12.1743 Tj +-413 TJm +(logical) 27.1182 Tj +-413 TJm +(end) 14.386 Tj +-413 TJm +(of) 8.29885 Tj +-413 TJm +(compressed) 47.0334 Tj +-413 TJm +(stream.) 29.0509 Tj +-1598 TJm +(T) 6.08715 Tj +80 TJm +(o) 4.9813 Tj +-413 TJm +(reco) 17.1456 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-413 TJm +(this) 14.396 Tj +-413 TJm +(data) 16.5977 Tj +-413 TJm +(once) 18.8094 Tj +86.944 140.273 Td +(decompression) 59.7656 Tj +-252 TJm +(has) 13.2801 Tj +-252 TJm +(ended,) 26.2813 Tj +-253 TJm +(call) 14.386 Tj +[1 0 0 1 210.705 140.273] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.705 -140.273] cm +[1 0 0 1 0 0] Tm +0 0 Td +210.705 140.273 Td +/F134_0 9.9626 Tf +(BZ2_bzReadGetUnused) 113.574 Tj +[1 0 0 1 324.279 140.273] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -324.279 -140.273] cm +[1 0 0 1 0 0] Tm +0 0 Td +326.789 140.273 Td +/F130_0 9.9626 Tf +(after) 18.2515 Tj +-252 TJm +(the) 12.1743 Tj +-252 TJm +(last) 13.8381 Tj +-252 TJm +(call) 14.386 Tj +-252 TJm +(of) 8.29885 Tj +[1 0 0 1 406.291 140.273] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -406.291 -140.273] cm +[1 0 0 1 0 0] Tm +0 0 Td +406.291 140.273 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 466.067 140.273] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -466.067 -140.273] cm +[1 0 0 1 0 0] Tm +0 0 Td +468.578 140.273 Td +/F130_0 9.9626 Tf +(\(the) 15.4918 Tj +-252 TJm +(one) 14.386 Tj +-252 TJm +(returning) 36.5229 Tj +[1 0 0 1 86.944 128.318] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -128.318] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 128.318 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 164.653 128.318] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -164.653 -128.318] cm +[1 0 0 1 0 0] Tm +0 0 Td +164.653 128.318 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-250 TJm +(before) 25.4445 Tj +-250 TJm +(calling) 27.1182 Tj +[1 0 0 1 243.028 128.318] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -243.028 -128.318] cm +[1 0 0 1 0 0] Tm +0 0 Td +243.028 128.318 Td +/F134_0 9.9626 Tf +(BZ2_bzReadClose) 89.6634 Tj +[1 0 0 1 332.692 128.318] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -332.692 -128.318] cm +[1 0 0 1 0 0] Tm +0 0 Td +332.692 128.318 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 335.182 128.318] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -263.182 -77.466] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.8519] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.8518 Td +/F130_0 9.9626 Tf +(24) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 28 28 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F130_0 9.9626 Tf +(This) 17.7135 Tj +-271 TJm +(mechanism) 45.3796 Tj +-272 TJm +(mak) 17.1556 Tj +10 TJm +(es) 8.29885 Tj +-271 TJm +(it) 5.53921 Tj +-271 TJm +(easy) 17.7035 Tj +-271 TJm +(to) 7.7509 Tj +-272 TJm +(decompress) 47.0334 Tj +-271 TJm +(multiple) 33.2153 Tj +[1 0 0 1 293.312 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -293.312 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +293.312 710.037 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 323.2 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -323.2 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +325.903 710.037 Td +/F130_0 9.9626 Tf +(streams) 30.4357 Tj +-271 TJm +(placed) 26.0024 Tj +-272 TJm +(end-to-end.) 45.6486 Tj +-374 TJm +(As) 11.0684 Tj +-271 TJm +(the) 12.1743 Tj +-271 TJm +(end) 14.386 Tj +-271 TJm +(of) 8.29885 Tj +-272 TJm +(one) 14.386 Tj +-271 TJm +(stream,) 29.0509 Tj +72 698.082 Td +(when) 21.579 Tj +[1 0 0 1 96.1948 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -96.1948 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +96.1948 698.082 Td +/F134_0 9.9626 Tf +(BZ2_bzRead) 59.7756 Tj +[1 0 0 1 155.971 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -155.971 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +158.586 698.082 Td +/F130_0 9.9626 Tf +(returns) 27.6661 Tj +[1 0 0 1 188.868 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -188.868 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +188.868 698.082 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 266.577 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -266.577 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +266.577 698.082 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-263 TJm +(call) 14.386 Tj +[1 0 0 1 288.685 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -288.685 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +288.685 698.082 Td +/F134_0 9.9626 Tf +(BZ2_bzReadGetUnused) 113.574 Tj +[1 0 0 1 402.259 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -402.259 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +404.875 698.082 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-263 TJm +(collect) 26.5603 Tj +-262 TJm +(the) 12.1743 Tj +-263 TJm +(unused) 28.224 Tj +-262 TJm +(data) 16.5977 Tj +-263 TJm +(\(cop) 17.7035 Tj +10 TJm +(y) 4.9813 Tj +-262 TJm +(it) 5.53921 Tj +72 686.127 Td +(into) 15.5018 Tj +-265 TJm +(your) 18.2614 Tj +-265 TJm +(o) 4.9813 Tj +25 TJm +(wn) 12.1743 Tj +-265 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-265 TJm +(some) 21.031 Tj +25 TJm +(where\).) 30.1468 Tj +-711 TJm +(That) 18.2614 Tj +-265 TJm +(data) 16.5977 Tj +-265 TJm +(forms) 23.2427 Tj +-265 TJm +(the) 12.1743 Tj +-265 TJm +(start) 17.1556 Tj +-265 TJm +(of) 8.29885 Tj +-265 TJm +(the) 12.1743 Tj +-265 TJm +(ne) 9.40469 Tj +15 TJm +(xt) 7.7509 Tj +-265 TJm +(compressed) 47.0334 Tj +-265 TJm +(stream.) 29.0509 Tj +-711 TJm +(T) 6.08715 Tj +80 TJm +(o) 4.9813 Tj +-265 TJm +(start) 17.1556 Tj +-265 TJm +(uncompressing) 60.3235 Tj +72 674.172 Td +(that) 14.9439 Tj +-246 TJm +(ne) 9.40469 Tj +15 TJm +(xt) 7.7509 Tj +-246 TJm +(stream,) 29.0509 Tj +-247 TJm +(call) 14.386 Tj +[1 0 0 1 157.205 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -157.205 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +157.205 674.172 Td +/F134_0 9.9626 Tf +(BZ2_bzReadOpen) 83.6858 Tj +[1 0 0 1 240.891 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -240.891 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +243.344 674.172 Td +/F130_0 9.9626 Tf +(ag) 9.40469 Tj +5 TJm +(ain,) 14.6649 Tj +-247 TJm +(feeding) 29.8778 Tj +-246 TJm +(in) 7.7509 Tj +-246 TJm +(the) 12.1743 Tj +-247 TJm +(unused) 28.224 Tj +-246 TJm +(data) 16.5977 Tj +-246 TJm +(via) 12.1743 Tj +-246 TJm +(the) 12.1743 Tj +[1 0 0 1 405.967 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -405.967 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +405.967 674.172 Td +/F134_0 9.9626 Tf +(unused) 35.8654 Tj +[1 0 0 1 441.833 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -441.833 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +444.286 674.172 Td +/F130_0 9.9626 Tf +(/) 2.7696 Tj +[1 0 0 1 449.508 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -449.508 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +449.508 674.172 Td +/F134_0 9.9626 Tf +(nUnused) 41.8429 Tj +[1 0 0 1 491.351 674.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -491.351 -674.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +493.804 674.172 Td +/F130_0 9.9626 Tf +(parameters.) 46.1966 Tj +72 662.217 Td +(K) 7.193 Tj +25 TJm +(eep) 13.8281 Tj +-263 TJm +(doing) 22.6948 Tj +-263 TJm +(this) 14.396 Tj +-264 TJm +(until) 18.2714 Tj +[1 0 0 1 158.622 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -158.622 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +158.622 662.217 Td +/F134_0 9.9626 Tf +(BZ_STREAM_END) 77.7083 Tj +[1 0 0 1 236.33 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -236.33 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +238.952 662.217 Td +/F130_0 9.9626 Tf +(return) 23.7907 Tj +-263 TJm +(coincides) 37.6287 Tj +-263 TJm +(with) 17.7135 Tj +-263 TJm +(the) 12.1743 Tj +-264 TJm +(ph) 9.9626 Tj +5 TJm +(ysical) 23.2427 Tj +-263 TJm +(end) 14.386 Tj +-263 TJm +(of) 8.29885 Tj +-263 TJm +(\002le) 12.7322 Tj +-263 TJm +(\() 3.31755 Tj +[1 0 0 1 423.125 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -423.125 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +423.125 662.217 Td +/F134_0 9.9626 Tf +(feof\(f\)) 41.8429 Tj +[1 0 0 1 464.968 662.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -464.968 -662.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +464.968 662.217 Td +/F130_0 9.9626 Tf +(\).) 5.8082 Tj +-699 TJm +(In) 8.29885 Tj +-263 TJm +(this) 14.396 Tj +-263 TJm +(situation) 34.3212 Tj +[1 0 0 1 72 650.261] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -650.261] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 650.261 Td +/F134_0 9.9626 Tf +(BZ2_bzReadGetUnused) 113.574 Tj +[1 0 0 1 185.574 650.261] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -185.574 -650.261] cm +[1 0 0 1 0 0] Tm +0 0 Td +188.065 650.261 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(course) 26.0024 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(no) 9.9626 Tj +-250 TJm +(data.) 19.0883 Tj +[1 0 0 1 72 648.951] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -638.989] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 628.344 Td +/F130_0 9.9626 Tf +(This) 17.7135 Tj +-240 TJm +(should) 26.5703 Tj +-241 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-240 TJm +(some) 21.031 Tj +-241 TJm +(feel) 14.9339 Tj +-240 TJm +(for) 11.6164 Tj +-241 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-240 TJm +(the) 12.1743 Tj +-240 TJm +(high-le) 28.224 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-241 TJm +(interf) 21.579 Tj +10 TJm +(ace) 13.2702 Tj +-240 TJm +(can) 13.8281 Tj +-241 TJm +(be) 9.40469 Tj +-240 TJm +(used.) 20.7521 Tj +-614 TJm +(If) 6.63509 Tj +-240 TJm +(you) 14.9439 Tj +-241 TJm +(require) 28.2141 Tj +-240 TJm +(e) 4.42339 Tj +15 TJm +(xtra) 15.4918 Tj +-241 TJm +(\003e) 9.9626 Tj +15 TJm +(xibi) 15.5018 Tj +1 TJm +(lity) 13.2901 Tj +65 TJm +(,) 2.49065 Tj +-243 TJm +(you') 18.2614 Tj +10 TJm +(ll) 5.53921 Tj +-240 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-241 TJm +(to) 7.7509 Tj +72 616.389 Td +(bite) 14.9439 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ullet) 17.7135 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(get) 12.1743 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(grips) 19.9252 Tj +-250 TJm +(with) 17.7135 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(lo) 7.7509 Tj +25 TJm +(w-le) 17.7035 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(interf) 21.579 Tj +10 TJm +(ace.) 15.7608 Tj +[1 0 0 1 72 614.232] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -604.269] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 585.767 Td +/F122_0 17.2154 Tf +(3.4.9.) 43.0729 Tj +-278 TJm +(Standar) 64.0929 Tj +20 TJm +(d) 10.5186 Tj +-278 TJm +(\002le-reading/writing) 154.009 Tj +-278 TJm +(code) 40.1807 Tj +[1 0 0 1 72 581.937] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -571.975] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 563.85 Td +/F130_0 9.9626 Tf +(Here') 22.6749 Tj +55 TJm +(s) 3.87545 Tj +-250 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(you') 18.2614 Tj +50 TJm +(d) 4.9813 Tj +-250 TJm +(write) 20.4731 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(\002le:) 15.5018 Tj +[1 0 0 1 72 561.693] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -371.606] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 370.61 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 367.024] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -552.328] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 552.328 Td +/F134_0 9.9626 Tf +(FILE) 23.9102 Tj +113.91 550.584 Td +(*) 5.97756 Tj +132.62 552.328 Td +(f;) 11.9551 Tj +90 540.373 Td +(BZFILE) 35.8654 Tj +125.865 538.629 Td +(*) 5.97756 Tj +136.087 540.373 Td +(b;) 11.9551 Tj +90 528.418 Td +(int) 17.9327 Tj +-2130 TJm +(nBuf;) 29.8878 Tj +90 516.462 Td +(char) 23.9102 Tj +-1704 TJm +(buf[) 23.9102 Tj +-426 TJm +(/) 5.97756 Tj +165.018 514.719 Td +(*) 5.97756 Tj +175.24 516.462 Td +(whatever) 47.8205 Tj +-426 TJm +(size) 23.9102 Tj +-426 TJm +(you) 17.9327 Tj +-426 TJm +(like) 23.9102 Tj +305.79 514.719 Td +(*) 5.97756 Tj +311.767 516.462 Td +(/) 5.97756 Tj +-426 TJm +(];) 11.9551 Tj +90 504.507 Td +(int) 17.9327 Tj +-2130 TJm +(bzerror;) 47.8205 Tj +90 492.552 Td +(int) 17.9327 Tj +-2130 TJm +(nWritten;) 53.798 Tj +90 468.642 Td +(f) 5.97756 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(fopen) 29.8878 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +("myfile.bz2",) 77.7083 Tj +-426 TJm +("w") 17.9327 Tj +-426 TJm +(\);) 11.9551 Tj +90 456.687 Td +(if) 11.9551 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(!f) 11.9551 Tj +-426 TJm +(\)) 5.97756 Tj +-426 TJm +({) 5.97756 Tj +94.244 444.731 Td +(/) 5.97756 Tj +100.222 442.988 Td +(*) 5.97756 Tj +110.443 444.731 Td +(handle) 35.8654 Tj +-426 TJm +(error) 29.8878 Tj +184.685 442.988 Td +(*) 5.97756 Tj +190.662 444.731 Td +(/) 5.97756 Tj +90 432.776 Td +(}) 5.97756 Tj +90 420.821 Td +(b) 5.97756 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ2_bzWriteOpen\() 95.641 Tj +-426 TJm +(&bzerror,) 53.798 Tj +-426 TJm +(f,) 11.9551 Tj +-426 TJm +(9) 5.97756 Tj +-426 TJm +(\);) 11.9551 Tj +90 408.866 Td +(if) 11.9551 Tj +-426 TJm +(\(bzerror) 47.8205 Tj +-426 TJm +(!=) 11.9551 Tj +-426 TJm +(BZ_OK\)) 35.8654 Tj +-426 TJm +({) 5.97756 Tj +94.244 396.911 Td +(BZ2_bzWriteClose) 95.641 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(\);) 11.9551 Tj +94.244 384.956 Td +(/) 5.97756 Tj +100.222 383.212 Td +(*) 5.97756 Tj +110.443 384.956 Td +(handle) 35.8654 Tj +-426 TJm +(error) 29.8878 Tj +184.685 383.212 Td +(*) 5.97756 Tj +190.662 384.956 Td +(/) 5.97756 Tj +90 373 Td +(}) 5.97756 Tj +90 349.09 Td +(while) 29.8878 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(/) 5.97756 Tj +140.331 347.347 Td +(*) 5.97756 Tj +150.553 349.09 Td +(condition) 53.798 Tj +208.595 347.347 Td +(*) 5.97756 Tj +214.572 349.09 Td +(/) 5.97756 Tj +-426 TJm +(\)) 5.97756 Tj +-426 TJm +({) 5.97756 Tj +94.244 337.135 Td +(/) 5.97756 Tj +100.222 335.391 Td +(*) 5.97756 Tj +110.443 337.135 Td +(get) 17.9327 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(to) 11.9551 Tj +-426 TJm +(write) 29.8878 Tj +-426 TJm +(into) 23.9102 Tj +-426 TJm +(buf,) 23.9102 Tj +-426 TJm +(and) 17.9327 Tj +-426 TJm +(set) 17.9327 Tj +-426 TJm +(nBuf) 23.9102 Tj +-426 TJm +(appropriately) 77.7083 Tj +421.874 335.391 Td +(*) 5.97756 Tj +427.852 337.135 Td +(/) 5.97756 Tj +94.2439 325.18 Td +(nWritten) 47.8205 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ2_bzWrite) 65.7532 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(&bzerror,) 53.798 Tj +-426 TJm +(b,) 11.9551 Tj +-426 TJm +(buf,) 23.9102 Tj +-426 TJm +(nBuf) 23.9102 Tj +-426 TJm +(\);) 11.9551 Tj +94.2439 313.225 Td +(if) 11.9551 Tj +-426 TJm +(\(bzerror) 47.8205 Tj +-426 TJm +(==) 11.9551 Tj +-426 TJm +(BZ_IO_ERROR\)) 71.7307 Tj +-426 TJm +({) 5.97756 Tj +102.732 301.269 Td +(BZ2_bzWriteClose) 95.641 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(&bzerror,) 53.798 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(\);) 11.9551 Tj +102.732 289.314 Td +(/) 5.97756 Tj +108.709 287.571 Td +(*) 5.97756 Tj +118.931 289.314 Td +(handle) 35.8654 Tj +-426 TJm +(error) 29.8878 Tj +193.172 287.571 Td +(*) 5.97756 Tj +199.15 289.314 Td +(/) 5.97756 Tj +94.2439 277.359 Td +(}) 5.97756 Tj +90 265.404 Td +(}) 5.97756 Tj +90 241.494 Td +(BZ2_bzWriteClose\() 101.619 Tj +-426 TJm +(&bzerror,) 53.798 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(\);) 11.9551 Tj +90 229.538 Td +(if) 11.9551 Tj +-426 TJm +(\(bzerror) 47.8205 Tj +-426 TJm +(==) 11.9551 Tj +-426 TJm +(BZ_IO_ERROR\)) 71.7307 Tj +-426 TJm +({) 5.97756 Tj +94.2439 217.583 Td +(/) 5.97756 Tj +100.221 215.84 Td +(*) 5.97756 Tj +110.443 217.583 Td +(handle) 35.8654 Tj +-426 TJm +(error) 29.8878 Tj +184.684 215.84 Td +(*) 5.97756 Tj +190.662 217.583 Td +(/) 5.97756 Tj +89.9999 205.628 Td +(}) 5.97756 Tj +[1 0 0 1 72 190.086] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -180.124] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 168.168 Td +/F130_0 9.9626 Tf +(And) 17.1556 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(read) 17.1456 Tj +-250 TJm +(from) 19.3673 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(\002le:) 15.5018 Tj +[1 0 0 1 72 166.012] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -115.16] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9513] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9513 Td +/F130_0 9.9626 Tf +(25) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 29 29 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -392.164] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 370.61 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 367.024] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -711.631] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 711.631 Td +/F134_0 9.9626 Tf +(FILE) 23.9102 Tj +113.91 709.888 Td +(*) 5.97756 Tj +132.62 711.631 Td +(f;) 11.9551 Tj +90 699.676 Td +(BZFILE) 35.8654 Tj +125.865 697.933 Td +(*) 5.97756 Tj +136.087 699.676 Td +(b;) 11.9551 Tj +90 687.721 Td +(int) 17.9327 Tj +-2130 TJm +(nBuf;) 29.8878 Tj +90 675.766 Td +(char) 23.9102 Tj +-1704 TJm +(buf[) 23.9102 Tj +-426 TJm +(/) 5.97756 Tj +165.018 674.023 Td +(*) 5.97756 Tj +175.24 675.766 Td +(whatever) 47.8205 Tj +-426 TJm +(size) 23.9102 Tj +-426 TJm +(you) 17.9327 Tj +-426 TJm +(like) 23.9102 Tj +305.79 674.023 Td +(*) 5.97756 Tj +311.767 675.766 Td +(/) 5.97756 Tj +-426 TJm +(];) 11.9551 Tj +90 663.811 Td +(int) 17.9327 Tj +-2130 TJm +(bzerror;) 47.8205 Tj +90 651.856 Td +(int) 17.9327 Tj +-2130 TJm +(nWritten;) 53.798 Tj +90 627.945 Td +(f) 5.97756 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(fopen) 29.8878 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +("myfile.bz2",) 77.7083 Tj +-426 TJm +("r") 17.9327 Tj +-426 TJm +(\);) 11.9551 Tj +90 615.99 Td +(if) 11.9551 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(!f) 11.9551 Tj +-426 TJm +(\)) 5.97756 Tj +-426 TJm +({) 5.97756 Tj +98.488 604.035 Td +(/) 5.97756 Tj +104.466 602.292 Td +(*) 5.97756 Tj +114.687 604.035 Td +(handle) 35.8654 Tj +-426 TJm +(error) 29.8878 Tj +188.929 602.292 Td +(*) 5.97756 Tj +194.906 604.035 Td +(/) 5.97756 Tj +90 592.08 Td +(}) 5.97756 Tj +90 580.125 Td +(b) 5.97756 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ2_bzReadOpen) 83.6858 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(&bzerror,) 53.798 Tj +-426 TJm +(f,) 11.9551 Tj +-426 TJm +(0,) 11.9551 Tj +-426 TJm +(NULL,) 29.8878 Tj +-426 TJm +(0) 5.97756 Tj +-426 TJm +(\);) 11.9551 Tj +90 568.169 Td +(if) 11.9551 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(bzerror) 41.8429 Tj +-426 TJm +(!=) 11.9551 Tj +-426 TJm +(BZ_OK) 29.8878 Tj +-426 TJm +(\)) 5.97756 Tj +-426 TJm +({) 5.97756 Tj +98.488 556.214 Td +(BZ2_bzReadClose) 89.6634 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(&bzerror,) 53.798 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(\);) 11.9551 Tj +98.488 544.259 Td +(/) 5.97756 Tj +104.466 542.516 Td +(*) 5.97756 Tj +114.687 544.259 Td +(handle) 35.8654 Tj +-426 TJm +(error) 29.8878 Tj +188.929 542.516 Td +(*) 5.97756 Tj +194.906 544.259 Td +(/) 5.97756 Tj +90 532.304 Td +(}) 5.97756 Tj +90 508.394 Td +(bzerror) 41.8429 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ_OK;) 35.8654 Tj +90 496.438 Td +(while) 29.8878 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(bzerror) 41.8429 Tj +-426 TJm +(==) 11.9551 Tj +-426 TJm +(BZ_OK) 29.8878 Tj +-426 TJm +(&&) 11.9551 Tj +-426 TJm +(/) 5.97756 Tj +252.948 494.695 Td +(*) 5.97756 Tj +263.17 496.438 Td +(arbitrary) 53.798 Tj +-426 TJm +(other) 29.8878 Tj +-426 TJm +(conditions) 59.7756 Tj +419.364 494.695 Td +(*) 5.97756 Tj +425.341 496.438 Td +(/\)) 11.9551 Tj +-426 TJm +({) 5.97756 Tj +98.488 484.483 Td +(nBuf) 23.9102 Tj +-426 TJm +(=) 5.97756 Tj +-426 TJm +(BZ2_bzRead) 59.7756 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(&bzerror,) 53.798 Tj +-426 TJm +(b,) 11.9551 Tj +-426 TJm +(buf,) 23.9102 Tj +-426 TJm +(/) 5.97756 Tj +319.478 482.74 Td +(*) 5.97756 Tj +329.7 484.483 Td +(size) 23.9102 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(buf) 17.9327 Tj +396.23 482.74 Td +(*) 5.97756 Tj +402.208 484.483 Td +(/) 5.97756 Tj +-426 TJm +(\);) 11.9551 Tj +98.488 472.528 Td +(if) 11.9551 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(bzerror) 41.8429 Tj +-426 TJm +(==) 11.9551 Tj +-426 TJm +(BZ_OK) 29.8878 Tj +-426 TJm +(\)) 5.97756 Tj +-426 TJm +({) 5.97756 Tj +106.976 460.573 Td +(/) 5.97756 Tj +112.953 458.829 Td +(*) 5.97756 Tj +123.175 460.573 Td +(do) 11.9551 Tj +-426 TJm +(something) 53.798 Tj +-426 TJm +(with) 23.9102 Tj +-426 TJm +(buf[0) 29.8878 Tj +-426 TJm +(..) 11.9551 Tj +-426 TJm +(nBuf-1]) 41.8429 Tj +321.989 458.829 Td +(*) 5.97756 Tj +327.966 460.573 Td +(/) 5.97756 Tj +98.4879 448.618 Td +(}) 5.97756 Tj +90 436.663 Td +(}) 5.97756 Tj +90 424.707 Td +(if) 11.9551 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(bzerror) 41.8429 Tj +-426 TJm +(!=) 11.9551 Tj +-426 TJm +(BZ_STREAM_END) 77.7083 Tj +-426 TJm +(\)) 5.97756 Tj +-426 TJm +({) 5.97756 Tj +102.732 412.752 Td +(BZ2_bzReadClose) 89.6634 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(&bzerror,) 53.798 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(\);) 11.9551 Tj +102.732 400.797 Td +(/) 5.97756 Tj +108.709 399.054 Td +(*) 5.97756 Tj +118.931 400.797 Td +(handle) 35.8654 Tj +-426 TJm +(error) 29.8878 Tj +193.172 399.054 Td +(*) 5.97756 Tj +199.15 400.797 Td +(/) 5.97756 Tj +90 388.842 Td +(}) 5.97756 Tj +-426 TJm +(else) 23.9102 Tj +-426 TJm +({) 5.97756 Tj +102.732 376.887 Td +(BZ2_bzReadClose) 89.6634 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(&bzerror,) 53.798 Tj +-426 TJm +(b) 5.97756 Tj +-426 TJm +(\);) 11.9551 Tj +90 364.932 Td +(}) 5.97756 Tj +[1 0 0 1 72 349.39] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -339.427] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 314.637 Td +/F122_0 20.6585 Tf +(3.5.) 34.4584 Tj +-278 TJm +(Utility) 57.3893 Tj +-278 TJm +(functions) 92.9633 Tj +[1 0 0 1 72 310.361] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -300.398] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 284.016 Td +/F122_0 17.2154 Tf +(3.5.1.) 43.0729 Tj +[1 0 0 1 119.858 284.016] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -284.016] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 284.016 Td +/F392_0 17.2154 Tf +(BZ2_bzBuffToBuffCompress) 247.902 Tj +[1 0 0 1 367.76 284.016] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -295.76 -2.3327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -96.6376] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 95.6413 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 92.0548] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -272.318] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 272.318 Td +/F134_0 9.9626 Tf +(int) 17.9327 Tj +-426 TJm +(BZ2_bzBuffToBuffCompress\() 149.439 Tj +-426 TJm +(char) 23.9102 Tj +289.771 270.575 Td +(*) 5.97756 Tj +333.944 272.318 Td +(dest,) 29.8878 Tj +217.319 260.363 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +287.317 258.62 Td +(*) 5.97756 Tj +297.538 260.363 Td +(destLen,) 47.8205 Tj +217.319 248.408 Td +(char) 23.9102 Tj +241.23 246.664 Td +(*) 5.97756 Tj +285.403 248.408 Td +(source,) 41.8429 Tj +217.319 236.453 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +-852 TJm +(sourceLen,) 59.7756 Tj +217.319 224.498 Td +(int) 17.9327 Tj +-4686 TJm +(blockSize100k,) 83.6858 Tj +217.319 212.542 Td +(int) 17.9327 Tj +-4686 TJm +(verbosity,) 59.7756 Tj +217.319 200.587 Td +(int) 17.9327 Tj +-4686 TJm +(workFactor) 59.7756 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 185.045] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -175.083] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 163.128 Td +/F130_0 9.9626 Tf +(Attempts) 36.5329 Tj +-442 TJm +(to) 7.7509 Tj +-442 TJm +(compress) 37.6287 Tj +-443 TJm +(the) 12.1743 Tj +-442 TJm +(data) 16.5977 Tj +-442 TJm +(in) 7.7509 Tj +[1 0 0 1 216.87 163.128] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -216.87 -163.128] cm +[1 0 0 1 0 0] Tm +0 0 Td +216.87 163.128 Td +/F134_0 9.9626 Tf +(source[0) 47.8205 Tj +-600 TJm +(..) 11.9551 Tj +-1200 TJm +(sourceLen-1]) 71.7307 Tj +[1 0 0 1 366.31 163.128] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -366.31 -163.128] cm +[1 0 0 1 0 0] Tm +0 0 Td +370.715 163.128 Td +/F130_0 9.9626 Tf +(into) 15.5018 Tj +-442 TJm +(the) 12.1743 Tj +-442 TJm +(destination) 43.7259 Tj +-443 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +40 TJm +(,) 2.49065 Tj +[1 0 0 1 486.202 163.128] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -486.202 -163.128] cm +[1 0 0 1 0 0] Tm +0 0 Td +486.202 163.128 Td +/F134_0 9.9626 Tf +(dest[0) 35.8654 Tj +-600 TJm +(..) 11.9551 Tj +72 149.429 Td +(*) 5.97756 Tj +77.9776 151.173 Td +(destLen-1]) 59.7756 Tj +[1 0 0 1 137.753 151.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -137.753 -151.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +137.753 151.172 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-1393 TJm +(If) 6.63509 Tj +-379 TJm +(the) 12.1743 Tj +-379 TJm +(destination) 43.7259 Tj +-379 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-378 TJm +(is) 6.64505 Tj +-379 TJm +(big) 12.7322 Tj +-379 TJm +(enough,) 31.8205 Tj +[1 0 0 1 318.486 151.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -318.486 -151.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +318.486 149.429 Td +/F134_0 9.9626 Tf +(*) 5.97756 Tj +324.464 151.173 Td +(destLen) 41.8429 Tj +[1 0 0 1 366.307 151.172] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -366.307 -151.172] cm +[1 0 0 1 0 0] Tm +0 0 Td +370.081 151.172 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-379 TJm +(set) 11.0684 Tj +-379 TJm +(to) 7.7509 Tj +-378 TJm +(the) 12.1743 Tj +-379 TJm +(size) 15.4918 Tj +-379 TJm +(of) 8.29885 Tj +-379 TJm +(the) 12.1743 Tj +-379 TJm +(compressed) 47.0334 Tj +-379 TJm +(data,) 19.0883 Tj +72 139.217 Td +(and) 14.386 Tj +[1 0 0 1 89.5273 139.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -89.5273 -139.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +89.5273 139.217 Td +/F134_0 9.9626 Tf +(BZ_OK) 29.8878 Tj +[1 0 0 1 119.415 139.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.415 -139.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +122.556 139.217 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-315 TJm +(returned.) 35.686 Tj +-1012 TJm +(If) 6.63509 Tj +-315 TJm +(the) 12.1743 Tj +-316 TJm +(compressed) 47.0334 Tj +-315 TJm +(data) 16.5977 Tj +-315 TJm +(w) 7.193 Tj +10 TJm +(on') 13.2801 Tj +18 TJm +(t) 2.7696 Tj +-316 TJm +(\002t,) 10.7995 Tj +[1 0 0 1 313.322 139.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -313.322 -139.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +313.322 137.474 Td +/F134_0 9.9626 Tf +(*) 5.97756 Tj +319.3 139.217 Td +(destLen) 41.8429 Tj +[1 0 0 1 361.143 139.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -361.143 -139.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +364.284 139.217 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-315 TJm +(unchanged,) 45.6486 Tj +-332 TJm +(and) 14.386 Tj +[1 0 0 1 440.551 139.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -440.551 -139.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +440.551 139.217 Td +/F134_0 9.9626 Tf +(BZ_OUTBUFF_FULL) 89.6634 Tj +[1 0 0 1 530.215 139.217] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -530.215 -139.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +533.355 139.217 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +72 127.262 Td +(returned.) 35.686 Tj +[1 0 0 1 72 127.163] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -117.2] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 105.344 Td +/F130_0 9.9626 Tf +(Compression) 52.5826 Tj +-297 TJm +(in) 7.7509 Tj +-297 TJm +(this) 14.396 Tj +-297 TJm +(manner) 29.8778 Tj +-297 TJm +(is) 6.64505 Tj +-297 TJm +(a) 4.42339 Tj +-297 TJm +(one-shot) 34.3112 Tj +-297 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ent,) 14.6649 Tj +-309 TJm +(done) 19.3673 Tj +-297 TJm +(with) 17.7135 Tj +-297 TJm +(a) 4.42339 Tj +-297 TJm +(single) 23.8007 Tj +-297 TJm +(call) 14.386 Tj +-297 TJm +(to) 7.7509 Tj +-297 TJm +(this) 14.396 Tj +-297 TJm +(function.) 35.696 Tj +-903 TJm +(The) 15.4918 Tj +-297 TJm +(resulting) 34.8691 Tj +-297 TJm +(compressed) 47.0334 Tj +72 93.3892 Td +(data) 16.5977 Tj +-296 TJm +(is) 6.64505 Tj +-296 TJm +(a) 4.42339 Tj +-296 TJm +(complete) 36.5229 Tj +[1 0 0 1 147.988 93.3892] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -147.988 -93.3892] cm +[1 0 0 1 0 0] Tm +0 0 Td +147.988 93.3892 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 177.875 93.3892] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -177.875 -93.3892] cm +[1 0 0 1 0 0] Tm +0 0 Td +180.825 93.3892 Td +/F130_0 9.9626 Tf +(format) 26.5603 Tj +-296 TJm +(data) 16.5977 Tj +-296 TJm +(stream.) 29.0509 Tj +-897 TJm +(There) 23.2328 Tj +-296 TJm +(is) 6.64505 Tj +-296 TJm +(no) 9.9626 Tj +-296 TJm +(mechanism) 45.3796 Tj +-296 TJm +(for) 11.6164 Tj +-296 TJm +(making) 29.8878 Tj +-296 TJm +(additional) 39.8504 Tj +-296 TJm +(calls) 18.2614 Tj +-296 TJm +(to) 7.7509 Tj +-296 TJm +(pro) 13.2801 Tj +15 TJm +(vide) 17.1556 Tj +-296 TJm +(e) 4.42339 Tj +15 TJm +(xtra) 15.4918 Tj +72 81.434 Td +(input) 20.4831 Tj +-250 TJm +(data.) 19.0883 Tj +-620 TJm +(If) 6.63509 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ant) 12.1743 Tj +-250 TJm +(that) 14.9439 Tj +-250 TJm +(kind) 17.7135 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(mechanism,) 47.8703 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(lo) 7.7509 Tj +25 TJm +(w-le) 17.7035 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(el) 7.193 Tj +-250 TJm +(interf) 21.579 Tj +10 TJm +(ace.) 15.7608 Tj +[1 0 0 1 72 79.2772] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -28.4254] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(26) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 30 30 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-223 TJm +(the) 12.1743 Tj +-224 TJm +(meaning) 34.3112 Tj +-223 TJm +(of) 8.29885 Tj +-224 TJm +(parameters) 43.7059 Tj +[1 0 0 1 195.306 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -195.306 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +195.306 710.037 Td +/F134_0 9.9626 Tf +(blockSize100k) 77.7083 Tj +[1 0 0 1 273.015 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -273.015 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +273.015 710.037 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 277.784 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -277.784 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +277.784 710.037 Td +/F134_0 9.9626 Tf +(verbosity) 53.798 Tj +[1 0 0 1 331.583 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -331.583 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +333.808 710.037 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 350.42 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -350.42 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +350.42 710.037 Td +/F134_0 9.9626 Tf +(workFactor) 59.7756 Tj +[1 0 0 1 410.196 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -410.196 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +410.196 710.037 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-229 TJm +(see) 12.7222 Tj +[1 0 0 1 429.913 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -429.913 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +429.913 710.037 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 537.509 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -537.509 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +537.509 710.037 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 707.88] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -697.918] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 688.12 Td +/F130_0 9.9626 Tf +(T) 6.08715 Tj +80 TJm +(o) 4.9813 Tj +-410 TJm +(guarantee) 38.7246 Tj +-410 TJm +(that) 14.9439 Tj +-410 TJm +(the) 12.1743 Tj +-410 TJm +(compressed) 47.0334 Tj +-410 TJm +(data) 16.5977 Tj +-410 TJm +(will) 15.5018 Tj +-410 TJm +(\002t) 8.30881 Tj +-410 TJm +(in) 7.7509 Tj +-410 TJm +(its) 9.41466 Tj +-410 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +40 TJm +(,) 2.49065 Tj +-450 TJm +(allocate) 30.9837 Tj +-410 TJm +(an) 9.40469 Tj +-410 TJm +(output) 25.4644 Tj +-410 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-411 TJm +(of) 8.29885 Tj +-410 TJm +(size) 15.4918 Tj +-410 TJm +(1%) 13.2801 Tj +-410 TJm +(lar) 10.5105 Tj +18 TJm +(ger) 12.7222 Tj +-410 TJm +(than) 17.1556 Tj +-410 TJm +(the) 12.1743 Tj +72 676.164 Td +(uncompressed) 56.996 Tj +-250 TJm +(data,) 19.0883 Tj +-250 TJm +(plus) 16.6077 Tj +-250 TJm +(six) 11.6264 Tj +-250 TJm +(hundred) 32.6474 Tj +-250 TJm +(e) 4.42339 Tj +15 TJm +(xtra) 15.4918 Tj +-250 TJm +(bytes.) 23.5217 Tj +[1 0 0 1 72 674.007] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -664.045] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 654.247 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffDecompress) 155.417 Tj +[1 0 0 1 227.417 654.247] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -227.417 -654.247] cm +[1 0 0 1 0 0] Tm +0 0 Td +230.553 654.247 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-315 TJm +(not) 12.7322 Tj +-315 TJm +(write) 20.4731 Tj +-314 TJm +(data) 16.5977 Tj +-315 TJm +(at) 7.193 Tj +-315 TJm +(or) 8.29885 Tj +-315 TJm +(be) 9.40469 Tj +15 TJm +(yond) 19.9252 Tj +[1 0 0 1 362.484 654.247] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -362.484 -654.247] cm +[1 0 0 1 0 0] Tm +0 0 Td +362.484 654.247 Td +/F134_0 9.9626 Tf +(dest[) 29.8878 Tj +392.372 652.503 Td +(*) 5.97756 Tj +398.349 654.247 Td +(destLen]) 47.8205 Tj +[1 0 0 1 446.17 654.247] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -446.17 -654.247] cm +[1 0 0 1 0 0] Tm +0 0 Td +446.17 654.247 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-331 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(en) 9.40469 Tj +-315 TJm +(in) 7.7509 Tj +-315 TJm +(case) 17.1456 Tj +-314 TJm +(of) 8.29885 Tj +-315 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +72 642.291 Td +(o) 4.9813 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(er\003o) 18.2614 Tj +25 TJm +(w) 7.193 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 642.192] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -632.229] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 620.374 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues:) 23.2427 Tj +[1 0 0 1 72 620.274] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -168.369] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 167.372 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 163.786] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -610.909] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 610.909 Td +/F134_0 9.9626 Tf +(BZ_CONFIG_ERROR) 89.6634 Tj +98.4879 598.954 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(library) 41.8429 Tj +-426 TJm +(has) 17.9327 Tj +-426 TJm +(been) 23.9102 Tj +-426 TJm +(mis-compiled) 71.7307 Tj +90 586.999 Td +(BZ_PARAM_ERROR) 83.6858 Tj +98.4879 575.044 Td +(if) 11.9551 Tj +-426 TJm +(dest) 23.9102 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(destLen) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +98.4879 563.088 Td +(or) 11.9551 Tj +-426 TJm +(blockSize100k) 77.7083 Tj +-426 TJm +(<) 5.97756 Tj +-426 TJm +(1) 5.97756 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(blockSize100k) 77.7083 Tj +-426 TJm +(>) 5.97756 Tj +-426 TJm +(9) 5.97756 Tj +98.4879 551.133 Td +(or) 11.9551 Tj +-426 TJm +(verbosity) 53.798 Tj +-426 TJm +(<) 5.97756 Tj +-426 TJm +(0) 5.97756 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(verbosity) 53.798 Tj +-426 TJm +(>) 5.97756 Tj +-426 TJm +(4) 5.97756 Tj +98.4879 539.178 Td +(or) 11.9551 Tj +-426 TJm +(workFactor) 59.7756 Tj +-426 TJm +(<) 5.97756 Tj +-426 TJm +(0) 5.97756 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(workFactor) 59.7756 Tj +-426 TJm +(>) 5.97756 Tj +-426 TJm +(250) 17.9327 Tj +90 527.223 Td +(BZ_MEM_ERROR) 71.7307 Tj +98.4879 515.268 Td +(if) 11.9551 Tj +-426 TJm +(insufficient) 71.7307 Tj +-426 TJm +(memory) 35.8654 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(available) 53.798 Tj +90 503.313 Td +(BZ_OUTBUFF_FULL) 89.6634 Tj +98.4879 491.357 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(size) 23.9102 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(exceeds) 41.8429 Tj +341.655 489.614 Td +(*) 5.97756 Tj +347.633 491.357 Td +(destLen) 41.8429 Tj +90 479.402 Td +(BZ_OK) 29.8878 Tj +98.4879 467.447 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 451.905] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -441.943] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 421.284 Td +/F122_0 17.2154 Tf +(3.5.2.) 43.0729 Tj +[1 0 0 1 119.858 421.284] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.858 -421.284] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.858 421.284 Td +/F392_0 17.2154 Tf +(BZ2_bzBuffToBuffDecompress) 268.56 Tj +[1 0 0 1 388.419 421.284] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -316.419 -2.3327] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -84.6824] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 83.6862 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 80.0996] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -409.587] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 409.587 Td +/F134_0 9.9626 Tf +(int) 17.9327 Tj +-426 TJm +(BZ2_bzBuffToBuffDecompress\() 161.394 Tj +-426 TJm +(char) 23.9102 Tj +301.726 407.843 Td +(*) 5.97756 Tj +345.899 409.587 Td +(dest,) 29.8878 Tj +225.807 397.632 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +295.805 395.888 Td +(*) 5.97756 Tj +306.026 397.632 Td +(destLen,) 47.8205 Tj +225.807 385.676 Td +(char) 23.9102 Tj +249.718 383.933 Td +(*) 5.97756 Tj +293.891 385.676 Td +(source,) 41.8429 Tj +225.807 373.721 Td +(unsigned) 47.8205 Tj +-426 TJm +(int) 17.9327 Tj +-852 TJm +(sourceLen,) 59.7756 Tj +225.807 361.766 Td +(int) 17.9327 Tj +-4686 TJm +(small,) 35.8654 Tj +225.807 349.811 Td +(int) 17.9327 Tj +-4686 TJm +(verbosity) 53.798 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 334.269] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -324.306] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 312.351 Td +/F130_0 9.9626 Tf +(Attempts) 36.5329 Tj +-358 TJm +(to) 7.7509 Tj +-359 TJm +(decompress) 47.0334 Tj +-358 TJm +(the) 12.1743 Tj +-358 TJm +(data) 16.5977 Tj +-359 TJm +(in) 7.7509 Tj +[1 0 0 1 221.259 312.351] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -221.259 -312.351] cm +[1 0 0 1 0 0] Tm +0 0 Td +221.259 312.351 Td +/F134_0 9.9626 Tf +(source[0) 47.8205 Tj +-600 TJm +(..) 11.9551 Tj +-1200 TJm +(sourceLen-1]) 71.7307 Tj +[1 0 0 1 370.698 312.351] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -370.698 -312.351] cm +[1 0 0 1 0 0] Tm +0 0 Td +374.268 312.351 Td +/F130_0 9.9626 Tf +(into) 15.5018 Tj +-358 TJm +(the) 12.1743 Tj +-359 TJm +(destination) 43.7259 Tj +-358 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +40 TJm +(,) 2.49065 Tj +[1 0 0 1 486.202 312.351] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -486.202 -312.351] cm +[1 0 0 1 0 0] Tm +0 0 Td +486.202 312.351 Td +/F134_0 9.9626 Tf +(dest[0) 35.8654 Tj +-600 TJm +(..) 11.9551 Tj +72 298.653 Td +(*) 5.97756 Tj +77.9776 300.396 Td +(destLen-1]) 59.7756 Tj +[1 0 0 1 137.753 300.396] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -137.753 -300.396] cm +[1 0 0 1 0 0] Tm +0 0 Td +137.753 300.396 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-1123 TJm +(If) 6.63509 Tj +-334 TJm +(the) 12.1743 Tj +-334 TJm +(destination) 43.7259 Tj +-334 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-334 TJm +(is) 6.64505 Tj +-334 TJm +(big) 12.7322 Tj +-334 TJm +(enough,) 31.8205 Tj +[1 0 0 1 312.554 300.396] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -312.554 -300.396] cm +[1 0 0 1 0 0] Tm +0 0 Td +312.554 298.653 Td +/F134_0 9.9626 Tf +(*) 5.97756 Tj +318.531 300.396 Td +(destLen) 41.8429 Tj +[1 0 0 1 360.374 300.396] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -360.374 -300.396] cm +[1 0 0 1 0 0] Tm +0 0 Td +363.701 300.396 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-334 TJm +(set) 11.0684 Tj +-334 TJm +(to) 7.7509 Tj +-334 TJm +(the) 12.1743 Tj +-334 TJm +(size) 15.4918 Tj +-333 TJm +(of) 8.29885 Tj +-334 TJm +(the) 12.1743 Tj +-334 TJm +(uncompressed) 56.996 Tj +-334 TJm +(data,) 19.0883 Tj +72 288.441 Td +(and) 14.386 Tj +[1 0 0 1 89.5273 288.441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -89.5273 -288.441] cm +[1 0 0 1 0 0] Tm +0 0 Td +89.5273 288.441 Td +/F134_0 9.9626 Tf +(BZ_OK) 29.8878 Tj +[1 0 0 1 119.415 288.441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.415 -288.441] cm +[1 0 0 1 0 0] Tm +0 0 Td +122.556 288.441 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-315 TJm +(returned.) 35.686 Tj +-1012 TJm +(If) 6.63509 Tj +-315 TJm +(the) 12.1743 Tj +-316 TJm +(compressed) 47.0334 Tj +-315 TJm +(data) 16.5977 Tj +-315 TJm +(w) 7.193 Tj +10 TJm +(on') 13.2801 Tj +18 TJm +(t) 2.7696 Tj +-316 TJm +(\002t,) 10.7995 Tj +[1 0 0 1 313.322 288.441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -313.322 -288.441] cm +[1 0 0 1 0 0] Tm +0 0 Td +313.322 286.698 Td +/F134_0 9.9626 Tf +(*) 5.97756 Tj +319.3 288.441 Td +(destLen) 41.8429 Tj +[1 0 0 1 361.143 288.441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -361.143 -288.441] cm +[1 0 0 1 0 0] Tm +0 0 Td +364.284 288.441 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-315 TJm +(unchanged,) 45.6486 Tj +-332 TJm +(and) 14.386 Tj +[1 0 0 1 440.551 288.441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -440.551 -288.441] cm +[1 0 0 1 0 0] Tm +0 0 Td +440.551 288.441 Td +/F134_0 9.9626 Tf +(BZ_OUTBUFF_FULL) 89.6634 Tj +[1 0 0 1 530.215 288.441] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -530.215 -288.441] cm +[1 0 0 1 0 0] Tm +0 0 Td +533.355 288.441 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +72 276.486 Td +(returned.) 35.686 Tj +[1 0 0 1 72 276.386] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -266.424] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 254.568 Td +/F134_0 9.9626 Tf +(source) 35.8654 Tj +[1 0 0 1 107.865 254.568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -107.865 -254.568] cm +[1 0 0 1 0 0] Tm +0 0 Td +110.981 254.568 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-313 TJm +(assumed) 34.3112 Tj +-312 TJm +(to) 7.7509 Tj +-313 TJm +(hold) 17.7135 Tj +-313 TJm +(a) 4.42339 Tj +-313 TJm +(complete) 36.5229 Tj +[1 0 0 1 237.04 254.568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -237.04 -254.568] cm +[1 0 0 1 0 0] Tm +0 0 Td +237.04 254.568 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 266.928 254.568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -266.928 -254.568] cm +[1 0 0 1 0 0] Tm +0 0 Td +270.044 254.568 Td +/F130_0 9.9626 Tf +(format) 26.5603 Tj +-313 TJm +(data) 16.5977 Tj +-312 TJm +(stream.) 29.0509 Tj +[1 0 0 1 353.446 254.568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -353.446 -254.568] cm +[1 0 0 1 0 0] Tm +0 0 Td +353.446 254.568 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffDecompress) 155.417 Tj +[1 0 0 1 508.863 254.568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -508.863 -254.568] cm +[1 0 0 1 0 0] Tm +0 0 Td +511.978 254.568 Td +/F130_0 9.9626 Tf +(tries) 17.1556 Tj +-313 TJm +(to) 7.7509 Tj +72 242.613 Td +(decompress) 47.0334 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(entirety) 30.4357 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(stream) 26.5603 Tj +-250 TJm +(into) 15.5018 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(output) 25.4644 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +55 TJm +(.) 2.49065 Tj +[1 0 0 1 72 240.456] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -230.493] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 220.695 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(meaning) 34.3112 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(parameters) 43.7059 Tj +[1 0 0 1 196.631 220.695] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -196.631 -220.695] cm +[1 0 0 1 0 0] Tm +0 0 Td +196.631 220.695 Td +/F134_0 9.9626 Tf +(small) 29.8878 Tj +[1 0 0 1 226.519 220.695] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -226.519 -220.695] cm +[1 0 0 1 0 0] Tm +0 0 Td +229.01 220.695 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 245.887 220.695] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -245.887 -220.695] cm +[1 0 0 1 0 0] Tm +0 0 Td +245.887 220.695 Td +/F134_0 9.9626 Tf +(verbosity) 53.798 Tj +[1 0 0 1 299.685 220.695] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -299.685 -220.695] cm +[1 0 0 1 0 0] Tm +0 0 Td +299.685 220.695 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(see) 12.7222 Tj +[1 0 0 1 319.879 220.695] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -319.879 -220.695] cm +[1 0 0 1 0 0] Tm +0 0 Td +319.879 220.695 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressInit) 119.551 Tj +[1 0 0 1 439.431 220.695] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -439.431 -220.695] cm +[1 0 0 1 0 0] Tm +0 0 Td +439.431 220.695 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 218.538] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -208.576] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 198.777 Td +/F130_0 9.9626 Tf +(Because) 33.1954 Tj +-250 TJm +(the) 12.1743 Tj +-249 TJm +(compression) 50.3609 Tj +-250 TJm +(ratio) 18.2614 Tj +-249 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-249 TJm +(compressed) 47.0334 Tj +-250 TJm +(data) 16.5977 Tj +-249 TJm +(cannot) 26.5603 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(kno) 14.9439 Tj +25 TJm +(wn) 12.1743 Tj +-249 TJm +(in) 7.7509 Tj +-250 TJm +(adv) 14.386 Tj +25 TJm +(ance,) 20.7421 Tj +-249 TJm +(there) 19.9152 Tj +-250 TJm +(is) 6.64505 Tj +-249 TJm +(no) 9.9626 Tj +-250 TJm +(easy) 17.7035 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ay) 9.40469 Tj +-249 TJm +(to) 7.7509 Tj +-250 TJm +(guarantee) 38.7246 Tj +72 186.822 Td +(that) 14.9439 Tj +-286 TJm +(the) 12.1743 Tj +-287 TJm +(output) 25.4644 Tj +-286 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +-287 TJm +(will) 15.5018 Tj +-286 TJm +(be) 9.40469 Tj +-286 TJm +(big) 12.7322 Tj +-287 TJm +(enough.) 31.8205 Tj +-838 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-287 TJm +(may) 17.1556 Tj +-286 TJm +(of) 8.29885 Tj +-287 TJm +(course) 26.0024 Tj +-286 TJm +(mak) 17.1556 Tj +10 TJm +(e) 4.42339 Tj +-286 TJm +(arrangements) 53.6685 Tj +-287 TJm +(in) 7.7509 Tj +-286 TJm +(your) 18.2614 Tj +-287 TJm +(code) 18.8094 Tj +-286 TJm +(to) 7.7509 Tj +-286 TJm +(record) 25.4445 Tj +-287 TJm +(the) 12.1743 Tj +-286 TJm +(size) 15.4918 Tj +-287 TJm +(of) 8.29885 Tj +72 174.867 Td +(the) 12.1743 Tj +-250 TJm +(uncompressed) 56.996 Tj +-250 TJm +(data,) 19.0883 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-250 TJm +(such) 18.2614 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(mechanism) 45.3796 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(be) 9.40469 Tj +15 TJm +(yond) 19.9252 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(scope) 22.6848 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(this) 14.396 Tj +-250 TJm +(library) 26.5603 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 172.71] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -162.747] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 152.949 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffDecompress) 155.417 Tj +[1 0 0 1 227.417 152.949] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -227.417 -152.949] cm +[1 0 0 1 0 0] Tm +0 0 Td +230.553 152.949 Td +/F130_0 9.9626 Tf +(will) 15.5018 Tj +-315 TJm +(not) 12.7322 Tj +-315 TJm +(write) 20.4731 Tj +-314 TJm +(data) 16.5977 Tj +-315 TJm +(at) 7.193 Tj +-315 TJm +(or) 8.29885 Tj +-315 TJm +(be) 9.40469 Tj +15 TJm +(yond) 19.9252 Tj +[1 0 0 1 362.484 152.949] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -362.484 -152.949] cm +[1 0 0 1 0 0] Tm +0 0 Td +362.484 152.949 Td +/F134_0 9.9626 Tf +(dest[) 29.8878 Tj +392.372 151.206 Td +(*) 5.97756 Tj +398.349 152.949 Td +(destLen]) 47.8205 Tj +[1 0 0 1 446.17 152.949] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -446.17 -152.949] cm +[1 0 0 1 0 0] Tm +0 0 Td +446.17 152.949 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-331 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(en) 9.40469 Tj +-315 TJm +(in) 7.7509 Tj +-315 TJm +(case) 17.1456 Tj +-314 TJm +(of) 8.29885 Tj +-315 TJm +(b) 4.9813 Tj +20 TJm +(uf) 8.29885 Tj +25 TJm +(fer) 11.0585 Tj +72 140.994 Td +(o) 4.9813 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(er\003o) 18.2614 Tj +25 TJm +(w) 7.193 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 140.894] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -130.932] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 119.076 Td +/F130_0 9.9626 Tf +(Possible) 33.2153 Tj +-250 TJm +(return) 23.7907 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues:) 23.2427 Tj +[1 0 0 1 72 118.977] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -68.1248] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(27) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 31 31 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 4.3836 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -344.462 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +420.96 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 498.449 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -498.449 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +498.449 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 546.269 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -15.0365 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -248.702] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 227.148 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 223.562] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -711.631] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 711.631 Td +/F134_0 9.9626 Tf +(BZ_CONFIG_ERROR) 89.6634 Tj +98.4879 699.676 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(library) 41.8429 Tj +-426 TJm +(has) 17.9327 Tj +-426 TJm +(been) 23.9102 Tj +-426 TJm +(mis-compiled) 71.7307 Tj +90 687.721 Td +(BZ_PARAM_ERROR) 83.6858 Tj +98.4879 675.766 Td +(if) 11.9551 Tj +-426 TJm +(dest) 23.9102 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(destLen) 41.8429 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(NULL) 23.9102 Tj +98.4879 663.811 Td +(or) 11.9551 Tj +-426 TJm +(small) 29.8878 Tj +-426 TJm +(!=) 11.9551 Tj +-426 TJm +(0) 5.97756 Tj +-426 TJm +(&&) 11.9551 Tj +-426 TJm +(small) 29.8878 Tj +-426 TJm +(!=) 11.9551 Tj +-426 TJm +(1) 5.97756 Tj +98.4879 651.856 Td +(or) 11.9551 Tj +-426 TJm +(verbosity) 53.798 Tj +-426 TJm +(<) 5.97756 Tj +-426 TJm +(0) 5.97756 Tj +-426 TJm +(or) 11.9551 Tj +-426 TJm +(verbosity) 53.798 Tj +-426 TJm +(>) 5.97756 Tj +-426 TJm +(4) 5.97756 Tj +90 639.9 Td +(BZ_MEM_ERROR) 71.7307 Tj +98.4879 627.945 Td +(if) 11.9551 Tj +-426 TJm +(insufficient) 71.7307 Tj +-426 TJm +(memory) 35.8654 Tj +-426 TJm +(is) 11.9551 Tj +-426 TJm +(available) 53.798 Tj +90 615.99 Td +(BZ_OUTBUFF_FULL) 89.6634 Tj +98.4879 604.035 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(size) 23.9102 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(exceeds) 41.8429 Tj +341.655 602.291 Td +(*) 5.97756 Tj +347.633 604.035 Td +(destLen) 41.8429 Tj +90 592.08 Td +(BZ_DATA_ERROR) 77.7083 Tj +98.4879 580.125 Td +(if) 11.9551 Tj +-426 TJm +(a) 5.97756 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(integrity) 53.798 Tj +-426 TJm +(error) 29.8878 Tj +-426 TJm +(was) 17.9327 Tj +-426 TJm +(detected) 47.8205 Tj +-426 TJm +(in) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +-426 TJm +(data) 23.9102 Tj +90 568.169 Td +(BZ_DATA_ERROR_MAGIC) 113.574 Tj +98.4879 556.214 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(doesn't) 41.8429 Tj +-426 TJm +(begin) 29.8878 Tj +-426 TJm +(with) 23.9102 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(right) 29.8878 Tj +-426 TJm +(magic) 29.8878 Tj +-426 TJm +(bytes) 29.8878 Tj +90 544.259 Td +(BZ_UNEXPECTED_EOF) 101.619 Tj +98.4879 532.304 Td +(if) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compressed) 59.7756 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(ends) 23.9102 Tj +-426 TJm +(unexpectedly) 71.7307 Tj +90 520.349 Td +(BZ_OK) 29.8878 Tj +98.4879 508.394 Td +(otherwise) 53.798 Tj +[1 0 0 1 72 492.852] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -482.889] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 458.099 Td +/F122_0 20.6585 Tf +(3.6.) 34.4584 Tj +[1 0 0 1 112.201 458.099] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -112.201 -458.099] cm +[1 0 0 1 0 0] Tm +0 0 Td +112.201 458.099 Td +/F392_0 20.6585 Tf +(zlib) 49.5804 Tj +[1 0 0 1 161.781 458.099] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -161.781 -458.099] cm +[1 0 0 1 0 0] Tm +0 0 Td +167.524 458.099 Td +/F122_0 20.6585 Tf +(compatibility) 127.422 Tj +-278 TJm +(functions) 92.9633 Tj +[1 0 0 1 72 453.823] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -443.86] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 436.181 Td +/F130_0 9.9626 Tf +(Y) 7.193 Tj +110 TJm +(oshioka) 30.9936 Tj +-604 TJm +(Tsuneo) 29.3299 Tj +-604 TJm +(has) 13.2801 Tj +-604 TJm +(contrib) 28.224 Tj +20 TJm +(uted) 17.1556 Tj +-604 TJm +(some) 21.031 Tj +-604 TJm +(functions) 37.0808 Tj +-604 TJm +(to) 7.7509 Tj +-604 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-604 TJm +(better) 22.6848 Tj +[1 0 0 1 356.347 436.181] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -356.347 -436.181] cm +[1 0 0 1 0 0] Tm +0 0 Td +356.347 436.181 Td +/F134_0 9.9626 Tf +(zlib) 23.9102 Tj +[1 0 0 1 380.257 436.181] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -380.257 -436.181] cm +[1 0 0 1 0 0] Tm +0 0 Td +386.275 436.181 Td +/F130_0 9.9626 Tf +(compatibility) 53.1405 Tj +65 TJm +(.) 2.49065 Tj +-1372 TJm +(These) 23.7907 Tj +-604 TJm +(functions) 37.0808 Tj +-604 TJm +(are) 12.1643 Tj +[1 0 0 1 72 424.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -424.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 424.226 Td +/F134_0 9.9626 Tf +(BZ2_bzopen) 59.7756 Tj +[1 0 0 1 131.776 424.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -131.776 -424.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +131.776 424.226 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 144.283 424.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -144.283 -424.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +144.283 424.226 Td +/F134_0 9.9626 Tf +(BZ2_bzread) 59.7756 Tj +[1 0 0 1 204.059 424.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -204.059 -424.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +204.059 424.226 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 216.566 424.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -216.566 -424.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +216.566 424.226 Td +/F134_0 9.9626 Tf +(BZ2_bzwrite) 65.7532 Tj +[1 0 0 1 282.32 424.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -282.32 -424.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +282.32 424.226 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 294.827 424.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -294.827 -424.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +294.827 424.226 Td +/F134_0 9.9626 Tf +(BZ2_bzflush) 65.7532 Tj +[1 0 0 1 360.581 424.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -360.581 -424.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +360.581 424.226 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 373.088 424.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -373.088 -424.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +373.088 424.226 Td +/F134_0 9.9626 Tf +(BZ2_bzclose) 65.7532 Tj +[1 0 0 1 438.842 424.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -438.842 -424.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +438.842 424.226 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 451.349 424.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -451.349 -424.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +451.349 424.226 Td +/F134_0 9.9626 Tf +(BZ2_bzerror) 65.7532 Tj +[1 0 0 1 517.102 424.226] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -517.102 -424.226] cm +[1 0 0 1 0 0] Tm +0 0 Td +525.614 424.226 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 72 412.271] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -412.271] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 412.271 Td +/F134_0 9.9626 Tf +(BZ2_bzlibVersion) 95.641 Tj +[1 0 0 1 167.641 412.271] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -167.641 -412.271] cm +[1 0 0 1 0 0] Tm +0 0 Td +167.641 412.271 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-1420 TJm +(Thes) 19.3673 Tj +1 TJm +(e) 4.42339 Tj +-384 TJm +(functions) 37.0808 Tj +-383 TJm +(are) 12.1643 Tj +-383 TJm +(not) 12.7322 Tj +-383 TJm +(\(yet\)) 18.8094 Tj +-384 TJm +(of) 8.29885 Tj +25 TJm +(\002cially) 27.6761 Tj +-383 TJm +(part) 15.4918 Tj +-383 TJm +(of) 8.29885 Tj +-383 TJm +(the) 12.1743 Tj +-384 TJm +(library) 26.5603 Tj +65 TJm +(.) 2.49065 Tj +-1419 TJm +(If) 6.63509 Tj +-383 TJm +(the) 12.1743 Tj +15 TJm +(y) 4.9813 Tj +-384 TJm +(break,) 24.6176 Tj +-416 TJm +(you) 14.9439 Tj +-383 TJm +(get) 12.1743 Tj +-384 TJm +(to) 7.7509 Tj +72 400.316 Td +(k) 4.9813 Tj +10 TJm +(eep) 13.8281 Tj +-250 TJm +(all) 9.9626 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(pieces.) 27.3872 Tj +-620 TJm +(Ne) 11.6164 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ertheless,) 37.3498 Tj +-250 TJm +(I) 3.31755 Tj +-250 TJm +(think) 20.4831 Tj +-250 TJm +(the) 12.1743 Tj +15 TJm +(y) 4.9813 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ork) 13.2801 Tj +-250 TJm +(ok.) 12.4533 Tj +[1 0 0 1 72 398.159] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -48.8169] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 47.8207 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 44.2341] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -388.794] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 388.794 Td +/F134_0 9.9626 Tf +(typedef) 41.8429 Tj +-426 TJm +(void) 23.9102 Tj +-426 TJm +(BZFILE;) 41.8429 Tj +90 364.884 Td +(const) 29.8878 Tj +-426 TJm +(char) 23.9102 Tj +152.286 363.14 Td +(*) 5.97756 Tj +162.508 364.884 Td +(BZ2_bzlibVersion) 95.641 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(void) 23.9102 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 349.342] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -339.379] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 327.424 Td +/F130_0 9.9626 Tf +(Returns) 30.9936 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(string) 22.6948 Tj +-250 TJm +(indicating) 39.8504 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(library) 26.5603 Tj +-250 TJm +(v) 4.9813 Tj +15 TJm +(ersion.) 26.8392 Tj +[1 0 0 1 72 325.267] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -36.8618] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 35.8655 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 32.2789] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -315.902] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 315.902 Td +/F134_0 9.9626 Tf +(BZFILE) 35.8654 Tj +130.109 314.159 Td +(*) 5.97756 Tj +140.331 315.902 Td +(BZ2_bzopen) 59.7756 Tj +-852 TJm +(\() 5.97756 Tj +-426 TJm +(const) 29.8878 Tj +-426 TJm +(char) 23.9102 Tj +281.103 314.159 Td +(*) 5.97756 Tj +287.08 315.902 Td +(path,) 29.8878 Tj +-426 TJm +(const) 29.8878 Tj +-426 TJm +(char) 23.9102 Tj +383.498 314.159 Td +(*) 5.97756 Tj +389.476 315.902 Td +(mode) 23.9102 Tj +-426 TJm +(\);) 11.9551 Tj +90 303.947 Td +(BZFILE) 35.8654 Tj +130.109 302.204 Td +(*) 5.97756 Tj +140.331 303.947 Td +(BZ2_bzdopen) 65.7532 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(int) 17.9327 Tj +-3408 TJm +(fd,) 17.9327 Tj +-1704 TJm +(const) 29.8878 Tj +-426 TJm +(char) 23.9102 Tj +369.629 302.204 Td +(*) 5.97756 Tj +375.607 303.947 Td +(mode) 23.9102 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 288.405] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -278.443] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 266.488 Td +/F130_0 9.9626 Tf +(Opens) 25.4544 Tj +-243 TJm +(a) 4.42339 Tj +[1 0 0 1 106.713 266.488] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -106.713 -266.488] cm +[1 0 0 1 0 0] Tm +0 0 Td +106.713 266.488 Td +/F134_0 9.9626 Tf +(.bz2) 23.9102 Tj +[1 0 0 1 130.624 266.488] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -130.624 -266.488] cm +[1 0 0 1 0 0] Tm +0 0 Td +133.041 266.488 Td +/F130_0 9.9626 Tf +(\002le) 12.7322 Tj +-243 TJm +(for) 11.6164 Tj +-242 TJm +(reading) 29.8778 Tj +-243 TJm +(or) 8.29885 Tj +-243 TJm +(writing,) 31.2726 Tj +-244 TJm +(using) 21.589 Tj +-243 TJm +(ei) 7.193 Tj +1 TJm +(ther) 15.4918 Tj +-243 TJm +(its) 9.41466 Tj +-243 TJm +(name) 21.579 Tj +-242 TJm +(o) 4.9813 Tj +-1 TJm +(r) 3.31755 Tj +-242 TJm +(a) 4.42339 Tj +-243 TJm +(pre-e) 20.4632 Tj +15 TJm +(xisting) 27.1282 Tj +-243 TJm +(\002le) 12.7322 Tj +-242 TJm +(descriptor) 39.8404 Tj +55 TJm +(.) 2.49065 Tj +-615 TJm +(Analogous) 43.1679 Tj +-243 TJm +(to) 7.7509 Tj +[1 0 0 1 510.112 266.488] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -510.112 -266.488] cm +[1 0 0 1 0 0] Tm +0 0 Td +510.112 266.488 Td +/F134_0 9.9626 Tf +(fopen) 29.8878 Tj +[1 0 0 1 540 266.488] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -266.488] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 254.532 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 88.8767 254.532] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -88.8767 -254.532] cm +[1 0 0 1 0 0] Tm +0 0 Td +88.8767 254.532 Td +/F134_0 9.9626 Tf +(fdopen) 35.8654 Tj +[1 0 0 1 124.742 254.532] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -124.742 -254.532] cm +[1 0 0 1 0 0] Tm +0 0 Td +124.742 254.532 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 252.998] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -36.8618] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 35.8655 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 32.2789] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -243.633] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 243.633 Td +/F134_0 9.9626 Tf +(int) 17.9327 Tj +-426 TJm +(BZ2_bzread) 59.7756 Tj +-852 TJm +(\() 5.97756 Tj +-426 TJm +(BZFILE) 35.8654 Tj +226.528 241.89 Td +(*) 5.97756 Tj +236.749 243.633 Td +(b,) 11.9551 Tj +-426 TJm +(void) 23.9102 Tj +276.859 241.89 Td +(*) 5.97756 Tj +287.08 243.633 Td +(buf,) 23.9102 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(len) 17.9327 Tj +-426 TJm +(\);) 11.9551 Tj +90 231.678 Td +(int) 17.9327 Tj +-426 TJm +(BZ2_bzwrite) 65.7532 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(BZFILE) 35.8654 Tj +228.261 229.935 Td +(*) 5.97756 Tj +238.483 231.678 Td +(b,) 11.9551 Tj +-426 TJm +(void) 23.9102 Tj +278.592 229.935 Td +(*) 5.97756 Tj +288.814 231.678 Td +(buf,) 23.9102 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(len) 17.9327 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 216.136] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -206.174] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 194.219 Td +/F130_0 9.9626 Tf +(Reads/writes) 51.4668 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(from/to) 29.8878 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(pre) 12.7222 Tj +25 TJm +(viously) 29.3399 Tj +-250 TJm +(opened) 28.772 Tj +[1 0 0 1 259.903 194.219] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -259.903 -194.219] cm +[1 0 0 1 0 0] Tm +0 0 Td +259.903 194.219 Td +/F134_0 9.9626 Tf +(BZFILE) 35.8654 Tj +[1 0 0 1 295.769 194.219] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -295.769 -194.219] cm +[1 0 0 1 0 0] Tm +0 0 Td +295.769 194.219 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-500 TJm +(Analogous) 43.1679 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 359.141 194.219] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -359.141 -194.219] cm +[1 0 0 1 0 0] Tm +0 0 Td +359.141 194.219 Td +/F134_0 9.9626 Tf +(fread) 29.8878 Tj +[1 0 0 1 389.029 194.219] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -389.029 -194.219] cm +[1 0 0 1 0 0] Tm +0 0 Td +391.519 194.219 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 408.396 194.219] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -408.396 -194.219] cm +[1 0 0 1 0 0] Tm +0 0 Td +408.396 194.219 Td +/F134_0 9.9626 Tf +(fwrite) 35.8654 Tj +[1 0 0 1 444.261 194.219] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.261 -194.219] cm +[1 0 0 1 0 0] Tm +0 0 Td +444.261 194.219 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 192.062] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -36.8618] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 35.8655 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 32.2789] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -182.697] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 182.697 Td +/F134_0 9.9626 Tf +(int) 17.9327 Tj +-852 TJm +(BZ2_bzflush) 65.7532 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(BZFILE) 35.8654 Tj +232.505 180.954 Td +(*) 5.97756 Tj +242.727 182.697 Td +(b) 5.97756 Tj +-426 TJm +(\);) 11.9551 Tj +90 170.742 Td +(void) 23.9102 Tj +-426 TJm +(BZ2_bzclose) 65.7532 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(BZFILE) 35.8654 Tj +234.239 168.998 Td +(*) 5.97756 Tj +244.46 170.742 Td +(b) 5.97756 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 155.2] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -145.237] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 133.282 Td +/F130_0 9.9626 Tf +(Flushes/closes) 57.5639 Tj +-250 TJm +(a) 4.42339 Tj +[1 0 0 1 138.968 133.282] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -138.968 -133.282] cm +[1 0 0 1 0 0] Tm +0 0 Td +138.968 133.282 Td +/F134_0 9.9626 Tf +(BZFILE) 35.8654 Tj +[1 0 0 1 174.833 133.282] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -174.833 -133.282] cm +[1 0 0 1 0 0] Tm +0 0 Td +174.833 133.282 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 179.815 133.282] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -179.815 -133.282] cm +[1 0 0 1 0 0] Tm +0 0 Td +179.815 133.282 Td +/F134_0 9.9626 Tf +(BZ2_bzflush) 65.7532 Tj +[1 0 0 1 245.568 133.282] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -245.568 -133.282] cm +[1 0 0 1 0 0] Tm +0 0 Td +248.059 133.282 Td +/F130_0 9.9626 Tf +(doesn') 26.5603 Tj +18 TJm +(t) 2.7696 Tj +-250 TJm +(actually) 31.5416 Tj +-250 TJm +(do) 9.9626 Tj +-250 TJm +(an) 9.40469 Tj +15 TJm +(ything.) 27.9551 Tj +-620 TJm +(Analogous) 43.1679 Tj +-250 TJm +(to) 7.7509 Tj +[1 0 0 1 425.472 133.282] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -425.472 -133.282] cm +[1 0 0 1 0 0] Tm +0 0 Td +425.472 133.282 Td +/F134_0 9.9626 Tf +(fflush) 35.8654 Tj +[1 0 0 1 461.338 133.282] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -461.338 -133.282] cm +[1 0 0 1 0 0] Tm +0 0 Td +463.828 133.282 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 480.705 133.282] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -480.705 -133.282] cm +[1 0 0 1 0 0] Tm +0 0 Td +480.705 133.282 Td +/F134_0 9.9626 Tf +(fclose) 35.8654 Tj +[1 0 0 1 516.57 133.282] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -516.57 -133.282] cm +[1 0 0 1 0 0] Tm +0 0 Td +516.57 133.282 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 131.125] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -121.761] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 121.761 Td +/F134_0 9.9626 Tf +(const) 29.8878 Tj +-426 TJm +(char) 23.9102 Tj +152.286 120.017 Td +(*) 5.97756 Tj +162.508 121.761 Td +(BZ2_bzerror) 65.7532 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(BZFILE) 35.8654 Tj +282.836 120.017 Td +(*) 5.97756 Tj +288.814 121.761 Td +(b,) 11.9551 Tj +-426 TJm +(int) 17.9327 Tj +327.19 120.017 Td +(*) 5.97756 Tj +333.167 121.761 Td +(errnum) 35.8654 Tj +-426 TJm +(\)) 5.97756 Tj +[1 0 0 1 72 106.219] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -96.2563] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 84.3011 Td +/F130_0 9.9626 Tf +(Returns) 30.9936 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(string) 22.6948 Tj +-250 TJm +(describing) 41.5042 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(more) 20.4731 Tj +-250 TJm +(recent) 24.3386 Tj +-250 TJm +(error) 19.3573 Tj +-250 TJm +(status) 22.6948 Tj +-250 TJm +(of) 8.29885 Tj +[1 0 0 1 303.858 84.3011] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -303.858 -84.3011] cm +[1 0 0 1 0 0] Tm +0 0 Td +303.858 84.3011 Td +/F134_0 9.9626 Tf +(b) 5.97756 Tj +[1 0 0 1 309.835 84.3011] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -309.835 -84.3011] cm +[1 0 0 1 0 0] Tm +0 0 Td +309.835 84.3011 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(also) 16.0497 Tj +-250 TJm +(sets) 14.9439 Tj +[1 0 0 1 367.668 84.3011] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -367.668 -84.3011] cm +[1 0 0 1 0 0] Tm +0 0 Td +367.668 82.5576 Td +/F134_0 9.9626 Tf +(*) 5.97756 Tj +373.645 84.3011 Td +(errnum) 35.8654 Tj +[1 0 0 1 409.511 84.3011] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -409.511 -84.3011] cm +[1 0 0 1 0 0] Tm +0 0 Td +412.001 84.3011 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-250 TJm +(its) 9.41466 Tj +-250 TJm +(numerical) 39.8404 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alue.) 19.0883 Tj +[1 0 0 1 72 82.1443] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -21.3298] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 4.3836 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -495.734 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +536.307 50.9514 Td +/F130_0 9.9626 Tf +(28) 9.9626 Tj +[1 0 0 1 455.161 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -15.0365 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 32 32 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -741.554] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 704.93 Td +/F122_0 20.6585 Tf +(3.7.) 34.4584 Tj +-278 TJm +(Using) 57.3893 Tj +-278 TJm +(the) 30.9877 Tj +-278 TJm +(librar) 51.6669 Tj +-10 TJm +(y) 11.4861 Tj +-278 TJm +(in) 18.3654 Tj +-278 TJm +(a) 11.4861 Tj +[1 0 0 1 322.501 704.93] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -322.501 -704.93] cm +[1 0 0 1 0 0] Tm +0 0 Td +322.501 704.93 Td +/F392_0 20.6585 Tf +(stdio) 61.9755 Tj +[1 0 0 1 384.477 704.93] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -384.477 -704.93] cm +[1 0 0 1 0 0] Tm +0 0 Td +384.477 704.93 Td +/F122_0 20.6585 Tf +(-free) 44.767 Tj +72 680.139 Td +(en) 24.1085 Tj +40 TJm +(vir) 25.2653 Tj +20 TJm +(onment) 74.5978 Tj +[1 0 0 1 72 679.881] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -669.983] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 649.583 Td +/F122_0 17.2154 Tf +(3.7.1.) 43.0729 Tj +-278 TJm +(Getting) 60.2539 Tj +-278 TJm +(rid) 22.0013 Tj +-278 TJm +(of) 16.2513 Tj +[1 0 0 1 232.721 649.583] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -232.721 -649.583] cm +[1 0 0 1 0 0] Tm +0 0 Td +232.721 649.583 Td +/F392_0 17.2154 Tf +(stdio) 51.6462 Tj +[1 0 0 1 284.367 649.583] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -212.367 -3.8303] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -635.855] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 627.73 Td +/F130_0 9.9626 Tf +(In) 8.29885 Tj +-319 TJm +(a) 4.42339 Tj +-319 TJm +(deeply) 26.5603 Tj +-319 TJm +(embedded) 40.9463 Tj +-319 TJm +(application,) 46.7644 Tj +-336 TJm +(you) 14.9439 Tj +-319 TJm +(might) 23.2527 Tj +-319 TJm +(w) 7.193 Tj +10 TJm +(ant) 12.1743 Tj +-319 TJm +(to) 7.7509 Tj +-319 TJm +(use) 13.2801 Tj +-319 TJm +(just) 14.396 Tj +-319 TJm +(the) 12.1743 Tj +-319 TJm +(memory-to-memory) 80.7967 Tj +-319 TJm +(functions.) 39.5714 Tj +-1035 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-319 TJm +(can) 13.8281 Tj +-319 TJm +(do) 9.9626 Tj +-319 TJm +(this) 14.396 Tj +72 615.775 Td +(con) 14.386 Tj +40 TJm +(v) 4.9813 Tj +15 TJm +(eniently) 32.0995 Tj +-327 TJm +(by) 9.9626 Tj +-327 TJm +(compiling) 40.4083 Tj +-327 TJm +(the) 12.1743 Tj +-327 TJm +(library) 26.5603 Tj +-327 TJm +(with) 17.7135 Tj +-328 TJm +(preproces) 38.7246 Tj +1 TJm +(sor) 12.1743 Tj +-328 TJm +(symbol) 29.3399 Tj +[1 0 0 1 336.046 615.775] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -336.046 -615.775] cm +[1 0 0 1 0 0] Tm +0 0 Td +336.046 615.775 Td +/F134_0 9.9626 Tf +(BZ_NO_STDIO) 65.7532 Tj +[1 0 0 1 401.799 615.775] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -401.799 -615.775] cm +[1 0 0 1 0 0] Tm +0 0 Td +405.057 615.775 Td +/F130_0 9.9626 Tf +(de\002ned.) 31.8205 Tj +-1083 TJm +(Doing) 24.9065 Tj +-327 TJm +(this) 14.396 Tj +-327 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(es) 8.29885 Tj +-327 TJm +(you) 14.9439 Tj +-327 TJm +(a) 4.42339 Tj +72 603.819 Td +(library) 26.5603 Tj +-250 TJm +(containing) 42.0621 Tj +-250 TJm +(only) 17.7135 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(follo) 18.8194 Tj +25 TJm +(wing) 19.9252 Tj +-250 TJm +(eight) 19.9252 Tj +-250 TJm +(functions:) 39.8504 Tj +[1 0 0 1 72 601.662] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -591.764] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 581.966 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressInit) 107.596 Tj +[1 0 0 1 179.596 581.966] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -179.596 -581.966] cm +[1 0 0 1 0 0] Tm +0 0 Td +179.596 581.966 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 199.079 581.966] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -199.079 -581.966] cm +[1 0 0 1 0 0] Tm +0 0 Td +199.079 581.966 Td +/F134_0 9.9626 Tf +(BZ2_bzCompress) 83.6858 Tj +[1 0 0 1 282.765 581.966] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -282.765 -581.966] cm +[1 0 0 1 0 0] Tm +0 0 Td +282.765 581.966 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 302.247 581.966] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -302.247 -581.966] cm +[1 0 0 1 0 0] Tm +0 0 Td +302.247 581.966 Td +/F134_0 9.9626 Tf +(BZ2_bzCompressEnd) 101.619 Tj +[1 0 0 1 403.866 581.966] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 14.0915 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -417.958 -581.966] cm +[1 0 0 1 0 0] Tm +0 0 Td +417.958 581.966 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressInit) 119.551 Tj +[1 0 0 1 537.509 581.966] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -537.509 -581.966] cm +[1 0 0 1 0 0] Tm +0 0 Td +537.509 581.966 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 72 570.011] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -570.011] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 570.011 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompress) 95.641 Tj +[1 0 0 1 167.641 570.011] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -167.641 -570.011] cm +[1 0 0 1 0 0] Tm +0 0 Td +167.641 570.011 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 172.144 570.011] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -172.144 -570.011] cm +[1 0 0 1 0 0] Tm +0 0 Td +172.144 570.011 Td +/F134_0 9.9626 Tf +(BZ2_bzDecompressEnd) 113.574 Tj +[1 0 0 1 285.719 570.011] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -287.611 -570.011] cm +[1 0 0 1 0 0] Tm +0 0 Td +287.611 570.011 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffCompress) 143.461 Tj +[1 0 0 1 431.073 570.011] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -431.073 -570.011] cm +[1 0 0 1 0 0] Tm +0 0 Td +431.073 570.011 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 435.577 570.011] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -435.577 -570.011] cm +[1 0 0 1 0 0] Tm +0 0 Td +435.577 570.011 Td +/F134_0 9.9626 Tf +(BZ2_bzBuffToBuffDecompress) 155.417 Tj +[1 0 0 1 590.994 570.011] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -518.994 -1.5341] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8981] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -558.579] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 548.158 Td +/F130_0 9.9626 Tf +(When) 23.7907 Tj +-250 TJm +(compiled) 37.0808 Tj +-250 TJm +(lik) 10.5205 Tj +10 TJm +(e) 4.42339 Tj +-250 TJm +(this,) 16.8866 Tj +-250 TJm +(all) 9.9626 Tj +-250 TJm +(functions) 37.0808 Tj +-250 TJm +(will) 15.5018 Tj +-250 TJm +(ignore) 25.4544 Tj +[1 0 0 1 272.526 548.158] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -272.526 -548.158] cm +[1 0 0 1 0 0] Tm +0 0 Td +272.526 548.158 Td +/F134_0 9.9626 Tf +(verbosity) 53.798 Tj +[1 0 0 1 326.324 548.158] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -326.324 -548.158] cm +[1 0 0 1 0 0] Tm +0 0 Td +328.815 548.158 Td +/F130_0 9.9626 Tf +(settings.) 32.9364 Tj +[1 0 0 1 72 546.001] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -536.103] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 517.601 Td +/F122_0 17.2154 Tf +(3.7.2.) 43.0729 Tj +-278 TJm +(Critical) 58.3602 Tj +-278 TJm +(err) 22.9653 Tj +20 TJm +(or) 17.2154 Tj +-278 TJm +(handling) 71.7366 Tj +[1 0 0 1 72 513.771] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -503.873] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 495.748 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 119.821 495.748] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.821 -495.748] cm +[1 0 0 1 0 0] Tm +0 0 Td +124.529 495.748 Td +/F130_0 9.9626 Tf +(contains) 33.2053 Tj +-473 TJm +(a) 4.42339 Tj +-472 TJm +(number) 30.4357 Tj +-473 TJm +(of) 8.29885 Tj +-472 TJm +(internal) 30.4357 Tj +-473 TJm +(assertion) 35.417 Tj +-472 TJm +(checks) 27.1082 Tj +-473 TJm +(which) 24.3486 Tj +-472 TJm +(should,) 29.0609 Tj +-529 TJm +(needless) 33.7533 Tj +-472 TJm +(to) 7.7509 Tj +-473 TJm +(say) 13.2801 Tj +65 TJm +(,) 2.49065 Tj +-528 TJm +(ne) 9.40469 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-473 TJm +(be) 9.40469 Tj +-472 TJm +(acti) 14.386 Tj +25 TJm +(v) 4.9813 Tj +25 TJm +(ated.) 19.0883 Tj +72 483.793 Td +(Ne) 11.6164 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ertheless,) 37.3498 Tj +-533 TJm +(if) 6.08715 Tj +-476 TJm +(an) 9.40469 Tj +-476 TJm +(assertion) 35.417 Tj +-476 TJm +(should) 26.5703 Tj +-476 TJm +(f) 3.31755 Tj +10 TJm +(ail,) 12.4533 Tj +-532 TJm +(beha) 18.8094 Tj +20 TJm +(viour) 21.031 Tj +-476 TJm +(depends) 32.6474 Tj +-476 TJm +(on) 9.9626 Tj +-476 TJm +(whether) 32.0895 Tj +-476 TJm +(or) 8.29885 Tj +-477 TJm +(not) 12.7322 Tj +-476 TJm +(the) 12.1743 Tj +-476 TJm +(library) 26.5603 Tj +-476 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-476 TJm +(compiled) 37.0808 Tj +-476 TJm +(with) 17.7135 Tj +[1 0 0 1 72 471.838] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -471.838] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 471.838 Td +/F134_0 9.9626 Tf +(BZ_NO_STDIO) 65.7532 Tj +[1 0 0 1 137.753 471.838] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -137.753 -471.838] cm +[1 0 0 1 0 0] Tm +0 0 Td +140.244 471.838 Td +/F130_0 9.9626 Tf +(set.) 13.5591 Tj +[1 0 0 1 72 470.528] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -460.63] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 449.985 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(normal) 28.224 Tj +-250 TJm +(compile,) 34.5901 Tj +-250 TJm +(an) 9.40469 Tj +-250 TJm +(assertion) 35.417 Tj +-250 TJm +(f) 3.31755 Tj +10 TJm +(ailure) 22.6848 Tj +-250 TJm +(yields) 23.8007 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(message:) 36.5229 Tj +[1 0 0 1 72 447.828] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -437.93] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 428.131 Td +/F130_0 9.9626 Tf +(bzip2/libbzip2:) 60.3335 Tj +-310 TJm +(internal) 30.4357 Tj +-250 TJm +(error) 19.3573 Tj +-250 TJm +(number) 30.4357 Tj +-250 TJm +(N.) 9.68365 Tj +[1 0 0 1 72 425.975] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -416.077] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 406.278 Td +/F130_0 9.9626 Tf +(This) 17.7135 Tj +-332 TJm +(is) 6.64505 Tj +-331 TJm +(a) 4.42339 Tj +-332 TJm +(b) 4.9813 Tj +20 TJm +(ug) 9.9626 Tj +-332 TJm +(in) 7.7509 Tj +-331 TJm +(bzip2/libbzip2,) 60.0546 Tj +-352 TJm +(1.0.5) 19.9252 Tj +-332 TJm +(of) 8.29885 Tj +-332 TJm +(10) 9.9626 Tj +-332 TJm +(December) 40.9363 Tj +-331 TJm +(2007.) 22.4159 Tj +-555 TJm +(Please) 25.4544 Tj +-332 TJm +(report) 23.7907 Tj +-332 TJm +(it) 5.53921 Tj +-331 TJm +(to) 7.7509 Tj +-332 TJm +(me) 12.1743 Tj +-332 TJm +(at:) 9.9626 Tj +-473 TJm +(jse) 11.0684 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(ard@bzip.or) 49.8429 Tj +18 TJm +(g.) 7.47195 Tj +-1110 TJm +(If) 6.63509 Tj +-332 TJm +(this) 14.396 Tj +72 394.323 Td +(happened) 38.1767 Tj +-297 TJm +(when) 21.579 Tj +-298 TJm +(you) 14.9439 Tj +-297 TJm +(were) 19.3573 Tj +-297 TJm +(using) 21.589 Tj +-297 TJm +(some) 21.031 Tj +-298 TJm +(program) 33.7533 Tj +-297 TJm +(which) 24.3486 Tj +-297 TJm +(uses) 17.1556 Tj +-297 TJm +(libbzip2) 32.6574 Tj +-298 TJm +(as) 8.29885 Tj +-297 TJm +(a) 4.42339 Tj +-297 TJm +(component,) 46.7644 Tj +-309 TJm +(you) 14.9439 Tj +-298 TJm +(should) 26.5703 Tj +-297 TJm +(also) 16.0497 Tj +-297 TJm +(report) 23.7907 Tj +-297 TJm +(this) 14.396 Tj +-298 TJm +(b) 4.9813 Tj +20 TJm +(ug) 9.9626 Tj +72 382.368 Td +(to) 7.7509 Tj +-264 TJm +(the) 12.1743 Tj +-264 TJm +(author\(s\)) 35.965 Tj +-264 TJm +(of) 8.29885 Tj +-264 TJm +(that) 14.9439 Tj +-264 TJm +(program.) 36.2439 Tj +-703 TJm +(Please) 25.4544 Tj +-264 TJm +(mak) 17.1556 Tj +10 TJm +(e) 4.42339 Tj +-264 TJm +(an) 9.40469 Tj +-264 TJm +(ef) 7.74094 Tj +25 TJm +(fort) 14.386 Tj +-264 TJm +(to) 7.7509 Tj +-264 TJm +(report) 23.7907 Tj +-263 TJm +(this) 14.396 Tj +-264 TJm +(b) 4.9813 Tj +20 TJm +(ug;) 12.7322 Tj +-271 TJm +(timely) 25.4644 Tj +-264 TJm +(and) 14.386 Tj +-264 TJm +(accurate) 33.1854 Tj +-264 TJm +(b) 4.9813 Tj +20 TJm +(ug) 9.9626 Tj +-264 TJm +(reports) 27.6661 Tj +-264 TJm +(e) 4.42339 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(entually) 32.0995 Tj +72 370.413 Td +(lead) 16.5977 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(higher) 25.4544 Tj +-250 TJm +(quality) 27.6761 Tj +-250 TJm +(softw) 22.1369 Tj +10 TJm +(are.) 14.655 Tj +-620 TJm +(Thanks.) 31.8205 Tj +-620 TJm +(Julian) 23.8007 Tj +-250 TJm +(Se) 9.9626 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(ard,) 15.2129 Tj +-250 TJm +(10) 9.9626 Tj +-250 TJm +(December) 40.9363 Tj +-250 TJm +(2007.) 22.4159 Tj +[1 0 0 1 72 368.256] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.801] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -348.557] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 338.758 Td +/F130_0 9.9626 Tf +(where) 24.3386 Tj +[1 0 0 1 98.8312 338.758] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -98.8312 -338.758] cm +[1 0 0 1 0 0] Tm +0 0 Td +98.8312 338.758 Td +/F134_0 9.9626 Tf +(N) 5.97756 Tj +[1 0 0 1 104.809 338.758] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -104.809 -338.758] cm +[1 0 0 1 0 0] Tm +0 0 Td +107.302 338.758 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-250 TJm +(some) 21.031 Tj +-250 TJm +(error) 19.3573 Tj +-251 TJm +(code) 18.8094 Tj +-250 TJm +(number) 30.4357 Tj +55 TJm +(.) 2.49065 Tj +-621 TJm +(If) 6.63509 Tj +[1 0 0 1 230.81 338.758] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -230.81 -338.758] cm +[1 0 0 1 0 0] Tm +0 0 Td +230.81 338.758 Td +/F134_0 9.9626 Tf +(N) 5.97756 Tj +-600 TJm +(==) 11.9551 Tj +-600 TJm +(1007) 23.9102 Tj +[1 0 0 1 284.608 338.758] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -284.608 -338.758] cm +[1 0 0 1 0 0] Tm +0 0 Td +284.608 338.758 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(it) 5.53921 Tj +-250 TJm +(also) 16.0497 Tj +-251 TJm +(prints) 22.6948 Tj +-250 TJm +(some) 21.031 Tj +-250 TJm +(e) 4.42339 Tj +15 TJm +(xtra) 15.4918 Tj +-250 TJm +(te) 7.193 Tj +15 TJm +(xt) 7.7509 Tj +-250 TJm +(advising) 33.7633 Tj +-251 TJm +(the) 12.1743 Tj +-250 TJm +(reader) 24.8866 Tj +-250 TJm +(that) 14.9439 Tj +-250 TJm +(unreliable) 39.8404 Tj +72 326.803 Td +(memory) 33.2053 Tj +-425 TJm +(is) 6.64505 Tj +-424 TJm +(often) 20.4731 Tj +-425 TJm +(associated) 40.9463 Tj +-425 TJm +(with) 17.7135 Tj +-424 TJm +(internal) 30.4357 Tj +-425 TJm +(error) 19.3573 Tj +-424 TJm +(1007.) 22.4159 Tj +-834 TJm +(\(This) 21.031 Tj +-425 TJm +(is) 6.64505 Tj +-425 TJm +(a) 4.42339 Tj +-424 TJm +(frequently-observ) 70.8241 Tj +15 TJm +(ed-phenomenon) 64.189 Tj +-425 TJm +(with) 17.7135 Tj +-425 TJm +(v) 4.9813 Tj +15 TJm +(ersions) 28.224 Tj +72 314.848 Td +(1.0.0/1.0.1\).) 48.4282 Tj +[1 0 0 1 72 313.065] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -303.167] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 292.995 Td +/F134_0 9.9626 Tf +(exit\(3\)) 41.8429 Tj +[1 0 0 1 113.843 292.995] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -113.843 -292.995] cm +[1 0 0 1 0 0] Tm +0 0 Td +116.334 292.995 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-250 TJm +(then) 17.1556 Tj +-250 TJm +(called.) 26.2813 Tj +[1 0 0 1 72 291.899] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.8981] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -282.001] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 271.142 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-250 TJm +(a) 4.42339 Tj +[1 0 0 1 95.0933 271.142] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -95.0933 -271.142] cm +[1 0 0 1 0 0] Tm +0 0 Td +95.0933 271.142 Td +/F134_0 9.9626 Tf +(stdio) 29.8878 Tj +[1 0 0 1 124.981 271.142] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -124.981 -271.142] cm +[1 0 0 1 0 0] Tm +0 0 Td +124.981 271.142 Td +/F130_0 9.9626 Tf +(-free) 18.7994 Tj +-250 TJm +(library) 26.5603 Tj +65 TJm +(,) 2.49065 Tj +-250 TJm +(assertion) 35.417 Tj +-250 TJm +(f) 3.31755 Tj +10 TJm +(ailures) 26.5603 Tj +-250 TJm +(result) 22.1369 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(call) 14.386 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(function) 33.2053 Tj +-250 TJm +(declared) 33.7433 Tj +-250 TJm +(as:) 11.0684 Tj +[1 0 0 1 72 268.985] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -259.62] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 259.62 Td +/F134_0 9.9626 Tf +(extern) 35.8654 Tj +-426 TJm +(void) 23.9102 Tj +-426 TJm +(bz_internal_error) 101.619 Tj +-426 TJm +(\() 5.97756 Tj +-426 TJm +(int) 17.9327 Tj +-426 TJm +(errcode) 41.8429 Tj +-426 TJm +(\);) 11.9551 Tj +[1 0 0 1 72 244.078] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.4846] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -234.18] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 222.225 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-250 TJm +(rele) 14.9339 Tj +25 TJm +(v) 4.9813 Tj +25 TJm +(ant) 12.1743 Tj +-250 TJm +(code) 18.8094 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(passed) 26.5603 Tj +-250 TJm +(as) 8.29885 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(parameter) 39.8305 Tj +55 TJm +(.) 2.49065 Tj +-620 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-250 TJm +(should) 26.5703 Tj +-250 TJm +(supply) 26.5703 Tj +-250 TJm +(such) 18.2614 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(function.) 35.696 Tj +[1 0 0 1 72 220.068] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -210.17] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 200.372 Td +/F130_0 9.9626 Tf +(In) 8.29885 Tj +-294 TJm +(either) 22.6848 Tj +-294 TJm +(case,) 19.6363 Tj +-306 TJm +(once) 18.8094 Tj +-294 TJm +(an) 9.40469 Tj +-294 TJm +(assertion) 35.417 Tj +-294 TJm +(f) 3.31755 Tj +10 TJm +(ailure) 22.6848 Tj +-294 TJm +(has) 13.2801 Tj +-295 TJm +(occurred,) 37.3398 Tj +-305 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +[1 0 0 1 306.541 200.372] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -306.541 -200.372] cm +[1 0 0 1 0 0] Tm +0 0 Td +306.541 200.372 Td +/F134_0 9.9626 Tf +(bz_stream) 53.798 Tj +[1 0 0 1 360.339 200.372] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -360.339 -200.372] cm +[1 0 0 1 0 0] Tm +0 0 Td +363.271 200.372 Td +/F130_0 9.9626 Tf +(records) 29.3199 Tj +-294 TJm +(in) 7.7509 Tj +40 TJm +(v) 4.9813 Tj +20 TJm +(olv) 12.7322 Tj +15 TJm +(ed) 9.40469 Tj +-294 TJm +(can) 13.8281 Tj +-295 TJm +(be) 9.40469 Tj +-294 TJm +(re) 7.74094 Tj +15 TJm +(g) 4.9813 Tj +5 TJm +(arded) 22.1269 Tj +-294 TJm +(as) 8.29885 Tj +-294 TJm +(in) 7.7509 Tj +40 TJm +(v) 4.9813 Tj +25 TJm +(alid.) 17.4346 Tj +72 188.417 Td +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-250 TJm +(should) 26.5703 Tj +-250 TJm +(not) 12.7322 Tj +-250 TJm +(attempt) 29.8878 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(resume) 28.772 Tj +-250 TJm +(normal) 28.224 Tj +-250 TJm +(operation) 37.6287 Tj +-250 TJm +(with) 17.7135 Tj +-250 TJm +(them.) 22.4159 Tj +[1 0 0 1 72 186.26] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -176.362] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 166.564 Td +/F130_0 9.9626 Tf +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-299 TJm +(may) 17.1556 Tj +65 TJm +(,) 2.49065 Tj +-310 TJm +(of) 8.29885 Tj +-299 TJm +(course,) 28.493 Tj +-311 TJm +(change) 28.2141 Tj +-298 TJm +(critical) 27.6661 Tj +-299 TJm +(error) 19.3573 Tj +-298 TJm +(handling) 34.8691 Tj +-299 TJm +(to) 7.7509 Tj +-298 TJm +(suit) 14.396 Tj +-299 TJm +(your) 18.2614 Tj +-298 TJm +(needs.) 25.1755 Tj +-912 TJm +(As) 11.0684 Tj +-298 TJm +(I) 3.31755 Tj +-299 TJm +(said) 16.0497 Tj +-298 TJm +(abo) 14.386 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e,) 6.91404 Tj +-311 TJm +(critical) 27.6661 Tj +-299 TJm +(errors) 23.2328 Tj +-298 TJm +(indicate) 31.5416 Tj +-299 TJm +(b) 4.9813 Tj +20 TJm +(ugs) 13.8381 Tj +72 154.608 Td +(in) 7.7509 Tj +-263 TJm +(the) 12.1743 Tj +-263 TJm +(library) 26.5603 Tj +-263 TJm +(and) 14.386 Tj +-263 TJm +(should) 26.5703 Tj +-263 TJm +(not) 12.7322 Tj +-263 TJm +(occur) 22.1269 Tj +55 TJm +(.) 2.49065 Tj +-697 TJm +(All) 12.7322 Tj +-263 TJm +("normal") 36.3535 Tj +-263 TJm +(error) 19.3573 Tj +-263 TJm +(situations) 38.1966 Tj +-263 TJm +(are) 12.1643 Tj +-263 TJm +(indicated) 36.5229 Tj +-263 TJm +(via) 12.1743 Tj +-263 TJm +(error) 19.3573 Tj +-263 TJm +(return) 23.7907 Tj +-263 TJm +(codes) 22.6848 Tj +-263 TJm +(from) 19.3673 Tj +-263 TJm +(functions,) 39.5714 Tj +72 142.653 Td +(and) 14.386 Tj +-250 TJm +(can) 13.8281 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(reco) 17.1456 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(ered) 17.1456 Tj +-250 TJm +(from.) 21.8579 Tj +[1 0 0 1 72 142.554] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -132.656] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 107.965 Td +/F122_0 20.6585 Tf +(3.8.) 34.4584 Tj +-278 TJm +(Making) 71.1685 Tj +-278 TJm +(a) 11.4861 Tj +-278 TJm +(Windo) 63.1117 Tj +15 TJm +(ws) 27.5584 Tj +-278 TJm +(DLL) 40.1601 Tj +[1 0 0 1 72 103.369] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.898] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -93.4708] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 86.112 Td +/F130_0 9.9626 Tf +(Ev) 11.0684 Tj +15 TJm +(erything) 33.2053 Tj +-328 TJm +(related) 27.1082 Tj +-327 TJm +(to) 7.7509 Tj +-328 TJm +(W) 9.40469 Tj +40 TJm +(indo) 17.7135 Tj +25 TJm +(ws) 11.0684 Tj +-328 TJm +(has) 13.2801 Tj +-327 TJm +(been) 18.8094 Tj +-328 TJm +(contrib) 28.224 Tj +20 TJm +(uted) 17.1556 Tj +-328 TJm +(by) 9.9626 Tj +-327 TJm +(Y) 7.193 Tj +110 TJm +(oshioka) 30.9936 Tj +-328 TJm +(Tsuneo) 29.3299 Tj +-328 TJm +(\() 3.31755 Tj +[1 0 0 1 378.139 86.112] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -378.139 -86.112] cm +[1 0 0 1 0 0] Tm +0 0 Td +378.139 86.112 Td +/F134_0 9.9626 Tf +(tsuneo@rr.iij4u.or.jp) 125.529 Tj +[1 0 0 1 503.668 86.112] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -503.668 -86.112] cm +[1 0 0 1 0 0] Tm +0 0 Td +503.668 86.112 Td +/F130_0 9.9626 Tf +(\),) 5.8082 Tj +-347 TJm +(so) 8.85675 Tj +-328 TJm +(you) 14.9439 Tj +72 74.1568 Td +(should) 26.5703 Tj +-250 TJm +(send) 18.2614 Tj +-250 TJm +(your) 18.2614 Tj +-250 TJm +(queries) 28.772 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(him) 15.5018 Tj +-250 TJm +(\(b) 8.29885 Tj +20 TJm +(ut) 7.7509 Tj +-250 TJm +(perhaps) 30.9837 Tj +-250 TJm +(Cc:) 13.8381 Tj +-310 TJm +(me,) 14.6649 Tj +[1 0 0 1 287.958 74.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -287.958 -74.1568] cm +[1 0 0 1 0 0] Tm +0 0 Td +287.958 74.1568 Td +/F134_0 9.9626 Tf +(jseward@bzip.org) 95.641 Tj +[1 0 0 1 383.6 74.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -383.6 -74.1568] cm +[1 0 0 1 0 0] Tm +0 0 Td +383.6 74.1568 Td +/F130_0 9.9626 Tf +(\).) 5.8082 Tj +[1 0 0 1 72 72] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -21.1482] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.9738] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -51.071] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 51.071 Td +/F130_0 9.9626 Tf +(29) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 33 33 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 8.9114] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 76.4979 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -342.569 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +419.067 749.245 Td +/F130_0 9.9626 Tf +(Programming) 54.7943 Tj +-250 TJm +(with) 17.7135 Tj +[1 0 0 1 496.556 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -496.556 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.556 749.245 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 544.376 749.245] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -278.305 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -5.0363] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F130_0 9.9626 Tf +(My) 13.8381 Tj +-367 TJm +(v) 4.9813 Tj +25 TJm +(ague) 18.8094 Tj +-367 TJm +(understanding) 56.4481 Tj +-367 TJm +(of) 8.29885 Tj +-367 TJm +(what) 19.3673 Tj +-368 TJm +(to) 7.7509 Tj +-367 TJm +(do) 9.9626 Tj +-367 TJm +(is:) 9.41466 Tj +-544 TJm +(using) 21.589 Tj +-367 TJm +(V) 7.193 Tj +60 TJm +(isual) 18.8194 Tj +-367 TJm +(C++) 17.8829 Tj +-367 TJm +(5.0,) 14.9439 Tj +-397 TJm +(open) 19.3673 Tj +-367 TJm +(the) 12.1743 Tj +-367 TJm +(project) 27.6661 Tj +-367 TJm +(\002le) 12.7322 Tj +[1 0 0 1 432.966 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -432.966 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +432.966 710.037 Td +/F134_0 9.9626 Tf +(libbz2.dsp) 59.7756 Tj +[1 0 0 1 492.742 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -492.742 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +492.742 710.037 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-396 TJm +(and) 14.386 Tj +-368 TJm +(b) 4.9813 Tj +20 TJm +(uild.) 17.9925 Tj +72 698.082 Td +(That') 21.579 Tj +55 TJm +(s) 3.87545 Tj +-250 TJm +(all.) 12.4533 Tj +[1 0 0 1 72 697.983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -688.02] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 676.164 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +-284 TJm +(you) 14.9439 Tj +-284 TJm +(can') 17.1456 Tj +18 TJm +(t) 2.7696 Tj +-285 TJm +(open) 19.3673 Tj +-284 TJm +(the) 12.1743 Tj +-284 TJm +(project) 27.6661 Tj +-284 TJm +(\002le) 12.7322 Tj +-284 TJm +(for) 11.6164 Tj +-285 TJm +(some) 21.031 Tj +-284 TJm +(reason,) 28.493 Tj +-293 TJm +(mak) 17.1556 Tj +10 TJm +(e) 4.42339 Tj +-284 TJm +(a) 4.42339 Tj +-284 TJm +(ne) 9.40469 Tj +25 TJm +(w) 7.193 Tj +-284 TJm +(one,) 16.8766 Tj +-293 TJm +(naming) 29.8878 Tj +-284 TJm +(these) 20.4731 Tj +-284 TJm +(\002les:) 19.3773 Tj +[1 0 0 1 424.505 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -424.505 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +424.505 676.164 Td +/F134_0 9.9626 Tf +(blocksort.c) 65.7532 Tj +[1 0 0 1 490.259 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -490.259 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +490.259 676.164 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 495.666 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -495.666 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +495.666 676.164 Td +/F134_0 9.9626 Tf +(bzlib.c) 41.8429 Tj +[1 0 0 1 537.509 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -537.509 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +537.509 676.164 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 72 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 664.209 Td +/F134_0 9.9626 Tf +(compress.c) 59.7756 Tj +[1 0 0 1 131.776 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -131.776 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +131.776 664.209 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 136.436 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -136.436 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +136.436 664.209 Td +/F134_0 9.9626 Tf +(crctable.c) 59.7756 Tj +[1 0 0 1 196.211 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -196.211 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +196.211 664.209 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 200.871 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -200.871 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +200.871 664.209 Td +/F134_0 9.9626 Tf +(decompress.c) 71.7307 Tj +[1 0 0 1 272.602 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -272.602 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +272.602 664.209 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 277.262 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -277.262 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +277.262 664.209 Td +/F134_0 9.9626 Tf +(huffman.c) 53.798 Tj +[1 0 0 1 331.06 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -331.06 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +331.06 664.209 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 335.72 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -335.72 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +335.72 664.209 Td +/F134_0 9.9626 Tf +(randtable.c) 65.7532 Tj +[1 0 0 1 401.473 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -401.473 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +403.562 664.209 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 420.037 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -420.037 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +420.037 664.209 Td +/F134_0 9.9626 Tf +(libbz2.def) 59.7756 Tj +[1 0 0 1 479.812 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -479.812 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +479.812 664.209 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-593 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-210 TJm +(will) 15.5018 Tj +-209 TJm +(also) 16.0497 Tj +72 652.254 Td +(need) 18.8094 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(name) 21.579 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(header) 26.5503 Tj +-250 TJm +(\002les) 16.6077 Tj +[1 0 0 1 190.415 652.254] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -190.415 -652.254] cm +[1 0 0 1 0 0] Tm +0 0 Td +190.415 652.254 Td +/F134_0 9.9626 Tf +(bzlib.h) 41.8429 Tj +[1 0 0 1 232.258 652.254] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -232.258 -652.254] cm +[1 0 0 1 0 0] Tm +0 0 Td +234.748 652.254 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 251.625 652.254] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -251.625 -652.254] cm +[1 0 0 1 0 0] Tm +0 0 Td +251.625 652.254 Td +/F134_0 9.9626 Tf +(bzlib_private.h) 89.6634 Tj +[1 0 0 1 341.289 652.254] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -341.289 -652.254] cm +[1 0 0 1 0 0] Tm +0 0 Td +341.289 652.254 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 650.72] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -640.757] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 630.336 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(don') 18.2614 Tj +18 TJm +(t) 2.7696 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(VC++,) 27.5665 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(may) 17.1556 Tj +-250 TJm +(need) 18.8094 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(de\002ne) 24.3486 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(proprocessor) 51.4568 Tj +-250 TJm +(symbol) 29.3399 Tj +[1 0 0 1 363.634 630.336] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -363.634 -630.336] cm +[1 0 0 1 0 0] Tm +0 0 Td +363.634 630.336 Td +/F134_0 9.9626 Tf +(_WIN32) 35.8654 Tj +[1 0 0 1 399.5 630.336] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -399.5 -630.336] cm +[1 0 0 1 0 0] Tm +0 0 Td +399.5 630.336 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 628.179] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -618.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 608.418 Td +/F130_0 9.9626 Tf +(Finally) 28.234 Tj +65 TJm +(,) 2.49065 Tj +[1 0 0 1 104.568 608.418] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -104.568 -608.418] cm +[1 0 0 1 0 0] Tm +0 0 Td +104.568 608.418 Td +/F134_0 9.9626 Tf +(dlltest.c) 53.798 Tj +[1 0 0 1 158.366 608.418] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -158.366 -608.418] cm +[1 0 0 1 0 0] Tm +0 0 Td +160.856 608.418 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(sample) 28.224 Tj +-250 TJm +(program) 33.7533 Tj +-250 TJm +(using) 21.589 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(DLL.) 21.8579 Tj +-500 TJm +(It) 6.08715 Tj +-250 TJm +(has) 13.2801 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(project) 27.6661 Tj +-250 TJm +(\002le,) 15.2229 Tj +[1 0 0 1 388.58 608.418] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -388.58 -608.418] cm +[1 0 0 1 0 0] Tm +0 0 Td +388.58 608.418 Td +/F134_0 9.9626 Tf +(dlltest.dsp) 65.7532 Tj +[1 0 0 1 454.333 608.418] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -454.333 -608.418] cm +[1 0 0 1 0 0] Tm +0 0 Td +454.333 608.418 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 606.262] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -596.299] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 586.501 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(just) 14.396 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ant) 12.1743 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(mak) 17.1556 Tj +10 TJm +(e\002le) 17.1556 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(V) 7.193 Tj +60 TJm +(isual) 18.8194 Tj +-250 TJm +(C,) 9.1357 Tj +-250 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(look) 17.7135 Tj +-250 TJm +(at) 7.193 Tj +[1 0 0 1 292.212 586.501] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -292.212 -586.501] cm +[1 0 0 1 0 0] Tm +0 0 Td +292.212 586.501 Td +/F134_0 9.9626 Tf +(makefile.msc) 71.7307 Tj +[1 0 0 1 363.943 586.501] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -363.943 -586.501] cm +[1 0 0 1 0 0] Tm +0 0 Td +363.943 586.501 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 584.344] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -574.381] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 564.583 Td +/F130_0 9.9626 Tf +(Be) 11.0684 Tj +-291 TJm +(a) 4.42339 Tj +15 TJm +(w) 7.193 Tj +10 TJm +(are) 12.1643 Tj +-291 TJm +(that) 14.9439 Tj +-291 TJm +(if) 6.08715 Tj +-291 TJm +(you) 14.9439 Tj +-291 TJm +(compile) 32.0995 Tj +[1 0 0 1 192.069 564.583] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -192.069 -564.583] cm +[1 0 0 1 0 0] Tm +0 0 Td +192.069 564.583 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 221.958 564.583] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -221.958 -564.583] cm +[1 0 0 1 0 0] Tm +0 0 Td +224.857 564.583 Td +/F130_0 9.9626 Tf +(itself) 19.9252 Tj +-291 TJm +(on) 9.9626 Tj +-291 TJm +(W) 9.40469 Tj +40 TJm +(in32,) 20.2042 Tj +-301 TJm +(you) 14.9439 Tj +-291 TJm +(must) 19.3773 Tj +-291 TJm +(set) 11.0684 Tj +[1 0 0 1 346.841 564.583] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -346.841 -564.583] cm +[1 0 0 1 0 0] Tm +0 0 Td +346.841 564.583 Td +/F134_0 9.9626 Tf +(BZ_UNIX) 41.8429 Tj +[1 0 0 1 388.685 564.583] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -388.685 -564.583] cm +[1 0 0 1 0 0] Tm +0 0 Td +391.583 564.583 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-291 TJm +(0) 4.9813 Tj +-291 TJm +(and) 14.386 Tj +[1 0 0 1 427.399 564.583] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -427.399 -564.583] cm +[1 0 0 1 0 0] Tm +0 0 Td +427.399 564.583 Td +/F134_0 9.9626 Tf +(BZ_LCCWIN32) 65.7532 Tj +[1 0 0 1 493.153 564.583] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.153 -564.583] cm +[1 0 0 1 0 0] Tm +0 0 Td +496.052 564.583 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-291 TJm +(1,) 7.47195 Tj +-301 TJm +(in) 7.7509 Tj +-291 TJm +(the) 12.1743 Tj +72 552.628 Td +(\002le) 12.7322 Tj +[1 0 0 1 87.2227 552.628] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -87.2227 -552.628] cm +[1 0 0 1 0 0] Tm +0 0 Td +87.2227 552.628 Td +/F134_0 9.9626 Tf +(bzip2.c) 41.8429 Tj +[1 0 0 1 129.066 552.628] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -129.066 -552.628] cm +[1 0 0 1 0 0] Tm +0 0 Td +129.066 552.628 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(before) 25.4445 Tj +-250 TJm +(compiling.) 42.899 Tj +-310 TJm +(Otherwise) 40.9463 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(resulting) 34.8691 Tj +-250 TJm +(binary) 25.4544 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(on') 13.2801 Tj +18 TJm +(t) 2.7696 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ork) 13.2801 Tj +-250 TJm +(correctly) 35.4071 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 550.471] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -540.508] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 530.71 Td +/F130_0 9.9626 Tf +(I) 3.31755 Tj +-250 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(en') 12.7222 Tj +18 TJm +(t) 2.7696 Tj +-250 TJm +(tried) 18.2614 Tj +-250 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(this) 14.396 Tj +-250 TJm +(stuf) 14.9439 Tj +25 TJm +(f) 3.31755 Tj +-250 TJm +(myself,) 29.6088 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-250 TJm +(it) 5.53921 Tj +-250 TJm +(all) 9.9626 Tj +-250 TJm +(looks) 21.589 Tj +-250 TJm +(plausible.) 38.4656 Tj +[1 0 0 1 72 528.553] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -477.701] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(30) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 34 34 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 140.398 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -140.398 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -13.9477] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -21.5542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -720] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 701.916 Td +/F122_0 24.7902 Tf +(4.) 20.675 Tj +-278 TJm +(Miscellanea) 139.172 Tj +[1 0 0 1 72 701.606] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -9.1347] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -14.1161] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -678.355] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 658.006 Td +/F122_0 17.2154 Tf +(T) 10.5186 Tj +80 TJm +(ab) 20.0904 Tj +10 TJm +(le) 14.3576 Tj +-278 TJm +(of) 16.2513 Tj +-278 TJm +(Contents) 74.5943 Tj +[1 0 0 1 72 649.183] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -11.7401] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -637.443] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 637.443 Td +/F130_0 9.9626 Tf +(4.1.) 14.9439 Tj +-310 TJm +(Limitations) 45.9475 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(compressed) 47.0334 Tj +-250 TJm +(\002le) 12.7322 Tj +-250 TJm +(format) 26.5603 Tj +[1 0 0 1 255.231 637.443] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -260.212 -637.443] cm +[1 0 0 1 0 0] Tm +0 0 Td +269.154 637.443 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 637.443] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -637.443] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 637.443 Td +/F130_0 9.9626 Tf +(31) 9.9626 Tj +[1 0 0 1 516.09 637.443] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -625.488] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 625.488 Td +/F130_0 9.9626 Tf +(4.2.) 14.9439 Tj +-310 TJm +(Portability) 42.0721 Tj +-250 TJm +(issues) 23.8007 Tj +[1 0 0 1 158.395 625.488] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -163.376 -625.488] cm +[1 0 0 1 0 0] Tm +0 0 Td +172.03 625.488 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 625.488] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -625.488] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 625.488 Td +/F130_0 9.9626 Tf +(32) 9.9626 Tj +[1 0 0 1 516.09 625.488] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -613.533] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 613.533 Td +/F130_0 9.9626 Tf +(4.3.) 14.9439 Tj +-310 TJm +(Reporting) 39.8504 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ugs) 13.8381 Tj +[1 0 0 1 150.993 613.533] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -155.975 -613.533] cm +[1 0 0 1 0 0] Tm +0 0 Td +166.115 613.533 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 613.533] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -613.533] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 613.533 Td +/F130_0 9.9626 Tf +(32) 9.9626 Tj +[1 0 0 1 516.09 613.533] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7983] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -601.578] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 601.578 Td +/F130_0 9.9626 Tf +(4.4.) 14.9439 Tj +-310 TJm +(Did) 14.9439 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(get) 12.1743 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(right) 18.8194 Tj +-250 TJm +(package?) 37.0609 Tj +[1 0 0 1 212.602 601.578] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 3.0884 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 3.0884 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -218.778 -601.578] cm +[1 0 0 1 0 0] Tm +0 0 Td +229.109 601.578 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 601.578] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -601.578] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 601.578 Td +/F130_0 9.9626 Tf +(33) 9.9626 Tj +[1 0 0 1 516.09 601.578] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.7984] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -589.623] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 589.623 Td +/F130_0 9.9626 Tf +(4.5.) 14.9439 Tj +-310 TJm +(Further) 29.3299 Tj +-250 TJm +(Reading) 33.2053 Tj +[1 0 0 1 155.058 589.623] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4906 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -160.039 -589.623] cm +[1 0 0 1 0 0] Tm +0 0 Td +170.361 589.623 Td +/F147_0 9.9626 Tf +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +-166 TJm +(:) 2.7696 Tj +-167 TJm +(:) 2.7696 Tj +[1 0 0 1 506.127 589.623] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -506.127 -589.623] cm +[1 0 0 1 0 0] Tm +0 0 Td +506.127 589.623 Td +/F130_0 9.9626 Tf +(34) 9.9626 Tj +[1 0 0 1 516.09 589.623] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -444.09 -2.1568] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.1348] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -9.6315] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -568.7] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 558.901 Td +/F130_0 9.9626 Tf +(These) 23.7907 Tj +-250 TJm +(are) 12.1643 Tj +-250 TJm +(just) 14.396 Tj +-250 TJm +(some) 21.031 Tj +-250 TJm +(random) 30.4357 Tj +-250 TJm +(thoughts) 34.3212 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(mine.) 22.4159 Tj +-620 TJm +(Y) 7.193 Tj +110 TJm +(our) 13.2801 Tj +-250 TJm +(mileage) 31.5416 Tj +-250 TJm +(may) 17.1556 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(ary) 12.7222 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 556.744] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.6315] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -547.113] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 524.48 Td +/F122_0 20.6585 Tf +(4.1.) 34.4584 Tj +-278 TJm +(Limitations) 110.192 Tj +-278 TJm +(of) 19.5016 Tj +-278 TJm +(the) 30.9877 Tj +-278 TJm +(compressed) 121.699 Tj +-278 TJm +(\002le) 29.8515 Tj +-278 TJm +(f) 6.87928 Tj +20 TJm +(ormat) 57.3893 Tj +[1 0 0 1 72 520.203] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.6315] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -510.572] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 502.893 Td +/F134_0 9.9626 Tf +(bzip2-1.0.X) 65.7532 Tj +[1 0 0 1 137.753 502.893] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -137.753 -502.893] cm +[1 0 0 1 0 0] Tm +0 0 Td +137.753 502.893 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +[1 0 0 1 143.405 502.893] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -143.405 -502.893] cm +[1 0 0 1 0 0] Tm +0 0 Td +143.405 502.893 Td +/F134_0 9.9626 Tf +(0.9.5) 29.8878 Tj +[1 0 0 1 173.293 502.893] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -173.293 -502.893] cm +[1 0 0 1 0 0] Tm +0 0 Td +176.453 502.893 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 194 502.893] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -194 -502.893] cm +[1 0 0 1 0 0] Tm +0 0 Td +194 502.893 Td +/F134_0 9.9626 Tf +(0.9.0) 29.8878 Tj +[1 0 0 1 223.888 502.893] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -223.888 -502.893] cm +[1 0 0 1 0 0] Tm +0 0 Td +227.048 502.893 Td +/F130_0 9.9626 Tf +(use) 13.2801 Tj +-317 TJm +(e) 4.42339 Tj +15 TJm +(xactly) 24.3486 Tj +-317 TJm +(the) 12.1743 Tj +-318 TJm +(same) 20.4731 Tj +-317 TJm +(\002le) 12.7322 Tj +-317 TJm +(format) 26.5603 Tj +-317 TJm +(as) 8.29885 Tj +-318 TJm +(the) 12.1743 Tj +-317 TJm +(original) 30.9936 Tj +-317 TJm +(v) 4.9813 Tj +15 TJm +(ersion,) 26.8392 Tj +[1 0 0 1 455.801 502.893] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -455.801 -502.893] cm +[1 0 0 1 0 0] Tm +0 0 Td +455.801 502.893 Td +/F134_0 9.9626 Tf +(bzip2-0.1) 53.798 Tj +[1 0 0 1 509.599 502.893] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -509.599 -502.893] cm +[1 0 0 1 0 0] Tm +0 0 Td +509.599 502.893 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-1023 TJm +(This) 17.7135 Tj +72 490.938 Td +(decision) 33.2053 Tj +-222 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-222 TJm +(made) 21.579 Tj +-222 TJm +(in) 7.7509 Tj +-221 TJm +(the) 12.1743 Tj +-222 TJm +(interests) 33.2053 Tj +-222 TJm +(of) 8.29885 Tj +-222 TJm +(stability) 32.1095 Tj +65 TJm +(.) 2.49065 Tj +-601 TJm +(Creating) 34.3112 Tj +-222 TJm +(yet) 12.1743 Tj +-222 TJm +(another) 29.8778 Tj +-222 TJm +(incompatible) 52.0247 Tj +-221 TJm +(compressed) 47.0334 Tj +-222 TJm +(\002le) 12.7322 Tj +-222 TJm +(format) 26.5603 Tj +-222 TJm +(w) 7.193 Tj +10 TJm +(ould) 17.7135 Tj +-222 TJm +(create) 23.7807 Tj +72 478.983 Td +(further) 27.1082 Tj +-250 TJm +(confusion) 39.2925 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(disruption) 40.4083 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(users.) 22.9638 Tj +[1 0 0 1 72 476.826] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.6315] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -467.194] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 457.396 Td +/F130_0 9.9626 Tf +(Ne) 11.6164 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ertheless,) 37.3498 Tj +-234 TJm +(this) 14.396 Tj +-229 TJm +(is) 6.64505 Tj +-230 TJm +(not) 12.7322 Tj +-229 TJm +(a) 4.42339 Tj +-230 TJm +(painless) 32.0995 Tj +-229 TJm +(decision.) 35.696 Tj +-606 TJm +(De) 11.6164 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(elopment) 37.0808 Tj +-230 TJm +(w) 7.193 Tj +10 TJm +(ork) 13.2801 Tj +-230 TJm +(since) 20.4731 Tj +-229 TJm +(the) 12.1743 Tj +-230 TJm +(release) 27.6562 Tj +-229 TJm +(of) 8.29885 Tj +[1 0 0 1 407.317 457.396] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -407.317 -457.396] cm +[1 0 0 1 0 0] Tm +0 0 Td +407.317 457.396 Td +/F134_0 9.9626 Tf +(bzip2-0.1) 53.798 Tj +[1 0 0 1 461.115 457.396] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -461.115 -457.396] cm +[1 0 0 1 0 0] Tm +0 0 Td +463.402 457.396 Td +/F130_0 9.9626 Tf +(in) 7.7509 Tj +-230 TJm +(August) 28.782 Tj +-229 TJm +(1997) 19.9252 Tj +-230 TJm +(has) 13.2801 Tj +72 445.441 Td +(sho) 13.8381 Tj +25 TJm +(wn) 12.1743 Tj +-226 TJm +(comple) 29.3299 Tj +15 TJm +(xities) 21.589 Tj +-226 TJm +(in) 7.7509 Tj +-225 TJm +(the) 12.1743 Tj +-226 TJm +(\002le) 12.7322 Tj +-226 TJm +(format) 26.5603 Tj +-226 TJm +(which) 24.3486 Tj +-226 TJm +(slo) 11.6264 Tj +25 TJm +(w) 7.193 Tj +-225 TJm +(do) 9.9626 Tj +25 TJm +(wn) 12.1743 Tj +-226 TJm +(decompression) 59.7656 Tj +-226 TJm +(and,) 16.8766 Tj +-231 TJm +(in) 7.7509 Tj +-226 TJm +(retrospect,) 41.7732 Tj +-230 TJm +(are) 12.1643 Tj +-226 TJm +(unnecessary) 48.6872 Tj +65 TJm +(.) 2.49065 Tj +-604 TJm +(These) 23.7907 Tj +-226 TJm +(are:) 14.9339 Tj +[1 0 0 1 72 443.284] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -29.0613] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -414.222] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 414.222 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 414.222] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -414.222] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 414.222 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-265 TJm +(run-length) 41.5042 Tj +-266 TJm +(encoder) 31.5316 Tj +40 TJm +(,) 2.49065 Tj +-269 TJm +(which) 24.3486 Tj +-265 TJm +(is) 6.64505 Tj +-265 TJm +(the) 12.1743 Tj +-266 TJm +(\002rst) 15.5018 Tj +-265 TJm +(of) 8.29885 Tj +-265 TJm +(the) 12.1743 Tj +-266 TJm +(compression) 50.3609 Tj +-265 TJm +(transformations,) 65.0259 Tj +-269 TJm +(is) 6.64505 Tj +-265 TJm +(entirely) 30.4357 Tj +-266 TJm +(irrele) 21.0211 Tj +25 TJm +(v) 4.9813 Tj +25 TJm +(ant.) 14.6649 Tj +-711 TJm +(The) 15.4918 Tj +-266 TJm +(original) 30.9936 Tj +86.944 402.267 Td +(purpose) 31.5416 Tj +-301 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-301 TJm +(to) 7.7509 Tj +-301 TJm +(protect) 27.6661 Tj +-301 TJm +(the) 12.1743 Tj +-301 TJm +(sorting) 27.6761 Tj +-301 TJm +(algorithm) 38.7446 Tj +-301 TJm +(from) 19.3673 Tj +-301 TJm +(the) 12.1743 Tj +-301 TJm +(v) 4.9813 Tj +15 TJm +(ery) 12.7222 Tj +-301 TJm +(w) 7.193 Tj +10 TJm +(orst) 14.9439 Tj +-301 TJm +(case) 17.1456 Tj +-301 TJm +(input:) 23.2527 Tj +-412 TJm +(a) 4.42339 Tj +-301 TJm +(string) 22.6948 Tj +-301 TJm +(of) 8.29885 Tj +-301 TJm +(repeated) 33.7433 Tj +-301 TJm +(symbols.) 35.706 Tj +-927 TJm +(But) 14.396 Tj +86.944 390.312 Td +(algorithm) 38.7446 Tj +-274 TJm +(steps) 19.9252 Tj +-275 TJm +(Q6a) 16.5977 Tj +-274 TJm +(and) 14.386 Tj +-274 TJm +(Q6b) 17.1556 Tj +-275 TJm +(in) 7.7509 Tj +-274 TJm +(the) 12.1743 Tj +-274 TJm +(original) 30.9936 Tj +-275 TJm +(Burro) 23.2427 Tj +25 TJm +(ws-Wheel) 40.3884 Tj +1 TJm +(er) 7.74094 Tj +-275 TJm +(technical) 35.965 Tj +-274 TJm +(report) 23.7907 Tj +-274 TJm +(\(SRC-124\)) 43.7259 Tj +-275 TJm +(sho) 13.8381 Tj +25 TJm +(w) 7.193 Tj +-274 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-274 TJm +(repeats) 28.2141 Tj +-275 TJm +(can) 13.8281 Tj +86.944 378.357 Td +(be) 9.40469 Tj +-250 TJm +(handled) 31.5416 Tj +-250 TJm +(without) 30.4457 Tj +-250 TJm +(dif) 11.0684 Tj +25 TJm +(\002culty) 25.4644 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(block) 22.1369 Tj +-250 TJm +(sorting.) 30.1668 Tj +[1 0 0 1 269.617 378.357] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -197.617 -21.5867] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -356.77] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 356.77 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 356.77] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -356.77] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 356.77 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-293 TJm +(randomisation) 57.006 Tj +-293 TJm +(mechanism) 45.3796 Tj +-293 TJm +(doesn') 26.5603 Tj +18 TJm +(t) 2.7696 Tj +-294 TJm +(really) 22.6848 Tj +-293 TJm +(need) 18.8094 Tj +-293 TJm +(to) 7.7509 Tj +-293 TJm +(be) 9.40469 Tj +-293 TJm +(there.) 22.4059 Tj +-879 TJm +(Udi) 14.9439 Tj +-294 TJm +(Manber) 30.9837 Tj +-293 TJm +(and) 14.386 Tj +-293 TJm +(Gene) 21.0211 Tj +-293 TJm +(Myers) 25.4544 Tj +-293 TJm +(published) 38.7446 Tj +-294 TJm +(a) 4.42339 Tj +-293 TJm +(suf) 12.1743 Tj +25 TJm +(\002x) 10.5205 Tj +86.944 344.815 Td +(array) 20.4632 Tj +-238 TJm +(construction) 49.2551 Tj +-239 TJm +(algorithm) 38.7446 Tj +-238 TJm +(a) 4.42339 Tj +-238 TJm +(fe) 7.74094 Tj +25 TJm +(w) 7.193 Tj +-239 TJm +(years) 21.0211 Tj +-238 TJm +(back,) 21.3 Tj +-241 TJm +(which) 24.3486 Tj +-238 TJm +(can) 13.8281 Tj +-238 TJm +(be) 9.40469 Tj +-239 TJm +(emplo) 24.9065 Tj +10 TJm +(yed) 14.386 Tj +-238 TJm +(to) 7.7509 Tj +-238 TJm +(sort) 14.9439 Tj +-239 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-238 TJm +(block,) 24.6275 Tj +-241 TJm +(no) 9.9626 Tj +-238 TJm +(matter) 25.4544 Tj +-238 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-239 TJm +(repetiti) 28.224 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e,) 6.91404 Tj +86.944 332.86 Td +(in) 7.7509 Tj +-229 TJm +(O\(N) 17.7035 Tj +-230 TJm +(log) 12.7322 Tj +-229 TJm +(N\)) 10.5105 Tj +-230 TJm +(time.) 20.2042 Tj +-606 TJm +(Subsequent) 45.9375 Tj +-230 TJm +(w) 7.193 Tj +10 TJm +(ork) 13.2801 Tj +-229 TJm +(by) 9.9626 Tj +-230 TJm +(K) 7.193 Tj +15 TJm +(unihik) 25.4644 Tj +10 TJm +(o) 4.9813 Tj +-229 TJm +(Sadakane) 38.1767 Tj +-229 TJm +(has) 13.2801 Tj +-230 TJm +(produced) 37.0708 Tj +-229 TJm +(a) 4.42339 Tj +-230 TJm +(deri) 15.4918 Tj +25 TJm +(v) 4.9813 Tj +25 TJm +(ati) 9.9626 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-229 TJm +(O\(N) 17.7035 Tj +-230 TJm +(\(log) 16.0497 Tj +-229 TJm +(N\)^2\)) 23.4818 Tj +-230 TJm +(algorithm) 38.7446 Tj +86.944 320.905 Td +(which) 24.3486 Tj +-250 TJm +(usually) 28.782 Tj +-250 TJm +(outperforms) 48.6972 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(Manber) 30.9837 Tj +20 TJm +(-Myers) 28.772 Tj +-250 TJm +(algorithm.) 41.2352 Tj +[1 0 0 1 314.189 320.905] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -242.189 -11.7883] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -309.116] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 299.318 Td +/F130_0 9.9626 Tf +(I) 3.31755 Tj +-248 TJm +(could) 22.1369 Tj +-248 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-248 TJm +(changed) 33.1954 Tj +-248 TJm +(to) 7.7509 Tj +-248 TJm +(Sadakane') 41.4942 Tj +55 TJm +(s) 3.87545 Tj +-248 TJm +(algorithm,) 41.2352 Tj +-249 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-248 TJm +(I) 3.31755 Tj +-248 TJm +(\002nd) 15.5018 Tj +-248 TJm +(it) 5.53921 Tj +-248 TJm +(to) 7.7509 Tj +-248 TJm +(be) 9.40469 Tj +-248 TJm +(slo) 11.6264 Tj +25 TJm +(wer) 14.9339 Tj +-248 TJm +(than) 17.1556 Tj +[1 0 0 1 392.444 299.318] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -392.444 -299.318] cm +[1 0 0 1 0 0] Tm +0 0 Td +392.444 299.318 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 422.332 299.318] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -422.332 -299.318] cm +[1 0 0 1 0 0] Tm +0 0 Td +422.332 299.318 Td +/F130_0 9.9626 Tf +(') 3.31755 Tj +55 TJm +(s) 3.87545 Tj +-248 TJm +(e) 4.42339 Tj +15 TJm +(xisting) 27.1282 Tj +-248 TJm +(algorithm) 38.7446 Tj +-248 TJm +(for) 11.6164 Tj +-248 TJm +(most) 19.3773 Tj +86.944 287.363 Td +(inputs,) 26.8492 Tj +-370 TJm +(and) 14.386 Tj +-345 TJm +(the) 12.1743 Tj +-346 TJm +(randomisation) 57.006 Tj +-346 TJm +(mechanism) 45.3796 Tj +-345 TJm +(protects) 31.5416 Tj +-346 TJm +(adequately) 43.158 Tj +-345 TJm +(ag) 9.40469 Tj +5 TJm +(ainst) 18.8194 Tj +-346 TJm +(bad) 14.386 Tj +-346 TJm +(cases.) 23.5117 Tj +-1194 TJm +(I) 3.31755 Tj +-345 TJm +(didn') 21.031 Tj +18 TJm +(t) 2.7696 Tj +-346 TJm +(think) 20.4831 Tj +-346 TJm +(it) 5.53921 Tj +-345 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-346 TJm +(a) 4.42339 Tj +-346 TJm +(good) 19.9252 Tj +86.944 275.408 Td +(tradeof) 28.2141 Tj +25 TJm +(f) 3.31755 Tj +-262 TJm +(to) 7.7509 Tj +-261 TJm +(mak) 17.1556 Tj +10 TJm +(e.) 6.91404 Tj +-690 TJm +(P) 5.53921 Tj +15 TJm +(artly) 18.2614 Tj +-262 TJm +(this) 14.396 Tj +-261 TJm +(is) 6.64505 Tj +-262 TJm +(due) 14.386 Tj +-261 TJm +(to) 7.7509 Tj +-262 TJm +(the) 12.1743 Tj +-262 TJm +(f) 3.31755 Tj +10 TJm +(act) 11.6164 Tj +-261 TJm +(that) 14.9439 Tj +-262 TJm +(I) 3.31755 Tj +-261 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-262 TJm +(not) 12.7322 Tj +-262 TJm +(\003ooded) 29.8878 Tj +-261 TJm +(with) 17.7135 Tj +-262 TJm +(email) 22.1369 Tj +-261 TJm +(complaints) 43.7259 Tj +-262 TJm +(about) 22.1369 Tj +[1 0 0 1 479.557 275.408] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -479.557 -275.408] cm +[1 0 0 1 0 0] Tm +0 0 Td +479.557 275.408 Td +/F134_0 9.9626 Tf +(bzip2-0.1) 53.798 Tj +[1 0 0 1 533.355 275.408] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -533.355 -275.408] cm +[1 0 0 1 0 0] Tm +0 0 Td +533.355 275.408 Td +/F130_0 9.9626 Tf +(') 3.31755 Tj +55 TJm +(s) 3.87545 Tj +86.944 263.453 Td +(performance) 50.341 Tj +-250 TJm +(on) 9.9626 Tj +-250 TJm +(repetiti) 28.224 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-250 TJm +(data,) 19.0883 Tj +-250 TJm +(so) 8.85675 Tj +-250 TJm +(perhaps) 30.9837 Tj +-250 TJm +(it) 5.53921 Tj +-250 TJm +(isn') 14.9439 Tj +18 TJm +(t) 2.7696 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(problem) 33.2053 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(real) 14.9339 Tj +-250 TJm +(inputs.) 26.8492 Tj +[1 0 0 1 72 261.296] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.6315] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -251.664] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 241.866 Td +/F130_0 9.9626 Tf +(Probably) 35.9749 Tj +-289 TJm +(the) 12.1743 Tj +-288 TJm +(best) 16.0497 Tj +-289 TJm +(long-term) 39.2925 Tj +-289 TJm +(solution,) 34.6001 Tj +-298 TJm +(and) 14.386 Tj +-289 TJm +(the) 12.1743 Tj +-289 TJm +(one) 14.386 Tj +-288 TJm +(I) 3.31755 Tj +-289 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-289 TJm +(incorporated) 50.351 Tj +-288 TJm +(into) 15.5018 Tj +-289 TJm +(0.9.5) 19.9252 Tj +-289 TJm +(and) 14.386 Tj +-288 TJm +(abo) 14.386 Tj +15 TJm +(v) 4.9813 Tj +14 TJm +(e,) 6.91404 Tj +-298 TJm +(is) 6.64505 Tj +-289 TJm +(to) 7.7509 Tj +-288 TJm +(use) 13.2801 Tj +-289 TJm +(the) 12.1743 Tj +-289 TJm +(e) 4.42339 Tj +15 TJm +(xisting) 27.1282 Tj +86.944 229.911 Td +(sorting) 27.6761 Tj +-451 TJm +(algorithm) 38.7446 Tj +-452 TJm +(initially) 31.0036 Tj +65 TJm +(,) 2.49065 Tj +-501 TJm +(and) 14.386 Tj +-452 TJm +(f) 3.31755 Tj +10 TJm +(all) 9.9626 Tj +-451 TJm +(back) 18.8094 Tj +-452 TJm +(to) 7.7509 Tj +-451 TJm +(a) 4.42339 Tj +-451 TJm +(O\(N) 17.7035 Tj +-452 TJm +(\(log) 16.0497 Tj +-451 TJm +(N\)^2\)) 23.4818 Tj +-451 TJm +(algorithm) 38.7446 Tj +-452 TJm +(if) 6.08715 Tj +-451 TJm +(the) 12.1743 Tj +-452 TJm +(standard) 33.7533 Tj +-451 TJm +(algorithm) 38.7446 Tj +-451 TJm +(gets) 16.0497 Tj +-452 TJm +(into) 15.5018 Tj +86.944 217.956 Td +(dif) 11.0684 Tj +25 TJm +(\002culties.) 34.0422 Tj +[1 0 0 1 72 217.856] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -21.4871] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -196.369] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 196.369 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 196.369] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -196.369] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 196.369 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-299 TJm +(compressed) 47.0334 Tj +-299 TJm +(\002le) 12.7322 Tj +-299 TJm +(format) 26.5603 Tj +-299 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-300 TJm +(ne) 9.40469 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-299 TJm +(designed) 35.417 Tj +-299 TJm +(to) 7.7509 Tj +-299 TJm +(be) 9.40469 Tj +-299 TJm +(handled) 31.5416 Tj +-299 TJm +(by) 9.9626 Tj +-299 TJm +(a) 4.42339 Tj +-299 TJm +(library) 26.5603 Tj +65 TJm +(,) 2.49065 Tj +-312 TJm +(and) 14.386 Tj +-299 TJm +(I) 3.31755 Tj +-299 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-299 TJm +(had) 14.386 Tj +-299 TJm +(to) 7.7509 Tj +-299 TJm +(jump) 20.4831 Tj +-300 TJm +(though) 27.6761 Tj +-299 TJm +(some) 21.031 Tj +86.944 184.414 Td +(hoops) 23.8007 Tj +-278 TJm +(to) 7.7509 Tj +-277 TJm +(produce) 32.0895 Tj +-278 TJm +(an) 9.40469 Tj +-278 TJm +(ef) 7.74094 Tj +25 TJm +(\002cient) 24.9065 Tj +-277 TJm +(implementation) 62.5452 Tj +-278 TJm +(of) 8.29885 Tj +-278 TJm +(decompression.) 62.2563 Tj +-786 TJm +(It') 9.40469 Tj +55 TJm +(s) 3.87545 Tj +-278 TJm +(a) 4.42339 Tj +-277 TJm +(bit) 10.5205 Tj +-278 TJm +(hairy) 20.4731 Tj +65 TJm +(.) 2.49065 Tj +-786 TJm +(T) 6.08715 Tj +35 TJm +(ry) 8.29885 Tj +-278 TJm +(passing) 29.8878 Tj +[1 0 0 1 468.269 184.414] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468.269 -184.414] cm +[1 0 0 1 0 0] Tm +0 0 Td +468.269 184.414 Td +/F134_0 9.9626 Tf +(decompress.c) 71.7307 Tj +[1 0 0 1 540 184.414] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -184.414] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 172.459 Td +/F130_0 9.9626 Tf +(through) 30.9936 Tj +-268 TJm +(the) 12.1743 Tj +-268 TJm +(C) 6.64505 Tj +-268 TJm +(preprocessor) 50.8989 Tj +-269 TJm +(and) 14.386 Tj +-268 TJm +(you') 18.2614 Tj +10 TJm +(ll) 5.53921 Tj +-268 TJm +(see) 12.7222 Tj +-268 TJm +(what) 19.3673 Tj +-268 TJm +(I) 3.31755 Tj +-268 TJm +(mean.) 24.0696 Tj +-729 TJm +(Much) 23.2427 Tj +-268 TJm +(of) 8.29885 Tj +-269 TJm +(this) 14.396 Tj +-268 TJm +(comple) 29.3299 Tj +15 TJm +(xity) 15.5018 Tj +-268 TJm +(could) 22.1369 Tj +-268 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-268 TJm +(been) 18.8094 Tj +-268 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +20 TJm +(oided) 22.1369 Tj +-269 TJm +(if) 6.08715 Tj +-268 TJm +(the) 12.1743 Tj +86.944 160.503 Td +(compressed) 47.0334 Tj +-250 TJm +(size) 15.4918 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(each) 18.2515 Tj +-250 TJm +(block) 22.1369 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-250 TJm +(recorded) 34.8492 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(data) 16.5977 Tj +-250 TJm +(stream.) 29.0509 Tj +[1 0 0 1 368.754 160.503] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -296.754 -21.5867] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -138.917] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 138.917 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 138.917] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -138.917] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 138.917 Td +/F130_0 9.9626 Tf +(An) 12.1743 Tj +-250 TJm +(Adler) 22.6848 Tj +20 TJm +(-32) 13.2801 Tj +-250 TJm +(checksum,) 42.3311 Tj +-250 TJm +(rather) 23.2328 Tj +-250 TJm +(than) 17.1556 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(CRC32) 29.8978 Tj +-250 TJm +(checksum,) 42.3311 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ould) 17.7135 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(f) 3.31755 Tj +10 TJm +(aster) 18.8094 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(compute.) 36.8018 Tj +[1 0 0 1 424.934 138.917] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -352.934 -11.7883] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -127.128] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 117.33 Td +/F130_0 9.9626 Tf +(It) 6.08715 Tj +-349 TJm +(w) 7.193 Tj +10 TJm +(ould) 17.7135 Tj +-349 TJm +(be) 9.40469 Tj +-349 TJm +(f) 3.31755 Tj +10 TJm +(air) 10.5105 Tj +-348 TJm +(to) 7.7509 Tj +-349 TJm +(say) 13.2801 Tj +-349 TJm +(that) 14.9439 Tj +-349 TJm +(the) 12.1743 Tj +[1 0 0 1 201.979 117.33] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -201.979 -117.33] cm +[1 0 0 1 0 0] Tm +0 0 Td +201.979 117.33 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 231.867 117.33] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -231.867 -117.33] cm +[1 0 0 1 0 0] Tm +0 0 Td +235.342 117.33 Td +/F130_0 9.9626 Tf +(format) 26.5603 Tj +-349 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-349 TJm +(frozen) 25.4445 Tj +-348 TJm +(before) 25.4445 Tj +-349 TJm +(I) 3.31755 Tj +-349 TJm +(properly) 33.7533 Tj +-349 TJm +(and) 14.386 Tj +-349 TJm +(fully) 18.8194 Tj +-349 TJm +(understood) 44.2738 Tj +-348 TJm +(the) 12.1743 Tj +-349 TJm +(performance) 50.341 Tj +72 105.375 Td +(consequences) 54.7744 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(doing) 22.6948 Tj +-250 TJm +(so.) 11.3474 Tj +[1 0 0 1 72 103.218] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.6315] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -93.5867] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 83.7883 Td +/F130_0 9.9626 Tf +(Impro) 24.3486 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(ements) 28.224 Tj +-250 TJm +(which) 24.3486 Tj +-250 TJm +(I) 3.31755 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(as) 8.29885 Tj +-250 TJm +(able) 16.5977 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(incorporate) 45.3697 Tj +-250 TJm +(into) 15.5018 Tj +-250 TJm +(0.9.0,) 22.4159 Tj +-250 TJm +(despite) 28.224 Tj +-250 TJm +(using) 21.589 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(same) 20.4731 Tj +-250 TJm +(\002le) 12.7322 Tj +-250 TJm +(format,) 29.0509 Tj +-250 TJm +(are:) 14.9339 Tj +[1 0 0 1 72 81.6315] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -30.7796] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(31) 9.9626 Tj +[1 0 0 1 453.269 50.8519] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 35 35 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 116.328 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -382.4 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +498.728 749.245 Td +/F130_0 9.9626 Tf +(Miscellanea) 48.1393 Tj +[1 0 0 1 266.071 749.146] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -7.0936] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -31.5168] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 710.037 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 710.037 Td +/F130_0 9.9626 Tf +(Single) 25.4644 Tj +-202 TJm +(array) 20.4632 Tj +-201 TJm +(implementation) 62.5452 Tj +-202 TJm +(of) 8.29885 Tj +-202 TJm +(the) 12.1743 Tj +-201 TJm +(in) 7.7509 Tj +40 TJm +(v) 4.9813 Tj +15 TJm +(erse) 16.0398 Tj +-202 TJm +(BWT) 22.1369 Tj +74 TJm +(.) 2.49065 Tj +-403 TJm +(This) 17.7135 Tj +-202 TJm +(signi\002cantly) 49.2651 Tj +-201 TJm +(speeds) 26.5603 Tj +-202 TJm +(up) 9.9626 Tj +-202 TJm +(decompression,) 62.2563 Tj +-211 TJm +(presumably) 46.4855 Tj +-202 TJm +(because) 31.5316 Tj +86.944 698.082 Td +(it) 5.53921 Tj +-250 TJm +(reduces) 30.4258 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(number) 30.4357 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(cache) 22.6749 Tj +-250 TJm +(misses.) 29.0609 Tj +[1 0 0 1 240.496 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -168.496 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 676.164 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 676.164] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -676.164] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 676.164 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(aster) 18.8094 Tj +-314 TJm +(in) 7.7509 Tj +40 TJm +(v) 4.9813 Tj +15 TJm +(erse) 16.0398 Tj +-315 TJm +(MTF) 20.4831 Tj +-314 TJm +(transform) 38.7346 Tj +-315 TJm +(for) 11.6164 Tj +-314 TJm +(lar) 10.5105 Tj +18 TJm +(ge) 9.40469 Tj +-315 TJm +(MTF) 20.4831 Tj +-314 TJm +(v) 4.9813 Tj +25 TJm +(alues.) 22.9638 Tj +-504 TJm +(The) 15.4918 Tj +-314 TJm +(ne) 9.40469 Tj +25 TJm +(w) 7.193 Tj +-314 TJm +(implementation) 62.5452 Tj +-315 TJm +(is) 6.64505 Tj +-314 TJm +(based) 22.6848 Tj +-315 TJm +(on) 9.9626 Tj +-314 TJm +(the) 12.1743 Tj +-315 TJm +(notion) 25.4644 Tj +-314 TJm +(of) 8.29885 Tj +-315 TJm +(sliding) 27.1282 Tj +86.944 664.209 Td +(blocks) 26.0123 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(v) 4.9813 Tj +25 TJm +(alues.) 22.9638 Tj +[1 0 0 1 153.932 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -81.9321 -21.9178] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 642.291 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 642.291 Td +/F134_0 9.9626 Tf +(bzip2-0.9.0) 65.7532 Tj +[1 0 0 1 152.697 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -152.697 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +155.412 642.291 Td +/F130_0 9.9626 Tf +(no) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-272 TJm +(reads) 21.0211 Tj +-273 TJm +(and) 14.386 Tj +-272 TJm +(writes) 24.3486 Tj +-273 TJm +(\002les) 16.6077 Tj +-272 TJm +(with) 17.7135 Tj +[1 0 0 1 282.68 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -282.68 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +282.68 642.291 Td +/F134_0 9.9626 Tf +(fread) 29.8878 Tj +[1 0 0 1 312.568 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -312.568 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +315.282 642.291 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 332.383 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -332.383 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +332.383 642.291 Td +/F134_0 9.9626 Tf +(fwrite) 35.8654 Tj +[1 0 0 1 368.248 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -368.248 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +368.248 642.291 Td +/F130_0 9.9626 Tf +(;) 2.7696 Tj +-284 TJm +(v) 4.9813 Tj +15 TJm +(ersion) 24.3486 Tj +-272 TJm +(0.1) 12.4533 Tj +-273 TJm +(used) 18.2614 Tj +[1 0 0 1 441.882 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -441.882 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +441.882 642.291 Td +/F134_0 9.9626 Tf +(putc) 23.9102 Tj +[1 0 0 1 465.792 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -465.792 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +468.507 642.291 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 485.607 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -485.607 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +485.607 642.291 Td +/F134_0 9.9626 Tf +(getc) 23.9102 Tj +[1 0 0 1 509.517 642.291] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -509.517 -642.291] cm +[1 0 0 1 0 0] Tm +0 0 Td +509.517 642.291 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-755 TJm +(Duh!) 20.4731 Tj +86.944 630.336 Td +(W) 9.40469 Tj +80 TJm +(ell,) 12.4533 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(li) 5.53921 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(learn.) 22.4059 Tj +[1 0 0 1 184.248 630.336] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -112.248 -12.1195] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -618.217] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 608.418 Td +/F130_0 9.9626 Tf +(Further) 29.3299 Tj +-304 TJm +(ahead,) 25.7234 Tj +-318 TJm +(it) 5.53921 Tj +-305 TJm +(w) 7.193 Tj +10 TJm +(ould) 17.7135 Tj +-304 TJm +(be) 9.40469 Tj +-305 TJm +(nice) 16.5977 Tj +-304 TJm +(to) 7.7509 Tj +-305 TJm +(be) 9.40469 Tj +-304 TJm +(able) 16.5977 Tj +-304 TJm +(to) 7.7509 Tj +-305 TJm +(do) 9.9626 Tj +-304 TJm +(random) 30.4357 Tj +-305 TJm +(access) 25.4445 Tj +-304 TJm +(into) 15.5018 Tj +-305 TJm +(\002les.) 19.0983 Tj +-946 TJm +(This) 17.7135 Tj +-305 TJm +(will) 15.5018 Tj +-304 TJm +(require) 28.2141 Tj +-304 TJm +(some) 21.031 Tj +-305 TJm +(careful) 27.6562 Tj +-304 TJm +(design) 26.0123 Tj +-305 TJm +(of) 8.29885 Tj +72 596.463 Td +(compressed) 47.0334 Tj +-250 TJm +(\002le) 12.7322 Tj +-250 TJm +(formats.) 32.9264 Tj +[1 0 0 1 72 594.306] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -584.344] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 561.71 Td +/F122_0 20.6585 Tf +(4.2.) 34.4584 Tj +-278 TJm +(P) 13.7792 Tj +40 TJm +(or) 20.6585 Tj +-20 TJm +(tability) 66.5823 Tj +-278 TJm +(issues) 64.3099 Tj +[1 0 0 1 72 557.434] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -547.472] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 539.793 Td +/F130_0 9.9626 Tf +(After) 21.0211 Tj +-250 TJm +(some) 21.031 Tj +-250 TJm +(consideration,) 56.1691 Tj +-250 TJm +(I) 3.31755 Tj +-250 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-250 TJm +(decided) 30.9837 Tj +-250 TJm +(not) 12.7322 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(use) 13.2801 Tj +-250 TJm +(GNU) 21.579 Tj +[1 0 0 1 303.231 539.793] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -303.231 -539.793] cm +[1 0 0 1 0 0] Tm +0 0 Td +303.231 539.793 Td +/F134_0 9.9626 Tf +(autoconf) 47.8205 Tj +[1 0 0 1 351.052 539.793] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -351.052 -539.793] cm +[1 0 0 1 0 0] Tm +0 0 Td +353.542 539.793 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-250 TJm +(con\002gure) 37.6287 Tj +-250 TJm +(0.9.5) 19.9252 Tj +-250 TJm +(or) 8.29885 Tj +-250 TJm +(1.0.) 14.9439 Tj +[1 0 0 1 72 537.636] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -527.673] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 517.875 Td +/F134_0 9.9626 Tf +(autoconf) 47.8205 Tj +[1 0 0 1 119.821 517.875] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -119.821 -517.875] cm +[1 0 0 1 0 0] Tm +0 0 Td +119.821 517.875 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-502 TJm +(admirable) 39.8404 Tj +-452 TJm +(and) 14.386 Tj +-452 TJm +(w) 7.193 Tj +10 TJm +(onderful) 33.7533 Tj +-452 TJm +(though) 27.6761 Tj +-452 TJm +(it) 5.53921 Tj +-452 TJm +(is,) 9.1357 Tj +-502 TJm +(mainly) 27.6761 Tj +-452 TJm +(assists) 25.4644 Tj +-452 TJm +(with) 17.7135 Tj +-452 TJm +(portability) 41.5142 Tj +-452 TJm +(problems) 37.0808 Tj +-452 TJm +(between) 33.1954 Tj +-452 TJm +(Unix-lik) 33.7633 Tj +10 TJm +(e) 4.42339 Tj +72 505.92 Td +(platforms.) 40.6773 Tj +-1398 TJm +(But) 14.396 Tj +[1 0 0 1 144.784 505.92] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -144.784 -505.92] cm +[1 0 0 1 0 0] Tm +0 0 Td +144.784 505.92 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 174.672 505.92] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -174.672 -505.92] cm +[1 0 0 1 0 0] Tm +0 0 Td +178.455 505.92 Td +/F130_0 9.9626 Tf +(doesn') 26.5603 Tj +18 TJm +(t) 2.7696 Tj +-380 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-379 TJm +(much) 22.1369 Tj +-380 TJm +(in) 7.7509 Tj +-380 TJm +(the) 12.1743 Tj +-379 TJm +(w) 7.193 Tj +10 TJm +(ay) 9.40469 Tj +-380 TJm +(of) 8.29885 Tj +-380 TJm +(portability) 41.5142 Tj +-379 TJm +(problems) 37.0808 Tj +-380 TJm +(on) 9.9626 Tj +-380 TJm +(Unix;) 22.6948 Tj +-444 TJm +(most) 19.3773 Tj +-380 TJm +(of) 8.29885 Tj +-380 TJm +(the) 12.1743 Tj +-379 TJm +(dif) 11.0684 Tj +25 TJm +(\002culties) 31.5516 Tj +72 493.964 Td +(appear) 26.5503 Tj +-297 TJm +(when) 21.579 Tj +-296 TJm +(po) 9.9626 Tj +-1 TJm +(r) 3.31755 Tj +1 TJm +(ting) 15.5018 Tj +-297 TJm +(to) 7.7509 Tj +-297 TJm +(the) 12.1743 Tj +-297 TJm +(Mac,) 20.1942 Tj +-308 TJm +(or) 8.29885 Tj +-297 TJm +(to) 7.7509 Tj +-297 TJm +(Microsoft') 42.61 Tj +55 TJm +(s) 3.87545 Tj +-296 TJm +(operating) 37.6287 Tj +-297 TJm +(systems.) 34.0422 Tj +[1 0 0 1 361.339 493.964] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -361.339 -493.964] cm +[1 0 0 1 0 0] Tm +0 0 Td +361.339 493.964 Td +/F134_0 9.9626 Tf +(autoconf) 47.8205 Tj +[1 0 0 1 409.16 493.964] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -409.16 -493.964] cm +[1 0 0 1 0 0] Tm +0 0 Td +412.116 493.964 Td +/F130_0 9.9626 Tf +(doesn') 26.5603 Tj +18 TJm +(t) 2.7696 Tj +-297 TJm +(help) 17.1556 Tj +-296 TJm +(in) 7.7509 Tj +-297 TJm +(those) 21.031 Tj +-297 TJm +(cases,) 23.5117 Tj +-308 TJm +(and) 14.386 Tj +72 482.009 Td +(brings) 24.9065 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(whole) 24.3486 Tj +-250 TJm +(load) 17.1556 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(ne) 9.40469 Tj +25 TJm +(w) 7.193 Tj +-250 TJm +(comple) 29.3299 Tj +15 TJm +(xity) 15.5018 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 479.852] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -469.89] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 460.091 Td +/F130_0 9.9626 Tf +(Most) 20.4831 Tj +-392 TJm +(people) 26.5603 Tj +-392 TJm +(should) 26.5703 Tj +-393 TJm +(be) 9.40469 Tj +-392 TJm +(able) 16.5977 Tj +-392 TJm +(to) 7.7509 Tj +-392 TJm +(compile) 32.0995 Tj +-393 TJm +(the) 12.1743 Tj +-392 TJm +(library) 26.5603 Tj +-392 TJm +(and) 14.386 Tj +-392 TJm +(program) 33.7533 Tj +-393 TJm +(under) 22.6848 Tj +-392 TJm +(Unix) 19.9252 Tj +-392 TJm +(straight) 29.8878 Tj +-392 TJm +(out-of-the-box,) 60.5925 Tj +-428 TJm +(so) 8.85675 Tj +-392 TJm +(to) 7.7509 Tj +-393 TJm +(speak,) 25.1755 Tj +72 448.136 Td +(especially) 39.8404 Tj +-250 TJm +(if) 6.08715 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(v) 4.9813 Tj +15 TJm +(ersion) 24.3486 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(GNU) 21.579 Tj +-250 TJm +(C) 6.64505 Tj +-250 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +25 TJm +(ailable.) 29.0509 Tj +[1 0 0 1 72 445.979] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -436.017] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 426.218 Td +/F130_0 9.9626 Tf +(There) 23.2328 Tj +-259 TJm +(are) 12.1643 Tj +-258 TJm +(a) 4.42339 Tj +-259 TJm +(couple) 26.5603 Tj +-258 TJm +(of) 8.29885 Tj +[1 0 0 1 159.561 426.218] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -159.561 -426.218] cm +[1 0 0 1 0 0] Tm +0 0 Td +159.561 426.218 Td +/F134_0 9.9626 Tf +(__inline__) 59.7756 Tj +[1 0 0 1 219.337 426.218] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -219.337 -426.218] cm +[1 0 0 1 0 0] Tm +0 0 Td +221.913 426.218 Td +/F130_0 9.9626 Tf +(directi) 25.4544 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(es) 8.29885 Tj +-259 TJm +(in) 7.7509 Tj +-258 TJm +(the) 12.1743 Tj +-259 TJm +(code.) 21.3 Tj +-671 TJm +(GNU) 21.579 Tj +-259 TJm +(C) 6.64505 Tj +-258 TJm +(\() 3.31755 Tj +[1 0 0 1 352.587 426.218] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -352.587 -426.218] cm +[1 0 0 1 0 0] Tm +0 0 Td +352.587 426.218 Td +/F134_0 9.9626 Tf +(gcc) 17.9327 Tj +[1 0 0 1 370.52 426.218] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -370.52 -426.218] cm +[1 0 0 1 0 0] Tm +0 0 Td +370.52 426.218 Td +/F130_0 9.9626 Tf +(\)) 3.31755 Tj +-259 TJm +(should) 26.5703 Tj +-258 TJm +(be) 9.40469 Tj +-259 TJm +(able) 16.5977 Tj +-258 TJm +(to) 7.7509 Tj +-259 TJm +(handle) 26.5603 Tj +-259 TJm +(them.) 22.4159 Tj +-671 TJm +(If) 6.63509 Tj +-259 TJm +(you') 18.2614 Tj +50 TJm +(re) 7.74094 Tj +72 414.263 Td +(not) 12.7322 Tj +-279 TJm +(using) 21.589 Tj +-279 TJm +(GNU) 21.579 Tj +-279 TJm +(C,) 9.1357 Tj +-279 TJm +(your) 18.2614 Tj +-279 TJm +(C) 6.64505 Tj +-279 TJm +(compiler) 35.417 Tj +-279 TJm +(shouldn') 34.8691 Tj +18 TJm +(t) 2.7696 Tj +-279 TJm +(see) 12.7222 Tj +-279 TJm +(them) 19.9252 Tj +-279 TJm +(at) 7.193 Tj +-279 TJm +(all.) 12.4533 Tj +-794 TJm +(If) 6.63509 Tj +-279 TJm +(your) 18.2614 Tj +-279 TJm +(compiler) 35.417 Tj +-279 TJm +(does,) 20.7521 Tj +-286 TJm +(for) 11.6164 Tj +-279 TJm +(some) 21.031 Tj +-279 TJm +(reason,) 28.493 Tj +-287 TJm +(see) 12.7222 Tj +-279 TJm +(them) 19.9252 Tj +-279 TJm +(and) 14.386 Tj +72 402.308 Td +(doesn') 26.5603 Tj +18 TJm +(t) 2.7696 Tj +-283 TJm +(lik) 10.5205 Tj +10 TJm +(e) 4.42339 Tj +-283 TJm +(them,) 22.4159 Tj +-291 TJm +(just) 14.396 Tj +[1 0 0 1 164.167 402.308] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -164.167 -402.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +164.167 402.308 Td +/F134_0 9.9626 Tf +(#define) 41.8429 Tj +[1 0 0 1 206.01 402.308] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.8196 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -208.829 -402.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +208.829 402.308 Td +/F134_0 9.9626 Tf +(__inline__) 59.7756 Tj +[1 0 0 1 268.605 402.308] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -268.605 -402.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +271.425 402.308 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-283 TJm +(be) 9.40469 Tj +[1 0 0 1 294.22 402.308] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -294.22 -402.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +294.22 402.308 Td +/F134_0 9.9626 Tf +(/) 5.97756 Tj +300.197 400.565 Td +(*) 5.97756 Tj +-600 TJm +(*) 5.97756 Tj +318.13 402.308 Td +(/) 5.97756 Tj +[1 0 0 1 324.108 402.308] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -324.108 -402.308] cm +[1 0 0 1 0 0] Tm +0 0 Td +324.108 402.308 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-818 TJm +(One) 16.5977 Tj +-283 TJm +(easy) 17.7035 Tj +-283 TJm +(w) 7.193 Tj +10 TJm +(ay) 9.40469 Tj +-283 TJm +(to) 7.7509 Tj +-283 TJm +(do) 9.9626 Tj +-283 TJm +(this) 14.396 Tj +-283 TJm +(is) 6.64505 Tj +-283 TJm +(to) 7.7509 Tj +-283 TJm +(compile) 32.0995 Tj +-283 TJm +(with) 17.7135 Tj +-283 TJm +(the) 12.1743 Tj +-283 TJm +(\003ag) 14.9439 Tj +[1 0 0 1 72 390.353] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -390.353] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 390.353 Td +/F134_0 9.9626 Tf +(-D__inline__=) 77.7083 Tj +[1 0 0 1 149.709 390.353] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -149.709 -390.353] cm +[1 0 0 1 0 0] Tm +0 0 Td +149.709 390.353 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-250 TJm +(which) 24.3486 Tj +-250 TJm +(should) 26.5703 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(understood) 44.2738 Tj +-250 TJm +(by) 9.9626 Tj +-250 TJm +(most) 19.3773 Tj +-250 TJm +(Unix) 19.9252 Tj +-250 TJm +(compilers.) 41.7831 Tj +[1 0 0 1 72 388.196] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -378.233] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 368.435 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +-321 TJm +(you) 14.9439 Tj +-321 TJm +(still) 14.9539 Tj +-322 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-321 TJm +(dif) 11.0684 Tj +25 TJm +(\002culties,) 34.0422 Tj +-339 TJm +(try) 11.0684 Tj +-321 TJm +(compiling) 40.4083 Tj +-321 TJm +(with) 17.7135 Tj +-322 TJm +(t) 2.7696 Tj +1 TJm +(he) 9.40469 Tj +-322 TJm +(macro) 24.8965 Tj +[1 0 0 1 310.295 368.435] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -310.295 -368.435] cm +[1 0 0 1 0 0] Tm +0 0 Td +310.295 368.435 Td +/F134_0 9.9626 Tf +(BZ_STRICT_ANSI) 83.6858 Tj +[1 0 0 1 393.981 368.435] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -393.981 -368.435] cm +[1 0 0 1 0 0] Tm +0 0 Td +397.18 368.435 Td +/F130_0 9.9626 Tf +(de\002ned.) 31.8205 Tj +-524 TJm +(This) 17.7135 Tj +-321 TJm +(should) 26.5703 Tj +-321 TJm +(enable) 26.0024 Tj +-321 TJm +(you) 14.9439 Tj +-322 TJm +(to) 7.7509 Tj +72 356.48 Td +(b) 4.9813 Tj +20 TJm +(uild) 15.5018 Tj +-321 TJm +(the) 12.1743 Tj +-321 TJm +(library) 26.5603 Tj +-322 TJm +(in) 7.7509 Tj +-321 TJm +(a) 4.42339 Tj +-321 TJm +(strictly) 27.6761 Tj +-321 TJm +(ANSI) 23.2427 Tj +-321 TJm +(compliant) 39.8504 Tj +-322 TJm +(en) 9.40469 Tj +40 TJm +(vironment.) 43.4469 Tj +-1047 TJm +(Building) 34.8791 Tj +-321 TJm +(the) 12.1743 Tj +-321 TJm +(program) 33.7533 Tj +-322 TJm +(itself) 19.9252 Tj +-321 TJm +(lik) 10.5205 Tj +10 TJm +(e) 4.42339 Tj +-321 TJm +(this) 14.396 Tj +-321 TJm +(is) 6.64505 Tj +-321 TJm +(dangerous) 40.9463 Tj +-322 TJm +(and) 14.386 Tj +72 344.525 Td +(not) 12.7322 Tj +-260 TJm +(supported,) 41.7831 Tj +-263 TJm +(since) 20.4731 Tj +-260 TJm +(you) 14.9439 Tj +-260 TJm +(remo) 20.4731 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +[1 0 0 1 204.498 344.525] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -204.498 -344.525] cm +[1 0 0 1 0 0] Tm +0 0 Td +204.498 344.525 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 234.386 344.525] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -234.386 -344.525] cm +[1 0 0 1 0 0] Tm +0 0 Td +234.386 344.525 Td +/F130_0 9.9626 Tf +(') 3.31755 Tj +55 TJm +(s) 3.87545 Tj +-260 TJm +(checks) 27.1082 Tj +-260 TJm +(ag) 9.40469 Tj +5 TJm +(ainst) 18.8194 Tj +-261 TJm +(compressi) 40.3983 Tj +1 TJm +(ng) 9.9626 Tj +-261 TJm +(directories,) 44.5428 Tj +-262 TJm +(symbolic) 36.5329 Tj +-261 TJm +(links,) 21.8679 Tj +-262 TJm +(de) 9.40469 Tj +25 TJm +(vices,) 22.9638 Tj +-263 TJm +(and) 14.386 Tj +-260 TJm +(other) 20.4731 Tj +72 332.57 Td +(not-really-a-\002le) 62.5253 Tj +-250 TJm +(entities.) 31.2726 Tj +-620 TJm +(This) 17.7135 Tj +-250 TJm +(could) 22.1369 Tj +-250 TJm +(cause) 22.1269 Tj +-250 TJm +(\002lesystem) 40.4083 Tj +-250 TJm +(corruption!) 44.8217 Tj +[1 0 0 1 72 330.413] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -320.45] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 310.652 Td +/F130_0 9.9626 Tf +(One) 16.5977 Tj +-392 TJm +(other) 20.4731 Tj +-391 TJm +(thing:) 23.2527 Tj +-594 TJm +(if) 6.08715 Tj +-391 TJm +(you) 14.9439 Tj +-392 TJm +(create) 23.7807 Tj +-391 TJm +(a) 4.42339 Tj +[1 0 0 1 210.879 310.652] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.879 -310.652] cm +[1 0 0 1 0 0] Tm +0 0 Td +210.879 310.652 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 240.767 310.652] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -240.767 -310.652] cm +[1 0 0 1 0 0] Tm +0 0 Td +244.669 310.652 Td +/F130_0 9.9626 Tf +(binary) 25.4544 Tj +-392 TJm +(for) 11.6164 Tj +-391 TJm +(public) 24.9065 Tj +-392 TJm +(distrib) 25.4644 Tj +20 TJm +(ution,) 22.9738 Tj +-427 TJm +(please) 24.8965 Tj +-392 TJm +(consider) 33.7533 Tj +-391 TJm +(linking) 28.234 Tj +-392 TJm +(it) 5.53921 Tj +-391 TJm +(statically) 35.9749 Tj +-392 TJm +(\() 3.31755 Tj +[1 0 0 1 522.067 310.652] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -522.067 -310.652] cm +[1 0 0 1 0 0] Tm +0 0 Td +522.067 310.652 Td +/F134_0 9.9626 Tf +(gcc) 17.9327 Tj +72 298.697 Td +(-static) 41.8429 Tj +[1 0 0 1 113.843 298.697] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -113.843 -298.697] cm +[1 0 0 1 0 0] Tm +0 0 Td +113.843 298.697 Td +/F130_0 9.9626 Tf +(\).) 5.8082 Tj +-620 TJm +(This) 17.7135 Tj +-250 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +20 TJm +(oids) 16.6077 Tj +-250 TJm +(all) 9.9626 Tj +-250 TJm +(sorts) 18.8194 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(library-v) 34.8591 Tj +15 TJm +(ersion) 24.3486 Tj +-250 TJm +(issues) 23.8007 Tj +-250 TJm +(that) 14.9439 Tj +-250 TJm +(others) 24.3486 Tj +-250 TJm +(may) 17.1556 Tj +-250 TJm +(encounter) 39.2825 Tj +-250 TJm +(later) 17.7035 Tj +-250 TJm +(on.) 12.4533 Tj +[1 0 0 1 72 296.54] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -286.577] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 276.779 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +-296 TJm +(you) 14.9439 Tj +-296 TJm +(b) 4.9813 Tj +20 TJm +(uild) 15.5018 Tj +[1 0 0 1 122.709 276.779] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -122.709 -276.779] cm +[1 0 0 1 0 0] Tm +0 0 Td +122.709 276.779 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 152.596 276.779] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -152.596 -276.779] cm +[1 0 0 1 0 0] Tm +0 0 Td +155.545 276.779 Td +/F130_0 9.9626 Tf +(on) 9.9626 Tj +-296 TJm +(W) 9.40469 Tj +40 TJm +(in32,) 20.2042 Tj +-307 TJm +(you) 14.9439 Tj +-296 TJm +(must) 19.3773 Tj +-296 TJm +(set) 11.0684 Tj +[1 0 0 1 254.965 276.779] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -254.965 -276.779] cm +[1 0 0 1 0 0] Tm +0 0 Td +254.965 276.779 Td +/F134_0 9.9626 Tf +(BZ_UNIX) 41.8429 Tj +[1 0 0 1 296.808 276.779] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -296.808 -276.779] cm +[1 0 0 1 0 0] Tm +0 0 Td +299.756 276.779 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-296 TJm +(0) 4.9813 Tj +-296 TJm +(and) 14.386 Tj +[1 0 0 1 335.72 276.779] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -335.72 -276.779] cm +[1 0 0 1 0 0] Tm +0 0 Td +335.72 276.779 Td +/F134_0 9.9626 Tf +(BZ_LCCWIN32) 65.7532 Tj +[1 0 0 1 401.473 276.779] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -401.473 -276.779] cm +[1 0 0 1 0 0] Tm +0 0 Td +404.422 276.779 Td +/F130_0 9.9626 Tf +(to) 7.7509 Tj +-296 TJm +(1,) 7.47195 Tj +-307 TJm +(in) 7.7509 Tj +-296 TJm +(the) 12.1743 Tj +-296 TJm +(\002le) 12.7322 Tj +[1 0 0 1 467.159 276.779] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -467.159 -276.779] cm +[1 0 0 1 0 0] Tm +0 0 Td +467.159 276.779 Td +/F134_0 9.9626 Tf +(bzip2.c) 41.8429 Tj +[1 0 0 1 509.002 276.779] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -509.002 -276.779] cm +[1 0 0 1 0 0] Tm +0 0 Td +509.002 276.779 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-307 TJm +(before) 25.4445 Tj +72 264.824 Td +(compiling.) 42.899 Tj +-310 TJm +(Otherwise) 40.9463 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(resulting) 34.8691 Tj +-250 TJm +(binary) 25.4544 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(on') 13.2801 Tj +18 TJm +(t) 2.7696 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ork) 13.2801 Tj +-250 TJm +(correctly) 35.4071 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 262.667] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -252.704] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 230.071 Td +/F122_0 20.6585 Tf +(4.3.) 34.4584 Tj +-278 TJm +(Repor) 59.6824 Tj +-20 TJm +(ting) 37.867 Tj +-278 TJm +(b) 12.6223 Tj +20 TJm +(ugs) 36.7308 Tj +[1 0 0 1 72 225.474] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -215.512] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 208.153 Td +/F130_0 9.9626 Tf +(I) 3.31755 Tj +-228 TJm +(tried) 18.2614 Tj +-228 TJm +(pretty) 23.2427 Tj +-228 TJm +(hard) 17.7035 Tj +-228 TJm +(to) 7.7509 Tj +-228 TJm +(mak) 17.1556 Tj +10 TJm +(e) 4.42339 Tj +-228 TJm +(sure) 16.5977 Tj +[1 0 0 1 196.25 208.153] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -196.25 -208.153] cm +[1 0 0 1 0 0] Tm +0 0 Td +196.25 208.153 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 226.138 208.153] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -226.138 -208.153] cm +[1 0 0 1 0 0] Tm +0 0 Td +228.409 208.153 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-228 TJm +(b) 4.9813 Tj +20 TJm +(ug) 9.9626 Tj +-228 TJm +(free,) 17.9725 Tj +-232 TJm +(both) 17.7135 Tj +-228 TJm +(by) 9.9626 Tj +-228 TJm +(design) 26.0123 Tj +-228 TJm +(and) 14.386 Tj +-228 TJm +(by) 9.9626 Tj +-228 TJm +(testing.) 29.0609 Tj +-605 TJm +(Hopefully) 40.3983 Tj +-228 TJm +(you') 18.2614 Tj +10 TJm +(ll) 5.53921 Tj +-228 TJm +(ne) 9.40469 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +-228 TJm +(need) 18.8094 Tj +-228 TJm +(to) 7.7509 Tj +-228 TJm +(read) 17.1456 Tj +72 196.198 Td +(this) 14.396 Tj +-250 TJm +(section) 28.224 Tj +-250 TJm +(for) 11.6164 Tj +-250 TJm +(real.) 17.4246 Tj +[1 0 0 1 72 196.098] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -186.136] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 174.28 Td +/F130_0 9.9626 Tf +(Ne) 11.6164 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ertheless,) 37.3498 Tj +-313 TJm +(if) 6.08715 Tj +[1 0 0 1 137.751 174.28] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -137.751 -174.28] cm +[1 0 0 1 0 0] Tm +0 0 Td +137.751 174.28 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 167.639 174.28] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -167.639 -174.28] cm +[1 0 0 1 0 0] Tm +0 0 Td +170.634 174.28 Td +/F130_0 9.9626 Tf +(dies) 16.0497 Tj +-301 TJm +(with) 17.7135 Tj +-300 TJm +(a) 4.42339 Tj +-301 TJm +(se) 8.29885 Tj +15 TJm +(gmentation) 44.8317 Tj +-300 TJm +(f) 3.31755 Tj +10 TJm +(ault,) 17.4346 Tj +-314 TJm +(a) 4.42339 Tj +-300 TJm +(b) 4.9813 Tj +20 TJm +(us) 8.85675 Tj +-301 TJm +(error) 19.3573 Tj +-300 TJm +(or) 8.29885 Tj +-301 TJm +(an) 9.40469 Tj +-301 TJm +(internal) 30.4357 Tj +-300 TJm +(assertion) 35.417 Tj +-301 TJm +(f) 3.31755 Tj +10 TJm +(ailure,) 25.1755 Tj +-313 TJm +(it) 5.53921 Tj +-301 TJm +(wil) 12.7322 Tj +1 TJm +(l) 2.7696 Tj +-301 TJm +(ask) 13.2801 Tj +-301 TJm +(you) 14.9439 Tj +-300 TJm +(to) 7.7509 Tj +72 162.325 Td +(email) 22.1369 Tj +-242 TJm +(me) 12.1743 Tj +-243 TJm +(a) 4.42339 Tj +-242 TJm +(b) 4.9813 Tj +20 TJm +(ug) 9.9626 Tj +-243 TJm +(report.) 26.2813 Tj +-615 TJm +(Experience) 44.8118 Tj +-242 TJm +(from) 19.3673 Tj +-243 TJm +(years) 21.0211 Tj +-242 TJm +(of) 8.29885 Tj +-242 TJm +(feedback) 35.955 Tj +-243 TJm +(of) 8.29885 Tj +-242 TJm +(bzip2) 22.1369 Tj +-243 TJm +(users) 20.4731 Tj +-242 TJm +(indicates) 35.417 Tj +-243 TJm +(that) 14.9439 Tj +-242 TJm +(almost) 26.5703 Tj +-242 TJm +(all) 9.9626 Tj +-243 TJm +(these) 20.4731 Tj +-242 TJm +(problems) 37.0808 Tj +-243 TJm +(can) 13.8281 Tj +72 150.37 Td +(be) 9.40469 Tj +-250 TJm +(traced) 24.3386 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(either) 22.6848 Tj +-250 TJm +(compiler) 35.417 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ugs) 13.8381 Tj +-250 TJm +(or) 8.29885 Tj +-250 TJm +(hardw) 24.8965 Tj +10 TJm +(are) 12.1643 Tj +-250 TJm +(problems.) 39.5714 Tj +[1 0 0 1 72 148.213] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -97.3611] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(32) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 36 36 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 116.328 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -382.4 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +498.728 749.245 Td +/F130_0 9.9626 Tf +(Miscellanea) 48.1393 Tj +[1 0 0 1 266.071 749.146] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -7.0936] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -31.5168] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 710.037 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 710.037] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -710.037] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 710.037 Td +/F130_0 9.9626 Tf +(Recompile) 43.1679 Tj +-306 TJm +(the) 12.1743 Tj +-306 TJm +(program) 33.7533 Tj +-306 TJm +(with) 17.7135 Tj +-306 TJm +(no) 9.9626 Tj +-306 TJm +(optimisation,) 52.3136 Tj +-320 TJm +(and) 14.386 Tj +-306 TJm +(see) 12.7222 Tj +-306 TJm +(if) 6.08715 Tj +-306 TJm +(it) 5.53921 Tj +-306 TJm +(w) 7.193 Tj +10 TJm +(orks.) 19.6462 Tj +-956 TJm +(And/or) 28.224 Tj +-306 TJm +(try) 11.0684 Tj +-306 TJm +(a) 4.42339 Tj +-306 TJm +(dif) 11.0684 Tj +25 TJm +(ferent) 23.2328 Tj +-306 TJm +(compiler) 35.417 Tj +55 TJm +(.) 2.49065 Tj +-956 TJm +(I) 3.31755 Tj +-306 TJm +(heard) 22.1269 Tj +-306 TJm +(all) 9.9626 Tj +86.944 698.082 Td +(sorts) 18.8194 Tj +-282 TJm +(of) 8.29885 Tj +-282 TJm +(stories) 26.0123 Tj +-282 TJm +(about) 22.1369 Tj +-283 TJm +(v) 4.9813 Tj +25 TJm +(arious) 24.3486 Tj +-282 TJm +(\003a) 9.9626 Tj +20 TJm +(v) 4.9813 Tj +20 TJm +(ours) 17.1556 Tj +-282 TJm +(of) 8.29885 Tj +-282 TJm +(GNU) 21.579 Tj +-282 TJm +(C) 6.64505 Tj +-282 TJm +(\(and) 17.7035 Tj +-282 TJm +(other) 20.4731 Tj +-283 TJm +(compilers\)) 42.61 Tj +-282 TJm +(generating) 42.0521 Tj +-282 TJm +(bad) 14.386 Tj +-282 TJm +(code) 18.8094 Tj +-282 TJm +(for) 11.6164 Tj +[1 0 0 1 472.141 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.141 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +472.141 698.082 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 502.029 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -502.029 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +502.029 698.082 Td +/F130_0 9.9626 Tf +(,) 2.49065 Tj +-290 TJm +(and) 14.386 Tj +-282 TJm +(I') 6.63509 Tj +50 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +86.944 686.127 Td +(run) 13.2801 Tj +-250 TJm +(across) 24.8965 Tj +-250 TJm +(tw) 9.9626 Tj +10 TJm +(o) 4.9813 Tj +-250 TJm +(such) 18.2614 Tj +-250 TJm +(e) 4.42339 Tj +15 TJm +(xamples) 33.2053 Tj +-250 TJm +(myself.) 29.6088 Tj +[1 0 0 1 237.767 686.127] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -165.767 -12.1195] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -674.007] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 664.209 Td +/F130_0 9.9626 Tf +(2.7.X) 22.1369 Tj +-280 TJm +(v) 4.9813 Tj +15 TJm +(ersions) 28.224 Tj +-279 TJm +(of) 8.29885 Tj +-280 TJm +(GNU) 21.579 Tj +-279 TJm +(C) 6.64505 Tj +-280 TJm +(are) 12.1643 Tj +-279 TJm +(kno) 14.9439 Tj +25 TJm +(wn) 12.1743 Tj +-280 TJm +(to) 7.7509 Tj +-280 TJm +(generate) 33.7433 Tj +-279 TJm +(bad) 14.386 Tj +-280 TJm +(code) 18.8094 Tj +-279 TJm +(from) 19.3673 Tj +-280 TJm +(time) 17.7135 Tj +-279 TJm +(to) 7.7509 Tj +-280 TJm +(time,) 20.2042 Tj +-287 TJm +(at) 7.193 Tj +-280 TJm +(high) 17.7135 Tj +-279 TJm +(optimisation) 49.823 Tj +-280 TJm +(le) 7.193 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(els.) 13.5591 Tj +-797 TJm +(If) 6.63509 Tj +-280 TJm +(you) 14.9439 Tj +86.944 652.254 Td +(get) 12.1743 Tj +-295 TJm +(problems,) 39.5714 Tj +-307 TJm +(try) 11.0684 Tj +-296 TJm +(using) 21.589 Tj +-295 TJm +(the) 12.1743 Tj +-296 TJm +(\003ags) 18.8194 Tj +[1 0 0 1 220.116 652.254] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -220.116 -652.254] cm +[1 0 0 1 0 0] Tm +0 0 Td +220.116 652.254 Td +/F134_0 9.9626 Tf +(-O2) 17.9327 Tj +[1 0 0 1 238.049 652.254] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.9438 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -240.993 -652.254] cm +[1 0 0 1 0 0] Tm +0 0 Td +240.993 652.254 Td +/F134_0 9.9626 Tf +(-fomit-frame-pointer) 119.551 Tj +[1 0 0 1 360.544 652.254] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.9438 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -363.488 -652.254] cm +[1 0 0 1 0 0] Tm +0 0 Td +363.488 652.254 Td +/F134_0 9.9626 Tf +(-fno-strength-reduce) 119.551 Tj +[1 0 0 1 483.04 652.254] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -483.04 -652.254] cm +[1 0 0 1 0 0] Tm +0 0 Td +483.04 652.254 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-893 TJm +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-295 TJm +(should) 26.5703 Tj +86.944 640.299 Td +(speci\002cally) 45.3796 Tj +[1 0 0 1 134.814 640.299] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -134.814 -640.299] cm +[1 0 0 1 0 0] Tm +0 0 Td +134.814 640.299 Td +/F637_0 9.9626 Tf +(not) 12.7322 Tj +[1 0 0 1 147.546 640.299] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -147.546 -640.299] cm +[1 0 0 1 0 0] Tm +0 0 Td +150.036 640.299 Td +/F130_0 9.9626 Tf +(use) 13.2801 Tj +[1 0 0 1 165.807 640.299] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -165.807 -640.299] cm +[1 0 0 1 0 0] Tm +0 0 Td +165.807 640.299 Td +/F134_0 9.9626 Tf +(-funroll-loops) 83.6858 Tj +[1 0 0 1 249.493 640.299] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -249.493 -640.299] cm +[1 0 0 1 0 0] Tm +0 0 Td +249.493 640.299 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +[1 0 0 1 72 638.142] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -628.179] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 618.381 Td +/F130_0 9.9626 Tf +(Y) 7.193 Tj +110 TJm +(ou) 9.9626 Tj +-249 TJm +(may) 17.1556 Tj +-249 TJm +(notice) 24.3486 Tj +-248 TJm +(that) 14.9439 Tj +-249 TJm +(the) 12.1743 Tj +-249 TJm +(Mak) 18.2614 Tj +10 TJm +(e\002le) 17.1556 Tj +-249 TJm +(runs) 17.1556 Tj +-248 TJm +(six) 11.6264 Tj +-249 TJm +(tests) 17.7135 Tj +-249 TJm +(as) 8.29885 Tj +-249 TJm +(part) 15.4918 Tj +-249 TJm +(of) 8.29885 Tj +-248 TJm +(the) 12.1743 Tj +-249 TJm +(b) 4.9813 Tj +20 TJm +(uild) 15.5018 Tj +-249 TJm +(process.) 32.3685 Tj +-619 TJm +(If) 6.63509 Tj +-249 TJm +(the) 12.1743 Tj +-249 TJm +(program) 33.7533 Tj +-248 TJm +(passes) 25.4544 Tj +-249 TJm +(all) 9.9626 Tj +-249 TJm +(of) 8.29885 Tj +-249 TJm +(these,) 22.9638 Tj +-249 TJm +(it') 8.85675 Tj +55 TJm +(s) 3.87545 Tj +86.944 606.426 Td +(a) 4.42339 Tj +-250 TJm +(pretty) 23.2427 Tj +-250 TJm +(good) 19.9252 Tj +-250 TJm +(\(b) 8.29885 Tj +20 TJm +(ut) 7.7509 Tj +-250 TJm +(not) 12.7322 Tj +-250 TJm +(100%\)) 26.5603 Tj +-250 TJm +(indication) 39.8504 Tj +-250 TJm +(that) 14.9439 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(compiler) 35.417 Tj +-250 TJm +(has) 13.2801 Tj +-250 TJm +(done) 19.3673 Tj +-250 TJm +(its) 9.41466 Tj +-250 TJm +(job) 12.7322 Tj +-250 TJm +(correctly) 35.4071 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 604.269] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -19.761] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -584.508] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 584.508 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 584.508] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -584.508] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 584.508 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +[1 0 0 1 95.9558 584.508] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -95.9558 -584.508] cm +[1 0 0 1 0 0] Tm +0 0 Td +95.9558 584.508 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 125.844 584.508] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -125.844 -584.508] cm +[1 0 0 1 0 0] Tm +0 0 Td +128.22 584.508 Td +/F130_0 9.9626 Tf +(crashes) 29.3199 Tj +-239 TJm +(randomly) 38.1866 Tj +65 TJm +(,) 2.49065 Tj +-240 TJm +(and) 14.386 Tj +-239 TJm +(the) 12.1743 Tj +-239 TJm +(crashe) 25.4445 Tj +1 TJm +(s) 3.87545 Tj +-239 TJm +(are) 12.1643 Tj +-239 TJm +(not) 12.7322 Tj +-238 TJm +(repeatable,) 43.427 Tj +-241 TJm +(you) 14.9439 Tj +-239 TJm +(may) 17.1556 Tj +-238 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-239 TJm +(a) 4.42339 Tj +-238 TJm +(\003ak) 14.9439 Tj +15 TJm +(y) 4.9813 Tj +-239 TJm +(memory) 33.2053 Tj +-238 TJm +(subsystem.) 44.0048 Tj +[1 0 0 1 510.112 584.508] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -510.112 -584.508] cm +[1 0 0 1 0 0] Tm +0 0 Td +510.112 584.508 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 540 584.508] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -584.508] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 572.553 Td +/F130_0 9.9626 Tf +(really) 22.6848 Tj +-254 TJm +(hammers) 36.5229 Tj +-253 TJm +(your) 18.2614 Tj +-254 TJm +(memory) 33.2053 Tj +-253 TJm +(hierarch) 32.6375 Tj +5 TJm +(y) 4.9813 Tj +65 TJm +(,) 2.49065 Tj +-255 TJm +(and) 14.386 Tj +-253 TJm +(if) 6.08715 Tj +-254 TJm +(it') 8.85675 Tj +55 TJm +(s) 3.87545 Tj +-254 TJm +(a) 4.42339 Tj +-253 TJm +(bit) 10.5205 Tj +-254 TJm +(mar) 15.4918 Tj +18 TJm +(ginal,) 22.4159 Tj +-254 TJm +(you) 14.9439 Tj +-254 TJm +(may) 17.1556 Tj +-253 TJm +(get) 12.1743 Tj +-254 TJm +(these) 20.4731 Tj +-253 TJm +(problems.) 39.5714 Tj +-642 TJm +(Ditto) 20.4831 Tj +-254 TJm +(if) 6.08715 Tj +-253 TJm +(your) 18.2614 Tj +-254 TJm +(disk) 16.6077 Tj +86.944 560.598 Td +(or) 8.29885 Tj +-250 TJm +(I/O) 13.2801 Tj +-250 TJm +(subsystem) 41.5142 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(slo) 11.6264 Tj +25 TJm +(wly) 14.9439 Tj +-250 TJm +(f) 3.31755 Tj +10 TJm +(ailing.) 25.1855 Tj +-620 TJm +(Y) 7.193 Tj +111 TJm +(up,) 12.4533 Tj +-250 TJm +(this) 14.396 Tj +-250 TJm +(really) 22.6848 Tj +-250 TJm +(does) 18.2614 Tj +-250 TJm +(happen.) 31.2626 Tj +[1 0 0 1 345.143 560.598] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -273.143 -12.1195] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -548.478] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 538.68 Td +/F130_0 9.9626 Tf +(T) 6.08715 Tj +35 TJm +(ry) 8.29885 Tj +-250 TJm +(using) 21.589 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(dif) 11.0684 Tj +25 TJm +(ferent) 23.2328 Tj +-250 TJm +(machine) 33.7533 Tj +-250 TJm +(of) 8.29885 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(same) 20.4731 Tj +-250 TJm +(type,) 19.6462 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(see) 12.7222 Tj +-250 TJm +(if) 6.08715 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(can) 13.8281 Tj +-250 TJm +(repeat) 24.3386 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(problem.) 35.696 Tj +[1 0 0 1 72 536.523] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -19.761] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.9739 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -78.9739 -516.762] cm +[1 0 0 1 0 0] Tm +0 0 Td +78.9739 516.762 Td +/F130_0 9.9626 Tf +(\225) 3.48691 Tj +[1 0 0 1 82.4608 516.762] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 1.9925 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -86.944 -516.762] cm +[1 0 0 1 0 0] Tm +0 0 Td +86.944 516.762 Td +/F130_0 9.9626 Tf +(This) 17.7135 Tj +-229 TJm +(isn') 14.9439 Tj +18 TJm +(t) 2.7696 Tj +-230 TJm +(really) 22.6848 Tj +-229 TJm +(a) 4.42339 Tj +-229 TJm +(b) 4.9813 Tj +20 TJm +(ug,) 12.4533 Tj +-234 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-229 TJm +(...) 7.47195 Tj +-303 TJm +(If) 6.63509 Tj +[1 0 0 1 212.232 516.762] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -212.232 -516.762] cm +[1 0 0 1 0 0] Tm +0 0 Td +212.232 516.762 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 242.12 516.762] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -242.12 -516.762] cm +[1 0 0 1 0 0] Tm +0 0 Td +244.405 516.762 Td +/F130_0 9.9626 Tf +(tells) 16.6077 Tj +-229 TJm +(you) 14.9439 Tj +-230 TJm +(your) 18.2614 Tj +-229 TJm +(\002le) 12.7322 Tj +-229 TJm +(is) 6.64505 Tj +-230 TJm +(corrupted) 38.1767 Tj +-229 TJm +(on) 9.9626 Tj +-230 TJm +(decompression,) 62.2563 Tj +-233 TJm +(and) 14.386 Tj +-229 TJm +(you) 14.9439 Tj +-230 TJm +(obtained) 34.3112 Tj +-229 TJm +(the) 12.1743 Tj +-229 TJm +(\002le) 12.7322 Tj +86.944 504.807 Td +(via) 12.1743 Tj +-262 TJm +(FTP) 17.1656 Tj +111 TJm +(,) 2.49065 Tj +-263 TJm +(there) 19.9152 Tj +-262 TJm +(is) 6.64505 Tj +-262 TJm +(a) 4.42339 Tj +-262 TJm +(possibility) 41.5241 Tj +-263 TJm +(that) 14.9439 Tj +-262 TJm +(you) 14.9439 Tj +-262 TJm +(for) 11.6164 Tj +18 TJm +(got) 12.7322 Tj +-263 TJm +(to) 7.7509 Tj +-262 TJm +(tell) 12.7322 Tj +-262 TJm +(FTP) 17.1656 Tj +-263 TJm +(to) 7.7509 Tj +-262 TJm +(do) 9.9626 Tj +-262 TJm +(a) 4.42339 Tj +-262 TJm +(binary) 25.4544 Tj +-263 TJm +(mode) 22.1369 Tj +-262 TJm +(transfer) 30.4258 Tj +55 TJm +(.) 2.49065 Tj +-694 TJm +(That) 18.2614 Tj +-262 TJm +(absolutely) 40.9562 Tj +-262 TJm +(will) 15.5018 Tj +-263 TJm +(cause) 22.1269 Tj +86.944 492.852 Td +(the) 12.1743 Tj +-250 TJm +(\002le) 12.7322 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(be) 9.40469 Tj +-250 TJm +(non-decompressible.) 82.7294 Tj +-620 TJm +(Y) 7.193 Tj +110 TJm +(ou') 13.2801 Tj +10 TJm +(ll) 5.53921 Tj +-250 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(transfer) 30.4258 Tj +-250 TJm +(it) 5.53921 Tj +-250 TJm +(ag) 9.40469 Tj +5 TJm +(ain.) 14.6649 Tj +[1 0 0 1 351.34 492.852] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -279.34 -12.1195] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -480.732] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 470.934 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +-235 TJm +(you') 18.2614 Tj +50 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-236 TJm +(incor) 20.4731 Tj +1 TJm +(p) 4.9813 Tj +-1 TJm +(or) 8.29885 Tj +1 TJm +(ated) 16.5977 Tj +[1 0 0 1 163.036 470.934] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -163.036 -470.934] cm +[1 0 0 1 0 0] Tm +0 0 Td +163.036 470.934 Td +/F134_0 9.9626 Tf +(libbzip2) 47.8205 Tj +[1 0 0 1 210.856 470.934] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -210.856 -470.934] cm +[1 0 0 1 0 0] Tm +0 0 Td +213.2 470.934 Td +/F130_0 9.9626 Tf +(into) 15.5018 Tj +-235 TJm +(your) 18.2614 Tj +-235 TJm +(o) 4.9813 Tj +25 TJm +(wn) 12.1743 Tj +-236 TJm +(program) 33.7533 Tj +-235 TJm +(and) 14.386 Tj +-235 TJm +(are) 12.1643 Tj +-236 TJm +(get) 12.1743 Tj +1 TJm +(ting) 15.5018 Tj +-236 TJm +(problems,) 39.5714 Tj +-238 TJm +(please,) 27.3872 Tj +-238 TJm +(please,) 27.3872 Tj +-238 TJm +(please,) 27.3872 Tj +-238 TJm +(check) 23.2328 Tj +-236 TJm +(that) 14.9439 Tj +72 458.979 Td +(the) 12.1743 Tj +-242 TJm +(parameters) 43.7059 Tj +-243 TJm +(you) 14.9439 Tj +-242 TJm +(are) 12.1643 Tj +-242 TJm +(passing) 29.8878 Tj +-243 TJm +(in) 7.7509 Tj +-242 TJm +(calls) 18.2614 Tj +-242 TJm +(to) 7.7509 Tj +-243 TJm +(the) 12.1743 Tj +-242 TJm +(library) 26.5603 Tj +65 TJm +(,) 2.49065 Tj +-244 TJm +(are) 12.1643 Tj +-242 TJm +(correct,) 30.1468 Tj +-244 TJm +(and) 14.386 Tj +-243 TJm +(in) 7.7509 Tj +-242 TJm +(accordance) 44.8018 Tj +-242 TJm +(with) 17.7135 Tj +-243 TJm +(what) 19.3673 Tj +-242 TJm +(the) 12.1743 Tj +-242 TJm +(documentation) 59.2177 Tj +-243 TJm +(says) 17.1556 Tj +72 447.024 Td +(is) 6.64505 Tj +-250 TJm +(allo) 14.9439 Tj +25 TJm +(w) 7.193 Tj +10 TJm +(able.) 19.0883 Tj +-310 TJm +(I) 3.31755 Tj +-250 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-250 TJm +(tried) 18.2614 Tj +-250 TJm +(to) 7.7509 Tj +-250 TJm +(mak) 17.1556 Tj +10 TJm +(e) 4.42339 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(library) 26.5603 Tj +-250 TJm +(rob) 13.2801 Tj +20 TJm +(ust) 11.6264 Tj +-250 TJm +(ag) 9.40469 Tj +5 TJm +(ainst) 18.8194 Tj +-250 TJm +(such) 18.2614 Tj +-250 TJm +(problems,) 39.5714 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-250 TJm +(I'm) 14.386 Tj +-250 TJm +(sure) 16.5977 Tj +-250 TJm +(I) 3.31755 Tj +-250 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(en') 12.7222 Tj +18 TJm +(t) 2.7696 Tj +-250 TJm +(succeeded.) 43.427 Tj +[1 0 0 1 72 444.867] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -434.904] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 425.106 Td +/F130_0 9.9626 Tf +(Finally) 28.234 Tj +65 TJm +(,) 2.49065 Tj +-324 TJm +(if) 6.08715 Tj +-310 TJm +(the) 12.1743 Tj +-309 TJm +(abo) 14.386 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-309 TJm +(comments) 40.9562 Tj +-310 TJm +(don') 18.2614 Tj +18 TJm +(t) 2.7696 Tj +-309 TJm +(help,) 19.6462 Tj +-324 TJm +(you') 18.2614 Tj +10 TJm +(ll) 5.53921 Tj +-310 TJm +(ha) 9.40469 Tj +20 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-309 TJm +(to) 7.7509 Tj +-309 TJm +(send) 18.2614 Tj +-310 TJm +(me) 12.1743 Tj +-309 TJm +(a) 4.42339 Tj +-309 TJm +(b) 4.9813 Tj +20 TJm +(ug) 9.9626 Tj +-310 TJm +(report.) 26.2813 Tj +-976 TJm +(No) 12.1743 Tj +25 TJm +(w) 7.193 Tj +65 TJm +(,) 2.49065 Tj +-324 TJm +(it') 8.85675 Tj +55 TJm +(s) 3.87545 Tj +-310 TJm +(just) 14.396 Tj +-309 TJm +(amazing) 33.7533 Tj +-309 TJm +(ho) 9.9626 Tj +25 TJm +(w) 7.193 Tj +-310 TJm +(man) 17.1556 Tj +15 TJm +(y) 4.9813 Tj +72 413.151 Td +(people) 26.5603 Tj +-250 TJm +(will) 15.5018 Tj +-250 TJm +(send) 18.2614 Tj +-250 TJm +(me) 12.1743 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(b) 4.9813 Tj +20 TJm +(ug) 9.9626 Tj +-250 TJm +(report) 23.7907 Tj +-250 TJm +(saying) 26.0123 Tj +-250 TJm +(something) 41.5142 Tj +-250 TJm +(lik) 10.5205 Tj +10 TJm +(e:) 7.193 Tj +[1 0 0 1 72 410.994] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -24.9066] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 23.9103 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 20.3237] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -401.629] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 401.629 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +-426 TJm +(crashed) 41.8429 Tj +-426 TJm +(with) 23.9102 Tj +-426 TJm +(segmentation) 71.7307 Tj +-426 TJm +(fault) 29.8878 Tj +-426 TJm +(on) 11.9551 Tj +-426 TJm +(my) 11.9551 Tj +-426 TJm +(machine) 41.8429 Tj +[1 0 0 1 72 386.087] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -376.125] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 364.169 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +-241 TJm +(absolutely) 40.9562 Tj +-241 TJm +(nothing) 30.4457 Tj +-241 TJm +(el) 7.193 Tj +1 TJm +(se.) 10.7895 Tj +-614 TJm +(Needless) 35.965 Tj +-241 TJm +(to) 7.7509 Tj +-241 TJm +(say) 13.2801 Tj +65 TJm +(,) 2.49065 Tj +-243 TJm +(a) 4.42339 Tj +-241 TJm +(such) 18.2614 Tj +-240 TJm +(a) 4.42339 Tj +-241 TJm +(report) 23.7907 Tj +-241 TJm +(is) 6.64505 Tj +[1 0 0 1 324.681 364.169] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -324.681 -364.169] cm +[1 0 0 1 0 0] Tm +0 0 Td +324.681 364.169 Td +/F637_0 9.9626 Tf +(totally) 25.4644 Tj +55 TJm +(,) 2.49065 Tj +-243 TJm +(utterly) 26.0123 Tj +55 TJm +(,) 2.49065 Tj +-242 TJm +(completely) 43.158 Tj +-241 TJm +(and) 14.9439 Tj +-241 TJm +(compr) 25.4544 Tj +37 TJm +(ehensively) 41.4942 Tj +-241 TJm +(100%) 23.2427 Tj +72 352.214 Td +(useless;) 31.5416 Tj +-257 TJm +(a) 4.9813 Tj +-255 TJm +(waste) 22.6948 Tj +-255 TJm +(of) 7.7509 Tj +-255 TJm +(your) 18.2614 Tj +-255 TJm +(time) 17.1556 Tj +10 TJm +(,) 2.49065 Tj +-256 TJm +(my) 11.6164 Tj +-255 TJm +(time) 17.1556 Tj +10 TJm +(,) 2.49065 Tj +-256 TJm +(and) 14.9439 Tj +-255 TJm +(net) 12.1743 Tj +-255 TJm +(bandwidth) 42.0721 Tj +[1 0 0 1 302.574 352.214] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -302.574 -352.214] cm +[1 0 0 1 0 0] Tm +0 0 Td +302.574 352.214 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-650 TJm +(W) 9.40469 Tj +40 TJm +(ith) 10.5205 Tj +-254 TJm +(no) 9.9626 Tj +-255 TJm +(details) 26.0123 Tj +-255 TJm +(at) 7.193 Tj +-255 TJm +(all,) 12.4533 Tj +-256 TJm +(there') 23.2328 Tj +55 TJm +(s) 3.87545 Tj +-255 TJm +(no) 9.9626 Tj +-255 TJm +(w) 7.193 Tj +10 TJm +(ay) 9.40469 Tj +-255 TJm +(I) 3.31755 Tj +-255 TJm +(can) 13.8281 Tj +-255 TJm +(possibly) 33.2153 Tj +-255 TJm +(be) 9.40469 Tj +15 TJm +(gin) 12.7322 Tj +72 340.259 Td +(to) 7.7509 Tj +-250 TJm +(\002gure) 23.2427 Tj +-250 TJm +(out) 12.7322 Tj +-250 TJm +(what) 19.3673 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(problem) 33.2053 Tj +-250 TJm +(is.) 9.1357 Tj +[1 0 0 1 72 338.102] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -328.14] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 318.341 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-309 TJm +(rules) 19.3673 Tj +-309 TJm +(of) 8.29885 Tj +-309 TJm +(the) 12.1743 Tj +-310 TJm +(g) 4.9813 Tj +5 TJm +(ame) 16.5977 Tj +-309 TJm +(are:) 14.9339 Tj +-428 TJm +(f) 3.31755 Tj +10 TJm +(acts,) 17.9825 Tj +-324 TJm +(f) 3.31755 Tj +10 TJm +(acts,) 17.9825 Tj +-324 TJm +(f) 3.31755 Tj +10 TJm +(acts.) 17.9825 Tj +-975 TJm +(Don') 20.4731 Tj +18 TJm +(t) 2.7696 Tj +-309 TJm +(omit) 18.2714 Tj +-309 TJm +(them) 19.9252 Tj +-309 TJm +(because) 31.5316 Tj +-309 TJm +("oh,) 16.518 Tj +-324 TJm +(the) 12.1743 Tj +15 TJm +(y) 4.9813 Tj +-309 TJm +(w) 7.193 Tj +10 TJm +(on') 13.2801 Tj +18 TJm +(t) 2.7696 Tj +-309 TJm +(be) 9.40469 Tj +-310 TJm +(rele) 14.9339 Tj +25 TJm +(v) 4.9813 Tj +25 TJm +(ant".) 18.7297 Tj +-974 TJm +(At) 9.9626 Tj +-310 TJm +(the) 12.1743 Tj +-309 TJm +(bare) 17.1456 Tj +72 306.386 Td +(minimum:) 41.5241 Tj +[1 0 0 1 72 306.287] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -60.7721] cm +/DeviceRGB {} cs +[0.94899 0.94899 0.976456] sc +/DeviceRGB {} CS +[0.94899 0.94899 0.976456] SC +0 0 468 59.7758 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 56.1892] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -296.922] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 296.922 Td +/F134_0 9.9626 Tf +(Machine) 41.8429 Tj +-426 TJm +(type.) 29.8878 Tj +-852 TJm +(Operating) 53.798 Tj +-426 TJm +(system) 35.8654 Tj +-426 TJm +(version.) 47.8205 Tj +90 284.967 Td +(Exact) 29.8878 Tj +-426 TJm +(version) 41.8429 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(bzip2) 29.8878 Tj +-426 TJm +(\(do) 17.9327 Tj +-426 TJm +(bzip2) 29.8878 Tj +-426 TJm +(-V\).) 23.9102 Tj +90 273.011 Td +(Exact) 29.8878 Tj +-426 TJm +(version) 41.8429 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compiler) 47.8205 Tj +-426 TJm +(used.) 29.8878 Tj +90 261.056 Td +(Flags) 29.8878 Tj +-426 TJm +(passed) 35.8654 Tj +-426 TJm +(to) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(compiler.) 53.798 Tj +[1 0 0 1 72 245.514] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -235.552] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 223.597 Td +/F130_0 9.9626 Tf +(Ho) 12.1743 Tj +25 TJm +(we) 11.6164 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(er) 7.74094 Tj +40 TJm +(,) 2.49065 Tj +-254 TJm +(the) 12.1743 Tj +-252 TJm +(most) 19.3773 Tj +-253 TJm +(important) 38.7446 Tj +-253 TJm +(single) 23.8007 Tj +-253 TJm +(thing) 20.4831 Tj +-253 TJm +(t) 2.7696 Tj +1 TJm +(hat) 12.1743 Tj +-253 TJm +(will) 15.5018 Tj +-253 TJm +(help) 17.1556 Tj +-253 TJm +(me) 12.1743 Tj +-253 TJm +(is) 6.64505 Tj +-252 TJm +(the) 12.1743 Tj +-253 TJm +(\002le) 12.7322 Tj +-253 TJm +(that) 14.9439 Tj +-253 TJm +(you) 14.9439 Tj +-253 TJm +(were) 19.3573 Tj +-253 TJm +(trying) 23.8007 Tj +-252 TJm +(to) 7.7509 Tj +-253 TJm +(compress) 37.6287 Tj +-253 TJm +(or) 8.29885 Tj +-253 TJm +(decompress) 47.0334 Tj +72 211.641 Td +(at) 7.193 Tj +-304 TJm +(the) 12.1743 Tj +-305 TJm +(time) 17.7135 Tj +-304 TJm +(the) 12.1743 Tj +-304 TJm +(problem) 33.2053 Tj +-305 TJm +(happened.) 40.6673 Tj +-946 TJm +(W) 9.40469 Tj +40 TJm +(ithout) 23.2527 Tj +-304 TJm +(that,) 17.4346 Tj +-318 TJm +(my) 12.7322 Tj +-305 TJm +(ability) 25.4644 Tj +-304 TJm +(to) 7.7509 Tj +-304 TJm +(do) 9.9626 Tj +-305 TJm +(an) 9.40469 Tj +15 TJm +(ything) 25.4644 Tj +-304 TJm +(more) 20.4731 Tj +-304 TJm +(than) 17.1556 Tj +-305 TJm +(speculate) 37.0708 Tj +-304 TJm +(about) 22.1369 Tj +-304 TJm +(the) 12.1743 Tj +-305 TJm +(cause,) 24.6176 Tj +-318 TJm +(is) 6.64505 Tj +72 199.686 Td +(limited.) 30.7247 Tj +[1 0 0 1 72 199.587] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -189.624] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 164.933 Td +/F122_0 20.6585 Tf +(4.4.) 34.4584 Tj +-278 TJm +(Did) 33.2808 Tj +-278 TJm +(y) 11.4861 Tj +25 TJm +(ou) 25.2447 Tj +-278 TJm +(g) 12.6223 Tj +-10 TJm +(et) 18.3654 Tj +-278 TJm +(the) 30.9877 Tj +-278 TJm +(right) 45.9032 Tj +-278 TJm +(pac) 35.5946 Tj +20 TJm +(ka) 22.9723 Tj +10 TJm +(g) 12.6223 Tj +-10 TJm +(e?) 24.1085 Tj +[1 0 0 1 72 160.337] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -150.374] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 143.016 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 101.888 143.016] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -101.888 -143.016] cm +[1 0 0 1 0 0] Tm +0 0 Td +104.603 143.016 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-272 TJm +(a) 4.42339 Tj +-273 TJm +(resource) 33.7433 Tj +-272 TJm +(hog.) 17.4346 Tj +-378 TJm +(It) 6.08715 Tj +-272 TJm +(soaks) 22.1369 Tj +-273 TJm +(up) 9.9626 Tj +-272 TJm +(lar) 10.5105 Tj +18 TJm +(ge) 9.40469 Tj +-273 TJm +(amounts) 33.7633 Tj +-272 TJm +(of) 8.29885 Tj +-273 TJm +(CPU) 19.3773 Tj +-272 TJm +(c) 4.42339 Tj +15 TJm +(ycles) 20.4731 Tj +-273 TJm +(and) 14.386 Tj +-272 TJm +(memory) 33.2053 Tj +65 TJm +(.) 2.49065 Tj +-755 TJm +(Also,) 21.31 Tj +-278 TJm +(it) 5.53921 Tj +-273 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(es) 8.29885 Tj +-272 TJm +(v) 4.9813 Tj +15 TJm +(ery) 12.7222 Tj +-273 TJm +(lar) 10.5105 Tj +18 TJm +(ge) 9.40469 Tj +-272 TJm +(latencies.) 37.3498 Tj +72 131.06 Td +(In) 8.29885 Tj +-251 TJm +(the) 12.1743 Tj +-251 TJm +(w) 7.193 Tj +10 TJm +(orst) 14.9439 Tj +-251 TJm +(case,) 19.6363 Tj +-251 TJm +(you) 14.9439 Tj +-251 TJm +(can) 13.8281 Tj +-251 TJm +(feed) 17.1456 Tj +-251 TJm +(man) 17.1556 Tj +15 TJm +(y) 4.9813 Tj +-251 TJm +(me) 12.1743 Tj +15 TJm +(g) 4.9813 Tj +4 TJm +(abyt) 17.1556 Tj +1 TJm +(es) 8.29885 Tj +-252 TJm +(of) 8.29885 Tj +-251 TJm +(uncompressed) 56.996 Tj +-251 TJm +(data) 16.5977 Tj +-251 TJm +(into) 15.5018 Tj +-251 TJm +(the) 12.1743 Tj +-251 TJm +(library) 26.5603 Tj +-251 TJm +(before) 25.4445 Tj +-251 TJm +(getting) 27.6761 Tj +-251 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-251 TJm +(compressed) 47.0334 Tj +72 119.105 Td +(output,) 27.9551 Tj +-250 TJm +(so) 8.85675 Tj +-250 TJm +(this) 14.396 Tj +-250 TJm +(probably) 35.417 Tj +-250 TJm +(rules) 19.3673 Tj +-250 TJm +(out) 12.7322 Tj +-250 TJm +(applications) 48.1492 Tj +-250 TJm +(requiring) 36.5229 Tj +-250 TJm +(interacti) 32.6474 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(e) 4.42339 Tj +-250 TJm +(beha) 18.8094 Tj +20 TJm +(viour) 21.031 Tj +55 TJm +(.) 2.49065 Tj +[1 0 0 1 72 116.949] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -106.986] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 97.1875 Td +/F130_0 9.9626 Tf +(These) 23.7907 Tj +-304 TJm +(aren') 20.4632 Tj +18 TJm +(t) 2.7696 Tj +-304 TJm +(f) 3.31755 Tj +10 TJm +(aults) 18.8194 Tj +-304 TJm +(of) 8.29885 Tj +-304 TJm +(my) 12.7322 Tj +-304 TJm +(implementation,) 65.0359 Tj +-317 TJm +(I) 3.31755 Tj +-304 TJm +(hope,) 21.8579 Tj +-318 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-304 TJm +(more) 20.4731 Tj +-304 TJm +(an) 9.40469 Tj +-304 TJm +(intrinsic) 32.6574 Tj +-304 TJm +(property) 33.7533 Tj +-304 TJm +(of) 8.29885 Tj +-304 TJm +(the) 12.1743 Tj +-304 TJm +(Burro) 23.2427 Tj +25 TJm +(ws-Wheeler) 48.1293 Tj +-304 TJm +(transform) 38.7346 Tj +72 85.2323 Td +(\(unfortunately\).) 62.8042 Tj +-620 TJm +(Maybe) 27.6661 Tj +-250 TJm +(this) 14.396 Tj +-250 TJm +(isn') 14.9439 Tj +18 TJm +(t) 2.7696 Tj +-250 TJm +(what) 19.3673 Tj +-250 TJm +(you) 14.9439 Tj +-250 TJm +(w) 7.193 Tj +10 TJm +(ant.) 14.6649 Tj +[1 0 0 1 72 83.0755] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -22.2611] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7545] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(33) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 37 37 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 116.328 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -382.4 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +498.728 749.245 Td +/F130_0 9.9626 Tf +(Miscellanea) 48.1393 Tj +[1 0 0 1 266.071 749.146] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -7.0936] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -540 -741.554] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F130_0 9.9626 Tf +(If) 6.63509 Tj +-275 TJm +(you) 14.9439 Tj +-274 TJm +(w) 7.193 Tj +10 TJm +(ant) 12.1743 Tj +-275 TJm +(a) 4.42339 Tj +-274 TJm +(compressor) 45.9276 Tj +-275 TJm +(and/or) 25.4544 Tj +-275 TJm +(library) 26.5603 Tj +-274 TJm +(which) 24.3486 Tj +-275 TJm +(is) 6.64505 Tj +-274 TJm +(f) 3.31755 Tj +10 TJm +(aster) 18.8094 Tj +40 TJm +(,) 2.49065 Tj +-281 TJm +(uses) 17.1556 Tj +-275 TJm +(less) 14.9439 Tj +-274 TJm +(memory) 33.2053 Tj +-275 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-275 TJm +(gets) 16.0497 Tj +-274 TJm +(pretty) 23.2427 Tj +-275 TJm +(good) 19.9252 Tj +-274 TJm +(compression,) 52.8516 Tj +-281 TJm +(and) 14.386 Tj +-275 TJm +(has) 13.2801 Tj +72 698.082 Td +(minimal) 33.2153 Tj +-288 TJm +(latenc) 23.7907 Tj +15 TJm +(y) 4.9813 Tj +65 TJm +(,) 2.49065 Tj +-297 TJm +(consider) 33.7533 Tj +-288 TJm +(Jean-loup) 38.7346 Tj +-288 TJm +(Gailly') 28.224 Tj +55 TJm +(s) 3.87545 Tj +-288 TJm +(and) 14.386 Tj +-288 TJm +(Mark) 21.579 Tj +-288 TJm +(Adl) 14.9439 Tj +1 TJm +(er') 11.0585 Tj +55 TJm +(s) 3.87545 Tj +-288 TJm +(w) 7.193 Tj +10 TJm +(ork,) 15.7708 Tj +[1 0 0 1 353.879 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -353.879 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +353.879 698.082 Td +/F134_0 9.9626 Tf +(zlib-1.2.1) 59.7756 Tj +[1 0 0 1 413.655 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -413.655 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +416.523 698.082 Td +/F130_0 9.9626 Tf +(and) 14.386 Tj +[1 0 0 1 433.777 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -433.777 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +433.777 698.082 Td +/F134_0 9.9626 Tf +(gzip-1.2.4) 59.7756 Tj +[1 0 0 1 493.553 698.082] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.553 -698.082] cm +[1 0 0 1 0 0] Tm +0 0 Td +493.553 698.082 Td +/F130_0 9.9626 Tf +(.) 2.49065 Tj +-847 TJm +(Look) 21.031 Tj +-288 TJm +(for) 11.6164 Tj +72 686.127 Td +(them) 19.9252 Tj +-250 TJm +(at) 7.193 Tj +-250 TJm +(http://www) 45.3896 Tj +65 TJm +(.zlib) 17.4346 Tj +40 TJm +(.or) 10.7895 Tj +18 TJm +(g) 4.9813 Tj +-250 TJm +(and) 14.386 Tj +-250 TJm +(http://www) 45.3896 Tj +65 TJm +(.gzip.or) 30.4357 Tj +18 TJm +(g) 4.9813 Tj +-250 TJm +(respecti) 30.9837 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(ely) 12.1743 Tj +65 TJm +(.) 2.49065 Tj +[1 0 0 1 72 683.97] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -674.008] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 664.209 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(or) 8.29885 Tj +-582 TJm +(something) 41.5142 Tj +-583 TJm +(f) 3.31755 Tj +10 TJm +(aster) 18.8094 Tj +-582 TJm +(and) 14.386 Tj +-582 TJm +(lighter) 26.0123 Tj +-583 TJm +(still,) 17.4445 Tj +-665 TJm +(you) 14.9439 Tj +-582 TJm +(might) 23.2527 Tj +-583 TJm +(try) 11.0684 Tj +-582 TJm +(Markus) 30.4357 Tj +-582 TJm +(F) 5.53921 Tj +-582 TJm +(X) 7.193 Tj +-582 TJm +(J) 3.87545 Tj +-582 TJm +(Oberhumer') 48.6872 Tj +55 TJm +(s) 3.87545 Tj +[1 0 0 1 437.433 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -437.433 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +437.433 664.209 Td +/F134_0 9.9626 Tf +(LZO) 17.9327 Tj +[1 0 0 1 455.365 664.209] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -455.365 -664.209] cm +[1 0 0 1 0 0] Tm +0 0 Td +461.163 664.209 Td +/F130_0 9.9626 Tf +(real-time) 35.965 Tj +-582 TJm +(compres-) 37.0708 Tj +72 652.254 Td +(sion/decompression) 79.1429 Tj +-250 TJm +(library) 26.5603 Tj +65 TJm +(,) 2.49065 Tj +-250 TJm +(at) 7.193 Tj +-250 TJm +(http://www) 45.3896 Tj +65 TJm +(.oberhumer) 45.6486 Tj +55 TJm +(.com/opensource.) 70.2762 Tj +[1 0 0 1 72 650.097] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -640.135] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 617.501 Td +/F122_0 20.6585 Tf +(4.5.) 34.4584 Tj +-278 TJm +(Fur) 33.2808 Tj +-20 TJm +(ther) 39.0239 Tj +-278 TJm +(Reading) 81.4978 Tj +[1 0 0 1 72 612.905] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9626] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -602.942] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 595.583 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 101.888 595.583] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -101.888 -595.583] cm +[1 0 0 1 0 0] Tm +0 0 Td +104.923 595.583 Td +/F130_0 9.9626 Tf +(is) 6.64505 Tj +-305 TJm +(not) 12.7322 Tj +-304 TJm +(research) 33.1854 Tj +-305 TJm +(w) 7.193 Tj +10 TJm +(ork,) 15.7708 Tj +-318 TJm +(in) 7.7509 Tj +-305 TJm +(the) 12.1743 Tj +-304 TJm +(sense) 21.579 Tj +-305 TJm +(that) 14.9439 Tj +-304 TJm +(it) 5.53921 Tj +-305 TJm +(doesn') 26.5603 Tj +18 TJm +(t) 2.7696 Tj +-305 TJm +(present) 28.772 Tj +-304 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-305 TJm +(ne) 9.40469 Tj +25 TJm +(w) 7.193 Tj +-304 TJm +(ideas.) 22.9638 Tj +-474 TJm +(Rather) 26.5603 Tj +40 TJm +(,) 2.49065 Tj +-318 TJm +(it') 8.85675 Tj +55 TJm +(s) 3.87545 Tj +-305 TJm +(an) 9.40469 Tj +-305 TJm +(engineeri) 37.0708 Tj +1 TJm +(ng) 9.9626 Tj +-305 TJm +(e) 4.42339 Tj +15 TJm +(x) 4.9813 Tj +15 TJm +(ercise) 23.2328 Tj +72 583.628 Td +(based) 22.6848 Tj +-250 TJm +(on) 9.9626 Tj +-250 TJm +(e) 4.42339 Tj +15 TJm +(xisting) 27.1282 Tj +-250 TJm +(ideas.) 22.9638 Tj +[1 0 0 1 72 581.471] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -9.9627] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -571.509] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 561.71 Td +/F130_0 9.9626 Tf +(F) 5.53921 Tj +15 TJm +(our) 13.2801 Tj +-250 TJm +(documents) 43.1679 Tj +-250 TJm +(describe) 33.1954 Tj +-250 TJm +(essentially) 42.0621 Tj +-250 TJm +(all) 9.9626 Tj +-250 TJm +(the) 12.1743 Tj +-250 TJm +(ideas) 20.4731 Tj +-250 TJm +(behind) 27.1182 Tj +[1 0 0 1 298.747 561.71] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -298.747 -561.71] cm +[1 0 0 1 0 0] Tm +0 0 Td +298.747 561.71 Td +/F134_0 9.9626 Tf +(bzip2) 29.8878 Tj +[1 0 0 1 328.635 561.71] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -328.635 -561.71] cm +[1 0 0 1 0 0] Tm +0 0 Td +328.635 561.71 Td +/F130_0 9.9626 Tf +(:) 2.7696 Tj +[1 0 0 1 72 559.554] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -299.875] cm +/DeviceRGB {} cs +[0.929398 0.968597 0.956848] sc +/DeviceRGB {} CS +[0.929398 0.968597 0.956848] SC +0 0 468 298.879 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 295.293] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -550.189] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 550.189 Td +/F134_0 9.9626 Tf +(Michael) 41.8429 Tj +-426 TJm +(Burrows) 41.8429 Tj +-426 TJm +(and) 17.9327 Tj +-426 TJm +(D.) 11.9551 Tj +-426 TJm +(J.) 11.9551 Tj +-426 TJm +(Wheeler:) 47.8205 Tj +98.4879 538.234 Td +("A) 11.9551 Tj +-426 TJm +(block-sorting) 77.7083 Tj +-426 TJm +(lossless) 47.8205 Tj +-426 TJm +(data) 23.9102 Tj +-426 TJm +(compression) 65.7532 Tj +-426 TJm +(algorithm") 59.7756 Tj +102.732 526.278 Td +(10th) 23.9102 Tj +-426 TJm +(May) 17.9327 Tj +-426 TJm +(1994.) 29.8878 Tj +102.732 514.323 Td +(Digital) 41.8429 Tj +-426 TJm +(SRC) 17.9327 Tj +-426 TJm +(Research) 47.8205 Tj +-426 TJm +(Report) 35.8654 Tj +-426 TJm +(124.) 23.9102 Tj +102.732 502.368 Td +(ftp://ftp.digital.com/pub/DEC/SRC/research-reports/SRC-124.ps.g\ +z) 382.564 Tj +102.732 490.413 Td +(If) 11.9551 Tj +-426 TJm +(you) 17.9327 Tj +-426 TJm +(have) 23.9102 Tj +-426 TJm +(trouble) 41.8429 Tj +-426 TJm +(finding) 41.8429 Tj +-426 TJm +(it,) 17.9327 Tj +-426 TJm +(try) 17.9327 Tj +-426 TJm +(searching) 53.798 Tj +-426 TJm +(at) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +102.732 478.458 Td +(New) 17.9327 Tj +-426 TJm +(Zealand) 41.8429 Tj +-426 TJm +(Digital) 41.8429 Tj +-426 TJm +(Library,) 47.8205 Tj +-426 TJm +(http://www.nzdl.org.) 119.551 Tj +90 454.547 Td +(Daniel) 35.8654 Tj +-426 TJm +(S.) 11.9551 Tj +-426 TJm +(Hirschberg) 59.7756 Tj +-426 TJm +(and) 17.9327 Tj +-426 TJm +(Debra) 29.8878 Tj +-426 TJm +(A.) 11.9551 Tj +-426 TJm +(LeLewer) 41.8429 Tj +98.4879 442.592 Td +("Efficient) 59.7756 Tj +-426 TJm +(Decoding) 47.8205 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(Prefix) 35.8654 Tj +-426 TJm +(Codes") 35.8654 Tj +102.732 430.637 Td +(Communications) 83.6858 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(ACM,) 23.9102 Tj +-426 TJm +(April) 29.8878 Tj +-426 TJm +(1990,) 29.8878 Tj +-426 TJm +(Vol) 17.9327 Tj +-426 TJm +(33,) 17.9327 Tj +-426 TJm +(Number) 35.8654 Tj +-426 TJm +(4.) 11.9551 Tj +102.732 418.682 Td +(You) 17.9327 Tj +-426 TJm +(might) 29.8878 Tj +-426 TJm +(be) 11.9551 Tj +-426 TJm +(able) 23.9102 Tj +-426 TJm +(to) 11.9551 Tj +-426 TJm +(get) 17.9327 Tj +-426 TJm +(an) 11.9551 Tj +-426 TJm +(electronic) 59.7756 Tj +-426 TJm +(copy) 23.9102 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(this) 23.9102 Tj +102.732 406.727 Td +(from) 23.9102 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(ACM) 17.9327 Tj +-426 TJm +(Digital) 41.8429 Tj +-426 TJm +(Library.) 47.8205 Tj +90 382.816 Td +(David) 29.8878 Tj +-426 TJm +(J.) 11.9551 Tj +-426 TJm +(Wheeler) 41.8429 Tj +102.732 370.861 Td +(Program) 41.8429 Tj +-426 TJm +(bred3.c) 41.8429 Tj +-426 TJm +(and) 17.9327 Tj +-426 TJm +(accompanying) 71.7307 Tj +-426 TJm +(document) 47.8205 Tj +-426 TJm +(bred3.ps.) 53.798 Tj +102.732 358.906 Td +(This) 23.9102 Tj +-426 TJm +(contains) 47.8205 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(idea) 23.9102 Tj +-426 TJm +(behind) 35.8654 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(multi-table) 65.7532 Tj +-426 TJm +(Huffman) 41.8429 Tj +-426 TJm +(coding) 35.8654 Tj +-426 TJm +(scheme.) 41.8429 Tj +102.732 346.951 Td +(ftp://ftp.cl.cam.ac.uk/users/djw3/) 203.237 Tj +90 323.041 Td +(Jon) 17.9327 Tj +-426 TJm +(L.) 11.9551 Tj +-426 TJm +(Bentley) 41.8429 Tj +-426 TJm +(and) 17.9327 Tj +-426 TJm +(Robert) 35.8654 Tj +-426 TJm +(Sedgewick) 53.798 Tj +98.4879 311.085 Td +("Fast) 29.8878 Tj +-426 TJm +(Algorithms) 59.7756 Tj +-426 TJm +(for) 17.9327 Tj +-426 TJm +(Sorting) 41.8429 Tj +-426 TJm +(and) 17.9327 Tj +-426 TJm +(Searching) 53.798 Tj +-426 TJm +(Strings") 47.8205 Tj +102.732 299.13 Td +(Available) 53.798 Tj +-426 TJm +(from) 23.9102 Tj +-426 TJm +(Sedgewick's) 65.7532 Tj +-426 TJm +(web) 17.9327 Tj +-426 TJm +(page,) 29.8878 Tj +102.732 287.175 Td +(www.cs.princeton.edu/~rs) 143.461 Tj +[1 0 0 1 72 259.678] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -249.715] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 237.76 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-239 TJm +(follo) 18.8194 Tj +25 TJm +(wing) 19.9252 Tj +-238 TJm +(paper) 22.1269 Tj +-239 TJm +(gi) 7.7509 Tj +25 TJm +(v) 4.9813 Tj +15 TJm +(es) 8.29885 Tj +-239 TJm +(v) 4.9813 Tj +25 TJm +(aluable) 28.772 Tj +-238 TJm +(additional) 39.8504 Tj +-239 TJm +(insights) 31.0036 Tj +-238 TJm +(into) 15.5018 Tj +-239 TJm +(the) 12.1743 Tj +-239 TJm +(algorithm,) 41.2352 Tj +-241 TJm +(b) 4.9813 Tj +20 TJm +(ut) 7.7509 Tj +-238 TJm +(is) 6.64505 Tj +-239 TJm +(not) 12.7322 Tj +-239 TJm +(immedi) 30.4457 Tj +1 TJm +(ately) 19.3673 Tj +-239 TJm +(the) 12.1743 Tj +-239 TJm +(basis) 19.9252 Tj +-238 TJm +(of) 8.29885 Tj +-239 TJm +(an) 9.40469 Tj +15 TJm +(y) 4.9813 Tj +-239 TJm +(code) 18.8094 Tj +72 225.805 Td +(used) 18.2614 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(bzip2.) 24.6275 Tj +[1 0 0 1 72 223.648] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -72.7273] cm +/DeviceRGB {} cs +[0.929398 0.968597 0.956848] sc +/DeviceRGB {} CS +[0.929398 0.968597 0.956848] SC +0 0 468 71.731 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 68.1444] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -214.283] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 214.283 Td +/F134_0 9.9626 Tf +(Peter) 29.8878 Tj +-426 TJm +(Fenwick:) 47.8205 Tj +102.732 202.328 Td +(Block) 29.8878 Tj +-426 TJm +(Sorting) 41.8429 Tj +-426 TJm +(Text) 23.9102 Tj +-426 TJm +(Compression) 65.7532 Tj +102.732 190.373 Td +(Proceedings) 65.7532 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(19th) 23.9102 Tj +-426 TJm +(Australasian) 71.7307 Tj +-426 TJm +(Computer) 47.8205 Tj +-426 TJm +(Science) 41.8429 Tj +-426 TJm +(Conference,) 65.7532 Tj +111.22 178.418 Td +(Melbourne,) 59.7756 Tj +-426 TJm +(Australia.) 59.7756 Tj +-852 TJm +(Jan) 17.9327 Tj +-426 TJm +(31) 11.9551 Tj +-426 TJm +(-) 5.97756 Tj +-426 TJm +(Feb) 17.9327 Tj +-426 TJm +(2,) 11.9551 Tj +-426 TJm +(1996.) 29.8878 Tj +102.732 166.463 Td +(ftp://ftp.cs.auckland.ac.nz/pub/peter-f/ACSC96paper.ps) 322.788 Tj +[1 0 0 1 72 150.921] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -140.958] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 129.003 Td +/F130_0 9.9626 Tf +(K) 7.193 Tj +15 TJm +(unihik) 25.4644 Tj +10 TJm +(o) 4.9813 Tj +-250 TJm +(Sadakane') 41.4942 Tj +55 TJm +(s) 3.87545 Tj +-250 TJm +(sorting) 27.6761 Tj +-250 TJm +(algorithm,) 41.2352 Tj +-250 TJm +(mentioned) 42.0621 Tj +-250 TJm +(abo) 14.386 Tj +15 TJm +(v) 4.9813 Tj +15 TJm +(e,) 6.91404 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +25 TJm +(ailable) 26.5603 Tj +-250 TJm +(from:) 22.1369 Tj +[1 0 0 1 72 126.846] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -36.8618] cm +/DeviceRGB {} cs +[0.929398 0.968597 0.956848] sc +/DeviceRGB {} CS +[0.929398 0.968597 0.956848] SC +0 0 468 35.8655 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 32.2789] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -117.482] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 117.482 Td +/F134_0 9.9626 Tf +(http://naomi.is.s.u-tokyo.ac.jp/~sada/papers/Sada98b.ps.gz) 346.698 Tj +[1 0 0 1 72 89.9846] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -29.1702] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8542] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9514] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9514 Td +/F130_0 9.9626 Tf +(34) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Page: 38 38 +%%BeginPageSetup +%%PageOrientation: Portrait +pdfStartPage +0 0 612 792 re W +%%EndPageSetup +[] 0 d +1 i +0 j +0 J +10 M +1 w +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +false op +false OP +0 0 612 792 re +W +q +[1 0 0 1 72 741.554] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 14.4459] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 187.197 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 -6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 116.328 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -382.4 -749.245] cm +[1 0 0 1 0 0] Tm +0 0 Td +498.728 749.245 Td +/F130_0 9.9626 Tf +(Miscellanea) 48.1393 Tj +[1 0 0 1 266.071 749.146] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 280.796 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -472.974 -7.0936] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -0.4981] cm +q +[] 0 d +0 J +0.4981 w +0 0.2491 m +475.465 0.2491 l +S +Q +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 479.251 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -540 -741.554] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 710.037 Td +/F130_0 9.9626 Tf +(The) 15.4918 Tj +-250 TJm +(Manber) 30.9837 Tj +20 TJm +(-Myers) 28.772 Tj +-250 TJm +(suf) 12.1743 Tj +25 TJm +(\002x) 10.5205 Tj +-250 TJm +(array) 20.4632 Tj +-250 TJm +(construction) 49.2551 Tj +-250 TJm +(algorithm) 38.7446 Tj +-250 TJm +(is) 6.64505 Tj +-250 TJm +(described) 38.1767 Tj +-250 TJm +(in) 7.7509 Tj +-250 TJm +(a) 4.42339 Tj +-250 TJm +(paper) 22.1269 Tj +-250 TJm +(a) 4.42339 Tj +20 TJm +(v) 4.9813 Tj +25 TJm +(ailable) 26.5603 Tj +-250 TJm +(from:) 22.1369 Tj +[1 0 0 1 72 707.88] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -36.8618] cm +/DeviceRGB {} cs +[0.929398 0.968597 0.956848] sc +/DeviceRGB {} CS +[0.929398 0.968597 0.956848] SC +0 0 468 35.8655 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 32.2789] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3685] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -698.516] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 698.516 Td +/F134_0 9.9626 Tf +(http://www.cs.arizona.edu/people/gene/PAPERS/suffix.ps) 322.788 Tj +[1 0 0 1 72 671.019] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -13.5492] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -72 -661.056] cm +[1 0 0 1 0 0] Tm +0 0 Td +72 649.101 Td +/F130_0 9.9626 Tf +(Finally) 28.234 Tj +65 TJm +(,) 2.49065 Tj +-227 TJm +(the) 12.1743 Tj +-221 TJm +(follo) 18.8194 Tj +25 TJm +(wing) 19.9252 Tj +-222 TJm +(papers) 26.0024 Tj +-221 TJm +(document) 39.2925 Tj +-221 TJm +(some) 21.031 Tj +-222 TJm +(in) 7.7509 Tj +40 TJm +(v) 4.9813 Tj +15 TJm +(estig) 18.8194 Tj +5 TJm +(ations) 23.8007 Tj +-221 TJm +(I) 3.31755 Tj +-221 TJm +(made) 21.579 Tj +-222 TJm +(into) 15.5018 Tj +-221 TJm +(the) 12.1743 Tj +-221 TJm +(performance) 50.341 Tj +-222 TJm +(of) 8.29885 Tj +-221 TJm +(sorting) 27.6761 Tj +-221 TJm +(and) 14.386 Tj +-222 TJm +(decompression) 59.7656 Tj +72 637.146 Td +(algorithms:) 45.3896 Tj +[1 0 0 1 72 634.989] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 -132.503] cm +/DeviceRGB {} cs +[0.929398 0.968597 0.956848] sc +/DeviceRGB {} CS +[0.929398 0.968597 0.956848] SC +0 0 468 131.507 re +f +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 127.92] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 18 -8.3686] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -90 -625.624] cm +[1 0 0 1 0 0] Tm +0 0 Td +90 625.624 Td +/F134_0 9.9626 Tf +(Julian) 35.8654 Tj +-426 TJm +(Seward) 35.8654 Tj +102.732 613.669 Td +(On) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(Performance) 65.7532 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(BWT) 17.9327 Tj +-426 TJm +(Sorting) 41.8429 Tj +-426 TJm +(Algorithms) 59.7756 Tj +102.732 601.714 Td +(Proceedings) 65.7532 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(IEEE) 23.9102 Tj +-426 TJm +(Data) 23.9102 Tj +-426 TJm +(Compression) 65.7532 Tj +-426 TJm +(Conference) 59.7756 Tj +-426 TJm +(2000) 23.9102 Tj +111.22 589.759 Td +(Snowbird,) 53.798 Tj +-426 TJm +(Utah.) 29.8878 Tj +-852 TJm +(28-30) 29.8878 Tj +-426 TJm +(March) 29.8878 Tj +-426 TJm +(2000.) 29.8878 Tj +90 565.848 Td +(Julian) 35.8654 Tj +-426 TJm +(Seward) 35.8654 Tj +102.732 553.893 Td +(Space-time) 59.7756 Tj +-426 TJm +(Tradeoffs) 53.798 Tj +-426 TJm +(in) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(Inverse) 41.8429 Tj +-426 TJm +(B-W) 17.9327 Tj +-426 TJm +(Transform) 53.798 Tj +102.732 541.938 Td +(Proceedings) 65.7532 Tj +-426 TJm +(of) 11.9551 Tj +-426 TJm +(the) 17.9327 Tj +-426 TJm +(IEEE) 23.9102 Tj +-426 TJm +(Data) 23.9102 Tj +-426 TJm +(Compression) 65.7532 Tj +-426 TJm +(Conference) 59.7756 Tj +-426 TJm +(2001) 23.9102 Tj +111.22 529.983 Td +(Snowbird,) 53.798 Tj +-426 TJm +(Utah.) 29.8878 Tj +-852 TJm +(27-29) 29.8878 Tj +-426 TJm +(March) 29.8878 Tj +-426 TJm +(2001.) 29.8878 Tj +[1 0 0 1 72 502.486] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 468 3.5866] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -468 -3.5866] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 0 -451.634] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 1.8929 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 374.394 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 2.4907 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 0 6.8541] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 40.5726 -6.7546] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 -493.841 -50.9513] cm +[1 0 0 1 0 0] Tm +0 0 Td +534.414 50.9513 Td +/F130_0 9.9626 Tf +(35) 9.9626 Tj +[1 0 0 1 453.269 50.8518] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 93.5985 0] cm +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +/DeviceRGB {} cs +[0 0 0] sc +/DeviceRGB {} CS +[0 0 0] SC +[1 0 0 1 6.2765 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +[1 0 0 1 -13.1436 0] cm +/DeviceGray {} cs +[0] sc +/DeviceGray {} CS +[0] SC +Q +showpage +%%PageTrailer +pdfEndPage +%%Trailer +end +%%DocumentSuppliedResources: +%%+ font DTUUHP+NimbusSanL-Bold +%%+ font VXAMRV+NimbusRomNo9L-Regu +%%+ font MFECUR+NimbusMonL-Regu +%%+ font ZOVMRD+CMMI10 +%%+ font ERVBFT+NimbusMonL-Bold +%%+ font BZXIEB+CMSY10 +%%+ font WWWUTU+NimbusRomNo9L-ReguItal +%%EOF diff --git a/manual.xml b/manual.xml new file mode 100644 index 0000000..f224136 --- /dev/null +++ b/manual.xml @@ -0,0 +1,2964 @@ +<?xml version="1.0"?> <!-- -*- sgml -*- --> +<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" + "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"[ + +<!-- various strings, dates etc. common to all docs --> +<!ENTITY % common-ents SYSTEM "entities.xml"> %common-ents; +]> + +<book lang="en" id="userman" xreflabel="bzip2 Manual"> + + <bookinfo> + <title>bzip2 and libbzip2, version 1.0.5</title> + <subtitle>A program and library for data compression</subtitle> + <copyright> + <year>&bz-lifespan;</year> + <holder>Julian Seward</holder> + </copyright> + <releaseinfo>Version &bz-version; of &bz-date;</releaseinfo> + + <authorgroup> + <author> + <firstname>Julian</firstname> + <surname>Seward</surname> + <affiliation> + <orgname>&bz-url;</orgname> + </affiliation> + </author> + </authorgroup> + + <legalnotice> + + <para>This program, <computeroutput>bzip2</computeroutput>, the + associated library <computeroutput>libbzip2</computeroutput>, and + all documentation, are copyright © &bz-lifespan; Julian Seward. + All rights reserved.</para> + + <para>Redistribution and use in source and binary forms, with + or without modification, are permitted provided that the + following conditions are met:</para> + + <itemizedlist mark='bullet'> + + <listitem><para>Redistributions of source code must retain the + above copyright notice, this list of conditions and the + following disclaimer.</para></listitem> + + <listitem><para>The origin of this software must not be + misrepresented; you must not claim that you wrote the original + software. If you use this software in a product, an + acknowledgment in the product documentation would be + appreciated but is not required.</para></listitem> + + <listitem><para>Altered source versions must be plainly marked + as such, and must not be misrepresented as being the original + software.</para></listitem> + + <listitem><para>The name of the author may not be used to + endorse or promote products derived from this software without + specific prior written permission.</para></listitem> + + </itemizedlist> + + <para>THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY + EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF + THE POSSIBILITY OF SUCH DAMAGE.</para> + + <para>PATENTS: To the best of my knowledge, + <computeroutput>bzip2</computeroutput> and + <computeroutput>libbzip2</computeroutput> do not use any patented + algorithms. However, I do not have the resources to carry + out a patent search. Therefore I cannot give any guarantee of + the above statement. + </para> + +</legalnotice> + +</bookinfo> + + + +<chapter id="intro" xreflabel="Introduction"> +<title>Introduction</title> + +<para><computeroutput>bzip2</computeroutput> compresses files +using the Burrows-Wheeler block-sorting text compression +algorithm, and Huffman coding. Compression is generally +considerably better than that achieved by more conventional +LZ77/LZ78-based compressors, and approaches the performance of +the PPM family of statistical compressors.</para> + +<para><computeroutput>bzip2</computeroutput> is built on top of +<computeroutput>libbzip2</computeroutput>, a flexible library for +handling compressed data in the +<computeroutput>bzip2</computeroutput> format. This manual +describes both how to use the program and how to work with the +library interface. Most of the manual is devoted to this +library, not the program, which is good news if your interest is +only in the program.</para> + +<itemizedlist mark='bullet'> + + <listitem><para><xref linkend="using"/> describes how to use + <computeroutput>bzip2</computeroutput>; this is the only part + you need to read if you just want to know how to operate the + program.</para></listitem> + + <listitem><para><xref linkend="libprog"/> describes the + programming interfaces in detail, and</para></listitem> + + <listitem><para><xref linkend="misc"/> records some + miscellaneous notes which I thought ought to be recorded + somewhere.</para></listitem> + +</itemizedlist> + +</chapter> + + +<chapter id="using" xreflabel="How to use bzip2"> +<title>How to use bzip2</title> + +<para>This chapter contains a copy of the +<computeroutput>bzip2</computeroutput> man page, and nothing +else.</para> + +<sect1 id="name" xreflabel="NAME"> +<title>NAME</title> + +<itemizedlist mark='bullet'> + + <listitem><para><computeroutput>bzip2</computeroutput>, + <computeroutput>bunzip2</computeroutput> - a block-sorting file + compressor, v1.0.4</para></listitem> + + <listitem><para><computeroutput>bzcat</computeroutput> - + decompresses files to stdout</para></listitem> + + <listitem><para><computeroutput>bzip2recover</computeroutput> - + recovers data from damaged bzip2 files</para></listitem> + +</itemizedlist> + +</sect1> + + +<sect1 id="synopsis" xreflabel="SYNOPSIS"> +<title>SYNOPSIS</title> + +<itemizedlist mark='bullet'> + + <listitem><para><computeroutput>bzip2</computeroutput> [ + -cdfkqstvzVL123456789 ] [ filenames ... ]</para></listitem> + + <listitem><para><computeroutput>bunzip2</computeroutput> [ + -fkvsVL ] [ filenames ... ]</para></listitem> + + <listitem><para><computeroutput>bzcat</computeroutput> [ -s ] [ + filenames ... ]</para></listitem> + + <listitem><para><computeroutput>bzip2recover</computeroutput> + filename</para></listitem> + +</itemizedlist> + +</sect1> + + +<sect1 id="description" xreflabel="DESCRIPTION"> +<title>DESCRIPTION</title> + +<para><computeroutput>bzip2</computeroutput> compresses files +using the Burrows-Wheeler block sorting text compression +algorithm, and Huffman coding. Compression is generally +considerably better than that achieved by more conventional +LZ77/LZ78-based compressors, and approaches the performance of +the PPM family of statistical compressors.</para> + +<para>The command-line options are deliberately very similar to +those of GNU <computeroutput>gzip</computeroutput>, but they are +not identical.</para> + +<para><computeroutput>bzip2</computeroutput> expects a list of +file names to accompany the command-line flags. Each file is +replaced by a compressed version of itself, with the name +<computeroutput>original_name.bz2</computeroutput>. Each +compressed file has the same modification date, permissions, and, +when possible, ownership as the corresponding original, so that +these properties can be correctly restored at decompression time. +File name handling is naive in the sense that there is no +mechanism for preserving original file names, permissions, +ownerships or dates in filesystems which lack these concepts, or +have serious file name length restrictions, such as +MS-DOS.</para> + +<para><computeroutput>bzip2</computeroutput> and +<computeroutput>bunzip2</computeroutput> will by default not +overwrite existing files. If you want this to happen, specify +the <computeroutput>-f</computeroutput> flag.</para> + +<para>If no file names are specified, +<computeroutput>bzip2</computeroutput> compresses from standard +input to standard output. In this case, +<computeroutput>bzip2</computeroutput> will decline to write +compressed output to a terminal, as this would be entirely +incomprehensible and therefore pointless.</para> + +<para><computeroutput>bunzip2</computeroutput> (or +<computeroutput>bzip2 -d</computeroutput>) decompresses all +specified files. Files which were not created by +<computeroutput>bzip2</computeroutput> will be detected and +ignored, and a warning issued. +<computeroutput>bzip2</computeroutput> attempts to guess the +filename for the decompressed file from that of the compressed +file as follows:</para> + +<itemizedlist mark='bullet'> + + <listitem><para><computeroutput>filename.bz2 </computeroutput> + becomes + <computeroutput>filename</computeroutput></para></listitem> + + <listitem><para><computeroutput>filename.bz </computeroutput> + becomes + <computeroutput>filename</computeroutput></para></listitem> + + <listitem><para><computeroutput>filename.tbz2</computeroutput> + becomes + <computeroutput>filename.tar</computeroutput></para></listitem> + + <listitem><para><computeroutput>filename.tbz </computeroutput> + becomes + <computeroutput>filename.tar</computeroutput></para></listitem> + + <listitem><para><computeroutput>anyothername </computeroutput> + becomes + <computeroutput>anyothername.out</computeroutput></para></listitem> + +</itemizedlist> + +<para>If the file does not end in one of the recognised endings, +<computeroutput>.bz2</computeroutput>, +<computeroutput>.bz</computeroutput>, +<computeroutput>.tbz2</computeroutput> or +<computeroutput>.tbz</computeroutput>, +<computeroutput>bzip2</computeroutput> complains that it cannot +guess the name of the original file, and uses the original name +with <computeroutput>.out</computeroutput> appended.</para> + +<para>As with compression, supplying no filenames causes +decompression from standard input to standard output.</para> + +<para><computeroutput>bunzip2</computeroutput> will correctly +decompress a file which is the concatenation of two or more +compressed files. The result is the concatenation of the +corresponding uncompressed files. Integrity testing +(<computeroutput>-t</computeroutput>) of concatenated compressed +files is also supported.</para> + +<para>You can also compress or decompress files to the standard +output by giving the <computeroutput>-c</computeroutput> flag. +Multiple files may be compressed and decompressed like this. The +resulting outputs are fed sequentially to stdout. Compression of +multiple files in this manner generates a stream containing +multiple compressed file representations. Such a stream can be +decompressed correctly only by +<computeroutput>bzip2</computeroutput> version 0.9.0 or later. +Earlier versions of <computeroutput>bzip2</computeroutput> will +stop after decompressing the first file in the stream.</para> + +<para><computeroutput>bzcat</computeroutput> (or +<computeroutput>bzip2 -dc</computeroutput>) decompresses all +specified files to the standard output.</para> + +<para><computeroutput>bzip2</computeroutput> will read arguments +from the environment variables +<computeroutput>BZIP2</computeroutput> and +<computeroutput>BZIP</computeroutput>, in that order, and will +process them before any arguments read from the command line. +This gives a convenient way to supply default arguments.</para> + +<para>Compression is always performed, even if the compressed +file is slightly larger than the original. Files of less than +about one hundred bytes tend to get larger, since the compression +mechanism has a constant overhead in the region of 50 bytes. +Random data (including the output of most file compressors) is +coded at about 8.05 bits per byte, giving an expansion of around +0.5%.</para> + +<para>As a self-check for your protection, +<computeroutput>bzip2</computeroutput> uses 32-bit CRCs to make +sure that the decompressed version of a file is identical to the +original. This guards against corruption of the compressed data, +and against undetected bugs in +<computeroutput>bzip2</computeroutput> (hopefully very unlikely). +The chances of data corruption going undetected is microscopic, +about one chance in four billion for each file processed. Be +aware, though, that the check occurs upon decompression, so it +can only tell you that something is wrong. It can't help you +recover the original uncompressed data. You can use +<computeroutput>bzip2recover</computeroutput> to try to recover +data from damaged files.</para> + +<para>Return values: 0 for a normal exit, 1 for environmental +problems (file not found, invalid flags, I/O errors, etc.), 2 +to indicate a corrupt compressed file, 3 for an internal +consistency error (eg, bug) which caused +<computeroutput>bzip2</computeroutput> to panic.</para> + +</sect1> + + +<sect1 id="options" xreflabel="OPTIONS"> +<title>OPTIONS</title> + +<variablelist> + + <varlistentry> + <term><computeroutput>-c --stdout</computeroutput></term> + <listitem><para>Compress or decompress to standard + output.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>-d --decompress</computeroutput></term> + <listitem><para>Force decompression. + <computeroutput>bzip2</computeroutput>, + <computeroutput>bunzip2</computeroutput> and + <computeroutput>bzcat</computeroutput> are really the same + program, and the decision about what actions to take is done on + the basis of which name is used. This flag overrides that + mechanism, and forces bzip2 to decompress.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>-z --compress</computeroutput></term> + <listitem><para>The complement to + <computeroutput>-d</computeroutput>: forces compression, + regardless of the invokation name.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>-t --test</computeroutput></term> + <listitem><para>Check integrity of the specified file(s), but + don't decompress them. This really performs a trial + decompression and throws away the result.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>-f --force</computeroutput></term> + <listitem><para>Force overwrite of output files. Normally, + <computeroutput>bzip2</computeroutput> will not overwrite + existing output files. Also forces + <computeroutput>bzip2</computeroutput> to break hard links to + files, which it otherwise wouldn't do.</para> + <para><computeroutput>bzip2</computeroutput> normally declines + to decompress files which don't have the correct magic header + bytes. If forced (<computeroutput>-f</computeroutput>), + however, it will pass such files through unmodified. This is + how GNU <computeroutput>gzip</computeroutput> behaves.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>-k --keep</computeroutput></term> + <listitem><para>Keep (don't delete) input files during + compression or decompression.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>-s --small</computeroutput></term> + <listitem><para>Reduce memory usage, for compression, + decompression and testing. Files are decompressed and tested + using a modified algorithm which only requires 2.5 bytes per + block byte. This means any file can be decompressed in 2300k + of memory, albeit at about half the normal speed.</para> + <para>During compression, <computeroutput>-s</computeroutput> + selects a block size of 200k, which limits memory use to around + the same figure, at the expense of your compression ratio. In + short, if your machine is low on memory (8 megabytes or less), + use <computeroutput>-s</computeroutput> for everything. See + <xref linkend="memory-management"/> below.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>-q --quiet</computeroutput></term> + <listitem><para>Suppress non-essential warning messages. + Messages pertaining to I/O errors and other critical events + will not be suppressed.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>-v --verbose</computeroutput></term> + <listitem><para>Verbose mode -- show the compression ratio for + each file processed. Further + <computeroutput>-v</computeroutput>'s increase the verbosity + level, spewing out lots of information which is primarily of + interest for diagnostic purposes.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>-L --license -V --version</computeroutput></term> + <listitem><para>Display the software version, license terms and + conditions.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>-1</computeroutput> (or + <computeroutput>--fast</computeroutput>) to + <computeroutput>-9</computeroutput> (or + <computeroutput>-best</computeroutput>)</term> + <listitem><para>Set the block size to 100 k, 200 k ... 900 k + when compressing. Has no effect when decompressing. See <xref + linkend="memory-management" /> below. The + <computeroutput>--fast</computeroutput> and + <computeroutput>--best</computeroutput> aliases are primarily + for GNU <computeroutput>gzip</computeroutput> compatibility. + In particular, <computeroutput>--fast</computeroutput> doesn't + make things significantly faster. And + <computeroutput>--best</computeroutput> merely selects the + default behaviour.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>--</computeroutput></term> + <listitem><para>Treats all subsequent arguments as file names, + even if they start with a dash. This is so you can handle + files with names beginning with a dash, for example: + <computeroutput>bzip2 -- + -myfilename</computeroutput>.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>--repetitive-fast</computeroutput></term> + <term><computeroutput>--repetitive-best</computeroutput></term> + <listitem><para>These flags are redundant in versions 0.9.5 and + above. They provided some coarse control over the behaviour of + the sorting algorithm in earlier versions, which was sometimes + useful. 0.9.5 and above have an improved algorithm which + renders these flags irrelevant.</para></listitem> + </varlistentry> + +</variablelist> + +</sect1> + + +<sect1 id="memory-management" xreflabel="MEMORY MANAGEMENT"> +<title>MEMORY MANAGEMENT</title> + +<para><computeroutput>bzip2</computeroutput> compresses large +files in blocks. The block size affects both the compression +ratio achieved, and the amount of memory needed for compression +and decompression. The flags <computeroutput>-1</computeroutput> +through <computeroutput>-9</computeroutput> specify the block +size to be 100,000 bytes through 900,000 bytes (the default) +respectively. At decompression time, the block size used for +compression is read from the header of the compressed file, and +<computeroutput>bunzip2</computeroutput> then allocates itself +just enough memory to decompress the file. Since block sizes are +stored in compressed files, it follows that the flags +<computeroutput>-1</computeroutput> to +<computeroutput>-9</computeroutput> are irrelevant to and so +ignored during decompression.</para> + +<para>Compression and decompression requirements, in bytes, can be +estimated as:</para> +<programlisting> +Compression: 400k + ( 8 x block size ) + +Decompression: 100k + ( 4 x block size ), or + 100k + ( 2.5 x block size ) +</programlisting> + +<para>Larger block sizes give rapidly diminishing marginal +returns. Most of the compression comes from the first two or +three hundred k of block size, a fact worth bearing in mind when +using <computeroutput>bzip2</computeroutput> on small machines. +It is also important to appreciate that the decompression memory +requirement is set at compression time by the choice of block +size.</para> + +<para>For files compressed with the default 900k block size, +<computeroutput>bunzip2</computeroutput> will require about 3700 +kbytes to decompress. To support decompression of any file on a +4 megabyte machine, <computeroutput>bunzip2</computeroutput> has +an option to decompress using approximately half this amount of +memory, about 2300 kbytes. Decompression speed is also halved, +so you should use this option only where necessary. The relevant +flag is <computeroutput>-s</computeroutput>.</para> + +<para>In general, try and use the largest block size memory +constraints allow, since that maximises the compression achieved. +Compression and decompression speed are virtually unaffected by +block size.</para> + +<para>Another significant point applies to files which fit in a +single block -- that means most files you'd encounter using a +large block size. The amount of real memory touched is +proportional to the size of the file, since the file is smaller +than a block. For example, compressing a file 20,000 bytes long +with the flag <computeroutput>-9</computeroutput> will cause the +compressor to allocate around 7600k of memory, but only touch +400k + 20000 * 8 = 560 kbytes of it. Similarly, the decompressor +will allocate 3700k but only touch 100k + 20000 * 4 = 180 +kbytes.</para> + +<para>Here is a table which summarises the maximum memory usage +for different block sizes. Also recorded is the total compressed +size for 14 files of the Calgary Text Compression Corpus +totalling 3,141,622 bytes. This column gives some feel for how +compression varies with block size. These figures tend to +understate the advantage of larger block sizes for larger files, +since the Corpus is dominated by smaller files.</para> + +<programlisting> + Compress Decompress Decompress Corpus +Flag usage usage -s usage Size + + -1 1200k 500k 350k 914704 + -2 2000k 900k 600k 877703 + -3 2800k 1300k 850k 860338 + -4 3600k 1700k 1100k 846899 + -5 4400k 2100k 1350k 845160 + -6 5200k 2500k 1600k 838626 + -7 6100k 2900k 1850k 834096 + -8 6800k 3300k 2100k 828642 + -9 7600k 3700k 2350k 828642 +</programlisting> + +</sect1> + + +<sect1 id="recovering" xreflabel="RECOVERING DATA FROM DAMAGED FILES"> +<title>RECOVERING DATA FROM DAMAGED FILES</title> + +<para><computeroutput>bzip2</computeroutput> compresses files in +blocks, usually 900kbytes long. Each block is handled +independently. If a media or transmission error causes a +multi-block <computeroutput>.bz2</computeroutput> file to become +damaged, it may be possible to recover data from the undamaged +blocks in the file.</para> + +<para>The compressed representation of each block is delimited by +a 48-bit pattern, which makes it possible to find the block +boundaries with reasonable certainty. Each block also carries +its own 32-bit CRC, so damaged blocks can be distinguished from +undamaged ones.</para> + +<para><computeroutput>bzip2recover</computeroutput> is a simple +program whose purpose is to search for blocks in +<computeroutput>.bz2</computeroutput> files, and write each block +out into its own <computeroutput>.bz2</computeroutput> file. You +can then use <computeroutput>bzip2 -t</computeroutput> to test +the integrity of the resulting files, and decompress those which +are undamaged.</para> + +<para><computeroutput>bzip2recover</computeroutput> takes a +single argument, the name of the damaged file, and writes a +number of files <computeroutput>rec0001file.bz2</computeroutput>, +<computeroutput>rec0002file.bz2</computeroutput>, etc, containing +the extracted blocks. The output filenames are designed so that +the use of wildcards in subsequent processing -- for example, +<computeroutput>bzip2 -dc rec*file.bz2 > +recovered_data</computeroutput> -- lists the files in the correct +order.</para> + +<para><computeroutput>bzip2recover</computeroutput> should be of +most use dealing with large <computeroutput>.bz2</computeroutput> +files, as these will contain many blocks. It is clearly futile +to use it on damaged single-block files, since a damaged block +cannot be recovered. If you wish to minimise any potential data +loss through media or transmission errors, you might consider +compressing with a smaller block size.</para> + +</sect1> + + +<sect1 id="performance" xreflabel="PERFORMANCE NOTES"> +<title>PERFORMANCE NOTES</title> + +<para>The sorting phase of compression gathers together similar +strings in the file. Because of this, files containing very long +runs of repeated symbols, like "aabaabaabaab ..." (repeated +several hundred times) may compress more slowly than normal. +Versions 0.9.5 and above fare much better than previous versions +in this respect. The ratio between worst-case and average-case +compression time is in the region of 10:1. For previous +versions, this figure was more like 100:1. You can use the +<computeroutput>-vvvv</computeroutput> option to monitor progress +in great detail, if you want.</para> + +<para>Decompression speed is unaffected by these +phenomena.</para> + +<para><computeroutput>bzip2</computeroutput> usually allocates +several megabytes of memory to operate in, and then charges all +over it in a fairly random fashion. This means that performance, +both for compressing and decompressing, is largely determined by +the speed at which your machine can service cache misses. +Because of this, small changes to the code to reduce the miss +rate have been observed to give disproportionately large +performance improvements. I imagine +<computeroutput>bzip2</computeroutput> will perform best on +machines with very large caches.</para> + +</sect1> + + + +<sect1 id="caveats" xreflabel="CAVEATS"> +<title>CAVEATS</title> + +<para>I/O error messages are not as helpful as they could be. +<computeroutput>bzip2</computeroutput> tries hard to detect I/O +errors and exit cleanly, but the details of what the problem is +sometimes seem rather misleading.</para> + +<para>This manual page pertains to version &bz-version; of +<computeroutput>bzip2</computeroutput>. Compressed data created by +this version is entirely forwards and backwards compatible with the +previous public releases, versions 0.1pl2, 0.9.0 and 0.9.5, 1.0.0, +1.0.1, 1.0.2 and 1.0.3, but with the following exception: 0.9.0 and +above can correctly decompress multiple concatenated compressed files. +0.1pl2 cannot do this; it will stop after decompressing just the first +file in the stream.</para> + +<para><computeroutput>bzip2recover</computeroutput> versions +prior to 1.0.2 used 32-bit integers to represent bit positions in +compressed files, so it could not handle compressed files more +than 512 megabytes long. Versions 1.0.2 and above use 64-bit ints +on some platforms which support them (GNU supported targets, and +Windows). To establish whether or not +<computeroutput>bzip2recover</computeroutput> was built with such +a limitation, run it without arguments. In any event you can +build yourself an unlimited version if you can recompile it with +<computeroutput>MaybeUInt64</computeroutput> set to be an +unsigned 64-bit integer.</para> + +</sect1> + + + +<sect1 id="author" xreflabel="AUTHOR"> +<title>AUTHOR</title> + +<para>Julian Seward, +<computeroutput>&bz-email;</computeroutput></para> + +<para>The ideas embodied in +<computeroutput>bzip2</computeroutput> are due to (at least) the +following people: Michael Burrows and David Wheeler (for the +block sorting transformation), David Wheeler (again, for the +Huffman coder), Peter Fenwick (for the structured coding model in +the original <computeroutput>bzip</computeroutput>, and many +refinements), and Alistair Moffat, Radford Neal and Ian Witten +(for the arithmetic coder in the original +<computeroutput>bzip</computeroutput>). I am much indebted for +their help, support and advice. See the manual in the source +distribution for pointers to sources of documentation. Christian +von Roques encouraged me to look for faster sorting algorithms, +so as to speed up compression. Bela Lubkin encouraged me to +improve the worst-case compression performance. +Donna Robinson XMLised the documentation. +Many people sent +patches, helped with portability problems, lent machines, gave +advice and were generally helpful.</para> + +</sect1> + +</chapter> + + + +<chapter id="libprog" xreflabel="Programming with libbzip2"> +<title> +Programming with <computeroutput>libbzip2</computeroutput> +</title> + +<para>This chapter describes the programming interface to +<computeroutput>libbzip2</computeroutput>.</para> + +<para>For general background information, particularly about +memory use and performance aspects, you'd be well advised to read +<xref linkend="using"/> as well.</para> + + +<sect1 id="top-level" xreflabel="Top-level structure"> +<title>Top-level structure</title> + +<para><computeroutput>libbzip2</computeroutput> is a flexible +library for compressing and decompressing data in the +<computeroutput>bzip2</computeroutput> data format. Although +packaged as a single entity, it helps to regard the library as +three separate parts: the low level interface, and the high level +interface, and some utility functions.</para> + +<para>The structure of +<computeroutput>libbzip2</computeroutput>'s interfaces is similar +to that of Jean-loup Gailly's and Mark Adler's excellent +<computeroutput>zlib</computeroutput> library.</para> + +<para>All externally visible symbols have names beginning +<computeroutput>BZ2_</computeroutput>. This is new in version +1.0. The intention is to minimise pollution of the namespaces of +library clients.</para> + +<para>To use any part of the library, you need to +<computeroutput>#include <bzlib.h></computeroutput> +into your sources.</para> + + + +<sect2 id="ll-summary" xreflabel="Low-level summary"> +<title>Low-level summary</title> + +<para>This interface provides services for compressing and +decompressing data in memory. There's no provision for dealing +with files, streams or any other I/O mechanisms, just straight +memory-to-memory work. In fact, this part of the library can be +compiled without inclusion of +<computeroutput>stdio.h</computeroutput>, which may be helpful +for embedded applications.</para> + +<para>The low-level part of the library has no global variables +and is therefore thread-safe.</para> + +<para>Six routines make up the low level interface: +<computeroutput>BZ2_bzCompressInit</computeroutput>, +<computeroutput>BZ2_bzCompress</computeroutput>, and +<computeroutput>BZ2_bzCompressEnd</computeroutput> for +compression, and a corresponding trio +<computeroutput>BZ2_bzDecompressInit</computeroutput>, +<computeroutput>BZ2_bzDecompress</computeroutput> and +<computeroutput>BZ2_bzDecompressEnd</computeroutput> for +decompression. The <computeroutput>*Init</computeroutput> +functions allocate memory for compression/decompression and do +other initialisations, whilst the +<computeroutput>*End</computeroutput> functions close down +operations and release memory.</para> + +<para>The real work is done by +<computeroutput>BZ2_bzCompress</computeroutput> and +<computeroutput>BZ2_bzDecompress</computeroutput>. These +compress and decompress data from a user-supplied input buffer to +a user-supplied output buffer. These buffers can be any size; +arbitrary quantities of data are handled by making repeated calls +to these functions. This is a flexible mechanism allowing a +consumer-pull style of activity, or producer-push, or a mixture +of both.</para> + +</sect2> + + +<sect2 id="hl-summary" xreflabel="High-level summary"> +<title>High-level summary</title> + +<para>This interface provides some handy wrappers around the +low-level interface to facilitate reading and writing +<computeroutput>bzip2</computeroutput> format files +(<computeroutput>.bz2</computeroutput> files). The routines +provide hooks to facilitate reading files in which the +<computeroutput>bzip2</computeroutput> data stream is embedded +within some larger-scale file structure, or where there are +multiple <computeroutput>bzip2</computeroutput> data streams +concatenated end-to-end.</para> + +<para>For reading files, +<computeroutput>BZ2_bzReadOpen</computeroutput>, +<computeroutput>BZ2_bzRead</computeroutput>, +<computeroutput>BZ2_bzReadClose</computeroutput> and +<computeroutput>BZ2_bzReadGetUnused</computeroutput> are +supplied. For writing files, +<computeroutput>BZ2_bzWriteOpen</computeroutput>, +<computeroutput>BZ2_bzWrite</computeroutput> and +<computeroutput>BZ2_bzWriteFinish</computeroutput> are +available.</para> + +<para>As with the low-level library, no global variables are used +so the library is per se thread-safe. However, if I/O errors +occur whilst reading or writing the underlying compressed files, +you may have to consult <computeroutput>errno</computeroutput> to +determine the cause of the error. In that case, you'd need a C +library which correctly supports +<computeroutput>errno</computeroutput> in a multithreaded +environment.</para> + +<para>To make the library a little simpler and more portable, +<computeroutput>BZ2_bzReadOpen</computeroutput> and +<computeroutput>BZ2_bzWriteOpen</computeroutput> require you to +pass them file handles (<computeroutput>FILE*</computeroutput>s) +which have previously been opened for reading or writing +respectively. That avoids portability problems associated with +file operations and file attributes, whilst not being much of an +imposition on the programmer.</para> + +</sect2> + + +<sect2 id="util-fns-summary" xreflabel="Utility functions summary"> +<title>Utility functions summary</title> + +<para>For very simple needs, +<computeroutput>BZ2_bzBuffToBuffCompress</computeroutput> and +<computeroutput>BZ2_bzBuffToBuffDecompress</computeroutput> are +provided. These compress data in memory from one buffer to +another buffer in a single function call. You should assess +whether these functions fulfill your memory-to-memory +compression/decompression requirements before investing effort in +understanding the more general but more complex low-level +interface.</para> + +<para>Yoshioka Tsuneo +(<computeroutput>tsuneo@rr.iij4u.or.jp</computeroutput>) has +contributed some functions to give better +<computeroutput>zlib</computeroutput> compatibility. These +functions are <computeroutput>BZ2_bzopen</computeroutput>, +<computeroutput>BZ2_bzread</computeroutput>, +<computeroutput>BZ2_bzwrite</computeroutput>, +<computeroutput>BZ2_bzflush</computeroutput>, +<computeroutput>BZ2_bzclose</computeroutput>, +<computeroutput>BZ2_bzerror</computeroutput> and +<computeroutput>BZ2_bzlibVersion</computeroutput>. You may find +these functions more convenient for simple file reading and +writing, than those in the high-level interface. These functions +are not (yet) officially part of the library, and are minimally +documented here. If they break, you get to keep all the pieces. +I hope to document them properly when time permits.</para> + +<para>Yoshioka also contributed modifications to allow the +library to be built as a Windows DLL.</para> + +</sect2> + +</sect1> + + +<sect1 id="err-handling" xreflabel="Error handling"> +<title>Error handling</title> + +<para>The library is designed to recover cleanly in all +situations, including the worst-case situation of decompressing +random data. I'm not 100% sure that it can always do this, so +you might want to add a signal handler to catch segmentation +violations during decompression if you are feeling especially +paranoid. I would be interested in hearing more about the +robustness of the library to corrupted compressed data.</para> + +<para>Version 1.0.3 more robust in this respect than any +previous version. Investigations with Valgrind (a tool for detecting +problems with memory management) indicate +that, at least for the few files I tested, all single-bit errors +in the decompressed data are caught properly, with no +segmentation faults, no uses of uninitialised data, no out of +range reads or writes, and no infinite looping in the decompressor. +So it's certainly pretty robust, although +I wouldn't claim it to be totally bombproof.</para> + +<para>The file <computeroutput>bzlib.h</computeroutput> contains +all definitions needed to use the library. In particular, you +should definitely not include +<computeroutput>bzlib_private.h</computeroutput>.</para> + +<para>In <computeroutput>bzlib.h</computeroutput>, the various +return values are defined. The following list is not intended as +an exhaustive description of the circumstances in which a given +value may be returned -- those descriptions are given later. +Rather, it is intended to convey the rough meaning of each return +value. The first five actions are normal and not intended to +denote an error situation.</para> + +<variablelist> + + <varlistentry> + <term><computeroutput>BZ_OK</computeroutput></term> + <listitem><para>The requested action was completed + successfully.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>BZ_RUN_OK, BZ_FLUSH_OK, + BZ_FINISH_OK</computeroutput></term> + <listitem><para>In + <computeroutput>BZ2_bzCompress</computeroutput>, the requested + flush/finish/nothing-special action was completed + successfully.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>BZ_STREAM_END</computeroutput></term> + <listitem><para>Compression of data was completed, or the + logical stream end was detected during + decompression.</para></listitem> + </varlistentry> + +</variablelist> + +<para>The following return values indicate an error of some +kind.</para> + +<variablelist> + + <varlistentry> + <term><computeroutput>BZ_CONFIG_ERROR</computeroutput></term> + <listitem><para>Indicates that the library has been improperly + compiled on your platform -- a major configuration error. + Specifically, it means that + <computeroutput>sizeof(char)</computeroutput>, + <computeroutput>sizeof(short)</computeroutput> and + <computeroutput>sizeof(int)</computeroutput> are not 1, 2 and + 4 respectively, as they should be. Note that the library + should still work properly on 64-bit platforms which follow + the LP64 programming model -- that is, where + <computeroutput>sizeof(long)</computeroutput> and + <computeroutput>sizeof(void*)</computeroutput> are 8. Under + LP64, <computeroutput>sizeof(int)</computeroutput> is still 4, + so <computeroutput>libbzip2</computeroutput>, which doesn't + use the <computeroutput>long</computeroutput> type, is + OK.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>BZ_SEQUENCE_ERROR</computeroutput></term> + <listitem><para>When using the library, it is important to call + the functions in the correct sequence and with data structures + (buffers etc) in the correct states. + <computeroutput>libbzip2</computeroutput> checks as much as it + can to ensure this is happening, and returns + <computeroutput>BZ_SEQUENCE_ERROR</computeroutput> if not. + Code which complies precisely with the function semantics, as + detailed below, should never receive this value; such an event + denotes buggy code which you should + investigate.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>BZ_PARAM_ERROR</computeroutput></term> + <listitem><para>Returned when a parameter to a function call is + out of range or otherwise manifestly incorrect. As with + <computeroutput>BZ_SEQUENCE_ERROR</computeroutput>, this + denotes a bug in the client code. The distinction between + <computeroutput>BZ_PARAM_ERROR</computeroutput> and + <computeroutput>BZ_SEQUENCE_ERROR</computeroutput> is a bit + hazy, but still worth making.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>BZ_MEM_ERROR</computeroutput></term> + <listitem><para>Returned when a request to allocate memory + failed. Note that the quantity of memory needed to decompress + a stream cannot be determined until the stream's header has + been read. So + <computeroutput>BZ2_bzDecompress</computeroutput> and + <computeroutput>BZ2_bzRead</computeroutput> may return + <computeroutput>BZ_MEM_ERROR</computeroutput> even though some + of the compressed data has been read. The same is not true + for compression; once + <computeroutput>BZ2_bzCompressInit</computeroutput> or + <computeroutput>BZ2_bzWriteOpen</computeroutput> have + successfully completed, + <computeroutput>BZ_MEM_ERROR</computeroutput> cannot + occur.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>BZ_DATA_ERROR</computeroutput></term> + <listitem><para>Returned when a data integrity error is + detected during decompression. Most importantly, this means + when stored and computed CRCs for the data do not match. This + value is also returned upon detection of any other anomaly in + the compressed data.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>BZ_DATA_ERROR_MAGIC</computeroutput></term> + <listitem><para>As a special case of + <computeroutput>BZ_DATA_ERROR</computeroutput>, it is + sometimes useful to know when the compressed stream does not + start with the correct magic bytes (<computeroutput>'B' 'Z' + 'h'</computeroutput>).</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>BZ_IO_ERROR</computeroutput></term> + <listitem><para>Returned by + <computeroutput>BZ2_bzRead</computeroutput> and + <computeroutput>BZ2_bzWrite</computeroutput> when there is an + error reading or writing in the compressed file, and by + <computeroutput>BZ2_bzReadOpen</computeroutput> and + <computeroutput>BZ2_bzWriteOpen</computeroutput> for attempts + to use a file for which the error indicator (viz, + <computeroutput>ferror(f)</computeroutput>) is set. On + receipt of <computeroutput>BZ_IO_ERROR</computeroutput>, the + caller should consult <computeroutput>errno</computeroutput> + and/or <computeroutput>perror</computeroutput> to acquire + operating-system specific information about the + problem.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>BZ_UNEXPECTED_EOF</computeroutput></term> + <listitem><para>Returned by + <computeroutput>BZ2_bzRead</computeroutput> when the + compressed file finishes before the logical end of stream is + detected.</para></listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>BZ_OUTBUFF_FULL</computeroutput></term> + <listitem><para>Returned by + <computeroutput>BZ2_bzBuffToBuffCompress</computeroutput> and + <computeroutput>BZ2_bzBuffToBuffDecompress</computeroutput> to + indicate that the output data will not fit into the output + buffer provided.</para></listitem> + </varlistentry> + +</variablelist> + +</sect1> + + + +<sect1 id="low-level" xreflabel=">Low-level interface"> +<title>Low-level interface</title> + + +<sect2 id="bzcompress-init" xreflabel="BZ2_bzCompressInit"> +<title><computeroutput>BZ2_bzCompressInit</computeroutput></title> + +<programlisting> +typedef struct { + char *next_in; + unsigned int avail_in; + unsigned int total_in_lo32; + unsigned int total_in_hi32; + + char *next_out; + unsigned int avail_out; + unsigned int total_out_lo32; + unsigned int total_out_hi32; + + void *state; + + void *(*bzalloc)(void *,int,int); + void (*bzfree)(void *,void *); + void *opaque; +} bz_stream; + +int BZ2_bzCompressInit ( bz_stream *strm, + int blockSize100k, + int verbosity, + int workFactor ); +</programlisting> + +<para>Prepares for compression. The +<computeroutput>bz_stream</computeroutput> structure holds all +data pertaining to the compression activity. A +<computeroutput>bz_stream</computeroutput> structure should be +allocated and initialised prior to the call. The fields of +<computeroutput>bz_stream</computeroutput> comprise the entirety +of the user-visible data. <computeroutput>state</computeroutput> +is a pointer to the private data structures required for +compression.</para> + +<para>Custom memory allocators are supported, via fields +<computeroutput>bzalloc</computeroutput>, +<computeroutput>bzfree</computeroutput>, and +<computeroutput>opaque</computeroutput>. The value +<computeroutput>opaque</computeroutput> is passed to as the first +argument to all calls to <computeroutput>bzalloc</computeroutput> +and <computeroutput>bzfree</computeroutput>, but is otherwise +ignored by the library. The call <computeroutput>bzalloc ( +opaque, n, m )</computeroutput> is expected to return a pointer +<computeroutput>p</computeroutput> to <computeroutput>n * +m</computeroutput> bytes of memory, and <computeroutput>bzfree ( +opaque, p )</computeroutput> should free that memory.</para> + +<para>If you don't want to use a custom memory allocator, set +<computeroutput>bzalloc</computeroutput>, +<computeroutput>bzfree</computeroutput> and +<computeroutput>opaque</computeroutput> to +<computeroutput>NULL</computeroutput>, and the library will then +use the standard <computeroutput>malloc</computeroutput> / +<computeroutput>free</computeroutput> routines.</para> + +<para>Before calling +<computeroutput>BZ2_bzCompressInit</computeroutput>, fields +<computeroutput>bzalloc</computeroutput>, +<computeroutput>bzfree</computeroutput> and +<computeroutput>opaque</computeroutput> should be filled +appropriately, as just described. Upon return, the internal +state will have been allocated and initialised, and +<computeroutput>total_in_lo32</computeroutput>, +<computeroutput>total_in_hi32</computeroutput>, +<computeroutput>total_out_lo32</computeroutput> and +<computeroutput>total_out_hi32</computeroutput> will have been +set to zero. These four fields are used by the library to inform +the caller of the total amount of data passed into and out of the +library, respectively. You should not try to change them. As of +version 1.0, 64-bit counts are maintained, even on 32-bit +platforms, using the <computeroutput>_hi32</computeroutput> +fields to store the upper 32 bits of the count. So, for example, +the total amount of data in is <computeroutput>(total_in_hi32 +<< 32) + total_in_lo32</computeroutput>.</para> + +<para>Parameter <computeroutput>blockSize100k</computeroutput> +specifies the block size to be used for compression. It should +be a value between 1 and 9 inclusive, and the actual block size +used is 100000 x this figure. 9 gives the best compression but +takes most memory.</para> + +<para>Parameter <computeroutput>verbosity</computeroutput> should +be set to a number between 0 and 4 inclusive. 0 is silent, and +greater numbers give increasingly verbose monitoring/debugging +output. If the library has been compiled with +<computeroutput>-DBZ_NO_STDIO</computeroutput>, no such output +will appear for any verbosity setting.</para> + +<para>Parameter <computeroutput>workFactor</computeroutput> +controls how the compression phase behaves when presented with +worst case, highly repetitive, input data. If compression runs +into difficulties caused by repetitive data, the library switches +from the standard sorting algorithm to a fallback algorithm. The +fallback is slower than the standard algorithm by perhaps a +factor of three, but always behaves reasonably, no matter how bad +the input.</para> + +<para>Lower values of <computeroutput>workFactor</computeroutput> +reduce the amount of effort the standard algorithm will expend +before resorting to the fallback. You should set this parameter +carefully; too low, and many inputs will be handled by the +fallback algorithm and so compress rather slowly, too high, and +your average-to-worst case compression times can become very +large. The default value of 30 gives reasonable behaviour over a +wide range of circumstances.</para> + +<para>Allowable values range from 0 to 250 inclusive. 0 is a +special case, equivalent to using the default value of 30.</para> + +<para>Note that the compressed output generated is the same +regardless of whether or not the fallback algorithm is +used.</para> + +<para>Be aware also that this parameter may disappear entirely in +future versions of the library. In principle it should be +possible to devise a good way to automatically choose which +algorithm to use. Such a mechanism would render the parameter +obsolete.</para> + +<para>Possible return values:</para> + +<programlisting> +BZ_CONFIG_ERROR + if the library has been mis-compiled +BZ_PARAM_ERROR + if strm is NULL + or blockSize < 1 or blockSize > 9 + or verbosity < 0 or verbosity > 4 + or workFactor < 0 or workFactor > 250 +BZ_MEM_ERROR + if not enough memory is available +BZ_OK + otherwise +</programlisting> + +<para>Allowable next actions:</para> + +<programlisting> +BZ2_bzCompress + if BZ_OK is returned + no specific action needed in case of error +</programlisting> + +</sect2> + + +<sect2 id="bzCompress" xreflabel="BZ2_bzCompress"> +<title><computeroutput>BZ2_bzCompress</computeroutput></title> + +<programlisting> +int BZ2_bzCompress ( bz_stream *strm, int action ); +</programlisting> + +<para>Provides more input and/or output buffer space for the +library. The caller maintains input and output buffers, and +calls <computeroutput>BZ2_bzCompress</computeroutput> to transfer +data between them.</para> + +<para>Before each call to +<computeroutput>BZ2_bzCompress</computeroutput>, +<computeroutput>next_in</computeroutput> should point at the data +to be compressed, and <computeroutput>avail_in</computeroutput> +should indicate how many bytes the library may read. +<computeroutput>BZ2_bzCompress</computeroutput> updates +<computeroutput>next_in</computeroutput>, +<computeroutput>avail_in</computeroutput> and +<computeroutput>total_in</computeroutput> to reflect the number +of bytes it has read.</para> + +<para>Similarly, <computeroutput>next_out</computeroutput> should +point to a buffer in which the compressed data is to be placed, +with <computeroutput>avail_out</computeroutput> indicating how +much output space is available. +<computeroutput>BZ2_bzCompress</computeroutput> updates +<computeroutput>next_out</computeroutput>, +<computeroutput>avail_out</computeroutput> and +<computeroutput>total_out</computeroutput> to reflect the number +of bytes output.</para> + +<para>You may provide and remove as little or as much data as you +like on each call of +<computeroutput>BZ2_bzCompress</computeroutput>. In the limit, +it is acceptable to supply and remove data one byte at a time, +although this would be terribly inefficient. You should always +ensure that at least one byte of output space is available at +each call.</para> + +<para>A second purpose of +<computeroutput>BZ2_bzCompress</computeroutput> is to request a +change of mode of the compressed stream.</para> + +<para>Conceptually, a compressed stream can be in one of four +states: IDLE, RUNNING, FLUSHING and FINISHING. Before +initialisation +(<computeroutput>BZ2_bzCompressInit</computeroutput>) and after +termination (<computeroutput>BZ2_bzCompressEnd</computeroutput>), +a stream is regarded as IDLE.</para> + +<para>Upon initialisation +(<computeroutput>BZ2_bzCompressInit</computeroutput>), the stream +is placed in the RUNNING state. Subsequent calls to +<computeroutput>BZ2_bzCompress</computeroutput> should pass +<computeroutput>BZ_RUN</computeroutput> as the requested action; +other actions are illegal and will result in +<computeroutput>BZ_SEQUENCE_ERROR</computeroutput>.</para> + +<para>At some point, the calling program will have provided all +the input data it wants to. It will then want to finish up -- in +effect, asking the library to process any data it might have +buffered internally. In this state, +<computeroutput>BZ2_bzCompress</computeroutput> will no longer +attempt to read data from +<computeroutput>next_in</computeroutput>, but it will want to +write data to <computeroutput>next_out</computeroutput>. Because +the output buffer supplied by the user can be arbitrarily small, +the finishing-up operation cannot necessarily be done with a +single call of +<computeroutput>BZ2_bzCompress</computeroutput>.</para> + +<para>Instead, the calling program passes +<computeroutput>BZ_FINISH</computeroutput> as an action to +<computeroutput>BZ2_bzCompress</computeroutput>. This changes +the stream's state to FINISHING. Any remaining input (ie, +<computeroutput>next_in[0 .. avail_in-1]</computeroutput>) is +compressed and transferred to the output buffer. To do this, +<computeroutput>BZ2_bzCompress</computeroutput> must be called +repeatedly until all the output has been consumed. At that +point, <computeroutput>BZ2_bzCompress</computeroutput> returns +<computeroutput>BZ_STREAM_END</computeroutput>, and the stream's +state is set back to IDLE. +<computeroutput>BZ2_bzCompressEnd</computeroutput> should then be +called.</para> + +<para>Just to make sure the calling program does not cheat, the +library makes a note of <computeroutput>avail_in</computeroutput> +at the time of the first call to +<computeroutput>BZ2_bzCompress</computeroutput> which has +<computeroutput>BZ_FINISH</computeroutput> as an action (ie, at +the time the program has announced its intention to not supply +any more input). By comparing this value with that of +<computeroutput>avail_in</computeroutput> over subsequent calls +to <computeroutput>BZ2_bzCompress</computeroutput>, the library +can detect any attempts to slip in more data to compress. Any +calls for which this is detected will return +<computeroutput>BZ_SEQUENCE_ERROR</computeroutput>. This +indicates a programming mistake which should be corrected.</para> + +<para>Instead of asking to finish, the calling program may ask +<computeroutput>BZ2_bzCompress</computeroutput> to take all the +remaining input, compress it and terminate the current +(Burrows-Wheeler) compression block. This could be useful for +error control purposes. The mechanism is analogous to that for +finishing: call <computeroutput>BZ2_bzCompress</computeroutput> +with an action of <computeroutput>BZ_FLUSH</computeroutput>, +remove output data, and persist with the +<computeroutput>BZ_FLUSH</computeroutput> action until the value +<computeroutput>BZ_RUN</computeroutput> is returned. As with +finishing, <computeroutput>BZ2_bzCompress</computeroutput> +detects any attempt to provide more input data once the flush has +begun.</para> + +<para>Once the flush is complete, the stream returns to the +normal RUNNING state.</para> + +<para>This all sounds pretty complex, but isn't really. Here's a +table which shows which actions are allowable in each state, what +action will be taken, what the next state is, and what the +non-error return values are. Note that you can't explicitly ask +what state the stream is in, but nor do you need to -- it can be +inferred from the values returned by +<computeroutput>BZ2_bzCompress</computeroutput>.</para> + +<programlisting> +IDLE/any + Illegal. IDLE state only exists after BZ2_bzCompressEnd or + before BZ2_bzCompressInit. + Return value = BZ_SEQUENCE_ERROR + +RUNNING/BZ_RUN + Compress from next_in to next_out as much as possible. + Next state = RUNNING + Return value = BZ_RUN_OK + +RUNNING/BZ_FLUSH + Remember current value of next_in. Compress from next_in + to next_out as much as possible, but do not accept any more input. + Next state = FLUSHING + Return value = BZ_FLUSH_OK + +RUNNING/BZ_FINISH + Remember current value of next_in. Compress from next_in + to next_out as much as possible, but do not accept any more input. + Next state = FINISHING + Return value = BZ_FINISH_OK + +FLUSHING/BZ_FLUSH + Compress from next_in to next_out as much as possible, + but do not accept any more input. + If all the existing input has been used up and all compressed + output has been removed + Next state = RUNNING; Return value = BZ_RUN_OK + else + Next state = FLUSHING; Return value = BZ_FLUSH_OK + +FLUSHING/other + Illegal. + Return value = BZ_SEQUENCE_ERROR + +FINISHING/BZ_FINISH + Compress from next_in to next_out as much as possible, + but to not accept any more input. + If all the existing input has been used up and all compressed + output has been removed + Next state = IDLE; Return value = BZ_STREAM_END + else + Next state = FINISHING; Return value = BZ_FINISH_OK + +FINISHING/other + Illegal. + Return value = BZ_SEQUENCE_ERROR +</programlisting> + + +<para>That still looks complicated? Well, fair enough. The +usual sequence of calls for compressing a load of data is:</para> + +<orderedlist> + + <listitem><para>Get started with + <computeroutput>BZ2_bzCompressInit</computeroutput>.</para></listitem> + + <listitem><para>Shovel data in and shlurp out its compressed form + using zero or more calls of + <computeroutput>BZ2_bzCompress</computeroutput> with action = + <computeroutput>BZ_RUN</computeroutput>.</para></listitem> + + <listitem><para>Finish up. Repeatedly call + <computeroutput>BZ2_bzCompress</computeroutput> with action = + <computeroutput>BZ_FINISH</computeroutput>, copying out the + compressed output, until + <computeroutput>BZ_STREAM_END</computeroutput> is + returned.</para></listitem> <listitem><para>Close up and go home. Call + <computeroutput>BZ2_bzCompressEnd</computeroutput>.</para></listitem> + +</orderedlist> + +<para>If the data you want to compress fits into your input +buffer all at once, you can skip the calls of +<computeroutput>BZ2_bzCompress ( ..., BZ_RUN )</computeroutput> +and just do the <computeroutput>BZ2_bzCompress ( ..., BZ_FINISH +)</computeroutput> calls.</para> + +<para>All required memory is allocated by +<computeroutput>BZ2_bzCompressInit</computeroutput>. The +compression library can accept any data at all (obviously). So +you shouldn't get any error return values from the +<computeroutput>BZ2_bzCompress</computeroutput> calls. If you +do, they will be +<computeroutput>BZ_SEQUENCE_ERROR</computeroutput>, and indicate +a bug in your programming.</para> + +<para>Trivial other possible return values:</para> + +<programlisting> +BZ_PARAM_ERROR + if strm is NULL, or strm->s is NULL +</programlisting> + +</sect2> + + +<sect2 id="bzCompress-end" xreflabel="BZ2_bzCompressEnd"> +<title><computeroutput>BZ2_bzCompressEnd</computeroutput></title> + +<programlisting> +int BZ2_bzCompressEnd ( bz_stream *strm ); +</programlisting> + +<para>Releases all memory associated with a compression +stream.</para> + +<para>Possible return values:</para> + +<programlisting> +BZ_PARAM_ERROR if strm is NULL or strm->s is NULL +BZ_OK otherwise +</programlisting> + +</sect2> + + +<sect2 id="bzDecompress-init" xreflabel="BZ2_bzDecompressInit"> +<title><computeroutput>BZ2_bzDecompressInit</computeroutput></title> + +<programlisting> +int BZ2_bzDecompressInit ( bz_stream *strm, int verbosity, int small ); +</programlisting> + +<para>Prepares for decompression. As with +<computeroutput>BZ2_bzCompressInit</computeroutput>, a +<computeroutput>bz_stream</computeroutput> record should be +allocated and initialised before the call. Fields +<computeroutput>bzalloc</computeroutput>, +<computeroutput>bzfree</computeroutput> and +<computeroutput>opaque</computeroutput> should be set if a custom +memory allocator is required, or made +<computeroutput>NULL</computeroutput> for the normal +<computeroutput>malloc</computeroutput> / +<computeroutput>free</computeroutput> routines. Upon return, the +internal state will have been initialised, and +<computeroutput>total_in</computeroutput> and +<computeroutput>total_out</computeroutput> will be zero.</para> + +<para>For the meaning of parameter +<computeroutput>verbosity</computeroutput>, see +<computeroutput>BZ2_bzCompressInit</computeroutput>.</para> + +<para>If <computeroutput>small</computeroutput> is nonzero, the +library will use an alternative decompression algorithm which +uses less memory but at the cost of decompressing more slowly +(roughly speaking, half the speed, but the maximum memory +requirement drops to around 2300k). See <xref linkend="using"/> +for more information on memory management.</para> + +<para>Note that the amount of memory needed to decompress a +stream cannot be determined until the stream's header has been +read, so even if +<computeroutput>BZ2_bzDecompressInit</computeroutput> succeeds, a +subsequent <computeroutput>BZ2_bzDecompress</computeroutput> +could fail with +<computeroutput>BZ_MEM_ERROR</computeroutput>.</para> + +<para>Possible return values:</para> + +<programlisting> +BZ_CONFIG_ERROR + if the library has been mis-compiled +BZ_PARAM_ERROR + if ( small != 0 && small != 1 ) + or (verbosity <; 0 || verbosity > 4) +BZ_MEM_ERROR + if insufficient memory is available +</programlisting> + +<para>Allowable next actions:</para> + +<programlisting> +BZ2_bzDecompress + if BZ_OK was returned + no specific action required in case of error +</programlisting> + +</sect2> + + +<sect2 id="bzDecompress" xreflabel="BZ2_bzDecompress"> +<title><computeroutput>BZ2_bzDecompress</computeroutput></title> + +<programlisting> +int BZ2_bzDecompress ( bz_stream *strm ); +</programlisting> + +<para>Provides more input and/out output buffer space for the +library. The caller maintains input and output buffers, and uses +<computeroutput>BZ2_bzDecompress</computeroutput> to transfer +data between them.</para> + +<para>Before each call to +<computeroutput>BZ2_bzDecompress</computeroutput>, +<computeroutput>next_in</computeroutput> should point at the +compressed data, and <computeroutput>avail_in</computeroutput> +should indicate how many bytes the library may read. +<computeroutput>BZ2_bzDecompress</computeroutput> updates +<computeroutput>next_in</computeroutput>, +<computeroutput>avail_in</computeroutput> and +<computeroutput>total_in</computeroutput> to reflect the number +of bytes it has read.</para> + +<para>Similarly, <computeroutput>next_out</computeroutput> should +point to a buffer in which the uncompressed output is to be +placed, with <computeroutput>avail_out</computeroutput> +indicating how much output space is available. +<computeroutput>BZ2_bzCompress</computeroutput> updates +<computeroutput>next_out</computeroutput>, +<computeroutput>avail_out</computeroutput> and +<computeroutput>total_out</computeroutput> to reflect the number +of bytes output.</para> + +<para>You may provide and remove as little or as much data as you +like on each call of +<computeroutput>BZ2_bzDecompress</computeroutput>. In the limit, +it is acceptable to supply and remove data one byte at a time, +although this would be terribly inefficient. You should always +ensure that at least one byte of output space is available at +each call.</para> + +<para>Use of <computeroutput>BZ2_bzDecompress</computeroutput> is +simpler than +<computeroutput>BZ2_bzCompress</computeroutput>.</para> + +<para>You should provide input and remove output as described +above, and repeatedly call +<computeroutput>BZ2_bzDecompress</computeroutput> until +<computeroutput>BZ_STREAM_END</computeroutput> is returned. +Appearance of <computeroutput>BZ_STREAM_END</computeroutput> +denotes that <computeroutput>BZ2_bzDecompress</computeroutput> +has detected the logical end of the compressed stream. +<computeroutput>BZ2_bzDecompress</computeroutput> will not +produce <computeroutput>BZ_STREAM_END</computeroutput> until all +output data has been placed into the output buffer, so once +<computeroutput>BZ_STREAM_END</computeroutput> appears, you are +guaranteed to have available all the decompressed output, and +<computeroutput>BZ2_bzDecompressEnd</computeroutput> can safely +be called.</para> + +<para>If case of an error return value, you should call +<computeroutput>BZ2_bzDecompressEnd</computeroutput> to clean up +and release memory.</para> + +<para>Possible return values:</para> + +<programlisting> +BZ_PARAM_ERROR + if strm is NULL or strm->s is NULL + or strm->avail_out < 1 +BZ_DATA_ERROR + if a data integrity error is detected in the compressed stream +BZ_DATA_ERROR_MAGIC + if the compressed stream doesn't begin with the right magic bytes +BZ_MEM_ERROR + if there wasn't enough memory available +BZ_STREAM_END + if the logical end of the data stream was detected and all + output in has been consumed, eg s-->avail_out > 0 +BZ_OK + otherwise +</programlisting> + +<para>Allowable next actions:</para> + +<programlisting> +BZ2_bzDecompress + if BZ_OK was returned +BZ2_bzDecompressEnd + otherwise +</programlisting> + +</sect2> + + +<sect2 id="bzDecompress-end" xreflabel="BZ2_bzDecompressEnd"> +<title><computeroutput>BZ2_bzDecompressEnd</computeroutput></title> + +<programlisting> +int BZ2_bzDecompressEnd ( bz_stream *strm ); +</programlisting> + +<para>Releases all memory associated with a decompression +stream.</para> + +<para>Possible return values:</para> + +<programlisting> +BZ_PARAM_ERROR + if strm is NULL or strm->s is NULL +BZ_OK + otherwise +</programlisting> + +<para>Allowable next actions:</para> + +<programlisting> + None. +</programlisting> + +</sect2> + +</sect1> + + +<sect1 id="hl-interface" xreflabel="High-level interface"> +<title>High-level interface</title> + +<para>This interface provides functions for reading and writing +<computeroutput>bzip2</computeroutput> format files. First, some +general points.</para> + +<itemizedlist mark='bullet'> + + <listitem><para>All of the functions take an + <computeroutput>int*</computeroutput> first argument, + <computeroutput>bzerror</computeroutput>. After each call, + <computeroutput>bzerror</computeroutput> should be consulted + first to determine the outcome of the call. If + <computeroutput>bzerror</computeroutput> is + <computeroutput>BZ_OK</computeroutput>, the call completed + successfully, and only then should the return value of the + function (if any) be consulted. If + <computeroutput>bzerror</computeroutput> is + <computeroutput>BZ_IO_ERROR</computeroutput>, there was an + error reading/writing the underlying compressed file, and you + should then consult <computeroutput>errno</computeroutput> / + <computeroutput>perror</computeroutput> to determine the cause + of the difficulty. <computeroutput>bzerror</computeroutput> + may also be set to various other values; precise details are + given on a per-function basis below.</para></listitem> + + <listitem><para>If <computeroutput>bzerror</computeroutput> indicates + an error (ie, anything except + <computeroutput>BZ_OK</computeroutput> and + <computeroutput>BZ_STREAM_END</computeroutput>), you should + immediately call + <computeroutput>BZ2_bzReadClose</computeroutput> (or + <computeroutput>BZ2_bzWriteClose</computeroutput>, depending on + whether you are attempting to read or to write) to free up all + resources associated with the stream. Once an error has been + indicated, behaviour of all calls except + <computeroutput>BZ2_bzReadClose</computeroutput> + (<computeroutput>BZ2_bzWriteClose</computeroutput>) is + undefined. The implication is that (1) + <computeroutput>bzerror</computeroutput> should be checked + after each call, and (2) if + <computeroutput>bzerror</computeroutput> indicates an error, + <computeroutput>BZ2_bzReadClose</computeroutput> + (<computeroutput>BZ2_bzWriteClose</computeroutput>) should then + be called to clean up.</para></listitem> + + <listitem><para>The <computeroutput>FILE*</computeroutput> arguments + passed to <computeroutput>BZ2_bzReadOpen</computeroutput> / + <computeroutput>BZ2_bzWriteOpen</computeroutput> should be set + to binary mode. Most Unix systems will do this by default, but + other platforms, including Windows and Mac, will not. If you + omit this, you may encounter problems when moving code to new + platforms.</para></listitem> + + <listitem><para>Memory allocation requests are handled by + <computeroutput>malloc</computeroutput> / + <computeroutput>free</computeroutput>. At present there is no + facility for user-defined memory allocators in the file I/O + functions (could easily be added, though).</para></listitem> + +</itemizedlist> + + + +<sect2 id="bzreadopen" xreflabel="BZ2_bzReadOpen"> +<title><computeroutput>BZ2_bzReadOpen</computeroutput></title> + +<programlisting> +typedef void BZFILE; + +BZFILE *BZ2_bzReadOpen( int *bzerror, FILE *f, + int verbosity, int small, + void *unused, int nUnused ); +</programlisting> + +<para>Prepare to read compressed data from file handle +<computeroutput>f</computeroutput>. +<computeroutput>f</computeroutput> should refer to a file which +has been opened for reading, and for which the error indicator +(<computeroutput>ferror(f)</computeroutput>)is not set. If +<computeroutput>small</computeroutput> is 1, the library will try +to decompress using less memory, at the expense of speed.</para> + +<para>For reasons explained below, +<computeroutput>BZ2_bzRead</computeroutput> will decompress the +<computeroutput>nUnused</computeroutput> bytes starting at +<computeroutput>unused</computeroutput>, before starting to read +from the file <computeroutput>f</computeroutput>. At most +<computeroutput>BZ_MAX_UNUSED</computeroutput> bytes may be +supplied like this. If this facility is not required, you should +pass <computeroutput>NULL</computeroutput> and +<computeroutput>0</computeroutput> for +<computeroutput>unused</computeroutput> and +n<computeroutput>Unused</computeroutput> respectively.</para> + +<para>For the meaning of parameters +<computeroutput>small</computeroutput> and +<computeroutput>verbosity</computeroutput>, see +<computeroutput>BZ2_bzDecompressInit</computeroutput>.</para> + +<para>The amount of memory needed to decompress a file cannot be +determined until the file's header has been read. So it is +possible that <computeroutput>BZ2_bzReadOpen</computeroutput> +returns <computeroutput>BZ_OK</computeroutput> but a subsequent +call of <computeroutput>BZ2_bzRead</computeroutput> will return +<computeroutput>BZ_MEM_ERROR</computeroutput>.</para> + +<para>Possible assignments to +<computeroutput>bzerror</computeroutput>:</para> + +<programlisting> +BZ_CONFIG_ERROR + if the library has been mis-compiled +BZ_PARAM_ERROR + if f is NULL + or small is neither 0 nor 1 + or ( unused == NULL && nUnused != 0 ) + or ( unused != NULL && !(0 <= nUnused <= BZ_MAX_UNUSED) ) +BZ_IO_ERROR + if ferror(f) is nonzero +BZ_MEM_ERROR + if insufficient memory is available +BZ_OK + otherwise. +</programlisting> + +<para>Possible return values:</para> + +<programlisting> +Pointer to an abstract BZFILE + if bzerror is BZ_OK +NULL + otherwise +</programlisting> + +<para>Allowable next actions:</para> + +<programlisting> +BZ2_bzRead + if bzerror is BZ_OK +BZ2_bzClose + otherwise +</programlisting> + +</sect2> + + +<sect2 id="bzread" xreflabel="BZ2_bzRead"> +<title><computeroutput>BZ2_bzRead</computeroutput></title> + +<programlisting> +int BZ2_bzRead ( int *bzerror, BZFILE *b, void *buf, int len ); +</programlisting> + +<para>Reads up to <computeroutput>len</computeroutput> +(uncompressed) bytes from the compressed file +<computeroutput>b</computeroutput> into the buffer +<computeroutput>buf</computeroutput>. If the read was +successful, <computeroutput>bzerror</computeroutput> is set to +<computeroutput>BZ_OK</computeroutput> and the number of bytes +read is returned. If the logical end-of-stream was detected, +<computeroutput>bzerror</computeroutput> will be set to +<computeroutput>BZ_STREAM_END</computeroutput>, and the number of +bytes read is returned. All other +<computeroutput>bzerror</computeroutput> values denote an +error.</para> + +<para><computeroutput>BZ2_bzRead</computeroutput> will supply +<computeroutput>len</computeroutput> bytes, unless the logical +stream end is detected or an error occurs. Because of this, it +is possible to detect the stream end by observing when the number +of bytes returned is less than the number requested. +Nevertheless, this is regarded as inadvisable; you should instead +check <computeroutput>bzerror</computeroutput> after every call +and watch out for +<computeroutput>BZ_STREAM_END</computeroutput>.</para> + +<para>Internally, <computeroutput>BZ2_bzRead</computeroutput> +copies data from the compressed file in chunks of size +<computeroutput>BZ_MAX_UNUSED</computeroutput> bytes before +decompressing it. If the file contains more bytes than strictly +needed to reach the logical end-of-stream, +<computeroutput>BZ2_bzRead</computeroutput> will almost certainly +read some of the trailing data before signalling +<computeroutput>BZ_SEQUENCE_END</computeroutput>. To collect the +read but unused data once +<computeroutput>BZ_SEQUENCE_END</computeroutput> has appeared, +call <computeroutput>BZ2_bzReadGetUnused</computeroutput> +immediately before +<computeroutput>BZ2_bzReadClose</computeroutput>.</para> + +<para>Possible assignments to +<computeroutput>bzerror</computeroutput>:</para> + +<programlisting> +BZ_PARAM_ERROR + if b is NULL or buf is NULL or len < 0 +BZ_SEQUENCE_ERROR + if b was opened with BZ2_bzWriteOpen +BZ_IO_ERROR + if there is an error reading from the compressed file +BZ_UNEXPECTED_EOF + if the compressed file ended before + the logical end-of-stream was detected +BZ_DATA_ERROR + if a data integrity error was detected in the compressed stream +BZ_DATA_ERROR_MAGIC + if the stream does not begin with the requisite header bytes + (ie, is not a bzip2 data file). This is really + a special case of BZ_DATA_ERROR. +BZ_MEM_ERROR + if insufficient memory was available +BZ_STREAM_END + if the logical end of stream was detected. +BZ_OK + otherwise. +</programlisting> + +<para>Possible return values:</para> + +<programlisting> +number of bytes read + if bzerror is BZ_OK or BZ_STREAM_END +undefined + otherwise +</programlisting> + +<para>Allowable next actions:</para> + +<programlisting> +collect data from buf, then BZ2_bzRead or BZ2_bzReadClose + if bzerror is BZ_OK +collect data from buf, then BZ2_bzReadClose or BZ2_bzReadGetUnused + if bzerror is BZ_SEQUENCE_END +BZ2_bzReadClose + otherwise +</programlisting> + +</sect2> + + +<sect2 id="bzreadgetunused" xreflabel="BZ2_bzReadGetUnused"> +<title><computeroutput>BZ2_bzReadGetUnused</computeroutput></title> + +<programlisting> +void BZ2_bzReadGetUnused( int* bzerror, BZFILE *b, + void** unused, int* nUnused ); +</programlisting> + +<para>Returns data which was read from the compressed file but +was not needed to get to the logical end-of-stream. +<computeroutput>*unused</computeroutput> is set to the address of +the data, and <computeroutput>*nUnused</computeroutput> to the +number of bytes. <computeroutput>*nUnused</computeroutput> will +be set to a value between <computeroutput>0</computeroutput> and +<computeroutput>BZ_MAX_UNUSED</computeroutput> inclusive.</para> + +<para>This function may only be called once +<computeroutput>BZ2_bzRead</computeroutput> has signalled +<computeroutput>BZ_STREAM_END</computeroutput> but before +<computeroutput>BZ2_bzReadClose</computeroutput>.</para> + +<para>Possible assignments to +<computeroutput>bzerror</computeroutput>:</para> + +<programlisting> +BZ_PARAM_ERROR + if b is NULL + or unused is NULL or nUnused is NULL +BZ_SEQUENCE_ERROR + if BZ_STREAM_END has not been signalled + or if b was opened with BZ2_bzWriteOpen +BZ_OK + otherwise +</programlisting> + +<para>Allowable next actions:</para> + +<programlisting> +BZ2_bzReadClose +</programlisting> + +</sect2> + + +<sect2 id="bzreadclose" xreflabel="BZ2_bzReadClose"> +<title><computeroutput>BZ2_bzReadClose</computeroutput></title> + +<programlisting> +void BZ2_bzReadClose ( int *bzerror, BZFILE *b ); +</programlisting> + +<para>Releases all memory pertaining to the compressed file +<computeroutput>b</computeroutput>. +<computeroutput>BZ2_bzReadClose</computeroutput> does not call +<computeroutput>fclose</computeroutput> on the underlying file +handle, so you should do that yourself if appropriate. +<computeroutput>BZ2_bzReadClose</computeroutput> should be called +to clean up after all error situations.</para> + +<para>Possible assignments to +<computeroutput>bzerror</computeroutput>:</para> + +<programlisting> +BZ_SEQUENCE_ERROR + if b was opened with BZ2_bzOpenWrite +BZ_OK + otherwise +</programlisting> + +<para>Allowable next actions:</para> + +<programlisting> +none +</programlisting> + +</sect2> + + +<sect2 id="bzwriteopen" xreflabel="BZ2_bzWriteOpen"> +<title><computeroutput>BZ2_bzWriteOpen</computeroutput></title> + +<programlisting> +BZFILE *BZ2_bzWriteOpen( int *bzerror, FILE *f, + int blockSize100k, int verbosity, + int workFactor ); +</programlisting> + +<para>Prepare to write compressed data to file handle +<computeroutput>f</computeroutput>. +<computeroutput>f</computeroutput> should refer to a file which +has been opened for writing, and for which the error indicator +(<computeroutput>ferror(f)</computeroutput>)is not set.</para> + +<para>For the meaning of parameters +<computeroutput>blockSize100k</computeroutput>, +<computeroutput>verbosity</computeroutput> and +<computeroutput>workFactor</computeroutput>, see +<computeroutput>BZ2_bzCompressInit</computeroutput>.</para> + +<para>All required memory is allocated at this stage, so if the +call completes successfully, +<computeroutput>BZ_MEM_ERROR</computeroutput> cannot be signalled +by a subsequent call to +<computeroutput>BZ2_bzWrite</computeroutput>.</para> + +<para>Possible assignments to +<computeroutput>bzerror</computeroutput>:</para> + +<programlisting> +BZ_CONFIG_ERROR + if the library has been mis-compiled +BZ_PARAM_ERROR + if f is NULL + or blockSize100k < 1 or blockSize100k > 9 +BZ_IO_ERROR + if ferror(f) is nonzero +BZ_MEM_ERROR + if insufficient memory is available +BZ_OK + otherwise +</programlisting> + +<para>Possible return values:</para> + +<programlisting> +Pointer to an abstract BZFILE + if bzerror is BZ_OK +NULL + otherwise +</programlisting> + +<para>Allowable next actions:</para> + +<programlisting> +BZ2_bzWrite + if bzerror is BZ_OK + (you could go directly to BZ2_bzWriteClose, but this would be pretty pointless) +BZ2_bzWriteClose + otherwise +</programlisting> + +</sect2> + + +<sect2 id="bzwrite" xreflabel="BZ2_bzWrite"> +<title><computeroutput>BZ2_bzWrite</computeroutput></title> + +<programlisting> +void BZ2_bzWrite ( int *bzerror, BZFILE *b, void *buf, int len ); +</programlisting> + +<para>Absorbs <computeroutput>len</computeroutput> bytes from the +buffer <computeroutput>buf</computeroutput>, eventually to be +compressed and written to the file.</para> + +<para>Possible assignments to +<computeroutput>bzerror</computeroutput>:</para> + +<programlisting> +BZ_PARAM_ERROR + if b is NULL or buf is NULL or len < 0 +BZ_SEQUENCE_ERROR + if b was opened with BZ2_bzReadOpen +BZ_IO_ERROR + if there is an error writing the compressed file. +BZ_OK + otherwise +</programlisting> + +</sect2> + + +<sect2 id="bzwriteclose" xreflabel="BZ2_bzWriteClose"> +<title><computeroutput>BZ2_bzWriteClose</computeroutput></title> + +<programlisting> +void BZ2_bzWriteClose( int *bzerror, BZFILE* f, + int abandon, + unsigned int* nbytes_in, + unsigned int* nbytes_out ); + +void BZ2_bzWriteClose64( int *bzerror, BZFILE* f, + int abandon, + unsigned int* nbytes_in_lo32, + unsigned int* nbytes_in_hi32, + unsigned int* nbytes_out_lo32, + unsigned int* nbytes_out_hi32 ); +</programlisting> + +<para>Compresses and flushes to the compressed file all data so +far supplied by <computeroutput>BZ2_bzWrite</computeroutput>. +The logical end-of-stream markers are also written, so subsequent +calls to <computeroutput>BZ2_bzWrite</computeroutput> are +illegal. All memory associated with the compressed file +<computeroutput>b</computeroutput> is released. +<computeroutput>fflush</computeroutput> is called on the +compressed file, but it is not +<computeroutput>fclose</computeroutput>'d.</para> + +<para>If <computeroutput>BZ2_bzWriteClose</computeroutput> is +called to clean up after an error, the only action is to release +the memory. The library records the error codes issued by +previous calls, so this situation will be detected automatically. +There is no attempt to complete the compression operation, nor to +<computeroutput>fflush</computeroutput> the compressed file. You +can force this behaviour to happen even in the case of no error, +by passing a nonzero value to +<computeroutput>abandon</computeroutput>.</para> + +<para>If <computeroutput>nbytes_in</computeroutput> is non-null, +<computeroutput>*nbytes_in</computeroutput> will be set to be the +total volume of uncompressed data handled. Similarly, +<computeroutput>nbytes_out</computeroutput> will be set to the +total volume of compressed data written. For compatibility with +older versions of the library, +<computeroutput>BZ2_bzWriteClose</computeroutput> only yields the +lower 32 bits of these counts. Use +<computeroutput>BZ2_bzWriteClose64</computeroutput> if you want +the full 64 bit counts. These two functions are otherwise +absolutely identical.</para> + +<para>Possible assignments to +<computeroutput>bzerror</computeroutput>:</para> + +<programlisting> +BZ_SEQUENCE_ERROR + if b was opened with BZ2_bzReadOpen +BZ_IO_ERROR + if there is an error writing the compressed file +BZ_OK + otherwise +</programlisting> + +</sect2> + + +<sect2 id="embed" xreflabel="Handling embedded compressed data streams"> +<title>Handling embedded compressed data streams</title> + +<para>The high-level library facilitates use of +<computeroutput>bzip2</computeroutput> data streams which form +some part of a surrounding, larger data stream.</para> + +<itemizedlist mark='bullet'> + + <listitem><para>For writing, the library takes an open file handle, + writes compressed data to it, + <computeroutput>fflush</computeroutput>es it but does not + <computeroutput>fclose</computeroutput> it. The calling + application can write its own data before and after the + compressed data stream, using that same file handle.</para></listitem> + + <listitem><para>Reading is more complex, and the facilities are not as + general as they could be since generality is hard to reconcile + with efficiency. <computeroutput>BZ2_bzRead</computeroutput> + reads from the compressed file in blocks of size + <computeroutput>BZ_MAX_UNUSED</computeroutput> bytes, and in + doing so probably will overshoot the logical end of compressed + stream. To recover this data once decompression has ended, + call <computeroutput>BZ2_bzReadGetUnused</computeroutput> after + the last call of <computeroutput>BZ2_bzRead</computeroutput> + (the one returning + <computeroutput>BZ_STREAM_END</computeroutput>) but before + calling + <computeroutput>BZ2_bzReadClose</computeroutput>.</para></listitem> + +</itemizedlist> + +<para>This mechanism makes it easy to decompress multiple +<computeroutput>bzip2</computeroutput> streams placed end-to-end. +As the end of one stream, when +<computeroutput>BZ2_bzRead</computeroutput> returns +<computeroutput>BZ_STREAM_END</computeroutput>, call +<computeroutput>BZ2_bzReadGetUnused</computeroutput> to collect +the unused data (copy it into your own buffer somewhere). That +data forms the start of the next compressed stream. To start +uncompressing that next stream, call +<computeroutput>BZ2_bzReadOpen</computeroutput> again, feeding in +the unused data via the <computeroutput>unused</computeroutput> / +<computeroutput>nUnused</computeroutput> parameters. Keep doing +this until <computeroutput>BZ_STREAM_END</computeroutput> return +coincides with the physical end of file +(<computeroutput>feof(f)</computeroutput>). In this situation +<computeroutput>BZ2_bzReadGetUnused</computeroutput> will of +course return no data.</para> + +<para>This should give some feel for how the high-level interface +can be used. If you require extra flexibility, you'll have to +bite the bullet and get to grips with the low-level +interface.</para> + +</sect2> + + +<sect2 id="std-rdwr" xreflabel="Standard file-reading/writing code"> +<title>Standard file-reading/writing code</title> + +<para>Here's how you'd write data to a compressed file:</para> + +<programlisting> +FILE* f; +BZFILE* b; +int nBuf; +char buf[ /* whatever size you like */ ]; +int bzerror; +int nWritten; + +f = fopen ( "myfile.bz2", "w" ); +if ( !f ) { + /* handle error */ +} +b = BZ2_bzWriteOpen( &bzerror, f, 9 ); +if (bzerror != BZ_OK) { + BZ2_bzWriteClose ( b ); + /* handle error */ +} + +while ( /* condition */ ) { + /* get data to write into buf, and set nBuf appropriately */ + nWritten = BZ2_bzWrite ( &bzerror, b, buf, nBuf ); + if (bzerror == BZ_IO_ERROR) { + BZ2_bzWriteClose ( &bzerror, b ); + /* handle error */ + } +} + +BZ2_bzWriteClose( &bzerror, b ); +if (bzerror == BZ_IO_ERROR) { + /* handle error */ +} +</programlisting> + +<para>And to read from a compressed file:</para> + +<programlisting> +FILE* f; +BZFILE* b; +int nBuf; +char buf[ /* whatever size you like */ ]; +int bzerror; +int nWritten; + +f = fopen ( "myfile.bz2", "r" ); +if ( !f ) { + /* handle error */ +} +b = BZ2_bzReadOpen ( &bzerror, f, 0, NULL, 0 ); +if ( bzerror != BZ_OK ) { + BZ2_bzReadClose ( &bzerror, b ); + /* handle error */ +} + +bzerror = BZ_OK; +while ( bzerror == BZ_OK && /* arbitrary other conditions */) { + nBuf = BZ2_bzRead ( &bzerror, b, buf, /* size of buf */ ); + if ( bzerror == BZ_OK ) { + /* do something with buf[0 .. nBuf-1] */ + } +} +if ( bzerror != BZ_STREAM_END ) { + BZ2_bzReadClose ( &bzerror, b ); + /* handle error */ +} else { + BZ2_bzReadClose ( &bzerror, b ); +} +</programlisting> + +</sect2> + +</sect1> + + +<sect1 id="util-fns" xreflabel="Utility functions"> +<title>Utility functions</title> + + +<sect2 id="bzbufftobuffcompress" xreflabel="BZ2_bzBuffToBuffCompress"> +<title><computeroutput>BZ2_bzBuffToBuffCompress</computeroutput></title> + +<programlisting> +int BZ2_bzBuffToBuffCompress( char* dest, + unsigned int* destLen, + char* source, + unsigned int sourceLen, + int blockSize100k, + int verbosity, + int workFactor ); +</programlisting> + +<para>Attempts to compress the data in <computeroutput>source[0 +.. sourceLen-1]</computeroutput> into the destination buffer, +<computeroutput>dest[0 .. *destLen-1]</computeroutput>. If the +destination buffer is big enough, +<computeroutput>*destLen</computeroutput> is set to the size of +the compressed data, and <computeroutput>BZ_OK</computeroutput> +is returned. If the compressed data won't fit, +<computeroutput>*destLen</computeroutput> is unchanged, and +<computeroutput>BZ_OUTBUFF_FULL</computeroutput> is +returned.</para> + +<para>Compression in this manner is a one-shot event, done with a +single call to this function. The resulting compressed data is a +complete <computeroutput>bzip2</computeroutput> format data +stream. There is no mechanism for making additional calls to +provide extra input data. If you want that kind of mechanism, +use the low-level interface.</para> + +<para>For the meaning of parameters +<computeroutput>blockSize100k</computeroutput>, +<computeroutput>verbosity</computeroutput> and +<computeroutput>workFactor</computeroutput>, see +<computeroutput>BZ2_bzCompressInit</computeroutput>.</para> + +<para>To guarantee that the compressed data will fit in its +buffer, allocate an output buffer of size 1% larger than the +uncompressed data, plus six hundred extra bytes.</para> + +<para><computeroutput>BZ2_bzBuffToBuffDecompress</computeroutput> +will not write data at or beyond +<computeroutput>dest[*destLen]</computeroutput>, even in case of +buffer overflow.</para> + +<para>Possible return values:</para> + +<programlisting> +BZ_CONFIG_ERROR + if the library has been mis-compiled +BZ_PARAM_ERROR + if dest is NULL or destLen is NULL + or blockSize100k < 1 or blockSize100k > 9 + or verbosity < 0 or verbosity > 4 + or workFactor < 0 or workFactor > 250 +BZ_MEM_ERROR + if insufficient memory is available +BZ_OUTBUFF_FULL + if the size of the compressed data exceeds *destLen +BZ_OK + otherwise +</programlisting> + +</sect2> + + +<sect2 id="bzbufftobuffdecompress" xreflabel="BZ2_bzBuffToBuffDecompress"> +<title><computeroutput>BZ2_bzBuffToBuffDecompress</computeroutput></title> + +<programlisting> +int BZ2_bzBuffToBuffDecompress( char* dest, + unsigned int* destLen, + char* source, + unsigned int sourceLen, + int small, + int verbosity ); +</programlisting> + +<para>Attempts to decompress the data in <computeroutput>source[0 +.. sourceLen-1]</computeroutput> into the destination buffer, +<computeroutput>dest[0 .. *destLen-1]</computeroutput>. If the +destination buffer is big enough, +<computeroutput>*destLen</computeroutput> is set to the size of +the uncompressed data, and <computeroutput>BZ_OK</computeroutput> +is returned. If the compressed data won't fit, +<computeroutput>*destLen</computeroutput> is unchanged, and +<computeroutput>BZ_OUTBUFF_FULL</computeroutput> is +returned.</para> + +<para><computeroutput>source</computeroutput> is assumed to hold +a complete <computeroutput>bzip2</computeroutput> format data +stream. +<computeroutput>BZ2_bzBuffToBuffDecompress</computeroutput> tries +to decompress the entirety of the stream into the output +buffer.</para> + +<para>For the meaning of parameters +<computeroutput>small</computeroutput> and +<computeroutput>verbosity</computeroutput>, see +<computeroutput>BZ2_bzDecompressInit</computeroutput>.</para> + +<para>Because the compression ratio of the compressed data cannot +be known in advance, there is no easy way to guarantee that the +output buffer will be big enough. You may of course make +arrangements in your code to record the size of the uncompressed +data, but such a mechanism is beyond the scope of this +library.</para> + +<para><computeroutput>BZ2_bzBuffToBuffDecompress</computeroutput> +will not write data at or beyond +<computeroutput>dest[*destLen]</computeroutput>, even in case of +buffer overflow.</para> + +<para>Possible return values:</para> + +<programlisting> +BZ_CONFIG_ERROR + if the library has been mis-compiled +BZ_PARAM_ERROR + if dest is NULL or destLen is NULL + or small != 0 && small != 1 + or verbosity < 0 or verbosity > 4 +BZ_MEM_ERROR + if insufficient memory is available +BZ_OUTBUFF_FULL + if the size of the compressed data exceeds *destLen +BZ_DATA_ERROR + if a data integrity error was detected in the compressed data +BZ_DATA_ERROR_MAGIC + if the compressed data doesn't begin with the right magic bytes +BZ_UNEXPECTED_EOF + if the compressed data ends unexpectedly +BZ_OK + otherwise +</programlisting> + +</sect2> + +</sect1> + + +<sect1 id="zlib-compat" xreflabel="zlib compatibility functions"> +<title><computeroutput>zlib</computeroutput> compatibility functions</title> + +<para>Yoshioka Tsuneo has contributed some functions to give +better <computeroutput>zlib</computeroutput> compatibility. +These functions are <computeroutput>BZ2_bzopen</computeroutput>, +<computeroutput>BZ2_bzread</computeroutput>, +<computeroutput>BZ2_bzwrite</computeroutput>, +<computeroutput>BZ2_bzflush</computeroutput>, +<computeroutput>BZ2_bzclose</computeroutput>, +<computeroutput>BZ2_bzerror</computeroutput> and +<computeroutput>BZ2_bzlibVersion</computeroutput>. These +functions are not (yet) officially part of the library. If they +break, you get to keep all the pieces. Nevertheless, I think +they work ok.</para> + +<programlisting> +typedef void BZFILE; + +const char * BZ2_bzlibVersion ( void ); +</programlisting> + +<para>Returns a string indicating the library version.</para> + +<programlisting> +BZFILE * BZ2_bzopen ( const char *path, const char *mode ); +BZFILE * BZ2_bzdopen ( int fd, const char *mode ); +</programlisting> + +<para>Opens a <computeroutput>.bz2</computeroutput> file for +reading or writing, using either its name or a pre-existing file +descriptor. Analogous to <computeroutput>fopen</computeroutput> +and <computeroutput>fdopen</computeroutput>.</para> + +<programlisting> +int BZ2_bzread ( BZFILE* b, void* buf, int len ); +int BZ2_bzwrite ( BZFILE* b, void* buf, int len ); +</programlisting> + +<para>Reads/writes data from/to a previously opened +<computeroutput>BZFILE</computeroutput>. Analogous to +<computeroutput>fread</computeroutput> and +<computeroutput>fwrite</computeroutput>.</para> + +<programlisting> +int BZ2_bzflush ( BZFILE* b ); +void BZ2_bzclose ( BZFILE* b ); +</programlisting> + +<para>Flushes/closes a <computeroutput>BZFILE</computeroutput>. +<computeroutput>BZ2_bzflush</computeroutput> doesn't actually do +anything. Analogous to <computeroutput>fflush</computeroutput> +and <computeroutput>fclose</computeroutput>.</para> + +<programlisting> +const char * BZ2_bzerror ( BZFILE *b, int *errnum ) +</programlisting> + +<para>Returns a string describing the more recent error status of +<computeroutput>b</computeroutput>, and also sets +<computeroutput>*errnum</computeroutput> to its numerical +value.</para> + +</sect1> + + +<sect1 id="stdio-free" + xreflabel="Using the library in a stdio-free environment"> +<title>Using the library in a <computeroutput>stdio</computeroutput>-free environment</title> + + +<sect2 id="stdio-bye" xreflabel="Getting rid of stdio"> +<title>Getting rid of <computeroutput>stdio</computeroutput></title> + +<para>In a deeply embedded application, you might want to use +just the memory-to-memory functions. You can do this +conveniently by compiling the library with preprocessor symbol +<computeroutput>BZ_NO_STDIO</computeroutput> defined. Doing this +gives you a library containing only the following eight +functions:</para> + +<para><computeroutput>BZ2_bzCompressInit</computeroutput>, +<computeroutput>BZ2_bzCompress</computeroutput>, +<computeroutput>BZ2_bzCompressEnd</computeroutput> +<computeroutput>BZ2_bzDecompressInit</computeroutput>, +<computeroutput>BZ2_bzDecompress</computeroutput>, +<computeroutput>BZ2_bzDecompressEnd</computeroutput> +<computeroutput>BZ2_bzBuffToBuffCompress</computeroutput>, +<computeroutput>BZ2_bzBuffToBuffDecompress</computeroutput></para> + +<para>When compiled like this, all functions will ignore +<computeroutput>verbosity</computeroutput> settings.</para> + +</sect2> + + +<sect2 id="critical-error" xreflabel="Critical error handling"> +<title>Critical error handling</title> + +<para><computeroutput>libbzip2</computeroutput> contains a number +of internal assertion checks which should, needless to say, never +be activated. Nevertheless, if an assertion should fail, +behaviour depends on whether or not the library was compiled with +<computeroutput>BZ_NO_STDIO</computeroutput> set.</para> + +<para>For a normal compile, an assertion failure yields the +message:</para> + +<blockquote> +<para>bzip2/libbzip2: internal error number N.</para> +<para>This is a bug in bzip2/libbzip2, &bz-version; of &bz-date;. +Please report it to me at: &bz-email;. If this happened +when you were using some program which uses libbzip2 as a +component, you should also report this bug to the author(s) +of that program. Please make an effort to report this bug; +timely and accurate bug reports eventually lead to higher +quality software. Thanks. Julian Seward, &bz-date;. +</para></blockquote> + +<para>where <computeroutput>N</computeroutput> is some error code +number. If <computeroutput>N == 1007</computeroutput>, it also +prints some extra text advising the reader that unreliable memory +is often associated with internal error 1007. (This is a +frequently-observed-phenomenon with versions 1.0.0/1.0.1).</para> + +<para><computeroutput>exit(3)</computeroutput> is then +called.</para> + +<para>For a <computeroutput>stdio</computeroutput>-free library, +assertion failures result in a call to a function declared +as:</para> + +<programlisting> +extern void bz_internal_error ( int errcode ); +</programlisting> + +<para>The relevant code is passed as a parameter. You should +supply such a function.</para> + +<para>In either case, once an assertion failure has occurred, any +<computeroutput>bz_stream</computeroutput> records involved can +be regarded as invalid. You should not attempt to resume normal +operation with them.</para> + +<para>You may, of course, change critical error handling to suit +your needs. As I said above, critical errors indicate bugs in +the library and should not occur. All "normal" error situations +are indicated via error return codes from functions, and can be +recovered from.</para> + +</sect2> + +</sect1> + + +<sect1 id="win-dll" xreflabel="Making a Windows DLL"> +<title>Making a Windows DLL</title> + +<para>Everything related to Windows has been contributed by +Yoshioka Tsuneo +(<computeroutput>tsuneo@rr.iij4u.or.jp</computeroutput>), so +you should send your queries to him (but perhaps Cc: me, +<computeroutput>&bz-email;</computeroutput>).</para> + +<para>My vague understanding of what to do is: using Visual C++ +5.0, open the project file +<computeroutput>libbz2.dsp</computeroutput>, and build. That's +all.</para> + +<para>If you can't open the project file for some reason, make a +new one, naming these files: +<computeroutput>blocksort.c</computeroutput>, +<computeroutput>bzlib.c</computeroutput>, +<computeroutput>compress.c</computeroutput>, +<computeroutput>crctable.c</computeroutput>, +<computeroutput>decompress.c</computeroutput>, +<computeroutput>huffman.c</computeroutput>, +<computeroutput>randtable.c</computeroutput> and +<computeroutput>libbz2.def</computeroutput>. You will also need +to name the header files <computeroutput>bzlib.h</computeroutput> +and <computeroutput>bzlib_private.h</computeroutput>.</para> + +<para>If you don't use VC++, you may need to define the +proprocessor symbol +<computeroutput>_WIN32</computeroutput>.</para> + +<para>Finally, <computeroutput>dlltest.c</computeroutput> is a +sample program using the DLL. It has a project file, +<computeroutput>dlltest.dsp</computeroutput>.</para> + +<para>If you just want a makefile for Visual C, have a look at +<computeroutput>makefile.msc</computeroutput>.</para> + +<para>Be aware that if you compile +<computeroutput>bzip2</computeroutput> itself on Win32, you must +set <computeroutput>BZ_UNIX</computeroutput> to 0 and +<computeroutput>BZ_LCCWIN32</computeroutput> to 1, in the file +<computeroutput>bzip2.c</computeroutput>, before compiling. +Otherwise the resulting binary won't work correctly.</para> + +<para>I haven't tried any of this stuff myself, but it all looks +plausible.</para> + +</sect1> + +</chapter> + + + +<chapter id="misc" xreflabel="Miscellanea"> +<title>Miscellanea</title> + +<para>These are just some random thoughts of mine. Your mileage +may vary.</para> + + +<sect1 id="limits" xreflabel="Limitations of the compressed file format"> +<title>Limitations of the compressed file format</title> + +<para><computeroutput>bzip2-1.0.X</computeroutput>, +<computeroutput>0.9.5</computeroutput> and +<computeroutput>0.9.0</computeroutput> use exactly the same file +format as the original version, +<computeroutput>bzip2-0.1</computeroutput>. This decision was +made in the interests of stability. Creating yet another +incompatible compressed file format would create further +confusion and disruption for users.</para> + +<para>Nevertheless, this is not a painless decision. Development +work since the release of +<computeroutput>bzip2-0.1</computeroutput> in August 1997 has +shown complexities in the file format which slow down +decompression and, in retrospect, are unnecessary. These +are:</para> + +<itemizedlist mark='bullet'> + + <listitem><para>The run-length encoder, which is the first of the + compression transformations, is entirely irrelevant. The + original purpose was to protect the sorting algorithm from the + very worst case input: a string of repeated symbols. But + algorithm steps Q6a and Q6b in the original Burrows-Wheeler + technical report (SRC-124) show how repeats can be handled + without difficulty in block sorting.</para></listitem> + + <listitem><para>The randomisation mechanism doesn't really need to be + there. Udi Manber and Gene Myers published a suffix array + construction algorithm a few years back, which can be employed + to sort any block, no matter how repetitive, in O(N log N) + time. Subsequent work by Kunihiko Sadakane has produced a + derivative O(N (log N)^2) algorithm which usually outperforms + the Manber-Myers algorithm.</para> + + <para>I could have changed to Sadakane's algorithm, but I find + it to be slower than <computeroutput>bzip2</computeroutput>'s + existing algorithm for most inputs, and the randomisation + mechanism protects adequately against bad cases. I didn't + think it was a good tradeoff to make. Partly this is due to + the fact that I was not flooded with email complaints about + <computeroutput>bzip2-0.1</computeroutput>'s performance on + repetitive data, so perhaps it isn't a problem for real + inputs.</para> + + <para>Probably the best long-term solution, and the one I have + incorporated into 0.9.5 and above, is to use the existing + sorting algorithm initially, and fall back to a O(N (log N)^2) + algorithm if the standard algorithm gets into + difficulties.</para></listitem> + + <listitem><para>The compressed file format was never designed to be + handled by a library, and I have had to jump though some hoops + to produce an efficient implementation of decompression. It's + a bit hairy. Try passing + <computeroutput>decompress.c</computeroutput> through the C + preprocessor and you'll see what I mean. Much of this + complexity could have been avoided if the compressed size of + each block of data was recorded in the data stream.</para></listitem> + + <listitem><para>An Adler-32 checksum, rather than a CRC32 checksum, + would be faster to compute.</para></listitem> + +</itemizedlist> + +<para>It would be fair to say that the +<computeroutput>bzip2</computeroutput> format was frozen before I +properly and fully understood the performance consequences of +doing so.</para> + +<para>Improvements which I was able to incorporate into 0.9.0, +despite using the same file format, are:</para> + +<itemizedlist mark='bullet'> + + <listitem><para>Single array implementation of the inverse BWT. This + significantly speeds up decompression, presumably because it + reduces the number of cache misses.</para></listitem> + + <listitem><para>Faster inverse MTF transform for large MTF values. + The new implementation is based on the notion of sliding blocks + of values.</para></listitem> + + <listitem><para><computeroutput>bzip2-0.9.0</computeroutput> now reads + and writes files with <computeroutput>fread</computeroutput> + and <computeroutput>fwrite</computeroutput>; version 0.1 used + <computeroutput>putc</computeroutput> and + <computeroutput>getc</computeroutput>. Duh! Well, you live + and learn.</para></listitem> + +</itemizedlist> + +<para>Further ahead, it would be nice to be able to do random +access into files. This will require some careful design of +compressed file formats.</para> + +</sect1> + + +<sect1 id="port-issues" xreflabel="Portability issues"> +<title>Portability issues</title> + +<para>After some consideration, I have decided not to use GNU +<computeroutput>autoconf</computeroutput> to configure 0.9.5 or +1.0.</para> + +<para><computeroutput>autoconf</computeroutput>, admirable and +wonderful though it is, mainly assists with portability problems +between Unix-like platforms. But +<computeroutput>bzip2</computeroutput> doesn't have much in the +way of portability problems on Unix; most of the difficulties +appear when porting to the Mac, or to Microsoft's operating +systems. <computeroutput>autoconf</computeroutput> doesn't help +in those cases, and brings in a whole load of new +complexity.</para> + +<para>Most people should be able to compile the library and +program under Unix straight out-of-the-box, so to speak, +especially if you have a version of GNU C available.</para> + +<para>There are a couple of +<computeroutput>__inline__</computeroutput> directives in the +code. GNU C (<computeroutput>gcc</computeroutput>) should be +able to handle them. If you're not using GNU C, your C compiler +shouldn't see them at all. If your compiler does, for some +reason, see them and doesn't like them, just +<computeroutput>#define</computeroutput> +<computeroutput>__inline__</computeroutput> to be +<computeroutput>/* */</computeroutput>. One easy way to do this +is to compile with the flag +<computeroutput>-D__inline__=</computeroutput>, which should be +understood by most Unix compilers.</para> + +<para>If you still have difficulties, try compiling with the +macro <computeroutput>BZ_STRICT_ANSI</computeroutput> defined. +This should enable you to build the library in a strictly ANSI +compliant environment. Building the program itself like this is +dangerous and not supported, since you remove +<computeroutput>bzip2</computeroutput>'s checks against +compressing directories, symbolic links, devices, and other +not-really-a-file entities. This could cause filesystem +corruption!</para> + +<para>One other thing: if you create a +<computeroutput>bzip2</computeroutput> binary for public distribution, +please consider linking it statically (<computeroutput>gcc +-static</computeroutput>). This avoids all sorts of library-version +issues that others may encounter later on.</para> + +<para>If you build <computeroutput>bzip2</computeroutput> on +Win32, you must set <computeroutput>BZ_UNIX</computeroutput> to 0 +and <computeroutput>BZ_LCCWIN32</computeroutput> to 1, in the +file <computeroutput>bzip2.c</computeroutput>, before compiling. +Otherwise the resulting binary won't work correctly.</para> + +</sect1> + + +<sect1 id="bugs" xreflabel="Reporting bugs"> +<title>Reporting bugs</title> + +<para>I tried pretty hard to make sure +<computeroutput>bzip2</computeroutput> is bug free, both by +design and by testing. Hopefully you'll never need to read this +section for real.</para> + +<para>Nevertheless, if <computeroutput>bzip2</computeroutput> dies +with a segmentation fault, a bus error or an internal assertion +failure, it will ask you to email me a bug report. Experience from +years of feedback of bzip2 users indicates that almost all these +problems can be traced to either compiler bugs or hardware +problems.</para> + +<itemizedlist mark='bullet'> + + <listitem><para>Recompile the program with no optimisation, and + see if it works. And/or try a different compiler. I heard all + sorts of stories about various flavours of GNU C (and other + compilers) generating bad code for + <computeroutput>bzip2</computeroutput>, and I've run across two + such examples myself.</para> + + <para>2.7.X versions of GNU C are known to generate bad code + from time to time, at high optimisation levels. If you get + problems, try using the flags + <computeroutput>-O2</computeroutput> + <computeroutput>-fomit-frame-pointer</computeroutput> + <computeroutput>-fno-strength-reduce</computeroutput>. You + should specifically <emphasis>not</emphasis> use + <computeroutput>-funroll-loops</computeroutput>.</para> + + <para>You may notice that the Makefile runs six tests as part + of the build process. If the program passes all of these, it's + a pretty good (but not 100%) indication that the compiler has + done its job correctly.</para></listitem> + + <listitem><para>If <computeroutput>bzip2</computeroutput> + crashes randomly, and the crashes are not repeatable, you may + have a flaky memory subsystem. + <computeroutput>bzip2</computeroutput> really hammers your + memory hierarchy, and if it's a bit marginal, you may get these + problems. Ditto if your disk or I/O subsystem is slowly + failing. Yup, this really does happen.</para> + + <para>Try using a different machine of the same type, and see + if you can repeat the problem.</para></listitem> + + <listitem><para>This isn't really a bug, but ... If + <computeroutput>bzip2</computeroutput> tells you your file is + corrupted on decompression, and you obtained the file via FTP, + there is a possibility that you forgot to tell FTP to do a + binary mode transfer. That absolutely will cause the file to + be non-decompressible. You'll have to transfer it + again.</para></listitem> + +</itemizedlist> + +<para>If you've incorporated +<computeroutput>libbzip2</computeroutput> into your own program +and are getting problems, please, please, please, check that the +parameters you are passing in calls to the library, are correct, +and in accordance with what the documentation says is allowable. +I have tried to make the library robust against such problems, +but I'm sure I haven't succeeded.</para> + +<para>Finally, if the above comments don't help, you'll have to +send me a bug report. Now, it's just amazing how many people +will send me a bug report saying something like:</para> + +<programlisting> +bzip2 crashed with segmentation fault on my machine +</programlisting> + +<para>and absolutely nothing else. Needless to say, a such a +report is <emphasis>totally, utterly, completely and +comprehensively 100% useless; a waste of your time, my time, and +net bandwidth</emphasis>. With no details at all, there's no way +I can possibly begin to figure out what the problem is.</para> + +<para>The rules of the game are: facts, facts, facts. Don't omit +them because "oh, they won't be relevant". At the bare +minimum:</para> + +<programlisting> +Machine type. Operating system version. +Exact version of bzip2 (do bzip2 -V). +Exact version of the compiler used. +Flags passed to the compiler. +</programlisting> + +<para>However, the most important single thing that will help me +is the file that you were trying to compress or decompress at the +time the problem happened. Without that, my ability to do +anything more than speculate about the cause, is limited.</para> + +</sect1> + + +<sect1 id="package" xreflabel="Did you get the right package?"> +<title>Did you get the right package?</title> + +<para><computeroutput>bzip2</computeroutput> is a resource hog. +It soaks up large amounts of CPU cycles and memory. Also, it +gives very large latencies. In the worst case, you can feed many +megabytes of uncompressed data into the library before getting +any compressed output, so this probably rules out applications +requiring interactive behaviour.</para> + +<para>These aren't faults of my implementation, I hope, but more +an intrinsic property of the Burrows-Wheeler transform +(unfortunately). Maybe this isn't what you want.</para> + +<para>If you want a compressor and/or library which is faster, +uses less memory but gets pretty good compression, and has +minimal latency, consider Jean-loup Gailly's and Mark Adler's +work, <computeroutput>zlib-1.2.1</computeroutput> and +<computeroutput>gzip-1.2.4</computeroutput>. Look for them at +<ulink url="http://www.zlib.org">http://www.zlib.org</ulink> and +<ulink url="http://www.gzip.org">http://www.gzip.org</ulink> +respectively.</para> + +<para>For something faster and lighter still, you might try Markus F +X J Oberhumer's <computeroutput>LZO</computeroutput> real-time +compression/decompression library, at +<ulink url="http://www.oberhumer.com/opensource">http://www.oberhumer.com/opensource</ulink>.</para> + +</sect1> + + + +<sect1 id="reading" xreflabel="Further Reading"> +<title>Further Reading</title> + +<para><computeroutput>bzip2</computeroutput> is not research +work, in the sense that it doesn't present any new ideas. +Rather, it's an engineering exercise based on existing +ideas.</para> + +<para>Four documents describe essentially all the ideas behind +<computeroutput>bzip2</computeroutput>:</para> + +<literallayout>Michael Burrows and D. J. Wheeler: + "A block-sorting lossless data compression algorithm" + 10th May 1994. + Digital SRC Research Report 124. + ftp://ftp.digital.com/pub/DEC/SRC/research-reports/SRC-124.ps.gz + If you have trouble finding it, try searching at the + New Zealand Digital Library, http://www.nzdl.org. + +Daniel S. Hirschberg and Debra A. LeLewer + "Efficient Decoding of Prefix Codes" + Communications of the ACM, April 1990, Vol 33, Number 4. + You might be able to get an electronic copy of this + from the ACM Digital Library. + +David J. Wheeler + Program bred3.c and accompanying document bred3.ps. + This contains the idea behind the multi-table Huffman coding scheme. + ftp://ftp.cl.cam.ac.uk/users/djw3/ + +Jon L. Bentley and Robert Sedgewick + "Fast Algorithms for Sorting and Searching Strings" + Available from Sedgewick's web page, + www.cs.princeton.edu/~rs +</literallayout> + +<para>The following paper gives valuable additional insights into +the algorithm, but is not immediately the basis of any code used +in bzip2.</para> + +<literallayout>Peter Fenwick: + Block Sorting Text Compression + Proceedings of the 19th Australasian Computer Science Conference, + Melbourne, Australia. Jan 31 - Feb 2, 1996. + ftp://ftp.cs.auckland.ac.nz/pub/peter-f/ACSC96paper.ps</literallayout> + +<para>Kunihiko Sadakane's sorting algorithm, mentioned above, is +available from:</para> + +<literallayout>http://naomi.is.s.u-tokyo.ac.jp/~sada/papers/Sada98b.ps.gz +</literallayout> + +<para>The Manber-Myers suffix array construction algorithm is +described in a paper available from:</para> + +<literallayout>http://www.cs.arizona.edu/people/gene/PAPERS/suffix.ps +</literallayout> + +<para>Finally, the following papers document some +investigations I made into the performance of sorting +and decompression algorithms:</para> + +<literallayout>Julian Seward + On the Performance of BWT Sorting Algorithms + Proceedings of the IEEE Data Compression Conference 2000 + Snowbird, Utah. 28-30 March 2000. + +Julian Seward + Space-time Tradeoffs in the Inverse B-W Transform + Proceedings of the IEEE Data Compression Conference 2001 + Snowbird, Utah. 27-29 March 2001. +</literallayout> + +</sect1> + +</chapter> + +</book> @@ -0,0 +1,31 @@ + +/* Spew out a long sequence of the byte 251. When fed to bzip2 + versions 1.0.0 or 1.0.1, causes it to die with internal error + 1007 in blocksort.c. This assertion misses an extremely rare + case, which is fixed in this version (1.0.2) and above. +*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + + +#include <stdio.h> + +int main () +{ + int i; + for (i = 0; i < 48500000 ; i++) + putchar(251); + return 0; +} diff --git a/randtable.c b/randtable.c new file mode 100644 index 0000000..068b763 --- /dev/null +++ b/randtable.c @@ -0,0 +1,84 @@ + +/*-------------------------------------------------------------*/ +/*--- Table for randomising repetitive blocks ---*/ +/*--- randtable.c ---*/ +/*-------------------------------------------------------------*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + + +#include "bzlib_private.h" + + +/*---------------------------------------------*/ +Int32 BZ2_rNums[512] = { + 619, 720, 127, 481, 931, 816, 813, 233, 566, 247, + 985, 724, 205, 454, 863, 491, 741, 242, 949, 214, + 733, 859, 335, 708, 621, 574, 73, 654, 730, 472, + 419, 436, 278, 496, 867, 210, 399, 680, 480, 51, + 878, 465, 811, 169, 869, 675, 611, 697, 867, 561, + 862, 687, 507, 283, 482, 129, 807, 591, 733, 623, + 150, 238, 59, 379, 684, 877, 625, 169, 643, 105, + 170, 607, 520, 932, 727, 476, 693, 425, 174, 647, + 73, 122, 335, 530, 442, 853, 695, 249, 445, 515, + 909, 545, 703, 919, 874, 474, 882, 500, 594, 612, + 641, 801, 220, 162, 819, 984, 589, 513, 495, 799, + 161, 604, 958, 533, 221, 400, 386, 867, 600, 782, + 382, 596, 414, 171, 516, 375, 682, 485, 911, 276, + 98, 553, 163, 354, 666, 933, 424, 341, 533, 870, + 227, 730, 475, 186, 263, 647, 537, 686, 600, 224, + 469, 68, 770, 919, 190, 373, 294, 822, 808, 206, + 184, 943, 795, 384, 383, 461, 404, 758, 839, 887, + 715, 67, 618, 276, 204, 918, 873, 777, 604, 560, + 951, 160, 578, 722, 79, 804, 96, 409, 713, 940, + 652, 934, 970, 447, 318, 353, 859, 672, 112, 785, + 645, 863, 803, 350, 139, 93, 354, 99, 820, 908, + 609, 772, 154, 274, 580, 184, 79, 626, 630, 742, + 653, 282, 762, 623, 680, 81, 927, 626, 789, 125, + 411, 521, 938, 300, 821, 78, 343, 175, 128, 250, + 170, 774, 972, 275, 999, 639, 495, 78, 352, 126, + 857, 956, 358, 619, 580, 124, 737, 594, 701, 612, + 669, 112, 134, 694, 363, 992, 809, 743, 168, 974, + 944, 375, 748, 52, 600, 747, 642, 182, 862, 81, + 344, 805, 988, 739, 511, 655, 814, 334, 249, 515, + 897, 955, 664, 981, 649, 113, 974, 459, 893, 228, + 433, 837, 553, 268, 926, 240, 102, 654, 459, 51, + 686, 754, 806, 760, 493, 403, 415, 394, 687, 700, + 946, 670, 656, 610, 738, 392, 760, 799, 887, 653, + 978, 321, 576, 617, 626, 502, 894, 679, 243, 440, + 680, 879, 194, 572, 640, 724, 926, 56, 204, 700, + 707, 151, 457, 449, 797, 195, 791, 558, 945, 679, + 297, 59, 87, 824, 713, 663, 412, 693, 342, 606, + 134, 108, 571, 364, 631, 212, 174, 643, 304, 329, + 343, 97, 430, 751, 497, 314, 983, 374, 822, 928, + 140, 206, 73, 263, 980, 736, 876, 478, 430, 305, + 170, 514, 364, 692, 829, 82, 855, 953, 676, 246, + 369, 970, 294, 750, 807, 827, 150, 790, 288, 923, + 804, 378, 215, 828, 592, 281, 565, 555, 710, 82, + 896, 831, 547, 261, 524, 462, 293, 465, 502, 56, + 661, 821, 976, 991, 658, 869, 905, 758, 745, 193, + 768, 550, 608, 933, 378, 286, 215, 979, 792, 961, + 61, 688, 793, 644, 986, 403, 106, 366, 905, 644, + 372, 567, 466, 434, 645, 210, 389, 550, 919, 135, + 780, 773, 635, 389, 707, 100, 626, 958, 165, 504, + 920, 176, 193, 713, 857, 265, 203, 50, 668, 108, + 645, 990, 626, 197, 510, 357, 358, 850, 858, 364, + 936, 638 +}; + + +/*-------------------------------------------------------------*/ +/*--- end randtable.c ---*/ +/*-------------------------------------------------------------*/ diff --git a/sample1.bz2 b/sample1.bz2 Binary files differnew file mode 100644 index 0000000..18dea60 --- /dev/null +++ b/sample1.bz2 diff --git a/sample1.ref b/sample1.ref Binary files differnew file mode 100644 index 0000000..a56e52b --- /dev/null +++ b/sample1.ref diff --git a/sample2.bz2 b/sample2.bz2 Binary files differnew file mode 100644 index 0000000..d5a6160 --- /dev/null +++ b/sample2.bz2 diff --git a/sample2.ref b/sample2.ref Binary files differnew file mode 100644 index 0000000..34af958 --- /dev/null +++ b/sample2.ref diff --git a/sample3.bz2 b/sample3.bz2 Binary files differnew file mode 100644 index 0000000..d90cff9 --- /dev/null +++ b/sample3.bz2 diff --git a/sample3.ref b/sample3.ref new file mode 100644 index 0000000..775a2f6 --- /dev/null +++ b/sample3.ref @@ -0,0 +1,30007 @@ +This file is exceedingly boring. If you find yourself +reading it, please (1) take it from me that you can safely +guess what the rest of the file says, and (2) seek professional +help. + +ps. there are no further sarcastic remarks in this file. + +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh +ugh @@ -0,0 +1,54 @@ + +/* spew out a thoroughly gigantic file designed so that bzip2 + can compress it reasonably rapidly. This is to help test + support for large files (> 2GB) in a reasonable amount of time. + I suggest you use the undocumented --exponential option to + bzip2 when compressing the resulting file; this saves a bit of + time. Note: *don't* bother with --exponential when compressing + Real Files; it'll just waste a lot of CPU time :-) + (but is otherwise harmless). +*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + + +#define _FILE_OFFSET_BITS 64 + +#include <stdio.h> +#include <stdlib.h> + +/* The number of megabytes of junk to spew out (roughly) */ +#define MEGABYTES 5000 + +#define N_BUF 1000000 +char buf[N_BUF]; + +int main ( int argc, char** argv ) +{ + int ii, kk, p; + srandom(1); + setbuffer ( stdout, buf, N_BUF ); + for (kk = 0; kk < MEGABYTES * 515; kk+=3) { + p = 25+random()%50; + for (ii = 0; ii < p; ii++) + printf ( "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" ); + for (ii = 0; ii < p-1; ii++) + printf ( "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" ); + for (ii = 0; ii < p+1; ii++) + printf ( "ccccccccccccccccccccccccccccccccccccc" ); + } + fflush(stdout); + return 0; +} diff --git a/unzcrash.c b/unzcrash.c new file mode 100644 index 0000000..a1b7546 --- /dev/null +++ b/unzcrash.c @@ -0,0 +1,141 @@ + +/* A test program written to test robustness to decompression of + corrupted data. Usage is + unzcrash filename + and the program will read the specified file, compress it (in memory), + and then repeatedly decompress it, each time with a different bit of + the compressed data inverted, so as to test all possible one-bit errors. + This should not cause any invalid memory accesses. If it does, + I want to know about it! + + PS. As you can see from the above description, the process is + incredibly slow. A file of size eg 5KB will cause it to run for + many hours. +*/ + +/* ------------------------------------------------------------------ + This file is part of bzip2/libbzip2, a program and library for + lossless, block-sorting data compression. + + bzip2/libbzip2 version 1.0.5 of 10 December 2007 + Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> + + Please read the WARNING, DISCLAIMER and PATENTS sections in the + README file. + + This program is released under the terms of the license contained + in the file LICENSE. + ------------------------------------------------------------------ */ + + +#include <stdio.h> +#include <assert.h> +#include "bzlib.h" + +#define M_BLOCK 1000000 + +typedef unsigned char uchar; + +#define M_BLOCK_OUT (M_BLOCK + 1000000) +uchar inbuf[M_BLOCK]; +uchar outbuf[M_BLOCK_OUT]; +uchar zbuf[M_BLOCK + 600 + (M_BLOCK / 100)]; + +int nIn, nOut, nZ; + +static char *bzerrorstrings[] = { + "OK" + ,"SEQUENCE_ERROR" + ,"PARAM_ERROR" + ,"MEM_ERROR" + ,"DATA_ERROR" + ,"DATA_ERROR_MAGIC" + ,"IO_ERROR" + ,"UNEXPECTED_EOF" + ,"OUTBUFF_FULL" + ,"???" /* for future */ + ,"???" /* for future */ + ,"???" /* for future */ + ,"???" /* for future */ + ,"???" /* for future */ + ,"???" /* for future */ +}; + +void flip_bit ( int bit ) +{ + int byteno = bit / 8; + int bitno = bit % 8; + uchar mask = 1 << bitno; + //fprintf ( stderr, "(byte %d bit %d mask %d)", + // byteno, bitno, (int)mask ); + zbuf[byteno] ^= mask; +} + +int main ( int argc, char** argv ) +{ + FILE* f; + int r; + int bit; + int i; + + if (argc != 2) { + fprintf ( stderr, "usage: unzcrash filename\n" ); + return 1; + } + + f = fopen ( argv[1], "r" ); + if (!f) { + fprintf ( stderr, "unzcrash: can't open %s\n", argv[1] ); + return 1; + } + + nIn = fread ( inbuf, 1, M_BLOCK, f ); + fprintf ( stderr, "%d bytes read\n", nIn ); + + nZ = M_BLOCK; + r = BZ2_bzBuffToBuffCompress ( + zbuf, &nZ, inbuf, nIn, 9, 0, 30 ); + + assert (r == BZ_OK); + fprintf ( stderr, "%d after compression\n", nZ ); + + for (bit = 0; bit < nZ*8; bit++) { + fprintf ( stderr, "bit %d ", bit ); + flip_bit ( bit ); + nOut = M_BLOCK_OUT; + r = BZ2_bzBuffToBuffDecompress ( + outbuf, &nOut, zbuf, nZ, 0, 0 ); + fprintf ( stderr, " %d %s ", r, bzerrorstrings[-r] ); + + if (r != BZ_OK) { + fprintf ( stderr, "\n" ); + } else { + if (nOut != nIn) { + fprintf(stderr, "nIn/nOut mismatch %d %d\n", nIn, nOut ); + return 1; + } else { + for (i = 0; i < nOut; i++) + if (inbuf[i] != outbuf[i]) { + fprintf(stderr, "mismatch at %d\n", i ); + return 1; + } + if (i == nOut) fprintf(stderr, "really ok!\n" ); + } + } + + flip_bit ( bit ); + } + +#if 0 + assert (nOut == nIn); + for (i = 0; i < nOut; i++) { + if (inbuf[i] != outbuf[i]) { + fprintf ( stderr, "difference at %d !\n", i ); + return 1; + } + } +#endif + + fprintf ( stderr, "all ok\n" ); + return 0; +} @@ -0,0 +1,9 @@ + +If compilation produces errors, or a large number of warnings, +please read README.COMPILATION.PROBLEMS -- you might be able to +adjust the flags in this Makefile to improve matters. + +Also in README.COMPILATION.PROBLEMS are some hints that may help +if your build produces an executable which is unable to correctly +handle so-called 'large files' -- files of size 2GB or more. + @@ -0,0 +1,4 @@ + +Doing 6 tests (3 compress, 3 uncompress) ... +If there's a problem, things might stop at this point. + @@ -0,0 +1,5 @@ + +Checking test results. If any of the four "cmp"s which follow +report any differences, something is wrong. If you can't easily +figure out what, please let me know (jseward@bzip.org). + @@ -0,0 +1,30 @@ + +If you got this far and the 'cmp's didn't complain, it looks +like you're in business. + +To install in /usr/local/bin, /usr/local/lib, /usr/local/man and +/usr/local/include, type + + make install + +To install somewhere else, eg, /xxx/yyy/{bin,lib,man,include}, type + + make install PREFIX=/xxx/yyy + +If you are (justifiably) paranoid and want to see what 'make install' +is going to do, you can first do + + make -n install or + make -n install PREFIX=/xxx/yyy respectively. + +The -n instructs make to show the commands it would execute, but +not actually execute them. + +Instructions for use are in the preformatted manual page, in the file +bzip2.txt. For more detailed documentation, read the full manual. +It is available in Postscript form (manual.ps), PDF form (manual.pdf), +and HTML form (manual.html). + +You can also do "bzip2 --help" to see some helpful information. +"bzip2 -L" displays the software license. + diff --git a/xmlproc.sh b/xmlproc.sh new file mode 100755 index 0000000..5384177 --- /dev/null +++ b/xmlproc.sh @@ -0,0 +1,114 @@ +#!/bin/bash +# see the README file for usage etc. +# +# ------------------------------------------------------------------ +# This file is part of bzip2/libbzip2, a program and library for +# lossless, block-sorting data compression. +# +# bzip2/libbzip2 version 1.0.5 of 10 December 2007 +# Copyright (C) 1996-2007 Julian Seward <jseward@bzip.org> +# +# Please read the WARNING, DISCLAIMER and PATENTS sections in the +# README file. +# +# This program is released under the terms of the license contained +# in the file LICENSE. +# ---------------------------------------------------------------- + + +usage() { + echo ''; + echo 'Usage: xmlproc.sh -[option] <filename.xml>'; + echo 'Specify a target from:'; + echo '-v verify xml file conforms to dtd'; + echo '-html output in html format (single file)'; + echo '-ps output in postscript format'; + echo '-pdf output in pdf format'; + exit; +} + +if test $# -ne 2; then + usage +fi +# assign the variable for the output type +action=$1; shift +# assign the output filename +xmlfile=$1; shift +# and check user input it correct +if !(test -f $xmlfile); then + echo "No such file: $xmlfile"; + exit; +fi +# some other stuff we will use +OUT=output +xsl_fo=bz-fo.xsl +xsl_html=bz-html.xsl + +basename=$xmlfile +basename=${basename//'.xml'/''} + +fofile="${basename}.fo" +htmlfile="${basename}.html" +pdffile="${basename}.pdf" +psfile="${basename}.ps" +xmlfmtfile="${basename}.fmt" + +# first process the xmlfile with CDATA tags +./format.pl $xmlfile $xmlfmtfile +# so the shell knows where the catalogs live +export XML_CATALOG_FILES=/etc/xml/catalog + +# post-processing tidy up +cleanup() { + echo "Cleaning up: $@" + while [ $# != 0 ] + do + arg=$1; shift; + echo " deleting $arg"; + rm $arg + done +} + +case $action in + -v) + flags='--noout --xinclude --noblanks --postvalid' + dtd='--dtdvalid http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd' + xmllint $flags $dtd $xmlfmtfile 2> $OUT + egrep 'error' $OUT + rm $OUT + ;; + + -html) + echo "Creating $htmlfile ..." + xsltproc --nonet --xinclude -o $htmlfile $xsl_html $xmlfmtfile + cleanup $xmlfmtfile + ;; + + -pdf) + echo "Creating $pdffile ..." + xsltproc --nonet --xinclude -o $fofile $xsl_fo $xmlfmtfile + pdfxmltex $fofile >$OUT </dev/null + pdfxmltex $fofile >$OUT </dev/null + pdfxmltex $fofile >$OUT </dev/null + cleanup $OUT $xmlfmtfile *.aux *.fo *.log *.out + ;; + + -ps) + echo "Creating $psfile ..." + xsltproc --nonet --xinclude -o $fofile $xsl_fo $xmlfmtfile + pdfxmltex $fofile >$OUT </dev/null + pdfxmltex $fofile >$OUT </dev/null + pdfxmltex $fofile >$OUT </dev/null + pdftops $pdffile $psfile + cleanup $OUT $xmlfmtfile $pdffile *.aux *.fo *.log *.out +# passivetex is broken, so we can't go this route yet. +# xmltex $fofile >$OUT </dev/null +# xmltex $fofile >$OUT </dev/null +# xmltex $fofile >$OUT </dev/null +# dvips -R -q -o bzip-manual.ps *.dvi + ;; + + *) + usage + ;; +esac |