# Comment blocks of the zlib files compiled into this engine build, verbatim.
# Each block is quoted exactly from the named source (an asset A member, or a file of the hosted
# run's evidence) at the named lines; its sha256 is of the quoted bytes. "also in" names further
# locations whose block has the same text after whitespace normalisation. See METHOD.md.
# This is a notice inventory, not legal advice.

==== sources/zlib/adler32.c lines 1-4 sha256 beaf29f1c5709139acdf4619f78d3a375851c1b5578a7c66d989e72a67fc6aeb ====
/* adler32.c -- compute the Adler-32 checksum of a data stream
 * Copyright (C) 1995-2011, 2016 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/adler32.c lines 6-6 sha256 66cd82dc2844f424647384962c92bf9a08258146a3841fa2919ccf57e17c7690 ====
also in: sources/zlib/compress.c:6-6, sources/zlib/crc32.c:10-10, sources/zlib/deflate.c:50-50, sources/zlib/deflate.h:11-11, sources/zlib/trees.c:33-33, sources/zlib/uncompr.c:6-6, sources/zlib/zconf.h:6-6, sources/zlib/zconf.h.in:6-6, sources/zlib/zutil.c:6-6, sources/zlib/zutil.h:11-11
/* @(#) $Id$ */

==== sources/zlib/compress.c lines 1-4 sha256 d8912d2c9ef0da72901970c7a431b4f7faaa3cb701e3ddd5ad33b88b621cdf4d ====
/* compress.c -- compress a memory buffer
 * Copyright (C) 1995-2026 Jean-loup Gailly, Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/crc32.c lines 1-8 sha256 48d2d42d2d7b9b3a416722d3e84c6cb19fdc52fd3dfa9dfe70366bd1da42c8ee ====
/* crc32.c -- compute the CRC-32 of a data stream
 * Copyright (C) 1995-2026 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 *
 * This interleaved implementation of a CRC makes use of pipelined multiple
 * arithmetic-logic units, commonly found in modern CPU cores. It is due to
 * Kadatch and Jenkins (2010). See doc/crc-doc.1.0.pdf in this distribution.
 */

==== sources/zlib/crc32.c lines 12-21 sha256 feb6971a8f264277c0ba2eb720e37f4485d15d619fb0852b5ae2904136e9e6f8 ====
/*
  Note on the use of DYNAMIC_CRC_TABLE: there is no mutex or semaphore
  protection on the static variables used to control the first-use generation
  of the crc tables. Therefore, if you #define DYNAMIC_CRC_TABLE, you should
  first call get_crc_table() to initialize the tables before allowing more than
  one thread to use crc32().

  MAKECRCH can be #defined to write out crc32.h. A main() routine is also
  produced, so that this one source file can be compiled to an executable.
 */

==== sources/zlib/crc32.h lines 1-3 sha256 e2fb88b034af49835840ca980c5217ff5d890a39d09b2afb0be65ac120ba9ff7 ====
/* crc32.h -- tables for rapid CRC calculation
 * Generated automatically by crc32.c
 */

==== sources/zlib/deflate.c lines 1-4 sha256 0798088355f9a90692c103a62a2a421e44ad92775c7978ec424ce0ef21a033d2 ====
/* deflate.c -- compress data using the deflation algorithm
 * Copyright (C) 1995-2026 Jean-loup Gailly and Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/deflate.c lines 6-48 sha256 d3649bd28a0d1145debe8e3a2b439e924ed43773d4d3dd2f62e69ee987df5c28 ====
/*
 *  ALGORITHM
 *
 *      The "deflation" process depends on being able to identify portions
 *      of the input text which are identical to earlier input (within a
 *      sliding window trailing behind the input currently being processed).
 *
 *      The most straightforward technique turns out to be the fastest for
 *      most input files: try all possible matches and select the longest.
 *      The key feature of this algorithm is that insertions into the string
 *      dictionary are very simple and thus fast, and deletions are avoided
 *      completely. Insertions are performed at each input character, whereas
 *      string matches are performed only when the previous match ends. So it
 *      is preferable to spend more time in matches to allow very fast string
 *      insertions and avoid deletions. The matching algorithm for small
 *      strings is inspired from that of Rabin & Karp. A brute force approach
 *      is used to find longer strings when a small match has been found.
 *      A similar algorithm is used in comic (by Jan-Mark Wams) and freeze
 *      (by Leonid Broukhis).
 *         A previous version of this file used a more sophisticated algorithm
 *      (by Fiala and Greene) which is guaranteed to run in linear amortized
 *      time, but has a larger average cost, uses more memory and is patented.
 *      However the F&G algorithm may be faster for some highly redundant
 *      files if the parameter max_chain_length (described below) is too large.
 *
 *  ACKNOWLEDGEMENTS
 *
 *      The idea of lazy evaluation of matches is due to Jan-Mark Wams, and
 *      I found it in 'freeze' written by Leonid Broukhis.
 *      Thanks to many people for bug reports and testing.
 *
 *  REFERENCES
 *
 *      Deutsch, L.P.,"DEFLATE Compressed Data Format Specification".
 *      Available at https://datatracker.ietf.org/doc/html/rfc1951
 *
 *      A description of the Rabin and Karp algorithm is given in the book
 *         "Algorithms" by R. Sedgewick, Addison-Wesley, p252.
 *
 *      Fiala,E.R., and Greene,D.H.
 *         Data Compression with Finite Windows, Comm.ACM, 32,4 (1989) 490-595
 *
 */

==== sources/zlib/deflate.c lines 55-55 sha256 7b67153c51811da89c399c3c2252a2e825c53c9a7eb3e37099e634d13ddd1453 ====
   " deflate 1.3.2 Copyright 1995-2026 Jean-loup Gailly and Mark Adler ";

==== sources/zlib/deflate.c lines 56-61 sha256 39f958a104e2006d29c221385824513a16f0a59f7448f1463406ca44b4f226bc ====
also in: sources/zlib/inftrees.c:27-32
/*
  If you use the zlib library in a product, an acknowledgment is welcome
  in the documentation of your product. If for some reason you cannot
  include such an acknowledgment, I would appreciate that you keep this
  copyright string in the executable of your product.
 */

==== sources/zlib/deflate.h lines 1-4 sha256 72aa864b98f43ffa443918b848e1ab8e139e53a4f52f6e87ca263bf66d2d2bbe ====
/* deflate.h -- internal compression state
 * Copyright (C) 1995-2026 Jean-loup Gailly
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/deflate.h lines 6-9 sha256 62090cb781db874d47965878bac3df311b4c61da16268b3de79989fab1e38715 ====
also in: sources/zlib/inffast.h:6-9, sources/zlib/inflate.h:6-9, sources/zlib/inftrees.h:6-9, sources/zlib/zutil.h:6-9
/* WARNING: this file should *not* be used by applications. It is
   part of the implementation of the compression library and is
   subject to change. Applications should only use zlib.h.
 */

==== sources/zlib/gzclose.c lines 1-4 sha256 64716f3068f442e74ec5c7ecbf792d71fc21b1c09eec529b9baa8fb2bcc0d351 ====
/* gzclose.c -- zlib gzclose() function
 * Copyright (C) 2004, 2010 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/gzguts.h lines 1-4 sha256 8861c89511c31f87f265e3d0a1e9e92f670d646bc6a60d5262fa4c956ff833eb ====
/* gzguts.h -- zlib internal header definitions for gz* operations
 * Copyright (C) 2004-2026 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/gzlib.c lines 1-4 sha256 3295b40fe639b1e9335e42550767b59863c6c19892cc9ad4bcce2b5b763d7389 ====
/* gzlib.c -- zlib functions common to reading and writing gzip files
 * Copyright (C) 2004-2026 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/gzread.c lines 1-4 sha256 2e8b644f0f2b98715e8a19d0bc80377d68e3add9ed843bb186b623f021a515a3 ====
/* gzread.c -- zlib functions for reading gzip files
 * Copyright (C) 2004-2026 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/gzwrite.c lines 1-4 sha256 b3a9cd0575a0d4dcee29d7229b32dcdf6a649622f460486961834c14df8c24f8 ====
/* gzwrite.c -- zlib functions for writing gzip files
 * Copyright (C) 2004-2026 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/infback.c lines 1-4 sha256 b5a36e626dbdde119982b8f89fcf744862a83a7e783240df7532412849b71b99 ====
/* infback.c -- inflate using a call-back interface
 * Copyright (C) 1995-2026 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/infback.c lines 6-11 sha256 78101288daaa6c003db9b8eff61bf83abfa7e124fa3fbf1e3f5a0268d0e8c8bb ====
/*
   This code is largely copied from inflate.c.  Normally either infback.o or
   inflate.o would be linked into an application--not both.  The interface
   with inffast.c is retained so that optimized assembler-coded versions of
   inflate_fast() can be used with either inflate.c or infback.c.
 */

==== sources/zlib/inffast.c lines 1-4 sha256 ce2de7fe1f1c2825f548caeec54b475e676e04591fa8f60be0ab1e42a6911acf ====
/* inffast.c -- fast decoding
 * Copyright (C) 1995-2026 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/inffast.h lines 1-4 sha256 dc8f01a1691386570b77bb2386fd11883950df3dd1f800181eed187635dbdaa9 ====
/* inffast.h -- header to use inffast.c
 * Copyright (C) 1995-2003, 2010 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/inffixed.h lines 1-3 sha256 b402e5cc34ae6823e00187bc1414f25a5a8aa8334f6197fc3d3595ecb6df65af ====
/* inffixed.h -- table for decoding fixed codes
 * Generated automatically by makefixed().
 */

==== sources/zlib/inffixed.h lines 5-8 sha256 81017b063f35a243d759e4fffd1b6c75ee456b787d10dee21b30b2ed66c61f3e ====
/* WARNING: this file should *not* be used by applications.
   It is part of the implementation of this library and is
   subject to change. Applications should only use zlib.h.
 */

==== sources/zlib/inflate.c lines 1-4 sha256 e81807c9fbd701b73b77db5025bac5dc1966e056688fa50eb90f12543518b99a ====
/* inflate.c -- zlib decompression
 * Copyright (C) 1995-2026 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/inflate.c lines 6-81 sha256 505bb18ff7a133cf5b07868f3929d54291b6665799c2e73ca560baaf251bb39e ====
/*
 * Change history:
 *
 * 1.2.beta0    24 Nov 2002
 * - First version -- complete rewrite of inflate to simplify code, avoid
 *   creation of window when not needed, minimize use of window when it is
 *   needed, make inffast.c even faster, implement gzip decoding, and to
 *   improve code readability and style over the previous zlib inflate code
 *
 * 1.2.beta1    25 Nov 2002
 * - Use pointers for available input and output checking in inffast.c
 * - Remove input and output counters in inffast.c
 * - Change inffast.c entry and loop from avail_in >= 7 to >= 6
 * - Remove unnecessary second byte pull from length extra in inffast.c
 * - Unroll direct copy to three copies per loop in inffast.c
 *
 * 1.2.beta2    4 Dec 2002
 * - Change external routine names to reduce potential conflicts
 * - Correct filename to inffixed.h for fixed tables in inflate.c
 * - Make hbuf[] unsigned char to match parameter type in inflate.c
 * - Change strm->next_out[-state->offset] to *(strm->next_out - state->offset)
 *   to avoid negation problem on Alphas (64 bit) in inflate.c
 *
 * 1.2.beta3    22 Dec 2002
 * - Add comments on state->bits assertion in inffast.c
 * - Add comments on op field in inftrees.h
 * - Fix bug in reuse of allocated window after inflateReset()
 * - Remove bit fields--back to byte structure for speed
 * - Remove distance extra == 0 check in inflate_fast()--only helps for lengths
 * - Change post-increments to pre-increments in inflate_fast(), PPC biased?
 * - Add compile time option, POSTINC, to use post-increments instead (Intel?)
 * - Make MATCH copy in inflate() much faster for when inflate_fast() not used
 * - Use local copies of stream next and avail values, as well as local bit
 *   buffer and bit count in inflate()--for speed when inflate_fast() not used
 *
 * 1.2.beta4    1 Jan 2003
 * - Split ptr - 257 statements in inflate_table() to avoid compiler warnings
 * - Move a comment on output buffer sizes from inffast.c to inflate.c
 * - Add comments in inffast.c to introduce the inflate_fast() routine
 * - Rearrange window copies in inflate_fast() for speed and simplification
 * - Unroll last copy for window match in inflate_fast()
 * - Use local copies of window variables in inflate_fast() for speed
 * - Pull out common wnext == 0 case for speed in inflate_fast()
 * - Make op and len in inflate_fast() unsigned for consistency
 * - Add FAR to lcode and dcode declarations in inflate_fast()
 * - Simplified bad distance check in inflate_fast()
 * - Added inflateBackInit(), inflateBack(), and inflateBackEnd() in new
 *   source file infback.c to provide a call-back interface to inflate for
 *   programs like gzip and unzip -- uses window as output buffer to avoid
 *   window copying
 *
 * 1.2.beta5    1 Jan 2003
 * - Improved inflateBack() interface to allow the caller to provide initial
 *   input in strm.
 * - Fixed stored blocks bug in inflateBack()
 *
 * 1.2.beta6    4 Jan 2003
 * - Added comments in inffast.c on effectiveness of POSTINC
 * - Typecasting all around to reduce compiler warnings
 * - Changed loops from while (1) or do {} while (1) to for (;;), again to
 *   make compilers happy
 * - Changed type of window in inflateBackInit() to unsigned char *
 *
 * 1.2.beta7    27 Jan 2003
 * - Changed many types to unsigned or unsigned short to avoid warnings
 * - Added inflateCopy() function
 *
 * 1.2.0        9 Mar 2003
 * - Changed inflateBack() interface to provide separate opaque descriptors
 *   for the in() and out() functions
 * - Changed inflateBack() argument and in_func typedef to swap the length
 *   and buffer address return values for the input function
 * - Check next_in and next_out for Z_NULL on entry to inflate()
 *
 * The history for versions after 1.2.0 are in ChangeLog in zlib distribution.
 */

==== sources/zlib/inflate.h lines 1-4 sha256 33dcc64d0de88c70aa6bee12fe042a77925fac10eb73ac8db2cc3a90b15a378b ====
/* inflate.h -- internal inflate state definition
 * Copyright (C) 1995-2019 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/inflate.h lines 11-14 sha256 0e160e07e466e3d2ea0c5e4e07f45f3cd07f9711d182bab7f3ee9db3807ea79b ====
/* define NO_GZIP when compiling if you want to disable gzip header and
   trailer decoding by inflate().  NO_GZIP would be used to avoid linking in
   the crc code when it is not needed.  For shared libraries, gzip decoding
   should be left enabled. */

==== sources/zlib/inftrees.c lines 1-4 sha256 3d21e53f1a8353f95300dbf7a42db07891f668b581ae1e496a83f85f833970f3 ====
/* inftrees.c -- generate Huffman trees for efficient decoding
 * Copyright (C) 1995-2026 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/inftrees.c lines 26-26 sha256 77d7c2eef14b7759c3dfb4114ff6f9afe1412f86301cd31df6a04e3774f7c069 ====
   " inflate 1.3.2 Copyright 1995-2026 Mark Adler ";

==== sources/zlib/inftrees.h lines 1-4 sha256 21a86c5d5db1db841031c8423b3e3562ced29b7c0b0a398c6fab8dc327d533d5 ====
/* inftrees.h -- header to use inftrees.c
 * Copyright (C) 1995-2026 Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/inftrees.h lines 11-23 sha256 5ee7058e90bcb20cb4c924ded877e2a397c7777fd6f59db4973889f6550d0e68 ====
/* Structure for decoding tables.  Each entry provides either the
   information needed to do the operation requested by the code that
   indexed that table entry, or it provides a pointer to another
   table that indexes more bits of the code.  op indicates whether
   the entry is a pointer to another table, a literal, a length or
   distance, an end-of-block, or an invalid code.  For a table
   pointer, the low four bits of op is the number of index bits of
   that table.  For a length or distance, the low four bits of op
   is the number of extra bits to get after the code.  bits is
   the number of bits in this code or part of the code to drop off
   of the bit buffer.  val is the actual byte to output in the case
   of a literal, the base length or distance, or the offset from
   the current table to the next table.  Each entry is four bytes. */

==== sources/zlib/trees.c lines 1-5 sha256 4387ed71f2cdc66d5f605503de48cb1b2924723eeb6e22e592aa81cdfe5f53f6 ====
/* trees.c -- output deflated data using Huffman coding
 * Copyright (C) 1995-2026 Jean-loup Gailly
 * detect_data_type() function provided freely by Cosmin Truta, 2006
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/trees.c lines 7-31 sha256 933cb3eb13c289bdc050b66fe14986ac687b1febaf520682e3f1eda8972c3e0d ====
/*
 *  ALGORITHM
 *
 *      The "deflation" process uses several Huffman trees. The more
 *      common source values are represented by shorter bit sequences.
 *
 *      Each code tree is stored in a compressed form which is itself
 * a Huffman encoding of the lengths of all the code strings (in
 * ascending order by source values).  The actual code strings are
 * reconstructed from the lengths in the inflate process, as described
 * in the deflate specification.
 *
 *  REFERENCES
 *
 *      Deutsch, L.P.,"'Deflate' Compressed Data Format Specification".
 *      Available in ftp.uu.net:/pub/archiving/zip/doc/deflate-1.1.doc
 *
 *      Storer, James A.
 *          Data Compression:  Methods and Theory, pp. 49-50.
 *          Computer Science Press, 1988.  ISBN 0-7167-8156-5.
 *
 *      Sedgewick, R.
 *          Algorithms, p290.
 *          Addison-Wesley, 1983. ISBN 0-201-06672-6.
 */

==== sources/zlib/trees.c lines 35-35 sha256 6c33fef68970ed43a9abef15aacfe9bf46d01b900a2d8c2af26522e9c2b74895 ====
/* #define GEN_TREES_H */

==== sources/zlib/trees.h lines 1-1 sha256 4959064995106f73da1e7e0f6f2f522f9dc33395da176d398ab522bf29fd62a0 ====
/* header created automatically with -DGEN_TREES_H */

==== sources/zlib/uncompr.c lines 1-4 sha256 91b29b3526554db330ab85da3f2eb31566d9ed9a3e7fbecd4e73efeb7520781f ====
/* uncompr.c -- decompress a memory buffer
 * Copyright (C) 1995-2026 Jean-loup Gailly, Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/zconf.h lines 1-4 sha256 fecd6614b65621cc31cfdf0eb63d06bcf63305a08759e60538678c80f5123639 ====
also in: sources/zlib/zconf.h.in:1-4
/* zconf.h -- configuration of the zlib compression library
 * Copyright (C) 1995-2026 Jean-loup Gailly, Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/zlib.h lines 1-29 sha256 f293edbac5cb1cc2f7801ce3f59cb79ba30b370f663ba8376b317bece2834aa6 ====
/* zlib.h -- interface of the 'zlib' general purpose compression library
  version 1.3.2, February 17th, 2026

  Copyright (C) 1995-2026 Jean-loup Gailly and Mark Adler

  This software is provided 'as-is', without any express or implied
  warranty.  In no event will the authors be held liable for any damages
  arising from the use of this software.

  Permission is granted to anyone to use this software for any purpose,
  including commercial applications, and to alter it and redistribute it
  freely, subject to the following restrictions:

  1. 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.
  2. Altered source versions must be plainly marked as such, and must not be
     misrepresented as being the original software.
  3. This notice may not be removed or altered from any source distribution.

  Jean-loup Gailly        Mark Adler
  jloup@gzip.org          madler@alumni.caltech.edu


  The data format used by the zlib library is described by RFCs (Request for
  Comments) 1950 to 1952 at https://datatracker.ietf.org/doc/html/rfc1950
  (zlib format), rfc1951 (deflate format) and rfc1952 (gzip format).
*/

==== sources/zlib/zutil.c lines 1-4 sha256 2dc2530f3e6d4a2d6a60229255cc89467cc8040f2ced1c0c1ddebeaa4ba64da1 ====
/* zutil.c -- target dependent utility functions for the compression library
 * Copyright (C) 1995-2026 Jean-loup Gailly
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

==== sources/zlib/zutil.h lines 1-4 sha256 e15f8123ccdb06585cc4b54185ede69ab5a573a99867906a9bea2998b1cecb6f ====
/* zutil.h -- internal interface and configuration of the compression library
 * Copyright (C) 1995-2026 Jean-loup Gailly, Mark Adler
 * For conditions of distribution and use, see copyright notice in zlib.h
 */

